Skip to content

Commit 8d3af59

Browse files
committed
refactor: .immediate 대신 .delay로 교체
1 parent e1a428a commit 8d3af59

6 files changed

Lines changed: 17 additions & 17 deletions

File tree

DevLog/Presentation/ViewModel/HomeViewModel.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -157,10 +157,10 @@ final class HomeViewModel: Store {
157157
func run(_ effect: SideEffect) {
158158
switch effect {
159159
case .fetchTodoCategoryPreferences:
160-
beginLoading(for: .preferences, mode: .immediate)
160+
beginLoading(for: .preferences, mode: .delayed)
161161
Task {
162162
do {
163-
defer { endLoading(for: .preferences, mode: .immediate) }
163+
defer { endLoading(for: .preferences, mode: .delayed) }
164164
let preferences = try await fetchPreferencesUseCase.execute()
165165
send(.setTodoCategory(preferences.map(TodoCategoryItem.init(from:))))
166166
} catch {
@@ -192,10 +192,10 @@ final class HomeViewModel: Store {
192192
}
193193
}
194194
case .fetchRecentTodos:
195-
beginLoading(for: .recentTodos, mode: .immediate)
195+
beginLoading(for: .recentTodos, mode: .delayed)
196196
Task {
197197
do {
198-
defer { endLoading(for: .recentTodos, mode: .immediate) }
198+
defer { endLoading(for: .recentTodos, mode: .delayed) }
199199
let page = try await fetchRecentTodos()
200200
let items = page.items
201201
.filter { $0.createdAt != $0.updatedAt }
@@ -254,10 +254,10 @@ final class HomeViewModel: Store {
254254
}
255255
}
256256
case .fetchWebPages:
257-
beginLoading(for: .webPage, mode: .immediate)
257+
beginLoading(for: .webPage, mode: .delayed)
258258
Task {
259259
do {
260-
defer { endLoading(for: .webPage, mode: .immediate) }
260+
defer { endLoading(for: .webPage, mode: .delayed) }
261261
let pages = try await fetchWebPagesUseCase.execute("")
262262
send(.updateWebPages(pages.map { WebPageItem(from: $0) }))
263263
} catch {

DevLog/Presentation/ViewModel/ProfileViewModel.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,10 +201,10 @@ final class ProfileViewModel: Store {
201201
}
202202
}
203203
case .fetchActivityQuarter(let quarterStart):
204-
beginLoading(mode: .immediate)
204+
beginLoading(mode: .delayed)
205205
Task {
206206
do {
207-
defer { endLoading(mode: .immediate) }
207+
defer { endLoading(mode: .delayed) }
208208
let quarterActivityData = try await fetchQuarterActivityData(from: quarterStart)
209209
send(
210210
.setActivityQuarter(

DevLog/Presentation/ViewModel/PushNotificationListViewModel.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,10 +118,10 @@ final class PushNotificationListViewModel: Store {
118118
if cursor == nil {
119119
stopObservingNotifications()
120120
}
121-
beginLoading(.immediate)
121+
beginLoading(.delayed)
122122
Task {
123123
do {
124-
defer { endLoading(.immediate) }
124+
defer { endLoading(.delayed) }
125125
let existingCount = cursor == nil ? 0 : self.state.notifications.count
126126

127127
let page = try await fetchUseCase.execute(query, cursor: cursor)
@@ -160,7 +160,7 @@ final class PushNotificationListViewModel: Store {
160160
beginLoading(.delayed)
161161
Task {
162162
// endLoading(.delayed)를 defer로 두지 않는 이유
163-
// send(.fetchNotifications)가 같은 턴에서 beginLoading(.immediate)를 먼저 올린 뒤
163+
// send(.fetchNotifications)가 같은 턴에서 beginLoading(.delayed)를 먼저 올린 뒤
164164
// delayed 로딩을 내려야 같은 isLoading이 끊기지 않기 때문
165165
do {
166166
try await undoDeleteUseCase.execute(notificationId)

DevLog/Presentation/ViewModel/PushNotificationSettingsViewModel.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,10 @@ final class PushNotificationSettingsViewModel: Store {
107107
func run(_ effect: SideEffect) {
108108
switch effect {
109109
case .fetchPushNotificationSettings:
110-
beginLoading(.immediate)
110+
beginLoading(.delayed)
111111
Task {
112112
do {
113-
defer { endLoading(.immediate) }
113+
defer { endLoading(.delayed) }
114114
let settings = try await fetchPushSettingsUseCase.execute()
115115
self.send(.setPushNotificationEnable(settings.isEnabled))
116116
if let hour = settings.scheduledTime.hour,

DevLog/Presentation/ViewModel/TodayViewModel.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,10 +189,10 @@ final class TodayViewModel: Store {
189189
func run(_ effect: SideEffect) {
190190
switch effect {
191191
case .fetchTodos:
192-
beginLoading(.immediate)
192+
beginLoading(.delayed)
193193
Task {
194194
do {
195-
defer { endLoading(.immediate) }
195+
defer { endLoading(.delayed) }
196196
async let todosWithDueDatePage = fetchTodosUseCase.execute(
197197
TodoQuery(
198198
completionFilter: .incomplete,

DevLog/Presentation/ViewModel/TodoDetailViewModel.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,10 +95,10 @@ final class TodoDetailViewModel: Store {
9595
func run(_ effect: SideEffect) {
9696
switch effect {
9797
case .fetchTodo:
98-
beginLoading(.immediate)
98+
beginLoading(.delayed)
9999
Task {
100100
do {
101-
defer { endLoading(.immediate) }
101+
defer { endLoading(.delayed) }
102102
let todo = try await fetchTodoUseCase.execute(todoId)
103103
send(.setTodo(todo))
104104
} catch {

0 commit comments

Comments
 (0)