diff --git a/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..919434a
--- /dev/null
+++ b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/LiveCollectionsFramework/LiveCollections/Info.plist b/Info.plist
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Info.plist
rename to Info.plist
diff --git a/LiveCollectionsFramework/LiveCollections.xcodeproj/project.pbxproj b/LiveCollections.xcodeproj/project.pbxproj
similarity index 98%
rename from LiveCollectionsFramework/LiveCollections.xcodeproj/project.pbxproj
rename to LiveCollections.xcodeproj/project.pbxproj
index d9e828d..d83f191 100644
--- a/LiveCollectionsFramework/LiveCollections.xcodeproj/project.pbxproj
+++ b/LiveCollections.xcodeproj/project.pbxproj
@@ -72,10 +72,10 @@
F4B9013E2133A2A400E3B51C /* AnyDeltaUpdatableViewDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnyDeltaUpdatableViewDelegate.swift; sourceTree = ""; };
F4D772DF20FBC4BE002F1C43 /* LiveCollections.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = LiveCollections.framework; sourceTree = BUILT_PRODUCTS_DIR; };
F4D772E220FBC4BE002F1C43 /* LiveCollections.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LiveCollections.h; sourceTree = ""; };
- F4D772E320FBC4BE002F1C43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ F4D772E320FBC4BE002F1C43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = ../../Info.plist; sourceTree = ""; };
F4D772E820FBC4BF002F1C43 /* LiveCollectionsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = LiveCollectionsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
F4D772ED20FBC4BF002F1C43 /* LiveCollectionsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveCollectionsTests.swift; sourceTree = ""; };
- F4D772EF20FBC4BF002F1C43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ F4D772EF20FBC4BF002F1C43 /* Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Tests-Info.plist"; path = "../../Tests-Info.plist"; sourceTree = ""; };
F4D772FB20FBC4E7002F1C43 /* DataProviderProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataProviderProtocols.swift; sourceTree = ""; };
F4D7730020FBC4E7002F1C43 /* SectionDataCalculator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SectionDataCalculator.swift; sourceTree = ""; };
F4D7730320FBC4E7002F1C43 /* SectionUpdate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SectionUpdate.swift; sourceTree = ""; };
@@ -175,7 +175,8 @@
F4D772E220FBC4BE002F1C43 /* LiveCollections.h */,
F4D772F920FBC4E7002F1C43 /* Classes */,
);
- path = LiveCollections;
+ name = LiveCollections;
+ path = Sources/LiveCollections;
sourceTree = "";
};
F4D772EC20FBC4BF002F1C43 /* LiveCollectionsTests */ = {
@@ -183,9 +184,10 @@
children = (
F4847DF92137C89400859EFF /* ItemDeltaTests */,
F4D772ED20FBC4BF002F1C43 /* LiveCollectionsTests.swift */,
- F4D772EF20FBC4BF002F1C43 /* Info.plist */,
+ F4D772EF20FBC4BF002F1C43 /* Tests-Info.plist */,
);
- path = LiveCollectionsTests;
+ name = LiveCollectionsTests;
+ path = Sources/LiveCollectionsTests;
sourceTree = "";
};
F4D772F920FBC4E7002F1C43 /* Classes */ = {
@@ -618,7 +620,7 @@
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
- INFOPLIST_FILE = LiveCollections/Info.plist;
+ INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = (
@@ -646,7 +648,7 @@
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
- INFOPLIST_FILE = LiveCollections/Info.plist;
+ INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = (
@@ -669,7 +671,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = E7MUW2QU95;
- INFOPLIST_FILE = LiveCollectionsTests/Info.plist;
+ INFOPLIST_FILE = "Tests-Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -688,7 +690,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = E7MUW2QU95;
- INFOPLIST_FILE = LiveCollectionsTests/Info.plist;
+ INFOPLIST_FILE = "Tests-Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
diff --git a/LiveCollectionsFramework/LiveCollections.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/LiveCollections.xcodeproj/project.xcworkspace/contents.xcworkspacedata
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections.xcodeproj/project.xcworkspace/contents.xcworkspacedata
rename to LiveCollections.xcodeproj/project.xcworkspace/contents.xcworkspacedata
diff --git a/LiveCollectionsFramework/LiveCollections.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/LiveCollections.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
rename to LiveCollections.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
diff --git a/LiveCollectionsFramework/LiveCollections.xcodeproj/xcshareddata/xcschemes/LiveCollections.xcscheme b/LiveCollections.xcodeproj/xcshareddata/xcschemes/LiveCollections.xcscheme
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections.xcodeproj/xcshareddata/xcschemes/LiveCollections.xcscheme
rename to LiveCollections.xcodeproj/xcshareddata/xcschemes/LiveCollections.xcscheme
diff --git a/LiveCollections.xcworkspace/contents.xcworkspacedata b/LiveCollections.xcworkspace/contents.xcworkspacedata
index 2079013..86f8c46 100644
--- a/LiveCollections.xcworkspace/contents.xcworkspacedata
+++ b/LiveCollections.xcworkspace/contents.xcworkspacedata
@@ -2,7 +2,7 @@
+ location = "group:LiveCollections.xcodeproj">
diff --git a/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/project.pbxproj b/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/project.pbxproj
index 46b5e49..0323e8d 100644
--- a/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/project.pbxproj
+++ b/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/project.pbxproj
@@ -373,7 +373,7 @@
F4D7737D20FC5D34002F1C43 /* DataCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4D7737C20FC5D34002F1C43 /* DataCoordinator.swift */; };
F4D7737F20FC5F14002F1C43 /* PresentationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4D7737E20FC5F14002F1C43 /* PresentationView.swift */; };
F4D7738820FC64FD002F1C43 /* MovieCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4D7738720FC64FD002F1C43 /* MovieCollectionViewCell.swift */; };
- F4D7738A20FD057C002F1C43 /* ResuableViewProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4D7738920FD057C002F1C43 /* ResuableViewProtocol.swift */; };
+ F4D7738A20FD057C002F1C43 /* ResuableViewHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4D7738920FD057C002F1C43 /* ResuableViewHelper.swift */; };
F4F2054521727B9A00C211AB /* ScenarioThirteenViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4F2054421727B9A00C211AB /* ScenarioThirteenViewController.swift */; };
F4F205562172D24800C211AB /* ScenarioFourteenViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4F205552172D24800C211AB /* ScenarioFourteenViewController.swift */; };
F4F2055A2173391B00C211AB /* ScenarioFifteenViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4F205592173391B00C211AB /* ScenarioFifteenViewController.swift */; };
@@ -763,7 +763,7 @@
F4D7737C20FC5D34002F1C43 /* DataCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataCoordinator.swift; sourceTree = ""; };
F4D7737E20FC5F14002F1C43 /* PresentationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PresentationView.swift; sourceTree = ""; };
F4D7738720FC64FD002F1C43 /* MovieCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovieCollectionViewCell.swift; sourceTree = ""; };
- F4D7738920FD057C002F1C43 /* ResuableViewProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResuableViewProtocol.swift; sourceTree = ""; };
+ F4D7738920FD057C002F1C43 /* ResuableViewHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResuableViewHelper.swift; sourceTree = ""; };
F4F2054421727B9A00C211AB /* ScenarioThirteenViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScenarioThirteenViewController.swift; sourceTree = ""; };
F4F205552172D24800C211AB /* ScenarioFourteenViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScenarioFourteenViewController.swift; sourceTree = ""; };
F4F205592173391B00C211AB /* ScenarioFifteenViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScenarioFifteenViewController.swift; sourceTree = ""; };
@@ -1265,7 +1265,7 @@
children = (
F4D7737A20FC57B5002F1C43 /* PlayerControl.swift */,
F4D7737E20FC5F14002F1C43 /* PresentationView.swift */,
- F4D7738920FD057C002F1C43 /* ResuableViewProtocol.swift */,
+ F4D7738920FD057C002F1C43 /* ResuableViewHelper.swift */,
F4D7738720FC64FD002F1C43 /* MovieCollectionViewCell.swift */,
F4B0F796213DA45400179029 /* MovieTableViewCell.swift */,
F454C230212A4CFB0018DC6E /* CarouselTableViewCell.swift */,
@@ -1709,7 +1709,7 @@
F4D7738820FC64FD002F1C43 /* MovieCollectionViewCell.swift in Sources */,
F4B0F794213DA04600179029 /* ScenarioSixViewController.swift in Sources */,
F4AE4CEC21063CC2000205E1 /* ScenarioSevenViewController.swift in Sources */,
- F4D7738A20FD057C002F1C43 /* ResuableViewProtocol.swift in Sources */,
+ F4D7738A20FD057C002F1C43 /* ResuableViewHelper.swift in Sources */,
F4AE4CEA2105911E000205E1 /* ScenarioFourViewController.swift in Sources */,
F4AE4CEF21063D14000205E1 /* CarouselController.swift in Sources */,
F4D7735720FC148E002F1C43 /* APIClient.swift in Sources */,
diff --git a/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/xcshareddata/xcschemes/LiveCollectionsSample.xcscheme b/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/xcshareddata/xcschemes/LiveCollectionsSample.xcscheme
new file mode 100644
index 0000000..982e7aa
--- /dev/null
+++ b/LiveCollectionsSample/LiveCollectionsSample.xcodeproj/xcshareddata/xcschemes/LiveCollectionsSample.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/LiveCollectionsSample/LiveCollectionsSample/Source/Shared Views/ResuableViewProtocol.swift b/LiveCollectionsSample/LiveCollectionsSample/Source/Shared Views/ResuableViewHelper.swift
similarity index 58%
rename from LiveCollectionsSample/LiveCollectionsSample/Source/Shared Views/ResuableViewProtocol.swift
rename to LiveCollectionsSample/LiveCollectionsSample/Source/Shared Views/ResuableViewHelper.swift
index e6a86b6..b3774c8 100644
--- a/LiveCollectionsSample/LiveCollectionsSample/Source/Shared Views/ResuableViewProtocol.swift
+++ b/LiveCollectionsSample/LiveCollectionsSample/Source/Shared Views/ResuableViewHelper.swift
@@ -1,5 +1,5 @@
//
-// ResuableViewProtocol.swift
+// ResuableViewHelper.swift
// LiveCollectionsSample
//
// Created by Paris Pinkney on 7/7/16.
@@ -8,17 +8,13 @@
import UIKit
-protocol ReusableViewProtocol: class {
- static var reuseIdentifier: String { get }
-}
-
-extension UITableViewCell: ReusableViewProtocol {
+extension UITableViewCell {
static var reuseIdentifier: String {
return String(describing: self)
}
}
-extension UICollectionReusableView: ReusableViewProtocol {
+extension UICollectionReusableView {
static var reuseIdentifier: String {
return String(describing: self)
}
diff --git a/Package.swift b/Package.swift
new file mode 100644
index 0000000..0560cc2
--- /dev/null
+++ b/Package.swift
@@ -0,0 +1,29 @@
+// swift-tools-version:5.3
+
+import PackageDescription
+
+let package = Package(
+ name: "LiveCollections",
+ platforms: [
+ .iOS(.v9),
+ ],
+ products: [
+ .library(
+ name: "LiveCollections",
+ type: .static,
+ targets: ["LiveCollections"]),
+ ],
+ dependencies: [],
+ targets: [
+ .target(
+ name: "LiveCollections",
+ dependencies: [],
+ resources: [
+ .process("LICENSE")
+ ]),
+ .testTarget(
+ name: "LiveCollectionsTests",
+ dependencies: ["LiveCollections"]),
+
+ ]
+)
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/AnyProtocols/AnyCollectionDataDeletionNotificationDelegate.swift b/Sources/LiveCollections/Classes/Internal/AnyProtocols/AnyCollectionDataDeletionNotificationDelegate.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/AnyProtocols/AnyCollectionDataDeletionNotificationDelegate.swift
rename to Sources/LiveCollections/Classes/Internal/AnyProtocols/AnyCollectionDataDeletionNotificationDelegate.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/AnyProtocols/AnyDeltaUpdatableViewDelegate.swift b/Sources/LiveCollections/Classes/Internal/AnyProtocols/AnyDeltaUpdatableViewDelegate.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/AnyProtocols/AnyDeltaUpdatableViewDelegate.swift
rename to Sources/LiveCollections/Classes/Internal/AnyProtocols/AnyDeltaUpdatableViewDelegate.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/AnyProtocols/AnyUniquelyIdentifiableDataFactory.swift b/Sources/LiveCollections/Classes/Internal/AnyProtocols/AnyUniquelyIdentifiableDataFactory.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/AnyProtocols/AnyUniquelyIdentifiableDataFactory.swift
rename to Sources/LiveCollections/Classes/Internal/AnyProtocols/AnyUniquelyIdentifiableDataFactory.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/AllSectionsCustomAnimationStyleTableView.swift b/Sources/LiveCollections/Classes/Internal/Custom TableView Animations/AllSectionsCustomAnimationStyleTableView.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/AllSectionsCustomAnimationStyleTableView.swift
rename to Sources/LiveCollections/Classes/Internal/Custom TableView Animations/AllSectionsCustomAnimationStyleTableView.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/CustomAnimationStyleTableView.swift b/Sources/LiveCollections/Classes/Internal/Custom TableView Animations/CustomAnimationStyleTableView.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/CustomAnimationStyleTableView.swift
rename to Sources/LiveCollections/Classes/Internal/Custom TableView Animations/CustomAnimationStyleTableView.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/MultiSectionCustomAnimationStyleTableView.swift b/Sources/LiveCollections/Classes/Internal/Custom TableView Animations/MultiSectionCustomAnimationStyleTableView.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/MultiSectionCustomAnimationStyleTableView.swift
rename to Sources/LiveCollections/Classes/Internal/Custom TableView Animations/MultiSectionCustomAnimationStyleTableView.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/SingleSectionCustomAnimationStyleTableView.swift b/Sources/LiveCollections/Classes/Internal/Custom TableView Animations/SingleSectionCustomAnimationStyleTableView.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/SingleSectionCustomAnimationStyleTableView.swift
rename to Sources/LiveCollections/Classes/Internal/Custom TableView Animations/SingleSectionCustomAnimationStyleTableView.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/TableViewSingleSectionAnimationProviding.swift b/Sources/LiveCollections/Classes/Internal/Custom TableView Animations/TableViewSingleSectionAnimationProviding.swift
similarity index 99%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/TableViewSingleSectionAnimationProviding.swift
rename to Sources/LiveCollections/Classes/Internal/Custom TableView Animations/TableViewSingleSectionAnimationProviding.swift
index bdcba84..93288b4 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Custom TableView Animations/TableViewSingleSectionAnimationProviding.swift
+++ b/Sources/LiveCollections/Classes/Internal/Custom TableView Animations/TableViewSingleSectionAnimationProviding.swift
@@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//
-import Foundation
+import UIKit
protocol TableViewSingleSectionProviding {
var section: Int { get }
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/DataProviderProtocols.swift b/Sources/LiveCollections/Classes/Internal/DataProviderProtocols.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/DataProviderProtocols.swift
rename to Sources/LiveCollections/Classes/Internal/DataProviderProtocols.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/DeltaCalculator.swift b/Sources/LiveCollections/Classes/Internal/DeltaCalculator.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/DeltaCalculator.swift
rename to Sources/LiveCollections/Classes/Internal/DeltaCalculator.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/Extensions/DispatchQueue+Extensions.swift b/Sources/LiveCollections/Classes/Internal/Extensions/DispatchQueue+Extensions.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/Extensions/DispatchQueue+Extensions.swift
rename to Sources/LiveCollections/Classes/Internal/Extensions/DispatchQueue+Extensions.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/ItemDataCalculator.swift b/Sources/LiveCollections/Classes/Internal/ItemDataCalculator.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/ItemDataCalculator.swift
rename to Sources/LiveCollections/Classes/Internal/ItemDataCalculator.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Internal/SectionDataCalculator.swift b/Sources/LiveCollections/Classes/Internal/SectionDataCalculator.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Internal/SectionDataCalculator.swift
rename to Sources/LiveCollections/Classes/Internal/SectionDataCalculator.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/CollectionData.swift b/Sources/LiveCollections/Classes/Public/CollectionData.swift
similarity index 99%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/CollectionData.swift
rename to Sources/LiveCollections/Classes/Public/CollectionData.swift
index 63fc6b1..fda3784 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Public/CollectionData.swift
+++ b/Sources/LiveCollections/Classes/Public/CollectionData.swift
@@ -6,7 +6,7 @@
// Copyright © 2017 Scribd. All rights reserved.
//
-import Foundation
+import UIKit
/**
This is a tool for the most common case:
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/CollectionSectionData.swift b/Sources/LiveCollections/Classes/Public/CollectionSectionData.swift
similarity index 99%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/CollectionSectionData.swift
rename to Sources/LiveCollections/Classes/Public/CollectionSectionData.swift
index 2830253..bbeec58 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Public/CollectionSectionData.swift
+++ b/Sources/LiveCollections/Classes/Public/CollectionSectionData.swift
@@ -6,7 +6,7 @@
// Copyright © 2017 Scribd. All rights reserved.
//
-import Foundation
+import UIKit
/**
This is a tool for the scenario:
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Delegate/CollectionDataDelegate.swift b/Sources/LiveCollections/Classes/Public/Delegate/CollectionDataDelegate.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Delegate/CollectionDataDelegate.swift
rename to Sources/LiveCollections/Classes/Public/Delegate/CollectionDataDelegate.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Delegate/CollectionDataReusableViewVerificationDelegate.swift b/Sources/LiveCollections/Classes/Public/Delegate/CollectionDataReusableViewVerificationDelegate.swift
similarity index 98%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Delegate/CollectionDataReusableViewVerificationDelegate.swift
rename to Sources/LiveCollections/Classes/Public/Delegate/CollectionDataReusableViewVerificationDelegate.swift
index 6dfd692..87a1b34 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Public/Delegate/CollectionDataReusableViewVerificationDelegate.swift
+++ b/Sources/LiveCollections/Classes/Public/Delegate/CollectionDataReusableViewVerificationDelegate.swift
@@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//
-import Foundation
+import UIKit
/**
This is a specific protocol for the `Table of Carousels` scenario (A UITableView that has a UICollectionView in
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Delta/IndexDelta.swift b/Sources/LiveCollections/Classes/Public/Delta/IndexDelta.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Delta/IndexDelta.swift
rename to Sources/LiveCollections/Classes/Public/Delta/IndexDelta.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Delta/SectionUpdate.swift b/Sources/LiveCollections/Classes/Public/Delta/SectionUpdate.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Delta/SectionUpdate.swift
rename to Sources/LiveCollections/Classes/Public/Delta/SectionUpdate.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Non-Unique/NonUniqueDataFactory.swift b/Sources/LiveCollections/Classes/Public/Non-Unique/NonUniqueDataFactory.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Non-Unique/NonUniqueDataFactory.swift
rename to Sources/LiveCollections/Classes/Public/Non-Unique/NonUniqueDataFactory.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Non-Unique/NonUniquelyIdentifiableProtocols.swift b/Sources/LiveCollections/Classes/Public/Non-Unique/NonUniquelyIdentifiableProtocols.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Non-Unique/NonUniquelyIdentifiableProtocols.swift
rename to Sources/LiveCollections/Classes/Public/Non-Unique/NonUniquelyIdentifiableProtocols.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionDataProtocols.swift b/Sources/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionDataProtocols.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionDataProtocols.swift
rename to Sources/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionDataProtocols.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionSectionDataProtocols.swift b/Sources/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionSectionDataProtocols.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionSectionDataProtocols.swift
rename to Sources/LiveCollections/Classes/Public/Protocols/CollectionData/CollectionSectionDataProtocols.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Data Factory/UniquelyIdentifiableDataFactory.swift b/Sources/LiveCollections/Classes/Public/Protocols/Data Factory/UniquelyIdentifiableDataFactory.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Data Factory/UniquelyIdentifiableDataFactory.swift
rename to Sources/LiveCollections/Classes/Public/Protocols/Data Factory/UniquelyIdentifiableDataFactory.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Visual Update/DeltaVisualUpdateProtocols.swift b/Sources/LiveCollections/Classes/Public/Protocols/Visual Update/DeltaVisualUpdateProtocols.swift
similarity index 99%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Visual Update/DeltaVisualUpdateProtocols.swift
rename to Sources/LiveCollections/Classes/Public/Protocols/Visual Update/DeltaVisualUpdateProtocols.swift
index 613c9b7..c97e274 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Visual Update/DeltaVisualUpdateProtocols.swift
+++ b/Sources/LiveCollections/Classes/Public/Protocols/Visual Update/DeltaVisualUpdateProtocols.swift
@@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//
-import Foundation
+import CoreGraphics
public protocol CollectionViewProvider: AnyObject {
var view: DeltaUpdatableView? { get set }
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Visual Update/TableViewRowAnimationProviding.swift b/Sources/LiveCollections/Classes/Public/Protocols/Visual Update/TableViewRowAnimationProviding.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Protocols/Visual Update/TableViewRowAnimationProviding.swift
rename to Sources/LiveCollections/Classes/Public/Protocols/Visual Update/TableViewRowAnimationProviding.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/Synchronizer/CollectionDataSynchronizer.swift b/Sources/LiveCollections/Classes/Public/Synchronizer/CollectionDataSynchronizer.swift
similarity index 99%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/Synchronizer/CollectionDataSynchronizer.swift
rename to Sources/LiveCollections/Classes/Public/Synchronizer/CollectionDataSynchronizer.swift
index b483ed5..8104660 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Public/Synchronizer/CollectionDataSynchronizer.swift
+++ b/Sources/LiveCollections/Classes/Public/Synchronizer/CollectionDataSynchronizer.swift
@@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//
-import Foundation
+import UIKit
public final class CollectionDataSynchronizer: DeltaUpdatableView {
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/BaseTypes+UniquelyIdentifiable.swift b/Sources/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/BaseTypes+UniquelyIdentifiable.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/BaseTypes+UniquelyIdentifiable.swift
rename to Sources/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/BaseTypes+UniquelyIdentifiable.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+DeltaUpdates.swift b/Sources/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+DeltaUpdates.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+DeltaUpdates.swift
rename to Sources/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+DeltaUpdates.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+SectionDeltaUpdates.swift b/Sources/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+SectionDeltaUpdates.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+SectionDeltaUpdates.swift
rename to Sources/LiveCollections/Classes/Public/UIKit & Foundatin Extensions/UIKit+SectionDeltaUpdates.swift
diff --git a/LiveCollectionsFramework/LiveCollections/Classes/Public/UniquelyIdentifiableProtocols.swift b/Sources/LiveCollections/Classes/Public/UniquelyIdentifiableProtocols.swift
similarity index 97%
rename from LiveCollectionsFramework/LiveCollections/Classes/Public/UniquelyIdentifiableProtocols.swift
rename to Sources/LiveCollections/Classes/Public/UniquelyIdentifiableProtocols.swift
index da9bbcd..bca06a5 100644
--- a/LiveCollectionsFramework/LiveCollections/Classes/Public/UniquelyIdentifiableProtocols.swift
+++ b/Sources/LiveCollections/Classes/Public/UniquelyIdentifiableProtocols.swift
@@ -37,7 +37,7 @@ public extension UniquelyIdentifiable where RawType == Self {
var rawData: Self { return self }
}
-public extension UniquelyIdentifiable where Self: Hashable, UniqueIDType == Self {
+public extension UniquelyIdentifiable where UniqueIDType == Self {
var uniqueID: Self { return self }
}
diff --git a/LiveCollectionsFramework/LiveCollections/LICENSE b/Sources/LiveCollections/LICENSE
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/LICENSE
rename to Sources/LiveCollections/LICENSE
diff --git a/LiveCollectionsFramework/LiveCollections/LiveCollections.h b/Sources/LiveCollections/LiveCollections.h
similarity index 100%
rename from LiveCollectionsFramework/LiveCollections/LiveCollections.h
rename to Sources/LiveCollections/LiveCollections.h
diff --git a/LiveCollectionsFramework/LiveCollectionsTests/ItemDeltaTests/AdvancedItemDeltaTests.swift b/Sources/LiveCollectionsTests/ItemDeltaTests/AdvancedItemDeltaTests.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollectionsTests/ItemDeltaTests/AdvancedItemDeltaTests.swift
rename to Sources/LiveCollectionsTests/ItemDeltaTests/AdvancedItemDeltaTests.swift
diff --git a/LiveCollectionsFramework/LiveCollectionsTests/ItemDeltaTests/BasicItemDeltaTests.swift b/Sources/LiveCollectionsTests/ItemDeltaTests/BasicItemDeltaTests.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollectionsTests/ItemDeltaTests/BasicItemDeltaTests.swift
rename to Sources/LiveCollectionsTests/ItemDeltaTests/BasicItemDeltaTests.swift
diff --git a/LiveCollectionsFramework/LiveCollectionsTests/ItemDeltaTests/PerformanceTests.swift b/Sources/LiveCollectionsTests/ItemDeltaTests/PerformanceTests.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollectionsTests/ItemDeltaTests/PerformanceTests.swift
rename to Sources/LiveCollectionsTests/ItemDeltaTests/PerformanceTests.swift
diff --git a/LiveCollectionsFramework/LiveCollectionsTests/LiveCollectionsTests.swift b/Sources/LiveCollectionsTests/LiveCollectionsTests.swift
similarity index 100%
rename from LiveCollectionsFramework/LiveCollectionsTests/LiveCollectionsTests.swift
rename to Sources/LiveCollectionsTests/LiveCollectionsTests.swift
diff --git a/LiveCollectionsFramework/LiveCollectionsTests/Info.plist b/Tests-Info.plist
similarity index 100%
rename from LiveCollectionsFramework/LiveCollectionsTests/Info.plist
rename to Tests-Info.plist