@@ -16,22 +16,25 @@ final class HubMenuViewModel: ObservableObject {
1616 private( set) unowned var navigationController : UINavigationController ?
1717
1818 var avatarURL : URL ? {
19- guard let urlString = ServiceLocator . stores. sessionManager. defaultAccount? . gravatarUrl, let url = URL ( string: urlString) else {
19+ guard let urlString = stores. sessionManager. defaultAccount? . gravatarUrl, let url = URL ( string: urlString) else {
2020 return nil
2121 }
2222 return url
2323 }
24+
2425 var storeTitle : String {
25- ServiceLocator . stores. sessionManager. defaultSite? . name ?? Localization . myStore
26+ stores. sessionManager. defaultSite? . name ?? Localization . myStore
2627 }
28+
2729 var storeURL : URL {
28- guard let urlString = ServiceLocator . stores. sessionManager. defaultSite? . url, let url = URL ( string: urlString) else {
30+ guard let urlString = stores. sessionManager. defaultSite? . url, let url = URL ( string: urlString) else {
2931 return WooConstants . URLs. blog. asURL ( )
3032 }
3133 return url
3234 }
35+
3336 var woocommerceAdminURL : URL {
34- guard let urlString = ServiceLocator . stores. sessionManager. defaultSite? . adminURL, let url = URL ( string: urlString) else {
37+ guard let urlString = stores. sessionManager. defaultSite? . adminURL, let url = URL ( string: urlString) else {
3538 return WooConstants . URLs. blog. asURL ( )
3639 }
3740 return url
@@ -43,15 +46,21 @@ final class HubMenuViewModel: ObservableObject {
4346
4447 @Published var showingReviewDetail = false
4548
49+ private let stores : StoresManager
50+
4651 private var productReviewFromNoteParcel : ProductReviewFromNoteParcel ?
4752
4853 private var storePickerCoordinator : StorePickerCoordinator ?
4954
5055 private var cancellables = Set < AnyCancellable > ( )
5156
52- init ( siteID: Int64 , navigationController: UINavigationController ? = nil , featureFlagService: FeatureFlagService = ServiceLocator . featureFlagService) {
57+ init ( siteID: Int64 ,
58+ navigationController: UINavigationController ? = nil ,
59+ featureFlagService: FeatureFlagService = ServiceLocator . featureFlagService,
60+ stores: StoresManager = ServiceLocator . stores) {
5361 self . siteID = siteID
5462 self . navigationController = navigationController
63+ self . stores = stores
5564 menuElements = [ . woocommerceAdmin, . viewStore]
5665 if featureFlagService. isFeatureFlagEnabled ( . inbox) {
5766 menuElements. append ( . inbox)
@@ -87,7 +96,7 @@ final class HubMenuViewModel: ObservableObject {
8796 }
8897
8998 private func observeSiteForUIUpdates( ) {
90- ServiceLocator . stores. site. sink { site in
99+ stores. site. sink { site in
91100 // This will be useful in the future for updating some info of the screen depending on the store site info
92101 } . store ( in: & cancellables)
93102 }
0 commit comments