├── .github └── FUNDING.yml ├── .gitignore ├── LICENSE ├── MVVMC.xcodeproj ├── project.pbxproj └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ └── IDEWorkspaceChecks.plist ├── MVVMC.xcworkspace ├── contents.xcworkspacedata └── xcshareddata │ └── IDEWorkspaceChecks.plist ├── MVVMC ├── App │ ├── AppCoordinator.swift │ ├── Base │ │ ├── BaseCoordinator.swift │ │ ├── BaseNavigationController.swift │ │ └── ViewControllerWithSideMenu.swift │ ├── Dashboard │ │ ├── Dashboard.storyboard │ │ ├── DashboardCoordinator.swift │ │ ├── DashboardViewController.swift │ │ └── DashboardViewModel.swift │ ├── DrawerMenu │ │ ├── Drawer.storyboard │ │ ├── DrawerMenuCoordinator.swift │ │ ├── DrawerMenuViewController.swift │ │ └── DrawerMenuViewModel.swift │ ├── LaunchScreen.storyboard │ ├── OnBoarding │ │ ├── OnBoarding.storyboard │ │ ├── OnBoardingCoordinator.swift │ │ ├── SetNameViewController.swift │ │ ├── SetNameViewModel.swift │ │ ├── SetOptionsViewController.swift │ │ └── SetOptionsViewModel.swift │ ├── Settings │ │ ├── Settings.storyboard │ │ ├── SettingsCoordinator.swift │ │ ├── SettingsViewController.swift │ │ └── SettingsViewModel.swift │ └── SignIn │ │ ├── SignIn.storyboard │ │ ├── SignInCoordinator.swift │ │ ├── SignInViewController.swift │ │ └── SignInViewModel.swift ├── AppDelegate.swift ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ ├── Contents.json │ ├── avatar.imageset │ │ ├── Contents.json │ │ ├── avatar-1.png │ │ ├── avatar-2.png │ │ └── avatar.png │ ├── menu.imageset │ │ ├── Contents.json │ │ ├── baseline_menu_black_24pt_1x.png │ │ ├── baseline_menu_black_24pt_2x.png │ │ └── baseline_menu_black_24pt_3x.png │ ├── swift_logo.imageset │ │ ├── Contents.json │ │ ├── swift_logo-1.png │ │ ├── swift_logo-2.png │ │ └── swift_logo.png │ └── tools.imageset │ │ ├── Contents.json │ │ └── tools.png ├── Constants.swift ├── Controls │ ├── ButtonWithProgress.swift │ ├── FancyButton.swift │ ├── LocalizedButton.swift │ ├── LocalizedLabel.swift │ └── LocalizedTextField.swift ├── DependencyInjection │ ├── Container+Coordinators.swift │ ├── Container+RegisterDependencies.swift │ ├── Container+Services.swift │ └── Container+ViewModels.swift ├── Extensions │ ├── ApiResponse+Print.swift │ ├── Data+Json.swift │ ├── Encodable+Json.swift │ ├── String+Localization.swift │ ├── String+Trim.swift │ └── UIViewControllerExtensions.swift ├── Info.plist ├── Models │ ├── AlertMessage.swift │ ├── AppStoryboard.swift │ ├── Credentials.swift │ ├── DrawerMenuScreen.swift │ ├── OnBoardingData.swift │ ├── Session.swift │ ├── SettingKey.swift │ └── Token.swift ├── Networking │ ├── ApiEndpoints │ │ ├── GeneralEndpoints.swift │ │ ├── SessionEndpoints.swift │ │ └── TasksEndpoints.swift │ ├── BackendRestClient.swift │ ├── DTO │ │ ├── Request │ │ │ └── SignInRequest.swift │ │ └── Response │ │ │ ├── ErrorResponse.swift │ │ │ ├── MeResponse.swift │ │ │ ├── SignInResponse.swift │ │ │ └── TranslationsResponse.swift │ └── Models │ │ ├── ApiError.swift │ │ ├── ApiRequest.swift │ │ ├── ApiResponse.swift │ │ ├── HttpMethod.swift │ │ └── HttpStatusCode.swift ├── Protocols │ ├── DataManager.swift │ ├── HttpClient.swift │ └── Storyboarded.swift ├── Services │ ├── AlertDispatcher.swift │ ├── SessionService.swift │ ├── TranslationsService.swift │ └── UserDataManager.swift ├── Utils │ ├── FileUtils.swift │ ├── Json.swift │ ├── LocalizationUtils.swift │ ├── Logger.swift │ └── ViewControllerUtils.swift └── translations.json ├── MVVMCTests ├── Info.plist └── MVVMCTests.swift ├── MVVMCUITests ├── Info.plist └── MVVMCUITests.swift ├── Mocks └── HttpClientMock.swift ├── Podfile ├── Podfile.lock ├── README.md ├── coordinators.png └── screenshots.png /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: wojciech-kulik 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/LICENSE -------------------------------------------------------------------------------- /MVVMC.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /MVVMC.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /MVVMC.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /MVVMC.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /MVVMC.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /MVVMC/App/AppCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/AppCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/Base/BaseCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Base/BaseCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/Base/BaseNavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Base/BaseNavigationController.swift -------------------------------------------------------------------------------- /MVVMC/App/Base/ViewControllerWithSideMenu.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Base/ViewControllerWithSideMenu.swift -------------------------------------------------------------------------------- /MVVMC/App/Dashboard/Dashboard.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Dashboard/Dashboard.storyboard -------------------------------------------------------------------------------- /MVVMC/App/Dashboard/DashboardCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Dashboard/DashboardCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/Dashboard/DashboardViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Dashboard/DashboardViewController.swift -------------------------------------------------------------------------------- /MVVMC/App/Dashboard/DashboardViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Dashboard/DashboardViewModel.swift -------------------------------------------------------------------------------- /MVVMC/App/DrawerMenu/Drawer.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/DrawerMenu/Drawer.storyboard -------------------------------------------------------------------------------- /MVVMC/App/DrawerMenu/DrawerMenuCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/DrawerMenu/DrawerMenuCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/DrawerMenu/DrawerMenuViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/DrawerMenu/DrawerMenuViewController.swift -------------------------------------------------------------------------------- /MVVMC/App/DrawerMenu/DrawerMenuViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/DrawerMenu/DrawerMenuViewModel.swift -------------------------------------------------------------------------------- /MVVMC/App/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/LaunchScreen.storyboard -------------------------------------------------------------------------------- /MVVMC/App/OnBoarding/OnBoarding.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/OnBoarding/OnBoarding.storyboard -------------------------------------------------------------------------------- /MVVMC/App/OnBoarding/OnBoardingCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/OnBoarding/OnBoardingCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/OnBoarding/SetNameViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/OnBoarding/SetNameViewController.swift -------------------------------------------------------------------------------- /MVVMC/App/OnBoarding/SetNameViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/OnBoarding/SetNameViewModel.swift -------------------------------------------------------------------------------- /MVVMC/App/OnBoarding/SetOptionsViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/OnBoarding/SetOptionsViewController.swift -------------------------------------------------------------------------------- /MVVMC/App/OnBoarding/SetOptionsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/OnBoarding/SetOptionsViewModel.swift -------------------------------------------------------------------------------- /MVVMC/App/Settings/Settings.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Settings/Settings.storyboard -------------------------------------------------------------------------------- /MVVMC/App/Settings/SettingsCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Settings/SettingsCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/Settings/SettingsViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Settings/SettingsViewController.swift -------------------------------------------------------------------------------- /MVVMC/App/Settings/SettingsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/Settings/SettingsViewModel.swift -------------------------------------------------------------------------------- /MVVMC/App/SignIn/SignIn.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/SignIn/SignIn.storyboard -------------------------------------------------------------------------------- /MVVMC/App/SignIn/SignInCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/SignIn/SignInCoordinator.swift -------------------------------------------------------------------------------- /MVVMC/App/SignIn/SignInViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/SignIn/SignInViewController.swift -------------------------------------------------------------------------------- /MVVMC/App/SignIn/SignInViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/App/SignIn/SignInViewModel.swift -------------------------------------------------------------------------------- /MVVMC/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/AppDelegate.swift -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/avatar.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/avatar.imageset/Contents.json -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/avatar.imageset/avatar-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/avatar.imageset/avatar-1.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/avatar.imageset/avatar-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/avatar.imageset/avatar-2.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/avatar.imageset/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/avatar.imageset/avatar.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/menu.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/menu.imageset/Contents.json -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/menu.imageset/baseline_menu_black_24pt_1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/menu.imageset/baseline_menu_black_24pt_1x.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/menu.imageset/baseline_menu_black_24pt_2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/menu.imageset/baseline_menu_black_24pt_2x.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/menu.imageset/baseline_menu_black_24pt_3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/menu.imageset/baseline_menu_black_24pt_3x.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/swift_logo.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/swift_logo.imageset/Contents.json -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/swift_logo.imageset/swift_logo-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/swift_logo.imageset/swift_logo-1.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/swift_logo.imageset/swift_logo-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/swift_logo.imageset/swift_logo-2.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/swift_logo.imageset/swift_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/swift_logo.imageset/swift_logo.png -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/tools.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/tools.imageset/Contents.json -------------------------------------------------------------------------------- /MVVMC/Assets.xcassets/tools.imageset/tools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Assets.xcassets/tools.imageset/tools.png -------------------------------------------------------------------------------- /MVVMC/Constants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Constants.swift -------------------------------------------------------------------------------- /MVVMC/Controls/ButtonWithProgress.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Controls/ButtonWithProgress.swift -------------------------------------------------------------------------------- /MVVMC/Controls/FancyButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Controls/FancyButton.swift -------------------------------------------------------------------------------- /MVVMC/Controls/LocalizedButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Controls/LocalizedButton.swift -------------------------------------------------------------------------------- /MVVMC/Controls/LocalizedLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Controls/LocalizedLabel.swift -------------------------------------------------------------------------------- /MVVMC/Controls/LocalizedTextField.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Controls/LocalizedTextField.swift -------------------------------------------------------------------------------- /MVVMC/DependencyInjection/Container+Coordinators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/DependencyInjection/Container+Coordinators.swift -------------------------------------------------------------------------------- /MVVMC/DependencyInjection/Container+RegisterDependencies.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/DependencyInjection/Container+RegisterDependencies.swift -------------------------------------------------------------------------------- /MVVMC/DependencyInjection/Container+Services.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/DependencyInjection/Container+Services.swift -------------------------------------------------------------------------------- /MVVMC/DependencyInjection/Container+ViewModels.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/DependencyInjection/Container+ViewModels.swift -------------------------------------------------------------------------------- /MVVMC/Extensions/ApiResponse+Print.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Extensions/ApiResponse+Print.swift -------------------------------------------------------------------------------- /MVVMC/Extensions/Data+Json.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Extensions/Data+Json.swift -------------------------------------------------------------------------------- /MVVMC/Extensions/Encodable+Json.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Extensions/Encodable+Json.swift -------------------------------------------------------------------------------- /MVVMC/Extensions/String+Localization.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Extensions/String+Localization.swift -------------------------------------------------------------------------------- /MVVMC/Extensions/String+Trim.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Extensions/String+Trim.swift -------------------------------------------------------------------------------- /MVVMC/Extensions/UIViewControllerExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Extensions/UIViewControllerExtensions.swift -------------------------------------------------------------------------------- /MVVMC/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Info.plist -------------------------------------------------------------------------------- /MVVMC/Models/AlertMessage.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/AlertMessage.swift -------------------------------------------------------------------------------- /MVVMC/Models/AppStoryboard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/AppStoryboard.swift -------------------------------------------------------------------------------- /MVVMC/Models/Credentials.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/Credentials.swift -------------------------------------------------------------------------------- /MVVMC/Models/DrawerMenuScreen.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/DrawerMenuScreen.swift -------------------------------------------------------------------------------- /MVVMC/Models/OnBoardingData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/OnBoardingData.swift -------------------------------------------------------------------------------- /MVVMC/Models/Session.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/Session.swift -------------------------------------------------------------------------------- /MVVMC/Models/SettingKey.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/SettingKey.swift -------------------------------------------------------------------------------- /MVVMC/Models/Token.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Models/Token.swift -------------------------------------------------------------------------------- /MVVMC/Networking/ApiEndpoints/GeneralEndpoints.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/ApiEndpoints/GeneralEndpoints.swift -------------------------------------------------------------------------------- /MVVMC/Networking/ApiEndpoints/SessionEndpoints.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/ApiEndpoints/SessionEndpoints.swift -------------------------------------------------------------------------------- /MVVMC/Networking/ApiEndpoints/TasksEndpoints.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/ApiEndpoints/TasksEndpoints.swift -------------------------------------------------------------------------------- /MVVMC/Networking/BackendRestClient.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/BackendRestClient.swift -------------------------------------------------------------------------------- /MVVMC/Networking/DTO/Request/SignInRequest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/DTO/Request/SignInRequest.swift -------------------------------------------------------------------------------- /MVVMC/Networking/DTO/Response/ErrorResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/DTO/Response/ErrorResponse.swift -------------------------------------------------------------------------------- /MVVMC/Networking/DTO/Response/MeResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/DTO/Response/MeResponse.swift -------------------------------------------------------------------------------- /MVVMC/Networking/DTO/Response/SignInResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/DTO/Response/SignInResponse.swift -------------------------------------------------------------------------------- /MVVMC/Networking/DTO/Response/TranslationsResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/DTO/Response/TranslationsResponse.swift -------------------------------------------------------------------------------- /MVVMC/Networking/Models/ApiError.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/Models/ApiError.swift -------------------------------------------------------------------------------- /MVVMC/Networking/Models/ApiRequest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/Models/ApiRequest.swift -------------------------------------------------------------------------------- /MVVMC/Networking/Models/ApiResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/Models/ApiResponse.swift -------------------------------------------------------------------------------- /MVVMC/Networking/Models/HttpMethod.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/Models/HttpMethod.swift -------------------------------------------------------------------------------- /MVVMC/Networking/Models/HttpStatusCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Networking/Models/HttpStatusCode.swift -------------------------------------------------------------------------------- /MVVMC/Protocols/DataManager.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Protocols/DataManager.swift -------------------------------------------------------------------------------- /MVVMC/Protocols/HttpClient.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Protocols/HttpClient.swift -------------------------------------------------------------------------------- /MVVMC/Protocols/Storyboarded.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Protocols/Storyboarded.swift -------------------------------------------------------------------------------- /MVVMC/Services/AlertDispatcher.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Services/AlertDispatcher.swift -------------------------------------------------------------------------------- /MVVMC/Services/SessionService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Services/SessionService.swift -------------------------------------------------------------------------------- /MVVMC/Services/TranslationsService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Services/TranslationsService.swift -------------------------------------------------------------------------------- /MVVMC/Services/UserDataManager.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Services/UserDataManager.swift -------------------------------------------------------------------------------- /MVVMC/Utils/FileUtils.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Utils/FileUtils.swift -------------------------------------------------------------------------------- /MVVMC/Utils/Json.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Utils/Json.swift -------------------------------------------------------------------------------- /MVVMC/Utils/LocalizationUtils.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Utils/LocalizationUtils.swift -------------------------------------------------------------------------------- /MVVMC/Utils/Logger.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Utils/Logger.swift -------------------------------------------------------------------------------- /MVVMC/Utils/ViewControllerUtils.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/Utils/ViewControllerUtils.swift -------------------------------------------------------------------------------- /MVVMC/translations.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMC/translations.json -------------------------------------------------------------------------------- /MVVMCTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMCTests/Info.plist -------------------------------------------------------------------------------- /MVVMCTests/MVVMCTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMCTests/MVVMCTests.swift -------------------------------------------------------------------------------- /MVVMCUITests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMCUITests/Info.plist -------------------------------------------------------------------------------- /MVVMCUITests/MVVMCUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/MVVMCUITests/MVVMCUITests.swift -------------------------------------------------------------------------------- /Mocks/HttpClientMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/Mocks/HttpClientMock.swift -------------------------------------------------------------------------------- /Podfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/Podfile -------------------------------------------------------------------------------- /Podfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/Podfile.lock -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/README.md -------------------------------------------------------------------------------- /coordinators.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/coordinators.png -------------------------------------------------------------------------------- /screenshots.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wojciech-kulik/Swift-MVVMC-Demo/HEAD/screenshots.png --------------------------------------------------------------------------------