Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,10 @@
F4B9013E2133A2A400E3B51C /* AnyDeltaUpdatableViewDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnyDeltaUpdatableViewDelegate.swift; sourceTree = "<group>"; };
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 = "<group>"; };
F4D772E320FBC4BE002F1C43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
F4D772E320FBC4BE002F1C43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = ../../Info.plist; sourceTree = "<group>"; };
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 = "<group>"; };
F4D772EF20FBC4BF002F1C43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
F4D772EF20FBC4BF002F1C43 /* Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Tests-Info.plist"; path = "../../Tests-Info.plist"; sourceTree = "<group>"; };
F4D772FB20FBC4E7002F1C43 /* DataProviderProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataProviderProtocols.swift; sourceTree = "<group>"; };
F4D7730020FBC4E7002F1C43 /* SectionDataCalculator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SectionDataCalculator.swift; sourceTree = "<group>"; };
F4D7730320FBC4E7002F1C43 /* SectionUpdate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SectionUpdate.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -175,17 +175,19 @@
F4D772E220FBC4BE002F1C43 /* LiveCollections.h */,
F4D772F920FBC4E7002F1C43 /* Classes */,
);
path = LiveCollections;
name = LiveCollections;
path = Sources/LiveCollections;
sourceTree = "<group>";
};
F4D772EC20FBC4BF002F1C43 /* LiveCollectionsTests */ = {
isa = PBXGroup;
children = (
F4847DF92137C89400859EFF /* ItemDeltaTests */,
F4D772ED20FBC4BF002F1C43 /* LiveCollectionsTests.swift */,
F4D772EF20FBC4BF002F1C43 /* Info.plist */,
F4D772EF20FBC4BF002F1C43 /* Tests-Info.plist */,
);
path = LiveCollectionsTests;
name = LiveCollectionsTests;
path = Sources/LiveCollectionsTests;
sourceTree = "<group>";
};
F4D772F920FBC4E7002F1C43 /* Classes */ = {
Expand Down Expand Up @@ -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 = (
Expand Down Expand Up @@ -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 = (
Expand All @@ -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",
Expand All @@ -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",
Expand Down
2 changes: 1 addition & 1 deletion LiveCollections.xcworkspace/contents.xcworkspacedata

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -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 */; };
Expand Down Expand Up @@ -763,7 +763,7 @@
F4D7737C20FC5D34002F1C43 /* DataCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataCoordinator.swift; sourceTree = "<group>"; };
F4D7737E20FC5F14002F1C43 /* PresentationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PresentationView.swift; sourceTree = "<group>"; };
F4D7738720FC64FD002F1C43 /* MovieCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovieCollectionViewCell.swift; sourceTree = "<group>"; };
F4D7738920FD057C002F1C43 /* ResuableViewProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResuableViewProtocol.swift; sourceTree = "<group>"; };
F4D7738920FD057C002F1C43 /* ResuableViewHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResuableViewHelper.swift; sourceTree = "<group>"; };
F4F2054421727B9A00C211AB /* ScenarioThirteenViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScenarioThirteenViewController.swift; sourceTree = "<group>"; };
F4F205552172D24800C211AB /* ScenarioFourteenViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScenarioFourteenViewController.swift; sourceTree = "<group>"; };
F4F205592173391B00C211AB /* ScenarioFifteenViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScenarioFifteenViewController.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -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 */,
Expand Down Expand Up @@ -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 */,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1250"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "F4D7733220FC147E002F1C43"
BuildableName = "LC Scenarios.app"
BlueprintName = "LiveCollectionsSample"
ReferencedContainer = "container:LiveCollectionsSample.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "F4D7733220FC147E002F1C43"
BuildableName = "LC Scenarios.app"
BlueprintName = "LiveCollectionsSample"
ReferencedContainer = "container:LiveCollectionsSample.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "F4D7733220FC147E002F1C43"
BuildableName = "LC Scenarios.app"
BlueprintName = "LiveCollectionsSample"
ReferencedContainer = "container:LiveCollectionsSample.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//
// ResuableViewProtocol.swift
// ResuableViewHelper.swift
// LiveCollectionsSample
//
// Created by Paris Pinkney on 7/7/16.
Expand All @@ -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)
}
Expand Down
29 changes: 29 additions & 0 deletions Package.swift
Original file line number Diff line number Diff line change
@@ -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"]),

]
)
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//

import Foundation
import UIKit

protocol TableViewSingleSectionProviding {
var section: Int { get }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Copyright © 2017 Scribd. All rights reserved.
//

import Foundation
import UIKit

/**
This is a tool for the most common case:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Copyright © 2017 Scribd. All rights reserved.
//

import Foundation
import UIKit

/**
This is a tool for the scenario:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//

import Foundation
import CoreGraphics

public protocol CollectionViewProvider: AnyObject {
var view: DeltaUpdatableView? { get set }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Copyright © 2018 Scribd. All rights reserved.
//

import Foundation
import UIKit

public final class CollectionDataSynchronizer: DeltaUpdatableView {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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 }
}

Expand Down
File renamed without changes.