@@ -142,6 +142,10 @@ final class NewOrderViewModel: ObservableObject {
142142 ///
143143 private let analytics : Analytics
144144
145+ /// Order Synchronizer helper.
146+ ///
147+ private let orderSynchronizer : OrderSynchronizer
148+
145149 init ( siteID: Int64 ,
146150 stores: StoresManager = ServiceLocator . stores,
147151 storageManager: StorageManagerType = ServiceLocator . storageManager,
@@ -152,6 +156,7 @@ final class NewOrderViewModel: ObservableObject {
152156 self . storageManager = storageManager
153157 self . currencyFormatter = CurrencyFormatter ( currencySettings: currencySettings)
154158 self . analytics = analytics
159+ self . orderSynchronizer = LocalOrderSynchronizer ( siteID: siteID, stores: stores)
155160
156161 configureNavigationTrailingItem ( )
157162 configureStatusBadgeViewModel ( )
@@ -245,8 +250,8 @@ final class NewOrderViewModel: ObservableObject {
245250 /// Updates the order status & tracks its event
246251 ///
247252 func updateOrderStatus( newStatus: OrderStatusEnum ) {
248- let oldStatus = orderDetails . status
249- orderDetails . status = newStatus
253+ let oldStatus = orderSynchronizer . order . status
254+ orderSynchronizer . setStatus . send ( newStatus)
250255 analytics. track ( event: WooAnalyticsEvent . Orders. orderStatusChange ( flow: . creation, orderID: nil , from: oldStatus, to: newStatus) )
251256 }
252257}
0 commit comments