Issues resolved

This commit is contained in:
Artur 2019-03-05 11:27:53 +03:00
parent 8f3b75297a
commit f6569fc395
4 changed files with 44 additions and 249 deletions

View File

@ -2,4 +2,5 @@ binary "https://raw.github.com/petropavel13/CarthageBinaries/master/SwiftDate/Sw
github "ReactiveX/RxSwift"
binary "https://raw.github.com/petropavel13/CarthageBinaries/master/RxAlamofire/RxAlamofire.json"
github "maxsokolov/TableKit"
github "pronebird/UIScrollView-InfiniteScroll"
github "pronebird/UIScrollView-InfiniteScroll"
GitHub "Alamofire/Alamofire" "4.8.1"

View File

@ -1,5 +1,6 @@
binary "https://raw.github.com/petropavel13/CarthageBinaries/master/RxAlamofire/RxAlamofire.json" "4.3.0"
binary "https://raw.github.com/petropavel13/CarthageBinaries/master/SwiftDate/SwiftDate.json" "5.1.0"
github "Alamofire/Alamofire" "4.8.1"
github "ReactiveX/RxSwift" "4.4.1"
github "maxsokolov/TableKit" "2.8.1"
github "pronebird/UIScrollView-InfiniteScroll" "1.1.0"

View File

@ -470,16 +470,15 @@
6B5B64BACFF8C5487FB0939D /* TableKitViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5B66503F2C42D009DEA011 /* TableKitViewModel.swift */; };
6B5B6EF1577C8CC06E4CCF1B /* Array+RowExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5B62E7942E5AEE68A95449 /* Array+RowExtensions.swift */; };
6B5B6F0BFA22832C47142BAD /* TableKitViewModel+Extenstions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5B61443DDAB82927448CAA /* TableKitViewModel+Extenstions.swift */; };
6B5B6F4E2B4F6F74348AC138 /* TableKitViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5B66503F2C42D009DEA011 /* TableKitViewModel.swift */; };
72039CE0220899E600875DD4 /* SearchResultsViewControllerState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72039CDF220899E600875DD4 /* SearchResultsViewControllerState.swift */; };
72039CE122089A3D00875DD4 /* SearchResultsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7284087522079A4600A20F47 /* SearchResultsViewController.swift */; };
72039CE222089A3D00875DD4 /* SearchResultsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7284087522079A4600A20F47 /* SearchResultsViewController.swift */; };
72039CE322089A3D00875DD4 /* SearchResultsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7284087522079A4600A20F47 /* SearchResultsViewController.swift */; };
7284087422078EB800A20F47 /* BaseSearchViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7284087322078EB800A20F47 /* BaseSearchViewModel.swift */; };
7284087622079A4600A20F47 /* SearchResultsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7284087522079A4600A20F47 /* SearchResultsViewController.swift */; };
7295473F21E661E6009558E7 /* TitleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7295473E21E661E6009558E7 /* TitleType.swift */; };
7295474221E6628C009558E7 /* UINavigationItem+Support.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7295474121E6628C009558E7 /* UINavigationItem+Support.swift */; };
7295474421E66328009558E7 /* UIViewController+UpdateNavigationItemTitle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7295474321E66328009558E7 /* UIViewController+UpdateNavigationItemTitle.swift */; };
72D213A422048180003B4292 /* BaseSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72D213A322048180003B4292 /* BaseSearchViewController.swift */; };
785EDF7C220072B500985ED4 /* SwiftDate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 785EDF76220072B400985ED4 /* SwiftDate.framework */; };
785EDF7D220072B500985ED4 /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 785EDF77220072B400985ED4 /* RxCocoa.framework */; };
785EDF7E220072B500985ED4 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 785EDF78220072B500985ED4 /* Alamofire.framework */; };
@ -502,8 +501,6 @@
78EC7B1322019F5A0007DCFD /* String+TelpromptURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78EC7B1222019F5A0007DCFD /* String+TelpromptURL.swift */; };
78EC7B1422019F5A0007DCFD /* String+TelpromptURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78EC7B1222019F5A0007DCFD /* String+TelpromptURL.swift */; };
78EC7B1522019F5A0007DCFD /* String+TelpromptURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78EC7B1222019F5A0007DCFD /* String+TelpromptURL.swift */; };
7295474D21E75E84009558E7 /* UINavigationItem+Support.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7295474121E6628C009558E7 /* UINavigationItem+Support.swift */; };
72D213A422048180003B4292 /* BaseSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72D213A322048180003B4292 /* BaseSearchViewController.swift */; };
820CAD8420B43B080033EF94 /* PaginationWrapperDelegate+DefaultImplementation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 820CAD8320B43B080033EF94 /* PaginationWrapperDelegate+DefaultImplementation.swift */; };
825F8F2820B3384C00594857 /* PaginationWrapperUIDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 825F8F2720B3384C00594857 /* PaginationWrapperUIDelegate.swift */; };
82F8BB181F5DDED100C1061B /* Single+DeferredJust.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82F8BB171F5DDED100C1061B /* Single+DeferredJust.swift */; };
@ -778,6 +775,7 @@
7295473E21E661E6009558E7 /* TitleType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TitleType.swift; sourceTree = "<group>"; };
7295474121E6628C009558E7 /* UINavigationItem+Support.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UINavigationItem+Support.swift"; sourceTree = "<group>"; };
7295474321E66328009558E7 /* UIViewController+UpdateNavigationItemTitle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIViewController+UpdateNavigationItemTitle.swift"; sourceTree = "<group>"; };
72D213A322048180003B4292 /* BaseSearchViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseSearchViewController.swift; sourceTree = "<group>"; };
785EDF76220072B400985ED4 /* SwiftDate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftDate.framework; path = Carthage/Build/iOS/SwiftDate.framework; sourceTree = "<group>"; };
785EDF77220072B400985ED4 /* RxCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxCocoa.framework; path = Carthage/Build/iOS/RxCocoa.framework; sourceTree = "<group>"; };
785EDF78220072B500985ED4 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Alamofire.framework; path = Carthage/Build/iOS/Alamofire.framework; sourceTree = "<group>"; };
@ -799,8 +797,6 @@
785EDFAA220082E600985ED4 /* SwiftDate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftDate.framework; path = Carthage/Build/tvOS/SwiftDate.framework; sourceTree = "<group>"; };
785EDFAB220082E600985ED4 /* RxAtomic.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxAtomic.framework; path = Carthage/Build/tvOS/RxAtomic.framework; sourceTree = "<group>"; };
78EC7B1222019F5A0007DCFD /* String+TelpromptURL.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+TelpromptURL.swift"; sourceTree = "<group>"; };
72D213A322048180003B4292 /* BaseSearchViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseSearchViewController.swift; sourceTree = "<group>"; };
78405D3B3D3C3E17456877FF /* Pods_LeadKit_iOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_LeadKit_iOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
820CAD8320B43B080033EF94 /* PaginationWrapperDelegate+DefaultImplementation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "PaginationWrapperDelegate+DefaultImplementation.swift"; sourceTree = "<group>"; };
825F8F2720B3384C00594857 /* PaginationWrapperUIDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaginationWrapperUIDelegate.swift; sourceTree = "<group>"; };
82F8BB171F5DDED100C1061B /* Single+DeferredJust.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Single+DeferredJust.swift"; sourceTree = "<group>"; };
@ -1958,6 +1954,23 @@
path = TableKitViewModel;
sourceTree = "<group>";
};
72039CDE220899D000875DD4 /* Search */ = {
isa = PBXGroup;
children = (
72039CDF220899E600875DD4 /* SearchResultsViewControllerState.swift */,
);
path = Search;
sourceTree = "<group>";
};
72D213A222048162003B4292 /* Search */ = {
isa = PBXGroup;
children = (
72D213A322048180003B4292 /* BaseSearchViewController.swift */,
7284087322078EB800A20F47 /* BaseSearchViewModel.swift */,
);
path = Search;
sourceTree = "<group>";
};
785EDF75220072B400985ED4 /* Frameworks */ = {
isa = PBXGroup;
children = (
@ -1985,23 +1998,6 @@
name = Frameworks;
sourceTree = "<group>";
};
72039CDE220899D000875DD4 /* Search */ = {
isa = PBXGroup;
children = (
72039CDF220899E600875DD4 /* SearchResultsViewControllerState.swift */,
);
path = Search;
sourceTree = "<group>";
};
72D213A222048162003B4292 /* Search */ = {
isa = PBXGroup;
children = (
72D213A322048180003B4292 /* BaseSearchViewController.swift */,
7284087322078EB800A20F47 /* BaseSearchViewModel.swift */,
);
path = Search;
sourceTree = "<group>";
};
78CFEE201C5C456B00F50370 = {
isa = PBXGroup;
children = (
@ -2559,7 +2555,6 @@
72D213A422048180003B4292 /* BaseSearchViewController.swift in Sources */,
673CF4382063E7CE00C329F6 /* GeneralDataLoadingController+DefaultImplementation.swift in Sources */,
B85B768720B1CF6700F837C4 /* Encodable+Extensions.swift in Sources */,
671AD267206A365100EAF887 /* UIApplication+OpenUrlSupport.swift in Sources */,
72039CE0220899E600875DD4 /* SearchResultsViewControllerState.swift in Sources */,
67E9024B2125AEB4008EDF45 /* NSNumberConvertible.swift in Sources */,
673CF40B2063AB7C00C329F6 /* GeneralDataLoadingViewModel.swift in Sources */,
@ -2994,221 +2989,6 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
67952DC01EB327B400B3BA1A /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
678D267A20691D8200B05B93 /* DataModelFieldBinding.swift in Sources */,
67EB7FE520615DE000BDD9FB /* DataSource.swift in Sources */,
B84CB07920B872AD0090DB91 /* Decodable+Extensions.swift in Sources */,
3622F5DA20E24F44009DED94 /* SeparatorCell.swift in Sources */,
671463491EB3396E00EAB194 /* ResettableType.swift in Sources */,
67386A8D206CF3F6004EDA6C /* DateFormattingService+DefaultImplementation.swift in Sources */,
A676AE491F97D28A001F9214 /* String+Extensions.swift in Sources */,
6792623D206EB0EC00308E62 /* CellSeparatorType+Extensions.swift in Sources */,
671462E51EB3396E00EAB194 /* UIColor+Hex.swift in Sources */,
67EB7FFE206176C900BDD9FB /* AnyPaginationWrappable.swift in Sources */,
67DB776E210871E8001CB56B /* BaseCollectionContentController.swift in Sources */,
674303D0214FB8F700EF4160 /* GeneralDataLoadingHandler.swift in Sources */,
67274773206CCF1200725163 /* ViewText.swift in Sources */,
678D26A520692BFF00B05B93 /* TextFieldViewModelEvents.swift in Sources */,
677452B720627FE00024EEEF /* PaginationWrappable.swift in Sources */,
6713C23D20AF0D5900875921 /* NetworkOperationModel.swift in Sources */,
67EB7FC1206140E600BDD9FB /* TotalCountCursor.swift in Sources */,
67A1FF951EBCA65E00D6C89F /* CABasicAnimation+Rotation.swift in Sources */,
671462811EB3396E00EAB194 /* DataRequest+Extensions.swift in Sources */,
67E6C2361EBB32F5007842A6 /* SingleLoadCursor.swift in Sources */,
671463551EB3396E00EAB194 /* StaticViewHeightProtocol.swift in Sources */,
677B06A721186AFE006C947D /* ObservableType+Extensions.swift in Sources */,
671463611EB3396E00EAB194 /* SupportProtocol.swift in Sources */,
3622F5E120E2587B009DED94 /* TableRow+SeparatorsExtensions.swift in Sources */,
671462851EB3396E00EAB194 /* CGContext+Initializers.swift in Sources */,
67CAF8C720652E2A00527085 /* TextFieldViewModel.swift in Sources */,
67E352602119B7570035BDDB /* BasePlaceholerView.swift in Sources */,
67ED2BEE20B45F1500508B3E /* SeparatorConfiguration.swift in Sources */,
6714634D1EB3396E00EAB194 /* ReuseIdentifierProtocol.swift in Sources */,
67745281206256A20024EEEF /* RxDataLoadingModel.swift in Sources */,
671462F11EB3396E00EAB194 /* UIImage+SupportExtensions.swift in Sources */,
671462691EB3396E00EAB194 /* NetworkService.swift in Sources */,
671463111EB3396E00EAB194 /* UIViewController+DefaultXibName.swift in Sources */,
67153E41207DFBA80049D8C0 /* FloatingPoint+DegreesRadiansConvertion.swift in Sources */,
67990AE7213EB4080040D195 /* ConfigurableView+Extensions.swift in Sources */,
6732F240214C09F900B446F2 /* UserDefaults+Codable.swift in Sources */,
671462911EB3396E00EAB194 /* CGImage+Crop.swift in Sources */,
6760DC4E212F351700020BAE /* UIView+AddSubviews.swift in Sources */,
67E902582125B66E008EDF45 /* UIImageView+ExpandCollapseDisclosure.swift in Sources */,
673564F72068C68D00F0CBED /* NumberFormat.swift in Sources */,
67E352582119ACF30035BDDB /* ViewTextConfigurable+Extensions.swift in Sources */,
67051ADC1EBC7C36008EADC0 /* SpinnerView.swift in Sources */,
EF24213B2076D5C700FA9BE6 /* NetworkServiceConfiguration.swift in Sources */,
671462FD1EB3396E00EAB194 /* UIView+XibNameProtocol.swift in Sources */,
671463851EB3396E00EAB194 /* ResizeDrawingOperation.swift in Sources */,
673564F22068C2AD00F0CBED /* NumberFormattingService+DefaultImplementation.swift in Sources */,
671462D11EB3396E00EAB194 /* UIScrollView+Support.swift in Sources */,
671AD25D206A343300EAF887 /* VoidBlock.swift in Sources */,
671AD26D206A3E8500EAF887 /* Array+TotalCountCursorListingResult.swift in Sources */,
6741CEB520E242C100FEC4D9 /* CollectionViewHolder+ScrollViewHolder.swift in Sources */,
6774528E20625C9E0024EEEF /* GeneralDataLoadingState.swift in Sources */,
6741CEB020E242A500FEC4D9 /* TableViewHolder+ScrollViewHolder.swift in Sources */,
671463911EB3396E00EAB194 /* TemplateDrawingOperation.swift in Sources */,
67EB7FEC2061667900BDD9FB /* DefaultTotalCountCursorListingResult.swift in Sources */,
671462991EB3396E00EAB194 /* CGSize+Resize.swift in Sources */,
67274780206CD3BD00725163 /* ViewText+Extensions.swift in Sources */,
67ED2BE620B44F4300508B3E /* InitializableView+DefaultImplementation.swift in Sources */,
671463311EB3396E00EAB194 /* CursorType.swift in Sources */,
6714624D1EB3396E00EAB194 /* MapCursor.swift in Sources */,
3622F5DF20E2541B009DED94 /* TableRow+AppearanceExtension.swift in Sources */,
67EB7FD520615D1700BDD9FB /* ResettableCursorType.swift in Sources */,
6741CEA220E2416C00FEC4D9 /* ScrollViewHolder.swift in Sources */,
671463251EB3396E00EAB194 /* Any+TypeName.swift in Sources */,
671463891EB3396E00EAB194 /* RoundDrawingOperation.swift in Sources */,
6741CEBB20E242D900FEC4D9 /* UIScrollView+ScrollViewHolder.swift in Sources */,
B84CB06920B702240090DB91 /* Encodable+Extensions.swift in Sources */,
675C1FB61F97CA33007D5249 /* AppearanceConfigurable.swift in Sources */,
67FD4383206BD24B005B0C64 /* EqutableOptionalArray.swift in Sources */,
671463811EB3396E00EAB194 /* PaddingDrawingOperation.swift in Sources */,
72039CE322089A3D00875DD4 /* SearchResultsViewController.swift in Sources */,
67EB7FDB20615D5B00BDD9FB /* ResettableRxCursorDataSource.swift in Sources */,
6741C41020EAC88800418D08 /* GeneralDataLoadingViewModel+Extensions.swift in Sources */,
A6F32C0A1F6EBE5B00AC08EE /* String+LocalizedComponent.swift in Sources */,
671463291EB3396E00EAB194 /* BaseViewModel.swift in Sources */,
671462AD1EB3396E00EAB194 /* Observable+DeferredJust.swift in Sources */,
671463011EB3396E00EAB194 /* UIView+LoadFromNib.swift in Sources */,
67990AC6213EA4DB0040D195 /* PlaceholderConfigurable.swift in Sources */,
6774526D206249E30024EEEF /* UICollectionView+PaginationWrappable.swift in Sources */,
67990AD7213EA6A50040D195 /* ContentLoadingViewModel+Extensions.swift in Sources */,
6714627D1EB3396E00EAB194 /* SessionManager+Extensions.swift in Sources */,
673CF4352063E29B00C329F6 /* TextWithButtonPlaceholder.swift in Sources */,
675E0AAA21072FF400CDC143 /* BaseScrollContentController.swift in Sources */,
677B06B9211873FA006C947D /* BasePlaceholderViewModel.swift in Sources */,
6727476F206CCDDB00725163 /* ViewBackground+Configuration.swift in Sources */,
673CF4232063D90600C329F6 /* DisposeBagHolder.swift in Sources */,
6741CEBF20E242FA00FEC4D9 /* UIScrollView+RxBindings.swift in Sources */,
677452AA206263360024EEEF /* CursorType+RxDataSourceDefaultImplementation.swift in Sources */,
671462791EB3396E00EAB194 /* ResizeMode.swift in Sources */,
671463051EB3396E00EAB194 /* UIView+LoadingIndicator.swift in Sources */,
671463711EB3396E00EAB194 /* ApiRequestParameters.swift in Sources */,
3622F5DB20E24F99009DED94 /* Array+SeparatorRowBoxExtensions.swift in Sources */,
671462ED1EB3396E00EAB194 /* UIImage+Extensions.swift in Sources */,
36FE777120F669E300284C09 /* String+ConvertToHost.swift in Sources */,
6714636D1EB3396E00EAB194 /* XibNameProtocol.swift in Sources */,
677B06C5211884F3006C947D /* BaseTextAttributes.swift in Sources */,
673CF42D2063DE5900C329F6 /* TextPlaceholderView.swift in Sources */,
67E352532119AC060035BDDB /* UIButton+ViewTextConfigurable.swift in Sources */,
6713C24220AF189100875921 /* RxNetworkOperationModel.swift in Sources */,
671462A11EB3396E00EAB194 /* Double+Rounding.swift in Sources */,
7295474D21E75E84009558E7 /* UINavigationItem+Support.swift in Sources */,
671463091EB3396E00EAB194 /* UIView+Rotation.swift in Sources */,
67ED2BDF20B44DEB00508B3E /* InitializableView.swift in Sources */,
6714626D1EB3396E00EAB194 /* XibView.swift in Sources */,
6714637D1EB3396E00EAB194 /* ImageDrawingOperation.swift in Sources */,
67E902522125B064008EDF45 /* BuildInNumberTypes+NSNumberConvertible.swift in Sources */,
671463351EB3396E00EAB194 /* DrawingOperation.swift in Sources */,
6741CED220E243F800FEC4D9 /* BaseConfigurableController.swift in Sources */,
677452A020625EEE0024EEEF /* PaginationDataLoadingModel.swift in Sources */,
3622F5E220E25883009DED94 /* SeparatorRowBox.swift in Sources */,
6741CEA620E2418200FEC4D9 /* TableViewHolder.swift in Sources */,
677B06AC21186BB6006C947D /* Single+Extensions.swift in Sources */,
67DB776A21087154001CB56B /* CollectionViewWrapperView.swift in Sources */,
67FDC2601FA310EA00C76A77 /* RequestError.swift in Sources */,
6774529320625D170024EEEF /* GeneralDataLoadingModel.swift in Sources */,
6741CEC320E2430A00FEC4D9 /* UITableView+TableViewHolder.swift in Sources */,
671462711EB3396E00EAB194 /* CursorError.swift in Sources */,
671463991EB3396E00EAB194 /* AnyLoadingIndicator.swift in Sources */,
67DB7761210869D1001CB56B /* TableViewWrapperView.swift in Sources */,
674303D5214FC0FF00EF4160 /* GeneralDataLoadingHandler+Extensions.swift in Sources */,
673CF4392063E7CE00C329F6 /* GeneralDataLoadingController+DefaultImplementation.swift in Sources */,
671463A81EB340C000EAB194 /* UIViewController+ConfigurableController.swift in Sources */,
671463151EB3396E00EAB194 /* UIViewController+TopVisibleViewController.swift in Sources */,
671462891EB3396E00EAB194 /* CGFloat+Pixels.swift in Sources */,
674AF55D1EC45B1600038A8F /* UIActivityIndicatorView+LoadingIndicator.swift in Sources */,
67274790206CD88600725163 /* DateFormattingService.swift in Sources */,
67955D53206D216B0021ECD2 /* Singleton.swift in Sources */,
A676AE4E1F9810C1001F9214 /* Any+Cast.swift in Sources */,
67990AD3213EA6790040D195 /* PlaceholderConfigurable+DefaultImplementation.swift in Sources */,
671462951EB3396E00EAB194 /* CGSize+CGContextSize.swift in Sources */,
67EB7FF22061682F00BDD9FB /* TotalCountCursorListingResult+DefaultTotalCountCursorListingResult.swift in Sources */,
671463651EB3396E00EAB194 /* ViewHeightProtocol.swift in Sources */,
6713C23820AF0C4D00875921 /* NetworkOperationState.swift in Sources */,
6774527520624E820024EEEF /* DataLoadingModel.swift in Sources */,
A6C9A5101F8BC79D009311CC /* Comparable+Extensions.swift in Sources */,
67153E3B207DFADA0049D8C0 /* RotateDrawingOperation.swift in Sources */,
677452A520625FA90024EEEF /* RxDataSource.swift in Sources */,
671462491EB3396E00EAB194 /* FixedPageCursor.swift in Sources */,
671462C91EB3396E00EAB194 /* String+Localization.swift in Sources */,
673CF43B2063E80B00C329F6 /* GeneralDataLoadingController.swift in Sources */,
673CF40C2063AB7C00C329F6 /* GeneralDataLoadingViewModel.swift in Sources */,
671462B91EB3396E00EAB194 /* Sequence+ConcurrentMap.swift in Sources */,
671463751EB3396E00EAB194 /* BorderDrawingOperation.swift in Sources */,
67C7B17A2068BB1C00C9EDA3 /* NumberFormattingService.swift in Sources */,
673CF4122063ABD100C329F6 /* GeneralDataLoadingState+Extensions.swift in Sources */,
6714633D1EB3396E00EAB194 /* LoadingIndicator.swift in Sources */,
671463191EB3396E00EAB194 /* UIWindow+Extensions.swift in Sources */,
6727478B206CD83600725163 /* DateFormat.swift in Sources */,
EFBE57DC1EC361620040E00A /* UIView+Layout.swift in Sources */,
67A1FF901EBCA09B00D6C89F /* UIImage+Spinner.swift in Sources */,
6774529B20625E5B0024EEEF /* PaginationDataLoadingState.swift in Sources */,
6741CEAA20E2418B00FEC4D9 /* CollectionViewHolder.swift in Sources */,
671463791EB3396E00EAB194 /* CALayerDrawingOperation.swift in Sources */,
6727476A206CCCA300725163 /* ViewBackground.swift in Sources */,
3622F5DC20E253D8009DED94 /* TableSection+Extensions.swift in Sources */,
6714632D1EB3396E00EAB194 /* ConfigurableController.swift in Sources */,
67745287206259CF0024EEEF /* Rx+RxDataSourceProtocol.swift in Sources */,
677B06B321186C14006C947D /* Completable+DeferredJust.swift in Sources */,
A676AE561F98112F001F9214 /* ObservableMappable.swift in Sources */,
6737CFA4207220960063E056 /* SeparatorConfiguration+Extensions.swift in Sources */,
67E3524F2119ABE40035BDDB /* UITextField+ViewTextConfigurable.swift in Sources */,
67926237206EB0AE00308E62 /* CellSeparatorType.swift in Sources */,
B84CB06E20B8325D0090DB91 /* SessionManager.swift in Sources */,
67DB776521086A12001CB56B /* BaseTableContentController.swift in Sources */,
6774527A206252020024EEEF /* DataLoadingState.swift in Sources */,
6714628D1EB3396E00EAB194 /* CGImage+Alpha.swift in Sources */,
67745269206249360024EEEF /* UITableView+PaginationWrappable.swift in Sources */,
67274779206CD0B500725163 /* UILabel+ViewTextConfigurable.swift in Sources */,
67EB7FC8206148D000BDD9FB /* TotalCountCursorListingResult.swift in Sources */,
671462751EB3396E00EAB194 /* LeadKitError.swift in Sources */,
67990ACB213EA5B70040D195 /* ContentLoadingViewModel.swift in Sources */,
EFBE57D11EC35EF20040E00A /* Array+Extensions.swift in Sources */,
676B22A3206A626D002E9F8A /* NSAttributedString+Extensions.swift in Sources */,
6732F243214C189000B446F2 /* Single+DeferredJust.swift in Sources */,
671462D91EB3396E00EAB194 /* TimeInterval+DateComponents.swift in Sources */,
3622F5DD20E253F1009DED94 /* TableDirector+Extensions.swift in Sources */,
6714638D1EB3396E00EAB194 /* SolidFillDrawingOperation.swift in Sources */,
671463A31EB33FF600EAB194 /* Animatable.swift in Sources */,
677B06C021187559006C947D /* ViewTextConfigurable.swift in Sources */,
678D26A120692BFF00B05B93 /* TextFieldViewEvents.swift in Sources */,
671462511EB3396E00EAB194 /* StaticCursor.swift in Sources */,
6714629D1EB3396E00EAB194 /* CursorType+Slice.swift in Sources */,
6741CECF20E243F800FEC4D9 /* BaseCustomViewController.swift in Sources */,
671463691EB3396E00EAB194 /* ConfigurableView.swift in Sources */,
67EB7FD020615B8900BDD9FB /* TotalCountCursorConfiguration.swift in Sources */,
67CAF8AC2065189C00527085 /* NetworkService+ActivityIndicator.swift in Sources */,
67E9024C2125AEB4008EDF45 /* NSNumberConvertible.swift in Sources */,
6B5B6F4E2B4F6F74348AC138 /* TableKitViewModel.swift in Sources */,
6B5B6481B4160AE6D0205CD6 /* TableKitViewModel+Extenstions.swift in Sources */,
677B06A121186A69006C947D /* SharedSequence+Extensions.swift in Sources */,
6B5B6D4401AEE65083D2A911 /* Array+RowExtensions.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
67952DC91EB327B400B3BA1A /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
A6C9A5111F8BC79D009311CC /* Comparable+Extensions.swift in Sources */,
671463BF1EB34B1E00EAB194 /* LoadFromNibTests.swift in Sources */,
B84D64B220A70B7000DD76DA /* NetworkServiceTests.swift in Sources */,
671463C51EB34B1E00EAB194 /* Post.swift in Sources */,
671463CB1EB34B1E00EAB194 /* TestView.swift in Sources */,
B85B766E20AC51C600F837C4 /* AlbumsContainer.swift in Sources */,
D93221EF20A44896003799D5 /* Double+RoundingTests.swift in Sources */,
A6F32C111F6EBE9700AC08EE /* StringExtensionTests.swift in Sources */,
671463BC1EB34B1E00EAB194 /* CursorTests.swift in Sources */,
671463B91EB34B1E00EAB194 /* StubCursor.swift in Sources */,
B85B766920AC4EC700F837C4 /* Album.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
@ -3228,7 +3008,7 @@
67186B3A1EB248F100CFAFFB /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
APPLICATION_EXTENSION_API_ONLY = YES;
APPLICATION_EXTENSION_API_ONLY = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
@ -3258,7 +3038,7 @@
67186B3B1EB248F100CFAFFB /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
APPLICATION_EXTENSION_API_ONLY = YES;
APPLICATION_EXTENSION_API_ONLY = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;

View File

@ -22,6 +22,9 @@
import TableKit
import RxSwift
import UIKit
public typealias SearchResultsController = UIViewController & SearchResultsViewController
open class BaseSearchViewController<Item,
ItemViewModel,
@ -32,14 +35,15 @@ where ViewModel: BaseSearchViewModel<Item, ItemViewModel> {
// MARK: - Properties
private let disposeBag = DisposeBag()
private let searchResultsViewController: UIViewController & SearchResultsViewController
private lazy var searchController = UISearchController(searchResultsController: searchResultsViewController)
private let searchResultsController: SearchResultsController
private let searchController: UISearchController
private var didEnterText = false
// MARK: - Initialization
public init(viewModel: ViewModel, searchResultsController: UIViewController & SearchResultsViewController) {
self.searchResultsViewController = searchResultsController
public init(viewModel: ViewModel, searchResultsController: SearchResultsController) {
self.searchResultsController = searchResultsController
self.searchController = UISearchController(searchResultsController: searchResultsController)
super.init(viewModel: viewModel)
}
@ -50,10 +54,13 @@ where ViewModel: BaseSearchViewModel<Item, ItemViewModel> {
// MARK: - Configurable Controller
open override func configureBarButtons() {
super.configureBarButtons()
// override in subclass
}
open override func bindViews() {
super.bindViews()
viewModel.itemsViewModelsDriver
.drive(onNext: { [weak self] viewModels in
self?.handle(itemViewModels: viewModels)
@ -78,6 +85,8 @@ where ViewModel: BaseSearchViewModel<Item, ItemViewModel> {
}
open override func addViews() {
super.addViews()
if #available(iOS 11.0, *) {
navigationItem.searchController = searchController
} else {
@ -87,11 +96,15 @@ where ViewModel: BaseSearchViewModel<Item, ItemViewModel> {
}
open override func configureAppearance() {
super.configureAppearance()
definesPresentationContext = true
customView.tableView.tableHeaderView?.backgroundColor = searchBarColor
}
open override func localize() {
super.localize()
searchController.searchBar.placeholder = searchBarPlaceholder
}
@ -154,7 +167,7 @@ where ViewModel: BaseSearchViewModel<Item, ItemViewModel> {
}
open func handle(searchResultsState state: SearchResultsViewControllerState) {
searchResultsViewController.update(for: state)
searchResultsController.update(for: state)
}
open func handle(searchText: String?) {
@ -166,8 +179,8 @@ where ViewModel: BaseSearchViewModel<Item, ItemViewModel> {
return
}
didEnterText = true
searchResultsViewController.searchResultsView.tableView.contentInset = tableViewInsets
searchResultsViewController.searchResultsView.tableView.scrollIndicatorInsets = tableViewInsets
searchResultsController.searchResultsView.tableView.contentInset = tableViewInsets
searchResultsController.searchResultsView.tableView.scrollIndicatorInsets = tableViewInsets
}
}