├── .gitignore ├── LICENSE ├── NiceDemo.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ └── contents.xcworkspacedata └── xcshareddata │ └── xcschemes │ └── NiceDemo.xcscheme ├── NiceDemo ├── Controllers │ ├── BaseNavigationController.swift │ └── BaseViewController.swift ├── Coordinators │ ├── AppCoordinator.swift │ ├── AuthFlowCoordinator.swift │ └── DogsFlowCoordinator.swift ├── CustomViews │ ├── HUDView.swift │ └── LoadingTableView │ │ ├── LoadingTableViewCell.swift │ │ └── LoadingTableViewProvider.swift ├── Extensions │ ├── String+Extension.swift │ ├── UIColor+Extension.swift │ ├── UIView+Extension.swift │ └── UIViewController+Extension.swift ├── Models │ ├── Dog.swift │ ├── DogBreedViewModel.swift │ ├── DogDescriptionFormatter.swift │ ├── Result.swift │ └── ServerResponses │ │ ├── BaseResponse │ │ └── BaseResponse.swift │ │ ├── GetAllDogsServerResponse.swift │ │ └── GetRandomDogImageServerResponse.swift ├── Protocols │ ├── Alertable.swift │ ├── CollectionViewProvider.swift │ ├── Coordinator.swift │ ├── HUDDisplayable.swift │ ├── ReusableView.swift │ ├── ServerService.swift │ └── TableViewProvider.swift ├── Scenes │ ├── AuthFlow │ │ ├── ForgotPassword │ │ │ ├── ForgotPasswordConfigurator.swift │ │ │ ├── ForgotPasswordContract.swift │ │ │ ├── ForgotPasswordPresenter.swift │ │ │ ├── ForgotPasswordView.swift │ │ │ └── ForgotPasswordViewController.swift │ │ └── SignIn │ │ │ ├── SignInConfigurator.swift │ │ │ ├── SignInContract.swift │ │ │ ├── SignInPresenter.swift │ │ │ ├── SignInView.swift │ │ │ └── SignInViewController.swift │ ├── DogsFlow │ │ ├── DogGallery │ │ │ ├── CollectionView │ │ │ │ ├── DogBreedCollectionViewCell.swift │ │ │ │ └── DogBreedsCollectionViewProvider.swift │ │ │ ├── DogGalleryConfigurator.swift │ │ │ ├── DogGalleryContract.swift │ │ │ ├── DogGalleryFlow.swift │ │ │ ├── DogGalleryPresenter.swift │ │ │ ├── DogGalleryView.swift │ │ │ └── DogGalleryViewController.swift │ │ └── DogsList │ │ │ ├── DogsListConfigurator.swift │ │ │ ├── DogsListContract.swift │ │ │ ├── DogsListFlow.swift │ │ │ ├── DogsListPresenter.swift │ │ │ ├── DogsListView.swift │ │ │ ├── DogsListViewController.swift │ │ │ └── TableView │ │ │ ├── DogBreedTableViewCell.swift │ │ │ └── DogsListTableViewProvider.swift │ └── Start │ │ ├── StartConfigurator.swift │ │ ├── StartContract.swift │ │ ├── StartPresenter.swift │ │ ├── StartView.swift │ │ └── StartViewController.swift ├── Services │ ├── AppDelegateService.swift │ ├── KeyboardObserver.swift │ ├── LocalStorage │ │ ├── DogsStorageService.swift │ │ └── UserCredentialsStorageService.swift │ ├── ServerApi │ │ ├── Core │ │ │ ├── ServerRouter.swift │ │ │ └── UrlSessionService.swift │ │ ├── DogsApiDataParser.swift │ │ └── DogsServerService.swift │ ├── SimpleImageLoader.swift │ ├── UserDefaultsLayer.swift │ └── Validator.swift ├── SupportingFiles │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ ├── Icon-App-20x20@1x.png │ │ │ ├── Icon-App-20x20@2x.png │ │ │ ├── Icon-App-20x20@3x.png │ │ │ ├── Icon-App-29x29@1x.png │ │ │ ├── Icon-App-29x29@2x.png │ │ │ ├── Icon-App-29x29@3x.png │ │ │ ├── Icon-App-40x40@1x.png │ │ │ ├── Icon-App-40x40@2x.png │ │ │ ├── Icon-App-40x40@3x.png │ │ │ ├── Icon-App-57x57@1x.png │ │ │ ├── Icon-App-57x57@2x.png │ │ │ ├── Icon-App-60x60@2x.png │ │ │ ├── Icon-App-60x60@3x.png │ │ │ ├── Icon-App-72x72@1x.png │ │ │ ├── Icon-App-72x72@2x.png │ │ │ ├── Icon-App-76x76@1x.png │ │ │ ├── Icon-App-76x76@2x.png │ │ │ ├── Icon-App-83.5x83.5@2x.png │ │ │ ├── Icon-Small-50x50@1x.png │ │ │ ├── Icon-Small-50x50@2x.png │ │ │ └── ItunesArtwork@2x.png │ │ ├── Contents.json │ │ ├── dog.imageset │ │ │ ├── Contents.json │ │ │ └── dog.pdf │ │ ├── pawPrint.imageset │ │ │ ├── Contents.json │ │ │ └── pawPrint.pdf │ │ ├── pawPrintNotSelected.imageset │ │ │ ├── Contents.json │ │ │ └── pawPrintNotSelected.pdf │ │ ├── pawPrintSelected.imageset │ │ │ ├── Contents.json │ │ │ └── pawPrintSelected.pdf │ │ └── walkingWithDog.imageset │ │ │ ├── Contents.json │ │ │ └── walkingWithDog.pdf │ ├── Base.lproj │ │ └── LaunchScreen.storyboard │ └── Info.plist ├── SystemFiles │ ├── AppDelegate.swift │ ├── TestAppDelegate.swift │ └── main.swift └── Utils │ └── Utils.swift ├── NiceDemoTests ├── AppDelegateService │ └── AppDelegateServiceTests.swift ├── Coordinators │ ├── AppCoordinatorTests.swift │ ├── AuthFlowCoordinatorTests.swift │ ├── CoordinatorTests.swift │ └── DogsFlowCoordinatorTests.swift ├── CustomViews │ ├── HUDViewTests.swift │ └── LoadingTableViewTests.swift ├── Info.plist ├── Network │ ├── ImageLoaderTests.swift │ └── NetworkTests.swift ├── Other │ └── ReusableViewTests.swift ├── Scenes │ ├── DogGallery │ │ ├── DogGalleryCollectionViewTests.swift │ │ ├── DogGalleryConfiguratorTests.swift │ │ ├── DogGalleryPresenterTests.swift │ │ └── DogGalleryViewControllerTests.swift │ ├── DogsList │ │ ├── DogsListConfiguratorTests.swift │ │ ├── DogsListSceneTests.swift │ │ └── DogsListTableViewTests.swift │ ├── ForgotPassword │ │ ├── ForgotPasswordConfiguratorTests.swift │ │ ├── ForgotPasswordPresenterTests.swift │ │ └── ForgotPasswordViewControllerTests.swift │ └── SignIn │ │ ├── SignInConfiguratorTests.swift │ │ └── SignInSceneTests.swift └── Validator │ └── ValidatorTests.swift ├── README.md └── VisualFiles ├── NiceDemo.png ├── NiceDemo.xml └── NiceDemoUI.png /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/LICENSE -------------------------------------------------------------------------------- /NiceDemo.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /NiceDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /NiceDemo.xcodeproj/xcshareddata/xcschemes/NiceDemo.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo.xcodeproj/xcshareddata/xcschemes/NiceDemo.xcscheme -------------------------------------------------------------------------------- /NiceDemo/Controllers/BaseNavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Controllers/BaseNavigationController.swift -------------------------------------------------------------------------------- /NiceDemo/Controllers/BaseViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Controllers/BaseViewController.swift -------------------------------------------------------------------------------- /NiceDemo/Coordinators/AppCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Coordinators/AppCoordinator.swift -------------------------------------------------------------------------------- /NiceDemo/Coordinators/AuthFlowCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Coordinators/AuthFlowCoordinator.swift -------------------------------------------------------------------------------- /NiceDemo/Coordinators/DogsFlowCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Coordinators/DogsFlowCoordinator.swift -------------------------------------------------------------------------------- /NiceDemo/CustomViews/HUDView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/CustomViews/HUDView.swift -------------------------------------------------------------------------------- /NiceDemo/CustomViews/LoadingTableView/LoadingTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/CustomViews/LoadingTableView/LoadingTableViewCell.swift -------------------------------------------------------------------------------- /NiceDemo/CustomViews/LoadingTableView/LoadingTableViewProvider.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/CustomViews/LoadingTableView/LoadingTableViewProvider.swift -------------------------------------------------------------------------------- /NiceDemo/Extensions/String+Extension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Extensions/String+Extension.swift -------------------------------------------------------------------------------- /NiceDemo/Extensions/UIColor+Extension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Extensions/UIColor+Extension.swift -------------------------------------------------------------------------------- /NiceDemo/Extensions/UIView+Extension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Extensions/UIView+Extension.swift -------------------------------------------------------------------------------- /NiceDemo/Extensions/UIViewController+Extension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Extensions/UIViewController+Extension.swift -------------------------------------------------------------------------------- /NiceDemo/Models/Dog.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/Dog.swift -------------------------------------------------------------------------------- /NiceDemo/Models/DogBreedViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/DogBreedViewModel.swift -------------------------------------------------------------------------------- /NiceDemo/Models/DogDescriptionFormatter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/DogDescriptionFormatter.swift -------------------------------------------------------------------------------- /NiceDemo/Models/Result.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/Result.swift -------------------------------------------------------------------------------- /NiceDemo/Models/ServerResponses/BaseResponse/BaseResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/ServerResponses/BaseResponse/BaseResponse.swift -------------------------------------------------------------------------------- /NiceDemo/Models/ServerResponses/GetAllDogsServerResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/ServerResponses/GetAllDogsServerResponse.swift -------------------------------------------------------------------------------- /NiceDemo/Models/ServerResponses/GetRandomDogImageServerResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Models/ServerResponses/GetRandomDogImageServerResponse.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/Alertable.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/Alertable.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/CollectionViewProvider.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/CollectionViewProvider.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/Coordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/Coordinator.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/HUDDisplayable.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/HUDDisplayable.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/ReusableView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/ReusableView.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/ServerService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/ServerService.swift -------------------------------------------------------------------------------- /NiceDemo/Protocols/TableViewProvider.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Protocols/TableViewProvider.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordConfigurator.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordContract.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordContract.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordPresenter.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordView.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/ForgotPassword/ForgotPasswordViewController.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/SignIn/SignInConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/SignIn/SignInConfigurator.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/SignIn/SignInContract.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/SignIn/SignInContract.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/SignIn/SignInPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/SignIn/SignInPresenter.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/SignIn/SignInView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/SignIn/SignInView.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/AuthFlow/SignIn/SignInViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/AuthFlow/SignIn/SignInViewController.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/CollectionView/DogBreedCollectionViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/CollectionView/DogBreedCollectionViewCell.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/CollectionView/DogBreedsCollectionViewProvider.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/CollectionView/DogBreedsCollectionViewProvider.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryConfigurator.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryContract.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryContract.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryFlow.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryFlow.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryPresenter.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryView.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogGallery/DogGalleryViewController.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/DogsListConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/DogsListConfigurator.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/DogsListContract.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/DogsListContract.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/DogsListFlow.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/DogsListFlow.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/DogsListPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/DogsListPresenter.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/DogsListView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/DogsListView.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/DogsListViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/DogsListViewController.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/TableView/DogBreedTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/TableView/DogBreedTableViewCell.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/DogsFlow/DogsList/TableView/DogsListTableViewProvider.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/DogsFlow/DogsList/TableView/DogsListTableViewProvider.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/Start/StartConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/Start/StartConfigurator.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/Start/StartContract.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/Start/StartContract.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/Start/StartPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/Start/StartPresenter.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/Start/StartView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/Start/StartView.swift -------------------------------------------------------------------------------- /NiceDemo/Scenes/Start/StartViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Scenes/Start/StartViewController.swift -------------------------------------------------------------------------------- /NiceDemo/Services/AppDelegateService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/AppDelegateService.swift -------------------------------------------------------------------------------- /NiceDemo/Services/KeyboardObserver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/KeyboardObserver.swift -------------------------------------------------------------------------------- /NiceDemo/Services/LocalStorage/DogsStorageService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/LocalStorage/DogsStorageService.swift -------------------------------------------------------------------------------- /NiceDemo/Services/LocalStorage/UserCredentialsStorageService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/LocalStorage/UserCredentialsStorageService.swift -------------------------------------------------------------------------------- /NiceDemo/Services/ServerApi/Core/ServerRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/ServerApi/Core/ServerRouter.swift -------------------------------------------------------------------------------- /NiceDemo/Services/ServerApi/Core/UrlSessionService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/ServerApi/Core/UrlSessionService.swift -------------------------------------------------------------------------------- /NiceDemo/Services/ServerApi/DogsApiDataParser.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/ServerApi/DogsApiDataParser.swift -------------------------------------------------------------------------------- /NiceDemo/Services/ServerApi/DogsServerService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/ServerApi/DogsServerService.swift -------------------------------------------------------------------------------- /NiceDemo/Services/SimpleImageLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/SimpleImageLoader.swift -------------------------------------------------------------------------------- /NiceDemo/Services/UserDefaultsLayer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/UserDefaultsLayer.swift -------------------------------------------------------------------------------- /NiceDemo/Services/Validator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Services/Validator.swift -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/dog.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/dog.imageset/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/dog.imageset/dog.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/dog.imageset/dog.pdf -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/pawPrint.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/pawPrint.imageset/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/pawPrint.imageset/pawPrint.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/pawPrint.imageset/pawPrint.pdf -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/pawPrintNotSelected.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/pawPrintNotSelected.imageset/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/pawPrintNotSelected.imageset/pawPrintNotSelected.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/pawPrintNotSelected.imageset/pawPrintNotSelected.pdf -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/pawPrintSelected.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/pawPrintSelected.imageset/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/pawPrintSelected.imageset/pawPrintSelected.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/pawPrintSelected.imageset/pawPrintSelected.pdf -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/walkingWithDog.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/walkingWithDog.imageset/Contents.json -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Assets.xcassets/walkingWithDog.imageset/walkingWithDog.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Assets.xcassets/walkingWithDog.imageset/walkingWithDog.pdf -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /NiceDemo/SupportingFiles/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SupportingFiles/Info.plist -------------------------------------------------------------------------------- /NiceDemo/SystemFiles/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SystemFiles/AppDelegate.swift -------------------------------------------------------------------------------- /NiceDemo/SystemFiles/TestAppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SystemFiles/TestAppDelegate.swift -------------------------------------------------------------------------------- /NiceDemo/SystemFiles/main.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/SystemFiles/main.swift -------------------------------------------------------------------------------- /NiceDemo/Utils/Utils.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemo/Utils/Utils.swift -------------------------------------------------------------------------------- /NiceDemoTests/AppDelegateService/AppDelegateServiceTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/AppDelegateService/AppDelegateServiceTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Coordinators/AppCoordinatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Coordinators/AppCoordinatorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Coordinators/AuthFlowCoordinatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Coordinators/AuthFlowCoordinatorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Coordinators/CoordinatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Coordinators/CoordinatorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Coordinators/DogsFlowCoordinatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Coordinators/DogsFlowCoordinatorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/CustomViews/HUDViewTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/CustomViews/HUDViewTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/CustomViews/LoadingTableViewTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/CustomViews/LoadingTableViewTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Info.plist -------------------------------------------------------------------------------- /NiceDemoTests/Network/ImageLoaderTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Network/ImageLoaderTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Network/NetworkTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Network/NetworkTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Other/ReusableViewTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Other/ReusableViewTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogGallery/DogGalleryCollectionViewTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogGallery/DogGalleryCollectionViewTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogGallery/DogGalleryConfiguratorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogGallery/DogGalleryConfiguratorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogGallery/DogGalleryPresenterTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogGallery/DogGalleryPresenterTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogGallery/DogGalleryViewControllerTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogGallery/DogGalleryViewControllerTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogsList/DogsListConfiguratorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogsList/DogsListConfiguratorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogsList/DogsListSceneTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogsList/DogsListSceneTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/DogsList/DogsListTableViewTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/DogsList/DogsListTableViewTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/ForgotPassword/ForgotPasswordConfiguratorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/ForgotPassword/ForgotPasswordConfiguratorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/ForgotPassword/ForgotPasswordPresenterTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/ForgotPassword/ForgotPasswordPresenterTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/ForgotPassword/ForgotPasswordViewControllerTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/ForgotPassword/ForgotPasswordViewControllerTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/SignIn/SignInConfiguratorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/SignIn/SignInConfiguratorTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Scenes/SignIn/SignInSceneTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Scenes/SignIn/SignInSceneTests.swift -------------------------------------------------------------------------------- /NiceDemoTests/Validator/ValidatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/NiceDemoTests/Validator/ValidatorTests.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/README.md -------------------------------------------------------------------------------- /VisualFiles/NiceDemo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/VisualFiles/NiceDemo.png -------------------------------------------------------------------------------- /VisualFiles/NiceDemo.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/VisualFiles/NiceDemo.xml -------------------------------------------------------------------------------- /VisualFiles/NiceDemoUI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kharauzov/NiceDemo/HEAD/VisualFiles/NiceDemoUI.png --------------------------------------------------------------------------------