openlockPPP 1 жил өмнө
parent
commit
726c9e8dbb
19 өөрчлөгдсөн 33 нэмэгдсэн , 1479 устгасан
  1. 33 0
      .gitignore
  2. 0 21
      Pods/RxDataSources/LICENSE.md
  3. 0 170
      Pods/RxDataSources/README.md
  4. 0 29
      Pods/RxDataSources/Sources/RxDataSources/AnimationConfiguration.swift
  5. 0 29
      Pods/RxDataSources/Sources/RxDataSources/Array+Extensions.swift
  6. 0 164
      Pods/RxDataSources/Sources/RxDataSources/CollectionViewSectionedDataSource.swift
  7. 0 36
      Pods/RxDataSources/Sources/RxDataSources/DataSources.swift
  8. 0 21
      Pods/RxDataSources/Sources/RxDataSources/Deprecated.swift
  9. 0 25
      Pods/RxDataSources/Sources/RxDataSources/FloatingPointType+IdentifiableType.swift
  10. 0 59
      Pods/RxDataSources/Sources/RxDataSources/IntegerType+IdentifiableType.swift
  11. 0 101
      Pods/RxDataSources/Sources/RxDataSources/RxCollectionViewSectionedAnimatedDataSource.swift
  12. 0 35
      Pods/RxDataSources/Sources/RxDataSources/RxCollectionViewSectionedReloadDataSource.swift
  13. 0 233
      Pods/RxDataSources/Sources/RxDataSources/RxPickerViewAdapter.swift
  14. 0 133
      Pods/RxDataSources/Sources/RxDataSources/RxTableViewSectionedAnimatedDataSource.swift
  15. 0 33
      Pods/RxDataSources/Sources/RxDataSources/RxTableViewSectionedReloadDataSource.swift
  16. 0 17
      Pods/RxDataSources/Sources/RxDataSources/String+IdentifiableType.swift
  17. 0 222
      Pods/RxDataSources/Sources/RxDataSources/TableViewSectionedDataSource.swift
  18. 0 135
      Pods/RxDataSources/Sources/RxDataSources/UI+SectionedViewType.swift
  19. 0 16
      Pods/RxDataSources/Sources/RxDataSources/ViewTransition.swift

+ 33 - 0
.gitignore

@@ -483,3 +483,36 @@ Pods/Bugly/Bugly.framework/Headers/BuglyLog.h
 Pods/Bugly/Bugly.framework/Modules/module.modulemap
 Pods/Target Support Files/Bugly/Bugly.debug.xcconfig
 Pods/Target Support Files/Bugly/Bugly.release.xcconfig
+Pods/RxDataSources/LICENSE.md
+Pods/RxDataSources/README.md
+Pods/RxDataSources/Sources/RxDataSources/AnimationConfiguration.swift
+Pods/RxDataSources/Sources/RxDataSources/Array+Extensions.swift
+Pods/RxDataSources/Sources/RxDataSources/CollectionViewSectionedDataSource.swift
+Pods/RxDataSources/Sources/RxDataSources/DataSources.swift
+Pods/RxDataSources/Sources/RxDataSources/Deprecated.swift
+Pods/RxDataSources/Sources/RxDataSources/FloatingPointType+IdentifiableType.swift
+Pods/RxDataSources/Sources/RxDataSources/IntegerType+IdentifiableType.swift
+Pods/RxDataSources/Sources/RxDataSources/RxCollectionViewSectionedAnimatedDataSource.swift
+Pods/RxDataSources/Sources/RxDataSources/RxCollectionViewSectionedReloadDataSource.swift
+Pods/RxDataSources/Sources/RxDataSources/RxPickerViewAdapter.swift
+Pods/RxDataSources/Sources/RxDataSources/RxTableViewSectionedAnimatedDataSource.swift
+Pods/RxDataSources/Sources/RxDataSources/RxTableViewSectionedReloadDataSource.swift
+Pods/RxDataSources/Sources/RxDataSources/String+IdentifiableType.swift
+Pods/RxDataSources/Sources/RxDataSources/TableViewSectionedDataSource.swift
+Pods/RxDataSources/Sources/RxDataSources/UI+SectionedViewType.swift
+Pods/RxDataSources/Sources/RxDataSources/ViewTransition.swift
+Pods/Target Support Files/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework-xcframeworks-input-files.xcfilelist
+Pods/Target Support Files/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework-xcframeworks-output-files.xcfilelist
+Pods/Target Support Files/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework-xcframeworks.sh
+Pods/Target Support Files/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.debug.xcconfig
+Pods/Target Support Files/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.release.xcconfig
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/Info.plist
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/README.txt
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_armv7/libWechatOpenSDK.a
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_armv7/Headers/WechatAuthSDK.h
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_armv7/Headers/WXApi.h
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_armv7/Headers/WXApiObject.h
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_i386_x86_64-simulator/libWechatOpenSDK.a
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_i386_x86_64-simulator/Headers/WechatAuthSDK.h
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_i386_x86_64-simulator/Headers/WXApi.h
+Pods/WechatOpenSDK-XCFramework/WechatOpenSDK-XCFramework.xcframework/ios-arm64_i386_x86_64-simulator/Headers/WXApiObject.h

+ 0 - 21
Pods/RxDataSources/LICENSE.md

@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2017 RxSwift Community
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.

+ 0 - 170
Pods/RxDataSources/README.md

@@ -1,170 +0,0 @@
-[![Travis CI](https://travis-ci.org/RxSwiftCommunity/RxDataSources.svg?branch=master)](https://travis-ci.org/RxSwiftCommunity/RxDataSources)
-
-Table and Collection view data sources
-======================================
-
-## Features
-
-- [x] **O(N)** algorithm for calculating differences
-  - the algorithm has the assumption that all sections and items are unique so there is no ambiguity
-  - in case there is ambiguity, fallbacks automagically on non animated refresh
-- [x] it applies additional heuristics to send the least number of commands to sectioned view
-  - even though the running time is linear, preferred number of sent commands is usually a lot less than linear
-  - it is preferred (and possible) to cap the number of changes to some small number, and in case the number of changes grows towards linear, just do normal reload
-- [x] Supports **extending your item and section structures**
-  - just extend your item with `IdentifiableType` and `Equatable`, and your section with `AnimatableSectionModelType`
-- [x] Supports all combinations of two level hierarchical animations for **both sections and items**
-  - Section animations: Insert, Delete, Move
-  - Item animations: Insert, Delete, Move, Reload (if old value is not equal to new value)
-- [x] Configurable animation types for `Insert`, `Reload` and `Delete` (Automatic, Fade, ...)
-- [x] Example app
-- [x] Randomized stress tests (example app)
-- [x] Supports editing out of the box (example app)
-- [x] Works with `UITableView` and `UICollectionView`
-
-## Why
-Writing table and collection view data sources is tedious. There is a large number of delegate methods that need to be implemented for the simplest case possible.
-
-RxSwift helps alleviate some of the burden with a simple data binding mechanism:
-1) Turn your data into an Observable sequence
-2) Bind the data to the tableView/collectionView using one of:
-  - `rx.items(dataSource:protocol<RxTableViewDataSourceType, UITableViewDataSource>)`
-  - `rx.items(cellIdentifier:String)`
-  - `rx.items(cellIdentifier:String:Cell.Type:_:)`
-  - `rx.items(_:_:)`
-
-```swift
-let data = Observable<[String]>.just(["first element", "second element", "third element"])
-
-data.bind(to: tableView.rx.items(cellIdentifier: "Cell")) { index, model, cell in
-  cell.textLabel?.text = model
-}
-.disposed(by: disposeBag)
-```
-
-This works well with simple data sets but does not handle cases where you need to bind complex data sets with multiples sections, or when you need to perform animations when adding/modifying/deleting items.  
-
-These are precisely the use cases that RxDataSources helps solve.
-
-With RxDataSources, it is super easy to just write
-
-```swift
-let dataSource = RxTableViewSectionedReloadDataSource<SectionModel<String, Int>>(configureCell: configureCell)
-Observable.just([SectionModel(model: "title", items: [1, 2, 3])])
-    .bind(to: tableView.rx.items(dataSource: dataSource))
-    .disposed(by: disposeBag)
-```
-![RxDataSources example app](https://raw.githubusercontent.com/kzaher/rxswiftcontent/rxdatasources/RxDataSources.gif)
-
-## How
-Given the following custom data structure:
-```swift
-struct CustomData {
-  var anInt: Int
-  var aString: String
-  var aCGPoint: CGPoint
-}
-```
-
-1) Start by defining your sections with a struct that conforms to the `SectionModelType` protocol:
-  - define the `Item` typealias: equal to the type of items that the section will contain
-  - declare an `items` property: of type array of `Item`
-
-```swift
-struct SectionOfCustomData {
-  var header: String    
-  var items: [Item]
-}
-extension SectionOfCustomData: SectionModelType {
-  typealias Item = CustomData
-
-   init(original: SectionOfCustomData, items: [Item]) {
-    self = original
-    self.items = items
-  }
-}
-```
-
-2) Create a dataSource object and pass it your `SectionOfCustomData` type:
-```swift
-let dataSource = RxTableViewSectionedReloadDataSource<SectionOfCustomData>(
-  configureCell: { dataSource, tableView, indexPath, item in
-    let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
-    cell.textLabel?.text = "Item \(item.anInt): \(item.aString) - \(item.aCGPoint.x):\(item.aCGPoint.y)"
-    return cell
-})
-```
-
-3) Customize closures on the dataSource as needed:
-- `titleForHeaderInSection`
-- `titleForFooterInSection`
-- etc
-
-```swift
-dataSource.titleForHeaderInSection = { dataSource, index in
-  return dataSource.sectionModels[index].header
-}
-
-dataSource.titleForFooterInSection = { dataSource, indexPath in
-  return dataSource.sectionModels[index].footer
-}
-
-dataSource.canEditRowAtIndexPath = { dataSource, indexPath in
-  return true
-}
-
-dataSource.canMoveRowAtIndexPath = { dataSource, indexPath in
-  return true
-}
-```
-
-4) Define the actual data as an Observable sequence of CustomData objects and bind it to the tableView
-```swift
-let sections = [
-  SectionOfCustomData(header: "First section", items: [CustomData(anInt: 0, aString: "zero", aCGPoint: CGPoint.zero), CustomData(anInt: 1, aString: "one", aCGPoint: CGPoint(x: 1, y: 1)) ]),
-  SectionOfCustomData(header: "Second section", items: [CustomData(anInt: 2, aString: "two", aCGPoint: CGPoint(x: 2, y: 2)), CustomData(anInt: 3, aString: "three", aCGPoint: CGPoint(x: 3, y: 3)) ])
-]
-
-Observable.just(sections)
-  .bind(to: tableView.rx.items(dataSource: dataSource))
-  .disposed(by: disposeBag)
-```
-
-### Animated Data Sources
-
-RxDataSources provides two special data source types that automatically take care of animating changes in the bound data source: `RxTableViewSectionedAnimatedDataSource` and `RxCollectionViewSectionedAnimatedDataSource`.
-
-To use one of the two animated data sources, you must take a few extra steps on top of those outlined above:
-
-- SectionOfCustomData needs to conform to `AnimatableSectionModelType`
-- Your data model must conform to
-  * `IdentifiableType`: The `identity` provided by the `IdentifiableType` protocol must be an **immutable identifier representing an instance of the model**. For example, in case of a `Car` model, you might want to use the car's `plateNumber` as its identity.
-  * `Equatable`: Conforming to `Equatable` helps `RxDataSources` determine which cells have changed so it can animate only these specific cells. Meaning, changing **any** of the `Car` model's properties will trigger an animated reload of that cell.
-
-## Requirements
-
-Xcode 10.2
-
-Swift 5.0
-
-For Swift 4.x version please use versions `3.0.0 ... 3.1.0`
-For Swift 3.x version please use versions `1.0 ... 2.0.2`
-For Swift 2.3 version please use versions `0.1 ... 0.9`
-
-## Installation
-
-**We'll try to keep the API as stable as possible, but breaking API changes can occur.**
-
-### CocoaPods
-
-Podfile
-```
-pod 'RxDataSources', '~> 3.0'
-```
-
-### Carthage
-
-Cartfile
-```
-github "RxSwiftCommunity/RxDataSources" ~> 3.0
-```

+ 0 - 29
Pods/RxDataSources/Sources/RxDataSources/AnimationConfiguration.swift

@@ -1,29 +0,0 @@
-//
-//  AnimationConfiguration.swift
-//  RxDataSources
-//
-//  Created by Esteban Torres on 5/2/16.
-//  Copyright © 2016 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-    import Foundation
-    import UIKit
-
-    /**
-     Exposes custom animation styles for insertion, deletion and reloading behavior.
-     */
-    public struct AnimationConfiguration {
-        public let insertAnimation: UITableView.RowAnimation
-        public let reloadAnimation: UITableView.RowAnimation
-        public let deleteAnimation: UITableView.RowAnimation
-
-        public init(insertAnimation: UITableView.RowAnimation = .automatic,
-                    reloadAnimation: UITableView.RowAnimation = .automatic,
-                    deleteAnimation: UITableView.RowAnimation = .automatic) {
-            self.insertAnimation = insertAnimation
-            self.reloadAnimation = reloadAnimation
-            self.deleteAnimation = deleteAnimation
-        }
-    }
-#endif

+ 0 - 29
Pods/RxDataSources/Sources/RxDataSources/Array+Extensions.swift

@@ -1,29 +0,0 @@
-//
-//  Array+Extensions.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 4/26/16.
-//  Copyright © 2016 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-
-extension Array where Element: SectionModelType {
-    mutating func moveFromSourceIndexPath(_ sourceIndexPath: IndexPath, destinationIndexPath: IndexPath) {
-        let sourceSection = self[sourceIndexPath.section]
-        var sourceItems = sourceSection.items
-
-        let sourceItem = sourceItems.remove(at: sourceIndexPath.item)
-
-        let sourceSectionNew = Element(original: sourceSection, items: sourceItems)
-        self[sourceIndexPath.section] = sourceSectionNew
-
-        let destinationSection = self[destinationIndexPath.section]
-        var destinationItems = destinationSection.items
-        destinationItems.insert(sourceItem, at: destinationIndexPath.item)
-
-        self[destinationIndexPath.section] = Element(original: destinationSection, items: destinationItems)
-    }
-}
-#endif

+ 0 - 164
Pods/RxDataSources/Sources/RxDataSources/CollectionViewSectionedDataSource.swift

@@ -1,164 +0,0 @@
-//
-//  CollectionViewSectionedDataSource.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 7/2/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-import RxCocoa
-#endif
-import Differentiator
-    
-open class CollectionViewSectionedDataSource<Section: SectionModelType>
-    : NSObject
-    , UICollectionViewDataSource
-    , SectionedViewDataSourceType {
-    public typealias Item = Section.Item
-    public typealias Section = Section
-    public typealias ConfigureCell = (CollectionViewSectionedDataSource<Section>, UICollectionView, IndexPath, Item) -> UICollectionViewCell
-    public typealias ConfigureSupplementaryView = (CollectionViewSectionedDataSource<Section>, UICollectionView, String, IndexPath) -> UICollectionReusableView
-    public typealias MoveItem = (CollectionViewSectionedDataSource<Section>, _ sourceIndexPath:IndexPath, _ destinationIndexPath:IndexPath) -> Void
-    public typealias CanMoveItemAtIndexPath = (CollectionViewSectionedDataSource<Section>, IndexPath) -> Bool
-
-
-    public init(
-        configureCell: @escaping ConfigureCell,
-        configureSupplementaryView: ConfigureSupplementaryView? = nil,
-        moveItem: @escaping MoveItem = { _, _, _ in () },
-        canMoveItemAtIndexPath: @escaping CanMoveItemAtIndexPath = { _, _ in false }
-    ) {
-        self.configureCell = configureCell
-        self.configureSupplementaryView = configureSupplementaryView
-        self.moveItem = moveItem
-        self.canMoveItemAtIndexPath = canMoveItemAtIndexPath
-    }
-
-    #if DEBUG
-    // If data source has already been bound, then mutating it
-    // afterwards isn't something desired.
-    // This simulates immutability after binding
-    var _dataSourceBound: Bool = false
-
-    private func ensureNotMutatedAfterBinding() {
-        assert(!_dataSourceBound, "Data source is already bound. Please write this line before binding call (`bindTo`, `drive`). Data source must first be completely configured, and then bound after that, otherwise there could be runtime bugs, glitches, or partial malfunctions.")
-    }
-    
-    #endif
-
-    // This structure exists because model can be mutable
-    // In that case current state value should be preserved.
-    // The state that needs to be preserved is ordering of items in section
-    // and their relationship with section.
-    // If particular item is mutable, that is irrelevant for this logic to function
-    // properly.
-    public typealias SectionModelSnapshot = SectionModel<Section, Item>
-    
-    private var _sectionModels: [SectionModelSnapshot] = []
-
-    open var sectionModels: [Section] {
-        return _sectionModels.map { Section(original: $0.model, items: $0.items) }
-    }
-
-    open subscript(section: Int) -> Section {
-        let sectionModel = self._sectionModels[section]
-        return Section(original: sectionModel.model, items: sectionModel.items)
-    }
-    
-    open subscript(indexPath: IndexPath) -> Item {
-        get {
-            return self._sectionModels[indexPath.section].items[indexPath.item]
-        }
-        set(item) {
-            var section = self._sectionModels[indexPath.section]
-            section.items[indexPath.item] = item
-            self._sectionModels[indexPath.section] = section
-        }
-    }
-    
-    open func model(at indexPath: IndexPath) throws -> Any {
-        return self[indexPath]
-    }
-    
-    open func setSections(_ sections: [Section]) {
-        self._sectionModels = sections.map { SectionModelSnapshot(model: $0, items: $0.items) }
-    }
-    
-    open var configureCell: ConfigureCell {
-        didSet {
-            #if DEBUG
-            ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-
-    open var configureSupplementaryView: ConfigureSupplementaryView? {
-        didSet {
-            #if DEBUG
-            ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    
-    open var moveItem: MoveItem {
-        didSet {
-            #if DEBUG
-                ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    open var canMoveItemAtIndexPath: ((CollectionViewSectionedDataSource<Section>, IndexPath) -> Bool)? {
-        didSet {
-            #if DEBUG
-            ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-
-    // UICollectionViewDataSource
-    
-    open func numberOfSections(in collectionView: UICollectionView) -> Int {
-        return _sectionModels.count
-    }
-    
-    open func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
-        return _sectionModels[section].items.count
-    }
-    
-    open func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
-        precondition(indexPath.item < _sectionModels[indexPath.section].items.count)
-        
-        return configureCell(self, collectionView, indexPath, self[indexPath])
-    }
-    
-    open func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
-        return configureSupplementaryView!(self, collectionView, kind, indexPath)
-    }
-    
-    open func collectionView(_ collectionView: UICollectionView, canMoveItemAt indexPath: IndexPath) -> Bool {
-        guard let canMoveItem = canMoveItemAtIndexPath?(self, indexPath) else {
-            return false
-        }
-        
-        return canMoveItem
-    }
-    
-    open func collectionView(_ collectionView: UICollectionView, moveItemAt sourceIndexPath: IndexPath, to destinationIndexPath: IndexPath) {
-        self._sectionModels.moveFromSourceIndexPath(sourceIndexPath, destinationIndexPath: destinationIndexPath)
-        self.moveItem(self, sourceIndexPath, destinationIndexPath)
-    }
-
-    override open func responds(to aSelector: Selector!) -> Bool {
-        if aSelector == #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:)) {
-            return configureSupplementaryView != nil
-        }
-        else {
-            return super.responds(to: aSelector)
-        }
-    }
-}
-#endif

+ 0 - 36
Pods/RxDataSources/Sources/RxDataSources/DataSources.swift

@@ -1,36 +0,0 @@
-//
-//  DataSources.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 1/8/16.
-//  Copyright © 2016 Krunoslav Zaher. All rights reserved.
-//
-
-import Foundation
-
-@_exported import Differentiator
-
-enum RxDataSourceError : Error {
-  case preconditionFailed(message: String)
-}
-
-func rxPrecondition(_ condition: Bool, _ message: @autoclosure() -> String) throws -> () {
-  if condition {
-    return
-  }
-  rxDebugFatalError("Precondition failed")
-
-  throw RxDataSourceError.preconditionFailed(message: message())
-}
-
-func rxDebugFatalError(_ error: Error) {
-  rxDebugFatalError("\(error)")
-}
-
-func rxDebugFatalError(_ message: String) {
-  #if DEBUG
-    fatalError(message)
-  #else
-    print(message)
-  #endif
-}

+ 0 - 21
Pods/RxDataSources/Sources/RxDataSources/Deprecated.swift

@@ -1,21 +0,0 @@
-//
-//  Deprecated.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 10/8/17.
-//  Copyright © 2017 kzaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-extension CollectionViewSectionedDataSource {
-    @available(*, deprecated, renamed: "configureSupplementaryView")
-    public var supplementaryViewFactory: ConfigureSupplementaryView? {
-        get {
-            return self.configureSupplementaryView
-        }
-        set {
-            self.configureSupplementaryView = newValue
-        }
-    }
-}
-#endif

+ 0 - 25
Pods/RxDataSources/Sources/RxDataSources/FloatingPointType+IdentifiableType.swift

@@ -1,25 +0,0 @@
-//
-//  FloatingPointType+IdentifiableType.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 7/4/16.
-//  Copyright © 2016 Krunoslav Zaher. All rights reserved.
-//
-
-import Foundation
-
-extension FloatingPoint {
-    typealias identity = Self
-
-    public var identity: Self {
-        return self
-    }
-}
-
-extension Float : IdentifiableType {
-
-}
-
-extension Double : IdentifiableType {
-
-}

+ 0 - 59
Pods/RxDataSources/Sources/RxDataSources/IntegerType+IdentifiableType.swift

@@ -1,59 +0,0 @@
-//
-//  IntegerType+IdentifiableType.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 7/4/16.
-//  Copyright © 2016 Krunoslav Zaher. All rights reserved.
-//
-
-import Foundation
-
-extension BinaryInteger {
-    typealias identity = Self
-
-    public var identity: Self {
-        return self
-    }
-}
-
-extension Int : IdentifiableType {
-
-}
-
-extension Int8 : IdentifiableType {
-
-}
-
-extension Int16 : IdentifiableType {
-
-}
-
-extension Int32 : IdentifiableType {
-
-}
-
-extension Int64 : IdentifiableType {
-
-}
-
-
-extension UInt : IdentifiableType {
-
-}
-
-extension UInt8 : IdentifiableType {
-
-}
-
-extension UInt16 : IdentifiableType {
-
-}
-
-extension UInt32 : IdentifiableType {
-
-}
-
-extension UInt64 : IdentifiableType {
-    
-}
-

+ 0 - 101
Pods/RxDataSources/Sources/RxDataSources/RxCollectionViewSectionedAnimatedDataSource.swift

@@ -1,101 +0,0 @@
-//
-//  RxCollectionViewSectionedAnimatedDataSource.swift
-//  RxExample
-//
-//  Created by Krunoslav Zaher on 7/2/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-import RxSwift
-import RxCocoa
-#endif
-import Differentiator
-
-open class RxCollectionViewSectionedAnimatedDataSource<Section: AnimatableSectionModelType>
-    : CollectionViewSectionedDataSource<Section>
-    , RxCollectionViewDataSourceType {
-    public typealias Element = [Section]
-    public typealias DecideViewTransition = (CollectionViewSectionedDataSource<Section>, UICollectionView, [Changeset<Section>]) -> ViewTransition
-
-    // animation configuration
-    public var animationConfiguration: AnimationConfiguration
-
-    /// Calculates view transition depending on type of changes
-    public var decideViewTransition: DecideViewTransition
-
-    public init(
-        animationConfiguration: AnimationConfiguration = AnimationConfiguration(),
-        decideViewTransition: @escaping DecideViewTransition = { _, _, _ in .animated },
-        configureCell: @escaping ConfigureCell,
-        configureSupplementaryView: ConfigureSupplementaryView? = nil,
-        moveItem: @escaping MoveItem = { _, _, _ in () },
-        canMoveItemAtIndexPath: @escaping CanMoveItemAtIndexPath = { _, _ in false }
-        ) {
-        self.animationConfiguration = animationConfiguration
-        self.decideViewTransition = decideViewTransition
-        super.init(
-            configureCell: configureCell,
-            configureSupplementaryView: configureSupplementaryView,
-            moveItem: moveItem,
-            canMoveItemAtIndexPath: canMoveItemAtIndexPath
-        )
-    }
-    
-    // there is no longer limitation to load initial sections with reloadData
-    // but it is kept as a feature everyone got used to
-    var dataSet = false
-
-    open func collectionView(_ collectionView: UICollectionView, observedEvent: Event<Element>) {
-        Binder(self) { dataSource, newSections in
-            #if DEBUG
-                dataSource._dataSourceBound = true
-            #endif
-            if !dataSource.dataSet {
-                dataSource.dataSet = true
-                dataSource.setSections(newSections)
-                collectionView.reloadData()
-            }
-            else {
-                // if view is not in view hierarchy, performing batch updates will crash the app
-                if collectionView.window == nil {
-                    dataSource.setSections(newSections)
-                    collectionView.reloadData()
-                    return
-                }
-                let oldSections = dataSource.sectionModels
-                do {
-                    let differences = try Diff.differencesForSectionedView(initialSections: oldSections, finalSections: newSections)
-                    
-                    switch dataSource.decideViewTransition(dataSource, collectionView, differences) {
-                    case .animated:
-                        // each difference must be run in a separate 'performBatchUpdates', otherwise it crashes.
-                        // this is a limitation of Diff tool
-                        for difference in differences {
-                            let updateBlock = {
-                                // sections must be set within updateBlock in 'performBatchUpdates'
-                                dataSource.setSections(difference.finalSections)
-                                collectionView.batchUpdates(difference, animationConfiguration: dataSource.animationConfiguration)
-                            }
-                            collectionView.performBatchUpdates(updateBlock, completion: nil)
-                        }
-                        
-                    case .reload:
-                        dataSource.setSections(newSections)
-                        collectionView.reloadData()
-                        return
-                    }
-                }
-                catch let e {
-                    rxDebugFatalError(e)
-                    dataSource.setSections(newSections)
-                    collectionView.reloadData()
-                }
-            }
-        }.on(observedEvent)
-    }
-}
-#endif

+ 0 - 35
Pods/RxDataSources/Sources/RxDataSources/RxCollectionViewSectionedReloadDataSource.swift

@@ -1,35 +0,0 @@
-//
-//  RxCollectionViewSectionedReloadDataSource.swift
-//  RxExample
-//
-//  Created by Krunoslav Zaher on 7/2/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-import RxSwift
-import RxCocoa
-#endif
-import Differentiator
-
-open class RxCollectionViewSectionedReloadDataSource<Section: SectionModelType>
-    : CollectionViewSectionedDataSource<Section>
-    , RxCollectionViewDataSourceType {
-    
-    public typealias Element = [Section]
-
-    open func collectionView(_ collectionView: UICollectionView, observedEvent: Event<Element>) {
-        Binder(self) { dataSource, element in
-            #if DEBUG
-                dataSource._dataSourceBound = true
-            #endif
-            dataSource.setSections(element)
-            collectionView.reloadData()
-            collectionView.collectionViewLayout.invalidateLayout()
-        }.on(observedEvent)
-    }
-}
-#endif

+ 0 - 233
Pods/RxDataSources/Sources/RxDataSources/RxPickerViewAdapter.swift

@@ -1,233 +0,0 @@
-//
-//  RxPickerViewAdapter.swift
-//  RxDataSources
-//
-//  Created by Sergey Shulga on 04/07/2017.
-//  Copyright © 2017 kzaher. All rights reserved.
-//
-
-#if os(iOS)
-
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-    import RxSwift
-    import RxCocoa
-#endif
-
-/// A reactive UIPickerView adapter which uses `func pickerView(UIPickerView, titleForRow: Int, forComponent: Int)` to display the content
-/**
- Example:
- 
-let adapter = RxPickerViewStringAdapter<[T]>(...)
- 
-items
- .bind(to: firstPickerView.rx.items(adapter: adapter))
- .disposed(by: disposeBag)
- 
- */
-open class RxPickerViewStringAdapter<Components>: RxPickerViewDataSource<Components>, UIPickerViewDelegate {
-    /**
-     - parameter dataSource
-     - parameter pickerView
-     - parameter components
-     - parameter row
-     - parameter component
-    */
-    public typealias TitleForRow = (
-        _ dataSource: RxPickerViewStringAdapter<Components>,
-        _ pickerView: UIPickerView,
-        _ components: Components,
-        _ row: Int,
-        _ component: Int
-    ) -> String?
-    
-    private let titleForRow: TitleForRow
-
-    /**
-     - parameter components: Initial content value.
-     - parameter numberOfComponents: Implementation of corresponding delegate method.
-     - parameter numberOfRowsInComponent: Implementation of corresponding delegate method.
-     - parameter titleForRow: Implementation of corresponding adapter method that converts component to `String`.
-     */
-    public init(components: Components,
-                numberOfComponents: @escaping NumberOfComponents,
-                numberOfRowsInComponent: @escaping NumberOfRowsInComponent,
-                titleForRow: @escaping TitleForRow) {
-        self.titleForRow = titleForRow
-        super.init(components: components,
-                   numberOfComponents: numberOfComponents,
-                   numberOfRowsInComponent: numberOfRowsInComponent)
-    }
-    
-    open func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
-        return titleForRow(self, pickerView, components, row, component)
-    }
-}
-
-/// A reactive UIPickerView adapter which uses `func pickerView(UIPickerView, viewForRow: Int, forComponent: Int, reusing: UIView?)` to display the content
-/**
- Example:
- 
- let adapter = RxPickerViewAttributedStringAdapter<[T]>(...)
- 
- items
- .bind(to: firstPickerView.rx.items(adapter: adapter))
- .disposed(by: disposeBag)
- 
- */
-open class RxPickerViewAttributedStringAdapter<Components>: RxPickerViewDataSource<Components>, UIPickerViewDelegate {
-    /**
-     - parameter dataSource
-     - parameter pickerView
-     - parameter components
-     - parameter row
-     - parameter component
-    */
-    public typealias AttributedTitleForRow = (
-        _ dataSource: RxPickerViewAttributedStringAdapter<Components>,
-        _ pickerView: UIPickerView,
-        _ components: Components,
-        _ row: Int,
-        _ component: Int
-    ) -> NSAttributedString?
-    
-    private let attributedTitleForRow: AttributedTitleForRow
-
-    /**
-     - parameter components: Initial content value.
-     - parameter numberOfComponents: Implementation of corresponding delegate method.
-     - parameter numberOfRowsInComponent: Implementation of corresponding delegate method.
-     - parameter attributedTitleForRow: Implementation of corresponding adapter method that converts component to `NSAttributedString`.
-     */
-    public init(components: Components,
-                numberOfComponents: @escaping NumberOfComponents,
-                numberOfRowsInComponent: @escaping NumberOfRowsInComponent,
-                attributedTitleForRow: @escaping AttributedTitleForRow) {
-        self.attributedTitleForRow = attributedTitleForRow
-        super.init(components: components,
-                   numberOfComponents: numberOfComponents,
-                   numberOfRowsInComponent: numberOfRowsInComponent)
-    }
-    
-    open func pickerView(_ pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? {
-        return attributedTitleForRow(self, pickerView, components, row, component)
-    }
-}
-
-/// A reactive UIPickerView adapter which uses `func pickerView(pickerView:, viewForRow row:, forComponent component:)` to display the content
-/**
- Example:
- 
- let adapter = RxPickerViewViewAdapter<[T]>(...)
- 
- items
- .bind(to: firstPickerView.rx.items(adapter: adapter))
- .disposed(by: disposeBag)
- 
- */
-open class RxPickerViewViewAdapter<Components>: RxPickerViewDataSource<Components>, UIPickerViewDelegate {
-    /**
-     - parameter dataSource
-     - parameter pickerView
-     - parameter components
-     - parameter row
-     - parameter component
-     - parameter view
-    */
-    public typealias ViewForRow = (
-        _ dataSource: RxPickerViewViewAdapter<Components>,
-        _ pickerView: UIPickerView,
-        _ components: Components,
-        _ row: Int,
-        _ component: Int,
-        _ view: UIView?
-    ) -> UIView
-    
-    private let viewForRow: ViewForRow
-
-    /**
-     - parameter components: Initial content value.
-     - parameter numberOfComponents: Implementation of corresponding delegate method.
-     - parameter numberOfRowsInComponent: Implementation of corresponding delegate method.
-     - parameter attributedTitleForRow: Implementation of corresponding adapter method that converts component to `UIView`.
-     */
-    public init(components: Components,
-                numberOfComponents: @escaping NumberOfComponents,
-                numberOfRowsInComponent: @escaping NumberOfRowsInComponent,
-                viewForRow: @escaping ViewForRow) {
-        self.viewForRow = viewForRow
-        super.init(components: components,
-                   numberOfComponents: numberOfComponents,
-                   numberOfRowsInComponent: numberOfRowsInComponent)
-    }
-    
-    open func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
-        return viewForRow(self, pickerView, components, row, component, view)
-    }
-}
-
-/// A reactive UIPickerView data source  
-open class RxPickerViewDataSource<Components>: NSObject, UIPickerViewDataSource {
-    /**
-     - parameter dataSource
-     - parameter pickerView
-     - parameter components
-    */
-    public typealias NumberOfComponents = (
-        _ dataSource: RxPickerViewDataSource,
-        _ pickerView: UIPickerView,
-        _ components: Components) -> Int
-    /**
-     - parameter dataSource
-     - parameter pickerView
-     - parameter components
-     - parameter component
-    */
-    public typealias NumberOfRowsInComponent = (
-        _ dataSource: RxPickerViewDataSource,
-        _ pickerView: UIPickerView,
-        _ components: Components,
-        _ component: Int
-    ) -> Int
-    
-    fileprivate var components: Components
-
-    /**
-     - parameter components: Initial content value.
-     - parameter numberOfComponents: Implementation of corresponding delegate method.
-     - parameter numberOfRowsInComponent: Implementation of corresponding delegate method.
-     */
-    init(components: Components,
-         numberOfComponents: @escaping NumberOfComponents,
-         numberOfRowsInComponent: @escaping NumberOfRowsInComponent) {
-        self.components = components
-        self.numberOfComponents = numberOfComponents
-        self.numberOfRowsInComponent = numberOfRowsInComponent
-        super.init()
-    }
-    
-    private let numberOfComponents: NumberOfComponents
-    private let numberOfRowsInComponent: NumberOfRowsInComponent
-    
-    //MARK: UIPickerViewDataSource
-    
-    public func numberOfComponents(in pickerView: UIPickerView) -> Int {
-        return numberOfComponents(self, pickerView, components)
-    }
-    
-    public func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
-        return numberOfRowsInComponent(self, pickerView, components, component)
-    }
-}
-
-extension RxPickerViewDataSource: RxPickerViewDataSourceType {
-    public func pickerView(_ pickerView: UIPickerView, observedEvent: Event<Components>) {
-        Binder(self) { (dataSource, components) in
-            dataSource.components = components
-            pickerView.reloadAllComponents()
-        }.on(observedEvent)
-    }
-}
-
-#endif

+ 0 - 133
Pods/RxDataSources/Sources/RxDataSources/RxTableViewSectionedAnimatedDataSource.swift

@@ -1,133 +0,0 @@
-//
-//  RxTableViewSectionedAnimatedDataSource.swift
-//  RxExample
-//
-//  Created by Krunoslav Zaher on 6/27/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-import RxSwift
-import RxCocoa
-#endif
-import Differentiator
-
-open class RxTableViewSectionedAnimatedDataSource<Section: AnimatableSectionModelType>
-    : TableViewSectionedDataSource<Section>
-    , RxTableViewDataSourceType {
-    public typealias Element = [Section]
-    public typealias DecideViewTransition = (TableViewSectionedDataSource<Section>, UITableView, [Changeset<Section>]) -> ViewTransition
-
-    /// Animation configuration for data source
-    public var animationConfiguration: AnimationConfiguration
-
-    /// Calculates view transition depending on type of changes
-    public var decideViewTransition: DecideViewTransition
-
-    #if os(iOS)
-        public init(
-                animationConfiguration: AnimationConfiguration = AnimationConfiguration(),
-                decideViewTransition: @escaping DecideViewTransition = { _, _, _ in .animated },
-                configureCell: @escaping ConfigureCell,
-                titleForHeaderInSection: @escaping  TitleForHeaderInSection = { _, _ in nil },
-                titleForFooterInSection: @escaping TitleForFooterInSection = { _, _ in nil },
-                canEditRowAtIndexPath: @escaping CanEditRowAtIndexPath = { _, _ in false },
-                canMoveRowAtIndexPath: @escaping CanMoveRowAtIndexPath = { _, _ in false },
-                sectionIndexTitles: @escaping SectionIndexTitles = { _ in nil },
-                sectionForSectionIndexTitle: @escaping SectionForSectionIndexTitle = { _, _, index in index }
-            ) {
-            self.animationConfiguration = animationConfiguration
-            self.decideViewTransition = decideViewTransition
-            super.init(
-                configureCell: configureCell,
-               titleForHeaderInSection: titleForHeaderInSection,
-               titleForFooterInSection: titleForFooterInSection,
-               canEditRowAtIndexPath: canEditRowAtIndexPath,
-               canMoveRowAtIndexPath: canMoveRowAtIndexPath,
-               sectionIndexTitles: sectionIndexTitles,
-               sectionForSectionIndexTitle: sectionForSectionIndexTitle
-            )
-        }
-    #else
-        public init(
-                animationConfiguration: AnimationConfiguration = AnimationConfiguration(),
-                decideViewTransition: @escaping DecideViewTransition = { _, _, _ in .animated },
-                configureCell: @escaping ConfigureCell,
-                titleForHeaderInSection: @escaping  TitleForHeaderInSection = { _, _ in nil },
-                titleForFooterInSection: @escaping TitleForFooterInSection = { _, _ in nil },
-                canEditRowAtIndexPath: @escaping CanEditRowAtIndexPath = { _, _ in false },
-                canMoveRowAtIndexPath: @escaping CanMoveRowAtIndexPath = { _, _ in false }
-            ) {
-            self.animationConfiguration = animationConfiguration
-            self.decideViewTransition = decideViewTransition
-            super.init(
-                configureCell: configureCell,
-               titleForHeaderInSection: titleForHeaderInSection,
-               titleForFooterInSection: titleForFooterInSection,
-               canEditRowAtIndexPath: canEditRowAtIndexPath,
-               canMoveRowAtIndexPath: canMoveRowAtIndexPath
-            )
-        }
-    #endif
-
-    var dataSet = false
-
-    open func tableView(_ tableView: UITableView, observedEvent: Event<Element>) {
-        Binder(self) { dataSource, newSections in
-            #if DEBUG
-                dataSource._dataSourceBound = true
-            #endif
-            if !dataSource.dataSet {
-                dataSource.dataSet = true
-                dataSource.setSections(newSections)
-                tableView.reloadData()
-            }
-            else {
-                // if view is not in view hierarchy, performing batch updates will crash the app
-                if tableView.window == nil {
-                    dataSource.setSections(newSections)
-                    tableView.reloadData()
-                    return
-                }
-                let oldSections = dataSource.sectionModels
-                do {
-                    let differences = try Diff.differencesForSectionedView(initialSections: oldSections, finalSections: newSections)
-                    
-                    switch dataSource.decideViewTransition(dataSource, tableView, differences) {
-                    case .animated:
-                        // each difference must be run in a separate 'performBatchUpdates', otherwise it crashes.
-                        // this is a limitation of Diff tool
-                        for difference in differences {
-                            let updateBlock = {
-                                // sections must be set within updateBlock in 'performBatchUpdates'
-                                dataSource.setSections(difference.finalSections)
-                                tableView.batchUpdates(difference, animationConfiguration: dataSource.animationConfiguration)
-                            }
-                            if #available(iOS 11, tvOS 11, *) {
-                                tableView.performBatchUpdates(updateBlock, completion: nil)
-                            } else {
-                                tableView.beginUpdates()
-                                updateBlock()
-                                tableView.endUpdates()
-                            }
-                        }
-                        
-                    case .reload:
-                        dataSource.setSections(newSections)
-                        tableView.reloadData()
-                        return
-                    }
-                }
-                catch let e {
-                    rxDebugFatalError(e)
-                    dataSource.setSections(newSections)
-                    tableView.reloadData()
-                }
-            }
-        }.on(observedEvent)
-    }
-}
-#endif

+ 0 - 33
Pods/RxDataSources/Sources/RxDataSources/RxTableViewSectionedReloadDataSource.swift

@@ -1,33 +0,0 @@
-//
-//  RxTableViewSectionedReloadDataSource.swift
-//  RxExample
-//
-//  Created by Krunoslav Zaher on 6/27/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-import RxSwift
-import RxCocoa
-#endif
-import Differentiator
-
-open class RxTableViewSectionedReloadDataSource<Section: SectionModelType>
-    : TableViewSectionedDataSource<Section>
-    , RxTableViewDataSourceType {
-    public typealias Element = [Section]
-
-    open func tableView(_ tableView: UITableView, observedEvent: Event<Element>) {
-        Binder(self) { dataSource, element in
-            #if DEBUG
-                dataSource._dataSourceBound = true
-            #endif
-            dataSource.setSections(element)
-            tableView.reloadData()
-        }.on(observedEvent)
-    }
-}
-#endif

+ 0 - 17
Pods/RxDataSources/Sources/RxDataSources/String+IdentifiableType.swift

@@ -1,17 +0,0 @@
-//
-//  String+IdentifiableType.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 7/4/16.
-//  Copyright © 2016 Krunoslav Zaher. All rights reserved.
-//
-
-import Foundation
-
-extension String : IdentifiableType {
-    public typealias Identity = String
-
-    public var identity: String {
-        return self
-    }
-}

+ 0 - 222
Pods/RxDataSources/Sources/RxDataSources/TableViewSectionedDataSource.swift

@@ -1,222 +0,0 @@
-//
-//  TableViewSectionedDataSource.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 6/15/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-#if !RX_NO_MODULE
-import RxCocoa
-#endif
-import Differentiator
-
-open class TableViewSectionedDataSource<Section: SectionModelType>
-    : NSObject
-    , UITableViewDataSource
-    , SectionedViewDataSourceType {
-    
-    public typealias Item = Section.Item
-
-    public typealias ConfigureCell = (TableViewSectionedDataSource<Section>, UITableView, IndexPath, Item) -> UITableViewCell
-    public typealias TitleForHeaderInSection = (TableViewSectionedDataSource<Section>, Int) -> String?
-    public typealias TitleForFooterInSection = (TableViewSectionedDataSource<Section>, Int) -> String?
-    public typealias CanEditRowAtIndexPath = (TableViewSectionedDataSource<Section>, IndexPath) -> Bool
-    public typealias CanMoveRowAtIndexPath = (TableViewSectionedDataSource<Section>, IndexPath) -> Bool
-
-    #if os(iOS)
-        public typealias SectionIndexTitles = (TableViewSectionedDataSource<Section>) -> [String]?
-        public typealias SectionForSectionIndexTitle = (TableViewSectionedDataSource<Section>, _ title: String, _ index: Int) -> Int
-    #endif
-
-    #if os(iOS)
-        public init(
-                configureCell: @escaping ConfigureCell,
-                titleForHeaderInSection: @escaping  TitleForHeaderInSection = { _, _ in nil },
-                titleForFooterInSection: @escaping TitleForFooterInSection = { _, _ in nil },
-                canEditRowAtIndexPath: @escaping CanEditRowAtIndexPath = { _, _ in false },
-                canMoveRowAtIndexPath: @escaping CanMoveRowAtIndexPath = { _, _ in false },
-                sectionIndexTitles: @escaping SectionIndexTitles = { _ in nil },
-                sectionForSectionIndexTitle: @escaping SectionForSectionIndexTitle = { _, _, index in index }
-            ) {
-            self.configureCell = configureCell
-            self.titleForHeaderInSection = titleForHeaderInSection
-            self.titleForFooterInSection = titleForFooterInSection
-            self.canEditRowAtIndexPath = canEditRowAtIndexPath
-            self.canMoveRowAtIndexPath = canMoveRowAtIndexPath
-            self.sectionIndexTitles = sectionIndexTitles
-            self.sectionForSectionIndexTitle = sectionForSectionIndexTitle
-        }
-    #else
-        public init(
-                configureCell: @escaping ConfigureCell,
-                titleForHeaderInSection: @escaping  TitleForHeaderInSection = { _, _ in nil },
-                titleForFooterInSection: @escaping TitleForFooterInSection = { _, _ in nil },
-                canEditRowAtIndexPath: @escaping CanEditRowAtIndexPath = { _, _ in false },
-                canMoveRowAtIndexPath: @escaping CanMoveRowAtIndexPath = { _, _ in false }
-            ) {
-            self.configureCell = configureCell
-            self.titleForHeaderInSection = titleForHeaderInSection
-            self.titleForFooterInSection = titleForFooterInSection
-            self.canEditRowAtIndexPath = canEditRowAtIndexPath
-            self.canMoveRowAtIndexPath = canMoveRowAtIndexPath
-        }
-    #endif
-
-    #if DEBUG
-    // If data source has already been bound, then mutating it
-    // afterwards isn't something desired.
-    // This simulates immutability after binding
-    var _dataSourceBound: Bool = false
-
-    private func ensureNotMutatedAfterBinding() {
-        assert(!_dataSourceBound, "Data source is already bound. Please write this line before binding call (`bindTo`, `drive`). Data source must first be completely configured, and then bound after that, otherwise there could be runtime bugs, glitches, or partial malfunctions.")
-    }
-    
-    #endif
-
-    // This structure exists because model can be mutable
-    // In that case current state value should be preserved.
-    // The state that needs to be preserved is ordering of items in section
-    // and their relationship with section.
-    // If particular item is mutable, that is irrelevant for this logic to function
-    // properly.
-    public typealias SectionModelSnapshot = SectionModel<Section, Item>
-    
-    private var _sectionModels: [SectionModelSnapshot] = []
-
-    open var sectionModels: [Section] {
-        return _sectionModels.map { Section(original: $0.model, items: $0.items) }
-    }
-
-    open subscript(section: Int) -> Section {
-        let sectionModel = self._sectionModels[section]
-        return Section(original: sectionModel.model, items: sectionModel.items)
-    }
-
-    open subscript(indexPath: IndexPath) -> Item {
-        get {
-            return self._sectionModels[indexPath.section].items[indexPath.item]
-        }
-        set(item) {
-            var section = self._sectionModels[indexPath.section]
-            section.items[indexPath.item] = item
-            self._sectionModels[indexPath.section] = section
-        }
-    }
-
-    open func model(at indexPath: IndexPath) throws -> Any {
-        return self[indexPath]
-    }
-
-    open func setSections(_ sections: [Section]) {
-        self._sectionModels = sections.map { SectionModelSnapshot(model: $0, items: $0.items) }
-    }
-
-    open var configureCell: ConfigureCell {
-        didSet {
-            #if DEBUG
-                ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    
-    open var titleForHeaderInSection: TitleForHeaderInSection {
-        didSet {
-            #if DEBUG
-                ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    open var titleForFooterInSection: TitleForFooterInSection {
-        didSet {
-            #if DEBUG
-                ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    
-    open var canEditRowAtIndexPath: CanEditRowAtIndexPath {
-        didSet {
-            #if DEBUG
-                ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    open var canMoveRowAtIndexPath: CanMoveRowAtIndexPath {
-        didSet {
-            #if DEBUG
-                ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-
-    #if os(iOS)
-    open var sectionIndexTitles: SectionIndexTitles {
-        didSet {
-            #if DEBUG
-            ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    open var sectionForSectionIndexTitle: SectionForSectionIndexTitle {
-        didSet {
-            #if DEBUG
-            ensureNotMutatedAfterBinding()
-            #endif
-        }
-    }
-    #endif
-    
-
-    // UITableViewDataSource
-    
-    open func numberOfSections(in tableView: UITableView) -> Int {
-        return _sectionModels.count
-    }
-    
-    open func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
-        guard _sectionModels.count > section else { return 0 }
-        return _sectionModels[section].items.count
-    }
-    
-    open func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
-        precondition(indexPath.item < _sectionModels[indexPath.section].items.count)
-        
-        return configureCell(self, tableView, indexPath, self[indexPath])
-    }
-    
-    open func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
-        return titleForHeaderInSection(self, section)
-    }
-   
-    open func tableView(_ tableView: UITableView, titleForFooterInSection section: Int) -> String? {
-        return titleForFooterInSection(self, section)
-    }
-    
-    open func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool {
-        return canEditRowAtIndexPath(self, indexPath)
-    }
-   
-    open func tableView(_ tableView: UITableView, canMoveRowAt indexPath: IndexPath) -> Bool {
-        return canMoveRowAtIndexPath(self, indexPath)
-    }
-
-    open func tableView(_ tableView: UITableView, moveRowAt sourceIndexPath: IndexPath, to destinationIndexPath: IndexPath) {
-        self._sectionModels.moveFromSourceIndexPath(sourceIndexPath, destinationIndexPath: destinationIndexPath)
-    }
-
-    #if os(iOS)
-    open func sectionIndexTitles(for tableView: UITableView) -> [String]? {
-        return sectionIndexTitles(self)
-    }
-    
-    open func tableView(_ tableView: UITableView, sectionForSectionIndexTitle title: String, at index: Int) -> Int {
-        return sectionForSectionIndexTitle(self, title, index)
-    }
-    #endif
-}
-#endif

+ 0 - 135
Pods/RxDataSources/Sources/RxDataSources/UI+SectionedViewType.swift

@@ -1,135 +0,0 @@
-//
-//  UI+SectionedViewType.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 6/27/15.
-//  Copyright © 2015 Krunoslav Zaher. All rights reserved.
-//
-
-#if os(iOS) || os(tvOS)
-import Foundation
-import UIKit
-import Differentiator
-
-func indexSet(_ values: [Int]) -> IndexSet {
-    let indexSet = NSMutableIndexSet()
-    for i in values {
-        indexSet.add(i)
-    }
-    return indexSet as IndexSet
-}
-
-extension UITableView : SectionedViewType {
-  
-    public func insertItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation) {
-        self.insertRows(at: paths, with: animationStyle)
-    }
-    
-    public func deleteItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation) {
-        self.deleteRows(at: paths, with: animationStyle)
-    }
-    
-    public func moveItemAtIndexPath(_ from: IndexPath, to: IndexPath) {
-        self.moveRow(at: from, to: to)
-    }
-    
-    public func reloadItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation) {
-        self.reloadRows(at: paths, with: animationStyle)
-    }
-    
-    public func insertSections(_ sections: [Int], animationStyle: UITableView.RowAnimation) {
-        self.insertSections(indexSet(sections), with: animationStyle)
-    }
-    
-    public func deleteSections(_ sections: [Int], animationStyle: UITableView.RowAnimation) {
-        self.deleteSections(indexSet(sections), with: animationStyle)
-    }
-    
-    public func moveSection(_ from: Int, to: Int) {
-        self.moveSection(from, toSection: to)
-    }
-    
-    public func reloadSections(_ sections: [Int], animationStyle: UITableView.RowAnimation) {
-        self.reloadSections(indexSet(sections), with: animationStyle)
-    }
-}
-
-extension UICollectionView : SectionedViewType {
-    public func insertItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation) {
-        self.insertItems(at: paths)
-    }
-    
-    public func deleteItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation) {
-        self.deleteItems(at: paths)
-    }
-
-    public func moveItemAtIndexPath(_ from: IndexPath, to: IndexPath) {
-        self.moveItem(at: from, to: to)
-    }
-    
-    public func reloadItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation) {
-        self.reloadItems(at: paths)
-    }
-    
-    public func insertSections(_ sections: [Int], animationStyle: UITableView.RowAnimation) {
-        self.insertSections(indexSet(sections))
-    }
-    
-    public func deleteSections(_ sections: [Int], animationStyle: UITableView.RowAnimation) {
-        self.deleteSections(indexSet(sections))
-    }
-    
-    public func moveSection(_ from: Int, to: Int) {
-        self.moveSection(from, toSection: to)
-    }
-    
-    public func reloadSections(_ sections: [Int], animationStyle: UITableView.RowAnimation) {
-        self.reloadSections(indexSet(sections))
-    }
-}
-
-public protocol SectionedViewType {
-    func insertItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation)
-    func deleteItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation)
-    func moveItemAtIndexPath(_ from: IndexPath, to: IndexPath)
-    func reloadItemsAtIndexPaths(_ paths: [IndexPath], animationStyle: UITableView.RowAnimation)
-    
-    func insertSections(_ sections: [Int], animationStyle: UITableView.RowAnimation)
-    func deleteSections(_ sections: [Int], animationStyle: UITableView.RowAnimation)
-    func moveSection(_ from: Int, to: Int)
-    func reloadSections(_ sections: [Int], animationStyle: UITableView.RowAnimation)
-}
-
-extension SectionedViewType {
-    public func batchUpdates<Section>(_ changes: Changeset<Section>, animationConfiguration: AnimationConfiguration) {
-        typealias Item = Section.Item
-        
-        deleteSections(changes.deletedSections, animationStyle: animationConfiguration.deleteAnimation)
-        
-        insertSections(changes.insertedSections, animationStyle: animationConfiguration.insertAnimation)
-        for (from, to) in changes.movedSections {
-            moveSection(from, to: to)
-        }
-        
-        deleteItemsAtIndexPaths(
-            changes.deletedItems.map { IndexPath(item: $0.itemIndex, section: $0.sectionIndex) },
-            animationStyle: animationConfiguration.deleteAnimation
-        )
-        insertItemsAtIndexPaths(
-            changes.insertedItems.map { IndexPath(item: $0.itemIndex, section: $0.sectionIndex) },
-            animationStyle: animationConfiguration.insertAnimation
-        )
-        reloadItemsAtIndexPaths(
-            changes.updatedItems.map { IndexPath(item: $0.itemIndex, section: $0.sectionIndex) },
-            animationStyle: animationConfiguration.reloadAnimation
-        )
-        
-        for (from, to) in changes.movedItems {
-            moveItemAtIndexPath(
-                IndexPath(item: from.itemIndex, section: from.sectionIndex),
-                to: IndexPath(item: to.itemIndex, section: to.sectionIndex)
-            )
-        }
-    }
-}
-#endif

+ 0 - 16
Pods/RxDataSources/Sources/RxDataSources/ViewTransition.swift

@@ -1,16 +0,0 @@
-//
-//  ViewTransition.swift
-//  RxDataSources
-//
-//  Created by Krunoslav Zaher on 10/22/17.
-//  Copyright © 2017 kzaher. All rights reserved.
-//
-
-/// Transition between two view states
-public enum ViewTransition {
-    /// animated transition
-    case animated
-    /// refresh view without animations
-    case reload
-}
-