diff --git a/Package.swift b/Package.swift index 5bf030c00f28088c6d70459394fe54d3528c22d4..e9456bac2932d8b4b9835d47b6a51f007cc9da4e 100644 --- a/Package.swift +++ b/Package.swift @@ -42,8 +42,7 @@ let package = Package( .library(name: "ChatInputFeature", targets: ["ChatInputFeature"]), .library(name: "OnboardingFeature", targets: ["OnboardingFeature"]), .library(name: "ContactListFeature", targets: ["ContactListFeature"]), - .library(name: "DependencyInjection", targets: ["DependencyInjection"]), - .library(name: "ReportingFeature", targets: ["ReportingFeature"]), + .library(name: "ReportingFeature", targets: ["ReportingFeature"]) ], dependencies: [ .package( @@ -125,6 +124,10 @@ let package = Package( url: "https://github.com/pointfreeco/xctest-dynamic-overlay.git", .upToNextMajor(from: "0.3.3") ), + .package( + url: "https://git.xx.network/elixxir/xxm-di.git", + .upToNextMajor(from: "1.0.0") + ) ], targets: [ .target( @@ -173,15 +176,6 @@ let package = Package( .target( name: "VersionChecking" ), - .target( - name: "DependencyInjection" - ), - .testTarget( - name: "DependencyInjectionTests", - dependencies: [ - .target(name: "DependencyInjection"), - ] - ), .target( name: "InputField", dependencies: [ @@ -193,14 +187,14 @@ let package = Package( dependencies: [ .target(name: "Shared"), .target(name: "XXNavigation"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), ] ), .target( name: "XXNavigation", dependencies: [ .target(name: "DrawerFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "Navigation", package: "Navigation"), .product(name: "XXModels", package: "client-ios-db"), ] @@ -210,7 +204,7 @@ let package = Package( dependencies: [ .target(name: "Defaults"), .target(name: "ReportingFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "XXDatabase", package: "client-ios-db"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), .product(name: "XXMessengerClient", package: "elixxir-dapps-sdk-swift"), @@ -231,7 +225,7 @@ let package = Package( .target( name: "Defaults", dependencies: [ - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), ] ), .target( @@ -246,7 +240,7 @@ let package = Package( dependencies: [ .target(name: "Shared"), .target(name: "XXNavigation"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), ] ), .target( @@ -306,7 +300,7 @@ let package = Package( .target(name: "Shared"), .target(name: "Presentation"), .target(name: "XXNavigation"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "XXDatabase", package: "client-ios-db"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), .product(name: "CloudFilesDrive", package: "xxm-cloud-providers"), @@ -339,7 +333,7 @@ let package = Package( .target(name: "DrawerFeature"), .target(name: "ChatInputFeature"), .target(name: "ReportingFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "ChatLayout", package: "ChatLayout"), .product(name: "DifferenceKit", package: "DifferenceKit"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), @@ -356,7 +350,7 @@ let package = Package( .target(name: "Presentation"), .target(name: "ContactFeature"), .target(name: "NetworkMonitor"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "Retry", package: "Retry"), .product(name: "XXDatabase", package: "client-ios-db"), ] @@ -371,7 +365,7 @@ let package = Package( .target(name: "BackupFeature"), .target(name: "VersionChecking"), .target(name: "ReportingFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), .product(name: "CloudFilesSFTP", package: "xxm-cloud-providers"), .product(name: "CombineSchedulers", package: "combine-schedulers"), @@ -394,7 +388,7 @@ let package = Package( dependencies: [ .target(name: "Shared"), .target(name: "ContactFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "DifferenceKit", package: "DifferenceKit"), ] ), @@ -411,7 +405,7 @@ let package = Package( .target(name: "Presentation"), .target(name: "DrawerFeature"), .target(name: "BackupFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "CombineSchedulers", package: "combine-schedulers"), .product(name: "ScrollViewController", package: "ScrollViewController"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), @@ -429,7 +423,7 @@ let package = Package( .target(name: "ProfileFeature"), .target(name: "SettingsFeature"), .target(name: "ContactListFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "DifferenceKit", package: "DifferenceKit"), ] ), @@ -446,7 +440,7 @@ let package = Package( .target(name: "Presentation"), .target(name: "DrawerFeature"), .target(name: "VersionChecking"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "CombineSchedulers", package: "combine-schedulers"), .product(name: "ScrollViewController", package: "ScrollViewController"), ] @@ -460,7 +454,7 @@ let package = Package( .target(name: "XXNavigation"), .target(name: "DrawerFeature"), .target(name: "ReportingFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), ] ), @@ -472,7 +466,7 @@ let package = Package( .target(name: "Presentation"), .target(name: "DrawerFeature"), .target(name: "NetworkMonitor"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), .product(name: "CloudFilesSFTP", package: "xxm-cloud-providers"), .product(name: "CloudFilesDrive", package: "xxm-cloud-providers"), @@ -490,7 +484,7 @@ let package = Package( .target(name: "Presentation"), .target(name: "ContactFeature"), .target(name: "NetworkMonitor"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "SnapKit", package: "SnapKit"), ] ), @@ -500,7 +494,7 @@ let package = Package( .target(name: "Shared"), .target(name: "Presentation"), .target(name: "ContactFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "DifferenceKit", package: "DifferenceKit"), ] ), @@ -517,7 +511,7 @@ let package = Package( .target(name: "MenuFeature"), .target(name: "Presentation"), .target(name: "DrawerFeature"), - .target(name: "DependencyInjection"), + .product(name: "DependencyInjection", package: "xxm-di"), .product(name: "CombineSchedulers", package: "combine-schedulers"), .product(name: "ScrollViewController", package: "ScrollViewController"), ] diff --git a/Sources/App/AppDelegate.swift b/Sources/App/AppDelegate.swift index ec35ad28c85991a2255727da59a5dcaee95429dc..2b3b6e9a08abe289d6b089d8c07040f645fee6e6 100644 --- a/Sources/App/AppDelegate.swift +++ b/Sources/App/AppDelegate.swift @@ -6,7 +6,7 @@ import Defaults import PushFeature import LaunchFeature import CrashReporting -import DependencyInjection +import DI import XXModels import XXLogger @@ -54,7 +54,7 @@ public class AppDelegate: UIResponder, UIApplicationDelegate { DependencyRegistrator.registerNavigators(navController) - DependencyInjection.Container.shared.register( + DI.Container.shared.register( PushRouter.live(navigationController: navController) ) return true @@ -65,8 +65,8 @@ public class AppDelegate: UIResponder, UIApplicationDelegate { } public func applicationDidEnterBackground(_ application: UIApplication) { - if let messenger = try? DependencyInjection.Container.shared.resolve() as Messenger, - let database = try? DependencyInjection.Container.shared.resolve() as Database, + if let messenger = try? DI.Container.shared.resolve() as Messenger, + let database = try? DI.Container.shared.resolve() as Database, let cMix = try? messenger.cMix.tryGet() { let backgroundTask = application.beginBackgroundTask(withName: "xx.stop.network") {} @@ -111,7 +111,7 @@ public class AppDelegate: UIResponder, UIApplicationDelegate { } public func applicationWillTerminate(_ application: UIApplication) { - if let messenger = try? DependencyInjection.Container.shared.resolve() as Messenger { + if let messenger = try? DI.Container.shared.resolve() as Messenger { try? messenger.stop() } } @@ -123,7 +123,7 @@ public class AppDelegate: UIResponder, UIApplicationDelegate { print(">>> Invalidated background timer") } - if let messenger = try? DependencyInjection.Container.shared.resolve() as Messenger, + if let messenger = try? DI.Container.shared.resolve() as Messenger, let cMix = messenger.cMix.get() { guard self.calledStopNetwork == true else { return } try? cMix.startNetworkFollower(timeoutMS: 10_000) @@ -153,7 +153,7 @@ public class AppDelegate: UIResponder, UIApplicationDelegate { guard userActivity.activityType == NSUserActivityTypeBrowsingWeb, let incomingURL = userActivity.webpageURL, let username = getUsernameFromInvitationDeepLink(incomingURL), - let router = try? DependencyInjection.Container.shared.resolve() as PushRouter else { + let router = try? DI.Container.shared.resolve() as PushRouter else { return false } diff --git a/Sources/App/DependencyRegistrator.swift b/Sources/App/DependencyRegistrator.swift index dfa6014673d4c9c4a9054092e7e252478ab0471e..787aa3789a4a864e0544f8dfc80ac0ac840d2977 100644 --- a/Sources/App/DependencyRegistrator.swift +++ b/Sources/App/DependencyRegistrator.swift @@ -20,7 +20,7 @@ import CrashReporting import NetworkMonitor import VersionChecking import ReportingFeature -import DependencyInjection +import DI // MARK: UI Features @@ -48,7 +48,7 @@ import KeychainAccess import XXMessengerClient struct DependencyRegistrator { - static private let container = DependencyInjection.Container.shared + static private let container = DI.Container.shared static func registerDependencies() { #if DEBUG diff --git a/Sources/App/PushRouter.swift b/Sources/App/PushRouter.swift index 65536c1604c6c6bf34b72d0b8b097ac9b731d79e..acebc7b3677915766a6f302a46d2b65cbba3cf07 100644 --- a/Sources/App/PushRouter.swift +++ b/Sources/App/PushRouter.swift @@ -5,7 +5,7 @@ import SearchFeature import LaunchFeature import ChatListFeature import RequestsFeature -import DependencyInjection +import DI import XXModels import XXMessengerClient @@ -21,7 +21,7 @@ extension PushRouter { navigationController.setViewControllers([RequestsContainerController()], animated: true) } case .search(username: let username): - if let messenger = try? DependencyInjection.Container.shared.resolve() as Messenger, + if let messenger = try? DI.Container.shared.resolve() as Messenger, let _ = try? messenger.ud.get()?.getContact() { if !(navigationController.viewControllers.last is SearchContainerController) { navigationController.setViewControllers([ @@ -33,7 +33,7 @@ extension PushRouter { } } case .contactChat(id: let id): - if let database: Database = try? DependencyInjection.Container.shared.resolve(), + if let database: Database = try? DI.Container.shared.resolve(), let contact = try? database.fetchContacts(.init(id: [id])).first { navigationController.setViewControllers([ ChatListController(), @@ -41,7 +41,7 @@ extension PushRouter { ], animated: true) } case .groupChat(id: let id): - if let database: Database = try? DependencyInjection.Container.shared.resolve(), + if let database: Database = try? DI.Container.shared.resolve(), let info = try? database.fetchGroupInfos(.init(groupId: id)).first { navigationController.setViewControllers([ ChatListController(), diff --git a/Sources/BackupFeature/Controllers/BackupConfigController.swift b/Sources/BackupFeature/Controllers/BackupConfigController.swift index 79cbd4384d0376dd9727528c8d43ae74e853c703..3a8cdb144ddad6cb568d7204fc028eccb0cf6da7 100644 --- a/Sources/BackupFeature/Controllers/BackupConfigController.swift +++ b/Sources/BackupFeature/Controllers/BackupConfigController.swift @@ -4,7 +4,7 @@ import Combine import CloudFiles import XXNavigation import DrawerFeature -import DependencyInjection +import DI final class BackupConfigController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/BackupFeature/Controllers/BackupController.swift b/Sources/BackupFeature/Controllers/BackupController.swift index a996d324f30869f1bd8f2f478a3e7970c35cf450..aa5b7e8db6f20d08baebc313b4ea459fc093532c 100644 --- a/Sources/BackupFeature/Controllers/BackupController.swift +++ b/Sources/BackupFeature/Controllers/BackupController.swift @@ -1,7 +1,7 @@ import UIKit import Shared import Combine -import DependencyInjection +import DI public final class BackupController: UIViewController { private let viewModel = BackupViewModel.live() diff --git a/Sources/BackupFeature/Controllers/BackupSetupController.swift b/Sources/BackupFeature/Controllers/BackupSetupController.swift index a9600531d4e311b9f3942338ebe2cfca6cb9ee62..efb0cab4a130ed620275c19319eb5302f4638624 100644 --- a/Sources/BackupFeature/Controllers/BackupSetupController.swift +++ b/Sources/BackupFeature/Controllers/BackupSetupController.swift @@ -1,6 +1,6 @@ import UIKit import Combine -import DependencyInjection +import DI final class BackupSetupController: UIViewController { private lazy var screenView = BackupSetupView() diff --git a/Sources/BackupFeature/Service/BackupService.swift b/Sources/BackupFeature/Service/BackupService.swift index 18e057f07faa66824f50831b22779c45ce789822..2d5e9989434f1f46a380597bfcc51e1716a29369 100644 --- a/Sources/BackupFeature/Service/BackupService.swift +++ b/Sources/BackupFeature/Service/BackupService.swift @@ -7,7 +7,7 @@ import CloudFilesSFTP import NetworkMonitor import KeychainAccess import XXMessengerClient -import DependencyInjection +import DI public final class BackupService { @Dependency var messenger: Messenger diff --git a/Sources/BackupFeature/ViewModels/BackupConfigViewModel.swift b/Sources/BackupFeature/ViewModels/BackupConfigViewModel.swift index edaf65b5d141053d00c5793815addd5e17af44ba..d8e916d46c2cc2d20b664e367d1be0f37e9ebb2f 100644 --- a/Sources/BackupFeature/ViewModels/BackupConfigViewModel.swift +++ b/Sources/BackupFeature/ViewModels/BackupConfigViewModel.swift @@ -5,7 +5,7 @@ import XXClient import Defaults import Foundation -import DependencyInjection +import DI import CloudFiles import XXNavigation diff --git a/Sources/BackupFeature/ViewModels/BackupSFTPViewModel.swift b/Sources/BackupFeature/ViewModels/BackupSFTPViewModel.swift index 14931edd25effc5a99196ef03d8cf183356b39db..80cdb78497baf010eb0e64c04b53660595af35a9 100644 --- a/Sources/BackupFeature/ViewModels/BackupSFTPViewModel.swift +++ b/Sources/BackupFeature/ViewModels/BackupSFTPViewModel.swift @@ -6,7 +6,7 @@ import Combine import Foundation import CloudFiles import CloudFilesSFTP -import DependencyInjection +import DI struct SFTPViewState { var host: String = "" diff --git a/Sources/BackupFeature/ViewModels/BackupSetupViewModel.swift b/Sources/BackupFeature/ViewModels/BackupSetupViewModel.swift index 0d44658be087717608df2d2e252f7473c7422593..35575aff0578c40a0f57b419740fb7ca5fe3bda1 100644 --- a/Sources/BackupFeature/ViewModels/BackupSetupViewModel.swift +++ b/Sources/BackupFeature/ViewModels/BackupSetupViewModel.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import CloudFiles -import DependencyInjection +import DI struct BackupSetupViewModel { var didTapService: (CloudService, UIViewController) -> Void diff --git a/Sources/BackupFeature/ViewModels/BackupViewModel.swift b/Sources/BackupFeature/ViewModels/BackupViewModel.swift index 23c4cc9d7d617380b8c3b3c35ceb5e65ac569493..17fca00a15143c3fd16752e780bb49ce15a48bc8 100644 --- a/Sources/BackupFeature/ViewModels/BackupViewModel.swift +++ b/Sources/BackupFeature/ViewModels/BackupViewModel.swift @@ -1,5 +1,5 @@ import Combine -import DependencyInjection +import DI enum BackupViewState: Equatable { case setup diff --git a/Sources/ChatFeature/Controllers/GroupChatController.swift b/Sources/ChatFeature/Controllers/GroupChatController.swift index 0634e2cc6aa63eaded3d3e3ab58bed91fbe8d5ca..c780effb9726d2bb9b3ce3093da3130f6c698488 100644 --- a/Sources/ChatFeature/Controllers/GroupChatController.swift +++ b/Sources/ChatFeature/Controllers/GroupChatController.swift @@ -1,3 +1,4 @@ +import DI import UIKit import Shared import Combine @@ -9,7 +10,6 @@ import DrawerFeature import DifferenceKit import ReportingFeature import ChatInputFeature -import DependencyInjection typealias OutgoingGroupTextCell = CollectionCell<FlexibleSpace, StackMessageView> typealias IncomingGroupTextCell = CollectionCell<StackMessageView, FlexibleSpace> @@ -50,7 +50,7 @@ public final class GroupChatController: UIViewController { initialState: .init(canAddAttachments: false), reducer: chatInputReducer, environment: .init( - voxophone: try! DependencyInjection.Container.shared.resolve() as Voxophone, + voxophone: try! DI.Container.shared.resolve() as Voxophone, sendAudio: { _ in }, didTapCamera: {}, didTapLibrary: {}, diff --git a/Sources/ChatFeature/Controllers/SingleChatController.swift b/Sources/ChatFeature/Controllers/SingleChatController.swift index 5c3a7b277acf8d89a7e74ddef2a8f097320f37eb..c320ad1d70e95dc0ddeb3af382f9af416ef686c5 100644 --- a/Sources/ChatFeature/Controllers/SingleChatController.swift +++ b/Sources/ChatFeature/Controllers/SingleChatController.swift @@ -11,7 +11,7 @@ import DrawerFeature import DifferenceKit import ChatInputFeature import ReportingFeature -import DependencyInjection +import DI import ScrollViewController extension FlexibleSpace: CollectionCellContent { @@ -65,7 +65,7 @@ public final class SingleChatController: UIViewController { initialState: .init(canAddAttachments: true), reducer: chatInputReducer, environment: .init( - voxophone: try! DependencyInjection.Container.shared.resolve() as Voxophone, + voxophone: try! DI.Container.shared.resolve() as Voxophone, sendAudio: { viewModel.didSendAudio(url: $0) }, didTapCamera: { viewModel.didTest(permission: .camera) }, didTapLibrary: { viewModel.didTest(permission: .library) }, diff --git a/Sources/ChatFeature/ViewModels/GroupChatViewModel.swift b/Sources/ChatFeature/ViewModels/GroupChatViewModel.swift index 324d01dc16684a481127d12f3b214ef2b9ae5846..aa2481e2d7fef99b50edf6989bc9cc3898218ef6 100644 --- a/Sources/ChatFeature/ViewModels/GroupChatViewModel.swift +++ b/Sources/ChatFeature/ViewModels/GroupChatViewModel.swift @@ -6,7 +6,7 @@ import Defaults import Foundation import DifferenceKit import ReportingFeature -import DependencyInjection +import DI import XXMessengerClient import struct XXModels.Message diff --git a/Sources/ChatFeature/ViewModels/SingleChatViewModel.swift b/Sources/ChatFeature/ViewModels/SingleChatViewModel.swift index 5aa7c08abf32158141327036995b87021543c648..8dde807bab06c3bbd044d1f6d9bde7c0777f6a5e 100644 --- a/Sources/ChatFeature/ViewModels/SingleChatViewModel.swift +++ b/Sources/ChatFeature/ViewModels/SingleChatViewModel.swift @@ -9,7 +9,7 @@ import Foundation import Permissions import DifferenceKit import ReportingFeature -import DependencyInjection +import DI import XXMessengerClient import struct XXModels.Message diff --git a/Sources/ChatListFeature/Controller/ChatListController.swift b/Sources/ChatListFeature/Controller/ChatListController.swift index 35768fd49fb5ed0d0cdb6f69859b16551f7648b0..071e61e21d9909254ac25f219c95bc466ff7e775 100644 --- a/Sources/ChatListFeature/Controller/ChatListController.swift +++ b/Sources/ChatListFeature/Controller/ChatListController.swift @@ -4,7 +4,7 @@ import Combine import XXModels import MenuFeature import XXNavigation -import DependencyInjection +import DI public final class ChatListController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ChatListFeature/Controller/ChatListSearchTableController.swift b/Sources/ChatListFeature/Controller/ChatListSearchTableController.swift index 3ea3a7825fdce9140fe4d6a3b0279a603a5d6d26..999049ffdc52c0b8121c15dc75d69daed59a7924 100644 --- a/Sources/ChatListFeature/Controller/ChatListSearchTableController.swift +++ b/Sources/ChatListFeature/Controller/ChatListSearchTableController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI class ChatSearchListTableViewDiffableDataSource: UITableViewDiffableDataSource<SearchSection, SearchItem> { override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? { diff --git a/Sources/ChatListFeature/Controller/ChatListTableController.swift b/Sources/ChatListFeature/Controller/ChatListTableController.swift index 744b95cccbb4550af20551cca7331f330d210dd1..74e5832406fcb96ab83c2dc09f591f2931386e21 100644 --- a/Sources/ChatListFeature/Controller/ChatListTableController.swift +++ b/Sources/ChatListFeature/Controller/ChatListTableController.swift @@ -5,7 +5,7 @@ import XXModels import XXNavigation import DifferenceKit import DrawerFeature -import DependencyInjection +import DI extension ChatInfo: Differentiable { public var differenceIdentifier: ChatInfo.ID { id } diff --git a/Sources/ChatListFeature/ViewModel/ChatListViewModel.swift b/Sources/ChatListFeature/ViewModel/ChatListViewModel.swift index f9214da7daf4627883032d5c9eb3a476d9d6de33..1838460803a0b4e6b2068247db601d4038c6f708 100644 --- a/Sources/ChatListFeature/ViewModel/ChatListViewModel.swift +++ b/Sources/ChatListFeature/ViewModel/ChatListViewModel.swift @@ -5,7 +5,7 @@ import XXModels import Defaults import XXMessengerClient import ReportingFeature -import DependencyInjection +import DI import struct XXModels.Group import XXClient diff --git a/Sources/ContactFeature/Controllers/ContactController.swift b/Sources/ContactFeature/Controllers/ContactController.swift index 11e82eaa12b371101d465b795df317af4739ff26..06147dd9840494b59bca963bf93168968169c045 100644 --- a/Sources/ContactFeature/Controllers/ContactController.swift +++ b/Sources/ContactFeature/Controllers/ContactController.swift @@ -4,7 +4,7 @@ import Combine import XXModels import XXNavigation import DrawerFeature -import DependencyInjection +import DI import ScrollViewController public final class ContactController: UIViewController { diff --git a/Sources/ContactFeature/ViewModels/ContactViewModel.swift b/Sources/ContactFeature/ViewModels/ContactViewModel.swift index 43e861d7150230e226dcf67b2ec72f2694e0cbe7..1434570019f0a2be2e3afdc346380944d7f50442 100644 --- a/Sources/ContactFeature/ViewModels/ContactViewModel.swift +++ b/Sources/ContactFeature/ViewModels/ContactViewModel.swift @@ -6,7 +6,7 @@ import Defaults import XXClient import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI struct ContactViewState: Equatable { var title: String? diff --git a/Sources/ContactListFeature/Controllers/ContactListController.swift b/Sources/ContactListFeature/Controllers/ContactListController.swift index a21f9ae92b76a0523e4a5b07eac9a22b2f183340..12fe939a5317fad96951642364f822eb18606db9 100644 --- a/Sources/ContactListFeature/Controllers/ContactListController.swift +++ b/Sources/ContactListFeature/Controllers/ContactListController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI public final class ContactListController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ContactListFeature/Controllers/CreateGroupController.swift b/Sources/ContactListFeature/Controllers/CreateGroupController.swift index d772b6307b3364427653b75b5b96dc33467c0b90..2e848091bfe805d4f1de43b5b537efad83687fa7 100644 --- a/Sources/ContactListFeature/Controllers/CreateGroupController.swift +++ b/Sources/ContactListFeature/Controllers/CreateGroupController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXModels import XXNavigation -import DependencyInjection +import DI public final class CreateGroupController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ContactListFeature/ViewModels/ContactListViewModel.swift b/Sources/ContactListFeature/ViewModels/ContactListViewModel.swift index 93de50cdd963d8c60d57118ec8692d1746ed56fb..838a7b12557279a3833c1c2d955e3719d6c74561 100644 --- a/Sources/ContactListFeature/ViewModels/ContactListViewModel.swift +++ b/Sources/ContactListFeature/ViewModels/ContactListViewModel.swift @@ -2,7 +2,7 @@ import Combine import XXModels import Defaults import ReportingFeature -import DependencyInjection +import DI import XXMessengerClient import Foundation diff --git a/Sources/ContactListFeature/ViewModels/CreateGroupViewModel.swift b/Sources/ContactListFeature/ViewModels/CreateGroupViewModel.swift index d24fd2e9f37c0477ff46efacbfd5606d38c243b2..74d9745b35ebd188dff4cf9a74115bb50e4d7c55 100644 --- a/Sources/ContactListFeature/ViewModels/CreateGroupViewModel.swift +++ b/Sources/ContactListFeature/ViewModels/CreateGroupViewModel.swift @@ -7,7 +7,7 @@ import XXClient import ReportingFeature import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class CreateGroupViewModel { @KeyObject(.username, defaultValue: "") var username: String diff --git a/Sources/Countries/CountryListController.swift b/Sources/Countries/CountryListController.swift index 4a526743c57c383560f5221759166a26111ac9e8..c49f954b65024391d731486d4042dcaceac8583d 100644 --- a/Sources/Countries/CountryListController.swift +++ b/Sources/Countries/CountryListController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI public final class CountryListController: UIViewController, UITableViewDelegate { @Dependency var navigator: Navigator diff --git a/Sources/Defaults/KeyObject.swift b/Sources/Defaults/KeyObject.swift index c864b9f9c9adcd70a62f5f8891fc8b71f9644a07..fc350c6090a25ec3eda750b1c3db128b1e27fb86 100644 --- a/Sources/Defaults/KeyObject.swift +++ b/Sources/Defaults/KeyObject.swift @@ -1,5 +1,5 @@ import Foundation -import DependencyInjection +import DI public enum Key: String { // MARK: Profile diff --git a/Sources/DependencyInjection/Container.swift b/Sources/DependencyInjection/Container.swift deleted file mode 100644 index cd7bf2fcb3ce6515f63355f71163b30d83f67dd5..0000000000000000000000000000000000000000 --- a/Sources/DependencyInjection/Container.swift +++ /dev/null @@ -1,27 +0,0 @@ -public final class Container { - public static let shared = Container() - - public init() {} - - public func register<T>(_ dependency: T) { - dependencies[key(for: T.self)] = dependency - } - - public func unregister<T>(_ dependencyType: T.Type) { - dependencies.removeValue(forKey: String(describing: dependencyType)) - } - - public func resolve<T>() throws -> T { - let key = self.key(for: T.self) - guard let dependency = dependencies[key] as? T else { - throw UnregisteredDependencyError(type: key) - } - return dependency - } - - var dependencies = [String: Any]() - - func key<T>(for dependencyType: T.Type) -> String { - String(describing: dependencyType) - } -} diff --git a/Sources/DependencyInjection/DependencyPropertyWrapper.swift b/Sources/DependencyInjection/DependencyPropertyWrapper.swift deleted file mode 100644 index ef7067accdd81d40f96cc862aab22d213efafda1..0000000000000000000000000000000000000000 --- a/Sources/DependencyInjection/DependencyPropertyWrapper.swift +++ /dev/null @@ -1,20 +0,0 @@ -@propertyWrapper -public struct Dependency<T> { - public init(container: Container = .shared, file: StaticString = #file, line: UInt = #line) { - self.container = container - self.file = file - self.line = line - } - - public var wrappedValue: T { - do { - return try container.resolve() - } catch { - fatalError(error.localizedDescription, file: file, line: line) - } - } - - let container: Container - let file: StaticString - let line: UInt -} diff --git a/Sources/DependencyInjection/UnregisteredDependencyError.swift b/Sources/DependencyInjection/UnregisteredDependencyError.swift deleted file mode 100644 index 8ad955e63840a51fbd4da4df87dc2970728e3824..0000000000000000000000000000000000000000 --- a/Sources/DependencyInjection/UnregisteredDependencyError.swift +++ /dev/null @@ -1,11 +0,0 @@ -import Foundation - -public struct UnregisteredDependencyError: Error, Equatable { - public var type: String -} - -extension UnregisteredDependencyError: LocalizedError { - public var errorDescription: String? { - "Resolving unregistered dependency <\(type)>" - } -} diff --git a/Sources/LaunchFeature/LaunchController.swift b/Sources/LaunchFeature/LaunchController.swift index 8207138c6a4581ac6fc6d4a3a96943b2a7dc6a39..092facf981fc529bc0fd792081adf2a63b8db6ed 100644 --- a/Sources/LaunchFeature/LaunchController.swift +++ b/Sources/LaunchFeature/LaunchController.swift @@ -4,7 +4,7 @@ import Combine import PushFeature import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class LaunchController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/LaunchFeature/LaunchViewModel+Database.swift b/Sources/LaunchFeature/LaunchViewModel+Database.swift index 15a88e815fe9df6bc52f5adc15622e1a90ea4cc0..e2c7558b42680eed2d26722dc6e67f23c686c565 100644 --- a/Sources/LaunchFeature/LaunchViewModel+Database.swift +++ b/Sources/LaunchFeature/LaunchViewModel+Database.swift @@ -1,7 +1,7 @@ import XXModels import Foundation import XXDatabase -import DependencyInjection +import DI import XXLegacyDatabaseMigrator extension LaunchViewModel { @@ -40,7 +40,7 @@ extension LaunchViewModel { try FileManager.default.moveItem(atPath: legacyPath, toPath: legacyPath.appending("-backup")) } - DependencyInjection.Container.shared.register(database) + DI.Container.shared.register(database) _ = try? database.bulkUpdateContacts(.init(authStatus: [.requesting]), .init(authStatus: .requestFailed)) _ = try? database.bulkUpdateContacts(.init(authStatus: [.confirming]), .init(authStatus: .confirmationFailed)) @@ -54,7 +54,7 @@ extension LaunchViewModel { isBanned: reportingStatus.isEnabled() ? false : nil ) - guard let database: Database = try? DependencyInjection.Container.shared.resolve(), + guard let database: Database = try? DI.Container.shared.resolve(), let contact = try? database.fetchContacts(query).first else { return nil } @@ -65,7 +65,7 @@ extension LaunchViewModel { func getGroupInfoWith(groupId: Data) -> GroupInfo? { let query = GroupInfo.Query(groupId: groupId) - guard let database: Database = try? DependencyInjection.Container.shared.resolve(), + guard let database: Database = try? DI.Container.shared.resolve(), let info = try? database.fetchGroupInfos(query).first else { return nil } diff --git a/Sources/LaunchFeature/LaunchViewModel+Messenger.swift b/Sources/LaunchFeature/LaunchViewModel+Messenger.swift index 0fa99f35a9c81debbae2c2cddcaefaa5caab3739..cd52d7204156a003bd99b4bca163144ec9058290 100644 --- a/Sources/LaunchFeature/LaunchViewModel+Messenger.swift +++ b/Sources/LaunchFeature/LaunchViewModel+Messenger.swift @@ -4,7 +4,7 @@ import XXModels import XXLogger import Foundation import XXMessengerClient -import DependencyInjection +import DI extension LaunchViewModel { func setupBackupCallback() { @@ -177,7 +177,7 @@ extension LaunchViewModel { )) do { - let messenger: Messenger = try DependencyInjection.Container.shared.resolve() + let messenger: Messenger = try DI.Container.shared.resolve() try messenger.waitForNetwork() if try messenger.verifyContact(contact) { @@ -367,7 +367,7 @@ extension LaunchViewModel { }) ) - DependencyInjection.Container.shared.register(manager) + DI.Container.shared.register(manager) } func generateTransferManager() throws { @@ -393,7 +393,7 @@ extension LaunchViewModel { cMixId: messenger.e2e()!.getId() ) - DependencyInjection.Container.shared.register(manager) + DI.Container.shared.register(manager) try! manager.setStatus(dummyTrafficOn) } diff --git a/Sources/LaunchFeature/LaunchViewModel.swift b/Sources/LaunchFeature/LaunchViewModel.swift index 74d77143687839378a29cc4677c7666dddced9d5..2097750bd4de11937e831653e4c56efdecc0ca4a 100644 --- a/Sources/LaunchFeature/LaunchViewModel.swift +++ b/Sources/LaunchFeature/LaunchViewModel.swift @@ -14,7 +14,7 @@ import ReportingFeature import CombineSchedulers import CloudFilesDropbox import XXMessengerClient -import DependencyInjection +import DI import class XXClient.Cancellable diff --git a/Sources/MenuFeature/Controllers/MenuController.swift b/Sources/MenuFeature/Controllers/MenuController.swift index b14abe7b5a09efa282f8ee00e4602393473389fc..12415b6abae30aeae00521dd11ba66fefdd78a44 100644 --- a/Sources/MenuFeature/Controllers/MenuController.swift +++ b/Sources/MenuFeature/Controllers/MenuController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class MenuController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/MenuFeature/ViewModels/MenuViewModel.swift b/Sources/MenuFeature/ViewModels/MenuViewModel.swift index 9d56f10abf0cf3bde167b10c96f54e8663fa3a2b..322aae91c2aea30dd86ce5c29fb277ba169f7155 100644 --- a/Sources/MenuFeature/ViewModels/MenuViewModel.swift +++ b/Sources/MenuFeature/ViewModels/MenuViewModel.swift @@ -4,7 +4,7 @@ import XXClient import Defaults import Foundation import ReportingFeature -import DependencyInjection +import DI final class MenuViewModel { @Dependency var database: Database diff --git a/Sources/OnboardingFeature/Controllers/OnboardingCodeController.swift b/Sources/OnboardingFeature/Controllers/OnboardingCodeController.swift index 4fd0f373363cab887e9980fb224c5fc18874065c..a2e1e353c8897421b8e34e85b80dfaa120f1a091 100644 --- a/Sources/OnboardingFeature/Controllers/OnboardingCodeController.swift +++ b/Sources/OnboardingFeature/Controllers/OnboardingCodeController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI import ScrollViewController public final class OnboardingCodeController: UIViewController { diff --git a/Sources/OnboardingFeature/Controllers/OnboardingEmailController.swift b/Sources/OnboardingFeature/Controllers/OnboardingEmailController.swift index 0c52a7a14872486a1d1ca2cb82bf655ad4255e75..1804e216906f2022848c82c406bb0a81f3fc3d48 100644 --- a/Sources/OnboardingFeature/Controllers/OnboardingEmailController.swift +++ b/Sources/OnboardingFeature/Controllers/OnboardingEmailController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI import ScrollViewController public final class OnboardingEmailController: UIViewController { diff --git a/Sources/OnboardingFeature/Controllers/OnboardingPhoneController.swift b/Sources/OnboardingFeature/Controllers/OnboardingPhoneController.swift index 62c8d84656005f3915f7000ec5a3dc09b37ee2b4..aa696246287291a17003dbc80559d15ea470a282 100644 --- a/Sources/OnboardingFeature/Controllers/OnboardingPhoneController.swift +++ b/Sources/OnboardingFeature/Controllers/OnboardingPhoneController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI import ScrollViewController public final class OnboardingPhoneController: UIViewController { diff --git a/Sources/OnboardingFeature/Controllers/OnboardingStartController.swift b/Sources/OnboardingFeature/Controllers/OnboardingStartController.swift index c6307fc9595a1b87e25b352622aa01e4355cbc52..f0251cd3a6455476dbaa8e3bf0eb4f181d05fd2c 100644 --- a/Sources/OnboardingFeature/Controllers/OnboardingStartController.swift +++ b/Sources/OnboardingFeature/Controllers/OnboardingStartController.swift @@ -1,7 +1,7 @@ import UIKit import Combine import XXNavigation -import DependencyInjection +import DI public final class OnboardingStartController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/OnboardingFeature/Controllers/OnboardingUsernameController.swift b/Sources/OnboardingFeature/Controllers/OnboardingUsernameController.swift index ef80c6594b2d28cdcea31c9d2c7b014999f2e5ee..0959b1d181570748987b93d51be5a1a0e9373693 100644 --- a/Sources/OnboardingFeature/Controllers/OnboardingUsernameController.swift +++ b/Sources/OnboardingFeature/Controllers/OnboardingUsernameController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI import ScrollViewController public final class OnboardingUsernameController: UIViewController { diff --git a/Sources/OnboardingFeature/Controllers/OnboardingWelcomeController.swift b/Sources/OnboardingFeature/Controllers/OnboardingWelcomeController.swift index 0aaa842ae2c5a2171e91b72d0082bda4aeb8f192..72a1347aa2ba98dcb98546ca11fa1fea96e03d12 100644 --- a/Sources/OnboardingFeature/Controllers/OnboardingWelcomeController.swift +++ b/Sources/OnboardingFeature/Controllers/OnboardingWelcomeController.swift @@ -4,7 +4,7 @@ import Combine import Defaults import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class OnboardingWelcomeController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/OnboardingFeature/ViewModels/OnboardingCodeViewModel.swift b/Sources/OnboardingFeature/ViewModels/OnboardingCodeViewModel.swift index 98826365d3d83ecc8dc78367bf6de3db72475fbc..35dc2c9934294e5e245e77627e0257da4f1b8420 100644 --- a/Sources/OnboardingFeature/ViewModels/OnboardingCodeViewModel.swift +++ b/Sources/OnboardingFeature/ViewModels/OnboardingCodeViewModel.swift @@ -6,7 +6,7 @@ import InputField import Foundation import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class OnboardingCodeViewModel { struct ViewState: Equatable { diff --git a/Sources/OnboardingFeature/ViewModels/OnboardingEmailViewModel.swift b/Sources/OnboardingFeature/ViewModels/OnboardingEmailViewModel.swift index 29c0f4b2124e3ea7447fbf3402165fc284ba5bcd..6d3295db39a175da6be05464ee573fed622c8ec8 100644 --- a/Sources/OnboardingFeature/ViewModels/OnboardingEmailViewModel.swift +++ b/Sources/OnboardingFeature/ViewModels/OnboardingEmailViewModel.swift @@ -5,7 +5,7 @@ import InputField import Foundation import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class OnboardingEmailViewModel { struct ViewState: Equatable { diff --git a/Sources/OnboardingFeature/ViewModels/OnboardingPhoneViewModel.swift b/Sources/OnboardingFeature/ViewModels/OnboardingPhoneViewModel.swift index 4f66f0bb6ff68da0c5ff40746d47cf8e4bb71c9d..bc6550f01c10bab35c4928faa2b5aa4e4835e343 100644 --- a/Sources/OnboardingFeature/ViewModels/OnboardingPhoneViewModel.swift +++ b/Sources/OnboardingFeature/ViewModels/OnboardingPhoneViewModel.swift @@ -6,7 +6,7 @@ import InputField import Foundation import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class OnboardingPhoneViewModel { struct ViewState: Equatable { diff --git a/Sources/OnboardingFeature/ViewModels/OnboardingUsernameViewModel.swift b/Sources/OnboardingFeature/ViewModels/OnboardingUsernameViewModel.swift index 06a5f5fab2d15213305d4036f400a7ea64412d63..051e97838eda2756e8772f6600b2936ae6389995 100644 --- a/Sources/OnboardingFeature/ViewModels/OnboardingUsernameViewModel.swift +++ b/Sources/OnboardingFeature/ViewModels/OnboardingUsernameViewModel.swift @@ -7,7 +7,7 @@ import InputField import Foundation import XXMessengerClient import CombineSchedulers -import DependencyInjection +import DI final class OnboardingUsernameViewModel { struct ViewState: Equatable { diff --git a/Sources/Permissions/RequestPermissionController.swift b/Sources/Permissions/RequestPermissionController.swift index cde2e784397cf81ebb99c8e43062e1d3376ea39f..0cdc65b076c1035a4ee38cd5d9c9440e343d0291 100644 --- a/Sources/Permissions/RequestPermissionController.swift +++ b/Sources/Permissions/RequestPermissionController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI public final class RequestPermissionController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ProfileFeature/Controllers/ProfileCodeController.swift b/Sources/ProfileFeature/Controllers/ProfileCodeController.swift index dedb64d4e5592204a74587a7c63f0653dc958867..d55d52f3b275cc4defb7a338753b179af8355832 100644 --- a/Sources/ProfileFeature/Controllers/ProfileCodeController.swift +++ b/Sources/ProfileFeature/Controllers/ProfileCodeController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI import ScrollViewController public final class ProfileCodeController: UIViewController { diff --git a/Sources/ProfileFeature/Controllers/ProfileController.swift b/Sources/ProfileFeature/Controllers/ProfileController.swift index 49ac0ea4aabb9328ee34b4059e623b8f46840c3d..ca2abe5a92881271dc5bd0d1335b78eaa650bf3d 100644 --- a/Sources/ProfileFeature/Controllers/ProfileController.swift +++ b/Sources/ProfileFeature/Controllers/ProfileController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class ProfileController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ProfileFeature/Controllers/ProfileEmailController.swift b/Sources/ProfileFeature/Controllers/ProfileEmailController.swift index 3bfa34e1bdcc4435324485cf9ad8f525cbeb71fa..0a4599c046d39d09623fc8852afbef89cf9c685f 100644 --- a/Sources/ProfileFeature/Controllers/ProfileEmailController.swift +++ b/Sources/ProfileFeature/Controllers/ProfileEmailController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI import ScrollViewController public final class ProfileEmailController: UIViewController { diff --git a/Sources/ProfileFeature/Controllers/ProfilePhoneController.swift b/Sources/ProfileFeature/Controllers/ProfilePhoneController.swift index 60e1aef40eb7b3dd7a5f5c4befa4d01f49529840..061521d56d6abeebf0ff30b99e9035069146a7be 100644 --- a/Sources/ProfileFeature/Controllers/ProfilePhoneController.swift +++ b/Sources/ProfileFeature/Controllers/ProfilePhoneController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI import ScrollViewController public final class ProfilePhoneController: UIViewController { diff --git a/Sources/ProfileFeature/ViewModels/ProfileCodeViewModel.swift b/Sources/ProfileFeature/ViewModels/ProfileCodeViewModel.swift index 280270744e8c326f31f061befe77fb323b98ca08..9a1638ec536cdc728a5eb1b55c81dd93faecb24a 100644 --- a/Sources/ProfileFeature/ViewModels/ProfileCodeViewModel.swift +++ b/Sources/ProfileFeature/ViewModels/ProfileCodeViewModel.swift @@ -6,7 +6,7 @@ import InputField import Foundation import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class ProfileCodeViewModel { struct ViewState: Equatable { diff --git a/Sources/ProfileFeature/ViewModels/ProfileEmailViewModel.swift b/Sources/ProfileFeature/ViewModels/ProfileEmailViewModel.swift index d2fd3b5ad6e3f5a97998033c711a9cb7ec443ad2..fd27e4f0081cd1bda51e10fa569153943c1916c9 100644 --- a/Sources/ProfileFeature/ViewModels/ProfileEmailViewModel.swift +++ b/Sources/ProfileFeature/ViewModels/ProfileEmailViewModel.swift @@ -5,7 +5,7 @@ import Foundation import InputField import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class ProfileEmailViewModel { struct ViewState: Equatable { diff --git a/Sources/ProfileFeature/ViewModels/ProfilePhoneViewModel.swift b/Sources/ProfileFeature/ViewModels/ProfilePhoneViewModel.swift index c341c5987beb3ab949b75be99901919648a1f2d0..a71cb16be3e8d4643d01112dfedb8200fb4924d5 100644 --- a/Sources/ProfileFeature/ViewModels/ProfilePhoneViewModel.swift +++ b/Sources/ProfileFeature/ViewModels/ProfilePhoneViewModel.swift @@ -6,7 +6,7 @@ import InputField import Foundation import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI final class ProfilePhoneViewModel { struct ViewState: Equatable { diff --git a/Sources/ProfileFeature/ViewModels/ProfileViewModel.swift b/Sources/ProfileFeature/ViewModels/ProfileViewModel.swift index 72ef85939cd977efd357a9df04bb651268561470..1b0803add61d03bba84bb92e4dc989e442c4908e 100644 --- a/Sources/ProfileFeature/ViewModels/ProfileViewModel.swift +++ b/Sources/ProfileFeature/ViewModels/ProfileViewModel.swift @@ -9,7 +9,7 @@ import Permissions import BackupFeature import XXMessengerClient import CombineSchedulers -import DependencyInjection +import DI enum ProfileNavigationRoutes { case none diff --git a/Sources/PushFeature/PushExtractor.swift b/Sources/PushFeature/PushExtractor.swift index dd00bcbe3a9b3d488a43f7ec5975cd6c188fb1ab..d1dc67f5c5c98f14c57ac860f2d9330b040d068a 100644 --- a/Sources/PushFeature/PushExtractor.swift +++ b/Sources/PushFeature/PushExtractor.swift @@ -2,7 +2,7 @@ import XXModels import Foundation import XXClient import XXMessengerClient -import DependencyInjection +import DI public struct PushExtractor { enum Constants { diff --git a/Sources/PushFeature/PushHandler.swift b/Sources/PushFeature/PushHandler.swift index c22b66dd5b1bf6398dad00faa905fbda525bb3b8..1be9e28d179954a659b615f236825a753bd468bf 100644 --- a/Sources/PushFeature/PushHandler.swift +++ b/Sources/PushFeature/PushHandler.swift @@ -5,7 +5,7 @@ import XXModels import XXDatabase import XXMessengerClient import ReportingFeature -import DependencyInjection +import DI public final class PushHandler: PushHandling { private enum Constants { diff --git a/Sources/RequestsFeature/Controllers/RequestsContainerController.swift b/Sources/RequestsFeature/Controllers/RequestsContainerController.swift index 464890cdf6cc33275a4765cc42b2dbb1229bae7e..03cf57c1b6224b26c6f50db874c2f7fa0340c54c 100644 --- a/Sources/RequestsFeature/Controllers/RequestsContainerController.swift +++ b/Sources/RequestsFeature/Controllers/RequestsContainerController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import ContactFeature -import DependencyInjection +import DI public final class RequestsContainerController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/RequestsFeature/Controllers/RequestsFailedController.swift b/Sources/RequestsFeature/Controllers/RequestsFailedController.swift index 94d4a38228d3c52025d6ab50582864353f45e553..7f3f63fa70018e906325f7129a92711331bb0a09 100644 --- a/Sources/RequestsFeature/Controllers/RequestsFailedController.swift +++ b/Sources/RequestsFeature/Controllers/RequestsFailedController.swift @@ -1,6 +1,6 @@ import UIKit import Combine -import DependencyInjection +import DI final class RequestsFailedController: UIViewController { private lazy var screenView = RequestsFailedView() diff --git a/Sources/RequestsFeature/Controllers/RequestsReceivedController.swift b/Sources/RequestsFeature/Controllers/RequestsReceivedController.swift index 3ebd5792eee5a14951dc6a3616c38f3a16169f37..1ab20d49356f5d4d747d60c671cdf82f68e782ed 100644 --- a/Sources/RequestsFeature/Controllers/RequestsReceivedController.swift +++ b/Sources/RequestsFeature/Controllers/RequestsReceivedController.swift @@ -5,7 +5,7 @@ import XXModels import Countries import XXNavigation import DrawerFeature -import DependencyInjection +import DI final class RequestsReceivedController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/RequestsFeature/Controllers/RequestsSentController.swift b/Sources/RequestsFeature/Controllers/RequestsSentController.swift index ff9e0384959f18ecf25abeab1ac534acca50db01..25a35aae40e1a0d673827ac39876192c79e18329 100644 --- a/Sources/RequestsFeature/Controllers/RequestsSentController.swift +++ b/Sources/RequestsFeature/Controllers/RequestsSentController.swift @@ -1,6 +1,6 @@ import UIKit import Combine -import DependencyInjection +import DI final class RequestsSentController: UIViewController { var connectionsPublisher: AnyPublisher<Void, Never> { diff --git a/Sources/RequestsFeature/ViewModels/RequestsFailedViewModel.swift b/Sources/RequestsFeature/ViewModels/RequestsFailedViewModel.swift index 1f54896ac8714898c7ca8a7c52e3237fb08ec58e..5354509e3df44e0b63b05211338751535ae8c15b 100644 --- a/Sources/RequestsFeature/ViewModels/RequestsFailedViewModel.swift +++ b/Sources/RequestsFeature/ViewModels/RequestsFailedViewModel.swift @@ -5,7 +5,7 @@ import XXModels import Defaults import XXClient import CombineSchedulers -import DependencyInjection +import DI import XXMessengerClient final class RequestsFailedViewModel { diff --git a/Sources/RequestsFeature/ViewModels/RequestsReceivedViewModel.swift b/Sources/RequestsFeature/ViewModels/RequestsReceivedViewModel.swift index 64ec65957fa8965cbe4b78819baab058132f8ca6..466050340082d44c5bb768c3cd02e7011c6671ca 100644 --- a/Sources/RequestsFeature/ViewModels/RequestsReceivedViewModel.swift +++ b/Sources/RequestsFeature/ViewModels/RequestsReceivedViewModel.swift @@ -7,7 +7,7 @@ import XXClient import DrawerFeature import ReportingFeature import CombineSchedulers -import DependencyInjection +import DI import XXMessengerClient import struct XXModels.Group diff --git a/Sources/RequestsFeature/ViewModels/RequestsSentViewModel.swift b/Sources/RequestsFeature/ViewModels/RequestsSentViewModel.swift index 718b673fe6cb2b7b85fc40ee1a7792b251050b26..c527b0fbad997b09309e458ffe0df638b049bf65 100644 --- a/Sources/RequestsFeature/ViewModels/RequestsSentViewModel.swift +++ b/Sources/RequestsFeature/ViewModels/RequestsSentViewModel.swift @@ -7,7 +7,7 @@ import Defaults import XXClient import ReportingFeature import CombineSchedulers -import DependencyInjection +import DI import XXMessengerClient struct RequestSent: Hashable, Equatable { diff --git a/Sources/RestoreFeature/Controllers/RestoreController.swift b/Sources/RestoreFeature/Controllers/RestoreController.swift index d1a57aa2f85ff7be12b8573c4b1fc362117798a1..50d9f0e709d92e099b8ab07eccffac47c832efc4 100644 --- a/Sources/RestoreFeature/Controllers/RestoreController.swift +++ b/Sources/RestoreFeature/Controllers/RestoreController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class RestoreController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/RestoreFeature/Controllers/RestoreListController.swift b/Sources/RestoreFeature/Controllers/RestoreListController.swift index 84ebee37d75a0b3157884c8358bedbba7cd73f83..7cf566516e049ed6b141fbfc5be1ec1fa53e140a 100644 --- a/Sources/RestoreFeature/Controllers/RestoreListController.swift +++ b/Sources/RestoreFeature/Controllers/RestoreListController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class RestoreListController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/RestoreFeature/Controllers/RestoreSFTPController.swift b/Sources/RestoreFeature/Controllers/RestoreSFTPController.swift index 3486ea103f3efd157c7aac415ae7dc9560fb24ee..ea56e1d63f504466c6104e66af735e8778a91aa1 100644 --- a/Sources/RestoreFeature/Controllers/RestoreSFTPController.swift +++ b/Sources/RestoreFeature/Controllers/RestoreSFTPController.swift @@ -1,6 +1,6 @@ import UIKit import Combine -import DependencyInjection +import DI import ScrollViewController public final class RestoreSFTPController: UIViewController { diff --git a/Sources/RestoreFeature/Controllers/RestoreSuccessController.swift b/Sources/RestoreFeature/Controllers/RestoreSuccessController.swift index 83c70aa55f64b8d545166b1d3f1d598f02995130..f2c0aa2cc6f7ae1b77d8bb4759bf8d9091673e9d 100644 --- a/Sources/RestoreFeature/Controllers/RestoreSuccessController.swift +++ b/Sources/RestoreFeature/Controllers/RestoreSuccessController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI public final class RestoreSuccessController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/RestoreFeature/ViewModels/RestoreListViewModel.swift b/Sources/RestoreFeature/ViewModels/RestoreListViewModel.swift index 249ab05d20cc164ef5930f8767747e520ed6d219..0e30679443ab906f6ea0744e2360bc3c4a5f680a 100644 --- a/Sources/RestoreFeature/ViewModels/RestoreListViewModel.swift +++ b/Sources/RestoreFeature/ViewModels/RestoreListViewModel.swift @@ -3,7 +3,7 @@ import Shared import Combine import CloudFiles import CloudFilesSFTP -import DependencyInjection +import DI public struct RestorationDetails { var provider: CloudService diff --git a/Sources/RestoreFeature/ViewModels/RestoreSFTPViewModel.swift b/Sources/RestoreFeature/ViewModels/RestoreSFTPViewModel.swift index d7ffd3e5bfd3bbe701bc36e24e6eec14a6343840..7b5eeaa3e703b8fac56874f576b100818da96124 100644 --- a/Sources/RestoreFeature/ViewModels/RestoreSFTPViewModel.swift +++ b/Sources/RestoreFeature/ViewModels/RestoreSFTPViewModel.swift @@ -4,7 +4,7 @@ import Combine import Foundation import CloudFiles import CloudFilesSFTP -import DependencyInjection +import DI struct SFTPViewState { var host: String = "" diff --git a/Sources/RestoreFeature/ViewModels/RestoreViewModel.swift b/Sources/RestoreFeature/ViewModels/RestoreViewModel.swift index c3d2cbe2a8cacdc553e3c52bd3b208ac720d770f..8555ff7de15b53fa96671df6cb2347a7608d06a1 100644 --- a/Sources/RestoreFeature/ViewModels/RestoreViewModel.swift +++ b/Sources/RestoreFeature/ViewModels/RestoreViewModel.swift @@ -3,7 +3,7 @@ import Shared import Combine import Defaults import CloudFiles -import DependencyInjection +import DI import XXClient import XXModels diff --git a/Sources/ScanFeature/Controllers/ScanContainerController.swift b/Sources/ScanFeature/Controllers/ScanContainerController.swift index ab6dc5f929e583305b9f8e7377f2d4d8fa4835a9..b669014ef1e037c5896b2c7c5d3ff3b1beda429d 100644 --- a/Sources/ScanFeature/Controllers/ScanContainerController.swift +++ b/Sources/ScanFeature/Controllers/ScanContainerController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class ScanContainerController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ScanFeature/Controllers/ScanController.swift b/Sources/ScanFeature/Controllers/ScanController.swift index 8482be4d599b7e84cfc8764d56c57fc4f1f88607..af705b251c940da1d6c7a6da9e4b66704497a458 100644 --- a/Sources/ScanFeature/Controllers/ScanController.swift +++ b/Sources/ScanFeature/Controllers/ScanController.swift @@ -4,7 +4,7 @@ import Combine import Permissions import XXNavigation import CombineSchedulers -import DependencyInjection +import DI final class ScanController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/ScanFeature/ViewModels/ScanDisplayViewModel.swift b/Sources/ScanFeature/ViewModels/ScanDisplayViewModel.swift index d67716bc57d7d03ad09ce2381da75ce3ba33567d..17b985d80312b589d31f7640682fb00fa052aeef 100644 --- a/Sources/ScanFeature/ViewModels/ScanDisplayViewModel.swift +++ b/Sources/ScanFeature/ViewModels/ScanDisplayViewModel.swift @@ -4,7 +4,7 @@ import Combine import Defaults import Countries import XXClient -import DependencyInjection +import DI import XXMessengerClient struct ScanDisplayViewState: Equatable { diff --git a/Sources/ScanFeature/ViewModels/ScanViewModel.swift b/Sources/ScanFeature/ViewModels/ScanViewModel.swift index c46965cad50ae1f075941636a60db4e22dca6f0f..1e4a79a99a43c192211aaf4a77d14ce889d6c9e2 100644 --- a/Sources/ScanFeature/ViewModels/ScanViewModel.swift +++ b/Sources/ScanFeature/ViewModels/ScanViewModel.swift @@ -4,7 +4,7 @@ import XXModels import XXClient import Foundation import ReportingFeature -import DependencyInjection +import DI enum ScanStatus: Equatable { case reading diff --git a/Sources/SearchFeature/Controllers/SearchContainerController.swift b/Sources/SearchFeature/Controllers/SearchContainerController.swift index 6e81b0dfc7bafc4bde8ef647c79a6ec4bd829b46..db43b6201ef174966fe969a13d46562aed8e750b 100644 --- a/Sources/SearchFeature/Controllers/SearchContainerController.swift +++ b/Sources/SearchFeature/Controllers/SearchContainerController.swift @@ -4,7 +4,7 @@ import Combine import XXModels import XXNavigation import DrawerFeature -import DependencyInjection +import DI public final class SearchContainerController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/SearchFeature/Controllers/SearchLeftController.swift b/Sources/SearchFeature/Controllers/SearchLeftController.swift index 3db6a1dc74fed08a9856943d2506dd6a54a40195..106c328fd2466b2d4805b39a32c239e77878c857 100644 --- a/Sources/SearchFeature/Controllers/SearchLeftController.swift +++ b/Sources/SearchFeature/Controllers/SearchLeftController.swift @@ -6,7 +6,7 @@ import Defaults import Countries import XXNavigation import DrawerFeature -import DependencyInjection +import DI final class SearchLeftController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/SearchFeature/Controllers/SearchRightController.swift b/Sources/SearchFeature/Controllers/SearchRightController.swift index cbd9789826b16d026e9111d0572a66511d99c625..fb7283c56bc0b2b670eb6f6e68721d3b841fa7c3 100644 --- a/Sources/SearchFeature/Controllers/SearchRightController.swift +++ b/Sources/SearchFeature/Controllers/SearchRightController.swift @@ -1,7 +1,7 @@ import UIKit import Combine import XXNavigation -import DependencyInjection +import DI final class SearchRightController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/SearchFeature/ViewModels/SearchContainerViewModel.swift b/Sources/SearchFeature/ViewModels/SearchContainerViewModel.swift index 011442d5025d3df89d5b23dd2e9aabe015b0ea3f..7e5767a3a7180b1b554308c92067d0935a8bcb7b 100644 --- a/Sources/SearchFeature/ViewModels/SearchContainerViewModel.swift +++ b/Sources/SearchFeature/ViewModels/SearchContainerViewModel.swift @@ -3,7 +3,7 @@ import Combine import Defaults import XXClient import PushFeature -import DependencyInjection +import DI final class SearchContainerViewModel { @Dependency var pushHandler: PushHandling diff --git a/Sources/SearchFeature/ViewModels/SearchLeftViewModel.swift b/Sources/SearchFeature/ViewModels/SearchLeftViewModel.swift index 93fe554a846e084811fbc9f4474821037c7ed0be..3ade6d3f5c1ece4aaa581ab61da99c9d8373f902 100644 --- a/Sources/SearchFeature/ViewModels/SearchLeftViewModel.swift +++ b/Sources/SearchFeature/ViewModels/SearchLeftViewModel.swift @@ -11,7 +11,7 @@ import NetworkMonitor import ReportingFeature import CombineSchedulers import XXMessengerClient -import DependencyInjection +import DI typealias SearchSnapshot = NSDiffableDataSourceSnapshot<SearchSection, SearchItem> diff --git a/Sources/SearchFeature/ViewModels/SearchRightViewModel.swift b/Sources/SearchFeature/ViewModels/SearchRightViewModel.swift index d4361d500d2894c05dd73c7ea5259eaa6ea12179..46d54a4603a40cb3be49785eb62b691b947473f2 100644 --- a/Sources/SearchFeature/ViewModels/SearchRightViewModel.swift +++ b/Sources/SearchFeature/ViewModels/SearchRightViewModel.swift @@ -7,7 +7,7 @@ import Foundation import Permissions import ReportingFeature import XXMessengerClient -import DependencyInjection +import DI enum ScanningStatus: Equatable { case reading diff --git a/Sources/SettingsFeature/Controllers/AccountDeleteController.swift b/Sources/SettingsFeature/Controllers/AccountDeleteController.swift index e46450c207851cf223dae475cd409e865063a526..b695ec0833bcb149fcaa6d6facc01ff881503529 100644 --- a/Sources/SettingsFeature/Controllers/AccountDeleteController.swift +++ b/Sources/SettingsFeature/Controllers/AccountDeleteController.swift @@ -5,7 +5,7 @@ import Defaults import XXNavigation import DrawerFeature import ScrollViewController -import DependencyInjection +import DI public final class AccountDeleteController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/SettingsFeature/Controllers/SettingsAdvancedController.swift b/Sources/SettingsFeature/Controllers/SettingsAdvancedController.swift index a0e33f9b9bb4980f4e63f95c68c47c1bfc64dd7d..5399ca6a94094077d47f96006d96001d72a883f8 100644 --- a/Sources/SettingsFeature/Controllers/SettingsAdvancedController.swift +++ b/Sources/SettingsFeature/Controllers/SettingsAdvancedController.swift @@ -2,7 +2,7 @@ import UIKit import Shared import Combine import XXNavigation -import DependencyInjection +import DI public final class SettingsAdvancedController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/SettingsFeature/Controllers/SettingsController.swift b/Sources/SettingsFeature/Controllers/SettingsController.swift index 08dce114d3a2c0aad67b07a6a2da30846209bc86..6dd584cf2167cf5b9090b0e9c34400bfaeee381c 100644 --- a/Sources/SettingsFeature/Controllers/SettingsController.swift +++ b/Sources/SettingsFeature/Controllers/SettingsController.swift @@ -3,7 +3,7 @@ import Shared import Combine import XXNavigation import DrawerFeature -import DependencyInjection +import DI import ScrollViewController public final class SettingsController: UIViewController { diff --git a/Sources/SettingsFeature/ViewModels/AccountDeleteViewModel.swift b/Sources/SettingsFeature/ViewModels/AccountDeleteViewModel.swift index 55f48f6c2d8f2aeb612f2a14a0a82fff49cdc5c9..08d8d5749bec6f760c604cb78543b0db248c3479 100644 --- a/Sources/SettingsFeature/ViewModels/AccountDeleteViewModel.swift +++ b/Sources/SettingsFeature/ViewModels/AccountDeleteViewModel.swift @@ -7,7 +7,7 @@ import XXModels import XXClient import Foundation import XXMessengerClient -import DependencyInjection +import DI final class AccountDeleteViewModel { @Dependency var database: Database diff --git a/Sources/SettingsFeature/ViewModels/SettingsAdvancedViewModel.swift b/Sources/SettingsFeature/ViewModels/SettingsAdvancedViewModel.swift index 42814774096428e76ca0d38fdff1cec951aa757e..09985d189d79a3ded8e34a9506e07418833ee6cc 100644 --- a/Sources/SettingsFeature/ViewModels/SettingsAdvancedViewModel.swift +++ b/Sources/SettingsFeature/ViewModels/SettingsAdvancedViewModel.swift @@ -4,7 +4,7 @@ import Defaults import Foundation import CrashReporting import ReportingFeature -import DependencyInjection +import DI struct AdvancedViewState: Equatable { var isRecordingLogs = false diff --git a/Sources/SettingsFeature/ViewModels/SettingsViewModel.swift b/Sources/SettingsFeature/ViewModels/SettingsViewModel.swift index 63d3713b68c07fe9cf968581314e2767bc850714..48b97ddc0c5136d087fb67d2179e78a05105478e 100644 --- a/Sources/SettingsFeature/ViewModels/SettingsViewModel.swift +++ b/Sources/SettingsFeature/ViewModels/SettingsViewModel.swift @@ -8,7 +8,7 @@ import XXClient import XXMessengerClient import UserNotifications import CombineSchedulers -import DependencyInjection +import DI struct SettingsViewState: Equatable { var isHideActiveApps: Bool = false diff --git a/Sources/Shared/Controllers/RootViewController.swift b/Sources/Shared/Controllers/RootViewController.swift index ee367e2eff71b7bae66484ead5b1a40f7646cf25..a0ca01e577f3a811e501414f0cf6ce3d21c169f6 100644 --- a/Sources/Shared/Controllers/RootViewController.swift +++ b/Sources/Shared/Controllers/RootViewController.swift @@ -1,6 +1,6 @@ import UIKit import Combine -import DependencyInjection +import DI public final class RootViewController: UIViewController { @Dependency var barStylist: StatusBarStylist diff --git a/Sources/TermsFeature/TermsConditionsController.swift b/Sources/TermsFeature/TermsConditionsController.swift index 8d7229337b60ffdb74cf3821f301903d956e8666..95c434329323cf80e2d1f03a4942f4bb45b38ee0 100644 --- a/Sources/TermsFeature/TermsConditionsController.swift +++ b/Sources/TermsFeature/TermsConditionsController.swift @@ -4,7 +4,7 @@ import Shared import Combine import Defaults import XXNavigation -import DependencyInjection +import DI public final class TermsConditionsController: UIViewController { @Dependency var navigator: Navigator diff --git a/Sources/XXNavigation/Chat/PresentChat.swift b/Sources/XXNavigation/Chat/PresentChat.swift index 52593d967d8d384263603aecada75a9ee8c44131..06fa031d7f2d2f0d1ff6c96412ea956575e5fdb0 100644 --- a/Sources/XXNavigation/Chat/PresentChat.swift +++ b/Sources/XXNavigation/Chat/PresentChat.swift @@ -1,7 +1,7 @@ import UIKit import XXModels import Navigation -import DependencyInjection +import DI public struct PresentChat: Navigation.Action { public var contact: Contact diff --git a/Sources/XXNavigation/Chat/PresentChatList.swift b/Sources/XXNavigation/Chat/PresentChatList.swift index 8fc96301d15a6d32483bb0171da7ab959f623e48..14059d986b5f947099f5404455cd72f6ff2f6f99 100644 --- a/Sources/XXNavigation/Chat/PresentChatList.swift +++ b/Sources/XXNavigation/Chat/PresentChatList.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentChatList: Navigation.Action { public var animated: Bool = true diff --git a/Sources/XXNavigation/Chat/PresentGroupChat.swift b/Sources/XXNavigation/Chat/PresentGroupChat.swift index 7770475e019de1a50fdee060a09b9d8ce3f3642f..a4e74db1edc342a655671662f65a0f111ed9ae9d 100644 --- a/Sources/XXNavigation/Chat/PresentGroupChat.swift +++ b/Sources/XXNavigation/Chat/PresentGroupChat.swift @@ -1,7 +1,7 @@ import UIKit import XXModels import Navigation -import DependencyInjection +import DI public struct PresentGroupChat: Navigation.Action { public var model: GroupInfo diff --git a/Sources/XXNavigation/Chat/PresentNewGroup.swift b/Sources/XXNavigation/Chat/PresentNewGroup.swift index e04adf504fb79c8c7119d6e117ce690efe477bad..d827f553fc4513a6e52a8e0f9f241191afd20e1d 100644 --- a/Sources/XXNavigation/Chat/PresentNewGroup.swift +++ b/Sources/XXNavigation/Chat/PresentNewGroup.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentNewGroup: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Contact/PresentContact.swift b/Sources/XXNavigation/Contact/PresentContact.swift index 4addb00c45b3a83668214c3cfe98678d8adae4ee..b662609b8a0a4f7be1863089bc1dc12d9a9a9d13 100644 --- a/Sources/XXNavigation/Contact/PresentContact.swift +++ b/Sources/XXNavigation/Contact/PresentContact.swift @@ -1,7 +1,7 @@ import UIKit import XXModels import Navigation -import DependencyInjection +import DI public struct PresentContact: Navigation.Action { public var contact: Contact diff --git a/Sources/XXNavigation/Contact/PresentContactList.swift b/Sources/XXNavigation/Contact/PresentContactList.swift index f6f328f4f112a4cbb7eeb83c343bec6ce75b9235..4758d801dd878be0b8c0e5ebea29adf6fc271983 100644 --- a/Sources/XXNavigation/Contact/PresentContactList.swift +++ b/Sources/XXNavigation/Contact/PresentContactList.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentContactList: Navigation.Action { public var animated: Bool = true diff --git a/Sources/XXNavigation/Onboarding/PresentOnboardingCode.swift b/Sources/XXNavigation/Onboarding/PresentOnboardingCode.swift index be83f0d1ca3df6fe2ef25d8163968ab30be6491f..1853c774797f55342e59c339e21034f82a45fe56 100644 --- a/Sources/XXNavigation/Onboarding/PresentOnboardingCode.swift +++ b/Sources/XXNavigation/Onboarding/PresentOnboardingCode.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentOnboardingCode: Navigation.Action { public var isEmail: Bool diff --git a/Sources/XXNavigation/Onboarding/PresentOnboardingEmail.swift b/Sources/XXNavigation/Onboarding/PresentOnboardingEmail.swift index 4d8905ad69e2558837b07f4fe6846939ede3a482..c178659482ce24fd6ae0ab578a9d42383748faf3 100644 --- a/Sources/XXNavigation/Onboarding/PresentOnboardingEmail.swift +++ b/Sources/XXNavigation/Onboarding/PresentOnboardingEmail.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentOnboardingEmail: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Onboarding/PresentOnboardingPhone.swift b/Sources/XXNavigation/Onboarding/PresentOnboardingPhone.swift index e890add38eaafc9c4dcf9711dfd866f2204ea71f..95c6e95819076bc66921f85c304c88aece0d122a 100644 --- a/Sources/XXNavigation/Onboarding/PresentOnboardingPhone.swift +++ b/Sources/XXNavigation/Onboarding/PresentOnboardingPhone.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentOnboardingPhone: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Onboarding/PresentOnboardingStart.swift b/Sources/XXNavigation/Onboarding/PresentOnboardingStart.swift index c7dfbc31d05f6b9420f652ef5af43b2cb566f990..943b31d7974f0a65a2b52b0ccf517fbc9eb48cca 100644 --- a/Sources/XXNavigation/Onboarding/PresentOnboardingStart.swift +++ b/Sources/XXNavigation/Onboarding/PresentOnboardingStart.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentOnboardingStart: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Onboarding/PresentOnboardingUsername.swift b/Sources/XXNavigation/Onboarding/PresentOnboardingUsername.swift index 48fa7be535ea610b787e79c79187d613fa548870..91817a3f04b144a2eed87b0f73d4332d1d0c3f52 100644 --- a/Sources/XXNavigation/Onboarding/PresentOnboardingUsername.swift +++ b/Sources/XXNavigation/Onboarding/PresentOnboardingUsername.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentOnboardingUsername: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Onboarding/PresentOnboardingWelcome.swift b/Sources/XXNavigation/Onboarding/PresentOnboardingWelcome.swift index 7a55f0e60e8cd742e2f68f02eaa2ccbb36222ea3..64a0fdd7abcc606d2f29bfdbad86bdf2b78fba84 100644 --- a/Sources/XXNavigation/Onboarding/PresentOnboardingWelcome.swift +++ b/Sources/XXNavigation/Onboarding/PresentOnboardingWelcome.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentOnboardingWelcome: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Onboarding/PresentTermsAndConditions.swift b/Sources/XXNavigation/Onboarding/PresentTermsAndConditions.swift index a71b7f79c5e684168acfb26cbb7b09a3c5e89dfc..0ec1ae5c7c18d776df0d1ef7ab3a840c0600e30e 100644 --- a/Sources/XXNavigation/Onboarding/PresentTermsAndConditions.swift +++ b/Sources/XXNavigation/Onboarding/PresentTermsAndConditions.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentTermsAndConditions: Navigation.Action { public var popAllowed: Bool diff --git a/Sources/XXNavigation/PresentActivitySheet.swift b/Sources/XXNavigation/PresentActivitySheet.swift index c13c1faa5de1ba12b30971bc813d4763788d47f3..ae08e5957068177961922fe315826b7575d4848c 100644 --- a/Sources/XXNavigation/PresentActivitySheet.swift +++ b/Sources/XXNavigation/PresentActivitySheet.swift @@ -1,7 +1,7 @@ import UIKit import XXModels import Navigation -import DependencyInjection +import DI public struct PresentActivitySheet: Navigation.Action { public var items: [Any] diff --git a/Sources/XXNavigation/PresentCountryList.swift b/Sources/XXNavigation/PresentCountryList.swift index 2a8504ea9ff15e3b6ff190fb3efb3de0c1aa27fe..bd16214884660110a001fc40c0b2f2294ef14c81 100644 --- a/Sources/XXNavigation/PresentCountryList.swift +++ b/Sources/XXNavigation/PresentCountryList.swift @@ -1,7 +1,7 @@ import UIKit import Shared import Navigation -import DependencyInjection +import DI public struct PresentCountryList: Navigation.Action { public var completion: ((Country) -> Void) diff --git a/Sources/XXNavigation/PresentDrawer.swift b/Sources/XXNavigation/PresentDrawer.swift index fe5812eb93eccdd45d079d737a4348d6b8004259..9d659610108c447da5bb02bd83e486518752c1b7 100644 --- a/Sources/XXNavigation/PresentDrawer.swift +++ b/Sources/XXNavigation/PresentDrawer.swift @@ -1,7 +1,7 @@ import UIKit import Navigation import DrawerFeature -import DependencyInjection +import DI public struct PresentDrawer: Navigation.Action { public var items: [DrawerItem] diff --git a/Sources/XXNavigation/PresentMenu.swift b/Sources/XXNavigation/PresentMenu.swift index 129766250c3e00a28a7c34e32cdd2d20c9506775..ab9a82ec503076a9ee82a04378375d23c48800b5 100644 --- a/Sources/XXNavigation/PresentMenu.swift +++ b/Sources/XXNavigation/PresentMenu.swift @@ -1,7 +1,7 @@ import UIKit import Shared import Navigation -import DependencyInjection +import DI public struct PresentMenu: Navigation.Action { public var currentItem: MenuItem diff --git a/Sources/XXNavigation/PresentPermissionRequest.swift b/Sources/XXNavigation/PresentPermissionRequest.swift index f8d5e5e1d9140441a60fbb56d1dd83c79bd89136..d126d59652850fe455a8841bef574b5941101c7c 100644 --- a/Sources/XXNavigation/PresentPermissionRequest.swift +++ b/Sources/XXNavigation/PresentPermissionRequest.swift @@ -1,7 +1,7 @@ import UIKit import Shared import Navigation -import DependencyInjection +import DI public struct PresentPermissionRequest: Navigation.Action { public var type: PermissionType diff --git a/Sources/XXNavigation/PresentPhotoLibrary.swift b/Sources/XXNavigation/PresentPhotoLibrary.swift index d0170d0adb561c33c4fc7b2da742d4bcd1bee08c..8174fe2128f7d87a3c4ec2dfda49ffbbe4aab411 100644 --- a/Sources/XXNavigation/PresentPhotoLibrary.swift +++ b/Sources/XXNavigation/PresentPhotoLibrary.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentPhotoLibrary: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/PresentScan.swift b/Sources/XXNavigation/PresentScan.swift index def9482eca5a8f289357da8c60e2dd406347382a..87cec305f4583f1aa22d572967711a2b77d93099 100644 --- a/Sources/XXNavigation/PresentScan.swift +++ b/Sources/XXNavigation/PresentScan.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentScan: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/PresentSearch.swift b/Sources/XXNavigation/PresentSearch.swift index d62a767b1691e25ee912e9c7144ad8442971f4f8..6f5d2aba4de1595c1ceaf7a041788d296f0cd25d 100644 --- a/Sources/XXNavigation/PresentSearch.swift +++ b/Sources/XXNavigation/PresentSearch.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentSearch: Navigation.Action { public var searching: String? diff --git a/Sources/XXNavigation/Profile/PresentProfile.swift b/Sources/XXNavigation/Profile/PresentProfile.swift index 4eb70e97538ff6191ae960ac15c510d8452033fe..6dfdd65045fcc00af9b35dfad9517665e322d540 100644 --- a/Sources/XXNavigation/Profile/PresentProfile.swift +++ b/Sources/XXNavigation/Profile/PresentProfile.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentProfile: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Profile/PresentProfileCode.swift b/Sources/XXNavigation/Profile/PresentProfileCode.swift index 887c88b01799ef9096ad1baba3cc49a3218089a8..3c6a9134ed9afec3f22afeaeedbf719979bd9d82 100644 --- a/Sources/XXNavigation/Profile/PresentProfileCode.swift +++ b/Sources/XXNavigation/Profile/PresentProfileCode.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentProfileCode: Navigation.Action { public var isEmail: Bool diff --git a/Sources/XXNavigation/Profile/PresentProfileEmail.swift b/Sources/XXNavigation/Profile/PresentProfileEmail.swift index 0a150af86056c094f62295b08cc3f6d19bd2049a..c484403853f79e13e41eae29e9551029ee320fc1 100644 --- a/Sources/XXNavigation/Profile/PresentProfileEmail.swift +++ b/Sources/XXNavigation/Profile/PresentProfileEmail.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentProfileEmail: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Profile/PresentProfilePhone.swift b/Sources/XXNavigation/Profile/PresentProfilePhone.swift index 37966c9d959f96ace1e880f49b94edf25b7dea2b..37235bb9337d15aa2f23ee2d6959f35ad7235e42 100644 --- a/Sources/XXNavigation/Profile/PresentProfilePhone.swift +++ b/Sources/XXNavigation/Profile/PresentProfilePhone.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentProfilePhone: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/RestoreAndBackup/PresentRequests.swift b/Sources/XXNavigation/RestoreAndBackup/PresentRequests.swift index 812da622318e2912155a0c4710cc4d9379356321..a72fbe3375531194608083a6347a7b6652dfa871 100644 --- a/Sources/XXNavigation/RestoreAndBackup/PresentRequests.swift +++ b/Sources/XXNavigation/RestoreAndBackup/PresentRequests.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentRequests: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/RestoreAndBackup/PresentRestoreList.swift b/Sources/XXNavigation/RestoreAndBackup/PresentRestoreList.swift index 23b40ab0c8418b576b159119fe4cf420b9055a96..e1121be7997e3ebff12affe455340d8b33d5d758 100644 --- a/Sources/XXNavigation/RestoreAndBackup/PresentRestoreList.swift +++ b/Sources/XXNavigation/RestoreAndBackup/PresentRestoreList.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentRestoreList: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Settings/PresentSettings.swift b/Sources/XXNavigation/Settings/PresentSettings.swift index 932a18686f3b5e0781d43c0ecedebac18228f21d..387bc7893dd3f88846695fa49a39ac277d2b4f8b 100644 --- a/Sources/XXNavigation/Settings/PresentSettings.swift +++ b/Sources/XXNavigation/Settings/PresentSettings.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentSettings: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Settings/PresentSettingsAccountDelete.swift b/Sources/XXNavigation/Settings/PresentSettingsAccountDelete.swift index 74119fe226140a447f5b574e21de1e0682a96a5f..76b73f1e703b7c5e5241fa495e932d2f167e1978 100644 --- a/Sources/XXNavigation/Settings/PresentSettingsAccountDelete.swift +++ b/Sources/XXNavigation/Settings/PresentSettingsAccountDelete.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentSettingsAccountDelete: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Settings/PresentSettingsAdvanced.swift b/Sources/XXNavigation/Settings/PresentSettingsAdvanced.swift index fd258eba0acd68622cb438dc5842645abf7c80b1..0c0085150832dab151895623adc1bca8ddd00759 100644 --- a/Sources/XXNavigation/Settings/PresentSettingsAdvanced.swift +++ b/Sources/XXNavigation/Settings/PresentSettingsAdvanced.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentSettingsAdvanced: Navigation.Action { public var animated: Bool diff --git a/Sources/XXNavigation/Settings/PresentSettingsBackup.swift b/Sources/XXNavigation/Settings/PresentSettingsBackup.swift index 62a6e243e5a6936954b53925a0e1ed144d9eaf09..85856658525b7ebc22c2e7518ce0807fe800f9e5 100644 --- a/Sources/XXNavigation/Settings/PresentSettingsBackup.swift +++ b/Sources/XXNavigation/Settings/PresentSettingsBackup.swift @@ -1,6 +1,6 @@ import UIKit import Navigation -import DependencyInjection +import DI public struct PresentSettingsBackup: Navigation.Action { public var animated: Bool diff --git a/Tests/DefaultsTests/KeyObjectTests.swift b/Tests/DefaultsTests/KeyObjectTests.swift index ffa4794fa650c140e883a19ab7540ae7a8d78192..1b3bf38068dff01cf9ed1468d9fca159bd5b1d50 100644 --- a/Tests/DefaultsTests/KeyObjectTests.swift +++ b/Tests/DefaultsTests/KeyObjectTests.swift @@ -1,5 +1,5 @@ import XCTest -import DependencyInjection +import DI @testable import Defaults diff --git a/Tests/DependencyInjectionTests/ContainerTests.swift b/Tests/DependencyInjectionTests/ContainerTests.swift deleted file mode 100644 index b9de7d2eb871fd39d8a3cc948b0ec9a5e2037dec..0000000000000000000000000000000000000000 --- a/Tests/DependencyInjectionTests/ContainerTests.swift +++ /dev/null @@ -1,33 +0,0 @@ -import XCTest - -@testable import DependencyInjection - -final class ContainerTests: XCTestCase { - func testRegisterAndResolveDependency() { - let container = Container() - let dependency = TestDependency() - container.register(dependency as TestDependencyProtocol) - let resolvedDependency: TestDependencyProtocol = try! container.resolve() - - XCTAssert(resolvedDependency === dependency) - } - - func testResolveUnregisterredDependency() { - let container = Container() - do { - let _: TestDependencyProtocol = try container.resolve() - XCTFail("expected to throw an error") - } catch { - XCTAssertEqual( - error as? UnregisteredDependencyError, - UnregisteredDependencyError( - type: String(describing: TestDependencyProtocol.self) - ) - ) - } - } -} - -private protocol TestDependencyProtocol: AnyObject {} - -private class TestDependency: TestDependencyProtocol {} diff --git a/Tests/DependencyInjectionTests/DependencyPropertyWrapperTests.swift b/Tests/DependencyInjectionTests/DependencyPropertyWrapperTests.swift deleted file mode 100644 index 97bf45ef52c1c539b80dbb83292b4c2baa13077c..0000000000000000000000000000000000000000 --- a/Tests/DependencyInjectionTests/DependencyPropertyWrapperTests.swift +++ /dev/null @@ -1,20 +0,0 @@ -import XCTest -@testable import DependencyInjection - -final class DependencyPropertyWrapperTests: XCTestCase { - func testPropertyGetter() { - struct Context { - static let container = Container() - @Dependency(container: container) var property: TestDependencyProtocol - } - - let dependency = TestDependency() - Context.container.register(dependency as TestDependencyProtocol) - - XCTAssert(Context().property === dependency) - } -} - -private protocol TestDependencyProtocol: AnyObject {} - -private class TestDependency: TestDependencyProtocol {} diff --git a/Tests/ThemeTests/ThemeTests.swift b/Tests/ThemeTests/ThemeTests.swift index 44f88ab56ce69345bf3c5c049a6e7c5137f6f16d..3cdf37a0702a379dd33f9797d189423b0252df14 100644 --- a/Tests/ThemeTests/ThemeTests.swift +++ b/Tests/ThemeTests/ThemeTests.swift @@ -2,7 +2,7 @@ import Quick import Nimble import Defaults import Foundation -import DependencyInjection +import DI @testable import Theme diff --git a/client-ios.xcworkspace/xcshareddata/swiftpm/Package.resolved b/client-ios.xcworkspace/xcshareddata/swiftpm/Package.resolved index 6006a39d34ebab1c7bbe76132c3f428df725ee71..b17678ed3a53e91d5b80e50213076ca1d9c97623 100644 --- a/client-ios.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/client-ios.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -386,6 +386,15 @@ "revision" : "16e6409ee82e1b81390bdffbf217b9c08ab32784", "version" : "0.5.0" } + }, + { + "identity" : "xxm-di", + "kind" : "remoteSourceControl", + "location" : "https://git.xx.network/elixxir/xxm-di.git", + "state" : { + "revision" : "43b1e12c32109f1753fcc62e5b0b21e479ee27e3", + "version" : "1.0.0" + } } ], "version" : 2