From 6f1700454ef96fec68d63c95d68c410fc2c03eb3 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Tue, 31 Dec 2019 17:06:12 -0800 Subject: [PATCH 01/25] Adding initial Swift interfaces --- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 10 +++ .../xcshareddata/WorkspaceSettings.xcsettings | 8 +++ .../DZNEmptyDataSet/EmptyDataSet.swift | 61 +++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100644 DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index c7e201b9..d0c8221f 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -8,6 +8,7 @@ /* Begin PBXBuildFile section */ 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */; }; + 4F59DA4F23BC1F060059733C /* EmptyDataSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -69,6 +70,7 @@ 1C26D4C95382E14DAC506EE2 /* Pods-EmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; + 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSet.swift; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; @@ -211,6 +213,7 @@ F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */, F58A3E4C1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h */, F58A3E4D1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m */, + 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */, F58A3E361E66AEE90086E0EF /* Info.plist */, ); path = DZNEmptyDataSet; @@ -439,6 +442,7 @@ TargetAttributes = { F58A3E311E66AEE90086E0EF = { CreatedOnToolsVersion = 8.2.1; + LastSwiftMigration = 1130; ProvisioningStyle = Manual; }; F58A3E3A1E66AEE90086E0EF = { @@ -569,6 +573,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 4F59DA4F23BC1F060059733C /* EmptyDataSet.swift in Sources */, F58A3E4F1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -772,6 +777,7 @@ F58A3E471E66AEE90086E0EF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = ""; @@ -784,12 +790,15 @@ PRODUCT_BUNDLE_IDENTIFIER = com.dzn.DZNEmptyDataSet; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; }; name = Debug; }; F58A3E481E66AEE90086E0EF /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = ""; @@ -802,6 +811,7 @@ PRODUCT_BUNDLE_IDENTIFIER = com.dzn.DZNEmptyDataSet; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; + SWIFT_VERSION = 5.0; }; name = Release; }; diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..f9b0d7c5 --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift b/DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift new file mode 100644 index 00000000..0db14610 --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift @@ -0,0 +1,61 @@ +// +// EmptyDataSet.swift +// DZNEmptyDataSet +// +// Created by Ignacio Romero Zurbuchen on 2019-12-31. +// Copyright © 2019 DZN. All rights reserved. +// + +import UIKit + +public protocol EmptyDataSetInterface { + + /// The empty datasets delegate + var emptyDataSetSource: EmptyDataSetSource { get set } + + /// The empty datasets data source + var emptyDataSetDelegate: EmptyDataSetDelegate { get set } + + /// Returns true if the Empty Data Set View is visible + var isEmptyDataSetVisible: Bool { get } + + /// Reloads the empty dataset content receiver. + /// Call this method to force all the data to refresh. Calling reloadData() is similar, but this method only refreshes the empty dataset, + /// instead of all the delegate/datasource callbs from your table view or collection view. + func reloadEmptyDataSet() +} + +public protocol EmptyDataSetSource { + + /// + func titleForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? + + /// + func descriptionForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? + + /// + func imageForEmptyDataSet(scrollView: UIScrollView) -> UIImage? + + /// + func tintColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? + + /// + func backgroundColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? +} + +public protocol EmptyDataSetDelegate { + + /// + func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool + + /// + func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) +} + +public enum EmptyDataSetState { + case willAppear, didAppear, willDisappear, DidDisappear +} + +extension EmptyDataSetInterface where Self: UIScrollView { + +} From 14c625db55b1b8ae27eeaf865d0f5d6628356975 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Tue, 31 Dec 2019 17:11:33 -0800 Subject: [PATCH 02/25] Adding dummy project to test swift rewrite --- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 150 ++++++++++++++++++ .../Sample - Bento/AppDelegate.swift | 37 +++++ .../AppIcon.appiconset/Contents.json | 98 ++++++++++++ .../Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 +++ .../Sample - Bento/Base.lproj/Main.storyboard | 24 +++ DZNEmptyDataSet/Sample - Bento/Info.plist | 62 ++++++++ .../Sample - Bento/SceneDelegate.swift | 53 +++++++ .../Sample - Bento/ViewController.swift | 20 +++ 9 files changed, 475 insertions(+) create mode 100644 DZNEmptyDataSet/Sample - Bento/AppDelegate.swift create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json create mode 100644 DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard create mode 100644 DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard create mode 100644 DZNEmptyDataSet/Sample - Bento/Info.plist create mode 100644 DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift create mode 100644 DZNEmptyDataSet/Sample - Bento/ViewController.swift diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index d0c8221f..9d5f9054 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -9,6 +9,12 @@ /* Begin PBXBuildFile section */ 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */; }; 4F59DA4F23BC1F060059733C /* EmptyDataSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */; }; + 4FA1AAE923BC28F2007CF389 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAE823BC28F2007CF389 /* AppDelegate.swift */; }; + 4FA1AAEB23BC28F2007CF389 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEA23BC28F2007CF389 /* SceneDelegate.swift */; }; + 4FA1AAED23BC28F2007CF389 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEC23BC28F2007CF389 /* ViewController.swift */; }; + 4FA1AAF023BC28F2007CF389 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEE23BC28F2007CF389 /* Main.storyboard */; }; + 4FA1AAF223BC28F3007CF389 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAF123BC28F3007CF389 /* Assets.xcassets */; }; + 4FA1AAF523BC28F3007CF389 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAF323BC28F3007CF389 /* LaunchScreen.storyboard */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -71,6 +77,14 @@ 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSet.swift; sourceTree = ""; }; + 4FA1AAE623BC28F2007CF389 /* Bento.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Bento.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 4FA1AAE823BC28F2007CF389 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 4FA1AAEA23BC28F2007CF389 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = ""; }; + 4FA1AAEC23BC28F2007CF389 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + 4FA1AAEF23BC28F2007CF389 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 4FA1AAF123BC28F3007CF389 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 4FA1AAF423BC28F3007CF389 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 4FA1AAF623BC28F3007CF389 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; @@ -128,6 +142,13 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 4FA1AAE323BC28F2007CF389 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; F58A3E2E1E66AEE90086E0EF /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -174,6 +195,20 @@ name = Pods; sourceTree = ""; }; + 4FA1AAE723BC28F2007CF389 /* Sample - Bento */ = { + isa = PBXGroup; + children = ( + 4FA1AAE823BC28F2007CF389 /* AppDelegate.swift */, + 4FA1AAEA23BC28F2007CF389 /* SceneDelegate.swift */, + 4FA1AAEC23BC28F2007CF389 /* ViewController.swift */, + 4FA1AAEE23BC28F2007CF389 /* Main.storyboard */, + 4FA1AAF123BC28F3007CF389 /* Assets.xcassets */, + 4FA1AAF323BC28F3007CF389 /* LaunchScreen.storyboard */, + 4FA1AAF623BC28F3007CF389 /* Info.plist */, + ); + path = "Sample - Bento"; + sourceTree = ""; + }; A7CC5E0B0809CA256BDA9067 /* Frameworks */ = { isa = PBXGroup; children = ( @@ -188,6 +223,7 @@ children = ( F58A3E341E66AEE90086E0EF /* DZNEmptyDataSet */, F58A3E3F1E66AEE90086E0EF /* DZNEmptyDataSetTests */, + 4FA1AAE723BC28F2007CF389 /* Sample - Bento */, F58A3E641E66B5410086E0EF /* Sample - Applications */, F5BE15261E713E2100F6FBEA /* Sample - Colors */, F58A3E331E66AEE90086E0EF /* Products */, @@ -203,6 +239,7 @@ F58A3E3B1E66AEE90086E0EF /* DZNEmptyDataSetTests.xctest */, F58A3E631E66B5410086E0EF /* Applications.app */, F5BE15251E713E2100F6FBEA /* Colors.app */, + 4FA1AAE623BC28F2007CF389 /* Bento.app */, ); name = Products; sourceTree = ""; @@ -357,6 +394,23 @@ /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ + 4FA1AAE523BC28F2007CF389 /* Bento */ = { + isa = PBXNativeTarget; + buildConfigurationList = 4FA1AAF723BC28F3007CF389 /* Build configuration list for PBXNativeTarget "Bento" */; + buildPhases = ( + 4FA1AAE223BC28F2007CF389 /* Sources */, + 4FA1AAE323BC28F2007CF389 /* Frameworks */, + 4FA1AAE423BC28F2007CF389 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Bento; + productName = Bento; + productReference = 4FA1AAE623BC28F2007CF389 /* Bento.app */; + productType = "com.apple.product-type.application"; + }; F58A3E311E66AEE90086E0EF /* DZNEmptyDataSet */ = { isa = PBXNativeTarget; buildConfigurationList = F58A3E461E66AEE90086E0EF /* Build configuration list for PBXNativeTarget "DZNEmptyDataSet" */; @@ -440,6 +494,10 @@ LastUpgradeCheck = 1130; ORGANIZATIONNAME = DZN; TargetAttributes = { + 4FA1AAE523BC28F2007CF389 = { + CreatedOnToolsVersion = 11.3; + ProvisioningStyle = Automatic; + }; F58A3E311E66AEE90086E0EF = { CreatedOnToolsVersion = 8.2.1; LastSwiftMigration = 1130; @@ -477,11 +535,22 @@ F58A3E3A1E66AEE90086E0EF /* DZNEmptyDataSetTests */, F58A3E621E66B5410086E0EF /* Applications */, F5BE15241E713E2100F6FBEA /* Colors */, + 4FA1AAE523BC28F2007CF389 /* Bento */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ + 4FA1AAE423BC28F2007CF389 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 4FA1AAF523BC28F3007CF389 /* LaunchScreen.storyboard in Resources */, + 4FA1AAF223BC28F3007CF389 /* Assets.xcassets in Resources */, + 4FA1AAF023BC28F2007CF389 /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; F58A3E301E66AEE90086E0EF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -569,6 +638,16 @@ /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ + 4FA1AAE223BC28F2007CF389 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 4FA1AAED23BC28F2007CF389 /* ViewController.swift in Sources */, + 4FA1AAE923BC28F2007CF389 /* AppDelegate.swift in Sources */, + 4FA1AAEB23BC28F2007CF389 /* SceneDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; F58A3E2D1E66AEE90086E0EF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -633,6 +712,22 @@ /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ + 4FA1AAEE23BC28F2007CF389 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 4FA1AAEF23BC28F2007CF389 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 4FA1AAF323BC28F3007CF389 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 4FA1AAF423BC28F3007CF389 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; F58A3E8B1E66B62F0086E0EF /* LaunchScreen.storyboard */ = { isa = PBXVariantGroup; children = ( @@ -660,6 +755,52 @@ /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ + 4FA1AAF823BC28F3007CF389 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_STYLE = Automatic; + GCC_C_LANGUAGE_STANDARD = gnu11; + INFOPLIST_FILE = "Sample - Bento/Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 13.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Bento; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; + }; + name = Debug; + }; + 4FA1AAF923BC28F3007CF389 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_STYLE = Automatic; + GCC_C_LANGUAGE_STANDARD = gnu11; + INFOPLIST_FILE = "Sample - Bento/Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 13.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Bento; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; + }; + name = Release; + }; F58A3E441E66AEE90086E0EF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -903,6 +1044,15 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + 4FA1AAF723BC28F3007CF389 /* Build configuration list for PBXNativeTarget "Bento" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4FA1AAF823BC28F3007CF389 /* Debug */, + 4FA1AAF923BC28F3007CF389 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; F58A3E2C1E66AEE90086E0EF /* Build configuration list for PBXProject "DZNEmptyDataSet" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift b/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift new file mode 100644 index 00000000..605f5951 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift @@ -0,0 +1,37 @@ +// +// AppDelegate.swift +// Bento +// +// Created by Ignacio Romero Zurbuchen on 2019-12-31. +// Copyright © 2019 DZN. All rights reserved. +// + +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + // Override point for customization after application launch. + return true + } + + // MARK: UISceneSession Lifecycle + + func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration { + // Called when a new scene session is being created. + // Use this method to select a configuration to create the new scene with. + return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role) + } + + func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set) { + // Called when the user discards a scene session. + // If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions. + // Use this method to release any resources that were specific to the discarded scenes, as they will not return. + } + + +} + diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 00000000..d8db8d65 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard b/DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 00000000..865e9329 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard b/DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard new file mode 100644 index 00000000..25a76385 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DZNEmptyDataSet/Sample - Bento/Info.plist b/DZNEmptyDataSet/Sample - Bento/Info.plist new file mode 100644 index 00000000..b5f9c079 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/Info.plist @@ -0,0 +1,62 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UIApplicationSceneManifest + + UIApplicationSupportsMultipleScenes + + UISceneConfigurations + + UIWindowSceneSessionRoleApplication + + + UISceneConfigurationName + Default Configuration + UISceneDelegateClassName + $(PRODUCT_MODULE_NAME).SceneDelegate + UISceneStoryboardFile + Main + + + + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift b/DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift new file mode 100644 index 00000000..e247e0e5 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift @@ -0,0 +1,53 @@ +// +// SceneDelegate.swift +// Bento +// +// Created by Ignacio Romero Zurbuchen on 2019-12-31. +// Copyright © 2019 DZN. All rights reserved. +// + +import UIKit + +class SceneDelegate: UIResponder, UIWindowSceneDelegate { + + var window: UIWindow? + + + func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { + // Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`. + // If using a storyboard, the `window` property will automatically be initialized and attached to the scene. + // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead). + guard let _ = (scene as? UIWindowScene) else { return } + } + + func sceneDidDisconnect(_ scene: UIScene) { + // Called as the scene is being released by the system. + // This occurs shortly after the scene enters the background, or when its session is discarded. + // Release any resources associated with this scene that can be re-created the next time the scene connects. + // The scene may re-connect later, as its session was not neccessarily discarded (see `application:didDiscardSceneSessions` instead). + } + + func sceneDidBecomeActive(_ scene: UIScene) { + // Called when the scene has moved from an inactive state to an active state. + // Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive. + } + + func sceneWillResignActive(_ scene: UIScene) { + // Called when the scene will move from an active state to an inactive state. + // This may occur due to temporary interruptions (ex. an incoming phone call). + } + + func sceneWillEnterForeground(_ scene: UIScene) { + // Called as the scene transitions from the background to the foreground. + // Use this method to undo the changes made on entering the background. + } + + func sceneDidEnterBackground(_ scene: UIScene) { + // Called as the scene transitions from the foreground to the background. + // Use this method to save data, release shared resources, and store enough scene-specific state information + // to restore the scene back to its current state. + } + + +} + diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift new file mode 100644 index 00000000..9947be76 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -0,0 +1,20 @@ +// +// ViewController.swift +// Bento +// +// Created by Ignacio Romero Zurbuchen on 2019-12-31. +// Copyright © 2019 DZN. All rights reserved. +// + +import UIKit + +class ViewController: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + // Do any additional setup after loading the view. + } + + +} + From 23c31d3be8c5319beeb3589ab072fa0bed8fcebc Mon Sep 17 00:00:00 2001 From: dzenbot Date: Tue, 31 Dec 2019 17:55:02 -0800 Subject: [PATCH 03/25] Implementing the initial swizzling --- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 237 +++++- .../xcshareddata/xcschemes/Bento.xcscheme | 78 ++ .../xcschemes/EmptyDataSet.xcscheme | 67 ++ .../EmptyDataSet/DZNEmptyDataSet.h | 16 + .../EmptyDataSet.swift | 36 +- .../EmptyDataSet/EmptyDataSetImpl.swift | 158 ++++ .../EmptyDataSet/EmptyDataSetView.swift | 13 + DZNEmptyDataSet/EmptyDataSet/Info.plist | 22 + DZNEmptyDataSet/Podfile | 4 + DZNEmptyDataSet/Podfile.lock | 6 +- DZNEmptyDataSet/Pods/Manifest.lock | 6 +- .../Pods/Pods.xcodeproj/project.pbxproj | 675 +++++++++++++----- DZNEmptyDataSet/Pods/SnapKit/LICENSE | 19 + DZNEmptyDataSet/Pods/SnapKit/README.md | 136 ++++ .../Pods/SnapKit/Source/Constraint.swift | 341 +++++++++ .../SnapKit/Source/ConstraintAttributes.swift | 199 ++++++ .../SnapKit/Source/ConstraintConfig.swift | 37 + .../Source/ConstraintConstantTarget.swift | 213 ++++++ .../Pods/SnapKit/Source/ConstraintDSL.swift | 194 +++++ .../Source/ConstraintDescription.swift | 69 ++ .../ConstraintDirectionalInsetTarget.swift | 49 ++ .../Source/ConstraintDirectionalInsets.swift | 34 + .../Source/ConstraintInsetTarget.swift | 72 ++ .../SnapKit/Source/ConstraintInsets.swift | 35 + .../Pods/SnapKit/Source/ConstraintItem.swift | 61 ++ .../ConstraintLayoutGuide+Extensions.swift | 36 + .../Source/ConstraintLayoutGuide.swift | 37 + .../Source/ConstraintLayoutGuideDSL.swift | 66 ++ .../Source/ConstraintLayoutSupport.swift | 36 + .../Source/ConstraintLayoutSupportDSL.swift | 56 ++ .../Pods/SnapKit/Source/ConstraintMaker.swift | 212 ++++++ .../Source/ConstraintMakerEditable.swift | 64 ++ .../Source/ConstraintMakerExtendable.swift | 179 +++++ .../Source/ConstraintMakerFinalizable.swift | 49 ++ .../Source/ConstraintMakerPriortizable.swift | 68 ++ .../Source/ConstraintMakerRelatable.swift | 115 +++ .../Source/ConstraintMultiplierTarget.swift | 75 ++ .../Source/ConstraintOffsetTarget.swift | 69 ++ .../SnapKit/Source/ConstraintPriority.swift | 77 ++ .../Source/ConstraintPriorityTarget.swift | 85 +++ .../Source/ConstraintRelatableTarget.swift | 72 ++ .../SnapKit/Source/ConstraintRelation.swift | 48 ++ .../Source/ConstraintView+Extensions.swift | 152 ++++ .../Pods/SnapKit/Source/ConstraintView.swift | 35 + .../SnapKit/Source/ConstraintViewDSL.swift | 101 +++ .../Pods/SnapKit/Source/Debugging.swift | 169 +++++ .../SnapKit/Source/LayoutConstraint.swift | 61 ++ .../SnapKit/Source/LayoutConstraintItem.swift | 93 +++ .../Pods/SnapKit/Source/Typealiases.swift | 42 ++ .../Source/UILayoutSupport+Extensions.swift | 36 + .../Pods-Bento-Info.plist} | 0 .../Pods-Bento-acknowledgements.markdown} | 15 +- .../Pods-Bento-acknowledgements.plist} | 15 +- .../Pods-Bento/Pods-Bento-dummy.m | 5 + .../Pods-Bento-frameworks.sh} | 4 +- .../Pods-Bento-umbrella.h} | 4 +- .../Pods-Bento.debug.xcconfig} | 8 +- .../Pods-Bento/Pods-Bento.modulemap | 6 + .../Pods-Bento.release.xcconfig} | 8 +- .../Pods-EmptyDataSetTests-dummy.m | 5 - .../Pods-EmptyDataSetTests.modulemap | 6 - .../SnapKit/SnapKit-Info.plist | 26 + .../SnapKit/SnapKit-dummy.m | 5 + .../SnapKit/SnapKit-prefix.pch | 12 + .../SnapKit/SnapKit-umbrella.h | 16 + .../SnapKit/SnapKit.modulemap | 6 + .../SnapKit/SnapKit.xcconfig | 10 + .../Sample - Bento/ViewController.swift | 47 +- 68 files changed, 4769 insertions(+), 239 deletions(-) create mode 100644 DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme create mode 100644 DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme create mode 100644 DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h rename DZNEmptyDataSet/{DZNEmptyDataSet => EmptyDataSet}/EmptyDataSet.swift (58%) create mode 100644 DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift create mode 100644 DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift create mode 100644 DZNEmptyDataSet/EmptyDataSet/Info.plist create mode 100644 DZNEmptyDataSet/Pods/SnapKit/LICENSE create mode 100644 DZNEmptyDataSet/Pods/SnapKit/README.md create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift create mode 100644 DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-Info.plist => Pods-Bento/Pods-Bento-Info.plist} (100%) rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.markdown => Pods-Bento/Pods-Bento-acknowledgements.markdown} (83%) rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.plist => Pods-Bento/Pods-Bento-acknowledgements.plist} (88%) create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-frameworks.sh => Pods-Bento/Pods-Bento-frameworks.sh} (97%) rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-umbrella.h => Pods-Bento/Pods-Bento-umbrella.h} (58%) rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig => Pods-Bento/Pods-Bento.debug.xcconfig} (53%) create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap rename DZNEmptyDataSet/Pods/Target Support Files/{Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig => Pods-Bento/Pods-Bento.release.xcconfig} (53%) delete mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-dummy.m delete mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.modulemap create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index 9d5f9054..646fd05b 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -8,13 +8,20 @@ /* Begin PBXBuildFile section */ 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */; }; - 4F59DA4F23BC1F060059733C /* EmptyDataSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */; }; + 3B12888038B2AA7F321565FC /* Pods_Bento.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A616CBACE16863851A421398 /* Pods_Bento.framework */; }; 4FA1AAE923BC28F2007CF389 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAE823BC28F2007CF389 /* AppDelegate.swift */; }; 4FA1AAEB23BC28F2007CF389 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEA23BC28F2007CF389 /* SceneDelegate.swift */; }; 4FA1AAED23BC28F2007CF389 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEC23BC28F2007CF389 /* ViewController.swift */; }; 4FA1AAF023BC28F2007CF389 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEE23BC28F2007CF389 /* Main.storyboard */; }; 4FA1AAF223BC28F3007CF389 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAF123BC28F3007CF389 /* Assets.xcassets */; }; 4FA1AAF523BC28F3007CF389 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAF323BC28F3007CF389 /* LaunchScreen.storyboard */; }; + 4FA1AB0323BC296B007CF389 /* DZNEmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB0123BC296B007CF389 /* DZNEmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4FA1AB0623BC296B007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; + 4FA1AB0723BC296B007CF389 /* EmptyDataSet.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 4FA1AB0C23BC2991007CF389 /* EmptyDataSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */; }; + 4FA1AB0D23BC29D2007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; + 4FA1AB0F23BC2BC9007CF389 /* EmptyDataSetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */; }; + 4FA1AB1123BC2C20007CF389 /* EmptyDataSetImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -56,6 +63,13 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + 4FA1AB0423BC296B007CF389 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = F58A3E291E66AEE90086E0EF /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4FA1AAFE23BC296B007CF389; + remoteInfo = EmptyDataSet; + }; F58A3E3D1E66AEE90086E0EF /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = F58A3E291E66AEE90086E0EF /* Project object */; @@ -72,7 +86,22 @@ }; /* End PBXContainerItemProxy section */ +/* Begin PBXCopyFilesBuildPhase section */ + 4FA1AB0B23BC296B007CF389 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 4FA1AB0723BC296B007CF389 /* EmptyDataSet.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + /* Begin PBXFileReference section */ + 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig"; sourceTree = ""; }; 1C26D4C95382E14DAC506EE2 /* Pods-EmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; @@ -85,8 +114,15 @@ 4FA1AAF123BC28F3007CF389 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 4FA1AAF423BC28F3007CF389 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 4FA1AAF623BC28F3007CF389 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = EmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4FA1AB0123BC296B007CF389 /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = ""; }; + 4FA1AB0223BC296B007CF389 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetView.swift; sourceTree = ""; }; + 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetImpl.swift; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.release.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig"; sourceTree = ""; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; + A616CBACE16863851A421398 /* Pods_Bento.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Bento.framework; sourceTree = BUILT_PRODUCTS_DIR; }; DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DZNEmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = ""; }; @@ -143,6 +179,15 @@ /* Begin PBXFrameworksBuildPhase section */ 4FA1AAE323BC28F2007CF389 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 4FA1AB0D23BC29D2007CF389 /* EmptyDataSet.framework in Frameworks */, + 3B12888038B2AA7F321565FC /* Pods_Bento.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4FA1AAFC23BC296B007CF389 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( @@ -170,6 +215,7 @@ buildActionMask = 2147483647; files = ( F58A3EA91E66B7940086E0EF /* DZNEmptyDataSet.framework in Frameworks */, + 4FA1AB0623BC296B007CF389 /* EmptyDataSet.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -191,6 +237,8 @@ DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */, 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, + 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */, + 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */, ); name = Pods; sourceTree = ""; @@ -209,11 +257,24 @@ path = "Sample - Bento"; sourceTree = ""; }; + 4FA1AB0023BC296B007CF389 /* EmptyDataSet */ = { + isa = PBXGroup; + children = ( + 4FA1AB0123BC296B007CF389 /* DZNEmptyDataSet.h */, + 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */, + 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */, + 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */, + 4FA1AB0223BC296B007CF389 /* Info.plist */, + ); + path = EmptyDataSet; + sourceTree = ""; + }; A7CC5E0B0809CA256BDA9067 /* Frameworks */ = { isa = PBXGroup; children = ( 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */, 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */, + A616CBACE16863851A421398 /* Pods_Bento.framework */, ); name = Frameworks; sourceTree = ""; @@ -226,6 +287,7 @@ 4FA1AAE723BC28F2007CF389 /* Sample - Bento */, F58A3E641E66B5410086E0EF /* Sample - Applications */, F5BE15261E713E2100F6FBEA /* Sample - Colors */, + 4FA1AB0023BC296B007CF389 /* EmptyDataSet */, F58A3E331E66AEE90086E0EF /* Products */, 242E9BB031D3264D62C731D6 /* Pods */, A7CC5E0B0809CA256BDA9067 /* Frameworks */, @@ -240,6 +302,7 @@ F58A3E631E66B5410086E0EF /* Applications.app */, F5BE15251E713E2100F6FBEA /* Colors.app */, 4FA1AAE623BC28F2007CF389 /* Bento.app */, + 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */, ); name = Products; sourceTree = ""; @@ -250,7 +313,6 @@ F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */, F58A3E4C1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h */, F58A3E4D1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m */, - 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */, F58A3E361E66AEE90086E0EF /* Info.plist */, ); path = DZNEmptyDataSet; @@ -381,6 +443,14 @@ /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ + 4FA1AAFA23BC296B007CF389 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 4FA1AB0323BC296B007CF389 /* DZNEmptyDataSet.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; F58A3E2F1E66AEE90086E0EF /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -398,9 +468,11 @@ isa = PBXNativeTarget; buildConfigurationList = 4FA1AAF723BC28F3007CF389 /* Build configuration list for PBXNativeTarget "Bento" */; buildPhases = ( + 5C0F88490C790BF71E5724B6 /* [CP] Check Pods Manifest.lock */, 4FA1AAE223BC28F2007CF389 /* Sources */, 4FA1AAE323BC28F2007CF389 /* Frameworks */, 4FA1AAE423BC28F2007CF389 /* Resources */, + 048F0CBC9CE92A3F2651D3C2 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -411,6 +483,24 @@ productReference = 4FA1AAE623BC28F2007CF389 /* Bento.app */; productType = "com.apple.product-type.application"; }; + 4FA1AAFE23BC296B007CF389 /* EmptyDataSet */ = { + isa = PBXNativeTarget; + buildConfigurationList = 4FA1AB0823BC296B007CF389 /* Build configuration list for PBXNativeTarget "EmptyDataSet" */; + buildPhases = ( + 4FA1AAFA23BC296B007CF389 /* Headers */, + 4FA1AAFB23BC296B007CF389 /* Sources */, + 4FA1AAFC23BC296B007CF389 /* Frameworks */, + 4FA1AAFD23BC296B007CF389 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = EmptyDataSet; + productName = EmptyDataSet; + productReference = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; + productType = "com.apple.product-type.framework"; + }; F58A3E311E66AEE90086E0EF /* DZNEmptyDataSet */ = { isa = PBXNativeTarget; buildConfigurationList = F58A3E461E66AEE90086E0EF /* Build configuration list for PBXNativeTarget "DZNEmptyDataSet" */; @@ -457,10 +547,12 @@ F58A3E5F1E66B5410086E0EF /* Sources */, F58A3E601E66B5410086E0EF /* Frameworks */, F58A3E611E66B5410086E0EF /* Resources */, + 4FA1AB0B23BC296B007CF389 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( + 4FA1AB0523BC296B007CF389 /* PBXTargetDependency */, ); name = Applications; productName = Applications; @@ -498,6 +590,10 @@ CreatedOnToolsVersion = 11.3; ProvisioningStyle = Automatic; }; + 4FA1AAFE23BC296B007CF389 = { + CreatedOnToolsVersion = 11.3; + ProvisioningStyle = Automatic; + }; F58A3E311E66AEE90086E0EF = { CreatedOnToolsVersion = 8.2.1; LastSwiftMigration = 1130; @@ -531,6 +627,7 @@ projectDirPath = ""; projectRoot = ""; targets = ( + 4FA1AAFE23BC296B007CF389 /* EmptyDataSet */, F58A3E311E66AEE90086E0EF /* DZNEmptyDataSet */, F58A3E3A1E66AEE90086E0EF /* DZNEmptyDataSetTests */, F58A3E621E66B5410086E0EF /* Applications */, @@ -551,6 +648,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 4FA1AAFD23BC296B007CF389 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; F58A3E301E66AEE90086E0EF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -595,6 +699,46 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ + 048F0CBC9CE92A3F2651D3C2 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SnapKit.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 5C0F88490C790BF71E5724B6 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Bento-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; DDD9C9F5302171B78206FE07 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -648,11 +792,20 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 4FA1AAFB23BC296B007CF389 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 4FA1AB1123BC2C20007CF389 /* EmptyDataSetImpl.swift in Sources */, + 4FA1AB0C23BC2991007CF389 /* EmptyDataSet.swift in Sources */, + 4FA1AB0F23BC2BC9007CF389 /* EmptyDataSetView.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; F58A3E2D1E66AEE90086E0EF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4F59DA4F23BC1F060059733C /* EmptyDataSet.swift in Sources */, F58A3E4F1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -699,6 +852,11 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + 4FA1AB0523BC296B007CF389 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 4FA1AAFE23BC296B007CF389 /* EmptyDataSet */; + targetProxy = 4FA1AB0423BC296B007CF389 /* PBXContainerItemProxy */; + }; F58A3E3E1E66AEE90086E0EF /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = F58A3E311E66AEE90086E0EF /* DZNEmptyDataSet */; @@ -757,6 +915,7 @@ /* Begin XCBuildConfiguration section */ 4FA1AAF823BC28F3007CF389 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; @@ -781,6 +940,7 @@ }; 4FA1AAF923BC28F3007CF389 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; @@ -801,6 +961,64 @@ }; name = Release; }; + 4FA1AB0923BC296B007CF389 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_STYLE = Automatic; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = ""; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_C_LANGUAGE_STANDARD = gnu11; + INFOPLIST_FILE = EmptyDataSet/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.dzn.EmptyDataSet; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 4FA1AB0A23BC296B007CF389 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_STYLE = Automatic; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = ""; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_C_LANGUAGE_STANDARD = gnu11; + INFOPLIST_FILE = EmptyDataSet/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.dzn.EmptyDataSet; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; F58A3E441E66AEE90086E0EF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -960,7 +1178,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = DZNEmptyDataSetTests/Info.plist; @@ -977,7 +1194,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = DZNEmptyDataSetTests/Info.plist; @@ -992,6 +1208,7 @@ F58A3E771E66B5410086E0EF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = "LaunchImage-3"; DEVELOPMENT_TEAM = ""; @@ -1006,6 +1223,7 @@ F58A3E781E66B5410086E0EF /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = "LaunchImage-3"; DEVELOPMENT_TEAM = ""; @@ -1053,6 +1271,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 4FA1AB0823BC296B007CF389 /* Build configuration list for PBXNativeTarget "EmptyDataSet" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4FA1AB0923BC296B007CF389 /* Debug */, + 4FA1AB0A23BC296B007CF389 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; F58A3E2C1E66AEE90086E0EF /* Build configuration list for PBXProject "DZNEmptyDataSet" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme new file mode 100644 index 00000000..7b9e5737 --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme new file mode 100644 index 00000000..2ca811eb --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h b/DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h new file mode 100644 index 00000000..33c526ec --- /dev/null +++ b/DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h @@ -0,0 +1,16 @@ +// +// DZNEmptyDataSet.h +// EmptyDataSet +// +// Created by Ignacio Romero Zurbuchen on 2019-12-31. +// Copyright © 2019 DZN. All rights reserved. +// + +#import + +//! Project version number for EmptyDataSet. +FOUNDATION_EXPORT double EmptyDataSetVersionNumber; + +//! Project version string for EmptyDataSet. +FOUNDATION_EXPORT const unsigned char EmptyDataSetVersionString[]; + diff --git a/DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift similarity index 58% rename from DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift rename to DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift index 0db14610..ed58f7c3 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet/EmptyDataSet.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift @@ -11,10 +11,10 @@ import UIKit public protocol EmptyDataSetInterface { /// The empty datasets delegate - var emptyDataSetSource: EmptyDataSetSource { get set } + var emptyDataSetSource: EmptyDataSetSource? { get set } /// The empty datasets data source - var emptyDataSetDelegate: EmptyDataSetDelegate { get set } + var emptyDataSetDelegate: EmptyDataSetDelegate? { get set } /// Returns true if the Empty Data Set View is visible var isEmptyDataSetVisible: Bool { get } @@ -56,6 +56,34 @@ public enum EmptyDataSetState { case willAppear, didAppear, willDisappear, DidDisappear } -extension EmptyDataSetInterface where Self: UIScrollView { - +extension UIScrollView: EmptyDataSetInterface { + + public var emptyDataSetSource: EmptyDataSetSource? { + get { + return objc_getAssociatedObject(self, &AssociatedKeys.datasource) as? EmptyDataSetSource + } + set { + objc_setAssociatedObject(self, &AssociatedKeys.datasource, newValue, .OBJC_ASSOCIATION_ASSIGN) + swizzleIfNeeded() + } + } + + public var emptyDataSetDelegate: EmptyDataSetDelegate? { + get { + return objc_getAssociatedObject(self, &AssociatedKeys.delegate) as? EmptyDataSetDelegate + } + set { + objc_setAssociatedObject(self, &AssociatedKeys.delegate, newValue, .OBJC_ASSOCIATION_ASSIGN) + swizzleIfNeeded() + } + } + + public var isEmptyDataSetVisible: Bool { + guard let view = emptyDataSetView else { return false } + return !view.isHidden + } + + public func reloadEmptyDataSet() { + + } } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift new file mode 100644 index 00000000..5e6f1a67 --- /dev/null +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -0,0 +1,158 @@ +// +// EmptyDataSetImpl.swift +// EmptyDataSet +// +// Created by Ignacio Romero Zurbuchen on 2019-12-31. +// Copyright © 2019 DZN. All rights reserved. +// + +import UIKit + +protocol EmptyDataSetProtocol { + func doSwizzle() -> Bool + func isEmpty() -> Bool + func reloadDataEmptyDataSet() +} + +extension UIScrollView { + + var emptyDataSetView: EmptyDataSetView? { + return nil + } + + // MARK: - Swizzling + + var didSwizzle: Bool { + get { + let value = objc_getAssociatedObject(self, &AssociatedKeys.didSwizzle) as? NSNumber + return value?.boolValue ?? false // Returns false if the boolValue is nil. + } + set { + objc_setAssociatedObject(self, &AssociatedKeys.didSwizzle, NSNumber(value: newValue), .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + } + + func swizzleIfNeeded() { + guard !didSwizzle else { return } + + if let proxy = self as? EmptyDataSetProtocol { + didSwizzle = proxy.doSwizzle() + } else { + print("\(type(of: self)) should conform to protocol EmptyDataset") + } + } + + fileprivate func swizzle(originalSelector: Selector, swizzledSelector: Selector) -> Bool { + guard self.responds(to: originalSelector) else { return false } + + guard let originalMethod = class_getInstanceMethod(type(of: self), originalSelector), + let swizzledMethod = class_getInstanceMethod(type(of: self), swizzledSelector) else { return false } + + let targetedMethod = class_addMethod(type(of: self), originalSelector, method_getImplementation(swizzledMethod), method_getTypeEncoding(swizzledMethod)) + + if targetedMethod { + class_replaceMethod(type(of: self), swizzledSelector, method_getImplementation(originalMethod), method_getTypeEncoding(originalMethod)) + return true + } else { + method_exchangeImplementations(originalMethod, swizzledMethod) + return true + } + } +} + +extension UITableView: EmptyDataSetProtocol { + + func doSwizzle() -> Bool { + var didSwizzle = false + + let newReloadDataSelector = #selector(reloadDataEmptyDataSet) + let originalReloadDataSelector = #selector(UITableView.reloadData) + didSwizzle = swizzle(originalSelector: originalReloadDataSelector, swizzledSelector: newReloadDataSelector) + + let newEndUpdatesSelector = #selector(endUpdatesEmptyDataSet) + let originalEndUpdatesSelector = #selector(UITableView.endUpdates) + didSwizzle = didSwizzle && + swizzle(originalSelector: originalEndUpdatesSelector, swizzledSelector: newEndUpdatesSelector) + + return didSwizzle + } + + func isEmpty() -> Bool { + var items: Int = 0 + let sections = dataSource?.numberOfSections?(in: self) ?? 1 + + for i in 0.. Bool { + var didSwizzle = false + + let newReloadDataSelector = #selector(reloadDataEmptyDataSet) + let originalReloadDataSelector = #selector(UICollectionView.reloadData) + didSwizzle = swizzle(originalSelector: originalReloadDataSelector, swizzledSelector: newReloadDataSelector) + + let newEndUpdatesSelector = #selector(performBatchUpdatesEmptyDataSet) + let originalEndUpdatesSelector = #selector(UICollectionView.performBatchUpdates(_:completion:)) + didSwizzle = didSwizzle && + swizzle(originalSelector: originalEndUpdatesSelector, swizzledSelector: newEndUpdatesSelector) + + return didSwizzle + } + + func isEmpty() -> Bool { + var items: Int = 0 + let sections = dataSource?.numberOfSections?(in: self) ?? 1 + + for i in 0.. + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + + diff --git a/DZNEmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile index 090283d7..8e0db964 100644 --- a/DZNEmptyDataSet/Podfile +++ b/DZNEmptyDataSet/Podfile @@ -5,6 +5,10 @@ inhibit_all_warnings! workspace 'DZNEmptyDataSet.xcworkspace' +target 'Bento' do + pod 'SnapKit' +end + target 'DZNEmptyDataSetTests' do pod 'iOSSnapshotTestCase' end diff --git a/DZNEmptyDataSet/Podfile.lock b/DZNEmptyDataSet/Podfile.lock index aec7be8d..e3917d42 100644 --- a/DZNEmptyDataSet/Podfile.lock +++ b/DZNEmptyDataSet/Podfile.lock @@ -4,17 +4,21 @@ PODS: - iOSSnapshotTestCase/Core (6.2.0) - iOSSnapshotTestCase/SwiftSupport (6.2.0): - iOSSnapshotTestCase/Core + - SnapKit (5.0.1) DEPENDENCIES: - iOSSnapshotTestCase + - SnapKit SPEC REPOS: trunk: - iOSSnapshotTestCase + - SnapKit SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 + SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: e0473814f267076f6b72e4045e276a3be55d403b +PODFILE CHECKSUM: 4eca07cb12f8ff3c7d908cd1a88bb832d32562e1 COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Manifest.lock b/DZNEmptyDataSet/Pods/Manifest.lock index aec7be8d..e3917d42 100644 --- a/DZNEmptyDataSet/Pods/Manifest.lock +++ b/DZNEmptyDataSet/Pods/Manifest.lock @@ -4,17 +4,21 @@ PODS: - iOSSnapshotTestCase/Core (6.2.0) - iOSSnapshotTestCase/SwiftSupport (6.2.0): - iOSSnapshotTestCase/Core + - SnapKit (5.0.1) DEPENDENCIES: - iOSSnapshotTestCase + - SnapKit SPEC REPOS: trunk: - iOSSnapshotTestCase + - SnapKit SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 + SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: e0473814f267076f6b72e4045e276a3be55d403b +PODFILE CHECKSUM: 4eca07cb12f8ff3c7d908cd1a88bb832d32562e1 COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj index 09254cae..d0167e04 100644 --- a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj @@ -7,31 +7,70 @@ objects = { /* Begin PBXBuildFile section */ - 09F3021D3323D0B64812EE10886827AB /* UIImage+Diff.h in Headers */ = {isa = PBXBuildFile; fileRef = 2EE0D8468132004B33C282270003A158 /* UIImage+Diff.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 01C550A53C9E2047C83F8E85BBB558E6 /* ConstraintLayoutSupportDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14688B21017F1CE9E5DED52C0502F7C4 /* ConstraintLayoutSupportDSL.swift */; }; + 039EAFE7935113805F3FC21BF1B7C9D5 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBB3E566465976FD7618A282BD43D799 /* LayoutConstraint.swift */; }; + 04543980C4A7CE442330B0F1BC4A9A54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; + 09F3021D3323D0B64812EE10886827AB /* UIImage+Diff.h in Headers */ = {isa = PBXBuildFile; fileRef = 781106B5E3E775340896FC5DD09BCF14 /* UIImage+Diff.h */; settings = {ATTRIBUTES = (Private, ); }; }; 115B9F2A343D1880D138F41B9491C125 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; - 144F29212101A4D03109E989BE0A4F92 /* FBSnapshotTestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0F2628B40D6A150C1ADD3875C92B9792 /* FBSnapshotTestController.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 144F29212101A4D03109E989BE0A4F92 /* FBSnapshotTestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1956E392D500F3CD899D39A5F805736D /* Typealiases.swift in Sources */ = {isa = PBXBuildFile; fileRef = F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */; }; + 1AFB1E9136716C0B61D6C700FF1E60FD /* ConstraintLayoutGuide+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDFA66846C593CAA66836976FE3BB11F /* ConstraintLayoutGuide+Extensions.swift */; }; 20D8C7C8698B7ED12643ECC31666C8C1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; - 2416486B5F64697AC5FCDFD6FD6E019E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; - 2643963F8600F16366AF89ABF6D91F82 /* UIImage+Compare.h in Headers */ = {isa = PBXBuildFile; fileRef = F98662B97F340866723F7EA90CF3D26C /* UIImage+Compare.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 2CA412DDC41031745F66213AD86238FE /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 432D328D5B1788520371534F0EC9AA67 /* SwiftSupport.swift */; }; - 338DD760BB611C08829BEC825B2BB816 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 85F5D23833B7C650DB2B9B5EA95B43F7 /* UIImage+Snapshot.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 3B1E085DF7CFF7E649546346F4A0BC13 /* Pods-EmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E91C64E07DBA5087F6C91BDCA0B09C1F /* Pods-EmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3B540469AF7772C156A3AD0CC6184734 /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = 3BF0D8E3529AAF9DD2F8B3378FD89216 /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3CE95FD1D722818A524677118DF557BA /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = EBD54FBC707C522306409616608E03F7 /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 4A00FE44F3F789ABEB88E16D122FD321 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 641D5F8E6F0E23700685EE1559119B27 /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6543CE32DD97E4F24919522FE4E79A94 /* FBSnapshotTestCasePlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = DC37D45B91EAA34C1B307819F4FBFA48 /* FBSnapshotTestCasePlatform.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 796D4CB4F4AB8ECBBD931B099A74E833 /* FBSnapshotTestController.h in Headers */ = {isa = PBXBuildFile; fileRef = 0BFB7DE40547F6148458C28227213A42 /* FBSnapshotTestController.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 21AB1101BBE4D28D74ED4EDF0D59025A /* ConstraintInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = D16800BBFE31BC78E783108D7FECEDE8 /* ConstraintInsets.swift */; }; + 232B2F922E972D9F43D2EE15ACECE734 /* ConstraintPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = 602AE493333C02D22A808DB2E814C8CD /* ConstraintPriority.swift */; }; + 2643963F8600F16366AF89ABF6D91F82 /* UIImage+Compare.h in Headers */ = {isa = PBXBuildFile; fileRef = A8D6632E06227B6D340FA539C42E71BA /* UIImage+Compare.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 2A1BBBC87AC2367BD14610A9D10D285E /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */; }; + 2C06F2E972444D359754D21AC46BFFE2 /* ConstraintInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */; }; + 2CA412DDC41031745F66213AD86238FE /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */; }; + 338DD760BB611C08829BEC825B2BB816 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3B540469AF7772C156A3AD0CC6184734 /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */; }; + 3CE95FD1D722818A524677118DF557BA /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = AAEFAFB515CDC63285C990A18B7F186C /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */; }; + 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 00E2A524E9D5B315536B7652A2CF3520 /* Pods-Bento-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4A00FE44F3F789ABEB88E16D122FD321 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 42CF60A96AA52AFAAC794A8B0BFE4E0C /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */; }; + 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */; }; + 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */; }; + 5854DF509E8A016B6235793D04083035 /* ConstraintConstantTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */; }; + 6543CE32DD97E4F24919522FE4E79A94 /* FBSnapshotTestCasePlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69CCBEEDFCA6D743D80026568D961919 /* ConstraintMakerExtendable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */; }; + 69E3A06BBDFDC7D06A9D4BDC4E895E73 /* ConstraintRelatableTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */; }; + 6E0EB9E7FAAEDBB7A73ECF3095F69C4A /* UILayoutSupport+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8AA92BACDC3928DF8341019D74CCE92 /* UILayoutSupport+Extensions.swift */; }; + 71DE9DC2FA583526AB4D1FD7F00C099C /* ConstraintDirectionalInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB449F1D76F58450F0CC2BE2EE78F972 /* ConstraintDirectionalInsetTarget.swift */; }; + 75E146C12D1287228A0B493E87CDE31F /* ConstraintMakerRelatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D8154E810B3407E6BB3B714F36BD6A4 /* ConstraintMakerRelatable.swift */; }; + 77C9889055A3B32EA13A9616824DB0ED /* ConstraintLayoutGuideDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09CCE11A4A7A4D2029ACC06D57EFE95D /* ConstraintLayoutGuideDSL.swift */; }; + 796D4CB4F4AB8ECBBD931B099A74E833 /* FBSnapshotTestController.h in Headers */ = {isa = PBXBuildFile; fileRef = ACB0E874B67DCE7034C37BD02A9C502C /* FBSnapshotTestController.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7C1702076F3A31D8D2D45A4A9F09B266 /* ConstraintMakerEditable.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB713400296A38156A49768353706F94 /* ConstraintMakerEditable.swift */; }; + 8277256ADEC3C4DCF79957D1CA681A9A /* ConstraintDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = F949A0CCE79FE9678D1E57C53198F545 /* ConstraintDSL.swift */; }; 82CE8E0DC98452F08E1A03D3CA91B763 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8CAA89EEF1039078430D7A886477E365 /* UIKit.framework */; }; - 82EFF24AA6839F02578915C72F7582AC /* Pods-EmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 61C3D8F63D7253014B7E075D445E3444 /* Pods-EmptyDataSetTests-dummy.m */; }; 86BC25FD2CC085B17A374500C747062D /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 716A9972B9D9103B54DB950893FAF104 /* QuartzCore.framework */; }; + 8705BBF0D428BF0AE1B554A377ECC540 /* ConstraintOffsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 509924EFA033A91CF4C37C30EEA81E36 /* ConstraintOffsetTarget.swift */; }; 968B5318A745263F0D3A72023217CD12 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E601BD54DA9BF4071437E60125281FA /* XCTest.framework */; }; - 97F75B96103369BE6F6040DFD8BC2910 /* iOSSnapshotTestCase-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 796F28118D863DD7DDE14D1F6AC3DC9C /* iOSSnapshotTestCase-dummy.m */; }; - A2DF2053A890C10FE0B6ADA21A5A0FED /* UIImage+Compare.m in Sources */ = {isa = PBXBuildFile; fileRef = EB07CC184E97597B5EF96293FD8D6775 /* UIImage+Compare.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - AA2A80FACDE8BCA52EFF8948A50C070B /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 078903AE75C1D7D5C61C8DE620D53A5A /* UIImage+Diff.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - AF16498E0663C46FD75357313DBE3D39 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B75DE7FCA97B3F0088F9BF1D274F226 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; - C930BCB1B395E19ABBE9D4D491867353 /* iOSSnapshotTestCase-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 58F4181C8833BE6DB86CDA8C805A00A9 /* iOSSnapshotTestCase-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C9E1F1A48507326B8AF0EFDBE3C0EC75 /* FBSnapshotTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 523B65C5434BF857787C7B495D48070A /* FBSnapshotTestCase.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - EAC1544AADA392F95DEF08C5C89DAA93 /* FBSnapshotTestCasePlatform.m in Sources */ = {isa = PBXBuildFile; fileRef = BD3E11CFF525A7BE0F5090E39A8A725C /* FBSnapshotTestCasePlatform.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 97F75B96103369BE6F6040DFD8BC2910 /* iOSSnapshotTestCase-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B7F24A97E3D6B910F581DFCEC81E0759 /* iOSSnapshotTestCase-dummy.m */; }; + 99B5296A5EDECE0557B9DA53D9E19CA1 /* ConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F81E8ABEBEDD4B5F02F6D6D2DCC5885 /* ConstraintItem.swift */; }; + 9B09968922C73D50040C6EEF57890D6E /* ConstraintConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B4BEFED37132D0C0BF675021C271678 /* ConstraintConfig.swift */; }; + 9DD2A9E2BDE8AE7560EBE71EBD5C674D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; + A270CD9EC3C541FE86E65AEDCEF500CF /* ConstraintLayoutGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A66A601713D0924ACB8459F6E4671A3 /* ConstraintLayoutGuide.swift */; }; + A2DF2053A890C10FE0B6ADA21A5A0FED /* UIImage+Compare.m in Sources */ = {isa = PBXBuildFile; fileRef = 33E328700A080B8821651041F993D4FC /* UIImage+Compare.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AA2A80FACDE8BCA52EFF8948A50C070B /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */; }; + AF16498E0663C46FD75357313DBE3D39 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 416EB86742D6CC7D132D587A1B322CE5 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; + B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */; }; + B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */; }; + B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CE5C5B901CEB545BC286F08B19A25B3A /* Pods-Bento-dummy.m */; }; + BECA67DFB5E0984DFAEFCB775C31972E /* ConstraintView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */; }; + C412F27D75AFC0DF0F0289DBB270931C /* ConstraintMakerFinalizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */; }; + C930BCB1B395E19ABBE9D4D491867353 /* iOSSnapshotTestCase-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C9E1F1A48507326B8AF0EFDBE3C0EC75 /* FBSnapshotTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */; }; + D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */; }; + E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */; }; + E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */; }; + EAC1544AADA392F95DEF08C5C89DAA93 /* FBSnapshotTestCasePlatform.m in Sources */ = {isa = PBXBuildFile; fileRef = D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EB1726F5E0D0EEBA20E4528B1E37A8FA /* ConstraintViewDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = C59FE233233D259792F99E2E932DEAC3 /* ConstraintViewDSL.swift */; }; + EE909C7C786140109051BC9562EEC7C8 /* ConstraintMakerPriortizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C0D7860F0C4CD5300B4BFE4C815E878 /* ConstraintMakerPriortizable.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,69 +81,120 @@ remoteGlobalIDString = C393038B0BEF088C1B93E6528005862D; remoteInfo = iOSSnapshotTestCase; }; - 974C9C9D02D9F34F3F4008C7FE80EE21 /* PBXContainerItemProxy */ = { + EAB7C7E47ED215787C4F0FA4D31C39D8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = C393038B0BEF088C1B93E6528005862D; - remoteInfo = iOSSnapshotTestCase; + remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; + remoteInfo = SnapKit; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 027896DEC86092765C2A760ED6F9480C /* Pods-EmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; - 078903AE75C1D7D5C61C8DE620D53A5A /* UIImage+Diff.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Diff.m"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.m"; sourceTree = ""; }; - 0BFB7DE40547F6148458C28227213A42 /* FBSnapshotTestController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestController.h; path = FBSnapshotTestCase/FBSnapshotTestController.h; sourceTree = ""; }; - 0F2628B40D6A150C1ADD3875C92B9792 /* FBSnapshotTestController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestController.m; path = FBSnapshotTestCase/FBSnapshotTestController.m; sourceTree = ""; }; - 1729263C6AF4C3457DF5FAF67D6CFE5D /* Pods_EmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_EmptyDataSetTests.framework; path = "Pods-EmptyDataSetTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 1B75DE7FCA97B3F0088F9BF1D274F226 /* Pods-DZNEmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DZNEmptyDataSetTests-dummy.m"; sourceTree = ""; }; - 219C55A87100C3F768EA58AB6A011319 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; - 290FE9C065FB341E697628A988F8EEBD /* Pods-DZNEmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DZNEmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; - 2EE0D8468132004B33C282270003A158 /* UIImage+Diff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Diff.h"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.h"; sourceTree = ""; }; - 332524405EDFD5162E55CBC3D200E051 /* Pods-EmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; - 3BF0D8E3529AAF9DD2F8B3378FD89216 /* FBSnapshotTestCase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCase.h; path = FBSnapshotTestCase/FBSnapshotTestCase.h; sourceTree = ""; }; - 432D328D5B1788520371534F0EC9AA67 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = FBSnapshotTestCase/SwiftSupport.swift; sourceTree = ""; }; - 5069A3FAA385B1F702DF6F5C83461EF2 /* iOSSnapshotTestCase-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-prefix.pch"; sourceTree = ""; }; - 523B65C5434BF857787C7B495D48070A /* FBSnapshotTestCase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCase.m; path = FBSnapshotTestCase/FBSnapshotTestCase.m; sourceTree = ""; }; - 58F4181C8833BE6DB86CDA8C805A00A9 /* iOSSnapshotTestCase-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-umbrella.h"; sourceTree = ""; }; + 00E2A524E9D5B315536B7652A2CF3520 /* Pods-Bento-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Bento-umbrella.h"; sourceTree = ""; }; + 01059AA86BEAAA63E7DA979E1B948F56 /* Pods-Bento-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-acknowledgements.plist"; sourceTree = ""; }; + 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelatableTarget.swift; path = Source/ConstraintRelatableTarget.swift; sourceTree = ""; }; + 09CCE11A4A7A4D2029ACC06D57EFE95D /* ConstraintLayoutGuideDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuideDSL.swift; path = Source/ConstraintLayoutGuideDSL.swift; sourceTree = ""; }; + 14688B21017F1CE9E5DED52C0502F7C4 /* ConstraintLayoutSupportDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupportDSL.swift; path = Source/ConstraintLayoutSupportDSL.swift; sourceTree = ""; }; + 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraintItem.swift; path = Source/LayoutConstraintItem.swift; sourceTree = ""; }; + 204DD29D73DE0EEB8C7C0D5D719E57A0 /* iOSSnapshotTestCase-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSSnapshotTestCase-Info.plist"; sourceTree = ""; }; + 2218A04A0140E57FA2C2764751EFBC06 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; + 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerExtendable.swift; path = Source/ConstraintMakerExtendable.swift; sourceTree = ""; }; + 26C7AA739AB3C2AFF1C5C45C1AD30F85 /* Pods-Bento.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Bento.modulemap"; sourceTree = ""; }; + 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelation.swift; path = Source/ConstraintRelation.swift; sourceTree = ""; }; + 29A852F36C1AB9EB93ECAA31FEEDDEA7 /* Pods-DZNEmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-DZNEmptyDataSetTests.modulemap"; sourceTree = ""; }; + 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupport.swift; path = Source/ConstraintLayoutSupport.swift; sourceTree = ""; }; + 2C0D7860F0C4CD5300B4BFE4C815E878 /* ConstraintMakerPriortizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerPriortizable.swift; path = Source/ConstraintMakerPriortizable.swift; sourceTree = ""; }; + 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConstantTarget.swift; path = Source/ConstraintConstantTarget.swift; sourceTree = ""; }; + 2F81E8ABEBEDD4B5F02F6D6D2DCC5885 /* ConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintItem.swift; path = Source/ConstraintItem.swift; sourceTree = ""; }; + 318FCEDA105056DB17FFC6BA3CC62B83 /* Pods-Bento-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-Info.plist"; sourceTree = ""; }; + 33E328700A080B8821651041F993D4FC /* UIImage+Compare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Compare.m"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.m"; sourceTree = ""; }; + 3883CD954851107FC02466D1B4EC1F0A /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; + 39309FF58F4F8458ED74F252C8562AB2 /* SnapKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.xcconfig; sourceTree = ""; }; + 3A66A601713D0924ACB8459F6E4671A3 /* ConstraintLayoutGuide.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuide.swift; path = Source/ConstraintLayoutGuide.swift; sourceTree = ""; }; + 3D8154E810B3407E6BB3B714F36BD6A4 /* ConstraintMakerRelatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerRelatable.swift; path = Source/ConstraintMakerRelatable.swift; sourceTree = ""; }; + 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCase.m; path = FBSnapshotTestCase/FBSnapshotTestCase.m; sourceTree = ""; }; + 416EB86742D6CC7D132D587A1B322CE5 /* Pods-DZNEmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DZNEmptyDataSetTests-dummy.m"; sourceTree = ""; }; + 42CF60A96AA52AFAAC794A8B0BFE4E0C /* Pods-DZNEmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-DZNEmptyDataSetTests-umbrella.h"; sourceTree = ""; }; + 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCasePlatform.h; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.h; sourceTree = ""; }; + 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintAttributes.swift; path = Source/ConstraintAttributes.swift; sourceTree = ""; }; + 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintView+Extensions.swift"; path = "Source/ConstraintView+Extensions.swift"; sourceTree = ""; }; + 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMaker.swift; path = Source/ConstraintMaker.swift; sourceTree = ""; }; + 508471E1C327911B3605E038FB242FB3 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.release.xcconfig"; sourceTree = ""; }; + 509924EFA033A91CF4C37C30EEA81E36 /* ConstraintOffsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintOffsetTarget.swift; path = Source/ConstraintOffsetTarget.swift; sourceTree = ""; }; + 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsetTarget.swift; path = Source/ConstraintInsetTarget.swift; sourceTree = ""; }; + 5BC8701BC88C3F0CFFF8CB2924AFBC48 /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.debug.xcconfig"; sourceTree = ""; }; 5E601BD54DA9BF4071437E60125281FA /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; - 61C3D8F63D7253014B7E075D445E3444 /* Pods-EmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-EmptyDataSetTests-dummy.m"; sourceTree = ""; }; - 641D5F8E6F0E23700685EE1559119B27 /* Pods-DZNEmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-DZNEmptyDataSetTests-umbrella.h"; sourceTree = ""; }; - 64860ED4D1469506201CA2ECB2F54AF9 /* iOSSnapshotTestCase-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSSnapshotTestCase-Info.plist"; sourceTree = ""; }; - 6E410EBBDD4A8BFC1EAA1CC501B302E8 /* Pods-EmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-EmptyDataSetTests.modulemap"; sourceTree = ""; }; + 602AE493333C02D22A808DB2E814C8CD /* ConstraintPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriority.swift; path = Source/ConstraintPriority.swift; sourceTree = ""; }; + 62B4124926E3997F1B74C8827581F7D2 /* Pods-Bento-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Bento-frameworks.sh"; sourceTree = ""; }; + 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = iOSSnapshotTestCase.xcconfig; sourceTree = ""; }; + 67BA8C743B739E29ADA042502044CB6B /* SnapKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SnapKit.modulemap; sourceTree = ""; }; + 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constraint.swift; path = Source/Constraint.swift; sourceTree = ""; }; + 6B4BEFED37132D0C0BF675021C271678 /* ConstraintConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConfig.swift; path = Source/ConstraintConfig.swift; sourceTree = ""; }; + 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCase.h; path = FBSnapshotTestCase/FBSnapshotTestCase.h; sourceTree = ""; }; + 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintView.swift; path = Source/ConstraintView.swift; sourceTree = ""; }; 716A9972B9D9103B54DB950893FAF104 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - 796F28118D863DD7DDE14D1F6AC3DC9C /* iOSSnapshotTestCase-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSSnapshotTestCase-dummy.m"; sourceTree = ""; }; + 71D4A2F54D713986524E5AD5E92805A6 /* iOSSnapshotTestCase.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = iOSSnapshotTestCase.modulemap; sourceTree = ""; }; + 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = FBSnapshotTestCase/SwiftSupport.swift; sourceTree = ""; }; + 781106B5E3E775340896FC5DD09BCF14 /* UIImage+Diff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Diff.h"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.h"; sourceTree = ""; }; 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 83AE7D1AEFB339AD0959403003751CA7 /* Pods-EmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-EmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; - 85F5D23833B7C650DB2B9B5EA95B43F7 /* UIImage+Snapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Snapshot.m"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.m"; sourceTree = ""; }; + 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriorityTarget.swift; path = Source/ConstraintPriorityTarget.swift; sourceTree = ""; }; + 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDescription.swift; path = Source/ConstraintDescription.swift; sourceTree = ""; }; + 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestController.m; path = FBSnapshotTestCase/FBSnapshotTestController.m; sourceTree = ""; }; + 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMultiplierTarget.swift; path = Source/ConstraintMultiplierTarget.swift; sourceTree = ""; }; 8CAA89EEF1039078430D7A886477E365 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; - 900C95C1DE73EA90A623D23D95C912B0 /* iOSSnapshotTestCase.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = iOSSnapshotTestCase.modulemap; sourceTree = ""; }; - 90865ABAFFD6A5A298617AB51BBCAF91 /* Pods-DZNEmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-Info.plist"; sourceTree = ""; }; + 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debugging.swift; path = Source/Debugging.swift; sourceTree = ""; }; + 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Snapshot.m"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.m"; sourceTree = ""; }; + 930E354543B5D38844D443BC8AF35616 /* SnapKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-prefix.pch"; sourceTree = ""; }; + 979486118B3E90C08386079D57962701 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SnapKit.framework; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Diff.m"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.m"; sourceTree = ""; }; 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 9E40F32945DC9CF56B2E7A875BDF9DBE /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; + A0CCEB9D5F23CC7E97B8B519A3B542DD /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DZNEmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; + A8AA92BACDC3928DF8341019D74CCE92 /* UILayoutSupport+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILayoutSupport+Extensions.swift"; path = "Source/UILayoutSupport+Extensions.swift"; sourceTree = ""; }; + A8D6632E06227B6D340FA539C42E71BA /* UIImage+Compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Compare.h"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.h"; sourceTree = ""; }; A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_DZNEmptyDataSetTests.framework; path = "Pods-DZNEmptyDataSetTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - B75A47899E602A5CA9E833F7D136622D /* iOSSnapshotTestCase.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = iOSSnapshotTestCase.xcconfig; sourceTree = ""; }; + AAEFAFB515CDC63285C990A18B7F186C /* UIImage+Snapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Snapshot.h"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.h"; sourceTree = ""; }; + AB713400296A38156A49768353706F94 /* ConstraintMakerEditable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerEditable.swift; path = Source/ConstraintMakerEditable.swift; sourceTree = ""; }; + ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SnapKit-dummy.m"; sourceTree = ""; }; + ACB0E874B67DCE7034C37BD02A9C502C /* FBSnapshotTestController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestController.h; path = FBSnapshotTestCase/FBSnapshotTestController.h; sourceTree = ""; }; + ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Bento.framework; path = "Pods-Bento.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-umbrella.h"; sourceTree = ""; }; + B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerFinalizable.swift; path = Source/ConstraintMakerFinalizable.swift; sourceTree = ""; }; + B7F24A97E3D6B910F581DFCEC81E0759 /* iOSSnapshotTestCase-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSSnapshotTestCase-dummy.m"; sourceTree = ""; }; B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FBSnapshotTestCase.framework; path = iOSSnapshotTestCase.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - BBCACE771CD60C1357EF2772ACFA9A5A /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; - BD356F3D59B3BBE571310DBB3B97F84E /* Pods-EmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSetTests-Info.plist"; sourceTree = ""; }; - BD3E11CFF525A7BE0F5090E39A8A725C /* FBSnapshotTestCasePlatform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCasePlatform.m; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.m; sourceTree = ""; }; - DC37D45B91EAA34C1B307819F4FBFA48 /* FBSnapshotTestCasePlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCasePlatform.h; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.h; sourceTree = ""; }; - DC6B74AAA9CE469BC6631EACB90FC966 /* Pods-DZNEmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-DZNEmptyDataSetTests.modulemap"; sourceTree = ""; }; - DFE3F6CF133FD4C8FBF9601D099051B3 /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DZNEmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; - E57FBF63C1E571D185BC40FC4FD0124B /* Pods-EmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-EmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; - E91C64E07DBA5087F6C91BDCA0B09C1F /* Pods-EmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-EmptyDataSetTests-umbrella.h"; sourceTree = ""; }; - EB07CC184E97597B5EF96293FD8D6775 /* UIImage+Compare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Compare.m"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.m"; sourceTree = ""; }; - EB9D7FBC181BDEA4FFA12454B4DDA6E7 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; - EBD54FBC707C522306409616608E03F7 /* UIImage+Snapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Snapshot.h"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.h"; sourceTree = ""; }; - F98662B97F340866723F7EA90CF3D26C /* UIImage+Compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Compare.h"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.h"; sourceTree = ""; }; + C59FE233233D259792F99E2E932DEAC3 /* ConstraintViewDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintViewDSL.swift; path = Source/ConstraintViewDSL.swift; sourceTree = ""; }; + CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsets.swift; path = Source/ConstraintDirectionalInsets.swift; sourceTree = ""; }; + CDFA66846C593CAA66836976FE3BB11F /* ConstraintLayoutGuide+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintLayoutGuide+Extensions.swift"; path = "Source/ConstraintLayoutGuide+Extensions.swift"; sourceTree = ""; }; + CE5C5B901CEB545BC286F08B19A25B3A /* Pods-Bento-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Bento-dummy.m"; sourceTree = ""; }; + CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-umbrella.h"; sourceTree = ""; }; + D16800BBFE31BC78E783108D7FECEDE8 /* ConstraintInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsets.swift; path = Source/ConstraintInsets.swift; sourceTree = ""; }; + D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCasePlatform.m; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.m; sourceTree = ""; }; + DA18E377452AE60DDF9650518BCCAF52 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; + DA264779A04B30737E399F47F1C652D8 /* Pods-Bento-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Bento-acknowledgements.markdown"; sourceTree = ""; }; + DB449F1D76F58450F0CC2BE2EE78F972 /* ConstraintDirectionalInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsetTarget.swift; path = Source/ConstraintDirectionalInsetTarget.swift; sourceTree = ""; }; + DBB3E566465976FD7618A282BD43D799 /* LayoutConstraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraint.swift; path = Source/LayoutConstraint.swift; sourceTree = ""; }; + E0F296AEF0CB8AB64CE53A92A08A6A1A /* SnapKit-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "SnapKit-Info.plist"; sourceTree = ""; }; + EBB920E68A7DA92F06A7B49CE2B9B329 /* iOSSnapshotTestCase-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-prefix.pch"; sourceTree = ""; }; + F474FF0300AA4453562957908E803383 /* Pods-DZNEmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DZNEmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; + F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Typealiases.swift; path = Source/Typealiases.swift; sourceTree = ""; }; + F949A0CCE79FE9678D1E57C53198F545 /* ConstraintDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDSL.swift; path = Source/ConstraintDSL.swift; sourceTree = ""; }; + FD111B8B6DDAAADD5FB27D2DA2C267B1 /* Pods-DZNEmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-Info.plist"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 7A35EDA086C304554C2338DC74768756 /* Frameworks */ = { + 0F95666F024CD6F3262628E242FDB729 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2416486B5F64697AC5FCDFD6FD6E019E /* Foundation.framework in Frameworks */, + 9DD2A9E2BDE8AE7560EBE71EBD5C674D /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 3C8B1704CC97EF12D3409771318C6433 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 04543980C4A7CE442330B0F1BC4A9A54 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -130,50 +220,72 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 17758483808FFC630062D87E87BA22CD /* Products */ = { + 095CC29D5063C80F07ED08B85EADCC58 /* Targets Support Files */ = { isa = PBXGroup; children = ( - B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */, - A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */, - 1729263C6AF4C3457DF5FAF67D6CFE5D /* Pods_EmptyDataSetTests.framework */, + D03530743092024ECA2B591A51108D94 /* Pods-Bento */, + E78D05777A25ACAEF997D86300909A23 /* Pods-DZNEmptyDataSetTests */, ); - name = Products; + name = "Targets Support Files"; sourceTree = ""; }; - 22F3ECA726DE45D34B3ADFE5F42DC86C /* Core */ = { + 10377082182EFE0D7E0E6D60D58DFA90 /* Support Files */ = { isa = PBXGroup; children = ( - 3BF0D8E3529AAF9DD2F8B3378FD89216 /* FBSnapshotTestCase.h */, - 523B65C5434BF857787C7B495D48070A /* FBSnapshotTestCase.m */, - DC37D45B91EAA34C1B307819F4FBFA48 /* FBSnapshotTestCasePlatform.h */, - BD3E11CFF525A7BE0F5090E39A8A725C /* FBSnapshotTestCasePlatform.m */, - 0BFB7DE40547F6148458C28227213A42 /* FBSnapshotTestController.h */, - 0F2628B40D6A150C1ADD3875C92B9792 /* FBSnapshotTestController.m */, - F98662B97F340866723F7EA90CF3D26C /* UIImage+Compare.h */, - EB07CC184E97597B5EF96293FD8D6775 /* UIImage+Compare.m */, - 2EE0D8468132004B33C282270003A158 /* UIImage+Diff.h */, - 078903AE75C1D7D5C61C8DE620D53A5A /* UIImage+Diff.m */, - EBD54FBC707C522306409616608E03F7 /* UIImage+Snapshot.h */, - 85F5D23833B7C650DB2B9B5EA95B43F7 /* UIImage+Snapshot.m */, + 71D4A2F54D713986524E5AD5E92805A6 /* iOSSnapshotTestCase.modulemap */, + 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */, + B7F24A97E3D6B910F581DFCEC81E0759 /* iOSSnapshotTestCase-dummy.m */, + 204DD29D73DE0EEB8C7C0D5D719E57A0 /* iOSSnapshotTestCase-Info.plist */, + EBB920E68A7DA92F06A7B49CE2B9B329 /* iOSSnapshotTestCase-prefix.pch */, + B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */, ); - name = Core; + name = "Support Files"; + path = "../Target Support Files/iOSSnapshotTestCase"; sourceTree = ""; }; - 33C026A8A479CAC5A2B0ADF596B17FFC /* Targets Support Files */ = { + 5069F9E0D99C6E5925D43959B16AEA18 /* SnapKit */ = { isa = PBXGroup; children = ( - C64175448BD262912DD6E8DA8A7A1045 /* Pods-DZNEmptyDataSetTests */, - 8A3E0554708D94F3E07DFBB2E998F53B /* Pods-EmptyDataSetTests */, + 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */, + 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */, + 6B4BEFED37132D0C0BF675021C271678 /* ConstraintConfig.swift */, + 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */, + 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */, + CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */, + DB449F1D76F58450F0CC2BE2EE78F972 /* ConstraintDirectionalInsetTarget.swift */, + F949A0CCE79FE9678D1E57C53198F545 /* ConstraintDSL.swift */, + D16800BBFE31BC78E783108D7FECEDE8 /* ConstraintInsets.swift */, + 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */, + 2F81E8ABEBEDD4B5F02F6D6D2DCC5885 /* ConstraintItem.swift */, + 3A66A601713D0924ACB8459F6E4671A3 /* ConstraintLayoutGuide.swift */, + CDFA66846C593CAA66836976FE3BB11F /* ConstraintLayoutGuide+Extensions.swift */, + 09CCE11A4A7A4D2029ACC06D57EFE95D /* ConstraintLayoutGuideDSL.swift */, + 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */, + 14688B21017F1CE9E5DED52C0502F7C4 /* ConstraintLayoutSupportDSL.swift */, + 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */, + AB713400296A38156A49768353706F94 /* ConstraintMakerEditable.swift */, + 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */, + B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */, + 2C0D7860F0C4CD5300B4BFE4C815E878 /* ConstraintMakerPriortizable.swift */, + 3D8154E810B3407E6BB3B714F36BD6A4 /* ConstraintMakerRelatable.swift */, + 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */, + 509924EFA033A91CF4C37C30EEA81E36 /* ConstraintOffsetTarget.swift */, + 602AE493333C02D22A808DB2E814C8CD /* ConstraintPriority.swift */, + 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */, + 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */, + 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */, + 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */, + 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */, + C59FE233233D259792F99E2E932DEAC3 /* ConstraintViewDSL.swift */, + 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */, + DBB3E566465976FD7618A282BD43D799 /* LayoutConstraint.swift */, + 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */, + F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */, + A8AA92BACDC3928DF8341019D74CCE92 /* UILayoutSupport+Extensions.swift */, + A4FB6E03AEBB90E8953BA41F9C1E2249 /* Support Files */, ); - name = "Targets Support Files"; - sourceTree = ""; - }; - 435489B56C63D57B6F480411D2ECC160 /* Pods */ = { - isa = PBXGroup; - children = ( - EFF1EAE44DF5397EE93427776ECDDC88 /* iOSSnapshotTestCase */, - ); - name = Pods; + name = SnapKit; + path = SnapKit; sourceTree = ""; }; 7DE5752EED0A4C4A430975244947611A /* iOS */ = { @@ -187,29 +299,46 @@ name = iOS; sourceTree = ""; }; - 8A3E0554708D94F3E07DFBB2E998F53B /* Pods-EmptyDataSetTests */ = { + 9300DC269E7A7CF1292D2FE731BE01E4 /* Pods */ = { isa = PBXGroup; children = ( - 6E410EBBDD4A8BFC1EAA1CC501B302E8 /* Pods-EmptyDataSetTests.modulemap */, - 83AE7D1AEFB339AD0959403003751CA7 /* Pods-EmptyDataSetTests-acknowledgements.markdown */, - 027896DEC86092765C2A760ED6F9480C /* Pods-EmptyDataSetTests-acknowledgements.plist */, - 61C3D8F63D7253014B7E075D445E3444 /* Pods-EmptyDataSetTests-dummy.m */, - E57FBF63C1E571D185BC40FC4FD0124B /* Pods-EmptyDataSetTests-frameworks.sh */, - BD356F3D59B3BBE571310DBB3B97F84E /* Pods-EmptyDataSetTests-Info.plist */, - E91C64E07DBA5087F6C91BDCA0B09C1F /* Pods-EmptyDataSetTests-umbrella.h */, - 332524405EDFD5162E55CBC3D200E051 /* Pods-EmptyDataSetTests.debug.xcconfig */, - BBCACE771CD60C1357EF2772ACFA9A5A /* Pods-EmptyDataSetTests.release.xcconfig */, - ); - name = "Pods-EmptyDataSetTests"; - path = "Target Support Files/Pods-EmptyDataSetTests"; + CFD0F97DD932B905E661F7A9C8302A7D /* iOSSnapshotTestCase */, + 5069F9E0D99C6E5925D43959B16AEA18 /* SnapKit */, + ); + name = Pods; sourceTree = ""; }; - A222A9C1427FEE47EF8DE5C03195EBC3 /* SwiftSupport */ = { + A21DE819CCEFB039F235EC568DD5FBEE /* Core */ = { isa = PBXGroup; children = ( - 432D328D5B1788520371534F0EC9AA67 /* SwiftSupport.swift */, + 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */, + 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */, + 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */, + D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */, + ACB0E874B67DCE7034C37BD02A9C502C /* FBSnapshotTestController.h */, + 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */, + A8D6632E06227B6D340FA539C42E71BA /* UIImage+Compare.h */, + 33E328700A080B8821651041F993D4FC /* UIImage+Compare.m */, + 781106B5E3E775340896FC5DD09BCF14 /* UIImage+Diff.h */, + 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */, + AAEFAFB515CDC63285C990A18B7F186C /* UIImage+Snapshot.h */, + 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */, ); - name = SwiftSupport; + name = Core; + sourceTree = ""; + }; + A4FB6E03AEBB90E8953BA41F9C1E2249 /* Support Files */ = { + isa = PBXGroup; + children = ( + 67BA8C743B739E29ADA042502044CB6B /* SnapKit.modulemap */, + 39309FF58F4F8458ED74F252C8562AB2 /* SnapKit.xcconfig */, + ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */, + E0F296AEF0CB8AB64CE53A92A08A6A1A /* SnapKit-Info.plist */, + 930E354543B5D38844D443BC8AF35616 /* SnapKit-prefix.pch */, + CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/SnapKit"; sourceTree = ""; }; BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */ = { @@ -220,21 +349,15 @@ name = Frameworks; sourceTree = ""; }; - C64175448BD262912DD6E8DA8A7A1045 /* Pods-DZNEmptyDataSetTests */ = { + C272EC6C61FA72B02CA53D63CADB048D /* Products */ = { isa = PBXGroup; children = ( - DC6B74AAA9CE469BC6631EACB90FC966 /* Pods-DZNEmptyDataSetTests.modulemap */, - DFE3F6CF133FD4C8FBF9601D099051B3 /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */, - EB9D7FBC181BDEA4FFA12454B4DDA6E7 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */, - 1B75DE7FCA97B3F0088F9BF1D274F226 /* Pods-DZNEmptyDataSetTests-dummy.m */, - 290FE9C065FB341E697628A988F8EEBD /* Pods-DZNEmptyDataSetTests-frameworks.sh */, - 90865ABAFFD6A5A298617AB51BBCAF91 /* Pods-DZNEmptyDataSetTests-Info.plist */, - 641D5F8E6F0E23700685EE1559119B27 /* Pods-DZNEmptyDataSetTests-umbrella.h */, - 9E40F32945DC9CF56B2E7A875BDF9DBE /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, - 219C55A87100C3F768EA58AB6A011319 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, + B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */, + ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */, + A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */, + 979486118B3E90C08386079D57962701 /* SnapKit.framework */, ); - name = "Pods-DZNEmptyDataSetTests"; - path = "Target Support Files/Pods-DZNEmptyDataSetTests"; + name = Products; sourceTree = ""; }; CF1408CF629C7361332E53B88F7BD30C = { @@ -242,45 +365,73 @@ children = ( 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */, - 435489B56C63D57B6F480411D2ECC160 /* Pods */, - 17758483808FFC630062D87E87BA22CD /* Products */, - 33C026A8A479CAC5A2B0ADF596B17FFC /* Targets Support Files */, + 9300DC269E7A7CF1292D2FE731BE01E4 /* Pods */, + C272EC6C61FA72B02CA53D63CADB048D /* Products */, + 095CC29D5063C80F07ED08B85EADCC58 /* Targets Support Files */, ); sourceTree = ""; }; - E8F185C38F4D0FECED758E1073BF7128 /* Support Files */ = { + CFD0F97DD932B905E661F7A9C8302A7D /* iOSSnapshotTestCase */ = { isa = PBXGroup; children = ( - 900C95C1DE73EA90A623D23D95C912B0 /* iOSSnapshotTestCase.modulemap */, - B75A47899E602A5CA9E833F7D136622D /* iOSSnapshotTestCase.xcconfig */, - 796F28118D863DD7DDE14D1F6AC3DC9C /* iOSSnapshotTestCase-dummy.m */, - 64860ED4D1469506201CA2ECB2F54AF9 /* iOSSnapshotTestCase-Info.plist */, - 5069A3FAA385B1F702DF6F5C83461EF2 /* iOSSnapshotTestCase-prefix.pch */, - 58F4181C8833BE6DB86CDA8C805A00A9 /* iOSSnapshotTestCase-umbrella.h */, + A21DE819CCEFB039F235EC568DD5FBEE /* Core */, + 10377082182EFE0D7E0E6D60D58DFA90 /* Support Files */, + EF51F2FFBDF0376D72F24EF40E31779E /* SwiftSupport */, ); - name = "Support Files"; - path = "../Target Support Files/iOSSnapshotTestCase"; + name = iOSSnapshotTestCase; + path = iOSSnapshotTestCase; sourceTree = ""; }; - EFF1EAE44DF5397EE93427776ECDDC88 /* iOSSnapshotTestCase */ = { + D03530743092024ECA2B591A51108D94 /* Pods-Bento */ = { isa = PBXGroup; children = ( - 22F3ECA726DE45D34B3ADFE5F42DC86C /* Core */, - E8F185C38F4D0FECED758E1073BF7128 /* Support Files */, - A222A9C1427FEE47EF8DE5C03195EBC3 /* SwiftSupport */, + 26C7AA739AB3C2AFF1C5C45C1AD30F85 /* Pods-Bento.modulemap */, + DA264779A04B30737E399F47F1C652D8 /* Pods-Bento-acknowledgements.markdown */, + 01059AA86BEAAA63E7DA979E1B948F56 /* Pods-Bento-acknowledgements.plist */, + CE5C5B901CEB545BC286F08B19A25B3A /* Pods-Bento-dummy.m */, + 62B4124926E3997F1B74C8827581F7D2 /* Pods-Bento-frameworks.sh */, + 318FCEDA105056DB17FFC6BA3CC62B83 /* Pods-Bento-Info.plist */, + 00E2A524E9D5B315536B7652A2CF3520 /* Pods-Bento-umbrella.h */, + 5BC8701BC88C3F0CFFF8CB2924AFBC48 /* Pods-Bento.debug.xcconfig */, + 508471E1C327911B3605E038FB242FB3 /* Pods-Bento.release.xcconfig */, ); - name = iOSSnapshotTestCase; - path = iOSSnapshotTestCase; + name = "Pods-Bento"; + path = "Target Support Files/Pods-Bento"; + sourceTree = ""; + }; + E78D05777A25ACAEF997D86300909A23 /* Pods-DZNEmptyDataSetTests */ = { + isa = PBXGroup; + children = ( + 29A852F36C1AB9EB93ECAA31FEEDDEA7 /* Pods-DZNEmptyDataSetTests.modulemap */, + A0CCEB9D5F23CC7E97B8B519A3B542DD /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */, + 2218A04A0140E57FA2C2764751EFBC06 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */, + 416EB86742D6CC7D132D587A1B322CE5 /* Pods-DZNEmptyDataSetTests-dummy.m */, + F474FF0300AA4453562957908E803383 /* Pods-DZNEmptyDataSetTests-frameworks.sh */, + FD111B8B6DDAAADD5FB27D2DA2C267B1 /* Pods-DZNEmptyDataSetTests-Info.plist */, + 42CF60A96AA52AFAAC794A8B0BFE4E0C /* Pods-DZNEmptyDataSetTests-umbrella.h */, + DA18E377452AE60DDF9650518BCCAF52 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, + 3883CD954851107FC02466D1B4EC1F0A /* Pods-DZNEmptyDataSetTests.release.xcconfig */, + ); + name = "Pods-DZNEmptyDataSetTests"; + path = "Target Support Files/Pods-DZNEmptyDataSetTests"; + sourceTree = ""; + }; + EF51F2FFBDF0376D72F24EF40E31779E /* SwiftSupport */ = { + isa = PBXGroup; + children = ( + 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */, + ); + name = SwiftSupport; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 12F90A431FB27F32CAD4D4DFFEE32FF7 /* Headers */ = { + 7DFCF5F12AEEED0500986DBC9BF76170 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3B1E085DF7CFF7E649546346F4A0BC13 /* Pods-EmptyDataSetTests-umbrella.h in Headers */, + A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -298,6 +449,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + B7B8E9DC330BBFF9529BFD9B78831993 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D6B54FF9A1E85667A0622B61E0BD8B72 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -309,6 +468,43 @@ /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ + 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */ = { + isa = PBXNativeTarget; + buildConfigurationList = 7F8CE4DC18DBEA01587212F09727DB3D /* Build configuration list for PBXNativeTarget "SnapKit" */; + buildPhases = ( + 7DFCF5F12AEEED0500986DBC9BF76170 /* Headers */, + 89222AF845A30312C284F407BA48B98F /* Sources */, + 3C8B1704CC97EF12D3409771318C6433 /* Frameworks */, + 9C691CAA90D9565F2EFF5EF823D8A80C /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = SnapKit; + productName = SnapKit; + productReference = 979486118B3E90C08386079D57962701 /* SnapKit.framework */; + productType = "com.apple.product-type.framework"; + }; + AE5F0EC5A805C8E001F8086092590AA1 /* Pods-Bento */ = { + isa = PBXNativeTarget; + buildConfigurationList = F4E0AAF2DAADF2FE3673362A448B0CCE /* Build configuration list for PBXNativeTarget "Pods-Bento" */; + buildPhases = ( + B7B8E9DC330BBFF9529BFD9B78831993 /* Headers */, + 2944AED65A904C7DCCEFDAE8DAE4AFDD /* Sources */, + 0F95666F024CD6F3262628E242FDB729 /* Frameworks */, + 7AD772FAA32CBF996E2DFF8AB29B136F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + E41C264B2775596F41F461AB0F7877F6 /* PBXTargetDependency */, + ); + name = "Pods-Bento"; + productName = "Pods-Bento"; + productReference = ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */; + productType = "com.apple.product-type.framework"; + }; B1EE7C977B6484DAE578FFC4A25371F7 /* Pods-DZNEmptyDataSetTests */ = { isa = PBXNativeTarget; buildConfigurationList = 010084C73E57B1D0D7124269DE2FB5B8 /* Build configuration list for PBXNativeTarget "Pods-DZNEmptyDataSetTests" */; @@ -346,25 +542,6 @@ productReference = B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */; productType = "com.apple.product-type.framework"; }; - F22E9EB6070A0734E7A865931D24105B /* Pods-EmptyDataSetTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = D4D79C952AF7010F341E080CC0AE2F38 /* Build configuration list for PBXNativeTarget "Pods-EmptyDataSetTests" */; - buildPhases = ( - 12F90A431FB27F32CAD4D4DFFEE32FF7 /* Headers */, - 6E84AE3570D939BABEDFC6C999094782 /* Sources */, - 7A35EDA086C304554C2338DC74768756 /* Frameworks */, - C6D0DA03E5855DD9518529DE26678B3D /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 4C2E33AF65BD368F9FA201F3F24CE3CF /* PBXTargetDependency */, - ); - name = "Pods-EmptyDataSetTests"; - productName = "Pods-EmptyDataSetTests"; - productReference = 1729263C6AF4C3457DF5FAF67D6CFE5D /* Pods_EmptyDataSetTests.framework */; - productType = "com.apple.product-type.framework"; - }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ @@ -383,13 +560,14 @@ Base, ); mainGroup = CF1408CF629C7361332E53B88F7BD30C; - productRefGroup = 17758483808FFC630062D87E87BA22CD /* Products */; + productRefGroup = C272EC6C61FA72B02CA53D63CADB048D /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */, + AE5F0EC5A805C8E001F8086092590AA1 /* Pods-Bento */, B1EE7C977B6484DAE578FFC4A25371F7 /* Pods-DZNEmptyDataSetTests */, - F22E9EB6070A0734E7A865931D24105B /* Pods-EmptyDataSetTests */, + 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */, ); }; /* End PBXProject section */ @@ -402,14 +580,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - B8848E61F4166ABF3DCCE39D45C21A1B /* Resources */ = { + 7AD772FAA32CBF996E2DFF8AB29B136F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - C6D0DA03E5855DD9518529DE26678B3D /* Resources */ = { + 9C691CAA90D9565F2EFF5EF823D8A80C /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B8848E61F4166ABF3DCCE39D45C21A1B /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -427,11 +612,11 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 6E84AE3570D939BABEDFC6C999094782 /* Sources */ = { + 2944AED65A904C7DCCEFDAE8DAE4AFDD /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 82EFF24AA6839F02578915C72F7582AC /* Pods-EmptyDataSetTests-dummy.m in Sources */, + B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -450,6 +635,50 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 89222AF845A30312C284F407BA48B98F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */, + 2A1BBBC87AC2367BD14610A9D10D285E /* ConstraintAttributes.swift in Sources */, + 9B09968922C73D50040C6EEF57890D6E /* ConstraintConfig.swift in Sources */, + 5854DF509E8A016B6235793D04083035 /* ConstraintConstantTarget.swift in Sources */, + B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */, + AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */, + 71DE9DC2FA583526AB4D1FD7F00C099C /* ConstraintDirectionalInsetTarget.swift in Sources */, + 8277256ADEC3C4DCF79957D1CA681A9A /* ConstraintDSL.swift in Sources */, + 21AB1101BBE4D28D74ED4EDF0D59025A /* ConstraintInsets.swift in Sources */, + 2C06F2E972444D359754D21AC46BFFE2 /* ConstraintInsetTarget.swift in Sources */, + 99B5296A5EDECE0557B9DA53D9E19CA1 /* ConstraintItem.swift in Sources */, + 1AFB1E9136716C0B61D6C700FF1E60FD /* ConstraintLayoutGuide+Extensions.swift in Sources */, + A270CD9EC3C541FE86E65AEDCEF500CF /* ConstraintLayoutGuide.swift in Sources */, + 77C9889055A3B32EA13A9616824DB0ED /* ConstraintLayoutGuideDSL.swift in Sources */, + 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */, + 01C550A53C9E2047C83F8E85BBB558E6 /* ConstraintLayoutSupportDSL.swift in Sources */, + 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */, + 7C1702076F3A31D8D2D45A4A9F09B266 /* ConstraintMakerEditable.swift in Sources */, + 69CCBEEDFCA6D743D80026568D961919 /* ConstraintMakerExtendable.swift in Sources */, + C412F27D75AFC0DF0F0289DBB270931C /* ConstraintMakerFinalizable.swift in Sources */, + EE909C7C786140109051BC9562EEC7C8 /* ConstraintMakerPriortizable.swift in Sources */, + 75E146C12D1287228A0B493E87CDE31F /* ConstraintMakerRelatable.swift in Sources */, + D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */, + 8705BBF0D428BF0AE1B554A377ECC540 /* ConstraintOffsetTarget.swift in Sources */, + 232B2F922E972D9F43D2EE15ACECE734 /* ConstraintPriority.swift in Sources */, + E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */, + 69E3A06BBDFDC7D06A9D4BDC4E895E73 /* ConstraintRelatableTarget.swift in Sources */, + CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */, + 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */, + BECA67DFB5E0984DFAEFCB775C31972E /* ConstraintView.swift in Sources */, + EB1726F5E0D0EEBA20E4528B1E37A8FA /* ConstraintViewDSL.swift in Sources */, + B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */, + 039EAFE7935113805F3FC21BF1B7C9D5 /* LayoutConstraint.swift in Sources */, + E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */, + 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */, + 1956E392D500F3CD899D39A5F805736D /* Typealiases.swift in Sources */, + 6E0EB9E7FAAEDBB7A73ECF3095F69C4A /* UILayoutSupport+Extensions.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -459,15 +688,48 @@ target = C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */; targetProxy = 1970170B56D3F0BE38BD9DD9C582A769 /* PBXContainerItemProxy */; }; - 4C2E33AF65BD368F9FA201F3F24CE3CF /* PBXTargetDependency */ = { + E41C264B2775596F41F461AB0F7877F6 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = iOSSnapshotTestCase; - target = C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */; - targetProxy = 974C9C9D02D9F34F3F4008C7FE80EE21 /* PBXContainerItemProxy */; + name = SnapKit; + target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; + targetProxy = EAB7C7E47ED215787C4F0FA4D31C39D8 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ + 020BEC27E3AD6D7C84D288C148A58E74 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 39309FF58F4F8458ED74F252C8562AB2 /* SnapKit.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SnapKit/SnapKit-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SnapKit/SnapKit-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/SnapKit/SnapKit.modulemap"; + PRODUCT_MODULE_NAME = SnapKit; + PRODUCT_NAME = SnapKit; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; 196DFA3E4A09A28224918543529A1885 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -532,9 +794,41 @@ }; name = Debug; }; + 2E3C8A300772E0028147E4BAF0D5078A /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 39309FF58F4F8458ED74F252C8562AB2 /* SnapKit.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SnapKit/SnapKit-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SnapKit/SnapKit-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/SnapKit/SnapKit.modulemap"; + PRODUCT_MODULE_NAME = SnapKit; + PRODUCT_NAME = SnapKit; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; 4B756B0C319E4C27F01C0781C4A33A48 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 219C55A87100C3F768EA58AB6A011319 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; + baseConfigurationReference = 3883CD954851107FC02466D1B4EC1F0A /* Pods-DZNEmptyDataSetTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -567,9 +861,9 @@ }; name = Release; }; - 589AAD4B6B784B8CBCCCF62BA0C7C7D4 /* Release */ = { + 79CC4E7753F54CB9BD7B6C253109C5EF /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = BBCACE771CD60C1357EF2772ACFA9A5A /* Pods-EmptyDataSetTests.release.xcconfig */; + baseConfigurationReference = 508471E1C327911B3605E038FB242FB3 /* Pods-Bento.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -582,12 +876,12 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Bento/Pods-Bento-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-Bento/Pods-Bento.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -602,9 +896,9 @@ }; name = Release; }; - 6393F6295629B82BB95C294654C46850 /* Debug */ = { + AD0F6071E0AB0ACB7933EFB7C4BB72F4 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 332524405EDFD5162E55CBC3D200E051 /* Pods-EmptyDataSetTests.debug.xcconfig */; + baseConfigurationReference = 5BC8701BC88C3F0CFFF8CB2924AFBC48 /* Pods-Bento.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -617,12 +911,12 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Bento/Pods-Bento-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-Bento/Pods-Bento.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -698,7 +992,7 @@ }; E30677E30722EED4EFAAF96B70FB53E0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B75A47899E602A5CA9E833F7D136622D /* iOSSnapshotTestCase.xcconfig */; + baseConfigurationReference = 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -730,7 +1024,7 @@ }; EC06F4BCD0F4CC10B27E32823A6F0935 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B75A47899E602A5CA9E833F7D136622D /* iOSSnapshotTestCase.xcconfig */; + baseConfigurationReference = 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -763,7 +1057,7 @@ }; F8191286B6058D8C892B2D45D81C7670 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9E40F32945DC9CF56B2E7A875BDF9DBE /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; + baseConfigurationReference = DA18E377452AE60DDF9650518BCCAF52 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -816,6 +1110,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 7F8CE4DC18DBEA01587212F09727DB3D /* Build configuration list for PBXNativeTarget "SnapKit" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2E3C8A300772E0028147E4BAF0D5078A /* Debug */, + 020BEC27E3AD6D7C84D288C148A58E74 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; A2580343E01EF46F4A1E600895C7753A /* Build configuration list for PBXNativeTarget "iOSSnapshotTestCase" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -825,11 +1128,11 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - D4D79C952AF7010F341E080CC0AE2F38 /* Build configuration list for PBXNativeTarget "Pods-EmptyDataSetTests" */ = { + F4E0AAF2DAADF2FE3673362A448B0CCE /* Build configuration list for PBXNativeTarget "Pods-Bento" */ = { isa = XCConfigurationList; buildConfigurations = ( - 6393F6295629B82BB95C294654C46850 /* Debug */, - 589AAD4B6B784B8CBCCCF62BA0C7C7D4 /* Release */, + AD0F6071E0AB0ACB7933EFB7C4BB72F4 /* Debug */, + 79CC4E7753F54CB9BD7B6C253109C5EF /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/DZNEmptyDataSet/Pods/SnapKit/LICENSE b/DZNEmptyDataSet/Pods/SnapKit/LICENSE new file mode 100644 index 00000000..a18ccfbd --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. diff --git a/DZNEmptyDataSet/Pods/SnapKit/README.md b/DZNEmptyDataSet/Pods/SnapKit/README.md new file mode 100644 index 00000000..0945ce66 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/README.md @@ -0,0 +1,136 @@ + + +SnapKit is a DSL to make Auto Layout easy on both iOS and OS X. + +[![Build Status](https://travis-ci.org/SnapKit/SnapKit.svg)](https://travis-ci.org/SnapKit/SnapKit) +[![Platform](https://img.shields.io/cocoapods/p/SnapKit.svg?style=flat)](https://github.com/SnapKit/SnapKit) +[![Cocoapods Compatible](https://img.shields.io/cocoapods/v/SnapKit.svg)](https://cocoapods.org/pods/SnapKit) +[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) + +#### ⚠️ **To use with Swift 4.x please ensure you are using >= 4.0.0** ⚠️ +#### ⚠️ **To use with Swift 5.x please ensure you are using >= 5.0.0** ⚠️ + +## Contents + +- [Requirements](#requirements) +- [Migration Guides](#migration-guides) +- [Communication](#communication) +- [Installation](#installation) +- [Usage](#usage) +- [Credits](#credits) +- [License](#license) + +## Requirements + +- iOS 10.0+ / Mac OS X 10.12+ / tvOS 10.0+ +- Xcode 10.0+ +- Swift 4.0+ + +## Communication + +- If you **need help**, use [Stack Overflow](http://stackoverflow.com/questions/tagged/snapkit). (Tag 'snapkit') +- If you'd like to **ask a general question**, use [Stack Overflow](http://stackoverflow.com/questions/tagged/snapkit). +- If you **found a bug**, open an issue. +- If you **have a feature request**, open an issue. +- If you **want to contribute**, submit a pull request. + + +## Installation + +### CocoaPods + +[CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command: + +```bash +$ gem install cocoapods +``` + +> CocoaPods 1.1.0+ is required to build SnapKit 4.0.0+. + +To integrate SnapKit into your Xcode project using CocoaPods, specify it in your `Podfile`: + +```ruby +source 'https://github.com/CocoaPods/Specs.git' +platform :ios, '10.0' +use_frameworks! + +target '' do + pod 'SnapKit', '~> 5.0.0' +end +``` + +Then, run the following command: + +```bash +$ pod install +``` + +### Carthage + +[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. + +You can install Carthage with [Homebrew](http://brew.sh/) using the following command: + +```bash +$ brew update +$ brew install carthage +``` + +To integrate SnapKit into your Xcode project using Carthage, specify it in your `Cartfile`: + +```ogdl +github "SnapKit/SnapKit" ~> 5.0.0 +``` + +Run `carthage update` to build the framework and drag the built `SnapKit.framework` into your Xcode project. + +### Manually + +If you prefer not to use either of the aforementioned dependency managers, you can integrate SnapKit into your project manually. + +--- + +## Usage + +### Quick Start + +```swift +import SnapKit + +class MyViewController: UIViewController { + + lazy var box = UIView() + + override func viewDidLoad() { + super.viewDidLoad() + + self.view.addSubview(box) + box.snp.makeConstraints { (make) -> Void in + make.width.height.equalTo(50) + make.center.equalTo(self.view) + } + } + +} +``` + +### Playground +You can try SnapKit in Playground. + +**Note:** + +> To try SnapKit in playground, open `SnapKit.xcworkspace` and build SnapKit.framework for any simulator first. + +### Resources + +- [Documentation](http://snapkit.io/docs/) +- [F.A.Q.](http://snapkit.io/faq/) + +## Credits + +- Robert Payne ([@robertjpayne](https://twitter.com/robertjpayne)) +- Many other contributors + +## License + +SnapKit is released under the MIT license. See LICENSE for details. diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift new file mode 100644 index 00000000..390629ef --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift @@ -0,0 +1,341 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + +public final class Constraint { + + internal let sourceLocation: (String, UInt) + internal let label: String? + + private let from: ConstraintItem + private let to: ConstraintItem + private let relation: ConstraintRelation + private let multiplier: ConstraintMultiplierTarget + private var constant: ConstraintConstantTarget { + didSet { + self.updateConstantAndPriorityIfNeeded() + } + } + private var priority: ConstraintPriorityTarget { + didSet { + self.updateConstantAndPriorityIfNeeded() + } + } + public var layoutConstraints: [LayoutConstraint] + + public var isActive: Bool { + set { + if newValue { + activate() + } + else { + deactivate() + } + } + + get { + for layoutConstraint in self.layoutConstraints { + if layoutConstraint.isActive { + return true + } + } + return false + } + } + + // MARK: Initialization + + internal init(from: ConstraintItem, + to: ConstraintItem, + relation: ConstraintRelation, + sourceLocation: (String, UInt), + label: String?, + multiplier: ConstraintMultiplierTarget, + constant: ConstraintConstantTarget, + priority: ConstraintPriorityTarget) { + self.from = from + self.to = to + self.relation = relation + self.sourceLocation = sourceLocation + self.label = label + self.multiplier = multiplier + self.constant = constant + self.priority = priority + self.layoutConstraints = [] + + // get attributes + let layoutFromAttributes = self.from.attributes.layoutAttributes + let layoutToAttributes = self.to.attributes.layoutAttributes + + // get layout from + let layoutFrom = self.from.layoutConstraintItem! + + // get relation + let layoutRelation = self.relation.layoutRelation + + for layoutFromAttribute in layoutFromAttributes { + // get layout to attribute + let layoutToAttribute: LayoutAttribute + #if os(iOS) || os(tvOS) + if layoutToAttributes.count > 0 { + if self.from.attributes == .edges && self.to.attributes == .margins { + switch layoutFromAttribute { + case .left: + layoutToAttribute = .leftMargin + case .right: + layoutToAttribute = .rightMargin + case .top: + layoutToAttribute = .topMargin + case .bottom: + layoutToAttribute = .bottomMargin + default: + fatalError() + } + } else if self.from.attributes == .margins && self.to.attributes == .edges { + switch layoutFromAttribute { + case .leftMargin: + layoutToAttribute = .left + case .rightMargin: + layoutToAttribute = .right + case .topMargin: + layoutToAttribute = .top + case .bottomMargin: + layoutToAttribute = .bottom + default: + fatalError() + } + } else if self.from.attributes == .directionalEdges && self.to.attributes == .directionalMargins { + switch layoutFromAttribute { + case .leading: + layoutToAttribute = .leadingMargin + case .trailing: + layoutToAttribute = .trailingMargin + case .top: + layoutToAttribute = .topMargin + case .bottom: + layoutToAttribute = .bottomMargin + default: + fatalError() + } + } else if self.from.attributes == .directionalMargins && self.to.attributes == .directionalEdges { + switch layoutFromAttribute { + case .leadingMargin: + layoutToAttribute = .leading + case .trailingMargin: + layoutToAttribute = .trailing + case .topMargin: + layoutToAttribute = .top + case .bottomMargin: + layoutToAttribute = .bottom + default: + fatalError() + } + } else if self.from.attributes == self.to.attributes { + layoutToAttribute = layoutFromAttribute + } else { + layoutToAttribute = layoutToAttributes[0] + } + } else { + if self.to.target == nil && (layoutFromAttribute == .centerX || layoutFromAttribute == .centerY) { + layoutToAttribute = layoutFromAttribute == .centerX ? .left : .top + } else { + layoutToAttribute = layoutFromAttribute + } + } + #else + if self.from.attributes == self.to.attributes { + layoutToAttribute = layoutFromAttribute + } else if layoutToAttributes.count > 0 { + layoutToAttribute = layoutToAttributes[0] + } else { + layoutToAttribute = layoutFromAttribute + } + #endif + + // get layout constant + let layoutConstant: CGFloat = self.constant.constraintConstantTargetValueFor(layoutAttribute: layoutToAttribute) + + // get layout to + var layoutTo: AnyObject? = self.to.target + + // use superview if possible + if layoutTo == nil && layoutToAttribute != .width && layoutToAttribute != .height { + layoutTo = layoutFrom.superview + } + + // create layout constraint + let layoutConstraint = LayoutConstraint( + item: layoutFrom, + attribute: layoutFromAttribute, + relatedBy: layoutRelation, + toItem: layoutTo, + attribute: layoutToAttribute, + multiplier: self.multiplier.constraintMultiplierTargetValue, + constant: layoutConstant + ) + + // set label + layoutConstraint.label = self.label + + // set priority + layoutConstraint.priority = LayoutPriority(rawValue: self.priority.constraintPriorityTargetValue) + + // set constraint + layoutConstraint.constraint = self + + // append + self.layoutConstraints.append(layoutConstraint) + } + } + + // MARK: Public + + @available(*, deprecated, message:"Use activate().") + public func install() { + self.activate() + } + + @available(*, deprecated, message:"Use deactivate().") + public func uninstall() { + self.deactivate() + } + + public func activate() { + self.activateIfNeeded() + } + + public func deactivate() { + self.deactivateIfNeeded() + } + + @discardableResult + public func update(offset: ConstraintOffsetTarget) -> Constraint { + self.constant = offset.constraintOffsetTargetValue + return self + } + + @discardableResult + public func update(inset: ConstraintInsetTarget) -> Constraint { + self.constant = inset.constraintInsetTargetValue + return self + } + + #if os(iOS) || os(tvOS) + @discardableResult + @available(iOS 11.0, tvOS 11.0, *) + public func update(inset: ConstraintDirectionalInsetTarget) -> Constraint { + self.constant = inset.constraintDirectionalInsetTargetValue + return self + } + #endif + + @discardableResult + public func update(priority: ConstraintPriorityTarget) -> Constraint { + self.priority = priority.constraintPriorityTargetValue + return self + } + + @discardableResult + public func update(priority: ConstraintPriority) -> Constraint { + self.priority = priority.value + return self + } + + @available(*, deprecated, message:"Use update(offset: ConstraintOffsetTarget) instead.") + public func updateOffset(amount: ConstraintOffsetTarget) -> Void { self.update(offset: amount) } + + @available(*, deprecated, message:"Use update(inset: ConstraintInsetTarget) instead.") + public func updateInsets(amount: ConstraintInsetTarget) -> Void { self.update(inset: amount) } + + @available(*, deprecated, message:"Use update(priority: ConstraintPriorityTarget) instead.") + public func updatePriority(amount: ConstraintPriorityTarget) -> Void { self.update(priority: amount) } + + @available(*, deprecated, message:"Use update(priority: ConstraintPriorityTarget) instead.") + public func updatePriorityRequired() -> Void {} + + @available(*, deprecated, message:"Use update(priority: ConstraintPriorityTarget) instead.") + public func updatePriorityHigh() -> Void { fatalError("Must be implemented by Concrete subclass.") } + + @available(*, deprecated, message:"Use update(priority: ConstraintPriorityTarget) instead.") + public func updatePriorityMedium() -> Void { fatalError("Must be implemented by Concrete subclass.") } + + @available(*, deprecated, message:"Use update(priority: ConstraintPriorityTarget) instead.") + public func updatePriorityLow() -> Void { fatalError("Must be implemented by Concrete subclass.") } + + // MARK: Internal + + internal func updateConstantAndPriorityIfNeeded() { + for layoutConstraint in self.layoutConstraints { + let attribute = (layoutConstraint.secondAttribute == .notAnAttribute) ? layoutConstraint.firstAttribute : layoutConstraint.secondAttribute + layoutConstraint.constant = self.constant.constraintConstantTargetValueFor(layoutAttribute: attribute) + + let requiredPriority = ConstraintPriority.required.value + if (layoutConstraint.priority.rawValue < requiredPriority), (self.priority.constraintPriorityTargetValue != requiredPriority) { + layoutConstraint.priority = LayoutPriority(rawValue: self.priority.constraintPriorityTargetValue) + } + } + } + + internal func activateIfNeeded(updatingExisting: Bool = false) { + guard let item = self.from.layoutConstraintItem else { + print("WARNING: SnapKit failed to get from item from constraint. Activate will be a no-op.") + return + } + let layoutConstraints = self.layoutConstraints + + if updatingExisting { + var existingLayoutConstraints: [LayoutConstraint] = [] + for constraint in item.constraints { + existingLayoutConstraints += constraint.layoutConstraints + } + + for layoutConstraint in layoutConstraints { + let existingLayoutConstraint = existingLayoutConstraints.first { $0 == layoutConstraint } + guard let updateLayoutConstraint = existingLayoutConstraint else { + fatalError("Updated constraint could not find existing matching constraint to update: \(layoutConstraint)") + } + + let updateLayoutAttribute = (updateLayoutConstraint.secondAttribute == .notAnAttribute) ? updateLayoutConstraint.firstAttribute : updateLayoutConstraint.secondAttribute + updateLayoutConstraint.constant = self.constant.constraintConstantTargetValueFor(layoutAttribute: updateLayoutAttribute) + } + } else { + NSLayoutConstraint.activate(layoutConstraints) + item.add(constraints: [self]) + } + } + + internal func deactivateIfNeeded() { + guard let item = self.from.layoutConstraintItem else { + print("WARNING: SnapKit failed to get from item from constraint. Deactivate will be a no-op.") + return + } + let layoutConstraints = self.layoutConstraints + NSLayoutConstraint.deactivate(layoutConstraints) + item.remove(constraints: [self]) + } +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift new file mode 100644 index 00000000..2f0fbe96 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift @@ -0,0 +1,199 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +internal struct ConstraintAttributes : OptionSet, ExpressibleByIntegerLiteral { + + typealias IntegerLiteralType = UInt + + internal init(rawValue: UInt) { + self.rawValue = rawValue + } + internal init(_ rawValue: UInt) { + self.init(rawValue: rawValue) + } + internal init(nilLiteral: ()) { + self.rawValue = 0 + } + internal init(integerLiteral rawValue: IntegerLiteralType) { + self.init(rawValue: rawValue) + } + + internal private(set) var rawValue: UInt + internal static var allZeros: ConstraintAttributes { return 0 } + internal static func convertFromNilLiteral() -> ConstraintAttributes { return 0 } + internal var boolValue: Bool { return self.rawValue != 0 } + + internal func toRaw() -> UInt { return self.rawValue } + internal static func fromRaw(_ raw: UInt) -> ConstraintAttributes? { return self.init(raw) } + internal static func fromMask(_ raw: UInt) -> ConstraintAttributes { return self.init(raw) } + + // normal + + internal static var none: ConstraintAttributes { return 0 } + internal static var left: ConstraintAttributes { return 1 } + internal static var top: ConstraintAttributes { return 2 } + internal static var right: ConstraintAttributes { return 4 } + internal static var bottom: ConstraintAttributes { return 8 } + internal static var leading: ConstraintAttributes { return 16 } + internal static var trailing: ConstraintAttributes { return 32 } + internal static var width: ConstraintAttributes { return 64 } + internal static var height: ConstraintAttributes { return 128 } + internal static var centerX: ConstraintAttributes { return 256 } + internal static var centerY: ConstraintAttributes { return 512 } + internal static var lastBaseline: ConstraintAttributes { return 1024 } + + @available(iOS 8.0, OSX 10.11, *) + internal static var firstBaseline: ConstraintAttributes { return 2048 } + + @available(iOS 8.0, *) + internal static var leftMargin: ConstraintAttributes { return 4096 } + + @available(iOS 8.0, *) + internal static var rightMargin: ConstraintAttributes { return 8192 } + + @available(iOS 8.0, *) + internal static var topMargin: ConstraintAttributes { return 16384 } + + @available(iOS 8.0, *) + internal static var bottomMargin: ConstraintAttributes { return 32768 } + + @available(iOS 8.0, *) + internal static var leadingMargin: ConstraintAttributes { return 65536 } + + @available(iOS 8.0, *) + internal static var trailingMargin: ConstraintAttributes { return 131072 } + + @available(iOS 8.0, *) + internal static var centerXWithinMargins: ConstraintAttributes { return 262144 } + + @available(iOS 8.0, *) + internal static var centerYWithinMargins: ConstraintAttributes { return 524288 } + + // aggregates + + internal static var edges: ConstraintAttributes { return 15 } + internal static var directionalEdges: ConstraintAttributes { return 58 } + internal static var size: ConstraintAttributes { return 192 } + internal static var center: ConstraintAttributes { return 768 } + + @available(iOS 8.0, *) + internal static var margins: ConstraintAttributes { return 61440 } + + @available(iOS 8.0, *) + internal static var directionalMargins: ConstraintAttributes { return 245760 } + + @available(iOS 8.0, *) + internal static var centerWithinMargins: ConstraintAttributes { return 786432 } + + internal var layoutAttributes:[LayoutAttribute] { + var attrs = [LayoutAttribute]() + if (self.contains(ConstraintAttributes.left)) { + attrs.append(.left) + } + if (self.contains(ConstraintAttributes.top)) { + attrs.append(.top) + } + if (self.contains(ConstraintAttributes.right)) { + attrs.append(.right) + } + if (self.contains(ConstraintAttributes.bottom)) { + attrs.append(.bottom) + } + if (self.contains(ConstraintAttributes.leading)) { + attrs.append(.leading) + } + if (self.contains(ConstraintAttributes.trailing)) { + attrs.append(.trailing) + } + if (self.contains(ConstraintAttributes.width)) { + attrs.append(.width) + } + if (self.contains(ConstraintAttributes.height)) { + attrs.append(.height) + } + if (self.contains(ConstraintAttributes.centerX)) { + attrs.append(.centerX) + } + if (self.contains(ConstraintAttributes.centerY)) { + attrs.append(.centerY) + } + if (self.contains(ConstraintAttributes.lastBaseline)) { + attrs.append(.lastBaseline) + } + + #if os(iOS) || os(tvOS) + if (self.contains(ConstraintAttributes.firstBaseline)) { + attrs.append(.firstBaseline) + } + if (self.contains(ConstraintAttributes.leftMargin)) { + attrs.append(.leftMargin) + } + if (self.contains(ConstraintAttributes.rightMargin)) { + attrs.append(.rightMargin) + } + if (self.contains(ConstraintAttributes.topMargin)) { + attrs.append(.topMargin) + } + if (self.contains(ConstraintAttributes.bottomMargin)) { + attrs.append(.bottomMargin) + } + if (self.contains(ConstraintAttributes.leadingMargin)) { + attrs.append(.leadingMargin) + } + if (self.contains(ConstraintAttributes.trailingMargin)) { + attrs.append(.trailingMargin) + } + if (self.contains(ConstraintAttributes.centerXWithinMargins)) { + attrs.append(.centerXWithinMargins) + } + if (self.contains(ConstraintAttributes.centerYWithinMargins)) { + attrs.append(.centerYWithinMargins) + } + #endif + + return attrs + } +} + +internal func + (left: ConstraintAttributes, right: ConstraintAttributes) -> ConstraintAttributes { + return left.union(right) +} + +internal func +=(left: inout ConstraintAttributes, right: ConstraintAttributes) { + left.formUnion(right) +} + +internal func -=(left: inout ConstraintAttributes, right: ConstraintAttributes) { + left.subtract(right) +} + +internal func ==(left: ConstraintAttributes, right: ConstraintAttributes) -> Bool { + return left.rawValue == right.rawValue +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift new file mode 100644 index 00000000..2746b7d2 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift @@ -0,0 +1,37 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit + public typealias ConstraintInterfaceLayoutDirection = UIUserInterfaceLayoutDirection +#else + import AppKit + public typealias ConstraintInterfaceLayoutDirection = NSUserInterfaceLayoutDirection +#endif + + +public struct ConstraintConfig { + + public static var interfaceLayoutDirection: ConstraintInterfaceLayoutDirection = .leftToRight + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift new file mode 100644 index 00000000..7f549078 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift @@ -0,0 +1,213 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintConstantTarget { +} + +extension CGPoint: ConstraintConstantTarget { +} + +extension CGSize: ConstraintConstantTarget { +} + +extension ConstraintInsets: ConstraintConstantTarget { +} + +#if os(iOS) || os(tvOS) +@available(iOS 11.0, tvOS 11.0, *) +extension ConstraintDirectionalInsets: ConstraintConstantTarget { +} +#endif + +extension ConstraintConstantTarget { + + internal func constraintConstantTargetValueFor(layoutAttribute: LayoutAttribute) -> CGFloat { + if let value = self as? CGFloat { + return value + } + + if let value = self as? Float { + return CGFloat(value) + } + + if let value = self as? Double { + return CGFloat(value) + } + + if let value = self as? Int { + return CGFloat(value) + } + + if let value = self as? UInt { + return CGFloat(value) + } + + if let value = self as? CGSize { + if layoutAttribute == .width { + return value.width + } else if layoutAttribute == .height { + return value.height + } else { + return 0.0 + } + } + + if let value = self as? CGPoint { + #if os(iOS) || os(tvOS) + switch layoutAttribute { + case .left, .right, .leading, .trailing, .centerX, .leftMargin, .rightMargin, .leadingMargin, .trailingMargin, .centerXWithinMargins: + return value.x + case .top, .bottom, .centerY, .topMargin, .bottomMargin, .centerYWithinMargins, .lastBaseline, .firstBaseline: + return value.y + case .width, .height, .notAnAttribute: + return 0.0 + #if swift(>=5.0) + @unknown default: + return 0.0 + #endif + } + #else + switch layoutAttribute { + case .left, .right, .leading, .trailing, .centerX: + return value.x + case .top, .bottom, .centerY, .lastBaseline, .firstBaseline: + return value.y + case .width, .height, .notAnAttribute: + return 0.0 + #if swift(>=5.0) + @unknown default: + return 0.0 + #endif + } + #endif + } + + if let value = self as? ConstraintInsets { + #if os(iOS) || os(tvOS) + switch layoutAttribute { + case .left, .leftMargin: + return value.left + case .top, .topMargin, .firstBaseline: + return value.top + case .right, .rightMargin: + return -value.right + case .bottom, .bottomMargin, .lastBaseline: + return -value.bottom + case .leading, .leadingMargin: + return (ConstraintConfig.interfaceLayoutDirection == .leftToRight) ? value.left : value.right + case .trailing, .trailingMargin: + return (ConstraintConfig.interfaceLayoutDirection == .leftToRight) ? -value.right : -value.left + case .centerX, .centerXWithinMargins: + return (value.left - value.right) / 2 + case .centerY, .centerYWithinMargins: + return (value.top - value.bottom) / 2 + case .width: + return -(value.left + value.right) + case .height: + return -(value.top + value.bottom) + case .notAnAttribute: + return 0.0 + #if swift(>=5.0) + @unknown default: + return 0.0 + #endif + } + #else + switch layoutAttribute { + case .left: + return value.left + case .top, .firstBaseline: + return value.top + case .right: + return -value.right + case .bottom, .lastBaseline: + return -value.bottom + case .leading: + return (ConstraintConfig.interfaceLayoutDirection == .leftToRight) ? value.left : value.right + case .trailing: + return (ConstraintConfig.interfaceLayoutDirection == .leftToRight) ? -value.right : -value.left + case .centerX: + return (value.left - value.right) / 2 + case .centerY: + return (value.top - value.bottom) / 2 + case .width: + return -(value.left + value.right) + case .height: + return -(value.top + value.bottom) + case .notAnAttribute: + return 0.0 + #if swift(>=5.0) + @unknown default: + return 0.0 + #endif + } + #endif + } + + #if os(iOS) || os(tvOS) + if #available(iOS 11.0, tvOS 11.0, *), let value = self as? ConstraintDirectionalInsets { + switch layoutAttribute { + case .left, .leftMargin: + return (ConstraintConfig.interfaceLayoutDirection == .leftToRight) ? value.leading : value.trailing + case .top, .topMargin, .firstBaseline: + return value.top + case .right, .rightMargin: + return (ConstraintConfig.interfaceLayoutDirection == .leftToRight) ? -value.trailing : -value.leading + case .bottom, .bottomMargin, .lastBaseline: + return -value.bottom + case .leading, .leadingMargin: + return value.leading + case .trailing, .trailingMargin: + return -value.trailing + case .centerX, .centerXWithinMargins: + return (value.leading - value.trailing) / 2 + case .centerY, .centerYWithinMargins: + return (value.top - value.bottom) / 2 + case .width: + return -(value.leading + value.trailing) + case .height: + return -(value.top + value.bottom) + case .notAnAttribute: + return 0.0 + #if swift(>=5.0) + @unknown default: + return 0.0 + #else + default: + return 0.0 + #endif + } + } + #endif + + return 0.0 + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift new file mode 100644 index 00000000..ecc5173e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift @@ -0,0 +1,194 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintDSL { + + var target: AnyObject? { get } + + func setLabel(_ value: String?) + func label() -> String? + +} +extension ConstraintDSL { + + public func setLabel(_ value: String?) { + objc_setAssociatedObject(self.target as Any, &labelKey, value, .OBJC_ASSOCIATION_COPY_NONATOMIC) + } + public func label() -> String? { + return objc_getAssociatedObject(self.target as Any, &labelKey) as? String + } + +} +private var labelKey: UInt8 = 0 + + +public protocol ConstraintBasicAttributesDSL : ConstraintDSL { +} +extension ConstraintBasicAttributesDSL { + + // MARK: Basics + + public var left: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.left) + } + + public var top: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.top) + } + + public var right: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.right) + } + + public var bottom: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.bottom) + } + + public var leading: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.leading) + } + + public var trailing: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.trailing) + } + + public var width: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.width) + } + + public var height: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.height) + } + + public var centerX: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.centerX) + } + + public var centerY: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.centerY) + } + + public var edges: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.edges) + } + + public var directionalEdges: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.directionalEdges) + } + + public var size: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.size) + } + + public var center: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.center) + } + +} + +public protocol ConstraintAttributesDSL : ConstraintBasicAttributesDSL { +} +extension ConstraintAttributesDSL { + + // MARK: Baselines + + @available(*, deprecated, message:"Use .lastBaseline instead") + public var baseline: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.lastBaseline) + } + + @available(iOS 8.0, OSX 10.11, *) + public var lastBaseline: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.lastBaseline) + } + + @available(iOS 8.0, OSX 10.11, *) + public var firstBaseline: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.firstBaseline) + } + + // MARK: Margins + + @available(iOS 8.0, *) + public var leftMargin: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.leftMargin) + } + + @available(iOS 8.0, *) + public var topMargin: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.topMargin) + } + + @available(iOS 8.0, *) + public var rightMargin: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.rightMargin) + } + + @available(iOS 8.0, *) + public var bottomMargin: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.bottomMargin) + } + + @available(iOS 8.0, *) + public var leadingMargin: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.leadingMargin) + } + + @available(iOS 8.0, *) + public var trailingMargin: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.trailingMargin) + } + + @available(iOS 8.0, *) + public var centerXWithinMargins: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.centerXWithinMargins) + } + + @available(iOS 8.0, *) + public var centerYWithinMargins: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.centerYWithinMargins) + } + + @available(iOS 8.0, *) + public var margins: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.margins) + } + + @available(iOS 8.0, *) + public var directionalMargins: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.directionalMargins) + } + + @available(iOS 8.0, *) + public var centerWithinMargins: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.centerWithinMargins) + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift new file mode 100644 index 00000000..3521f9f9 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift @@ -0,0 +1,69 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class ConstraintDescription { + + internal let item: LayoutConstraintItem + internal var attributes: ConstraintAttributes + internal var relation: ConstraintRelation? = nil + internal var sourceLocation: (String, UInt)? = nil + internal var label: String? = nil + internal var related: ConstraintItem? = nil + internal var multiplier: ConstraintMultiplierTarget = 1.0 + internal var constant: ConstraintConstantTarget = 0.0 + internal var priority: ConstraintPriorityTarget = 1000.0 + internal lazy var constraint: Constraint? = { + guard let relation = self.relation, + let related = self.related, + let sourceLocation = self.sourceLocation else { + return nil + } + let from = ConstraintItem(target: self.item, attributes: self.attributes) + + return Constraint( + from: from, + to: related, + relation: relation, + sourceLocation: sourceLocation, + label: self.label, + multiplier: self.multiplier, + constant: self.constant, + priority: self.priority + ) + }() + + // MARK: Initialization + + internal init(item: LayoutConstraintItem, attributes: ConstraintAttributes) { + self.item = item + self.attributes = attributes + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift new file mode 100644 index 00000000..955aec35 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift @@ -0,0 +1,49 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) +import UIKit +#else +import AppKit +#endif + +#if os(iOS) || os(tvOS) +public protocol ConstraintDirectionalInsetTarget: ConstraintConstantTarget { +} + +@available(iOS 11.0, tvOS 11.0, *) +extension ConstraintDirectionalInsets: ConstraintDirectionalInsetTarget { +} + +extension ConstraintDirectionalInsetTarget { + + @available(iOS 11.0, tvOS 11.0, *) + internal var constraintDirectionalInsetTargetValue: ConstraintDirectionalInsets { + if let amount = self as? ConstraintDirectionalInsets { + return amount + } else { + return ConstraintDirectionalInsets(top: 0, leading: 0, bottom: 0, trailing: 0) + } + } +} +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift new file mode 100644 index 00000000..ada8ed5b --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift @@ -0,0 +1,34 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +#if os(iOS) || os(tvOS) + @available(iOS 11.0, tvOS 11.0, *) + public typealias ConstraintDirectionalInsets = NSDirectionalEdgeInsets +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift new file mode 100644 index 00000000..ba8a0f3e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift @@ -0,0 +1,72 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintInsetTarget: ConstraintConstantTarget { +} + +extension Int: ConstraintInsetTarget { +} + +extension UInt: ConstraintInsetTarget { +} + +extension Float: ConstraintInsetTarget { +} + +extension Double: ConstraintInsetTarget { +} + +extension CGFloat: ConstraintInsetTarget { +} + +extension ConstraintInsets: ConstraintInsetTarget { +} + +extension ConstraintInsetTarget { + + internal var constraintInsetTargetValue: ConstraintInsets { + if let amount = self as? ConstraintInsets { + return amount + } else if let amount = self as? Float { + return ConstraintInsets(top: CGFloat(amount), left: CGFloat(amount), bottom: CGFloat(amount), right: CGFloat(amount)) + } else if let amount = self as? Double { + return ConstraintInsets(top: CGFloat(amount), left: CGFloat(amount), bottom: CGFloat(amount), right: CGFloat(amount)) + } else if let amount = self as? CGFloat { + return ConstraintInsets(top: amount, left: amount, bottom: amount, right: amount) + } else if let amount = self as? Int { + return ConstraintInsets(top: CGFloat(amount), left: CGFloat(amount), bottom: CGFloat(amount), right: CGFloat(amount)) + } else if let amount = self as? UInt { + return ConstraintInsets(top: CGFloat(amount), left: CGFloat(amount), bottom: CGFloat(amount), right: CGFloat(amount)) + } else { + return ConstraintInsets(top: 0, left: 0, bottom: 0, right: 0) + } + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift new file mode 100644 index 00000000..738ca055 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift @@ -0,0 +1,35 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +#if os(iOS) || os(tvOS) + public typealias ConstraintInsets = UIEdgeInsets +#else + public typealias ConstraintInsets = NSEdgeInsets +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift new file mode 100644 index 00000000..a342c1d9 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift @@ -0,0 +1,61 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public final class ConstraintItem { + + internal weak var target: AnyObject? + internal let attributes: ConstraintAttributes + + internal init(target: AnyObject?, attributes: ConstraintAttributes) { + self.target = target + self.attributes = attributes + } + + internal var layoutConstraintItem: LayoutConstraintItem? { + return self.target as? LayoutConstraintItem + } + +} + +public func ==(lhs: ConstraintItem, rhs: ConstraintItem) -> Bool { + // pointer equality + guard lhs !== rhs else { + return true + } + + // must both have valid targets and identical attributes + guard let target1 = lhs.target, + let target2 = rhs.target, + target1 === target2 && lhs.attributes == rhs.attributes else { + return false + } + + return true +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift new file mode 100644 index 00000000..d429e0cc --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift @@ -0,0 +1,36 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#endif + + +@available(iOS 9.0, OSX 10.11, *) +public extension ConstraintLayoutGuide { + + var snp: ConstraintLayoutGuideDSL { + return ConstraintLayoutGuideDSL(guide: self) + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift new file mode 100644 index 00000000..e3e50c89 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift @@ -0,0 +1,37 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +#if os(iOS) || os(tvOS) + @available(iOS 9.0, *) + public typealias ConstraintLayoutGuide = UILayoutGuide +#else + @available(OSX 10.11, *) + public typealias ConstraintLayoutGuide = NSLayoutGuide +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift new file mode 100644 index 00000000..0007819c --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift @@ -0,0 +1,66 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +@available(iOS 9.0, OSX 10.11, *) +public struct ConstraintLayoutGuideDSL: ConstraintAttributesDSL { + + @discardableResult + public func prepareConstraints(_ closure: (_ make: ConstraintMaker) -> Void) -> [Constraint] { + return ConstraintMaker.prepareConstraints(item: self.guide, closure: closure) + } + + public func makeConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + ConstraintMaker.makeConstraints(item: self.guide, closure: closure) + } + + public func remakeConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + ConstraintMaker.remakeConstraints(item: self.guide, closure: closure) + } + + public func updateConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + ConstraintMaker.updateConstraints(item: self.guide, closure: closure) + } + + public func removeConstraints() { + ConstraintMaker.removeConstraints(item: self.guide) + } + + public var target: AnyObject? { + return self.guide + } + + internal let guide: ConstraintLayoutGuide + + internal init(guide: ConstraintLayoutGuide) { + self.guide = guide + + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift new file mode 100644 index 00000000..e92e9fbc --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift @@ -0,0 +1,36 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +#if os(iOS) || os(tvOS) + @available(iOS 8.0, *) + public typealias ConstraintLayoutSupport = UILayoutSupport +#else + public class ConstraintLayoutSupport {} +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift new file mode 100644 index 00000000..5d6ae899 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift @@ -0,0 +1,56 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +@available(iOS 8.0, *) +public struct ConstraintLayoutSupportDSL: ConstraintDSL { + + public var target: AnyObject? { + return self.support + } + + internal let support: ConstraintLayoutSupport + + internal init(support: ConstraintLayoutSupport) { + self.support = support + + } + + public var top: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.top) + } + + public var bottom: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.bottom) + } + + public var height: ConstraintItem { + return ConstraintItem(target: self.target, attributes: ConstraintAttributes.height) + } +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift new file mode 100644 index 00000000..38f4d316 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift @@ -0,0 +1,212 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + +public class ConstraintMaker { + + public var left: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.left) + } + + public var top: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.top) + } + + public var bottom: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.bottom) + } + + public var right: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.right) + } + + public var leading: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.leading) + } + + public var trailing: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.trailing) + } + + public var width: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.width) + } + + public var height: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.height) + } + + public var centerX: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.centerX) + } + + public var centerY: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.centerY) + } + + @available(*, deprecated, message:"Use lastBaseline instead") + public var baseline: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.lastBaseline) + } + + public var lastBaseline: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.lastBaseline) + } + + @available(iOS 8.0, OSX 10.11, *) + public var firstBaseline: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.firstBaseline) + } + + @available(iOS 8.0, *) + public var leftMargin: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.leftMargin) + } + + @available(iOS 8.0, *) + public var rightMargin: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.rightMargin) + } + + @available(iOS 8.0, *) + public var topMargin: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.topMargin) + } + + @available(iOS 8.0, *) + public var bottomMargin: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.bottomMargin) + } + + @available(iOS 8.0, *) + public var leadingMargin: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.leadingMargin) + } + + @available(iOS 8.0, *) + public var trailingMargin: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.trailingMargin) + } + + @available(iOS 8.0, *) + public var centerXWithinMargins: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.centerXWithinMargins) + } + + @available(iOS 8.0, *) + public var centerYWithinMargins: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.centerYWithinMargins) + } + + public var edges: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.edges) + } + public var directionalEdges: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.directionalEdges) + } + public var size: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.size) + } + public var center: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.center) + } + + @available(iOS 8.0, *) + public var margins: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.margins) + } + + @available(iOS 8.0, *) + public var directionalMargins: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.directionalMargins) + } + + @available(iOS 8.0, *) + public var centerWithinMargins: ConstraintMakerExtendable { + return self.makeExtendableWithAttributes(.centerWithinMargins) + } + + private let item: LayoutConstraintItem + private var descriptions = [ConstraintDescription]() + + internal init(item: LayoutConstraintItem) { + self.item = item + self.item.prepare() + } + + internal func makeExtendableWithAttributes(_ attributes: ConstraintAttributes) -> ConstraintMakerExtendable { + let description = ConstraintDescription(item: self.item, attributes: attributes) + self.descriptions.append(description) + return ConstraintMakerExtendable(description) + } + + internal static func prepareConstraints(item: LayoutConstraintItem, closure: (_ make: ConstraintMaker) -> Void) -> [Constraint] { + let maker = ConstraintMaker(item: item) + closure(maker) + var constraints: [Constraint] = [] + for description in maker.descriptions { + guard let constraint = description.constraint else { + continue + } + constraints.append(constraint) + } + return constraints + } + + internal static func makeConstraints(item: LayoutConstraintItem, closure: (_ make: ConstraintMaker) -> Void) { + let constraints = prepareConstraints(item: item, closure: closure) + for constraint in constraints { + constraint.activateIfNeeded(updatingExisting: false) + } + } + + internal static func remakeConstraints(item: LayoutConstraintItem, closure: (_ make: ConstraintMaker) -> Void) { + self.removeConstraints(item: item) + self.makeConstraints(item: item, closure: closure) + } + + internal static func updateConstraints(item: LayoutConstraintItem, closure: (_ make: ConstraintMaker) -> Void) { + guard item.constraints.count > 0 else { + self.makeConstraints(item: item, closure: closure) + return + } + + let constraints = prepareConstraints(item: item, closure: closure) + for constraint in constraints { + constraint.activateIfNeeded(updatingExisting: true) + } + } + + internal static func removeConstraints(item: LayoutConstraintItem) { + let constraints = item.constraints + for constraint in constraints { + constraint.deactivateIfNeeded() + } + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift new file mode 100644 index 00000000..f768a177 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift @@ -0,0 +1,64 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class ConstraintMakerEditable: ConstraintMakerPriortizable { + + @discardableResult + public func multipliedBy(_ amount: ConstraintMultiplierTarget) -> ConstraintMakerEditable { + self.description.multiplier = amount + return self + } + + @discardableResult + public func dividedBy(_ amount: ConstraintMultiplierTarget) -> ConstraintMakerEditable { + return self.multipliedBy(1.0 / amount.constraintMultiplierTargetValue) + } + + @discardableResult + public func offset(_ amount: ConstraintOffsetTarget) -> ConstraintMakerEditable { + self.description.constant = amount.constraintOffsetTargetValue + return self + } + + @discardableResult + public func inset(_ amount: ConstraintInsetTarget) -> ConstraintMakerEditable { + self.description.constant = amount.constraintInsetTargetValue + return self + } + + #if os(iOS) || os(tvOS) + @discardableResult + @available(iOS 11.0, tvOS 11.0, *) + public func inset(_ amount: ConstraintDirectionalInsetTarget) -> ConstraintMakerEditable { + self.description.constant = amount.constraintDirectionalInsetTargetValue + return self + } + #endif +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift new file mode 100644 index 00000000..ce471690 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift @@ -0,0 +1,179 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class ConstraintMakerExtendable: ConstraintMakerRelatable { + + public var left: ConstraintMakerExtendable { + self.description.attributes += .left + return self + } + + public var top: ConstraintMakerExtendable { + self.description.attributes += .top + return self + } + + public var bottom: ConstraintMakerExtendable { + self.description.attributes += .bottom + return self + } + + public var right: ConstraintMakerExtendable { + self.description.attributes += .right + return self + } + + public var leading: ConstraintMakerExtendable { + self.description.attributes += .leading + return self + } + + public var trailing: ConstraintMakerExtendable { + self.description.attributes += .trailing + return self + } + + public var width: ConstraintMakerExtendable { + self.description.attributes += .width + return self + } + + public var height: ConstraintMakerExtendable { + self.description.attributes += .height + return self + } + + public var centerX: ConstraintMakerExtendable { + self.description.attributes += .centerX + return self + } + + public var centerY: ConstraintMakerExtendable { + self.description.attributes += .centerY + return self + } + + @available(*, deprecated, message:"Use lastBaseline instead") + public var baseline: ConstraintMakerExtendable { + self.description.attributes += .lastBaseline + return self + } + + public var lastBaseline: ConstraintMakerExtendable { + self.description.attributes += .lastBaseline + return self + } + + @available(iOS 8.0, OSX 10.11, *) + public var firstBaseline: ConstraintMakerExtendable { + self.description.attributes += .firstBaseline + return self + } + + @available(iOS 8.0, *) + public var leftMargin: ConstraintMakerExtendable { + self.description.attributes += .leftMargin + return self + } + + @available(iOS 8.0, *) + public var rightMargin: ConstraintMakerExtendable { + self.description.attributes += .rightMargin + return self + } + + @available(iOS 8.0, *) + public var topMargin: ConstraintMakerExtendable { + self.description.attributes += .topMargin + return self + } + + @available(iOS 8.0, *) + public var bottomMargin: ConstraintMakerExtendable { + self.description.attributes += .bottomMargin + return self + } + + @available(iOS 8.0, *) + public var leadingMargin: ConstraintMakerExtendable { + self.description.attributes += .leadingMargin + return self + } + + @available(iOS 8.0, *) + public var trailingMargin: ConstraintMakerExtendable { + self.description.attributes += .trailingMargin + return self + } + + @available(iOS 8.0, *) + public var centerXWithinMargins: ConstraintMakerExtendable { + self.description.attributes += .centerXWithinMargins + return self + } + + @available(iOS 8.0, *) + public var centerYWithinMargins: ConstraintMakerExtendable { + self.description.attributes += .centerYWithinMargins + return self + } + + public var edges: ConstraintMakerExtendable { + self.description.attributes += .edges + return self + } + public var directionalEdges: ConstraintMakerExtendable { + self.description.attributes += .directionalEdges + return self + } + public var size: ConstraintMakerExtendable { + self.description.attributes += .size + return self + } + + @available(iOS 8.0, *) + public var margins: ConstraintMakerExtendable { + self.description.attributes += .margins + return self + } + + @available(iOS 8.0, *) + public var directionalMargins: ConstraintMakerExtendable { + self.description.attributes += .directionalMargins + return self + } + + @available(iOS 8.0, *) + public var centerWithinMargins: ConstraintMakerExtendable { + self.description.attributes += .centerWithinMargins + return self + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift new file mode 100644 index 00000000..4e1379e2 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift @@ -0,0 +1,49 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class ConstraintMakerFinalizable { + + internal let description: ConstraintDescription + + internal init(_ description: ConstraintDescription) { + self.description = description + } + + @discardableResult + public func labeled(_ label: String) -> ConstraintMakerFinalizable { + self.description.label = label + return self + } + + public var constraint: Constraint { + return self.description.constraint! + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift new file mode 100644 index 00000000..e0d452d1 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift @@ -0,0 +1,68 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class ConstraintMakerPriortizable: ConstraintMakerFinalizable { + + @discardableResult + public func priority(_ amount: ConstraintPriority) -> ConstraintMakerFinalizable { + self.description.priority = amount.value + return self + } + + @discardableResult + public func priority(_ amount: ConstraintPriorityTarget) -> ConstraintMakerFinalizable { + self.description.priority = amount + return self + } + + @available(*, deprecated, message:"Use priority(.required) instead.") + @discardableResult + public func priorityRequired() -> ConstraintMakerFinalizable { + return self.priority(.required) + } + + @available(*, deprecated, message:"Use priority(.high) instead.") + @discardableResult + public func priorityHigh() -> ConstraintMakerFinalizable { + return self.priority(.high) + } + + @available(*, deprecated, message:"Use priority(.medium) instead.") + @discardableResult + public func priorityMedium() -> ConstraintMakerFinalizable { + return self.priority(.medium) + } + + @available(*, deprecated, message:"Use priority(.low) instead.") + @discardableResult + public func priorityLow() -> ConstraintMakerFinalizable { + return self.priority(.low) + } +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift new file mode 100644 index 00000000..78895323 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift @@ -0,0 +1,115 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class ConstraintMakerRelatable { + + internal let description: ConstraintDescription + + internal init(_ description: ConstraintDescription) { + self.description = description + } + + internal func relatedTo(_ other: ConstraintRelatableTarget, relation: ConstraintRelation, file: String, line: UInt) -> ConstraintMakerEditable { + let related: ConstraintItem + let constant: ConstraintConstantTarget + + if let other = other as? ConstraintItem { + guard other.attributes == ConstraintAttributes.none || + other.attributes.layoutAttributes.count <= 1 || + other.attributes.layoutAttributes == self.description.attributes.layoutAttributes || + other.attributes == .edges && self.description.attributes == .margins || + other.attributes == .margins && self.description.attributes == .edges || + other.attributes == .directionalEdges && self.description.attributes == .directionalMargins || + other.attributes == .directionalMargins && self.description.attributes == .directionalEdges else { + fatalError("Cannot constraint to multiple non identical attributes. (\(file), \(line))"); + } + + related = other + constant = 0.0 + } else if let other = other as? ConstraintView { + related = ConstraintItem(target: other, attributes: ConstraintAttributes.none) + constant = 0.0 + } else if let other = other as? ConstraintConstantTarget { + related = ConstraintItem(target: nil, attributes: ConstraintAttributes.none) + constant = other + } else if #available(iOS 9.0, OSX 10.11, *), let other = other as? ConstraintLayoutGuide { + related = ConstraintItem(target: other, attributes: ConstraintAttributes.none) + constant = 0.0 + } else { + fatalError("Invalid constraint. (\(file), \(line))") + } + + let editable = ConstraintMakerEditable(self.description) + editable.description.sourceLocation = (file, line) + editable.description.relation = relation + editable.description.related = related + editable.description.constant = constant + return editable + } + + @discardableResult + public func equalTo(_ other: ConstraintRelatableTarget, _ file: String = #file, _ line: UInt = #line) -> ConstraintMakerEditable { + return self.relatedTo(other, relation: .equal, file: file, line: line) + } + + @discardableResult + public func equalToSuperview(_ file: String = #file, _ line: UInt = #line) -> ConstraintMakerEditable { + guard let other = self.description.item.superview else { + fatalError("Expected superview but found nil when attempting make constraint `equalToSuperview`.") + } + return self.relatedTo(other, relation: .equal, file: file, line: line) + } + + @discardableResult + public func lessThanOrEqualTo(_ other: ConstraintRelatableTarget, _ file: String = #file, _ line: UInt = #line) -> ConstraintMakerEditable { + return self.relatedTo(other, relation: .lessThanOrEqual, file: file, line: line) + } + + @discardableResult + public func lessThanOrEqualToSuperview(_ file: String = #file, _ line: UInt = #line) -> ConstraintMakerEditable { + guard let other = self.description.item.superview else { + fatalError("Expected superview but found nil when attempting make constraint `lessThanOrEqualToSuperview`.") + } + return self.relatedTo(other, relation: .lessThanOrEqual, file: file, line: line) + } + + @discardableResult + public func greaterThanOrEqualTo(_ other: ConstraintRelatableTarget, _ file: String = #file, line: UInt = #line) -> ConstraintMakerEditable { + return self.relatedTo(other, relation: .greaterThanOrEqual, file: file, line: line) + } + + @discardableResult + public func greaterThanOrEqualToSuperview(_ file: String = #file, line: UInt = #line) -> ConstraintMakerEditable { + guard let other = self.description.item.superview else { + fatalError("Expected superview but found nil when attempting make constraint `greaterThanOrEqualToSuperview`.") + } + return self.relatedTo(other, relation: .greaterThanOrEqual, file: file, line: line) + } +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift new file mode 100644 index 00000000..6fecd33e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift @@ -0,0 +1,75 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintMultiplierTarget { + + var constraintMultiplierTargetValue: CGFloat { get } + +} + +extension Int: ConstraintMultiplierTarget { + + public var constraintMultiplierTargetValue: CGFloat { + return CGFloat(self) + } + +} + +extension UInt: ConstraintMultiplierTarget { + + public var constraintMultiplierTargetValue: CGFloat { + return CGFloat(self) + } + +} + +extension Float: ConstraintMultiplierTarget { + + public var constraintMultiplierTargetValue: CGFloat { + return CGFloat(self) + } + +} + +extension Double: ConstraintMultiplierTarget { + + public var constraintMultiplierTargetValue: CGFloat { + return CGFloat(self) + } + +} + +extension CGFloat: ConstraintMultiplierTarget { + + public var constraintMultiplierTargetValue: CGFloat { + return self + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift new file mode 100644 index 00000000..bd9e0a1e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift @@ -0,0 +1,69 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintOffsetTarget: ConstraintConstantTarget { +} + +extension Int: ConstraintOffsetTarget { +} + +extension UInt: ConstraintOffsetTarget { +} + +extension Float: ConstraintOffsetTarget { +} + +extension Double: ConstraintOffsetTarget { +} + +extension CGFloat: ConstraintOffsetTarget { +} + +extension ConstraintOffsetTarget { + + internal var constraintOffsetTargetValue: CGFloat { + let offset: CGFloat + if let amount = self as? Float { + offset = CGFloat(amount) + } else if let amount = self as? Double { + offset = CGFloat(amount) + } else if let amount = self as? CGFloat { + offset = CGFloat(amount) + } else if let amount = self as? Int { + offset = CGFloat(amount) + } else if let amount = self as? UInt { + offset = CGFloat(amount) + } else { + offset = 0.0 + } + return offset + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift new file mode 100644 index 00000000..f9dab162 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift @@ -0,0 +1,77 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + +public struct ConstraintPriority : ExpressibleByFloatLiteral, Equatable, Strideable { + public typealias FloatLiteralType = Float + + public let value: Float + + public init(floatLiteral value: Float) { + self.value = value + } + + public init(_ value: Float) { + self.value = value + } + + public static var required: ConstraintPriority { + return 1000.0 + } + + public static var high: ConstraintPriority { + return 750.0 + } + + public static var medium: ConstraintPriority { + #if os(OSX) + return 501.0 + #else + return 500.0 + #endif + + } + + public static var low: ConstraintPriority { + return 250.0 + } + + public static func ==(lhs: ConstraintPriority, rhs: ConstraintPriority) -> Bool { + return lhs.value == rhs.value + } + + // MARK: Strideable + + public func advanced(by n: FloatLiteralType) -> ConstraintPriority { + return ConstraintPriority(floatLiteral: value + n) + } + + public func distance(to other: ConstraintPriority) -> FloatLiteralType { + return other.value - value + } +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift new file mode 100644 index 00000000..064f750b --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift @@ -0,0 +1,85 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintPriorityTarget { + + var constraintPriorityTargetValue: Float { get } + +} + +extension Int: ConstraintPriorityTarget { + + public var constraintPriorityTargetValue: Float { + return Float(self) + } + +} + +extension UInt: ConstraintPriorityTarget { + + public var constraintPriorityTargetValue: Float { + return Float(self) + } + +} + +extension Float: ConstraintPriorityTarget { + + public var constraintPriorityTargetValue: Float { + return self + } + +} + +extension Double: ConstraintPriorityTarget { + + public var constraintPriorityTargetValue: Float { + return Float(self) + } + +} + +extension CGFloat: ConstraintPriorityTarget { + + public var constraintPriorityTargetValue: Float { + return Float(self) + } + +} + +#if os(iOS) || os(tvOS) +extension UILayoutPriority: ConstraintPriorityTarget { + + public var constraintPriorityTargetValue: Float { + return self.rawValue + } + +} +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift new file mode 100644 index 00000000..d517a61e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift @@ -0,0 +1,72 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol ConstraintRelatableTarget { +} + +extension Int: ConstraintRelatableTarget { +} + +extension UInt: ConstraintRelatableTarget { +} + +extension Float: ConstraintRelatableTarget { +} + +extension Double: ConstraintRelatableTarget { +} + +extension CGFloat: ConstraintRelatableTarget { +} + +extension CGSize: ConstraintRelatableTarget { +} + +extension CGPoint: ConstraintRelatableTarget { +} + +extension ConstraintInsets: ConstraintRelatableTarget { +} + +#if os(iOS) || os(tvOS) +@available(iOS 11.0, tvOS 11.0, *) +extension ConstraintDirectionalInsets: ConstraintRelatableTarget { +} +#endif + +extension ConstraintItem: ConstraintRelatableTarget { +} + +extension ConstraintView: ConstraintRelatableTarget { +} + +@available(iOS 9.0, OSX 10.11, *) +extension ConstraintLayoutGuide: ConstraintRelatableTarget { +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift new file mode 100644 index 00000000..446aaf76 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift @@ -0,0 +1,48 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +internal enum ConstraintRelation : Int { + case equal = 1 + case lessThanOrEqual + case greaterThanOrEqual + + internal var layoutRelation: LayoutRelation { + get { + switch(self) { + case .equal: + return .equal + case .lessThanOrEqual: + return .lessThanOrEqual + case .greaterThanOrEqual: + return .greaterThanOrEqual + } + } + } +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift new file mode 100644 index 00000000..a4898dc1 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift @@ -0,0 +1,152 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public extension ConstraintView { + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_left: ConstraintItem { return self.snp.left } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_top: ConstraintItem { return self.snp.top } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_right: ConstraintItem { return self.snp.right } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_bottom: ConstraintItem { return self.snp.bottom } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_leading: ConstraintItem { return self.snp.leading } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_trailing: ConstraintItem { return self.snp.trailing } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_width: ConstraintItem { return self.snp.width } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_height: ConstraintItem { return self.snp.height } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_centerX: ConstraintItem { return self.snp.centerX } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_centerY: ConstraintItem { return self.snp.centerY } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_baseline: ConstraintItem { return self.snp.baseline } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, OSX 10.11, *) + var snp_lastBaseline: ConstraintItem { return self.snp.lastBaseline } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, OSX 10.11, *) + var snp_firstBaseline: ConstraintItem { return self.snp.firstBaseline } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_leftMargin: ConstraintItem { return self.snp.leftMargin } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_topMargin: ConstraintItem { return self.snp.topMargin } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_rightMargin: ConstraintItem { return self.snp.rightMargin } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_bottomMargin: ConstraintItem { return self.snp.bottomMargin } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_leadingMargin: ConstraintItem { return self.snp.leadingMargin } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_trailingMargin: ConstraintItem { return self.snp.trailingMargin } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_centerXWithinMargins: ConstraintItem { return self.snp.centerXWithinMargins } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_centerYWithinMargins: ConstraintItem { return self.snp.centerYWithinMargins } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_edges: ConstraintItem { return self.snp.edges } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_size: ConstraintItem { return self.snp.size } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + var snp_center: ConstraintItem { return self.snp.center } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_margins: ConstraintItem { return self.snp.margins } + + @available(iOS, deprecated, message:"Use newer snp.* syntax.") + @available(iOS 8.0, *) + var snp_centerWithinMargins: ConstraintItem { return self.snp.centerWithinMargins } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + func snp_prepareConstraints(_ closure: (_ make: ConstraintMaker) -> Void) -> [Constraint] { + return self.snp.prepareConstraints(closure) + } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + func snp_makeConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + self.snp.makeConstraints(closure) + } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + func snp_remakeConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + self.snp.remakeConstraints(closure) + } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + func snp_updateConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + self.snp.updateConstraints(closure) + } + + @available(*, deprecated, message:"Use newer snp.* syntax.") + func snp_removeConstraints() { + self.snp.removeConstraints() + } + + var snp: ConstraintViewDSL { + return ConstraintViewDSL(view: self) + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift new file mode 100644 index 00000000..6ff8a76e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift @@ -0,0 +1,35 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +#if os(iOS) || os(tvOS) + public typealias ConstraintView = UIView +#else + public typealias ConstraintView = NSView +#endif diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift new file mode 100644 index 00000000..a0187f97 --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift @@ -0,0 +1,101 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public struct ConstraintViewDSL: ConstraintAttributesDSL { + + @discardableResult + public func prepareConstraints(_ closure: (_ make: ConstraintMaker) -> Void) -> [Constraint] { + return ConstraintMaker.prepareConstraints(item: self.view, closure: closure) + } + + public func makeConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + ConstraintMaker.makeConstraints(item: self.view, closure: closure) + } + + public func remakeConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + ConstraintMaker.remakeConstraints(item: self.view, closure: closure) + } + + public func updateConstraints(_ closure: (_ make: ConstraintMaker) -> Void) { + ConstraintMaker.updateConstraints(item: self.view, closure: closure) + } + + public func removeConstraints() { + ConstraintMaker.removeConstraints(item: self.view) + } + + public var contentHuggingHorizontalPriority: Float { + get { + return self.view.contentHuggingPriority(for: .horizontal).rawValue + } + nonmutating set { + self.view.setContentHuggingPriority(LayoutPriority(rawValue: newValue), for: .horizontal) + } + } + + public var contentHuggingVerticalPriority: Float { + get { + return self.view.contentHuggingPriority(for: .vertical).rawValue + } + nonmutating set { + self.view.setContentHuggingPriority(LayoutPriority(rawValue: newValue), for: .vertical) + } + } + + public var contentCompressionResistanceHorizontalPriority: Float { + get { + return self.view.contentCompressionResistancePriority(for: .horizontal).rawValue + } + nonmutating set { + self.view.setContentCompressionResistancePriority(LayoutPriority(rawValue: newValue), for: .horizontal) + } + } + + public var contentCompressionResistanceVerticalPriority: Float { + get { + return self.view.contentCompressionResistancePriority(for: .vertical).rawValue + } + nonmutating set { + self.view.setContentCompressionResistancePriority(LayoutPriority(rawValue: newValue), for: .vertical) + } + } + + public var target: AnyObject? { + return self.view + } + + internal let view: ConstraintView + + internal init(view: ConstraintView) { + self.view = view + + } + +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift new file mode 100644 index 00000000..a78579ab --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift @@ -0,0 +1,169 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + +public extension LayoutConstraint { + + override var description: String { + var description = "<" + + description += descriptionForObject(self) + + if let firstItem = conditionalOptional(from: self.firstItem) { + description += " \(descriptionForObject(firstItem))" + } + + if self.firstAttribute != .notAnAttribute { + description += ".\(descriptionForAttribute(self.firstAttribute))" + } + + description += " \(descriptionForRelation(self.relation))" + + if let secondItem = self.secondItem { + description += " \(descriptionForObject(secondItem))" + } + + if self.secondAttribute != .notAnAttribute { + description += ".\(descriptionForAttribute(self.secondAttribute))" + } + + if self.multiplier != 1.0 { + description += " * \(self.multiplier)" + } + + if self.secondAttribute == .notAnAttribute { + description += " \(self.constant)" + } else { + if self.constant > 0.0 { + description += " + \(self.constant)" + } else if self.constant < 0.0 { + description += " - \(abs(self.constant))" + } + } + + if self.priority.rawValue != 1000.0 { + description += " ^\(self.priority)" + } + + description += ">" + + return description + } + +} + +private func descriptionForRelation(_ relation: LayoutRelation) -> String { + switch relation { + case .equal: return "==" + case .greaterThanOrEqual: return ">=" + case .lessThanOrEqual: return "<=" + #if swift(>=5.0) + @unknown default: return "unknown" + #endif + } +} + +private func descriptionForAttribute(_ attribute: LayoutAttribute) -> String { + #if os(iOS) || os(tvOS) + switch attribute { + case .notAnAttribute: return "notAnAttribute" + case .top: return "top" + case .left: return "left" + case .bottom: return "bottom" + case .right: return "right" + case .leading: return "leading" + case .trailing: return "trailing" + case .width: return "width" + case .height: return "height" + case .centerX: return "centerX" + case .centerY: return "centerY" + case .lastBaseline: return "lastBaseline" + case .firstBaseline: return "firstBaseline" + case .topMargin: return "topMargin" + case .leftMargin: return "leftMargin" + case .bottomMargin: return "bottomMargin" + case .rightMargin: return "rightMargin" + case .leadingMargin: return "leadingMargin" + case .trailingMargin: return "trailingMargin" + case .centerXWithinMargins: return "centerXWithinMargins" + case .centerYWithinMargins: return "centerYWithinMargins" + #if swift(>=5.0) + @unknown default: return "unknown" + #endif + } + #else + switch attribute { + case .notAnAttribute: return "notAnAttribute" + case .top: return "top" + case .left: return "left" + case .bottom: return "bottom" + case .right: return "right" + case .leading: return "leading" + case .trailing: return "trailing" + case .width: return "width" + case .height: return "height" + case .centerX: return "centerX" + case .centerY: return "centerY" + case .lastBaseline: return "lastBaseline" + case .firstBaseline: return "firstBaseline" + #if swift(>=5.0) + @unknown default: return "unknown" + #endif + } + #endif +} + +private func conditionalOptional(from object: Optional) -> Optional { + return object +} + +private func conditionalOptional(from object: T) -> Optional { + return Optional.some(object) +} + +private func descriptionForObject(_ object: AnyObject) -> String { + let pointerDescription = String(format: "%p", UInt(bitPattern: ObjectIdentifier(object))) + var desc = "" + + desc += type(of: object).description() + + if let object = object as? ConstraintView { + desc += ":\(object.snp.label() ?? pointerDescription)" + } else if let object = object as? LayoutConstraint { + desc += ":\(object.label ?? pointerDescription)" + } else { + desc += ":\(pointerDescription)" + } + + if let object = object as? LayoutConstraint, let file = object.constraint?.sourceLocation.0, let line = object.constraint?.sourceLocation.1 { + desc += "@\((file as NSString).lastPathComponent)#\(line)" + } + + desc += "" + return desc +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift new file mode 100644 index 00000000..5425ea8e --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift @@ -0,0 +1,61 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public class LayoutConstraint : NSLayoutConstraint { + + public var label: String? { + get { + return self.identifier + } + set { + self.identifier = newValue + } + } + + internal weak var constraint: Constraint? = nil + +} + +internal func ==(lhs: LayoutConstraint, rhs: LayoutConstraint) -> Bool { + // If firstItem or secondItem on either constraint has a dangling pointer + // this comparison can cause a crash. The solution for this is to ensure + // your layout code hold strong references to things like Views, LayoutGuides + // and LayoutAnchors as SnapKit will not keep strong references to any of these. + guard lhs.firstAttribute == rhs.firstAttribute && + lhs.secondAttribute == rhs.secondAttribute && + lhs.relation == rhs.relation && + lhs.priority == rhs.priority && + lhs.multiplier == rhs.multiplier && + lhs.secondItem === rhs.secondItem && + lhs.firstItem === rhs.firstItem else { + return false + } + return true +} diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift new file mode 100644 index 00000000..a59de6bf --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift @@ -0,0 +1,93 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#else + import AppKit +#endif + + +public protocol LayoutConstraintItem: class { +} + +@available(iOS 9.0, OSX 10.11, *) +extension ConstraintLayoutGuide : LayoutConstraintItem { +} + +extension ConstraintView : LayoutConstraintItem { +} + + +extension LayoutConstraintItem { + + internal func prepare() { + if let view = self as? ConstraintView { + view.translatesAutoresizingMaskIntoConstraints = false + } + } + + internal var superview: ConstraintView? { + if let view = self as? ConstraintView { + return view.superview + } + + if #available(iOS 9.0, OSX 10.11, *), let guide = self as? ConstraintLayoutGuide { + return guide.owningView + } + + return nil + } + internal var constraints: [Constraint] { + return self.constraintsSet.allObjects as! [Constraint] + } + + internal func add(constraints: [Constraint]) { + let constraintsSet = self.constraintsSet + for constraint in constraints { + constraintsSet.add(constraint) + } + } + + internal func remove(constraints: [Constraint]) { + let constraintsSet = self.constraintsSet + for constraint in constraints { + constraintsSet.remove(constraint) + } + } + + private var constraintsSet: NSMutableSet { + let constraintsSet: NSMutableSet + + if let existing = objc_getAssociatedObject(self, &constraintsKey) as? NSMutableSet { + constraintsSet = existing + } else { + constraintsSet = NSMutableSet() + objc_setAssociatedObject(self, &constraintsKey, constraintsSet, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + return constraintsSet + + } + +} +private var constraintsKey: UInt8 = 0 diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift new file mode 100644 index 00000000..ded96ccd --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift @@ -0,0 +1,42 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +import Foundation + +#if os(iOS) || os(tvOS) + import UIKit +#if swift(>=4.2) + typealias LayoutRelation = NSLayoutConstraint.Relation + typealias LayoutAttribute = NSLayoutConstraint.Attribute +#else + typealias LayoutRelation = NSLayoutRelation + typealias LayoutAttribute = NSLayoutAttribute +#endif + typealias LayoutPriority = UILayoutPriority +#else + import AppKit + typealias LayoutRelation = NSLayoutConstraint.Relation + typealias LayoutAttribute = NSLayoutConstraint.Attribute + typealias LayoutPriority = NSLayoutConstraint.Priority +#endif + diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift new file mode 100644 index 00000000..8e7644cf --- /dev/null +++ b/DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift @@ -0,0 +1,36 @@ +// +// SnapKit +// +// Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit +// +// 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. + +#if os(iOS) || os(tvOS) + import UIKit +#endif + + +@available(iOS 8.0, *) +public extension ConstraintLayoutSupport { + + var snp: ConstraintLayoutSupportDSL { + return ConstraintLayoutSupportDSL(support: self) + } + +} diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown similarity index 83% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.markdown rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown index 86eb1f4a..25f8f66c 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.markdown +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown @@ -1,12 +1,9 @@ # Acknowledgements This application makes use of the following third party libraries: -## iOSSnapshotTestCase +## SnapKit -MIT License - -Copyright (c) 2017-2018, Uber Technologies, Inc. -Copyright (c) 2013-2018, Facebook, Inc. +Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -15,15 +12,15 @@ 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 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. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. Generated by CocoaPods - https://cocoapods.org diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist similarity index 88% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist index f24c9fdf..8474d451 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-acknowledgements.plist +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist @@ -14,10 +14,7 @@ FooterText - MIT License - -Copyright (c) 2017-2018, Uber Technologies, Inc. -Copyright (c) 2013-2018, Facebook, Inc. + Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -26,21 +23,21 @@ 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 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. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. License MIT Title - iOSSnapshotTestCase + SnapKit Type PSGroupSpecifier diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m new file mode 100644 index 00000000..7e089db8 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Bento : NSObject +@end +@implementation PodsDummy_Pods_Bento +@end diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-frameworks.sh b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh similarity index 97% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-frameworks.sh rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh index 7610fea1..b253b3b3 100755 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-frameworks.sh +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh @@ -161,10 +161,10 @@ strip_invalid_archs() { if [[ "$CONFIGURATION" == "Debug" ]]; then - install_framework "${BUILT_PRODUCTS_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework" + install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" fi if [[ "$CONFIGURATION" == "Release" ]]; then - install_framework "${BUILT_PRODUCTS_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework" + install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" fi if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then wait diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h similarity index 58% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-umbrella.h rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h index b01ae92e..c368fa2f 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-umbrella.h +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h @@ -11,6 +11,6 @@ #endif -FOUNDATION_EXPORT double Pods_EmptyDataSetTestsVersionNumber; -FOUNDATION_EXPORT const unsigned char Pods_EmptyDataSetTestsVersionString[]; +FOUNDATION_EXPORT double Pods_BentoVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_BentoVersionString[]; diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig similarity index 53% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig index 03f9ee10..5ff82a81 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" -iframework "$(PLATFORM_DIR)/Developer/Library/Frameworks" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" -OTHER_LDFLAGS = $(inherited) -framework "FBSnapshotTestCase" -framework "Foundation" -framework "QuartzCore" -framework "UIKit" -framework "XCTest" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +OTHER_LDFLAGS = $(inherited) -framework "SnapKit" OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap new file mode 100644 index 00000000..8d21bfa9 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap @@ -0,0 +1,6 @@ +framework module Pods_Bento { + umbrella header "Pods-Bento-umbrella.h" + + export * + module * { export * } +} diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig similarity index 53% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig index 03f9ee10..5ff82a81 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" -iframework "$(PLATFORM_DIR)/Developer/Library/Frameworks" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" -OTHER_LDFLAGS = $(inherited) -framework "FBSnapshotTestCase" -framework "Foundation" -framework "QuartzCore" -framework "UIKit" -framework "XCTest" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +OTHER_LDFLAGS = $(inherited) -framework "SnapKit" OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-dummy.m deleted file mode 100644 index acda19c1..00000000 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_Pods_EmptyDataSetTests : NSObject -@end -@implementation PodsDummy_Pods_EmptyDataSetTests -@end diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.modulemap deleted file mode 100644 index c014ad80..00000000 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -framework module Pods_EmptyDataSetTests { - umbrella header "Pods-EmptyDataSetTests-umbrella.h" - - export * - module * { export * } -} diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist new file mode 100644 index 00000000..8d87a1ae --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 5.0.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m new file mode 100644 index 00000000..b44e8e58 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_SnapKit : NSObject +@end +@implementation PodsDummy_SnapKit +@end diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch new file mode 100644 index 00000000..beb2a244 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h new file mode 100644 index 00000000..1b1be641 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double SnapKitVersionNumber; +FOUNDATION_EXPORT const unsigned char SnapKitVersionString[]; + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap new file mode 100644 index 00000000..4b3e47b2 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap @@ -0,0 +1,6 @@ +framework module SnapKit { + umbrella header "SnapKit-umbrella.h" + + export * + module * { export * } +} diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig new file mode 100644 index 00000000..03ea6fe3 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SnapKit +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/SnapKit +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift index 9947be76..371c7369 100644 --- a/DZNEmptyDataSet/Sample - Bento/ViewController.swift +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -7,14 +7,59 @@ // import UIKit +import EmptyDataSet +import SnapKit class ViewController: UIViewController { + lazy var tableView: UITableView = { + let tableView = UITableView(frame: .zero, style: .plain) + tableView.tableFooterView = UIView() + tableView.emptyDataSetSource = self + tableView.emptyDataSetDelegate = self + return tableView + }() + override func viewDidLoad() { super.viewDidLoad() - // Do any additional setup after loading the view. + + view.addSubview(tableView) + + tableView.snp.makeConstraints { + $0.top.leading.trailing.bottom.equalToSuperview() + } + } +} + +extension ViewController: EmptyDataSetSource { + + func titleForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? { + return nil + } + + func descriptionForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? { + return nil } + func imageForEmptyDataSet(scrollView: UIScrollView) -> UIImage? { + return nil + } + + func tintColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? { + return nil + } + func backgroundColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? { + return nil + } } +extension ViewController: EmptyDataSetDelegate { + func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) { + + } +} From 3fe09af96d7124eaf0bcb2889c7bf73b530a2c5f Mon Sep 17 00:00:00 2001 From: dzenbot Date: Tue, 31 Dec 2019 18:29:17 -0800 Subject: [PATCH 04/25] progress --- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 1 + .../EmptyDataSet/EmptyDataSet.swift | 3 + .../EmptyDataSet/EmptyDataSetImpl.swift | 33 ++++--- .../EmptyDataSet/EmptyDataSetView.swift | 91 +++++++++++++++++++ .../Sample - Bento/ViewController.swift | 4 + 5 files changed, 118 insertions(+), 14 deletions(-) diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index 646fd05b..da28364d 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -1126,6 +1126,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift index ed58f7c3..27cfe6b5 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift @@ -41,6 +41,9 @@ public protocol EmptyDataSetSource { /// func backgroundColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? + + /// + func customViewForEmptyDataSet(scrollView: UIScrollView) -> UIView? } public protocol EmptyDataSetDelegate { diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index 5e6f1a67..ed0ca615 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -11,7 +11,6 @@ import UIKit protocol EmptyDataSetProtocol { func doSwizzle() -> Bool func isEmpty() -> Bool - func reloadDataEmptyDataSet() } extension UIScrollView { @@ -60,16 +59,18 @@ extension UIScrollView { } } +// MARK: - UITableView + EmptyDataSetProtocol + extension UITableView: EmptyDataSetProtocol { func doSwizzle() -> Bool { var didSwizzle = false - let newReloadDataSelector = #selector(reloadDataEmptyDataSet) + let newReloadDataSelector = #selector(reloadData_swizzled) let originalReloadDataSelector = #selector(UITableView.reloadData) didSwizzle = swizzle(originalSelector: originalReloadDataSelector, swizzledSelector: newReloadDataSelector) - let newEndUpdatesSelector = #selector(endUpdatesEmptyDataSet) + let newEndUpdatesSelector = #selector(endUpdates_swizzled) let originalEndUpdatesSelector = #selector(UITableView.endUpdates) didSwizzle = didSwizzle && swizzle(originalSelector: originalEndUpdatesSelector, swizzledSelector: newEndUpdatesSelector) @@ -88,33 +89,35 @@ extension UITableView: EmptyDataSetProtocol { return items == 0 } - @objc func reloadDataEmptyDataSet() { + @objc func reloadData_swizzled() { print("\(type(of: self)).\(#function)") // Calls the original implementation - self.reloadDataEmptyDataSet() + reloadData_swizzled() reloadEmptyDataSet() } - @objc func endUpdatesEmptyDataSet() { + @objc func endUpdates_swizzled() { print("\(type(of: self)).\(#function)") // Calls the original implementation - self.endUpdatesEmptyDataSet() + endUpdates_swizzled() reloadEmptyDataSet() } } +// MARK: - UICollectionView + EmptyDataSetProtocol + extension UICollectionView: EmptyDataSetProtocol { func doSwizzle() -> Bool { var didSwizzle = false - let newReloadDataSelector = #selector(reloadDataEmptyDataSet) + let newReloadDataSelector = #selector(reloadData_swizzled) let originalReloadDataSelector = #selector(UICollectionView.reloadData) didSwizzle = swizzle(originalSelector: originalReloadDataSelector, swizzledSelector: newReloadDataSelector) - let newEndUpdatesSelector = #selector(performBatchUpdatesEmptyDataSet) + let newEndUpdatesSelector = #selector(performBatchUpdates_swizzled) let originalEndUpdatesSelector = #selector(UICollectionView.performBatchUpdates(_:completion:)) didSwizzle = didSwizzle && swizzle(originalSelector: originalEndUpdatesSelector, swizzledSelector: newEndUpdatesSelector) @@ -133,26 +136,28 @@ extension UICollectionView: EmptyDataSetProtocol { return items == 0 } - @objc func reloadDataEmptyDataSet() { + @objc func reloadData_swizzled() { print("\(type(of: self)).\(#function)") // Calls the original implementation - self.reloadDataEmptyDataSet() + reloadData_swizzled() reloadEmptyDataSet() } - @objc func performBatchUpdatesEmptyDataSet() { + @objc func performBatchUpdates_swizzled() { print("\(type(of: self)).\(#function)") // Calls the original implementation - self.performBatchUpdatesEmptyDataSet() + performBatchUpdates_swizzled() reloadEmptyDataSet() } } +// MARK: - Swizzling Associated Keys + struct AssociatedKeys { static var datasource = "emptyDataSetSource" static var delegate = "emptyDataSetDelegate" - static var contentView = "emptyDataSetView" + static var view = "emptyDataSetView" static var didSwizzle = "didSwizzle" } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index afedeac1..94dbe5ee 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -10,4 +10,95 @@ import UIKit internal class EmptyDataSetView: UIView { + // MARK: - Internal + + var fadeInOnDisplay = false + + lazy var contentView: UIView = { + let view = UIView() + view.alpha = 0 + return view + }() + + lazy var titleLabel: UILabel = { + let label = UILabel() + label.font = UIFont.systemFont(ofSize: 27, weight: .regular) + label.textColor = UIColor(white: 0.6, alpha: 1) + label.textAlignment = .center + label.lineBreakMode = .byWordWrapping + label.numberOfLines = 0 + return label + }() + + lazy var descriptionLabel: UILabel = { + let label = UILabel() + label.font = UIFont.systemFont(ofSize: 17, weight: .regular) + label.textColor = UIColor(white: 0.6, alpha: 1) + label.textAlignment = .center + label.lineBreakMode = .byWordWrapping + label.numberOfLines = 0 + return label + }() + + lazy var imageView: UIImageView = { + let view = UIImageView() + view.contentMode = .scaleAspectFit + return view + }() + + func prepareForReuse() { + guard contentView.subviews.count > 0 else { return } + + titleLabel.text = nil + titleLabel.frame = .zero + + descriptionLabel.text = nil + descriptionLabel.frame = .zero + + imageView.image = nil + + // Removes all subviews + contentView.subviews.forEach({$0.removeFromSuperview()}) + } + + // MARK: - Private + + fileprivate func verticalStackView(with views: [UIView]) -> UIStackView { + let stackView = UIStackView(arrangedSubviews: views) + stackView.axis = .vertical + stackView.distribution = .fillEqually + stackView.alignment = .leading + stackView.spacing = 0 + return stackView + } + + fileprivate var canShowImage: Bool { + return imageView.image != nil + } + + fileprivate var canShowTitle: Bool { + guard let attributedString = titleLabel.attributedText else { return false } + return !attributedString.string.isEmpty + } + + fileprivate var canShowDetail: Bool { + guard let attributedString = descriptionLabel.attributedText else { return false } + return !attributedString.string.isEmpty + } + + // MARK: - UIView Overrides + + override func didMoveToWindow() { + guard let superview = self.superview else { return } + self.frame = superview.bounds + + if self.fadeInOnDisplay { + UIView.animate(withDuration: 0.25, animations: { () -> Void in + self.contentView.alpha = 1 + }) + } + else { + self.contentView.alpha = 1 + } + } } diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift index 371c7369..3dead50c 100644 --- a/DZNEmptyDataSet/Sample - Bento/ViewController.swift +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -52,6 +52,10 @@ extension ViewController: EmptyDataSetSource { func backgroundColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? { return nil } + + func customViewForEmptyDataSet(scrollView: UIScrollView) -> UIView? { + return nil + } } extension ViewController: EmptyDataSetDelegate { From a88edfc8d6327db3f8a4539987139b6402b5d834 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 12:39:53 -0800 Subject: [PATCH 05/25] Code simplification --- .../Applications/DetailViewController.m | 3 +- .../Applications/MainViewController.m | 3 +- .../Colors/CollectionViewController.m | 3 +- DZNEmptyDataSet/Colors/SearchViewController.m | 3 +- DZNEmptyDataSet/Colors/TableViewController.m | 3 +- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 43 +++ .../ApplicationsSnapshotTests.m | 7 +- .../EmptyDataSet/EmptyDataSet.swift | 56 +-- .../EmptyDataSet/EmptyDataSetDelegate.swift | 38 ++ .../EmptyDataSet/EmptyDataSetImpl.swift | 10 +- .../EmptyDataSet/EmptyDataSetSource.swift | 61 ++++ .../EmptyDataSet/EmptyDataSetView.swift | 96 +++-- DZNEmptyDataSet/Podfile | 4 + DZNEmptyDataSet/Podfile.lock | 2 +- DZNEmptyDataSet/Pods/Manifest.lock | 2 +- .../Pods/Pods.xcodeproj/project.pbxproj | 334 +++++++++++++----- .../Bento-Box.imageset/Bento-Box.jpg | Bin 0 -> 86535 bytes .../Bento-Box.imageset/Bento-Box@2x.jpg | Bin 0 -> 120648 bytes .../Bento-Box.imageset/Contents.json | 22 ++ .../Sample - Bento/ViewController.swift | 41 ++- 20 files changed, 557 insertions(+), 174 deletions(-) create mode 100644 DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift create mode 100644 DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/DetailViewController.m b/DZNEmptyDataSet/Applications/DetailViewController.m index 89687d86..96eeb622 100644 --- a/DZNEmptyDataSet/Applications/DetailViewController.m +++ b/DZNEmptyDataSet/Applications/DetailViewController.m @@ -9,7 +9,8 @@ #import "DetailViewController.h" #import "UIColor+Hexadecimal.h" -#import +@import DZNEmptyDataSet; +@import EmptyDataSet; @interface DetailViewController () @property (nonatomic, strong) Application *application; diff --git a/DZNEmptyDataSet/Applications/MainViewController.m b/DZNEmptyDataSet/Applications/MainViewController.m index d2438500..8667f38f 100644 --- a/DZNEmptyDataSet/Applications/MainViewController.m +++ b/DZNEmptyDataSet/Applications/MainViewController.m @@ -9,7 +9,8 @@ #import "MainViewController.h" #import "UIColor+Hexadecimal.h" -#import +@import DZNEmptyDataSet; +@import EmptyDataSet; @interface MainViewController () @property (nonatomic, strong) NSArray *applications; diff --git a/DZNEmptyDataSet/Colors/CollectionViewController.m b/DZNEmptyDataSet/Colors/CollectionViewController.m index fc362a41..e85b1283 100644 --- a/DZNEmptyDataSet/Colors/CollectionViewController.m +++ b/DZNEmptyDataSet/Colors/CollectionViewController.m @@ -11,7 +11,8 @@ #import "Palette.h" #import "Color.h" -#import +@import DZNEmptyDataSet; +@import EmptyDataSet; #define kColumnCountMax 7 #define kColumnCountMin 5 diff --git a/DZNEmptyDataSet/Colors/SearchViewController.m b/DZNEmptyDataSet/Colors/SearchViewController.m index 00daa570..22433958 100644 --- a/DZNEmptyDataSet/Colors/SearchViewController.m +++ b/DZNEmptyDataSet/Colors/SearchViewController.m @@ -10,7 +10,8 @@ #import "Palette.h" #import "Color.h" -#import +@import DZNEmptyDataSet; +@import EmptyDataSet; @interface SearchViewController () @property (nonatomic, strong) NSArray *searchResult; diff --git a/DZNEmptyDataSet/Colors/TableViewController.m b/DZNEmptyDataSet/Colors/TableViewController.m index 781f3722..5ef9386a 100644 --- a/DZNEmptyDataSet/Colors/TableViewController.m +++ b/DZNEmptyDataSet/Colors/TableViewController.m @@ -11,7 +11,8 @@ #import "Palette.h" #import "Color.h" -#import +@import DZNEmptyDataSet; +@import EmptyDataSet; @interface TableViewController () @end diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index da28364d..be5b1fad 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -9,6 +9,7 @@ /* Begin PBXBuildFile section */ 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */; }; 3B12888038B2AA7F321565FC /* Pods_Bento.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A616CBACE16863851A421398 /* Pods_Bento.framework */; }; + 3FF250E1FED243B2337A1DF9 /* Pods_EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */; }; 4FA1AAE923BC28F2007CF389 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAE823BC28F2007CF389 /* AppDelegate.swift */; }; 4FA1AAEB23BC28F2007CF389 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEA23BC28F2007CF389 /* SceneDelegate.swift */; }; 4FA1AAED23BC28F2007CF389 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEC23BC28F2007CF389 /* ViewController.swift */; }; @@ -22,6 +23,9 @@ 4FA1AB0D23BC29D2007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; 4FA1AB0F23BC2BC9007CF389 /* EmptyDataSetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */; }; 4FA1AB1123BC2C20007CF389 /* EmptyDataSetImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */; }; + 4FA1AB1223BD2F1D007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; + 4FA1AB1423BD3645007CF389 /* EmptyDataSetSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */; }; + 4FA1AB1623BD3679007CF389 /* EmptyDataSetDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -104,6 +108,7 @@ 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig"; sourceTree = ""; }; 1C26D4C95382E14DAC506EE2 /* Pods-EmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 35391D2768B732E0C798EDE8 /* Pods-EmptyDataSet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSet.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig"; sourceTree = ""; }; 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSet.swift; sourceTree = ""; }; 4FA1AAE623BC28F2007CF389 /* Bento.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Bento.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -119,10 +124,14 @@ 4FA1AB0223BC296B007CF389 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetView.swift; sourceTree = ""; }; 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetImpl.swift; sourceTree = ""; }; + 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetSource.swift; sourceTree = ""; }; + 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetDelegate.swift; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.release.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig"; sourceTree = ""; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; + 8A3065E7E54480E6A729ACA3 /* Pods-EmptyDataSet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSet.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig"; sourceTree = ""; }; A616CBACE16863851A421398 /* Pods_Bento.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Bento.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DZNEmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = ""; }; @@ -191,6 +200,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 3FF250E1FED243B2337A1DF9 /* Pods_EmptyDataSet.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -205,6 +215,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 4FA1AB1223BD2F1D007CF389 /* EmptyDataSet.framework in Frameworks */, F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */, 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */, ); @@ -239,6 +250,8 @@ 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */, 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */, + 35391D2768B732E0C798EDE8 /* Pods-EmptyDataSet.debug.xcconfig */, + 8A3065E7E54480E6A729ACA3 /* Pods-EmptyDataSet.release.xcconfig */, ); name = Pods; sourceTree = ""; @@ -262,6 +275,8 @@ children = ( 4FA1AB0123BC296B007CF389 /* DZNEmptyDataSet.h */, 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */, + 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */, + 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */, 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */, 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */, 4FA1AB0223BC296B007CF389 /* Info.plist */, @@ -275,6 +290,7 @@ 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */, 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */, A616CBACE16863851A421398 /* Pods_Bento.framework */, + BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */, ); name = Frameworks; sourceTree = ""; @@ -487,6 +503,7 @@ isa = PBXNativeTarget; buildConfigurationList = 4FA1AB0823BC296B007CF389 /* Build configuration list for PBXNativeTarget "EmptyDataSet" */; buildPhases = ( + 6444A841F00E85DDECD9DB6C /* [CP] Check Pods Manifest.lock */, 4FA1AAFA23BC296B007CF389 /* Headers */, 4FA1AAFB23BC296B007CF389 /* Sources */, 4FA1AAFC23BC296B007CF389 /* Frameworks */, @@ -739,6 +756,28 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; + 6444A841F00E85DDECD9DB6C /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-EmptyDataSet-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; DDD9C9F5302171B78206FE07 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -796,7 +835,9 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 4FA1AB1623BD3679007CF389 /* EmptyDataSetDelegate.swift in Sources */, 4FA1AB1123BC2C20007CF389 /* EmptyDataSetImpl.swift in Sources */, + 4FA1AB1423BD3645007CF389 /* EmptyDataSetSource.swift in Sources */, 4FA1AB0C23BC2991007CF389 /* EmptyDataSet.swift in Sources */, 4FA1AB0F23BC2BC9007CF389 /* EmptyDataSetView.swift in Sources */, ); @@ -963,6 +1004,7 @@ }; 4FA1AB0923BC296B007CF389 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 35391D2768B732E0C798EDE8 /* Pods-EmptyDataSet.debug.xcconfig */; buildSettings = { CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -993,6 +1035,7 @@ }; 4FA1AB0A23BC296B007CF389 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 8A3065E7E54480E6A729ACA3 /* Pods-EmptyDataSet.release.xcconfig */; buildSettings = { CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m index 5ffa26ad..1e39153d 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m +++ b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m @@ -6,9 +6,10 @@ // Copyright © 2017 DZN. All rights reserved. // -#import -#import -#import +@import UIKit; +@import DZNEmptyDataSet; +@import FBSnapshotTestCase; +@import EmptyDataSet; #import "Application.h" #import "DetailViewController.h" diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift index 27cfe6b5..9d2bf75b 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift @@ -25,36 +25,6 @@ public protocol EmptyDataSetInterface { func reloadEmptyDataSet() } -public protocol EmptyDataSetSource { - - /// - func titleForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? - - /// - func descriptionForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? - - /// - func imageForEmptyDataSet(scrollView: UIScrollView) -> UIImage? - - /// - func tintColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? - - /// - func backgroundColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? - - /// - func customViewForEmptyDataSet(scrollView: UIScrollView) -> UIView? -} - -public protocol EmptyDataSetDelegate { - - /// - func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool - - /// - func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) -} - public enum EmptyDataSetState { case willAppear, didAppear, willDisappear, DidDisappear } @@ -62,23 +32,13 @@ public enum EmptyDataSetState { extension UIScrollView: EmptyDataSetInterface { public var emptyDataSetSource: EmptyDataSetSource? { - get { - return objc_getAssociatedObject(self, &AssociatedKeys.datasource) as? EmptyDataSetSource - } - set { - objc_setAssociatedObject(self, &AssociatedKeys.datasource, newValue, .OBJC_ASSOCIATION_ASSIGN) - swizzleIfNeeded() - } + get { return objc_getAssociatedObject(self, &AssociatedKeys.datasource) as? EmptyDataSetSource } + set { objc_setAssociatedObject(self, &AssociatedKeys.datasource, newValue, .OBJC_ASSOCIATION_ASSIGN); swizzleIfNeeded() } } public var emptyDataSetDelegate: EmptyDataSetDelegate? { - get { - return objc_getAssociatedObject(self, &AssociatedKeys.delegate) as? EmptyDataSetDelegate - } - set { - objc_setAssociatedObject(self, &AssociatedKeys.delegate, newValue, .OBJC_ASSOCIATION_ASSIGN) - swizzleIfNeeded() - } + get { return objc_getAssociatedObject(self, &AssociatedKeys.delegate) as? EmptyDataSetDelegate } + set { objc_setAssociatedObject(self, &AssociatedKeys.delegate, newValue, .OBJC_ASSOCIATION_ASSIGN); swizzleIfNeeded() } } public var isEmptyDataSetVisible: Bool { @@ -87,6 +47,14 @@ extension UIScrollView: EmptyDataSetInterface { } public func reloadEmptyDataSet() { + guard let view = self.emptyDataSetView else { return } + + view.titleLabel.attributedText = emptyDataSetSource?.title(forEmptyDataSet: self) + view.descriptionLabel.attributedText = emptyDataSetSource?.description(forEmptyDataSet: self) + view.imageView.image = emptyDataSetSource?.image(forEmptyDataSet: self) + view.backgroundColor = emptyDataSetSource?.backgroundColor(forEmptyDataSet: self) + view.setupLayout() + addSubview(view) } } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift new file mode 100644 index 00000000..da4b2246 --- /dev/null +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift @@ -0,0 +1,38 @@ +// +// EmptyDataSetDelegate.swift +// EmptyDataSet +// +// Created by Ignacio Romero Zurbuchen on 2020-01-01. +// Copyright © 2020 DZN. All rights reserved. +// + +import UIKit + +/// The object that acts as the delegate of the empty datasets. Use this delegate for receiving action callbacks. +/// The delegate can adopt the EmptyDataSetDelegate protocol. The delegate is not retained. All delegate methods are optional. +public protocol EmptyDataSetDelegate: class { + + /// + func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool + + func emptyDataSetShouldFadeIn(_ scrollView: UIScrollView) -> Bool + + /// + func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) +} + +/// EmptyDataSetDelegate default implementation so all methods are optional +public extension EmptyDataSetDelegate { + + func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSetShouldFadeIn(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) { + + } +} diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index ed0ca615..4a0ac55e 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -16,7 +16,15 @@ protocol EmptyDataSetProtocol { extension UIScrollView { var emptyDataSetView: EmptyDataSetView? { - return nil + var view = objc_getAssociatedObject(self, &AssociatedKeys.view) as? EmptyDataSetView + + if view == nil { + view = EmptyDataSetView() +// view?.isHidden = true + objc_setAssociatedObject(self, &AssociatedKeys.view, view, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + + return view } // MARK: - Swizzling diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift new file mode 100644 index 00000000..92f6e1a5 --- /dev/null +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift @@ -0,0 +1,61 @@ +// +// EmptyDataSetSource.swift +// EmptyDataSet +// +// Created by Ignacio Romero Zurbuchen on 2020-01-01. +// Copyright © 2020 DZN. All rights reserved. +// + +import UIKit + +/// The object that acts as the data source of the empty datasets. +/// The data source must adopt the EmptyDataSetSource protocol. The data source is not retained. All data source methods are optional. +public protocol EmptyDataSetSource: class { + + /// + func title(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? + + /// + func description(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? + + /// + func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? + + /// + func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + + /// + func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + + /// + func spaceHeight(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + + /// + func customView(forEmptyDataSet scrollView: UIScrollView) -> UIView? +} + +/// EmptyDataSetSource default implementation so most methods are optional + +public extension EmptyDataSetSource { + + func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { + return nil + } + + func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + return nil + } + + func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + return nil + } + + func spaceHeight(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + return nil + } + + func customView(forEmptyDataSet scrollView: UIScrollView) -> UIView? { + return nil + } +} + diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index 94dbe5ee..63c01716 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -7,6 +7,7 @@ // import UIKit +import SnapKit internal class EmptyDataSetView: UIView { @@ -46,32 +47,8 @@ internal class EmptyDataSetView: UIView { return view }() - func prepareForReuse() { - guard contentView.subviews.count > 0 else { return } - - titleLabel.text = nil - titleLabel.frame = .zero - - descriptionLabel.text = nil - descriptionLabel.frame = .zero - - imageView.image = nil - - // Removes all subviews - contentView.subviews.forEach({$0.removeFromSuperview()}) - } - // MARK: - Private - fileprivate func verticalStackView(with views: [UIView]) -> UIStackView { - let stackView = UIStackView(arrangedSubviews: views) - stackView.axis = .vertical - stackView.distribution = .fillEqually - stackView.alignment = .leading - stackView.spacing = 0 - return stackView - } - fileprivate var canShowImage: Bool { return imageView.image != nil } @@ -81,11 +58,24 @@ internal class EmptyDataSetView: UIView { return !attributedString.string.isEmpty } - fileprivate var canShowDetail: Bool { + fileprivate var canShowDescription: Bool { guard let attributedString = descriptionLabel.attributedText else { return false } return !attributedString.string.isEmpty } + // MARK: - Initialization + + override init(frame: CGRect) { + super.init(frame: frame) + + contentView.frame = UIScreen.main.bounds + addSubview(contentView) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + // MARK: - UIView Overrides override func didMoveToWindow() { @@ -101,4 +91,60 @@ internal class EmptyDataSetView: UIView { self.contentView.alpha = 1 } } + + // MARK: - Layout + + func setupLayout() { + + prepareForReuse() + + let padding = frame.width/16 + var views = [UIView]() + + if canShowImage { views.append(imageView) } + if canShowTitle { views.append(titleLabel) } + if canShowDescription { views.append(descriptionLabel) } + + // skip layout if there is nothing to display + guard views.count > 0 else { return } + + let stackView = UIStackView(arrangedSubviews: views) + stackView.axis = .vertical + stackView.distribution = .fill + stackView.alignment = .center + stackView.spacing = 10 + + if canShowImage { stackView.setCustomSpacing(50, after: imageView) } +// stackView.setCustomSpacing(10, after: titleLabel) + + contentView.addSubview(stackView) + stackView.snp.makeConstraints { + $0.centerX.centerY.equalToSuperview() + } + } + + func prepareForReuse() { + guard contentView.subviews.count > 0 else { return } + + titleLabel.text = nil + titleLabel.frame = .zero + + descriptionLabel.text = nil + descriptionLabel.frame = .zero + + imageView.image = nil + + // Removes all subviews + contentView.subviews.forEach({$0.removeFromSuperview()}) + } + + // MARK: - Gesture Handling + + fileprivate func didTapView(sender: UIView) { + print("didTapView: \(sender)") + } + + fileprivate func didTapView() { + print("didTapView: \(self)") + } } diff --git a/DZNEmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile index 8e0db964..5e846a62 100644 --- a/DZNEmptyDataSet/Podfile +++ b/DZNEmptyDataSet/Podfile @@ -9,6 +9,10 @@ target 'Bento' do pod 'SnapKit' end +target 'EmptyDataSet' do + pod 'SnapKit' +end + target 'DZNEmptyDataSetTests' do pod 'iOSSnapshotTestCase' end diff --git a/DZNEmptyDataSet/Podfile.lock b/DZNEmptyDataSet/Podfile.lock index e3917d42..434f257b 100644 --- a/DZNEmptyDataSet/Podfile.lock +++ b/DZNEmptyDataSet/Podfile.lock @@ -19,6 +19,6 @@ SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: 4eca07cb12f8ff3c7d908cd1a88bb832d32562e1 +PODFILE CHECKSUM: 3bc1d732ba3932e430ee0265f54ce05d875d9e9e COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Manifest.lock b/DZNEmptyDataSet/Pods/Manifest.lock index e3917d42..434f257b 100644 --- a/DZNEmptyDataSet/Pods/Manifest.lock +++ b/DZNEmptyDataSet/Pods/Manifest.lock @@ -19,6 +19,6 @@ SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: 4eca07cb12f8ff3c7d908cd1a88bb832d32562e1 +PODFILE CHECKSUM: 3bc1d732ba3932e430ee0265f54ce05d875d9e9e COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj index d0167e04..35fd9f81 100644 --- a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj @@ -22,17 +22,19 @@ 2A1BBBC87AC2367BD14610A9D10D285E /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */; }; 2C06F2E972444D359754D21AC46BFFE2 /* ConstraintInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */; }; 2CA412DDC41031745F66213AD86238FE /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */; }; + 2CBF7DEEF65392897EFBC35D9A09FABB /* Pods-EmptyDataSet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */; }; 338DD760BB611C08829BEC825B2BB816 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 3B540469AF7772C156A3AD0CC6184734 /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; }; 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */; }; 3CE95FD1D722818A524677118DF557BA /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = AAEFAFB515CDC63285C990A18B7F186C /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; }; 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */; }; - 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 00E2A524E9D5B315536B7652A2CF3520 /* Pods-Bento-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4A00FE44F3F789ABEB88E16D122FD321 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 42CF60A96AA52AFAAC794A8B0BFE4E0C /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4A00FE44F3F789ABEB88E16D122FD321 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */; }; 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */; }; 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */; }; 5854DF509E8A016B6235793D04083035 /* ConstraintConstantTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */; }; + 58BFE9BD55E677A63567E4474311181B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 6543CE32DD97E4F24919522FE4E79A94 /* FBSnapshotTestCasePlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */; settings = {ATTRIBUTES = (Public, ); }; }; 69CCBEEDFCA6D743D80026568D961919 /* ConstraintMakerExtendable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */; }; 69E3A06BBDFDC7D06A9D4BDC4E895E73 /* ConstraintRelatableTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */; }; @@ -56,15 +58,16 @@ A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; AA2A80FACDE8BCA52EFF8948A50C070B /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */; }; - AF16498E0663C46FD75357313DBE3D39 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 416EB86742D6CC7D132D587A1B322CE5 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; + AF16498E0663C46FD75357313DBE3D39 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */; }; B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */; }; - B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CE5C5B901CEB545BC286F08B19A25B3A /* Pods-Bento-dummy.m */; }; + B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */; }; BECA67DFB5E0984DFAEFCB775C31972E /* ConstraintView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */; }; C412F27D75AFC0DF0F0289DBB270931C /* ConstraintMakerFinalizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */; }; C930BCB1B395E19ABBE9D4D491867353 /* iOSSnapshotTestCase-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; C9E1F1A48507326B8AF0EFDBE3C0EC75 /* FBSnapshotTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */; }; + D25DBA6AF7D11C6F74CBA829AB90D8B0 /* Pods-EmptyDataSet-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */; }; E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */; }; E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */; }; @@ -81,6 +84,13 @@ remoteGlobalIDString = C393038B0BEF088C1B93E6528005862D; remoteInfo = iOSSnapshotTestCase; }; + 32E128361F15B1FF30A123342AEAD359 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; + remoteInfo = SnapKit; + }; EAB7C7E47ED215787C4F0FA4D31C39D8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; @@ -91,57 +101,63 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 00E2A524E9D5B315536B7652A2CF3520 /* Pods-Bento-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Bento-umbrella.h"; sourceTree = ""; }; - 01059AA86BEAAA63E7DA979E1B948F56 /* Pods-Bento-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-acknowledgements.plist"; sourceTree = ""; }; + 017A9D966112906EE27D452BE895E322 /* Pods-Bento-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-Info.plist"; sourceTree = ""; }; 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelatableTarget.swift; path = Source/ConstraintRelatableTarget.swift; sourceTree = ""; }; 09CCE11A4A7A4D2029ACC06D57EFE95D /* ConstraintLayoutGuideDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuideDSL.swift; path = Source/ConstraintLayoutGuideDSL.swift; sourceTree = ""; }; + 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-EmptyDataSet-dummy.m"; sourceTree = ""; }; + 0FB5CFC7568E4C1AFB1C06868594D6C7 /* Pods-EmptyDataSet-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSet-Info.plist"; sourceTree = ""; }; + 10402DFB824B32E0DC2DFB198B972921 /* Pods-Bento-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Bento-frameworks.sh"; sourceTree = ""; }; + 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.release.xcconfig"; sourceTree = ""; }; 14688B21017F1CE9E5DED52C0502F7C4 /* ConstraintLayoutSupportDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupportDSL.swift; path = Source/ConstraintLayoutSupportDSL.swift; sourceTree = ""; }; 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraintItem.swift; path = Source/LayoutConstraintItem.swift; sourceTree = ""; }; 204DD29D73DE0EEB8C7C0D5D719E57A0 /* iOSSnapshotTestCase-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSSnapshotTestCase-Info.plist"; sourceTree = ""; }; - 2218A04A0140E57FA2C2764751EFBC06 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerExtendable.swift; path = Source/ConstraintMakerExtendable.swift; sourceTree = ""; }; - 26C7AA739AB3C2AFF1C5C45C1AD30F85 /* Pods-Bento.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Bento.modulemap"; sourceTree = ""; }; + 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DZNEmptyDataSetTests-dummy.m"; sourceTree = ""; }; 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelation.swift; path = Source/ConstraintRelation.swift; sourceTree = ""; }; - 29A852F36C1AB9EB93ECAA31FEEDDEA7 /* Pods-DZNEmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-DZNEmptyDataSetTests.modulemap"; sourceTree = ""; }; 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupport.swift; path = Source/ConstraintLayoutSupport.swift; sourceTree = ""; }; 2C0D7860F0C4CD5300B4BFE4C815E878 /* ConstraintMakerPriortizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerPriortizable.swift; path = Source/ConstraintMakerPriortizable.swift; sourceTree = ""; }; 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConstantTarget.swift; path = Source/ConstraintConstantTarget.swift; sourceTree = ""; }; 2F81E8ABEBEDD4B5F02F6D6D2DCC5885 /* ConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintItem.swift; path = Source/ConstraintItem.swift; sourceTree = ""; }; - 318FCEDA105056DB17FFC6BA3CC62B83 /* Pods-Bento-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-Info.plist"; sourceTree = ""; }; 33E328700A080B8821651041F993D4FC /* UIImage+Compare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Compare.m"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.m"; sourceTree = ""; }; - 3883CD954851107FC02466D1B4EC1F0A /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; + 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-DZNEmptyDataSetTests-umbrella.h"; sourceTree = ""; }; 39309FF58F4F8458ED74F252C8562AB2 /* SnapKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.xcconfig; sourceTree = ""; }; 3A66A601713D0924ACB8459F6E4671A3 /* ConstraintLayoutGuide.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuide.swift; path = Source/ConstraintLayoutGuide.swift; sourceTree = ""; }; 3D8154E810B3407E6BB3B714F36BD6A4 /* ConstraintMakerRelatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerRelatable.swift; path = Source/ConstraintMakerRelatable.swift; sourceTree = ""; }; 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCase.m; path = FBSnapshotTestCase/FBSnapshotTestCase.m; sourceTree = ""; }; - 416EB86742D6CC7D132D587A1B322CE5 /* Pods-DZNEmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DZNEmptyDataSetTests-dummy.m"; sourceTree = ""; }; - 42CF60A96AA52AFAAC794A8B0BFE4E0C /* Pods-DZNEmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-DZNEmptyDataSetTests-umbrella.h"; sourceTree = ""; }; + 429FAC89D5E776AE127C927F12E05E20 /* Pods-Bento.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Bento.modulemap"; sourceTree = ""; }; + 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Bento-umbrella.h"; sourceTree = ""; }; 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCasePlatform.h; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.h; sourceTree = ""; }; 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintAttributes.swift; path = Source/ConstraintAttributes.swift; sourceTree = ""; }; 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintView+Extensions.swift"; path = "Source/ConstraintView+Extensions.swift"; sourceTree = ""; }; 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMaker.swift; path = Source/ConstraintMaker.swift; sourceTree = ""; }; - 508471E1C327911B3605E038FB242FB3 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.release.xcconfig"; sourceTree = ""; }; 509924EFA033A91CF4C37C30EEA81E36 /* ConstraintOffsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintOffsetTarget.swift; path = Source/ConstraintOffsetTarget.swift; sourceTree = ""; }; + 5736C54D74D73CD0622542A4F02E8624 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsetTarget.swift; path = Source/ConstraintInsetTarget.swift; sourceTree = ""; }; - 5BC8701BC88C3F0CFFF8CB2924AFBC48 /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.debug.xcconfig"; sourceTree = ""; }; + 5CD7E9FEF6C40BB1A05BE3502A4FBB69 /* Pods-DZNEmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-Info.plist"; sourceTree = ""; }; 5E601BD54DA9BF4071437E60125281FA /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; 602AE493333C02D22A808DB2E814C8CD /* ConstraintPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriority.swift; path = Source/ConstraintPriority.swift; sourceTree = ""; }; - 62B4124926E3997F1B74C8827581F7D2 /* Pods-Bento-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Bento-frameworks.sh"; sourceTree = ""; }; 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = iOSSnapshotTestCase.xcconfig; sourceTree = ""; }; 67BA8C743B739E29ADA042502044CB6B /* SnapKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SnapKit.modulemap; sourceTree = ""; }; 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constraint.swift; path = Source/Constraint.swift; sourceTree = ""; }; + 691385C0B16EE5C65954C064D87F17C9 /* Pods-EmptyDataSet-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSet-acknowledgements.plist"; sourceTree = ""; }; 6B4BEFED37132D0C0BF675021C271678 /* ConstraintConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConfig.swift; path = Source/ConstraintConfig.swift; sourceTree = ""; }; 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCase.h; path = FBSnapshotTestCase/FBSnapshotTestCase.h; sourceTree = ""; }; 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintView.swift; path = Source/ConstraintView.swift; sourceTree = ""; }; 716A9972B9D9103B54DB950893FAF104 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; 71D4A2F54D713986524E5AD5E92805A6 /* iOSSnapshotTestCase.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = iOSSnapshotTestCase.modulemap; sourceTree = ""; }; + 73852B793610CEE797B3B8A3C79D52AD /* Pods-DZNEmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DZNEmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = FBSnapshotTestCase/SwiftSupport.swift; sourceTree = ""; }; 781106B5E3E775340896FC5DD09BCF14 /* UIImage+Diff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Diff.h"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.h"; sourceTree = ""; }; 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + 7C480087BC040476F9EA3A10C516F5F3 /* Pods-DZNEmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-DZNEmptyDataSetTests.modulemap"; sourceTree = ""; }; 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriorityTarget.swift; path = Source/ConstraintPriorityTarget.swift; sourceTree = ""; }; 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDescription.swift; path = Source/ConstraintDescription.swift; sourceTree = ""; }; + 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSet.debug.xcconfig"; sourceTree = ""; }; 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestController.m; path = FBSnapshotTestCase/FBSnapshotTestController.m; sourceTree = ""; }; + 8B1ED7470E3D027A1C47B95F5B85F42E /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DZNEmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; + 8BB7DBFAF88B61A2D54708DDE7A5D3A1 /* Pods-EmptyDataSet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSet.release.xcconfig"; sourceTree = ""; }; 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMultiplierTarget.swift; path = Source/ConstraintMultiplierTarget.swift; sourceTree = ""; }; + 8C884A1A38933E805E6E9141DF91316D /* Pods-Bento-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Bento-acknowledgements.markdown"; sourceTree = ""; }; 8CAA89EEF1039078430D7A886477E365 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debugging.swift; path = Source/Debugging.swift; sourceTree = ""; }; 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Snapshot.m"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.m"; sourceTree = ""; }; @@ -149,7 +165,8 @@ 979486118B3E90C08386079D57962701 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SnapKit.framework; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Diff.m"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.m"; sourceTree = ""; }; 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - A0CCEB9D5F23CC7E97B8B519A3B542DD /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DZNEmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; + A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Bento-dummy.m"; sourceTree = ""; }; + A2ACD8CA9C959CE226C61D144B0BB9DD /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.debug.xcconfig"; sourceTree = ""; }; A8AA92BACDC3928DF8341019D74CCE92 /* UILayoutSupport+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILayoutSupport+Extensions.swift"; path = "Source/UILayoutSupport+Extensions.swift"; sourceTree = ""; }; A8D6632E06227B6D340FA539C42E71BA /* UIImage+Compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Compare.h"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.h"; sourceTree = ""; }; A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_DZNEmptyDataSetTests.framework; path = "Pods-DZNEmptyDataSetTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -158,27 +175,29 @@ ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SnapKit-dummy.m"; sourceTree = ""; }; ACB0E874B67DCE7034C37BD02A9C502C /* FBSnapshotTestController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestController.h; path = FBSnapshotTestCase/FBSnapshotTestController.h; sourceTree = ""; }; ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Bento.framework; path = "Pods-Bento.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + AED2E02F3FCAD023A93FB2BBBDDAA233 /* Pods_EmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_EmptyDataSet.framework; path = "Pods-EmptyDataSet.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + B4DFF98A8D6CC32361B8503277F9F0D5 /* Pods-Bento-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-acknowledgements.plist"; sourceTree = ""; }; B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-umbrella.h"; sourceTree = ""; }; B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerFinalizable.swift; path = Source/ConstraintMakerFinalizable.swift; sourceTree = ""; }; B7F24A97E3D6B910F581DFCEC81E0759 /* iOSSnapshotTestCase-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSSnapshotTestCase-dummy.m"; sourceTree = ""; }; B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FBSnapshotTestCase.framework; path = iOSSnapshotTestCase.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; + C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-EmptyDataSet-umbrella.h"; sourceTree = ""; }; C59FE233233D259792F99E2E932DEAC3 /* ConstraintViewDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintViewDSL.swift; path = Source/ConstraintViewDSL.swift; sourceTree = ""; }; CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsets.swift; path = Source/ConstraintDirectionalInsets.swift; sourceTree = ""; }; CDFA66846C593CAA66836976FE3BB11F /* ConstraintLayoutGuide+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintLayoutGuide+Extensions.swift"; path = "Source/ConstraintLayoutGuide+Extensions.swift"; sourceTree = ""; }; - CE5C5B901CEB545BC286F08B19A25B3A /* Pods-Bento-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Bento-dummy.m"; sourceTree = ""; }; CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-umbrella.h"; sourceTree = ""; }; + CF84579517241DEA12E8D1A7CA79A1E3 /* Pods-EmptyDataSet-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-EmptyDataSet-acknowledgements.markdown"; sourceTree = ""; }; D16800BBFE31BC78E783108D7FECEDE8 /* ConstraintInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsets.swift; path = Source/ConstraintInsets.swift; sourceTree = ""; }; D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCasePlatform.m; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.m; sourceTree = ""; }; - DA18E377452AE60DDF9650518BCCAF52 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; - DA264779A04B30737E399F47F1C652D8 /* Pods-Bento-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Bento-acknowledgements.markdown"; sourceTree = ""; }; DB449F1D76F58450F0CC2BE2EE78F972 /* ConstraintDirectionalInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsetTarget.swift; path = Source/ConstraintDirectionalInsetTarget.swift; sourceTree = ""; }; DBB3E566465976FD7618A282BD43D799 /* LayoutConstraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraint.swift; path = Source/LayoutConstraint.swift; sourceTree = ""; }; E0F296AEF0CB8AB64CE53A92A08A6A1A /* SnapKit-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "SnapKit-Info.plist"; sourceTree = ""; }; EBB920E68A7DA92F06A7B49CE2B9B329 /* iOSSnapshotTestCase-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-prefix.pch"; sourceTree = ""; }; - F474FF0300AA4453562957908E803383 /* Pods-DZNEmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DZNEmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; + ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; + EF3BB9A12FBF98DD924A17455FFF96B0 /* Pods-EmptyDataSet.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-EmptyDataSet.modulemap"; sourceTree = ""; }; F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Typealiases.swift; path = Source/Typealiases.swift; sourceTree = ""; }; F949A0CCE79FE9678D1E57C53198F545 /* ConstraintDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDSL.swift; path = Source/ConstraintDSL.swift; sourceTree = ""; }; - FD111B8B6DDAAADD5FB27D2DA2C267B1 /* Pods-DZNEmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-Info.plist"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -206,6 +225,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + E7880A1A4107DBC059E53D9F8B86E9A6 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 58BFE9BD55E677A63567E4474311181B /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; FDD1A2F6F0C7CD64F79B3E79FC562312 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -220,15 +247,6 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 095CC29D5063C80F07ED08B85EADCC58 /* Targets Support Files */ = { - isa = PBXGroup; - children = ( - D03530743092024ECA2B591A51108D94 /* Pods-Bento */, - E78D05777A25ACAEF997D86300909A23 /* Pods-DZNEmptyDataSetTests */, - ); - name = "Targets Support Files"; - sourceTree = ""; - }; 10377082182EFE0D7E0E6D60D58DFA90 /* Support Files */ = { isa = PBXGroup; children = ( @@ -243,6 +261,35 @@ path = "../Target Support Files/iOSSnapshotTestCase"; sourceTree = ""; }; + 1BE9446274ECBB0BF57EAD796DC449B1 /* Products */ = { + isa = PBXGroup; + children = ( + B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */, + ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */, + A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */, + AED2E02F3FCAD023A93FB2BBBDDAA233 /* Pods_EmptyDataSet.framework */, + 979486118B3E90C08386079D57962701 /* SnapKit.framework */, + ); + name = Products; + sourceTree = ""; + }; + 1E367254EEFDC361CCC8257BD1D2F9FA /* Pods-DZNEmptyDataSetTests */ = { + isa = PBXGroup; + children = ( + 7C480087BC040476F9EA3A10C516F5F3 /* Pods-DZNEmptyDataSetTests.modulemap */, + 8B1ED7470E3D027A1C47B95F5B85F42E /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */, + 5736C54D74D73CD0622542A4F02E8624 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */, + 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */, + 73852B793610CEE797B3B8A3C79D52AD /* Pods-DZNEmptyDataSetTests-frameworks.sh */, + 5CD7E9FEF6C40BB1A05BE3502A4FBB69 /* Pods-DZNEmptyDataSetTests-Info.plist */, + 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */, + BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, + ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, + ); + name = "Pods-DZNEmptyDataSetTests"; + path = "Target Support Files/Pods-DZNEmptyDataSetTests"; + sourceTree = ""; + }; 5069F9E0D99C6E5925D43959B16AEA18 /* SnapKit */ = { isa = PBXGroup; children = ( @@ -288,6 +335,32 @@ path = SnapKit; sourceTree = ""; }; + 5B4DCE98C8684D98B471CCCA387E5483 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + B360AD80F547E05EAB934E0168F61783 /* Pods-Bento */, + 1E367254EEFDC361CCC8257BD1D2F9FA /* Pods-DZNEmptyDataSetTests */, + 5C1C0CFC1EAEFAD2B84B9FDF086FCBC6 /* Pods-EmptyDataSet */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 5C1C0CFC1EAEFAD2B84B9FDF086FCBC6 /* Pods-EmptyDataSet */ = { + isa = PBXGroup; + children = ( + EF3BB9A12FBF98DD924A17455FFF96B0 /* Pods-EmptyDataSet.modulemap */, + CF84579517241DEA12E8D1A7CA79A1E3 /* Pods-EmptyDataSet-acknowledgements.markdown */, + 691385C0B16EE5C65954C064D87F17C9 /* Pods-EmptyDataSet-acknowledgements.plist */, + 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */, + 0FB5CFC7568E4C1AFB1C06868594D6C7 /* Pods-EmptyDataSet-Info.plist */, + C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */, + 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */, + 8BB7DBFAF88B61A2D54708DDE7A5D3A1 /* Pods-EmptyDataSet.release.xcconfig */, + ); + name = "Pods-EmptyDataSet"; + path = "Target Support Files/Pods-EmptyDataSet"; + sourceTree = ""; + }; 7DE5752EED0A4C4A430975244947611A /* iOS */ = { isa = PBXGroup; children = ( @@ -341,23 +414,29 @@ path = "../Target Support Files/SnapKit"; sourceTree = ""; }; - BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */ = { + B360AD80F547E05EAB934E0168F61783 /* Pods-Bento */ = { isa = PBXGroup; children = ( - 7DE5752EED0A4C4A430975244947611A /* iOS */, + 429FAC89D5E776AE127C927F12E05E20 /* Pods-Bento.modulemap */, + 8C884A1A38933E805E6E9141DF91316D /* Pods-Bento-acknowledgements.markdown */, + B4DFF98A8D6CC32361B8503277F9F0D5 /* Pods-Bento-acknowledgements.plist */, + A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */, + 10402DFB824B32E0DC2DFB198B972921 /* Pods-Bento-frameworks.sh */, + 017A9D966112906EE27D452BE895E322 /* Pods-Bento-Info.plist */, + 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */, + A2ACD8CA9C959CE226C61D144B0BB9DD /* Pods-Bento.debug.xcconfig */, + 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */, ); - name = Frameworks; + name = "Pods-Bento"; + path = "Target Support Files/Pods-Bento"; sourceTree = ""; }; - C272EC6C61FA72B02CA53D63CADB048D /* Products */ = { + BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */ = { isa = PBXGroup; children = ( - B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */, - ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */, - A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */, - 979486118B3E90C08386079D57962701 /* SnapKit.framework */, + 7DE5752EED0A4C4A430975244947611A /* iOS */, ); - name = Products; + name = Frameworks; sourceTree = ""; }; CF1408CF629C7361332E53B88F7BD30C = { @@ -366,8 +445,8 @@ 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */, 9300DC269E7A7CF1292D2FE731BE01E4 /* Pods */, - C272EC6C61FA72B02CA53D63CADB048D /* Products */, - 095CC29D5063C80F07ED08B85EADCC58 /* Targets Support Files */, + 1BE9446274ECBB0BF57EAD796DC449B1 /* Products */, + 5B4DCE98C8684D98B471CCCA387E5483 /* Targets Support Files */, ); sourceTree = ""; }; @@ -382,40 +461,6 @@ path = iOSSnapshotTestCase; sourceTree = ""; }; - D03530743092024ECA2B591A51108D94 /* Pods-Bento */ = { - isa = PBXGroup; - children = ( - 26C7AA739AB3C2AFF1C5C45C1AD30F85 /* Pods-Bento.modulemap */, - DA264779A04B30737E399F47F1C652D8 /* Pods-Bento-acknowledgements.markdown */, - 01059AA86BEAAA63E7DA979E1B948F56 /* Pods-Bento-acknowledgements.plist */, - CE5C5B901CEB545BC286F08B19A25B3A /* Pods-Bento-dummy.m */, - 62B4124926E3997F1B74C8827581F7D2 /* Pods-Bento-frameworks.sh */, - 318FCEDA105056DB17FFC6BA3CC62B83 /* Pods-Bento-Info.plist */, - 00E2A524E9D5B315536B7652A2CF3520 /* Pods-Bento-umbrella.h */, - 5BC8701BC88C3F0CFFF8CB2924AFBC48 /* Pods-Bento.debug.xcconfig */, - 508471E1C327911B3605E038FB242FB3 /* Pods-Bento.release.xcconfig */, - ); - name = "Pods-Bento"; - path = "Target Support Files/Pods-Bento"; - sourceTree = ""; - }; - E78D05777A25ACAEF997D86300909A23 /* Pods-DZNEmptyDataSetTests */ = { - isa = PBXGroup; - children = ( - 29A852F36C1AB9EB93ECAA31FEEDDEA7 /* Pods-DZNEmptyDataSetTests.modulemap */, - A0CCEB9D5F23CC7E97B8B519A3B542DD /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */, - 2218A04A0140E57FA2C2764751EFBC06 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */, - 416EB86742D6CC7D132D587A1B322CE5 /* Pods-DZNEmptyDataSetTests-dummy.m */, - F474FF0300AA4453562957908E803383 /* Pods-DZNEmptyDataSetTests-frameworks.sh */, - FD111B8B6DDAAADD5FB27D2DA2C267B1 /* Pods-DZNEmptyDataSetTests-Info.plist */, - 42CF60A96AA52AFAAC794A8B0BFE4E0C /* Pods-DZNEmptyDataSetTests-umbrella.h */, - DA18E377452AE60DDF9650518BCCAF52 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, - 3883CD954851107FC02466D1B4EC1F0A /* Pods-DZNEmptyDataSetTests.release.xcconfig */, - ); - name = "Pods-DZNEmptyDataSetTests"; - path = "Target Support Files/Pods-DZNEmptyDataSetTests"; - sourceTree = ""; - }; EF51F2FFBDF0376D72F24EF40E31779E /* SwiftSupport */ = { isa = PBXGroup; children = ( @@ -465,6 +510,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + E46368FF99C4B98A2DD2BED51ED065A9 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + D25DBA6AF7D11C6F74CBA829AB90D8B0 /* Pods-EmptyDataSet-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ @@ -486,6 +539,25 @@ productReference = 979486118B3E90C08386079D57962701 /* SnapKit.framework */; productType = "com.apple.product-type.framework"; }; + 6B93C698BAA4A0901F8AAF752C8EDC0D /* Pods-EmptyDataSet */ = { + isa = PBXNativeTarget; + buildConfigurationList = 45925B9A74393B787D0B8552FB10993E /* Build configuration list for PBXNativeTarget "Pods-EmptyDataSet" */; + buildPhases = ( + E46368FF99C4B98A2DD2BED51ED065A9 /* Headers */, + D28AC23142EE73DE1F500ABBF473C740 /* Sources */, + E7880A1A4107DBC059E53D9F8B86E9A6 /* Frameworks */, + 71AA6C67A63201125DEEE4DD04A13EFD /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 9993F0ED659D225497D7E7BDEA5AB4AA /* PBXTargetDependency */, + ); + name = "Pods-EmptyDataSet"; + productName = "Pods-EmptyDataSet"; + productReference = AED2E02F3FCAD023A93FB2BBBDDAA233 /* Pods_EmptyDataSet.framework */; + productType = "com.apple.product-type.framework"; + }; AE5F0EC5A805C8E001F8086092590AA1 /* Pods-Bento */ = { isa = PBXNativeTarget; buildConfigurationList = F4E0AAF2DAADF2FE3673362A448B0CCE /* Build configuration list for PBXNativeTarget "Pods-Bento" */; @@ -560,13 +632,14 @@ Base, ); mainGroup = CF1408CF629C7361332E53B88F7BD30C; - productRefGroup = C272EC6C61FA72B02CA53D63CADB048D /* Products */; + productRefGroup = 1BE9446274ECBB0BF57EAD796DC449B1 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */, AE5F0EC5A805C8E001F8086092590AA1 /* Pods-Bento */, B1EE7C977B6484DAE578FFC4A25371F7 /* Pods-DZNEmptyDataSetTests */, + 6B93C698BAA4A0901F8AAF752C8EDC0D /* Pods-EmptyDataSet */, 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */, ); }; @@ -580,6 +653,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 71AA6C67A63201125DEEE4DD04A13EFD /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 7AD772FAA32CBF996E2DFF8AB29B136F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -679,6 +759,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + D28AC23142EE73DE1F500ABBF473C740 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2CBF7DEEF65392897EFBC35D9A09FABB /* Pods-EmptyDataSet-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -688,6 +776,12 @@ target = C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */; targetProxy = 1970170B56D3F0BE38BD9DD9C582A769 /* PBXContainerItemProxy */; }; + 9993F0ED659D225497D7E7BDEA5AB4AA /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SnapKit; + target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; + targetProxy = 32E128361F15B1FF30A123342AEAD359 /* PBXContainerItemProxy */; + }; E41C264B2775596F41F461AB0F7877F6 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = SnapKit; @@ -828,7 +922,7 @@ }; 4B756B0C319E4C27F01C0781C4A33A48 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 3883CD954851107FC02466D1B4EC1F0A /* Pods-DZNEmptyDataSetTests.release.xcconfig */; + baseConfigurationReference = ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -863,7 +957,7 @@ }; 79CC4E7753F54CB9BD7B6C253109C5EF /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 508471E1C327911B3605E038FB242FB3 /* Pods-Bento.release.xcconfig */; + baseConfigurationReference = 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -896,9 +990,43 @@ }; name = Release; }; + 8273F671372DCC5D8DECAE112429A1F7 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; AD0F6071E0AB0ACB7933EFB7C4BB72F4 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5BC8701BC88C3F0CFFF8CB2924AFBC48 /* Pods-Bento.debug.xcconfig */; + baseConfigurationReference = A2ACD8CA9C959CE226C61D144B0BB9DD /* Pods-Bento.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -990,6 +1118,41 @@ }; name = Release; }; + BFEF5DFC657A5A17557BF850CA58ED54 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8BB7DBFAF88B61A2D54708DDE7A5D3A1 /* Pods-EmptyDataSet.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; E30677E30722EED4EFAAF96B70FB53E0 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */; @@ -1057,7 +1220,7 @@ }; F8191286B6058D8C892B2D45D81C7670 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DA18E377452AE60DDF9650518BCCAF52 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; + baseConfigurationReference = BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1101,6 +1264,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 45925B9A74393B787D0B8552FB10993E /* Build configuration list for PBXNativeTarget "Pods-EmptyDataSet" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 8273F671372DCC5D8DECAE112429A1F7 /* Debug */, + BFEF5DFC657A5A17557BF850CA58ED54 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg new file mode 100644 index 0000000000000000000000000000000000000000..98771117804ce4c7256b6397499011e946344f00 GIT binary patch literal 86535 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

&Tuqw^388}6<;+;Z*E?HR@*(hJhT1AX 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 F*Z?OJfVMXle)^GUZcqQ=`Rx~rChh!$?u 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 Z`YILt{O!aTI;xQX=)0irRZagJ{~w%=SWW-{ literal 0 HcmV?d00001 diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json new file mode 100644 index 00000000..6ce44911 --- /dev/null +++ b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "Bento-Box.jpg", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "Bento-Box@2x.jpg", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift index 3dead50c..69899b14 100644 --- a/DZNEmptyDataSet/Sample - Bento/ViewController.swift +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -14,6 +14,7 @@ class ViewController: UIViewController { lazy var tableView: UITableView = { let tableView = UITableView(frame: .zero, style: .plain) + tableView.dataSource = self tableView.tableFooterView = UIView() tableView.emptyDataSetSource = self tableView.emptyDataSetDelegate = self @@ -31,34 +32,48 @@ class ViewController: UIViewController { } } -extension ViewController: EmptyDataSetSource { +extension ViewController: UITableViewDataSource { - func titleForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? { - return nil + func numberOfSections(in tableView: UITableView) -> Int { + return 0 } - func descriptionForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? { - return nil + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + return 0 } - func imageForEmptyDataSet(scrollView: UIScrollView) -> UIImage? { - return nil + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let cell = UITableViewCell() + cell.textLabel?.text = "cell \(indexPath.row+1)" + return cell } - func tintColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? { - return nil + func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { + return 50 } +} - func backgroundColorForEmptyDataSet(scrollView: UIScrollView) -> UIColor? { - return nil +extension ViewController: EmptyDataSetSource { + + func title(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? { + return NSAttributedString(string: "Hello") } - func customViewForEmptyDataSet(scrollView: UIScrollView) -> UIView? { - return nil + func description(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? { + return NSAttributedString(string: "World") + } + + func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { + return UIImage(named: "Bento-Box") + } + + func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + return UIColor(red: 232/255, green: 240/255, blue: 242/255, alpha: 1) } } extension ViewController: EmptyDataSetDelegate { + func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool { return true } From 1776552230707a7fd0a66d909fba5f2cad8c62f7 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 14:53:13 -0800 Subject: [PATCH 06/25] Add more APIs support. Obfuscating as much implementation from EmptyDataSet.swift as possible. --- .../EmptyDataSet/EmptyDataSet.swift | 16 +++---- .../EmptyDataSet/EmptyDataSetDelegate.swift | 37 +++++++++++++-- .../EmptyDataSet/EmptyDataSetImpl.swift | 35 +++++++++++++-- .../EmptyDataSet/EmptyDataSetSource.swift | 45 ++++++++++++++----- .../EmptyDataSet/EmptyDataSetView.swift | 38 +++++++++------- .../Sample - Bento/ViewController.swift | 31 ++++++++++++- 6 files changed, 155 insertions(+), 47 deletions(-) diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift index 9d2bf75b..31bf682f 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift @@ -25,10 +25,12 @@ public protocol EmptyDataSetInterface { func reloadEmptyDataSet() } -public enum EmptyDataSetState { - case willAppear, didAppear, willDisappear, DidDisappear +public enum EmptyDataSetElement: CaseIterable { + case image, title, description, button } +let EmptyDataSetDefaultSpacing: CGFloat = 10 + extension UIScrollView: EmptyDataSetInterface { public var emptyDataSetSource: EmptyDataSetSource? { @@ -47,14 +49,6 @@ extension UIScrollView: EmptyDataSetInterface { } public func reloadEmptyDataSet() { - guard let view = self.emptyDataSetView else { return } - - view.titleLabel.attributedText = emptyDataSetSource?.title(forEmptyDataSet: self) - view.descriptionLabel.attributedText = emptyDataSetSource?.description(forEmptyDataSet: self) - view.imageView.image = emptyDataSetSource?.image(forEmptyDataSet: self) - view.backgroundColor = emptyDataSetSource?.backgroundColor(forEmptyDataSet: self) - - view.setupLayout() - addSubview(view) + layoutEmptyDataSetIfNeeded() } } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift index da4b2246..dc77be00 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift @@ -12,13 +12,26 @@ import UIKit /// The delegate can adopt the EmptyDataSetDelegate protocol. The delegate is not retained. All delegate methods are optional. public protocol EmptyDataSetDelegate: class { - /// + /// Default is true. func emptyDataSetShouldDisplay(_ scrollView: UIScrollView) -> Bool + /// Default is false. + func emptyDataSetShouldForceToDisplay(_ scrollView: UIScrollView) -> Bool + + /// Default is true. func emptyDataSetShouldFadeIn(_ scrollView: UIScrollView) -> Bool + /// Default is true. + func emptyDataSetShouldAllowScroll(_ scrollView: UIScrollView) -> Bool + + /// Default is true. + func emptyDataSetShouldAllowTouch(_ scrollView: UIScrollView) -> Bool + /// - func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) + func emptyDataSet(_ scrollView: UIScrollView, didTapView view: UIView) + + /// + func emptyDataSet(_ scrollView: UIScrollView, didTapButton button: UIButton) } /// EmptyDataSetDelegate default implementation so all methods are optional @@ -28,11 +41,27 @@ public extension EmptyDataSetDelegate { return true } + func emptyDataSetShouldForceToDisplay(_ scrollView: UIScrollView) -> Bool { + return false + } + func emptyDataSetShouldFadeIn(_ scrollView: UIScrollView) -> Bool { return true } - func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) { - + func emptyDataSetShouldAllowScroll(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSetShouldAllowTouch(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSet(_ scrollView: UIScrollView, didTapView view: UIView) { + // do nothing + } + + func emptyDataSet(_ scrollView: UIScrollView, didTapButton button: UIButton) { + // do nothing } } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index 4a0ac55e..311f2563 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -13,14 +13,43 @@ protocol EmptyDataSetProtocol { func isEmpty() -> Bool } -extension UIScrollView { +internal extension UIScrollView { + + // MARK: - Layout + + func layoutEmptyDataSetIfNeeded() { + guard let view = self.emptyDataSetView else { return } + + if let source = emptyDataSetSource { + view.titleLabel.attributedText = source.title(forEmptyDataSet: self) + view.descriptionLabel.attributedText = source.description(forEmptyDataSet: self) + view.imageView.image = source.image(forEmptyDataSet: self) + view.backgroundColor = source.backgroundColor(forEmptyDataSet: self) + + var spacing = [EmptyDataSetElement: CGFloat]() + EmptyDataSetElement.allCases.forEach { + spacing[$0] = source.spacing(forEmptyDataSet: self, after: $0) + } + view.spacing = spacing + } + + if let delegate = emptyDataSetDelegate { + view.fadeInOnDisplay = delegate.emptyDataSetShouldFadeIn(self) + view.isUserInteractionEnabled = delegate.emptyDataSetShouldAllowTouch(self) + + // TODO: Cache previous scroll state + isScrollEnabled = delegate.emptyDataSetShouldAllowScroll(self) + } + + view.setupLayout() + addSubview(view) + } var emptyDataSetView: EmptyDataSetView? { var view = objc_getAssociatedObject(self, &AssociatedKeys.view) as? EmptyDataSetView if view == nil { view = EmptyDataSetView() -// view?.isHidden = true objc_setAssociatedObject(self, &AssociatedKeys.view, view, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } @@ -50,7 +79,7 @@ extension UIScrollView { } fileprivate func swizzle(originalSelector: Selector, swizzledSelector: Selector) -> Bool { - guard self.responds(to: originalSelector) else { return false } + guard responds(to: originalSelector) else { return false } guard let originalMethod = class_getInstanceMethod(type(of: self), originalSelector), let swizzledMethod = class_getInstanceMethod(type(of: self), swizzledSelector) else { return false } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift index 92f6e1a5..e3d2bedb 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift @@ -12,48 +12,69 @@ import UIKit /// The data source must adopt the EmptyDataSetSource protocol. The data source is not retained. All data source methods are optional. public protocol EmptyDataSetSource: class { - /// + /// Default is nil. func title(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? - /// + /// Default is nil. func description(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? - /// + /// Default is nil. func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? - /// + /// Default is nil. + func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + + /// Default is nil. func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? - /// - func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + /// Default is nil. + func buttonTitle(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> NSAttributedString? + + /// Default is nil. + func buttonImage(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> UIImage? - /// - func spaceHeight(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + /// Default is nil. + func buttonBackgroundImage(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> UIImage? - /// + /// Default is EmptyDataSetDefaultSpacing. + func spacing(forEmptyDataSet scrollView: UIScrollView, after emptyDataSetElement: EmptyDataSetElement) -> CGFloat? + + /// Default is nil. func customView(forEmptyDataSet scrollView: UIScrollView) -> UIView? } /// EmptyDataSetSource default implementation so most methods are optional - +/// -title(forEmptyDataSet:) and -description(forEmptyDataSet:) are required for minimum configuration. public extension EmptyDataSetSource { func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { return nil } + func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + return nil + } + func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { return nil } - func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + func buttonTitle(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> NSAttributedString? { + return nil + } + + func buttonImage(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> UIImage? { return nil } - func spaceHeight(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + func buttonBackgroundImage(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> UIImage? { return nil } + func spacing(forEmptyDataSet scrollView: UIScrollView, after emptyDataSetElement: EmptyDataSetElement) -> CGFloat? { + return EmptyDataSetDefaultSpacing + } + func customView(forEmptyDataSet scrollView: UIScrollView) -> UIView? { return nil } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index 63c01716..5f92b278 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -14,6 +14,7 @@ internal class EmptyDataSetView: UIView { // MARK: - Internal var fadeInOnDisplay = false + var spacing: [EmptyDataSetElement: CGFloat]? lazy var contentView: UIView = { let view = UIView() @@ -47,6 +48,11 @@ internal class EmptyDataSetView: UIView { return view }() + lazy var button: UIButton = { + let button = UIButton() + return button + }() + // MARK: - Private fileprivate var canShowImage: Bool { @@ -67,9 +73,6 @@ internal class EmptyDataSetView: UIView { override init(frame: CGRect) { super.init(frame: frame) - - contentView.frame = UIScreen.main.bounds - addSubview(contentView) } required init?(coder: NSCoder) { @@ -79,16 +82,18 @@ internal class EmptyDataSetView: UIView { // MARK: - UIView Overrides override func didMoveToWindow() { - guard let superview = self.superview else { return } - self.frame = superview.bounds + guard let superview = superview else { return } + frame = superview.bounds - if self.fadeInOnDisplay { - UIView.animate(withDuration: 0.25, animations: { () -> Void in - self.contentView.alpha = 1 + contentView.frame = bounds + addSubview(contentView) + + if fadeInOnDisplay { + UIView.animate(withDuration: 0.25, animations: { [weak self] () -> Void in + self?.contentView.alpha = 1 }) - } - else { - self.contentView.alpha = 1 + } else { + contentView.alpha = 1 } } @@ -98,9 +103,7 @@ internal class EmptyDataSetView: UIView { prepareForReuse() - let padding = frame.width/16 var views = [UIView]() - if canShowImage { views.append(imageView) } if canShowTitle { views.append(titleLabel) } if canShowDescription { views.append(descriptionLabel) } @@ -112,10 +115,13 @@ internal class EmptyDataSetView: UIView { stackView.axis = .vertical stackView.distribution = .fill stackView.alignment = .center - stackView.spacing = 10 + stackView.spacing = EmptyDataSetDefaultSpacing - if canShowImage { stackView.setCustomSpacing(50, after: imageView) } -// stackView.setCustomSpacing(10, after: titleLabel) + if let spacing = spacing { + if let space = spacing[.image] { stackView.setCustomSpacing(space, after: imageView) } + if let space = spacing[.title] { stackView.setCustomSpacing(space, after: titleLabel) } + if let space = spacing[.description] { stackView.setCustomSpacing(space, after: descriptionLabel) } + } contentView.addSubview(stackView) stackView.snp.makeConstraints { diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift index 69899b14..ae98f4ec 100644 --- a/DZNEmptyDataSet/Sample - Bento/ViewController.swift +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -70,6 +70,15 @@ extension ViewController: EmptyDataSetSource { func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { return UIColor(red: 232/255, green: 240/255, blue: 242/255, alpha: 1) } + + func spacing(forEmptyDataSet scrollView: UIScrollView, after emptyDataSetElement: EmptyDataSetElement) -> CGFloat? { + switch emptyDataSetElement { + case .image: + return 30 + default: + return nil + } + } } extension ViewController: EmptyDataSetDelegate { @@ -78,7 +87,27 @@ extension ViewController: EmptyDataSetDelegate { return true } - func emptyDataSetDidUpdateState(_ scrollView: UIScrollView, state: EmptyDataSetState) { + func emptyDataSetShouldForceToDisplay(_ scrollView: UIScrollView) -> Bool { + return false + } + + func emptyDataSetShouldFadeIn(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSetShouldAllowScroll(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSetShouldAllowTouch(_ scrollView: UIScrollView) -> Bool { + return true + } + + func emptyDataSet(_ scrollView: UIScrollView, didTapView view: UIView) { + + } + + func emptyDataSet(_ scrollView: UIScrollView, didTapButton button: UIButton) { } } From 28da6d5f40c53b0f80cd1bd279752e471107839a Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 14:54:01 -0800 Subject: [PATCH 07/25] temp --- .../EmptyDataSet/EmptyDataSetView.swift | 2 +- .../Pods-EmptyDataSet-Info.plist | 26 +++++++++ ...ods-EmptyDataSet-acknowledgements.markdown | 26 +++++++++ .../Pods-EmptyDataSet-acknowledgements.plist | 58 +++++++++++++++++++ .../Pods-EmptyDataSet-dummy.m | 5 ++ .../Pods-EmptyDataSet-umbrella.h | 16 +++++ .../Pods-EmptyDataSet.debug.xcconfig | 12 ++++ .../Pods-EmptyDataSet.modulemap | 6 ++ .../Pods-EmptyDataSet.release.xcconfig | 12 ++++ 9 files changed, 162 insertions(+), 1 deletion(-) create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index 5f92b278..4f3f3c5f 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -7,7 +7,7 @@ // import UIKit -import SnapKit +import SnapKit // temporary. TODO: Implement raw auto-layout. internal class EmptyDataSetView: UIView { diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist new file mode 100644 index 00000000..2243fe6e --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown new file mode 100644 index 00000000..25f8f66c --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown @@ -0,0 +1,26 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## SnapKit + +Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. + +Generated by CocoaPods - https://cocoapods.org diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist new file mode 100644 index 00000000..8474d451 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist @@ -0,0 +1,58 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. + + License + MIT + Title + SnapKit + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m new file mode 100644 index 00000000..2b0682ef --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_EmptyDataSet : NSObject +@end +@implementation PodsDummy_Pods_EmptyDataSet +@end diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h new file mode 100644 index 00000000..5ccc9493 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_EmptyDataSetVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_EmptyDataSetVersionString[]; + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig new file mode 100644 index 00000000..30012bc5 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig @@ -0,0 +1,12 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' '@executable_path/../../Frameworks' +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +OTHER_LDFLAGS = $(inherited) -framework "SnapKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap new file mode 100644 index 00000000..20e8975d --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap @@ -0,0 +1,6 @@ +framework module Pods_EmptyDataSet { + umbrella header "Pods-EmptyDataSet-umbrella.h" + + export * + module * { export * } +} diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig new file mode 100644 index 00000000..30012bc5 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig @@ -0,0 +1,12 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' '@executable_path/../../Frameworks' +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +OTHER_LDFLAGS = $(inherited) -framework "SnapKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES From 08ec32c325a6841fa5eed2be371c40feb05c00d4 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 15:34:43 -0800 Subject: [PATCH 08/25] Fixing test bundle --- DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj | 2 -- .../DZNEmptyDataSetTests/ApplicationsSnapshotTests.m | 1 - DZNEmptyDataSet/Sample - Bento/AppDelegate.swift | 2 -- 3 files changed, 5 deletions(-) diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index be5b1fad..ea8add06 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -23,7 +23,6 @@ 4FA1AB0D23BC29D2007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; 4FA1AB0F23BC2BC9007CF389 /* EmptyDataSetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */; }; 4FA1AB1123BC2C20007CF389 /* EmptyDataSetImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */; }; - 4FA1AB1223BD2F1D007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; 4FA1AB1423BD3645007CF389 /* EmptyDataSetSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */; }; 4FA1AB1623BD3679007CF389 /* EmptyDataSetDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; @@ -215,7 +214,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4FA1AB1223BD2F1D007CF389 /* EmptyDataSet.framework in Frameworks */, F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */, 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */, ); diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m index 1e39153d..a0783515 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m +++ b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m @@ -9,7 +9,6 @@ @import UIKit; @import DZNEmptyDataSet; @import FBSnapshotTestCase; -@import EmptyDataSet; #import "Application.h" #import "DetailViewController.h" diff --git a/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift b/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift index 605f5951..e39e044f 100644 --- a/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift +++ b/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift @@ -11,8 +11,6 @@ import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. return true From b4593c6ecdb0ceb22e67b2bf2d64a0c0e31f2f48 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 15:36:09 -0800 Subject: [PATCH 09/25] cleanup --- .../EmptyDataSet/EmptyDataSetImpl.swift | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index 311f2563..73ab8459 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -9,7 +9,7 @@ import UIKit protocol EmptyDataSetProtocol { - func doSwizzle() -> Bool + func swizzle() -> Bool func isEmpty() -> Bool } @@ -72,7 +72,7 @@ internal extension UIScrollView { guard !didSwizzle else { return } if let proxy = self as? EmptyDataSetProtocol { - didSwizzle = proxy.doSwizzle() + didSwizzle = proxy.swizzle() } else { print("\(type(of: self)) should conform to protocol EmptyDataset") } @@ -100,7 +100,7 @@ internal extension UIScrollView { extension UITableView: EmptyDataSetProtocol { - func doSwizzle() -> Bool { + func swizzle() -> Bool { var didSwizzle = false let newReloadDataSelector = #selector(reloadData_swizzled) @@ -127,16 +127,12 @@ extension UITableView: EmptyDataSetProtocol { } @objc func reloadData_swizzled() { - print("\(type(of: self)).\(#function)") - // Calls the original implementation reloadData_swizzled() reloadEmptyDataSet() } @objc func endUpdates_swizzled() { - print("\(type(of: self)).\(#function)") - // Calls the original implementation endUpdates_swizzled() reloadEmptyDataSet() @@ -147,7 +143,7 @@ extension UITableView: EmptyDataSetProtocol { extension UICollectionView: EmptyDataSetProtocol { - func doSwizzle() -> Bool { + func swizzle() -> Bool { var didSwizzle = false let newReloadDataSelector = #selector(reloadData_swizzled) @@ -174,16 +170,12 @@ extension UICollectionView: EmptyDataSetProtocol { } @objc func reloadData_swizzled() { - print("\(type(of: self)).\(#function)") - // Calls the original implementation reloadData_swizzled() reloadEmptyDataSet() } @objc func performBatchUpdates_swizzled() { - print("\(type(of: self)).\(#function)") - // Calls the original implementation performBatchUpdates_swizzled() reloadEmptyDataSet() From 745d90703782e65e6ac84975ac02306021877eae Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 16:17:08 -0800 Subject: [PATCH 10/25] Adding basic unit tests --- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 20 +- .../ApplicationsSnapshotTests.m | 10 +- .../DisplayEmptyDataSetTests.swift | 134 +++++++++++++ .../EmptyDataSet/EmptyDataSetSource.swift | 11 +- DZNEmptyDataSet/Podfile | 1 + DZNEmptyDataSet/Podfile.lock | 2 +- DZNEmptyDataSet/Pods/Manifest.lock | 2 +- .../Pods/Pods.xcodeproj/project.pbxproj | 186 ++++++++++-------- ...mptyDataSetTests-acknowledgements.markdown | 23 +++ ...ZNEmptyDataSetTests-acknowledgements.plist | 29 +++ .../Pods-DZNEmptyDataSetTests-frameworks.sh | 2 + .../Pods-DZNEmptyDataSetTests.debug.xcconfig | 8 +- ...Pods-DZNEmptyDataSetTests.release.xcconfig | 8 +- 13 files changed, 327 insertions(+), 109 deletions(-) create mode 100644 DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index ea8add06..72f81d99 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -25,6 +25,7 @@ 4FA1AB1123BC2C20007CF389 /* EmptyDataSetImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */; }; 4FA1AB1423BD3645007CF389 /* EmptyDataSetSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */; }; 4FA1AB1623BD3679007CF389 /* EmptyDataSetDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */; }; + 4FA1AB1823BD67B3007CF389 /* DisplayEmptyDataSetTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -125,6 +126,7 @@ 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetImpl.swift; sourceTree = ""; }; 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetSource.swift; sourceTree = ""; }; 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetDelegate.swift; sourceTree = ""; }; + 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DisplayEmptyDataSetTests.swift; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.release.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig"; sourceTree = ""; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; @@ -336,6 +338,7 @@ isa = PBXGroup; children = ( F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */, + 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */, F58A3E421E66AEE90086E0EF /* Info.plist */, ); path = DZNEmptyDataSetTests; @@ -783,10 +786,12 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework", "${BUILT_PRODUCTS_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SnapKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSnapshotTestCase.framework", ); runOnlyForDeploymentPostprocessing = 0; @@ -857,6 +862,7 @@ F58A3EAD1E66BF270086E0EF /* UIColor+Hexadecimal.m in Sources */, F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */, F58A3EAC1E66BD620086E0EF /* DetailViewController.m in Sources */, + 4FA1AB1823BD67B3007CF389 /* DisplayEmptyDataSetTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1017,13 +1023,14 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = EmptyDataSet/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.EmptyDataSet; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; + SUPPORTS_MACCATALYST = NO; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; @@ -1048,12 +1055,13 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = EmptyDataSet/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.EmptyDataSet; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; + SUPPORTS_MACCATALYST = NO; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -1223,12 +1231,14 @@ CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = DZNEmptyDataSetTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.DZNEmptyDataSetTests; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "DZNEmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h"; + SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; + TVOS_DEPLOYMENT_TARGET = 11.0; }; name = Debug; }; @@ -1239,11 +1249,13 @@ CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = DZNEmptyDataSetTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.DZNEmptyDataSetTests; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "DZNEmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h"; + SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_VERSION = 5.0; + TVOS_DEPLOYMENT_TARGET = 11.0; }; name = Release; }; diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m index a0783515..1586110e 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m +++ b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m @@ -28,12 +28,8 @@ - (void)setUp { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ UIDevice *device = [UIDevice currentDevice]; - UIScreen *screen = [UIScreen mainScreen]; - - // Using XCTAssert instead of NSAssert since these do not cause the tests to fail. - XCTAssert([device.name containsString:@"iPhone 8"], @"Please run snapshot tests on an iPhone 8 simulator."); - XCTAssert([device.systemVersion doubleValue] > 11.0, @"Please run snapshot tests on a simulator with iOS 11.0 or above."); - XCTAssert(screen.scale == 2.0, @"Please run snapshot tests on a @2x density simulator."); + XCTAssert([device.name containsString:@"iPhone 8"], @"Please run snapshot tests on an iPhone 8 simulator with iOS 13.3"); + XCTAssert([device.systemVersion doubleValue] == 13.3, @"Please run snapshot tests on an iPhone 8 simulator with iOS 13.3"); }); } @@ -68,7 +64,7 @@ - (NSString *)getReferenceImageDirectoryWithDefault:(NSString *)dir - (void)verifyView:(UIView *)view withIdentifier:(NSString *)identifier { - FBSnapshotVerifyViewWithOptions(view, identifier, FBSnapshotTestCaseDefaultSuffixes(), 0); + FBSnapshotVerifyViewWithOptions(view, identifier, FBSnapshotTestCaseDefaultSuffixes(), 1); } @end diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift b/DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift new file mode 100644 index 00000000..a733ec7e --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift @@ -0,0 +1,134 @@ +// +// DisplayEmptyDataSetTests.swift +// DZNEmptyDataSetTests +// +// Created by Ignacio Romero Zurbuchen on 2020-01-01. +// Copyright © 2020 DZN. All rights reserved. +// + +import XCTest +import EmptyDataSet + +class DisplayEmptyDataSetTests: XCTestCase { + + override func setUp() { } + + override func tearDown() { } + + // MARK: Tests + + func testTableViewWithEmptyDataSetHasPlaceholderVisible() + { + // Given + let tableView = TableViewWithEmptyDataSet() + tableView.deleteAll() + + // When + tableView.reloadEmptyDataSet() + + // Then + XCTAssert(tableView.isEmptyDataSetVisible, "With an empty table the EmptyDataSetView should be visible") + } + + func testTableViewWithDataSetHasNoPlaceholderVisible() + { + // Given + let tableView = TableViewWithEmptyDataSet() + + // When + tableView.beginUpdates() + tableView.refresh() + tableView.endUpdates() + + // Then + XCTAssert(tableView.isEmptyDataSetVisible, "With data in the table the EmptyDataSetView should not be visible") + } + + func testCollectionViewWithEmptyDataSetHasPlaceholderVisible() + { + // Given + let layout = UICollectionViewFlowLayout() + let frame = CGRect.zero + let collectionView = CollectionViewWithEmptyDataSet(frame: frame, collectionViewLayout: layout) + collectionView.deleteAll() + + // When + collectionView.reloadEmptyDataSet() + + // Then + XCTAssert(collectionView.isEmptyDataSetVisible, "With an empty table the EmptyDataSetView should be visible") + } +} + +class TableViewWithEmptyDataSet: UITableView, UITableViewDataSource, EmptyDataSetSource +{ + var items = [String]() + + override init(frame: CGRect, style: UITableView.Style) { + super.init(frame: frame, style: style) + dataSource = self + emptyDataSetSource = self + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + return items.count + } + + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + return UITableViewCell() + } + + func titleForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? { + let attributes = [NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 27), NSAttributedString.Key.foregroundColor: UIColor.lightGray] + return NSAttributedString.init(string: "No items found", attributes: attributes) + } + + func refresh() { + items.append("Hello") + } + + func deleteAll() { + items = [] + } + +} + +class CollectionViewWithEmptyDataSet: UICollectionView, UICollectionViewDataSource, EmptyDataSetSource +{ + var items = [String]() + + override init(frame: CGRect, collectionViewLayout layout: UICollectionViewLayout) { + super.init(frame: frame, collectionViewLayout: layout) + dataSource = self + emptyDataSetSource = self + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { + return items.count + } + + func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { + return UICollectionViewCell() + } + + func titleForEmptyDataSet(scrollView: UIScrollView) -> NSAttributedString? { + let attributes = [NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 27), NSAttributedString.Key.foregroundColor: UIColor.lightGray] + return NSAttributedString.init(string: "No items found", attributes: attributes) + } + + func refresh() { + items.append("Hello") + } + + func deleteAll() { + items = [] + } +} diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift index e3d2bedb..40f61e80 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift @@ -43,10 +43,17 @@ public protocol EmptyDataSetSource: class { func customView(forEmptyDataSet scrollView: UIScrollView) -> UIView? } -/// EmptyDataSetSource default implementation so most methods are optional -/// -title(forEmptyDataSet:) and -description(forEmptyDataSet:) are required for minimum configuration. +/// EmptyDataSetSource default implementation so all methods are optional public extension EmptyDataSetSource { + func title(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? { + return nil + } + + func description(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? { + return nil + } + func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { return nil } diff --git a/DZNEmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile index 5e846a62..3746e99f 100644 --- a/DZNEmptyDataSet/Podfile +++ b/DZNEmptyDataSet/Podfile @@ -15,4 +15,5 @@ end target 'DZNEmptyDataSetTests' do pod 'iOSSnapshotTestCase' + pod 'SnapKit' end diff --git a/DZNEmptyDataSet/Podfile.lock b/DZNEmptyDataSet/Podfile.lock index 434f257b..00a9f1b1 100644 --- a/DZNEmptyDataSet/Podfile.lock +++ b/DZNEmptyDataSet/Podfile.lock @@ -19,6 +19,6 @@ SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: 3bc1d732ba3932e430ee0265f54ce05d875d9e9e +PODFILE CHECKSUM: e60d37824ec50488d4ff5a90e11214777471be51 COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Manifest.lock b/DZNEmptyDataSet/Pods/Manifest.lock index 434f257b..00a9f1b1 100644 --- a/DZNEmptyDataSet/Pods/Manifest.lock +++ b/DZNEmptyDataSet/Pods/Manifest.lock @@ -19,6 +19,6 @@ SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: 3bc1d732ba3932e430ee0265f54ce05d875d9e9e +PODFILE CHECKSUM: e60d37824ec50488d4ff5a90e11214777471be51 COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj index 35fd9f81..b07ec48e 100644 --- a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj @@ -15,7 +15,6 @@ 144F29212101A4D03109E989BE0A4F92 /* FBSnapshotTestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 1956E392D500F3CD899D39A5F805736D /* Typealiases.swift in Sources */ = {isa = PBXBuildFile; fileRef = F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */; }; 1AFB1E9136716C0B61D6C700FF1E60FD /* ConstraintLayoutGuide+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDFA66846C593CAA66836976FE3BB11F /* ConstraintLayoutGuide+Extensions.swift */; }; - 20D8C7C8698B7ED12643ECC31666C8C1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 21AB1101BBE4D28D74ED4EDF0D59025A /* ConstraintInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = D16800BBFE31BC78E783108D7FECEDE8 /* ConstraintInsets.swift */; }; 232B2F922E972D9F43D2EE15ACECE734 /* ConstraintPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = 602AE493333C02D22A808DB2E814C8CD /* ConstraintPriority.swift */; }; 2643963F8600F16366AF89ABF6D91F82 /* UIImage+Compare.h in Headers */ = {isa = PBXBuildFile; fileRef = A8D6632E06227B6D340FA539C42E71BA /* UIImage+Compare.h */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -24,18 +23,19 @@ 2CA412DDC41031745F66213AD86238FE /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */; }; 2CBF7DEEF65392897EFBC35D9A09FABB /* Pods-EmptyDataSet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */; }; 338DD760BB611C08829BEC825B2BB816 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 370B6599BB08FAFD53343DB64AB4E825 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 3B540469AF7772C156A3AD0CC6184734 /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; }; 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */; }; 3CE95FD1D722818A524677118DF557BA /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = AAEFAFB515CDC63285C990A18B7F186C /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; }; 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */; }; 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4A00FE44F3F789ABEB88E16D122FD321 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */; }; 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */; }; 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */; }; 5854DF509E8A016B6235793D04083035 /* ConstraintConstantTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */; }; 58BFE9BD55E677A63567E4474311181B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 6543CE32DD97E4F24919522FE4E79A94 /* FBSnapshotTestCasePlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 68AA003430C5A7C92AF7FE1B27576C2D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 69CCBEEDFCA6D743D80026568D961919 /* ConstraintMakerExtendable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */; }; 69E3A06BBDFDC7D06A9D4BDC4E895E73 /* ConstraintRelatableTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */; }; 6E0EB9E7FAAEDBB7A73ECF3095F69C4A /* UILayoutSupport+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8AA92BACDC3928DF8341019D74CCE92 /* UILayoutSupport+Extensions.swift */; }; @@ -58,7 +58,6 @@ A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; AA2A80FACDE8BCA52EFF8948A50C070B /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */; }; - AF16498E0663C46FD75357313DBE3D39 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */; }; B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */; }; B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */; }; @@ -69,6 +68,7 @@ CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */; }; D25DBA6AF7D11C6F74CBA829AB90D8B0 /* Pods-EmptyDataSet-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */; }; + DECBD9272C97FB4427DE3C8B2050B6C8 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */; }; E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */; }; EAC1544AADA392F95DEF08C5C89DAA93 /* FBSnapshotTestCasePlatform.m in Sources */ = {isa = PBXBuildFile; fileRef = D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; @@ -77,7 +77,7 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 1970170B56D3F0BE38BD9DD9C582A769 /* PBXContainerItemProxy */ = { + 1DC2E5B6622424C75A95D2DA5571247B /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; @@ -91,6 +91,13 @@ remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; remoteInfo = SnapKit; }; + 9D659BFF86E06BB95E4F84DC00F86DC2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; + remoteInfo = SnapKit; + }; EAB7C7E47ED215787C4F0FA4D31C39D8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; @@ -217,11 +224,11 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 8ADC0E40B07D5BA0567CF010759D43B6 /* Frameworks */ = { + 9C3B34FFDC69FA04EA29F3457562B138 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 20D8C7C8698B7ED12643ECC31666C8C1 /* Foundation.framework in Frameworks */, + 68AA003430C5A7C92AF7FE1B27576C2D /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -472,6 +479,14 @@ /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ + 07F2DC871D4F9282C729AD5C1939F3D9 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 370B6599BB08FAFD53343DB64AB4E825 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 7DFCF5F12AEEED0500986DBC9BF76170 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -502,14 +517,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - D6B54FF9A1E85667A0622B61E0BD8B72 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 4A00FE44F3F789ABEB88E16D122FD321 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E46368FF99C4B98A2DD2BED51ED065A9 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -579,17 +586,18 @@ }; B1EE7C977B6484DAE578FFC4A25371F7 /* Pods-DZNEmptyDataSetTests */ = { isa = PBXNativeTarget; - buildConfigurationList = 010084C73E57B1D0D7124269DE2FB5B8 /* Build configuration list for PBXNativeTarget "Pods-DZNEmptyDataSetTests" */; + buildConfigurationList = 6D7B4E7EB204B4F78272A96C2ADA5BD6 /* Build configuration list for PBXNativeTarget "Pods-DZNEmptyDataSetTests" */; buildPhases = ( - D6B54FF9A1E85667A0622B61E0BD8B72 /* Headers */, - 0BD8C839914C19929CCB23D680CA392D /* Sources */, - 8ADC0E40B07D5BA0567CF010759D43B6 /* Frameworks */, - 5DE2A9DA7B2817224FE72F17AB02A9FB /* Resources */, + 07F2DC871D4F9282C729AD5C1939F3D9 /* Headers */, + 0BF2E4708CFA449D716ED104D130679F /* Sources */, + 9C3B34FFDC69FA04EA29F3457562B138 /* Frameworks */, + D0C3D150CCDFDD3F61E37D80B07FA141 /* Resources */, ); buildRules = ( ); dependencies = ( - 3C5DED3F5269999C13BBB8A7637252DE /* PBXTargetDependency */, + 6037A84B5FC92FCC5C1EC00E8E5FD553 /* PBXTargetDependency */, + BE54E54E91236233B9C43EF834C93579 /* PBXTargetDependency */, ); name = "Pods-DZNEmptyDataSetTests"; productName = "Pods-DZNEmptyDataSetTests"; @@ -646,35 +654,35 @@ /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 5DE2A9DA7B2817224FE72F17AB02A9FB /* Resources */ = { + 71AA6C67A63201125DEEE4DD04A13EFD /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 71AA6C67A63201125DEEE4DD04A13EFD /* Resources */ = { + 7AD772FAA32CBF996E2DFF8AB29B136F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 7AD772FAA32CBF996E2DFF8AB29B136F /* Resources */ = { + 9C691CAA90D9565F2EFF5EF823D8A80C /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 9C691CAA90D9565F2EFF5EF823D8A80C /* Resources */ = { + B8848E61F4166ABF3DCCE39D45C21A1B /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - B8848E61F4166ABF3DCCE39D45C21A1B /* Resources */ = { + D0C3D150CCDFDD3F61E37D80B07FA141 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -684,11 +692,11 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 0BD8C839914C19929CCB23D680CA392D /* Sources */ = { + 0BF2E4708CFA449D716ED104D130679F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - AF16498E0663C46FD75357313DBE3D39 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */, + DECBD9272C97FB4427DE3C8B2050B6C8 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -770,11 +778,11 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 3C5DED3F5269999C13BBB8A7637252DE /* PBXTargetDependency */ = { + 6037A84B5FC92FCC5C1EC00E8E5FD553 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = iOSSnapshotTestCase; - target = C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */; - targetProxy = 1970170B56D3F0BE38BD9DD9C582A769 /* PBXContainerItemProxy */; + name = SnapKit; + target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; + targetProxy = 9D659BFF86E06BB95E4F84DC00F86DC2 /* PBXContainerItemProxy */; }; 9993F0ED659D225497D7E7BDEA5AB4AA /* PBXTargetDependency */ = { isa = PBXTargetDependency; @@ -782,6 +790,12 @@ target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; targetProxy = 32E128361F15B1FF30A123342AEAD359 /* PBXContainerItemProxy */; }; + BE54E54E91236233B9C43EF834C93579 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = iOSSnapshotTestCase; + target = C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */; + targetProxy = 1DC2E5B6622424C75A95D2DA5571247B /* PBXContainerItemProxy */; + }; E41C264B2775596F41F461AB0F7877F6 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = SnapKit; @@ -920,9 +934,9 @@ }; name = Debug; }; - 4B756B0C319E4C27F01C0781C4A33A48 /* Release */ = { + 79CC4E7753F54CB9BD7B6C253109C5EF /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; + baseConfigurationReference = 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -935,12 +949,12 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Bento/Pods-Bento-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-Bento/Pods-Bento.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -955,9 +969,9 @@ }; name = Release; }; - 79CC4E7753F54CB9BD7B6C253109C5EF /* Release */ = { + 8273F671372DCC5D8DECAE112429A1F7 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */; + baseConfigurationReference = 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -970,12 +984,46 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Bento/Pods-Bento-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Bento/Pods-Bento.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 970AA8B847EAD3073063B855C97B231A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -990,9 +1038,9 @@ }; name = Release; }; - 8273F671372DCC5D8DECAE112429A1F7 /* Debug */ = { + 9B7CD3ED739DDFB5CD2C15F27B5DCBB1 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */; + baseConfigurationReference = BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1005,12 +1053,12 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -1218,52 +1266,9 @@ }; name = Release; }; - F8191286B6058D8C892B2D45D81C7670 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CLANG_ENABLE_OBJC_WEAK = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 010084C73E57B1D0D7124269DE2FB5B8 /* Build configuration list for PBXNativeTarget "Pods-DZNEmptyDataSetTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - F8191286B6058D8C892B2D45D81C7670 /* Debug */, - 4B756B0C319E4C27F01C0781C4A33A48 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 45925B9A74393B787D0B8552FB10993E /* Build configuration list for PBXNativeTarget "Pods-EmptyDataSet" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -1282,6 +1287,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 6D7B4E7EB204B4F78272A96C2ADA5BD6 /* Build configuration list for PBXNativeTarget "Pods-DZNEmptyDataSetTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9B7CD3ED739DDFB5CD2C15F27B5DCBB1 /* Debug */, + 970AA8B847EAD3073063B855C97B231A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 7F8CE4DC18DBEA01587212F09727DB3D /* Build configuration list for PBXNativeTarget "SnapKit" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown index 86eb1f4a..2f639a73 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown @@ -1,6 +1,29 @@ # Acknowledgements This application makes use of the following third party libraries: +## SnapKit + +Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. + + ## iOSSnapshotTestCase MIT License diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist index f24c9fdf..3824785a 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist @@ -12,6 +12,35 @@ Type PSGroupSpecifier + + FooterText + Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. + + License + MIT + Title + SnapKit + Type + PSGroupSpecifier + FooterText MIT License diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh index 7610fea1..cd3254aa 100755 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh @@ -161,9 +161,11 @@ strip_invalid_archs() { if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" install_framework "${BUILT_PRODUCTS_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework" fi if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" install_framework "${BUILT_PRODUCTS_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework" fi if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig index 03f9ee10..a13e39ad 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" +FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" -iframework "$(PLATFORM_DIR)/Developer/Library/Frameworks" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" -OTHER_LDFLAGS = $(inherited) -framework "FBSnapshotTestCase" -framework "Foundation" -framework "QuartzCore" -framework "UIKit" -framework "XCTest" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" -iframework "$(PLATFORM_DIR)/Developer/Library/Frameworks" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" +OTHER_LDFLAGS = $(inherited) -framework "FBSnapshotTestCase" -framework "Foundation" -framework "QuartzCore" -framework "SnapKit" -framework "UIKit" -framework "XCTest" OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig index 03f9ee10..a13e39ad 100644 --- a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" +FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" -iframework "$(PLATFORM_DIR)/Developer/Library/Frameworks" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" -OTHER_LDFLAGS = $(inherited) -framework "FBSnapshotTestCase" -framework "Foundation" -framework "QuartzCore" -framework "UIKit" -framework "XCTest" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase/FBSnapshotTestCase.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" -iframework "$(PLATFORM_DIR)/Developer/Library/Frameworks" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/iOSSnapshotTestCase" +OTHER_LDFLAGS = $(inherited) -framework "FBSnapshotTestCase" -framework "Foundation" -framework "QuartzCore" -framework "SnapKit" -framework "UIKit" -framework "XCTest" OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) From 478c8d2f5dde797c8739427277727509ba3668e1 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 16:25:52 -0800 Subject: [PATCH 11/25] Cleaning all warning from sample projects --- .../LaunchImage-2.launchimage/Contents.json | 36 ---- .../LaunchImage-3.launchimage/Contents.json | 36 ---- .../LaunchImage.launchimage/Contents.json | 149 -------------- .../Default-568h@2x-1.png | Bin 3722 -> 0 bytes .../Default-568h@2x.png | Bin 3722 -> 0 bytes .../Default-hd-plus@2x.png | Bin 11664 -> 0 bytes .../LaunchImage.launchimage/Default-hd@2x.png | Bin 5240 -> 0 bytes .../LaunchImage.launchimage/Default.png | Bin 1148 -> 0 bytes .../LaunchImage.launchimage/Default@2x-1.png | Bin 3173 -> 0 bytes .../LaunchImage.launchimage/Default@2x.png | Bin 3173 -> 0 bytes .../Applications/DetailViewController.m | 1 - .../Applications/MainViewController.m | 194 +----------------- .../Supporting Files/Storyboard.storyboard | 48 +---- .../Colors/Assets.xcassets/Contents.json | 6 + .../LaunchImage.launchimage/Contents.json | 146 ------------- .../Default-568h@2x.png | Bin 3717 -> 0 bytes .../Default-hd-plus@2x.png | Bin 11190 -> 0 bytes .../LaunchImage.launchimage/Default-hd@2x.png | Bin 4898 -> 0 bytes .../LaunchImage.launchimage/Default@2x.png | Bin 3168 -> 0 bytes DZNEmptyDataSet/Colors/SearchViewController.m | 20 -- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 6 +- 21 files changed, 22 insertions(+), 620 deletions(-) delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-2.launchimage/Contents.json delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-3.launchimage/Contents.json delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Contents.json delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x-1.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-hd@2x.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default@2x-1.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default@2x.png create mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Contents.json delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-hd@2x.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-2.launchimage/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-2.launchimage/Contents.json deleted file mode 100644 index a0ad363c..00000000 --- a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-2.launchimage/Contents.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "images" : [ - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-3.launchimage/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-3.launchimage/Contents.json deleted file mode 100644 index a0ad363c..00000000 --- a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage-3.launchimage/Contents.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "images" : [ - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Contents.json deleted file mode 100644 index 0b4f0e13..00000000 --- a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Contents.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "images" : [ - { - "extent" : "full-screen", - "idiom" : "iphone", - "subtype" : "736h", - "filename" : "Default-hd-plus@2x.png", - "minimum-system-version" : "8.0", - "orientation" : "portrait", - "scale" : "3x" - }, - { - "orientation" : "landscape", - "idiom" : "iphone", - "extent" : "full-screen", - "minimum-system-version" : "8.0", - "subtype" : "736h", - "scale" : "3x" - }, - { - "extent" : "full-screen", - "idiom" : "iphone", - "subtype" : "667h", - "filename" : "Default-hd@2x.png", - "minimum-system-version" : "8.0", - "orientation" : "portrait", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "filename" : "Default@2x.png", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "extent" : "full-screen", - "idiom" : "iphone", - "subtype" : "retina4", - "filename" : "Default-568h@2x.png", - "minimum-system-version" : "7.0", - "orientation" : "portrait", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "filename" : "Default.png", - "extent" : "full-screen", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "filename" : "Default@2x-1.png", - "extent" : "full-screen", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "filename" : "Default-568h@2x-1.png", - "extent" : "full-screen", - "subtype" : "retina4", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x-1.png b/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x-1.png deleted file mode 100644 index 5cb6dd2390178a543f3c133d29d057e739fd41ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3722 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sU@72W0*ZWnTNDnYI14-?iy0WWg+Z8+Vb&Z8 zprAssN02WAL+%U)hT=X3hF@nG7+QWYFjO`&F#H87G{|LO5Ypt8Q}bhB;1lq4aSW-r z_2$M#-Ub5!7Du_A|HE_wdsiOfJea&1*->((W@h3=L7sIT;)p7=eg^kqv}c zBtS?Y0fZnDBUug_C|JXV>T(I`Yrmi7VhGTARh$g&#`EfmSe%C^<-t0Iw8K{5~?|hH7nynW)LH(bX8R6poO>11dqE zMhv30IGF5%RI#Hq=}4|g1rmgDH>Dw^CXmEg(+pL)4`;0zmP?2kMR_gy1nfsLc)I$z JtaD0e0swbT&1*->((W@h3=L7sIT;)p7=eg^kqv}c zBtS?Y0fZnDBUug_C|JXV>T(I`Yrmi7VhGTARh$g&#`EfmSe%C^<-t0Iw8K{5~?|hH7nynW)LH(bX8R6poO>11dqE zMhv30IGF5%RI#Hq=}4|g1rmgDH>Dw^CXmEg(+pL)4`;0zmP?2kMR_gy1nfsLc)I$z JtaD0e0swbTz_EaX2`G~G;l?>2C0XJcQ4*Y=R#Ki=l*-_k zlAn~S;F+74o*I;zm{M7IGS!BGLD$IB#WAGf)|FC9Kmd)HxJgnT)@`ynJKXi(T*dfOcF9jRM*DL<2|^iIBju1UVh7 zgD|T>h83t7q>c!dLm$vVV0A>W6xs1T!K!hzMpxbPy5Di0B|9m=V!IL@*Gw!_n44``sEZ5L` zR{(n{s6yuYCQhqEF^-d;7Df z;w|s*_bunRc(Dg)#JUp}e(i@h=I&m8y!P@P{V$r{Zx6V2{QFaSVG+=q;nGW!Q(}+Y zHGP^P^D%RyGSJ8b)8(h*9+y7JSWp&)l}{gFFWea8ZCi33ZY6K66TYmXnX zthxd+z|w18wPx{_w^iTufQ8M8peJ$FKP6}QKFi3?29|*e(V2_&Bm4X=oAgco2vq$< zYmt7Ap8Nf_gE>Inr)dU%Cp~>(FozdttwR3u;!VrCxGO(9i3dNE)FWep6ETa zZNBvMg^e^1&@uO(mAnj(@&zhcXW^c{8&nV#g@BY52;(X~NlIKpA`jn5=@WBJGzCU4 zC=B6MPQz_*A@JjU+nopRGD3H13jqV{o#iaOznAs~YJv**qVpGvsx70gPdx|>w)&q%=1;NtF7!O(@*R6EVD;Ou$K{3VyId>x``wm51A#H~AyVn%Gz;Of ziPaD5e*ZcurwMcwo6sG(2$U0tVVh_~3Iym&|qV)aOPRmxwl-S%_ zmw&tC(n%elrR!8&PS<)=$=?kv{t{c$SmDyg_dHSJT(HFQ%z2OFKeu`^GceS2J!u?{qC_>~V{H)QOhIM=u9B7EaJN&F67~mvzL#Z*e z*Kq&MbwgfYyQN{lzqM~4Dm2Y!XpjZw_5prLQD zIwDwaKr;tmbwserKtmW{bwseNK{E_sb%a^qpke^2BZ76H&kJZW{?NrHOGG#$;)95A zM#KjZ;f#n6BElIFA4G&RB0dO*Ga^2S2xmlm;7r662lHrvGa!N)!J=J&la#JUQ#jUQ zX0Q|_D?t5ZL|H*BYq*ywBqi}dQgjdLLVPF&I4O1IpsO{9dw`SJI2mmYVr`U@lEg_2 zap3$awx%C8F_J3F(dOW2b8v8UF=>^;X;^fRHV3her_eCOX*PB;+8o3>fHgRVPDY!9 k*n6FH=vN+yXX0UaH;XTR_p`T$fE5LUr>mdKI;Vst011~l*#H0l diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-hd@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default-hd@2x.png deleted file mode 100644 index 90df4f4118abe50587a632c096a779ee308f987d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5240 zcmeAS@N?(olHy`uVBq!ia0y~yV0y>Ez-q?91Qc=Ix+D-tNtU=qlmzFem6RtIr7}3C zwu`S`o+#Y?KbB=zXW50l z5>dxDeSPC=^-@8kWbJErOZI-AO%Ja>aTYq|xBRj?L&NbYo{|g>rx+MKBpDbqnPHSd zDg(n39tJ4YFohAs15p!<7#M=sU=&m%G5UcTiPMkj2p|uuBaqAj*$#9Pc1PgSkLC%Q z>8EZW;*5kpYilZhX0b9na7_LE_aGOMK@E;^cvSye`}$X1g>m0wld}(JSI*PrW~d2} zi=6iS;pFM5k>R1S;oE&?e%@)lEjL3#osFR*VA|1bnP#(pv1t}p@JbdJ@i8=To1VS= zuCn^-l#7N82W+qS_?((^{_gpBIWabdYhRvz)_dd^Ecem>_%>5>h7Id>9Eg}>6nnk; zoH#>7EJx1-$(O;)-skc%EV;n%{Ar5hwEyf34vWqJ)m%1_lw$Bmlo7W-vdJQK&q;9x z4;3Y2rJ!TyfC{EW)^w~kVmQEj+LwXhPG|O=1SWfN4t?GB$`P86_8<3IRIFWAVCG zPc(zCE2iB^W?~2vV^U6W`!t1fn{RR+Lqcp}}*=F`~O3(nxEaTe~rD*f7oE}OlDw2 z{ZO#J7yoSb^T?0u)~)JzUUS`FlA&St(}^f~8fSJw%2mLG((vCdbzlAOL|{S-3{IPu zu8o}YP?drT6L``B7bZ|Uh_nhxKS&26<IYUtNPz&YmI$RJoPkKGevrk8lmK-GGzlW5#6cGc$H=P#XqHCl zQcx(Q5}C&6lt!2I46>37-hKn+Fr0yaNbjg6AF*ww(MUikG*APvVai4(SjC7cL*?Kl zvK$3Q7D_pWoGz$Z4g*saQeliMjUl;(rfF1D86}SJ6zn(xgvg2k)e}eoN?rY^DT&fR zq*On#DS6OE!Wwu#7&UsR8@xmZ54;79YCp01i7kiSP%49gPNNQ|23yHRWD9UO6%>On m5=Oh4B#pYgyOz($#?YjXHUkR}hlGFu2rDEw901{l21g)fWMpPy17VN?Y>F5eo5@zBkN~r8 zLBHYiWY!F=YgS%=V%aXes0vJs&UQyyRqMGs^Eg$1J(N44#9zb z20t3f^$E;eNSMGaM-3AkitxD*ZW2j~U~vQqI9MDtH~2DO3kx(ilVlSlvSA)W*aQwo zm`T{315Yv#H<6@>q{K(Z6iP(Oqa?JkhY>Vukr&zAhXDvF8~~vP z24*0FN{nPVNT6U37plwEU#r>=jQ^ua=ZC z3GP%!_0WYUV>-nqarSNCWN>I;1R@4THV|Tw03m?{5Q0dIWI1S{U=5cMA_qwjXlVi^ zu?%~;8!VtY3B6i^6c7-Jkt_$Ps}a>Ta=45PxzTnC15*wYN~M8PKtO5}c!e?o<%VfZ dTK0jD;qgzAOLzPprvkeO44$rjF6*2UngG>vp^X3l diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/LaunchImage.launchimage/Default@2x.png deleted file mode 100644 index 8fff31fe85c4782fe00105dfca19677693fd1b59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3173 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sU_QXX1QgL~h+hMwI14-?iy0WWg+Z8+Vb&Z8 zprAssN02WAL+%U)hT=X3hF@nG7+QWYFjO`&F#H87G{|LO5Ypt8Q}Y9AdhO}r7*cWT z&5eVc4F&=(f#H|xwHa4;hCX?en7@%TQe{v0p%^=#lxK_#SFC_$GVy>AhXDvF8~~vP z24*0FN{nPVNT6U37plwEU#r>=jQ^ua=ZC z3GP%!_0WYUV>-nqarSNCWN>I;1R@4THV|Tw03m?{5Q0dIWI1S{U=5cMA_qwjXlVi^ zu?%~;8!VtY3B6i^6c7-Jkt_$Ps}a>Ta=45PxzTnC15*wYN~M8PKtO5}c!e?o<%VfZ dTK0jD;qgzAOLzPprvkeO44$rjF6*2UngG>vp^X3l diff --git a/DZNEmptyDataSet/Applications/DetailViewController.m b/DZNEmptyDataSet/Applications/DetailViewController.m index 96eeb622..e27d5f37 100644 --- a/DZNEmptyDataSet/Applications/DetailViewController.m +++ b/DZNEmptyDataSet/Applications/DetailViewController.m @@ -10,7 +10,6 @@ #import "UIColor+Hexadecimal.h" @import DZNEmptyDataSet; -@import EmptyDataSet; @interface DetailViewController () @property (nonatomic, strong) Application *application; diff --git a/DZNEmptyDataSet/Applications/MainViewController.m b/DZNEmptyDataSet/Applications/MainViewController.m index 8667f38f..bbf8daff 100644 --- a/DZNEmptyDataSet/Applications/MainViewController.m +++ b/DZNEmptyDataSet/Applications/MainViewController.m @@ -9,12 +9,8 @@ #import "MainViewController.h" #import "UIColor+Hexadecimal.h" -@import DZNEmptyDataSet; -@import EmptyDataSet; - -@interface MainViewController () +@interface MainViewController () @property (nonatomic, strong) NSArray *applications; -@property (nonatomic, strong) UISearchController *searchController; @end @implementation MainViewController @@ -35,13 +31,7 @@ - (void)viewDidLoad self.title = @"Applications"; self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:NULL]; - self.tableView.tableFooterView = [UIView new]; - - self.searchDisplayController.searchResultsTableView.emptyDataSetSource = self; - self.searchDisplayController.searchResultsTableView.emptyDataSetDelegate = self; - self.searchDisplayController.searchResultsTableView.tableFooterView = [UIView new]; - [self.searchDisplayController setValue:@"" forKey:@"noResultsMessage"]; } - (void)viewWillAppear:(BOOL)animated @@ -55,100 +45,6 @@ - (void)viewWillAppear:(BOOL)animated self.navigationController.navigationBar.barStyle = UIBarStyleDefault; } - -#pragma mark - Getters - -- (NSArray *)filteredApps -{ - UISearchBar *searchBar = self.searchDisplayController.searchBar; - - if ([searchBar isFirstResponder] && searchBar.text.length > 0) - { - NSPredicate *precidate = [NSPredicate predicateWithFormat:@"displayName CONTAINS[cd] %@", searchBar.text]; - return [self.applications filteredArrayUsingPredicate:precidate]; - } - return self.applications; -} - - -#pragma mark - DZNEmptyDataSetSource Methods - -- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView -{ - NSString *text = @"No Application Found"; - return [[NSAttributedString alloc] initWithString:text attributes:nil]; -} - -- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView -{ - UISearchBar *searchBar = self.searchDisplayController.searchBar; - - NSString *text = [NSString stringWithFormat:@"There are no empty dataset examples for \"%@\".", searchBar.text]; - NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text attributes:nil]; - - [attributedString addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:17.0] range:[attributedString.string rangeOfString:searchBar.text]]; - - return attributedString; -} - -- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state -{ - NSString *text = @"Search on the App Store"; - UIFont *font = [UIFont systemFontOfSize:16.0]; - UIColor *textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @"007aff" : @"c6def9"]; - - NSMutableDictionary *attributes = [NSMutableDictionary new]; - [attributes setObject:font forKey:NSFontAttributeName]; - [attributes setObject:textColor forKey:NSForegroundColorAttributeName]; - - return [[NSAttributedString alloc] initWithString:text attributes:attributes]; -} - -- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView -{ - return [UIColor whiteColor]; -} - -- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView -{ - return -64.0; -} - -#pragma mark - DZNEmptyDataSetDelegate Methods - -- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView -{ - return YES; -} - -- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView -{ - return YES; -} - -- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView -{ - return YES; -} - -- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view -{ - NSLog(@"%s",__FUNCTION__); -} - -- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button -{ - - UISearchBar *searchBar = self.searchDisplayController.searchBar; - - NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@"http://itunes.com/apps/%@", searchBar.text]]; - - if ([[UIApplication sharedApplication] canOpenURL:URL]) { - [[UIApplication sharedApplication] openURL:URL]; - } -} - - #pragma mark - UITableViewDataSource Methods - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView @@ -158,9 +54,7 @@ - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { - NSInteger rowCount = [self filteredApps].count; - - return rowCount; + return self.applications.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath @@ -172,7 +66,7 @@ - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(N cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier]; } - Application *app = [[self filteredApps] objectAtIndex:indexPath.row]; + Application *app = self.applications[indexPath.row]; cell.textLabel.text = app.displayName; cell.detailTextLabel.text = app.developerName; @@ -196,12 +90,11 @@ - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPa return 70.0; } - #pragma mark - UITableViewDelegate Methods - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { - Application *app = [[self filteredApps] objectAtIndex:indexPath.row]; + Application *app = self.applications[indexPath.row]; DetailViewController *controller = [[DetailViewController alloc] initWithApplication:app]; controller.applications = self.applications; controller.allowShuffling = YES; @@ -213,83 +106,4 @@ - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath [self.navigationController pushViewController:controller animated:YES]; } - -#pragma mark - UISearchBarDelegate Methods - -- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar -{ - return YES; -} - -- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar -{ - return YES; -} - -- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar -{ - // Do something -} - -- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar -{ - // Do something -} - -- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar -{ - // Do something -} - -- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar -{ - // Do something -} - -- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText -{ - // Do something -} - - -#pragma mark - UISearchDisplayDelegate Methods - -- (void)searchDisplayControllerDidBeginSearch:(UISearchDisplayController *)controller -{ - // Do something -} - -- (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller -{ - // Do something -} - -- (void)searchDisplayController:(UISearchDisplayController *)controller didShowSearchResultsTableView:(UITableView *)tableView -{ - // Do something -} - -- (void)searchDisplayController:(UISearchDisplayController *)controller didLoadSearchResultsTableView:(UITableView *)tableView -{ - // Do something -} - - -#pragma mark - View Auto-Rotation - -- (UIStatusBarStyle)preferredStatusBarStyle -{ - return UIStatusBarStyleDefault; -} - -- (UIInterfaceOrientationMask)supportedInterfaceOrientations -{ - return UIInterfaceOrientationMaskAll; -} - -- (BOOL)shouldAutorotate -{ - return YES; -} - @end diff --git a/DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard b/DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard index e1d0c79f..b8e517aa 100644 --- a/DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard +++ b/DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard @@ -1,11 +1,9 @@ - - - - + + - + @@ -17,32 +15,23 @@ - - - - - - - - - - + - + - - - - - diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json b/DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Contents.json b/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Contents.json deleted file mode 100644 index acf54f94..00000000 --- a/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Contents.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "images" : [ - { - "extent" : "full-screen", - "idiom" : "iphone", - "subtype" : "736h", - "filename" : "Default-hd-plus@2x.png", - "minimum-system-version" : "8.0", - "orientation" : "portrait", - "scale" : "3x" - }, - { - "orientation" : "landscape", - "idiom" : "iphone", - "extent" : "full-screen", - "minimum-system-version" : "8.0", - "subtype" : "736h", - "scale" : "3x" - }, - { - "extent" : "full-screen", - "idiom" : "iphone", - "subtype" : "667h", - "filename" : "Default-hd@2x.png", - "minimum-system-version" : "8.0", - "orientation" : "portrait", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "filename" : "Default@2x.png", - "scale" : "2x" - }, - { - "extent" : "full-screen", - "idiom" : "iphone", - "subtype" : "retina4", - "filename" : "Default-568h@2x.png", - "minimum-system-version" : "7.0", - "orientation" : "portrait", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "extent" : "full-screen", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "extent" : "full-screen", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "extent" : "full-screen", - "subtype" : "retina4", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "to-status-bar", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x.png deleted file mode 100644 index 449199ffb1dbf65310479aa08a98a25b7b7d4370..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3717 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sU@72W0*ZWnTNDnYI14-?iy0WWg+Z8+Vb&Z8 zprAssN02WALzOB6LqjtI!_WUf`XvKHsR0ASs{{rHs~HRo;`x)}kGe51@Ns*(IEGZ* zdUInVZ-WC5i(}8e|7mk}8l^AenBZydRK0;$qmKlXeV9o?+!3@ez~5#2}CWLJkd#K*Yev20|bP0l+XkKOikcn diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png deleted file mode 100644 index a99cdf331ecd37bc33a0338f711306b63fac8546..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11190 zcmeAS@N?(olHy`uVBq!ia0y~yV7bM>z_EaX2`G~G;l?>2C0XJcQ4*Y=R#Ki=l*-_k zlAn~S;F+74o*I;zm{M7IGS!BGK|8|J#WAGf)|*=!c^M2im=6l1{%@So!{_GVUTWU7 zd%8?$DbS>Z>!yrAsz?M#Sc2>%lGPx?3e`ab%b^eGcCb1kSPJey2Z7ZQ!J4ob=nAkp zB3LH^fr`QEh+sX@04fHnBZ37EG_X1%STqY}a0C(?%m{Tv1T!K!hzMpxbPy5Di0B|9 zm=V!IL@*U6)`1}Yj(&nX3F97K2$%Np+CPMy$3 zBx(eUwB)^llZ4U-5qYE0gH#!Sg9Q-*_*tYy4=Kg{kS>S7frcp1@v{a=fRj|*54M7T z*atXi_3LPR6Kf?s1k3r+_9g=ZqOd`*NXrkj>PJz#y@{=|rCk+EQi(q}0-VHhUJckB z#9#ShlO2i`@{o)kVC-N^@%Y6?^8?Z_4~hAKga9Wgm`A%(Sc{p#QjlC>0Y*HcLq#lW z_}34#$`8agG}~gW%@`Tl5*0iYe(NuO8j{v{h3)WNj#qLjpaEKvk`JQLBq`?->rzC^ zi&)lhuaQU!=FtLjw16C)`JqQHKon1-1rX98$lxgF5i_6Qo-<-_13wGgNkjCt@v{a= zlX!3hIEleL3)mpS9~IbSN23RMjB0QcJBU0onjerBT#%R_XtksQG3rE88=s^m=a4Lb zXcgcj2D2~;9mCO%7t(mtpeuIh(c~N)CH_z>=Mf`Oqhn1-L*dxU`JD2}5x_B_hQ#G- zMS-Q0#IrTr#IN@oblGzFS5CgbNJ0cVv8Ez-q?91Qc=Ix+D-tNtU=qlmzFem6RtIr7}3C z&?xLyayaOSR9jU|DT-@C@JX|+aUa8 zrjTCL%SF5O85-v12{SMRu`xKDVqox)gi#Ed%nS;t3@~a5510p}8m2HZOfZ5`FpWg$ z2Wg~(evpfS-heqA>J6yH2>U?}2YLh3{Z!Tuv=J1HgzQHRcqI1|sejMhRhyU?HiVq% z5oKstD&vD3KSWz zX^}-_k%90(n)`{=Pu;QvXOgCFSwv)6f>dOq+E1i@qU*XD41=i_8ch<&r7V%v8?}=J zxD`gI`2uZ)VU}fRd709(gi`&~ElYr=A$c5UyMofP#6xnlMGQ+>(6B@b(h-^@;5`b| zB#l}<;7pR#ElcQBJrP-!AZ1C^vXDsqprnQra5yU=&15Fz;u$GPqDBebN{P`VfvYT_ zTathbQb1!IXT;-7Qe-8ZKPOK5XfrT)yOu{YGDMs@$U@9`!>|q!nqorXe*ie>#o+1c=d#Wzp$P!}IdftF diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/LaunchImage.launchimage/Default@2x.png deleted file mode 100644 index 6ce251c98581c5120f9e5d9f00a203cc0a143345..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3168 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sU_QXX1QgL~h+hMwI14-?iy0WWg+Z8+Vb&Z8 zprAssN02WALzOB6LqjtI!_WUf`XvKHsR0ASs{{rHs~HRo;`x)}kGcUhJ@a&N45_&F z=EgzJh5#NHN9Fzh(~7)PcOF%0Q7{TV6epKc@|~68%`TvMOgtdOVE{r32SBKSffKIDI|d}ru=0-hh{<7M5J&(ahXzI Date: Wed, 1 Jan 2020 21:15:19 -0800 Subject: [PATCH 12/25] Attempt to replace SnapKit with raw auto-layout implementation, with no luck. Will circle back to this later... --- DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift | 2 +- .../EmptyDataSet/EmptyDataSetImpl.swift | 1 + .../EmptyDataSet/EmptyDataSetSource.swift | 7 +++++++ .../EmptyDataSet/EmptyDataSetView.swift | 17 ++++++++++++++++- .../Sample - Bento/ViewController.swift | 7 +------ 5 files changed, 26 insertions(+), 8 deletions(-) diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift index 31bf682f..29ab5f6e 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift @@ -49,6 +49,6 @@ extension UIScrollView: EmptyDataSetInterface { } public func reloadEmptyDataSet() { - layoutEmptyDataSetIfNeeded() + layoutEmptyDataSetIfNeeded() } } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index 73ab8459..40fdbd31 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -42,6 +42,7 @@ internal extension UIScrollView { } view.setupLayout() + addSubview(view) } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift index 40f61e80..631a95ae 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift @@ -36,6 +36,9 @@ public protocol EmptyDataSetSource: class { /// Default is nil. func buttonBackgroundImage(forEmptyDataSet scrollView: UIScrollView, for state: UIControl.State) -> UIImage? + /// Default is nil. + func button(forEmptyDataSet scrollView: UIScrollView) -> UIButton? + /// Default is EmptyDataSetDefaultSpacing. func spacing(forEmptyDataSet scrollView: UIScrollView, after emptyDataSetElement: EmptyDataSetElement) -> CGFloat? @@ -78,6 +81,10 @@ public extension EmptyDataSetSource { return nil } + func button(forEmptyDataSet scrollView: UIScrollView) -> UIButton? { + return nil + } + func spacing(forEmptyDataSet scrollView: UIScrollView, after emptyDataSetElement: EmptyDataSetElement) -> CGFloat? { return EmptyDataSetDefaultSpacing } diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index 4f3f3c5f..a996686e 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -7,7 +7,7 @@ // import UIKit -import SnapKit // temporary. TODO: Implement raw auto-layout. +import SnapKit internal class EmptyDataSetView: UIView { @@ -127,6 +127,13 @@ internal class EmptyDataSetView: UIView { stackView.snp.makeConstraints { $0.centerX.centerY.equalToSuperview() } + + // TODO: For some reason, the following implementation is causing conflicts and not laying out correctly! + // This is the exact same result that the SnapKit implementation above! +// NSLayoutConstraint.activate([ +// contentView.centerXAnchor.constraint(equalTo: stackView.centerXAnchor), +// contentView.centerYAnchor.constraint(equalTo: stackView.centerYAnchor) +// ]) } func prepareForReuse() { @@ -154,3 +161,11 @@ internal class EmptyDataSetView: UIView { print("didTapView: \(self)") } } + +extension UIView { + + @discardableResult + func equallyRelatedConstraint(view: UIView, attribute: NSLayoutConstraint.Attribute) -> NSLayoutConstraint { + return NSLayoutConstraint(item: view, attribute: attribute, relatedBy: .equal, toItem: self, attribute: attribute, multiplier: 1, constant: 0) + } +} diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift index ae98f4ec..75fdde7e 100644 --- a/DZNEmptyDataSet/Sample - Bento/ViewController.swift +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -8,12 +8,11 @@ import UIKit import EmptyDataSet -import SnapKit class ViewController: UIViewController { lazy var tableView: UITableView = { - let tableView = UITableView(frame: .zero, style: .plain) + let tableView = UITableView(frame: view.bounds, style: .plain) tableView.dataSource = self tableView.tableFooterView = UIView() tableView.emptyDataSetSource = self @@ -25,10 +24,6 @@ class ViewController: UIViewController { super.viewDidLoad() view.addSubview(tableView) - - tableView.snp.makeConstraints { - $0.top.leading.trailing.bottom.equalToSuperview() - } } } From 87dce84e8db3180197d9ff723d4997374b52958e Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 22:56:49 -0800 Subject: [PATCH 13/25] Simplifying applications sample code --- DZNEmptyDataSet/Applications/Application.h | 4 +- DZNEmptyDataSet/Applications/Application.m | 2 + .../Applications/DetailViewController.m | 132 +----------------- .../Applications/UIColor+Hexadecimal.m | 2 + .../Applications/applications.json | 56 +++++++- 5 files changed, 67 insertions(+), 129 deletions(-) diff --git a/DZNEmptyDataSet/Applications/Application.h b/DZNEmptyDataSet/Applications/Application.h index 358fe179..fa521373 100644 --- a/DZNEmptyDataSet/Applications/Application.h +++ b/DZNEmptyDataSet/Applications/Application.h @@ -46,8 +46,10 @@ typedef NS_ENUM(NSUInteger, ApplicationType) { @interface Application : NSObject @property (nonatomic, strong) NSString *displayName; @property (nonatomic, strong) NSString *developerName; -@property (nonatomic, strong) NSString *identifier; @property (nonatomic, strong) NSString *iconName; +@property (nonatomic, strong) NSString *barColor; +@property (nonatomic, strong) NSString *tintColor; +@property (nonatomic, strong) NSString *identifier; @property (nonatomic) ApplicationType type; - (instancetype)initWithDictionary:(NSDictionary *)dict; diff --git a/DZNEmptyDataSet/Applications/Application.m b/DZNEmptyDataSet/Applications/Application.m index 4513b1f0..ab438e70 100644 --- a/DZNEmptyDataSet/Applications/Application.m +++ b/DZNEmptyDataSet/Applications/Application.m @@ -16,6 +16,8 @@ - (instancetype)initWithDictionary:(NSDictionary *)dict if (self) { self.displayName = dict[@"display_name"]; self.developerName = dict[@"developer_name"]; + self.barColor = dict[@"bar_color"]; + self.tintColor = dict[@"tint_color"]; self.identifier = dict[@"identifier"]; } return self; diff --git a/DZNEmptyDataSet/Applications/DetailViewController.m b/DZNEmptyDataSet/Applications/DetailViewController.m index e27d5f37..0a8869bf 100644 --- a/DZNEmptyDataSet/Applications/DetailViewController.m +++ b/DZNEmptyDataSet/Applications/DetailViewController.m @@ -56,132 +56,6 @@ - (void)viewWillAppear:(BOOL)animated - (void)configureNavigationBar { - UIColor *barColor = nil; - UIColor *tintColor = nil; - - self.navigationController.navigationBar.titleTextAttributes = nil; - - switch (self.application.type) { - case ApplicationType500px: - { - barColor = [UIColor colorWithHex:@"242424"]; - tintColor = [UIColor colorWithHex:@"d7d7d7"]; - break; - } - case ApplicationTypeAirbnb: - { - barColor = [UIColor colorWithHex:@"f8f8f8"]; - tintColor = [UIColor colorWithHex:@"08aeff"]; - break; - } - case ApplicationTypeCamera: - { - barColor = [UIColor colorWithHex:@"595959"]; - tintColor = [UIColor whiteColor]; - self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: tintColor}; - break; - } - case ApplicationTypeDropbox: - { - barColor = [UIColor whiteColor]; - tintColor = [UIColor colorWithHex:@"007ee5"]; - break; - } - case ApplicationTypeFacebook: - { - barColor = [UIColor colorWithHex:@"506da8"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeFancy: - { - barColor = [UIColor colorWithHex:@"353b49"]; - tintColor = [UIColor colorWithHex:@"c4c7cb"]; - break; - } - case ApplicationTypeFoursquare: - { - barColor = [UIColor colorWithHex:@"00aeef"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeInstagram: - { - barColor = [UIColor colorWithHex:@"2e5e86"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeKickstarter: - { - barColor = [UIColor colorWithHex:@"f7f8f8"]; - tintColor = [UIColor colorWithHex:@"2bde73"]; - break; - } - case ApplicationTypePath: - { - barColor = [UIColor colorWithHex:@"544f49"]; - tintColor = [UIColor colorWithHex:@"fffff2"]; - break; - } - case ApplicationTypePinterest: - { - barColor = [UIColor colorWithHex:@"f4f4f4"]; - tintColor = [UIColor colorWithHex:@"cb2027"]; - break; - } - case ApplicationTypeSlack: - { - barColor = [UIColor colorWithHex:@"f4f5f6"]; - tintColor = [UIColor colorWithHex:@"3eba92"]; - break; - } - case ApplicationTypeSkype: - { - barColor = [UIColor colorWithHex:@"00aff0"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeTumblr: - { - barColor = [UIColor colorWithHex:@"2e3e53"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeTwitter: - { - barColor = [UIColor colorWithHex:@"58aef0"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeVesper: - { - barColor = [UIColor colorWithHex:@"5e7d9a"]; - tintColor = [UIColor colorWithHex:@"f8f8f8"]; - break; - } - case ApplicationTypeVideos: - { - barColor = [UIColor colorWithHex:@"4a4b4d"]; - tintColor = [UIColor blackColor]; - break; - } - case ApplicationTypeVine: - { - barColor = [UIColor colorWithHex:@"00bf8f"]; - tintColor = [UIColor whiteColor]; - break; - } - case ApplicationTypeWWDC: - { - tintColor = [UIColor colorWithHex:@"fc6246"]; - break; - } - default: - barColor = [UIColor colorWithHex:@"f8f8f8"]; - tintColor = [UIApplication sharedApplication].keyWindow.tintColor; - break; - } - UIImage *logo = [UIImage imageNamed:[NSString stringWithFormat:@"logo_%@", [self.application.displayName lowercaseString]]]; if (logo) { @@ -191,7 +65,11 @@ - (void)configureNavigationBar self.navigationItem.titleView = nil; self.navigationItem.title = self.application.displayName; } - + + UIColor *barColor = [UIColor colorWithHex:self.application.barColor]; + UIColor *tintColor = [UIColor colorWithHex:self.application.tintColor]; + + self.navigationController.navigationBar.titleTextAttributes = nil; self.navigationController.navigationBar.barTintColor = barColor; self.navigationController.navigationBar.tintColor = tintColor; } diff --git a/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m b/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m index c2036edd..d5cbf21c 100644 --- a/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m +++ b/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m @@ -12,6 +12,8 @@ @implementation UIColor (Hexadecimal) + (UIColor *)colorWithHex:(NSString *)string { + if (string.length == 0) { return nil; } + NSString *cleanString = [string stringByReplacingOccurrencesOfString:@"#" withString:@""]; if([cleanString length] == 3) { cleanString = [NSString stringWithFormat:@"%@%@%@%@%@%@", diff --git a/DZNEmptyDataSet/Applications/applications.json b/DZNEmptyDataSet/Applications/applications.json index 82e8787d..ca094a84 100644 --- a/DZNEmptyDataSet/Applications/applications.json +++ b/DZNEmptyDataSet/Applications/applications.json @@ -2,136 +2,190 @@ { "display_name": "500px", "developer_name": "500px", + "bar_color": "242424", + "tint_color": "d7d7d7", "identifier": "471965292" }, { "display_name": "Airbnb", "developer_name": "Airbnb, Inc.", + "bar_color": "f8f8f8", + "tint_color": "08aeff", "identifier": "401626263" }, { "display_name": "AppStore", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "" }, { "display_name": "Camera", "developer_name": "Apple, Inc.", + "bar_color": "595959", + "tint_color": "ffffff", "identifier": "" }, { "display_name": "Dropbox", "developer_name": "Dropbox, Inc.", + "bar_color": "ffffff", + "tint_color": "007ee5", "identifier": "327630330" }, { "display_name": "Facebook", "developer_name": "Facebook, Inc.", + "bar_color": "506da8", + "tint_color": "ffffff", "identifier": "284882215" }, { "display_name": "Fancy", "developer_name": "Thing Daemon, Inc.", + "bar_color": "353b49", + "tint_color": "c4c7cb", "identifier": "407324335" }, { "display_name": "Foursquare", "developer_name": "Foursquare Labs", + "bar_color": "00aeef", + "tint_color": "ffffff", "identifier": "306934924" }, { "display_name": "iCloud", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "" }, { "display_name": "Instagram", "developer_name": "Instagram, Inc.", + "bar_color": "2e5e86", + "tint_color": "ffffff", "identifier": "389801252" }, { "display_name": "iTunes Connect", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "376771144" }, { "display_name": "Kickstarter", "developer_name": "Kickstarter, Inc.", + "bar_color": "f7f8f8", + "tint_color": "2bde73", "identifier": "596961532" }, { "display_name": "Path", "developer_name": "Path, Inc.", + "bar_color": "544f49", + "tint_color": "fffff2", "identifier": "403639508" }, { "display_name": "Pinterest", "developer_name": "Pinterest, Inc.", + "bar_color": "f4f4f4", + "tint_color": "cb2027", "identifier": "429047995" }, { "display_name": "Photos", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "" }, { "display_name": "Podcasts", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "525463029" }, { "display_name": "Remote", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "284417350" }, { "display_name": "Safari", "developer_name": "Apple, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "" }, { "display_name": "Skype", "developer_name": "Skype Communications S.a.r.l", + "bar_color": "00aff0", + "tint_color": "ffffff", "identifier": "304878510" }, { "display_name": "Slack", "developer_name": "Tiny Speck, Inc.", + "bar_color": "f4f5f6", + "tint_color": "3eba92", "identifier": "618783545" }, { "display_name": "Tumblr", "developer_name": "Tumblr, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "305343404" }, { "display_name": "Twitter", "developer_name": "Twitter, Inc.", + "bar_color": "2e3e53", + "tint_color": "ffffff", "identifier": "333903271" }, { "display_name": "Vesper", "developer_name": "Q Branch", + "bar_color": "5e7d9a", + "tint_color": "f8f8f8", "identifier": "655895325" }, { "display_name": "Videos", "developer_name": "Apple, Inc.", + "bar_color": "4a4b4d", + "tint_color": "000000", "identifier": "" }, { "display_name": "Vine", "developer_name": "Vine Labs, Inc.", + "bar_color": "00bf8f", + "tint_color": "ffffff", "identifier": "592447445" }, { "display_name": "WhatsApp", "developer_name": "WhatsApp, Inc.", + "bar_color": "f8f8f8", + "tint_color": "", "identifier": "310633997" }, { "display_name": "WWDC", "developer_name": "Apple, Inc.", + "bar_color": "fc6246", + "tint_color": "", "identifier": "640199958" }, -] \ No newline at end of file +] From 8117bc7ea3ba54aefed4c47cc2e94ed215c823d1 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Wed, 1 Jan 2020 22:56:57 -0800 Subject: [PATCH 14/25] Adding gesture based tap --- DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift | 11 +++++++++++ DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift | 4 ++-- DZNEmptyDataSet/Sample - Bento/ViewController.swift | 4 ++-- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index 40fdbd31..31cb0621 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -51,6 +51,10 @@ internal extension UIScrollView { if view == nil { view = EmptyDataSetView() + + let tapGesture = UITapGestureRecognizer.init(target: self, action: #selector(didTapContentView(_:))) + view?.addGestureRecognizer(tapGesture) + objc_setAssociatedObject(self, &AssociatedKeys.view, view, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } @@ -95,6 +99,13 @@ internal extension UIScrollView { return true } } + + // MARK: - Gestures + + @objc private func didTapContentView(_ sender: UITapGestureRecognizer) { + guard let view = sender.view else { return } + emptyDataSetDelegate?.emptyDataSet(self, didTapView: view) + } } // MARK: - UITableView + EmptyDataSetProtocol diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index a996686e..1da9c321 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -157,8 +157,8 @@ internal class EmptyDataSetView: UIView { print("didTapView: \(sender)") } - fileprivate func didTapView() { - print("didTapView: \(self)") + fileprivate func didTapButton(sender: UIButton) { + print("didTapButton: \(self)") } } diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift index 75fdde7e..e119b42e 100644 --- a/DZNEmptyDataSet/Sample - Bento/ViewController.swift +++ b/DZNEmptyDataSet/Sample - Bento/ViewController.swift @@ -99,10 +99,10 @@ extension ViewController: EmptyDataSetDelegate { } func emptyDataSet(_ scrollView: UIScrollView, didTapView view: UIView) { - + print("didTapView") } func emptyDataSet(_ scrollView: UIScrollView, didTapButton button: UIButton) { - + print("didTapButton") } } From 01a51bfedb2755c43ea469bbe24eab517028e5f1 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Thu, 2 Jan 2020 09:05:27 -0800 Subject: [PATCH 15/25] Fixing more sample project warnings --- .../Applications/Supporting Files/Info.plist | 2 - .../AppIcon.appiconset/Contents.json | 79 +---- .../AppIcon.appiconset/icon-1024.png | Bin 0 -> 84570 bytes .../AppIcon.appiconset/icon-120~car.png | Bin 2662 -> 0 bytes .../AppIcon.appiconset/icon-29@2x~ipad.png | Bin 1429 -> 0 bytes .../AppIcon.appiconset/icon-29~ipad.png | Bin 725 -> 0 bytes .../AppIcon.appiconset/icon-40@2x~ipad.png | Bin 1851 -> 0 bytes .../AppIcon.appiconset/icon-40~ipad.png | Bin 979 -> 0 bytes .../AppIcon.appiconset/icon-50@2x~ipad.png | Bin 2491 -> 0 bytes .../AppIcon.appiconset/icon-50~ipad.png | Bin 1224 -> 0 bytes .../AppIcon.appiconset/icon-72@2x~ipad.png | Bin 3904 -> 0 bytes .../AppIcon.appiconset/icon-72~ipad.png | Bin 1729 -> 0 bytes .../AppIcon.appiconset/icon-76@2x~ipad.png | Bin 3303 -> 0 bytes .../AppIcon.appiconset/icon-76~ipad.png | Bin 1718 -> 0 bytes .../Colors/CollectionViewController.m | 30 +- ...iewController.h => DetailViewController.h} | 4 +- DZNEmptyDataSet/Colors/DetailViewController.m | 89 +++++ DZNEmptyDataSet/Colors/Info.plist | 2 - DZNEmptyDataSet/Colors/SearchViewController.m | 330 ------------------ DZNEmptyDataSet/Colors/Storyboard.storyboard | 87 ++--- DZNEmptyDataSet/Colors/TableViewController.m | 5 +- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 51 +-- .../AppIcon.appiconset/Contents.json | 72 +--- .../AppIcon.appiconset/Icon-App-1024x1024.png | Bin 0 -> 713459 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 3681 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 6960 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 6627 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 12683 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 11074 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 20920 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 20856 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 39593 bytes 32 files changed, 150 insertions(+), 601 deletions(-) create mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-120~car.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-50~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-72~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-76~ipad.png rename DZNEmptyDataSet/Colors/{SearchViewController.h => DetailViewController.h} (86%) create mode 100644 DZNEmptyDataSet/Colors/DetailViewController.m delete mode 100644 DZNEmptyDataSet/Colors/SearchViewController.m create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png diff --git a/DZNEmptyDataSet/Applications/Supporting Files/Info.plist b/DZNEmptyDataSet/Applications/Supporting Files/Info.plist index 7b0138cd..647a546a 100644 --- a/DZNEmptyDataSet/Applications/Supporting Files/Info.plist +++ b/DZNEmptyDataSet/Applications/Supporting Files/Info.plist @@ -36,8 +36,6 @@ UISupportedInterfaceOrientations UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight UIViewControllerBasedStatusBarAppearance diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json index d043ceef..8f0d12f2 100644 --- a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -65,84 +65,9 @@ "scale" : "3x" }, { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "icon-29~ipad.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "icon-29@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "icon-40~ipad.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "icon-40@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "50x50", - "idiom" : "ipad", - "filename" : "icon-50~ipad.png", - "scale" : "1x" - }, - { - "size" : "50x50", - "idiom" : "ipad", - "filename" : "icon-50@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "72x72", - "idiom" : "ipad", - "filename" : "icon-72~ipad.png", - "scale" : "1x" - }, - { - "size" : "72x72", - "idiom" : "ipad", - "filename" : "icon-72@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "icon-76~ipad.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "icon-76@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "83.5x83.5", - "idiom" : "ipad", - "filename" : "icon-120~car.png", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "icon-1024.png", "scale" : "1x" } ], diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png new file mode 100644 index 0000000000000000000000000000000000000000..bc62f2a8e6554b2187026f686569631b23d364aa GIT binary patch literal 84570 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�p=sJcVdBPCNn#?h*>vY+PINtX9!F6UtL_I$6OY0($-5-wUZ zFt^P#2?t`ZT|##T1a*TwX6NIib-eK}r^5w+{EW%z?_By`KmipjAEhu<_R$Tm^QpI zU2}=|vmt6FRN9r8F{pUz(Tp(@Opv3eUlq+ucRAHW-rQ4GEL6-^9@oRj^Qql|q#ST9wq6*%}G{GIa9;KCz|6@Y6S2Gxe}|<@Fowf7cDnir)WGC8aLxl)lGc3G_cVhc1EaeJrp03iY=P_TQH=i<3il0l-R>F?}5qI0? zcR8ZP-5rdiW{vwQ$2;O4KMw3+2t$D1l_oN2C2k)0;>EiO>_b!yfB@m$KsS}Q6qJ26 zJ)m*-<6_}4TO0HWCKwQ6MMgDD@~s$-%?6F3?E-24m+46V8NOGRx_0qGkQ+;lzURWO z==~V4EcO;@J9HT}Y*;u_Y^iMHqN7be*fdN-)##9*=X_wnO=Iqhqc%(prZ_Y6<2R9) zM7B2ibI?jBWR1=-SLs;t=OW4P`rOmDgz{Ul{4pH3)!ep|dNNjFG1(D zKFrk3{tu1{Aoh#n>!)~z-%s%hx!f^(yadw7f$1I>#Y)leQdJlwEK@Z=Yf#Ro1*7c^ z43MN9F<-W0GqRq7HG}6D(K6x|%lR6(N|G;0m1xX9KlM_em25)H&b4n2))J%2VsyI(&y z5Gnp`v;3 zGfJ^g7j(+uPT$?>up}Cf&{o7`(~F%kS?D9=!8$2elom^&SNX=&)7$*AcZM*{|NV3K8*)HRjazhL`!wq@dQLt;*Y)XY%l z^hQg2^L);S2Vc8L@#FgS`{fcWB%a=lXAa$PZaH)m1v;e(IN}y&URW{whu*{t+;YB# zA>4ca9qUfFhSi=3v+cN*+dWL@uqQ$sy!W6jB)84S+8EOjs_&e^eBd3|q(4@}@=&AT zcUQ6GK381#)xbJ%j_HI2EnP5ey2bpCL5>`K+|v_JqzlUf5ELPd(N4e|_jx@hbL0$o zfdIYh#ub$Sn{u_-{hOSV8T&r%d*AS5HWR=Rl+1bYLeQ~+{FN86R|YcqeD1JM=zzG0 zDt+`L!_4#rI(2QYoN{Sk>wFM&5GHeI_MMD2o`=V`t4UM%HKwuzBOl9pC*Mzl+vTK{ zrg)kzw%-Xm=JzwWE9jiElTC*6D1LR)q54kvH-omwd$TO)FX5;~`0Tn$m z?j_vKYg-dn_m=&>DXj+Qk$0x%F5(!voP{>c*Vci?HLYn&&5c(U zu)6@l%@@e#sfjF_fT)d-na>~p|65rsMhDJc#%JXDWw^@cUQv?s2L<LspC!E_QTQIxN_ z0Uug01Zx$1nZ>T!t7&b#-kV$qyDToN6hXlT8B-7u%sBhw)`C&3zTHR)wyZ*Rfm8tB z8I>Dl!|&8wZRNV$QQTa_fYiLZ+<9PHRND>ol&1(x{*bnkFvhcCIcz@G1_enA3Ab%P z^O+5}(YNy~ydd7LURheLcZ>m|M4^W<;^x1l9mO2-^;TJkNO-?U^Zf z?RjW!1I6SHvb#9cb>^n9S%4sKu4F}pp*XwE8mJ+gaN`5A5-wRF$uXsaXCFs>K(qZ&^RQ;9}YUZl`%`cA5 zyHtdlbe-4YIZPPYb0i;}cQ!8im27ut3w0#dqELo?tXz(87mI~YimtQ30=4pvWjk2g zB0<|**v~kHQNMzH)EMIz;)Iwrl*$xet}ME2KU7@sXcuomK3_c8A`kfGZ|kZsi3#ug ztlx$k4c|%Oz}$w<=I{w>1Dk42wuz?9gerE0TuNc>0Y8%b!!n~YGBC~7v2?_8;|q8* zfq3OnP@YD|Vs@wK^TpsD*$d_e#C`s}RpY&7w$r!m(=f628G{9dVTSjt?vkp;h z;uT5rRg+-bT%*s}NdiLmNqLrJU9qxW{ToE=(x0t{p=~2OoGeO?+>Y_A&lc#>`1p#2 zZEy5++9vvSm3Xd-h zALkWJ4F<<+OHlvdz!;;-@7Un*;mDPeuVw7b9ieR{HPSmWe;6BH7&*o!o)wo7Zpy)^OOZN zY{GT})oF!bGRf=g^4WLw`CNadXr35Kc};n6Oz-BbtrqpKo5|8&0>*VXyTYQ8wY3j4#<64@R~ z>H<_b%<7&Za}Xvwe8+Lz7n= zB_4-9oJl!siQsge<^$%vXoRfLaCsD1`CM^@KESC?!VLm6| z@KJ$gB%45^ETo`u_?U$br1&@I!#(B4p<3n#fY+vgd`^0Js*Z!4@!xZ1!htMnjS94( zxdJBN+4Recntb6!lXtEZ0`)?A&0f=QACxUy?rX>ItG>}^wGJ`mlwdaov1>J61JjfD z;0TCk=n~941y&C4)$$&2hsuB&EcpjX8v5<-e-+`DxE&~gK>Pwwv(QQ$z-OU22hAlD z{=Gi43VwCoS?PboK~{~8Oafy>g6c(G+_I*Si?ne#D?#U{G@tJr4Zi*&qZOsh{eCl% z$IuT+@U!PU@o@ejLHo1||#FCVhW|f5+Otbfys*qa#wDxxKpc*`t8i(0SMhi=V01 zqLgS<3gM~(gYsIGlA{m^VF1yAuYi$bfJ8VIc&Jl8flDNLjNzYtWR|nxU+2}c^@Uvl zAJ~=^uLb2kBbCkFcwX5)3A>~4lk$S+H^q1R$8%~nsxwL8iff53m4)LZ3urmzB%|lX zw{6!8^^F`BLt{Zp3~jxFuld|S4ekt+9^NxrtEgy*Ens~V8wc5f^iV+y<|_}>;*3j; zvWfEZP_YDKe5)dDjORIW5@RYrTaltlF9V~Ehqpp@UoN&)$|fxzKpj@)l$Y46$<$>9=CYpcl+_y{uEOixD|_+s49pYagKE#)+c)RMZ7R{>4vP zMh2v(6Oj2o$MZqY732koHZo~m<_8UXbyaah-}EH-Uh^u{m*MeP0)M@7A5$1n^jW-d zbp;Z+nrv7iW30%|c!paF`}twK;pZn1L=^(C?toDngRA%z4rI*c`|bH8Twem-V#Q$- zLzPn0Vxu4|UNXHz&6JQ21z_yef!{k*7=iV0dsO^yTvJfx1B2+mK(Mg!c=<#EDhV9R zM-@Tm`loi#d|1A^O1lQNU>r!sMA`e|+_+ z?YAoU@zu2#ftw8R)=$Qyj9jky%92hU|Ec;flbZR0J4qKESW)uBnb9;SCpH2z4Rh5)HHxpcA)unO=T(G*Rag;aXTjsU$Dwr8Yw` zwGlfL%~&C}~|`?E1$d|~GZ*I=nohtuGs z$in>uQyEptIQ|-c5;dZg4RGIGu&m%<4xwNyn03|n=J9B# zK+9~We)4seX)v!?94A;ydi2%r=6AfOmDIm**%}8ver=Gt)dBU zZ83CEFLK7zzlf^Gdb|3)pGTFChU5kIo@E;@F%5sV@%RDk&7R^E?_TZHx<|KWKJAvB zG|4Z6)($B75kTi!VfGt9@@F!q-W}%exhY0@@+aA#+$>7B`z)mYyR6K@;&7tX z+`iIRFJNocoD%R|v_{`x*CTnZ=KbyWz}Hv%89Ex}Re0h|7-TI)tc4#SsyqfM4RjDbBPZ;h!+)Cqgm0nN7I+1 zQdHGPv(*(BvLS)gM<)dpU z@*9ZIcyzJjDxGbMg&YZd?WAq}cWntw6JVg4C?wKEA&!94+LHfCJ#a{UsLR zkqvEo1Fv`MhCgIq-z~HmfQQ#K@WEU&-f$M&u0Mq#H)z6Zl>8_Q;UliyifZOdgDl^g z4h^Xh@{QgkKYgBK{i1>(3$GsQ#}yCH?E?Jp`oNcQ=~8re<4z`ZRFROHu&7muDcVrs z9!=pR)cW>M7qVWi_ufaZvG+`eRBUlLc*ClIUm_me8BNE&ag=`?UN(I*8k4HmyMa&b z=JPfkiTQ7^LFB4f`|e8*@Bhza>lxc0xh)T;%ftY-ndrp~*=x-BgQoq@nV!#%uH&153u8?_9t%%^R z`VUnM%VnkpvMcW~ zEI?Dd4lFiNy}Vn7UYQD+qpz+1HB%=ytAA~cRR!Dxh8DV6c?UXeUc6QsglM2ZD`V=% zQIR!qikL1is_p{a+om~7DqP7KG+)Jim5qOhk)}oz2{eA`hmG+@Vuof0?DWDCF6#v2 z1Di8FW9+yII#NK+aTD`JK^*tq@m|%vDW$JYyj|i-Cm*wHxPF^1_k&~Vsogj{s7$8* z7MJisf2{KhxsBG(n#{ze6K)YiF%jJVPWi61Q5G2lI4!2iTKPj|W2p=By;#it#^6ye zo<3NX-kSCfaiH8(Rv9+gW++rB&0sg|ZKC^yQ&i@P0;g0VZ+g_VV+UwM9M^||Zed-~ z5lHWbE#j09S>-L0l`}x1gQyrfbO>KSNP(|^FZO?>`ilfwP<$LOuokk(XGC{g&@Cjc zV$g(52O|~JD$}WI;JBFkkFiPjAf1}aJrh?FlY-zEv5Pho2VP=4L!(K}+M_-b6aKso znn}0wXxeCy=|_?Z?|dJOPz>w`ElZ!*7y0g6(V&L$ZEpv-OO8L{Z&q#_a)x2V zTLnVt9DkJhHn2-CCbsp`z>d6m=Vf7=H`ZGfKXxax5lXuf1&5J+ZkV*6&;{6z13`IxE7`RGrrbGu8{xE^ok-F)8B(YMBuV2eCf;O3VP0| z!Ioqoqc@CN00C)Hp&+17RqOi=kE&UoIJ(+ut0T{17lcP(rTuZs!6VOwLDx_GQfjNw zOXxB7$D451%Sl6$Mj4@~7;h&xIl5Tmw#w@$R(~KSOj{gsluU{?YlQ;X{$Vx9E z7ckNneg`2sXCG^hw?I}Qn0yuSBajN4M@n`(;V9-f-`lzWfq@JDVHD>JYxji3_r{}igZFau21l-Lyzgx3uhSg)JB6YotXOPoR0Gn-52m)|SeoEd> zWGpQoQB910{39D$Z`OqFxfp?5lT@#juLx0Y^pI8CUzSAixf?k|R~tDFc&VPx&-r_C zC+;y$t*eF4L3n7Px(GPhcEFDT(A;$bIiHj+xVe5J-~}GP1v^Z9_E5%a0XL8WDm}}_ zhWpKG5j{)!Rm9SAo(5OT8hT!@`?ndJ9nrBn)pyT3+YwY1Fs!X|eK;jl!eo`-1eCW7 zKlN$*LPX{vBs=WLJ>(Iu&P4yw(eQ5Mc`%Xtm_j?)7OuKf*14zQUX5Xw_;A4IJ=CasSMvwdn`pFG+9X*LvZ`=nSic5b8EgN;nkF#mc!Ak%lmZe|HJow`Wo zhJO8D#uOk>Keq#X7&tT18UYmfZgT)P6LS%`mO!inDxg%?WAMz4m;cubZoi;*NjCFN zIRUXdj4$Fvw)?7>@U{sMH7H-enC4BCzuko*)gUOnd&7jlkn;Prc(IVG@;mqsoH#9& zivX8650XtXw-$7w&UNpB79%hqU7GcvW=d3m%*VlW@p=Gw1O)*nD4Nl}t@ zCT7QV>iZH}3Y#}|uScIrWo0qd*#(62l!n447XQKHs@npygIFfNJq&0W`$ff9<>t;xrsr!BFrh2zE#^0irO@TonMWp8^e_ zs?_(#tcB*R|8Jh~h>7VqhdjQHQ)fr1;EB!Pv6_)56hA|Va}*>jt;QAUmzp<`(e_FKaTHcfJ`z96%6 zJa%3zN1zA0C`ZKR!xL(!;11)55W#A_UF-kSJbBBg*y&Ah1S`I#kLUz`N6+cD z*cRi#bf1~Gv$;2=nhu^{pZhfTN!NowG13{ac=e*e-FmJ*xcW^08>jnNfDY^4%Uj}k z(K(Ayqq|>}ch{qTI&r9)uFE51TMk0pF=4qw-SfTv8Hvv+L|#}~8ol;w^X)yLLjM+v zddZUriM|k4`Am8@fj#b8XLmCCdyP7jhY~)2@}Aii(mJTfAfR9-WI8&|rX1VrCO>1l zresKdXP+YzhG#6>*F7BJk(1sFBcdENDU{xf^N9am?pTVk81JdEe)I1l&k}v~xx+-uMACLw?G>$xxHwo<_CSqlDPW7?rr*S^zb_WSYh3e< zoSHeL;&tl^JX0XEzn76SG<-*0^rJD&3t0kmHm1C1v(GNelME>$d>A;?6~VqssU2m$ zHxwB3jZ!GT(>#;q_z8Q+AZW!|i|jLAwVN}su+ zO+OpgAqT(sm{Fu&l8IC)C3au0@;*OWQo$eiS$fD@*YEk;P~yD3Ps_he%wt>j1D$C) zS5GmZmPI3Xi1QL8$$~oFpCeZvcw7!rWTNoojX!+ejAUQL8vNew?q;uQU(l1K$_i<^J*4S)of|V#AzJ}nzgwb)+R1!H7QE^39 ztNrjU>0ty(WJo+Gh}wt6hQ3*ml5ZaD9;ir{gkJ}Y6bwKcyl>k+ZzY@+rE7mew0v2S zP6v4rL)P50QhRn}jwG0yCf}Wz`I>1Jp+YByskdO%X2aI1#pb-#^~xIVd0$Wbtlev^Y<%spC_(@1mB)tq33WVw zDxQQdy*k-!5m^;+vr$3+j0e3e!xc)oWkUKqSJ_ziEoXX%BwOS}HajvaRac2;m%Lg- z><1N|-{g+ePOF5J_86$lUP`$#tYkUQetA|3X%oH5N6>G=L1RyT@(qWmlfs6wnbVZT zar`>6QHTwSgn|zxJrY-Bhu2)iIPPOyU6PMo^O9>Ic@8Gs$6E^?1%;7a zsL&Z{GqyyB61?$de>nzy>%5;QeXX}~Pb=omb8CB9@hNO8^V95gZt^%C{c5&>PmD&k z7Gb%p+r+lQ!J(B~Cf9ZOLS)Y(_hIoQ-}}QZeusebpG|S8xc|NvERj6*7N+x7$2Q7^ zP8_$E3#MO#9oi&R-9};TRPfZ)5X2#qO&fz76T=P1KlE(hsh@ELr(ySWsT8z-}6u5IGp|ko1&JF{w~Ht zIyPEH?8AuIdg0A+yxcrng#p)L%o<;Bm)Bc4{)dRjBsSQ3zIg~U9tEL0Pi#{=(~LsV zOzqP2Vcp49?Goo<-SoVq9aGEOMUDJ<*;GuDEq6RzHiRrHsm)KR%}ENE1(A0AUi+mA zas||M($!L`3oL7xqnw)XyfVB2&cD_e>?hussM4G&c@|9RJgE^~m9wANC@o?}#@H$q^UBF!1;(2p!G7SC#HU1d@`veRk4_L*v1;KYgiQaJeG zDEgu8bkSxF{+Cuv*cJAcOnzc~Su{j+P7y18pKso!jw(;C`@~88r*v9OBz3Fyskb-6 z5lpuCU~X-4*!@E#_abCA=N3wGMRgW3F{SUMc69!PKUi*Pn@J*sX@;)1Zn8wx&dP0O z+vZ?=ddVg~6>(3sKDZo10Uwr7Dg5uvS7sDNXcS!Kds*B!Pg6EE?BzejV-8`Z&`{hU z{CbN3$t%i=l-}FJd z4)E?TLIbCCgg-t}ey2H8HDeIiC0Fow$(|Rhko}^dflwN7{?FetQE&yf{(z-&wOTHk*jcWqQ<*TS^)yfqiX(?u6d(rryneT(B&?E_ zsM1&IY3%JqVcqXC3O0-Y+rZY#T9M5yGRiw678nu+%Urq zt%r(?+j0Vb@A`UvXU3ve^j<}Lb6YsZO~^#2txra$O)&b7XiOMFSh$-`V9<}L5yCW~ zQM4ykA-BNgxxB4^U~BEBpEIoD`Gz6_vr(%2YoWsf<%eZC@h)UPUkkrUEbd^hKiA7x zCkocFJ_5*=f#+v@{}mYN8a!@;}8FDMX<15;UbzRvvOnftFxtz*F zea0Zb1kNm9Z}H@T`qr6oeg&!9^0v)dU2wVMCk&aRVr7w!MQX1Oj%ohA!^Pl>%yVxI z&hJZ!hvkm&*gBZAb$<&CYd>Kx+W zXugr73yEwTX@RT|AZbG zJw150%~3Np{IgKGY{Pm)ooD>92vZH8ACV z3Dwvs7TNg1A0=TsVZzLgb>%E@Lr-IjC=$QvZ$NYi*c6X2yQbsOy)|mDXuKYYd~Igx z2%5w99FlFiu0@8fSoNQEv5X2|{N*fuVkVudyL!)+I9wE)>S^-@?M;pcxyhsi33ktm zy#`idC!LwMN3U<;1v}^b&XvYuJxn)jx59mg)OQA0f#+(7)b!t{Dq%#1?6`tl8*edS zre93Sy&we&1{0#tnsf0l6JLas@Z-)Cc>Dv^*1_pY#Z<^H5#xSR&eUSqNEGc=JARkY zY`5T&pDL!syG#C^>`HYcGx3d68OzPLS81zCkNsQg3#_Vsd&9 zM!&{GXxhbx0)D;7M_|-_;BxYla678R={?5M<7~u+D`=g|pF}cYc>XO0SA9r%$G-xxi+-j~)7D?C@4u z`1^?M#8aNdH>};aYSl*$x*OlT{36lYC+>nGD<8O3P&o~p(iS@eY#?FAbT9Ij4F9-P z?U@QobI%&F%NHJ1&1!np35sN>AI)=ELWF9Dh=|M`V>S%6dcZhey94#T!ra%nRiyf0^QCks|{U+h7I?f z^J2r~B44uFCaHbG(g+!sOZcd^tC7zQo@gO5p{-<5A-6ukR<52&*{g_s9ZPXVgJf;O%W!ADM?aqV3 zvCk9~#@Ho&a6U+LY?6gAq6si!crFXKgqaSth8F(0SMFn{%%F^LzFY>)%;oG{`8OXH zpST+KKL!6+-FHXB*|q%+2}1O!2?kH1ccL={3DF{mUZMn#AbM{RJ&ZgeIzbSf=)D`! z4be-CZnTNf1~ccDyyu_u$G6`1Ti;n{ojukX%b0!d+4r@t>v#Qr*X&KCH)8d#ik&U8%78+ax?+`6VE5;;0E;_t@k#huUj+dT$8PZhv>flUs)w7UmxnjyT$ zH*$k4Oijp@qqE>8M#zkiSXVaO<*0OSN!K9}b2FaohI_GSTyUo;VNi~}T_dZZmV`{8 zUH}I;%CJ2x!EgmO__ETXk3o2okG@A!F}CMy zx>V2XJk$<|(QSv#kU$>eyk3xaabqA(>n|iD7xD(ajMNNy=pqW>%}M^V4fKwu0AvS{ z*|=trZ3J9x<%f)<>YVsqU-($?)M$sqJWBgd3*~U4J>$Ust_NC;JUQ43bVEf4US`#HBlwMW6(&o1e1S&{>@yTB{p@L77;Oma$W!y zmel&!dR0hZf6TR-ZpS7C*TM_VZex5=(VPUz*R$TnOJZc}XVB!Wc~V#F?X++@MMTU- zSk1~luJKuDMv`!H<@tS7*#kTn<^BZ3$uvqxuzkZCt8+2tAE*x9U}uyp@p~?(C6!r% zixfNGWNi*(_Cvl!>pYT$jzbG~2KlYnzccz@Z>D$2hn?%itbO3eC? zxuD%RZbC|PLP3`xq{Q<9ht$@Iti5nR;_6(z ztv}Xc+Gv&7oLt+AymW~?tgF7VG?V@uw`$}W(~8KI@uE@*pdjEy={{l)uy0EU7+5mD zD8KPd?C8luvbGGrA{YYfFtL_BLf%>%hIaj1!a|n)XcnV}&l>B-$aECnxHhoc)t%ji z@y&v!_IONKa>lm4PKEWm^>Au^lT!fcOLC?vZR_~zrHX}{)B5QmV{0$w`&x~g4IBf< z8%hR#NIiwZ^A7u&7~bCbZ4w%6)0`1<prYQ*uPiPql9&%AroToQ!=P@vA9?74!(i z1?rm^ut9l&9lw@F!J|F3*@v##0gk)Y%d7MLq=NTBlt1)nAp{7WM+wfR7{_M7CP-ht zAJo1Z>^UxWxx)D?T$?oZ(;~xz$Lh?j+{BE_JEb4ITe^HUtd*2iXm`X6J~F0}mf)v9 zn%Kr_mU#oA8!%_@<%aa9)A{1zbmZnL`tbYD9^-yfF7oc=hiW3d9Mj3Q%M_@pSPG|r ztySmBks+J+SSk%RA%z4?n7*>*@}h0Wlb&X9waYP_w!{1U(3HWzuLvEyWM&H_xoyc; ziY%vfGBY{VK?#%vwzrezyC$9l2rOo6twD*-V~1O;sbz*yH9|koCaR77ZUvhTtA}a; zaD*wYz`3-cK%mN*e_p}cT6SDFb&<3rv0v_5AJ<&&X=0z5gFe*C2pW;f+JtuJo80GM z_%m!)1JfkT--id{CnooTox11A7cIkHGTr>bV8ydpX}Ov)SdHRbw*BJ&k|&p+T_C_z z<8qNhi9Q!+yIG!bu(Ofzbw6ojMnm})#{7b+3qiBwA#FH1xZC&Pw1;> z)cNICBNaElyb|zmyVjJM#(dTLXuW^axIJFxYIzY!%2Q+TrxPIJb54^5Y+K zi&Oi>Q<|ZgIhy6+$r`B5AE!Up?Dh~`_y1)OOLx>&6Opk4?Ith_@>v(N*I~Wlb!>fH zYz0yFY47ksuR?UG{J$;IS)DLX-DJ#uFq$vtKCTs$;aPl<-F+(g80WBk(B0`(R-<%R z>Y==eN0WM&n4qe*aS&9q$>CA(0N&ac-|0`p9p9Q@L%ZAf73-;uSp|ONh!3`NYYoNd z^?|FJsueD{N1Ep9Tt$3Sh>X1R~D<*eRuXfJVbJ zY13qEVNxp+VGX8G+RY7@WN9E2RV(Xwr8?O8+IS|0+pQWU_GujFovzu&iGfuG1dk96 z_2iPadSvdMd~@W_yrNhsjbS$AqxdvI7u&c2>x(xRzBduVPwLd2h%p?PNXrC3_~ zh=zcvN5+O6P_>OM$`*k!9!=p|P~MIJNm8tkl-K_S4IE2l?iM-p-R?bhbQQEPe3cA$@0WX8s2PfcFFy2}ZpaqLZkGACo}BWw7Mbd@>Pm8I5wL3klsoOg z=U^+@5%7cGVAbO3ekK1x32XBbi=Y3lH9cR!rx1HZR^ha0ZdpDu`)HoO!4lxaHW~N! z3avYki48%`X+^+Al_%PwA#}Ku9!X8yyP^5IjqT^0DwiT{u9dFY)04e2`c%DkZXv6t zIl}w&w30R~wh{W}1`nLC@l4PXrrqM)!12^=-T7WUcg={7k57F+2VbCrxP(-|>;k#1OepMBty5mjl z8$5dI{tJLuxcu%_YVxP!KStlm&I5h zC-neOA+!*?U7eN&-D~gy!N39m@nCr2UJL1I^tFe&syamIa#aq9O}X8gwYD>>>};as zXNa(L<>`M$>mri!HD6OhoG5${r1L4Re|h@d*n#MNJ=E{sWE(cN+-ch{ z;zaUVeL-)3{i#L86*3Ozuo^tq1Tf=?T34dqMQ!|+Cds9iFAg8@{9;7^39^IK5vEnc znPoyZw{vSdF_z=I?c1NTBLAj&10WvnJZLVRO7xy>d1F&^)r=oP~64ODZR1w2JfIV+O zulzRiRNHNokj9-*jYnW5jW9)9p$}X_RLs^wy*`AclG$W_rGp^%kO~>H1iQ!2NAjdL z`P-#AL1Vsx`qCHRFG$rEbz zit0s63MJW__u!9zyj&=fPB9br>uA4b;MXO$(XePCfKH-iwZRGE}?uV4Pz6ogc2>v<5D$K2q9jec7`Ku3S`Pq4?!f2?JQgJ%0zH+b_p^ zW$Y3R(FY@BZKxWIh00`KV>$^6(ejb;?+VRO{T$>Yi6rxBzxjrFf;+(cVZmv2 z{~kanH5inBwUoF4=n#9SChDBhQGZPUge;W1MB01kAlys#=MN4&X2S}@_$dU^Gz)w|;dX;eN zUg5(>%Ds~wOyeS1j1aQkPt{Dm#D@k1SKn@7CM0ZS&my^mDlRfBoSx5W1GG-^)$X3F zAk=@Jd2P&SUVTfYt7ZUsHY~2gSiv{~2QlM(6*Aa|QG6nLQZE{vc^C8m)`_0C)vQr( zvzi}}64T*j?s};k@hkFw5>Y0p4$mBpR1zUNT?XZ)v|av_Be{@hqq}7HITGx(EGfes z?*52Biqf?yCBkzLX_q86e2+;r31TDJs>$;fp!_D8bcJ@a-+O7-+$y)bw`lI=zio{4 zuVNdHNjo{VV%$%UiqfK2THWI6=mg+J_>-i(k*a}3fWzp~Uw{7OK)-AnAYn>xmx-2% zI=M|sr7~v2JzmQN#5#n`&;yu9-+cX;I2~Ift8L;R8-|HVOD*z#;OZ? z5%2gmK}uWl!_CLoqYn_R!5}S}5L?r3TekOhI48S{7c8eImDS$<{xh?y=1nh3CAL*I z%9nk)58UDlVP|*4i+zBNolorMXqt*VOm_5(rjweBj_cq^>iOpejW48%0gAng?ew`1 z4Y_SZS0^tN`)6pIfp8_~r^knsp^U6rH$^(uLS_i=J@2O<28A&Kr>ZDVzDc{$|Ly*o z+E#lCpLRQM0d7(v6Y*=c5@(HedFybaLhY6aDV)M>%V~LT)qH7>?`n>jZ&%a!L)BJr z47TcQqa-RuGAdG1M+KmWx!ujyn|P|q&`n+r@taPV)~Ei>&+NFEGGYu+y526IHbRR5 z`1}V&s6YGQl#{@hc^5fTC)KjubAOIC%!nrXRY;HP<4Z|aRlLI0me0P$7w2@+Ft>AV64Toc2ffJtbw zKLKzUz+j`p9}Q`SX7|oFoDG81?;yZ@Y2Phht*%srr;K0;LWT=3aP}$raqRbct;34O6p& z$C6Ia1ZyBaGxtRMd>}=zF~(@@P-_-w#%t!JKXK#62R^44AGj4 zM3Uxm4@E|OX@0Qf(W&rfG6y$7jaX={w)@>y_9q7qzxIdqi1$sL6jH3g%T3^d zg;~;mjfxpI>R4cIVj}OZ`#G9H{j+OXlXtNXLP(`H-X5JA&h;{ZG9Q`0w>$Rz8mm|iEymDYPs$fr0?n<+kR1+>&43R`e`eVt6AgxV+(QYkG@uWbb;GyQE&wOFZZ3z zZ6z3Qo?x@%pyante^SHz1kG}s`>K0nSDv2Fp1yJ@Ouj}jLP#qpTl{7^K{SKi_j^5x z8VLfo^j>F)9HAT1q&f~_kC*TC&asmTQH8}hgv3E>Q&ZI5M~z3Yb^{Ny7_5v`O`W6d z^cS2pNTF#4Bu&Qw_{Su`}TEI@O zD%VNU$gn4j#=$odrZ*av`3Q-r*m@d~^+@aGm)X=IfRf}<*0a>N1qsB#r_5=Ge~J#f zeO!I7<>XeXzDVPz|Fa364g@jpdf=(zsTpn4!1x-MTuWEgSAfn15Ncp84|KX#Fq4iv zd|DcbTdg|1IHZGqH~36CnZ?Pb$hjo_l2h1aXFIM3BLkpKF)eHB3dPp z!B#a)KJ2*lI4}lVwg)E*VV2(ZXKWJNhA>|iX1+v-xUv`lDyx1@2{oXqCYkH|W%l`f zayGHdv^LwW>nNDy(7&+ZlKWL*`H?d_8nta7NRtaJNPATF&FBs<%>>vr*X{{$4zkLfRlQe9Eo5m zP~);7Nho&ukJL~1$mPDDS$}4#T=Lg@-9~{)#~0FiERDt92)#FyiCkgIRrYi+OBM$; z1xl*)SB)uAGo~2VZ`>*4xC6}6ERhvL3Qb?lje*j=CGEs0V&s`G=W~*j93x-MX_ekd z&BN&(t$v_y;;Aet_yo_BJwSdqI9b6{j1YU~Mk<}B8C$5)<OQ1p%=>z7nJKTwo{c3Bms6jUoRci1 zdh3>=jS#WOzPBp#GGp5Fio30jZ|c1&>i2t%UH%SU-im#EaMxS65itIUF7@)m7zi67 zMBeF;F>6Nocb>jP@AHEN@~~|HT|9~Gl4#$-m0Ur{eYOw+Ji6{C_fD)jFT4V z{^RIZY)M!O_$l!46!D-YQl*UhCtBg54;3e+Pb80$?v7{PDQ{ryk9McUQG@;Cx#jW& zv+$CEGWRk$H)#8p%IyCg=&OUo_4d{IA6od<4_EP{gIha;<;mOYesN8OGYrK~gciJ3 zprIRP4Pm$`9R7yzyK|p|%z-!%vj64nLug48nlJK%DB>`N9zPblGR-%W z_EhD>ZQKTFCp@}=zrw^OAdlhsar-+<2ZS9%-AvnZX(vmn)4SK<#I5mvBC1a=xJ^IN3D2)3W#HqA~4-RDvVty zLusu&a+@Z)vp}hk!0(aBMuQbZ z`b$(eU#xF|1!~6ANu2Cd+o(g&;bE%8H5gy;%c3v9oUNHXYww*0%Vw8^%XAv~MfhcfuUHl;zk@cAB8vPxpY-GB){ z!Kz70%h;Uas1CIJCz7CC));#IA2l0|-xu_^_g`TCUJY(?1MXw9n?Y^)Z5kG%IXsY> zzdwqgDL^nFY<5xo_Zn$?l?2n~H8@8!y*W+7B`-JOj>>VcAfM@8rAm2KRSA%;3~!%5 z2nAYj*i9}rVimdvBajolkB%h_4>s;`puYo>Q3HLF0HMB6sy;`9`>xuoIfU9DDpL}0 z+{z_X9=}EV^(i5LrZY)v(PH4Lxyz-t$*J3_^WA!Goy~rxmOJZ-015>n!MI8zq8#35 zH=W;Hv=F$Cou1!cX2DpTpma*fbd(W#1^85&KQ^tbQU+&NT~$(8RoXW5-u4MG7H+Pe zt>#=NcKwxTXMSX~PqQnFhMb>Cw)MT1;`mX(wHz-uK8T;wJGCrK6onslw?&bRyq`9I z!n52PP*#qCI?v<2cGKqh#|8v38t$CI#=ekb$e%Fja&AXxxXHyd)wq=GXVO^Gbp>&` zzy*-H7)R4tXB7U3E#Sw~eSa@k1+TBRGZrN&j-@KBk}Rl)pH9a7w8qEUSwNxwqZE;q zUgxxSqH-{;ZHMyBZ?&flTx77g!PQMG5ecmh(1(VzNU<1_7PdP!V?z$>9!WsK8z592 zCE?EJfPtmYm8sLPEM0kyvRp0=#r?@xEO@;eczPUPyzYc_bo`S zrX#VM_b9?V0V?W(OR1)FNaO97fuvQ4^y5ng-f*$n?1DFU@!xYUPy7N+IMf~rqa~`; zr8?XuIhG`{kA6AsqFaYH{?5Ejk;ZRs>@1U|gp6w|^D^o%U;mIiyD|N3PQ z={>c^7dri=kji~?GHHj28LLjK@`8xEkLgNp)w%hvDd;@DI9%gyGM<)vfX ziSrrG3ve<%)39#JX8XX(&euY*UZqyr5}?7G3Y#}Us=CVh@WF(07vOh#b}V%J9(MBP zPlttIVKmf%bcbfYuqacvA$#LICACKq7%dtTKi{hNlU3^jcMGfcbMCaEGWW$-`#{1y zuuKO$>6a&YCjq%6x}SM6zZ|)Z?F2>P7OvWWw9IlrTUmLT`V)xiYP^Arot&MW9PyN2 zuC8%Oe_!R{C9?bQfZ{56FH!=~tGfTny&0>cp`5Es70Ood;d7MG%ts0hxgKji839V6 zsGchJEuYKmruWGPcrfyt&6GJoZ&pEBv3{=djmri7i?4a!NSn>kYAD~I5hjar%{Uab zQ+%~*2iX)S`OcP~`)khUwP>rr6|lRFub1w&=5}3Ui6}75(_J}-hzwcAO{oz>%&yM4 zPubhi!!@=)$x$3mS@A9fg@I(LXlv0z?A+Bw_aPX16?|}9@9eW>3;seeMR0EjL6bk~ z?)E(Pkml!n)x#OSf@3RdJ0VNmt#;XCC@k5Px&=Z%Dd-G245*Z8y;{F%$uj5u`n>ns z8K=NNkd^GljidGtZY)Ho5Q8=HIKWRCgg5gqIBoCqcJe>XQCI@3G9-fwELFKA@)#@ zARGThdi>7t{er6GBj2MGni=7yUZd%QBdX%S0fS#+cs@l*YenowQS#^cFo|lI_5zuk_6ze;+RzK z&y}QHvVT|9!lb859=WIo8=PMZm?bxjEb=HNIjkf!qGCEqzCJ>k<{m{aSDb#)_yZDy zKC)t;b6uhi?rFX?iV{&K28!;%mG=vNR|m@A=i%2i^i7)kX&Ua(1+{Vn4S8-z*jM~)UUa=3HRuz-KmrBgxnOa;Gv?5r zR`?r+G+>noE~iQuFbI?r{qo6*=DlSvl;*vqx)mp&a-{NLkJ5_XDe9jM0s^I{#BcLA zR#p>+3$qI|BkM+;(M=f&vZwk`_sBzZPKU!Fo)$-j)ecgHWFa%kz(%2hZZ;n$5&t z8Hw$N@f5~uph594hhX3cxLlf2nNVGyjv^a{a%0J&)+zIJ(s_;g@aFObPk>^U2zPY5 zE*3XmiGPB9d!F4ve@53Xc*7DXCb+Iq+oFi&03;PS5i*bYEpx=#SY)Jl8xrB-bXH5& z&VpzbXxl?H%kM|{+*-Xylt}p?rPuZSM%A=eRj8v;GA;lgWWA^7TDC z2-h^L4*cjG75RHcW|iodJyA|zu(ba~uY?%@svxYC zkX8XN6OqMZ`UNTxT_w}klHVUGpwS*q?sW?#G!qmRsdy5$2k^KkwyV1cC3^5h1K5gw zm$LL;Nf?511K3oV-Bno6!Ppb*MD8|bvps#}*j4syTCC23hQZOZ4-rJ8 z1yn@jcp3W|*c$qp+0NP6i#P$gNeOAv_1gL%9uktHejQ?+ z2>UQKS)+d2)z|D*>xd;4LZSV8sr+)SU-6mj5#SF&e}m5NED5%L$a=QH)sklg%iLEWTZ1(rLTv)e6)sMFj!&nrkT4z}K0^d9!T3e5WO25ZtO7sD9f z6@erw7XqQBOee&foy3zp!2^3!XAcn=pMbgxR4g2RK{e(ZggkG6OTy^r2}rMgQxufr z7O4a?riXuV&}ovgv(wr7?zj{lumkm2;$>&GD(7t@$v1TI-voex&kHc1%E1oQtb`wY z7RdNGb#cjsIBjg65LUkLY$Cj)hDl*U1rKcXXJ*hVm6vWcSG_p1i?K~>ZTWna?)~f| zBdk6JIj|C-5$Pe(K_SYx)Ms}syi14E0humWQ1P4+$StU-t|WbcsJOY}djgY{?1RPp zhV@j!nn2IFqi-Jo6z8A23;aE5%fE-3HMe5!0)|GIoaq_CmHtd3_Sr%(YWT1=sID&n zz<^thUDT}X7*RJ`pcBl~L&A_P$9D$;EgPKxH~@STJB9`E>hTHC?=l?#z^)rGoxuP8 z_8HgLyS_8m4amlRzYM(Rx?NAobpzb&??(JzzWKj?^}p5izjxvPsO$giGyQvA|F@>= z|5?}n-i7}o3;7?hpZ{ZA9H8H}_dnUSFy2q4-xmEp+3EEHyKeti#{2*AD$RA7!cow2 W9Nrw=#ifIQrlz8$T>i-N?f(KIgZwrC literal 0 HcmV?d00001 diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-120~car.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-120~car.png deleted file mode 100644 index a88f27bfd09f7a10befa945ab751965385dfc05d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2662 zcmV-s3YqnZP)3>_LV;i6K} z(xfzw3Ani&=Wt>-j+5Bl^?JS6?ChK`&+Iy}8}HV8%&w1p{_%&6<(*mo=9&Ndf8LpS zO&MbZReo`Z06`;Y6oN+32pWZ;5i|-xBWMJTLeK~rg`g2Mf<_@|1dT$_2pU175cHyv zVEY!6I{PT1Y9^z!gsm|6M;hIHv)_TBv*_fQ^4k;PQAvl_rE#|8;OTwKz2DnXCvp@) zPiaCifA!&bNH*MpJzPviItJoR9{#KAYS5#n)EiQQN!ut}AC3}_gLaL`i{NG|J3-63 zN$ozxVS8ZrMsCt0Q9Y70tIImdh=N-7XD z_H~T)UQ={~Ns9UEvDo7;2Tlwr2-;48kv#WaI21R0A_X7kIpTA2L*v?0uLfV}jA{mg zwn?uak9S^_JtCcM-A;kR2=QW93{qnBJicoqol(hwZh*ka}fUKJ7}O2OPOHMJZIPW zK~;@`-CN-=ZXoE7v9@>K-wJ?rZhz-sG#;POA~LYLHuNgzxXDujEdJYNO23NdqW1db4=*NZdFd z)au>bmfJ)GU6Le)?fHye5on$Z zY8_{j9cPj~BWg-BT@LDgg1lsre~#VXS-2PpafjoF3?pG?a9l{?Bi3oZY z(-=vSpu+ePuI;)V+*{{lNo5E+XP!$K#GP_NM{~13}+RIiiuFq{-WK+YPki!!aG&aRhyH69}eZ zGCLo~6F7RHM?%myH-Ryo*?SimxW~~UrLTnBP!|>G$tF-{g5A%SPPXG`k_dXT2?Wz9 z(-XW-fp+vJb+hV0m)Hd61Nzjc(tSm#YS7>n!|5hapk+LeDUB7~jxPq#nI`a3$xUEB z?Kp(IL{aTHw+I}=#wIYIcKl$!T#cZuCNODR6PQmsUR?Iz7CL3C36xE~Qfn^p9Jw0N zs|$3d3A_kRAR!f7+e+2g*4v7?pL%Ytf?HvfS)@t<1Wn*T`bwZse#|U=^G!-+Tb4T? z|7^_y0Ie9-EQD9!96U)GENL*2qe9{5RVh~j3oBv6y2#>ma2uD24{h*#=kA)NUT$84 zX6aj!H#a)(U+G)hAUb&(Q_YjX)LVmzVM#A&ZLz5)uxx@3P}Zz964x{cUu^a7+32}v zrAsKmXoZSVR(1A`*4nSN)!cXjcBz-Yz2327rT3X*;r|8X{8`^<0&Op6INP8abb~Fc z5gu%FJ-X4mqs3Kg$C_9b0xj$8;nn`V8?v}tos0X~-HlKDJ9sIsiCkW$an0@~Fk`{+ z1x&Z!?s}x%`@lNSids9Lxv0c)Yz8AuE@5w5&N0L#(7o$xp8juW*7(5L-2_frut33r zztrXd7ls#QnIy1rTMi-nuMY#@r$6QLJ3pyhx7^}t@(AISktGqcsRIcw`x90ZSYmLV zZo&7r`u4PY?^)$?lr!tv30gBumZO_mQ8UYqz@V49`CwA#XCkCi&BCBW!dmgBal?X} z{KD?_u17an7F<`6WeM%Ij$8nknMXh{7|Fg;1eIiW!jfENgP4{em*0r)Q4fU=##eGprR;MV_{&E%?i2v*3z? z29t$!%w~*e(2^Vvrot(+A@@nzc})(b3{N&wV45{iP*4+Sm{!h#7puX7*ZLr(K?<(S zgPWBAz0Aumbqk}Cep9fw&U(do{&eKYyBe~-aYQoq_eI4VwaTevRLQFeyl%my$9tY-D@Jl%IA6ojGbVsk3IkWBYQ?x(3lLaAQg1 z!+?BbSXKg57&IdbiEB1y{NS2V!4u ztLZ&#t(%zD8XX+XI0sAL{__c&0=UsA=?|J5pCtu9untnNXGe>>-n}rU)NQWlj9xes zed&D6?K&0H_ulKo|}r!OxOLgd%SblVqFkys9)0{CodX|WAv^QH#L`1$BFQE~+}b+vD_guf?^rMvJeQy|>K;w~ znwS1poj5 diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png deleted file mode 100644 index 512acd5a8050effd294c97b6a353f36e6fc6365d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1429 zcmV;G1#0?1ogJ>w8-MsojCKv`hM?y`X(hc+UGh@AE$2cS-?(+&#gNyDG|X z%W%tZ%W%tZ%W!i9XD3ND$q$o>nWWBAnl%CExCwBNhd;4bWNESC_WT|H?E1Wep(G0w zx(FDEX4#LOC+ox_!wpKhlcge;wQegPN;(Ni+VY?MQ;P2&4NQ&7rAie%X)su(B(rq@MH9aqn;`!Eg`t5yC$V)eaVl0kDDfOan$Qr#21R{mq(MGE#kHcSuTxB z+lg@*rX>Tts7GK>&Q^ch^=G1VgbZ+egis>hs0M6KVMZ@;HK-0wYsDNB z97AVS2qq!Di>5jM2jFH23!E43+L_O=LAj`6lJNvi23Y5SvxbwWNMFS$l91uspMZo8 z%wk<{lkZ@uFRcAKktzaraa@HJzyZe5O&BlLfbJnV&yGwpi2)WJc_zCfLv59H;+K&F zV3SwKm=tP<2DNS`pF>zNV82(`?dJZKb$?WIY&eFA)j2y_ z+^;_3$roIT2s#_QFEv&QtX1Q0e6g;vm~|ets%!``kc3+b;c{Zd%aa=5`W)URJliO? zH;WJ5E9AlAFiYgqOlYVQUTLme6n2KZ+~n<#r2J8Ji4`P0zz7a7mS$gf92tlbm%grw zYin?I9C1Ik-{InH@!J;MKwIx~Jl`aqY7`ID zY|*&dy6jMO+Llr(Fl1z2?HY}D9;~3&nJzhhBR006X3kQPvf(%cQyHujmjV}^%~12O ztG(I%@E+k#?T4Lb!m1P<880 z_ExcJYKo8F??gY4AGc)l5q57-{_x5yHbjPNstJaP+#mwOWRwf*d&Or2B4%v`b9|q( zV@uS`8(fUDBeAcCqexR>4F-z6rRe5#n0SFd-6EcPK&-DR)SilN>IVY70r}iWED%RQ zvnq<0V)O0saLr!lvE5>8oj?j4bhE!_NEt8?QLw!v)x`Z4%5Y1qUDYfC+~P+0F<=>P j8EzSF8SeJRe*z2u+WB-I*7_6)00000NkvXXu0mjfIvlV1 diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29~ipad.png deleted file mode 100644 index 2b9da15c7f4602a388c2f98d75e0aed5cfb8367b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 725 zcmV;`0xJE9P)Lk=#O!+JF6MFPH{bp4cV~tI0O>$6(wW-h)=SxXDrLz;$>o&R4{>6B z3XArttW9ogI{(qIe0-ft05|gZ(!rr#bva$>->+!AB_A9Q5UOo9rTPHQ>1;yWefIPI zixkpZ;cgi4w~(GJRAR65XwH06+#CBfF>UUiyVWdCp1v!r=3GssevJx`#NOl{yv!O! z*;XDTkkp!|a0*qo31=kWV{aGBk0vt`n&xiXle2%v#3&g#qBHtm^D8QFKH?ue(>*b7 zjn7$4<*Z?$9h}j)1(%-~GfC0yVIJ9P80?wwD)PCMTD^k+X+=h`SyQghQ-}wX@xKeqz~t{`q&-mT2EVP#yH^ zS0jPpL&|Q}!qfyOJ^L3)X*!x{5|sZpAkaHyh84s^#zslyxE+k>jUckx~RZmuj{P5JRB@b^R+E9DQ^d!X-!23M-TBr8m zq1y-R`?Cu8RHJ;VQ4%>ke1X`@V#_8l96OHobc9XE0|QTA%-(w@#EmRLpn!=Ue7042 z??5*Uje~)qkSPY)b2=E3EOxX%3-<3>x;tYgljc|v z3VCEI+HO(lXe~)2rG9q%_!X^*voJWZtlLzYMI16&XW01oSkLFbh7HSUF-)Z|SrSDH zLkN8JM`YjG$aI+=Leb(`e5p;FM)P6t=M{6k(*;;HNJX({>#Ce-0c;V(bJY9K&+v@L z0)hj8Rh_)~On!M0JDE#76IRJ2ovbP6H?Qyw9&C$Pr>-kO*?Rp6Ur8RFRlvH9igM^3 z8~yNeL?x%2l_L$(nHIIP-y#fik>zg6kW5@2vv72{8TiCpT?Rg-ub?Bj+cEf6F}8>B1&22G~g=t9Vp z4FbuTqaTo;VF>E})vop!OJ=5#�-HtKg$KMhrVng-0Hgh-x2eNN)-`6@h6Acc`RS zC-i7_7mR=Wifr0W1_sEeK?3sVvK%s5NNRG%F4RhLo!l)GQH#(q4;)3l9Ay zISd#h+$tf-BpGx_U~z3iZ#o8;p>VfGx>P%}`5(kWSHJbcRmB;=;LNf~S|vh_VYUmA zd?dA8O-;5Z#~XyMmRcPesSU`?#%^P(1Je|0S5YdWYE(CgsMd*V%9I99h$?hb9xE+0 z8#1*Se_kRg>rzDio>b%K6R9#j1t; zOfi!L#AM*W7~hkB5V{2(dd(bu_?c_x2qz!3PYLb-RTo56D(2M^Aqv@Ob*cB2rNT>( z3+4VXd1cxc!(f9);iO+-7Vdpe-+e3vF-C@ZHAA5;4UHepR#Y|kfIET3!)VM^i;aj!r!`Gu9t(=j3nq-jUE&XgV83clkAT#U3>d;__`bBE} zV?1!au#hhjABslEBpz1I^8R%5UT}J8T-zo?;oZ6@_Yr{x``ifYUo=DlQ5|OIcSzp zd&$Qs3fUH}Z?wYT&sHKt^Pq})p}MS_Kh7cgu!P6@5}~nA`@SWXlhj=ZSZja=9%&mAoTGrEx)fpDy!Ef!*-q0Sqmw z+rPCd=em{ln5mfYZSpxRRhG-Gna!`5m7dUb25_>dhFlFs7MZxlnwkx}{{z4Uc7a`B p7uW@Mfn8u1*adchGiv_{FaRs=1#@9YCrSVS002ovPDHLkV1l|~X4?P& diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40~ipad.png deleted file mode 100644 index c70364b1b2bc83b1f84fa7a21fb2e968d39a77c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 979 zcmV;^11$WBP)3oD5*8+) z(_Y8@;qJIu${mZ03XC#Z#H1o6lHm8BdocR8P?V*e>Zbc zVmiEWseE+%qQJn#w#+$HYQo7qRfAdYLQm$vWxXq5%_n8f)}Yu@fRvSsr@GP)-x+$= z<1SBIu%n^2q~Ky%Wt5Z7_a>@6B+-b%xI&{}teEb$)QCa(7{kip(3b;0re!7+@*Rpi zWAV;6xxmCleQ5}!mKOg`g8D71&Y#;^f%2BT5&3^rZvahMjpcs350pj$+k*)A?8 ziEmE)oAbNj1mjfOgJof{J|e|O?WEz!0-c~{UFgq2(Y50!(*+b)Yn^m>LwMsd`FFu| ze0)QNbb4!bM5emIPj>4=c~25CY6wa-o&yJ_Y`0(=-!QAHq}`37gX^^|^@>2}l0cyF zL2%o0Em9~gYC>#Nt$HV(MKHoX=J|*-HlBmeL#x)63;P<>L+iskSE~_)&ZqQ=$gEHR zk-n5Yv6K&K2YZm3wBWN*khJR;VvAI^W3_s4owlbbv^*mGQO(u5M8UL&lRh0Z&PP*C zi{g zLM*{$PuSb6`7T_ki1Vx4X1^a_>&@Ki%Vccs=K?}16`@{{H`i#p)~FTAAJz2qmlyMa zocAhej+(qWB(zp5wVF_pbA>MaBd`Ge@4!C<7yz2(m+z!TIS2p%002ovPDHLkV1o7x B&Pf0O diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png deleted file mode 100644 index ed3c871055e8e42d8f08733d8516664fdbb5b8b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2491 zcmV;s2}JgZP)p8#qzW@1u-<%m^ z#u(xww?Q}p4vWL$usAFZi^JjwI4ll}!{V?wEDnn!;IKF>4vWL$u*!aj#d;%`=GmUc z7zyxECa^l=&R^RTw>4LoewbzfH!P4}Zi+?&q{Ly3Sl+MxJJgkQR3Xpk0A8(wmgdkO zH7^oyNyEB4Y~M(^m4yWb4v>q3=78=l4T+@;%kdb&esmNP6TW0&2u;Wx+c9BoO%=aC?Jp*ixk=15SQ%|xBMn)>F2^gAu-kW4Cq z1i-y|D*m%K2Rma9hc$Lwxo!XD!-Ogkl8Gcyz<}&*kFj_Ez@h)8XX_&RT!f`r^!M-I z(M&1|qh1dOiEdNK&0icD0wLqD{PDNb$&1&musnf01q7@H@Oy3A5B?rI*S%f0#^)tyIz81T9 z!z?dYB;y@kJsIyAbV51!1K_u0$5-lnYW- zz~Mkhri`qy7@i?xF;`&WtZWsyM2NUT#>d;z;PnSnUKy1;c@HoaZT;5qHjTr|tvw)M za3LJl)Wf3;T-erng~OV97&iNAb7W(!%wbJ2Ap0I$7JPAYw2WFb`K_m}$0Dlm%2NxW z*ygYvG$=!+!@j*Ox~6KT8qi|NgjLF7JJyDt-&Aq`>q8p-&kgfmJ!Vx{{KlrxBO#&O zVF4-AWlJK$E1z4Ct(KtR`LNeI(yqUIRc{|~Y?mSrz0s;2e0fPByh;HUppXRg)7^`z zBSL%3Id;`}>#}yC--cL&*P+r5$pRFNr#g-OE&BJjR+Kd?O4*i2)$TO?<-XXd9y6Bq zGK@&2a#!Yo6hxdDAP`(-4GWUWB6#0rO z(4wd-%}`Mj@b2=8QPw&zlq;+m@07v;d6~*Wz<63qe%7paYb@=tBHk*HwIGhiOc!|$ zd+G6TL?&|rmf`yIj0OZazJ%?8PAfSJ4}9azj9D)hsVpYVVYbH>D8iQIfp2aKf9vt^ zG&Eu60?P8(lhx|ySE)-w5*%k=+C9>pJ`*z)h_R{W4+@p`P`5#GF&M!~vRnrLWC3re z4m{ha?p~{GUOw$k{EWbY69{MTrH1I&*F`=_z1oQMM78p#OYs98$&f^*3<2;8mWK*i z0kOZK5NS3Q2(DWsK2@(gzh2$4A{fs1;(qaA!GY*5-CiAfu`x21nJ9OJHz7M@GdKzLz*)*3%TsdX8Z=N|GepR2BGAle&A2(!5M2#kL#8xZe;@aE2c+ zz)4Kl8_DkL?lD->&6O0K7|r&Z5UUqSJ69{uHL2TI1=Sh5C$Ugi5m|twyZ=^Jk>I%P z^`+dU;fde8JMNgSf9ZHk_6i6O+O*GjkXg@u#m-0)W$cl#@P&rpSJsD~Tp6s13TTE$ zp|EPhVmLrFhYI)A1dy0-b)_~{1;uf~6SwHm-n6fDqZwcq={D=q{hysIec($*CfzC( zVe5*(o^>jifVzbbZwEr5ziE*otc*w(Vx}r$_DO3^#OGt?A6nwy-4K=Ui<1${``!7G zo}?WbP0|?#!wWKrNWQh!28)mn`E08gggtC(4yQJ0r(zdfc7!+si zHfdb=gQy|1_MVLOr=0QAFg@m%IGN2FmPbL|0^ zxmJF5o%(cx^628(e?mc#9sJH^D)`K|yHb&H<_4olyXO7|GXY(_&id|94>3g`ja30K z++S`|H+)8t=icK(iUSJ>eQ#rB+VTE*U5^AvF3O9Ezq++_cvo)F`o+?&HOiiK%FcR4 zk>>6rR&Ws?o)1a%=gW!1-6`;j{!<1fa;LuG&KM=zVS1cY%Yhd*hIZ7=2}ydWu(IRy zE#tMTsrC^IkOc_#ugBoKE(wYl5bvOX8!F|dXmImVrLkH<^Jn0h__GWUVl6|~M>qA( zgfn7z4)uSBERe-PvbIv*R->$07??!|Ft=cRS_V=yVtTskUz-DawJ diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-50~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-50~ipad.png deleted file mode 100644 index 2f9c5bbed391c740a6e57ccbe7d343bb196f5846..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1224 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 diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-72~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-72~ipad.png deleted file mode 100644 index cc742f3c92166b9cd1d4a8a2051925571af9d6b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1729 zcmV;y20r#)JnAF+Lb0Dh&}rgQAj( zfg&IxEv2QUr4;(HZMVB^=X>T}&$RY~kCxq*mfdDYgZW@S*jR%k`+?f1b-qJ~6a1i=P&Eh~UbjG*tB~mj!%3Ab zO>z63Q<0eI@;IUSmdi?J2R>Pon;~#1ZLup+Gj6&eG0|1Z1U2{CxB8vMIpXj|-C_Wo zC37hR25U*sRwFmScYNSdi}~4!sA1Es%Q9biK9g{GCWuFOzx(m=?wj3KOmh$X(eqwe z=Z$VV?ZF_Fzo>|{#_Ws$C-68^;{Lv2>^|6W>~ep4gB`C@f2-*Ss$sDT2C!z)Pk)Z? zJJ#LV=cXT+B;fX#bKq1@fZ)6L10E{@{A*4BTL(MNH0bFB24Z8{Z2!rgxatb`Qy#bk zW{mVX9~|l2|9g*W(KG-9MHB`6p-0Mga5otP4zcvDLbG+e#-e zuvM>vnlwi6c$p+@1Ba`%v;hMa@UI4yLAEiz!h_MuuWG8r(gO^~Q`qyZTCUerQ2b(%=?3wt{oE2~yh9Sp(-+^W9c>)9rlW+(#pTfNcI@1`~wLX9d@ zU6y#SQs7Zb%sz2VPhBu@!VVL)8RIG87&n11HoeYS1W7KGTI=`*gE;txE)idh-|KMIuA%vV0F>}rbJB7eUm!$vK7qPrG28hpPwP`|uTB<)xl+_FeskUcep zChQ?-NTK1z0Up0mnw2r?0cTj|Un|M_sIrrd%<~R7w%*gF8G-b*sjI8F%8rdbSQTr`Vp zDwe@Ss|%zFKf6v2jPN5C^ZN2GwJEyG>%f03%J3ccz-=bIZ<2urdZQo-Ks9$DgkD~% ztXn9DmC4F=a$xg<1VnGpWQ4;J-96K)ZO9Lfo>S4HsWw#zH@I+)qCSgVSJ~(!!;?q& z7uW+&*(H8`QDA#%aPuO$Am^d=V3PZy!Vt-o`H1ceYC6IAtLnH+xYc|R1de{Re`}6d#tK;9*#xsWm!|~(* zFUk?a64$P}4RH&YhjmXNsIigNwNt`-O+wwGm_vnOVRNyk+AH$|5}B%B4I~W~HQe15 zkuKc{@FTJZMsNpgB978>LQp)8&ephKAD2N0k#!3tu+N4kY`RlpJO;QC~)~9VR2Z5{NvGg_57E1d@vu(2lK&vFdxhZ^T8%N{u5vT XJW$of^TOv^00000NkvXXu0mjf;vzB- diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png deleted file mode 100644 index a46f09b6956b5e1fed32e54d2277da146049012c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3303 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 M07*qoM6N<$f=K@}NdN!< diff --git a/DZNEmptyDataSet/Colors/CollectionViewController.m b/DZNEmptyDataSet/Colors/CollectionViewController.m index e85b1283..2971dda3 100644 --- a/DZNEmptyDataSet/Colors/CollectionViewController.m +++ b/DZNEmptyDataSet/Colors/CollectionViewController.m @@ -7,12 +7,11 @@ // #import "CollectionViewController.h" -#import "SearchViewController.h" +#import "DetailViewController.h" #import "Palette.h" #import "Color.h" @import DZNEmptyDataSet; -@import EmptyDataSet; #define kColumnCountMax 7 #define kColumnCountMin 5 @@ -118,7 +117,7 @@ - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([[segue identifier] isEqualToString:@"collection_push_detail"]) { - SearchViewController *controller = [segue destinationViewController]; + DetailViewController *controller = [segue destinationViewController]; controller.selectedColor = sender; } } @@ -272,29 +271,4 @@ - (void)collectionView:(UICollectionView *)collectionView performAction:(SEL)act }); } - -#pragma mark - View Auto-Rotation - -- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration -{ - if (![UIInputViewController class]) { - [self.collectionView reloadData]; - } -} - -- (void)willTransitionToTraitCollection:(UITraitCollection *)newCollection withTransitionCoordinator:(id)coordinator -{ - [self.collectionView reloadData]; -} - -- (UIInterfaceOrientationMask)supportedInterfaceOrientations -{ - return UIInterfaceOrientationMaskAll; -} - -- (BOOL)shouldAutorotate -{ - return YES; -} - @end diff --git a/DZNEmptyDataSet/Colors/SearchViewController.h b/DZNEmptyDataSet/Colors/DetailViewController.h similarity index 86% rename from DZNEmptyDataSet/Colors/SearchViewController.h rename to DZNEmptyDataSet/Colors/DetailViewController.h index f49e11a5..1c11aba9 100644 --- a/DZNEmptyDataSet/Colors/SearchViewController.h +++ b/DZNEmptyDataSet/Colors/DetailViewController.h @@ -1,5 +1,5 @@ // -// SearchViewController.h +// DetailViewController.h // Colors // // Created by Ignacio Romero Z. on 7/4/14. @@ -10,7 +10,7 @@ @class Color; -@interface SearchViewController : UIViewController +@interface DetailViewController : UIViewController @property (nonatomic, strong) Color *selectedColor; diff --git a/DZNEmptyDataSet/Colors/DetailViewController.m b/DZNEmptyDataSet/Colors/DetailViewController.m new file mode 100644 index 00000000..b1746733 --- /dev/null +++ b/DZNEmptyDataSet/Colors/DetailViewController.m @@ -0,0 +1,89 @@ +// +// DetailViewController.m +// Colors +// +// Created by Ignacio Romero Z. on 7/4/14. +// Copyright (c) 2014 DZN Labs. All rights reserved. +// + +#import "DetailViewController.h" +#import "Palette.h" +#import "Color.h" + +@interface DetailViewController () +@end + +@implementation DetailViewController + +#pragma mark - View lifecycle + +- (void)awakeFromNib +{ + [super awakeFromNib]; +} + +- (void)loadView +{ + [super loadView]; + + self.title = @"Detail"; + + for (UIView *subview in self.view.subviews) { + subview.autoresizingMask = UIViewAutoresizingNone; + } +} + +- (void)viewDidLoad +{ + [super viewDidLoad]; + + [self updateLayoutAnimatedWithDuration:0.0]; +} + +- (void)viewWillAppear:(BOOL)animated +{ + [super viewWillAppear:animated]; + + [self updateContent]; +} + + +#pragma mark - Actions + +- (void)updateLayoutAnimatedWithDuration:(NSTimeInterval)duration +{ + [UIView beginAnimations:@"" context:nil]; + [UIView setAnimationDuration:duration]; + [UIView setAnimationBeginsFromCurrentState:YES]; + + self.colorView.frame = CGRectMake(60.0, 130.0, 200.0, 200.0); + self.nameLabel.frame = CGRectMake(20.0, 350.0, 280.0, 35.0); + self.hexLabel.frame = CGRectMake(120.0, 420.0, 140.0, 20.0); + self.rgbLabel.frame = CGRectMake(120.0, 450.0, 140.0, 20.0); + self.hexLegend.frame = CGRectMake(60.0, 420.0, 60.0, 20.0); + self.rgbLegend.frame = CGRectMake(60.0, 450.0, 60.0, 20.0); + + self.nameLabel.textAlignment = NSTextAlignmentCenter; + + [UIView commitAnimations]; +} + +- (void)updateContent +{ + BOOL hide = self.selectedColor ? NO : YES; + + self.colorView.hidden = hide; + self.nameLabel.hidden = hide; + self.hexLabel.hidden = hide; + self.rgbLabel.hidden = hide; + self.hexLegend.hidden = hide; + self.rgbLegend.hidden = hide; + + self.colorView.image = [Color roundImageForSize:self.colorView.frame.size withColor:self.selectedColor.color]; + + self.nameLabel.text = self.selectedColor.name; + self.hexLabel.text = [NSString stringWithFormat:@"#%@", self.selectedColor.hex]; + self.rgbLabel.text = self.selectedColor.rgb; +} + +@end diff --git a/DZNEmptyDataSet/Colors/Info.plist b/DZNEmptyDataSet/Colors/Info.plist index 95aa2a6a..6c2bd692 100644 --- a/DZNEmptyDataSet/Colors/Info.plist +++ b/DZNEmptyDataSet/Colors/Info.plist @@ -31,8 +31,6 @@ UISupportedInterfaceOrientations UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight diff --git a/DZNEmptyDataSet/Colors/SearchViewController.m b/DZNEmptyDataSet/Colors/SearchViewController.m deleted file mode 100644 index 6fb4ff7c..00000000 --- a/DZNEmptyDataSet/Colors/SearchViewController.m +++ /dev/null @@ -1,330 +0,0 @@ -// -// SearchViewController.m -// Colors -// -// Created by Ignacio Romero Z. on 7/4/14. -// Copyright (c) 2014 DZN Labs. All rights reserved. -// - -#import "SearchViewController.h" -#import "Palette.h" -#import "Color.h" - -@import DZNEmptyDataSet; -@import EmptyDataSet; - -@interface SearchViewController () -@property (nonatomic, strong) NSArray *searchResult; -@property (nonatomic, getter = isShowingLandscape) BOOL showingLandscape; -@end - -@implementation SearchViewController - -#pragma mark - View lifecycle - -- (void)awakeFromNib -{ - [super awakeFromNib]; - - self.title = @"Search"; - self.tabBarItem = [[UITabBarItem alloc] initWithTitle:self.title image:[UIImage imageNamed:@"tab_search"] tag:self.title.hash]; -} - -- (void)loadView -{ - [super loadView]; - - if ([self.navigationController.viewControllers count] == 1) { - self.searchDisplayController.displaysSearchBarInNavigationBar = YES; - } - else { - self.title = @"Detail"; - } - - self.searchDisplayController.searchResultsTableView.emptyDataSetSource = self; - self.searchDisplayController.searchResultsTableView.emptyDataSetDelegate = self; - - self.searchDisplayController.searchBar.placeholder = @"Search color"; - self.searchDisplayController.searchResultsTableView.tableFooterView = [UIView new]; - [self.searchDisplayController setValue:@"" forKey:@"_noResultsMessage"]; - - for (UIView *subview in self.view.subviews) { - subview.autoresizingMask = UIViewAutoresizingNone; - } -} - -- (void)viewDidLoad -{ - [super viewDidLoad]; - - self.showingLandscape = UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation); - [self updateLayoutAnimatedWithDuration:0.0]; -} - -- (void)viewWillAppear:(BOOL)animated -{ - [super viewWillAppear:animated]; - - [self updateContent]; -} - - -#pragma mark - Getters - -- (NSArray *)searchResult -{ - if (_searchResult) { - return _searchResult; - } - - NSString *searchString = self.searchDisplayController.searchBar.text; - - if (searchString.length == 0) { - return nil; - } - - NSArray *colors = [[Palette sharedPalette] colors]; - NSPredicate *precidate = [NSPredicate predicateWithFormat:@"name CONTAINS[cd] %@ || hex CONTAINS[cd] %@", searchString, searchString]; - - _searchResult = [colors filteredArrayUsingPredicate:precidate]; - - return _searchResult; -} - - -#pragma mark - Actions - -- (void)updateLayoutAnimatedWithDuration:(NSTimeInterval)duration -{ - [UIView beginAnimations:@"" context:nil]; - [UIView setAnimationDuration:duration]; - [UIView setAnimationBeginsFromCurrentState:YES]; - - if (self.showingLandscape) { - self.colorView.frame = CGRectMake(45.0, 88.0, 160.0, 160.0); - self.nameLabel.frame = CGRectMake(240.0, 114.0, 280.0, 35.0); - self.hexLabel.frame = CGRectMake(300.0, 170.0, 140.0, 20.0); - self.rgbLabel.frame = CGRectMake(300.0, 200.0, 140.0, 20.0); - self.hexLegend.frame = CGRectMake(240.0, 170.0, 60.0, 20.0); - self.rgbLegend.frame = CGRectMake(240.0, 200.0, 60.0, 20.0); - - self.nameLabel.textAlignment = NSTextAlignmentLeft; - } - else { - self.colorView.frame = CGRectMake(60.0, 130.0, 200.0, 200.0); - self.nameLabel.frame = CGRectMake(20.0, 350.0, 280.0, 35.0); - self.hexLabel.frame = CGRectMake(120.0, 420.0, 140.0, 20.0); - self.rgbLabel.frame = CGRectMake(120.0, 450.0, 140.0, 20.0); - self.hexLegend.frame = CGRectMake(60.0, 420.0, 60.0, 20.0); - self.rgbLegend.frame = CGRectMake(60.0, 450.0, 60.0, 20.0); - - self.nameLabel.textAlignment = NSTextAlignmentCenter; - } - - [UIView commitAnimations]; -} - -- (void)updateContent -{ - BOOL hide = self.selectedColor ? NO : YES; - - self.colorView.hidden = hide; - self.nameLabel.hidden = hide; - self.hexLabel.hidden = hide; - self.rgbLabel.hidden = hide; - self.hexLegend.hidden = hide; - self.rgbLegend.hidden = hide; - - self.colorView.image = [Color roundImageForSize:self.colorView.frame.size withColor:self.selectedColor.color]; - - self.nameLabel.text = self.selectedColor.name; - self.hexLabel.text = [NSString stringWithFormat:@"#%@", self.selectedColor.hex]; - self.rgbLabel.text = self.selectedColor.rgb; -} - -- (void)adjustToDeviceOrientation -{ - self.showingLandscape = UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation); - [self updateLayoutAnimatedWithDuration:0.25]; - - [self.searchDisplayController.searchResultsTableView reloadEmptyDataSet]; -} - - -#pragma mark - DZNEmptyDataSetSource Methods - -- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView -{ - NSString *text = @"No colors Found"; - - NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new]; - paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping; - paragraphStyle.alignment = NSTextAlignmentCenter; - - NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:17.0], - NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0], - NSParagraphStyleAttributeName: paragraphStyle}; - - return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes]; -} - -- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView -{ - NSString *text = @"Make sure that all words are\nspelled correctly."; - - NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new]; - paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping; - paragraphStyle.alignment = NSTextAlignmentCenter; - - NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:15.0], - NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0], - NSParagraphStyleAttributeName: paragraphStyle}; - - return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes]; -} - -- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state -{ - NSString *text = @"Add a New Color"; - UIColor *color = nil; - - if (state == UIControlStateNormal) color = [UIColor colorWithRed:44/255.0 green:137/255.0 blue:202/255.0 alpha:1.0]; - if (state == UIControlStateHighlighted) color = [UIColor colorWithRed:106/255.0 green:187/255.0 blue:227/255.0 alpha:1.0]; - - NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new]; - paragraphStyle.alignment = NSTextAlignmentCenter; - - NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:14.0], - NSForegroundColorAttributeName: color, - NSParagraphStyleAttributeName: paragraphStyle}; - - return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes]; -} - -- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView -{ - if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) { - return nil; - } - return [UIImage imageNamed:@"search_icon"]; -} - -- (UIColor *)imageTintColorForEmptyDataSet:(UIScrollView *)scrollView -{ - return [UIColor grayColor]; -} - -- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView -{ - return [UIColor whiteColor]; -} - -- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView -{ - return nil; -} - - -#pragma mark - DZNEmptyDataSetSource Methods - -- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView -{ - return YES; -} - -- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView -{ - return NO; -} - -- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view -{ - - [self.searchDisplayController setActive:NO animated:YES]; -} - -- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button -{ - NSLog(@"%s",__FUNCTION__); -} - - -#pragma mark - UITableViewDataSource Methods - -- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView -{ - return 1; -} - -- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section -{ - return self.searchResult.count; -} - -- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath -{ - static NSString *CellIdentifier = @"Cell"; - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; - - if (!cell) { - cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier]; - cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; - cell.selectionStyle = UITableViewCellSelectionStyleDefault; - cell.selectedBackgroundView = [UIView new]; - cell.selectedBackgroundView.backgroundColor = [UIColor colorWithWhite:0.95 alpha:1.0]; - cell.textLabel.textColor = [UIColor colorWithWhite:0.125 alpha:1.0]; - cell.detailTextLabel.textColor = [UIColor colorWithWhite:0.5 alpha:1.0]; - } - - Color *color = self.searchResult[indexPath.row]; - - cell.textLabel.text = color.name; - cell.detailTextLabel.text = [NSString stringWithFormat:@"#%@", color.hex]; - - cell.imageView.image = [Color roundThumbWithColor:color.color]; - - return cell; -} - -- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath -{ - return 56.0; -} - - -#pragma mark - UITableViewDelegate Methods - -- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath -{ - self.selectedColor = self.searchResult[indexPath.row]; - [self updateContent]; - - [self.searchDisplayController setActive:NO animated:YES]; -} - - -#pragma mark - View Auto-Rotation - -- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration -{ - if (![self respondsToSelector:@selector(willTransitionToTraitCollection:withTransitionCoordinator:)]) { - [self adjustToDeviceOrientation]; - } -} - -- (void)willTransitionToTraitCollection:(UITraitCollection *)newCollection withTransitionCoordinator:(id)coordinator -{ - [self adjustToDeviceOrientation]; -} - -- (UIInterfaceOrientationMask)supportedInterfaceOrientations -{ - return UIInterfaceOrientationMaskAll; -} - -- (BOOL)shouldAutorotate -{ - return YES; -} - -@end diff --git a/DZNEmptyDataSet/Colors/Storyboard.storyboard b/DZNEmptyDataSet/Colors/Storyboard.storyboard index 377da234..7811b329 100755 --- a/DZNEmptyDataSet/Colors/Storyboard.storyboard +++ b/DZNEmptyDataSet/Colors/Storyboard.storyboard @@ -1,11 +1,9 @@ - - - - + + - + @@ -22,12 +20,11 @@ - - + @@ -67,7 +64,7 @@ - + @@ -102,49 +99,53 @@ - + - + - + + + + + - + - - - - - - - - - - - - - - - - - - - + @@ -193,7 +176,7 @@ - + @@ -203,7 +186,7 @@ - + @@ -212,7 +195,7 @@ - + @@ -222,33 +205,9 @@ - - - - - - - - - - - - - - - - - - - - + - - - - - diff --git a/DZNEmptyDataSet/Colors/TableViewController.m b/DZNEmptyDataSet/Colors/TableViewController.m index 5ef9386a..e7bbdf26 100644 --- a/DZNEmptyDataSet/Colors/TableViewController.m +++ b/DZNEmptyDataSet/Colors/TableViewController.m @@ -7,12 +7,11 @@ // #import "TableViewController.h" -#import "SearchViewController.h" +#import "DetailViewController.h" #import "Palette.h" #import "Color.h" @import DZNEmptyDataSet; -@import EmptyDataSet; @interface TableViewController () @end @@ -63,7 +62,7 @@ - (IBAction)removeColors:(id)sender - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([[segue identifier] isEqualToString:@"table_push_detail"]) { - SearchViewController *controller = [segue destinationViewController]; + DetailViewController *controller = [segue destinationViewController]; controller.selectedColor = sender; } } diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index e3d18f7b..18bfe462 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -17,7 +17,6 @@ 4FA1AAF223BC28F3007CF389 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAF123BC28F3007CF389 /* Assets.xcassets */; }; 4FA1AAF523BC28F3007CF389 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 4FA1AAF323BC28F3007CF389 /* LaunchScreen.storyboard */; }; 4FA1AB0323BC296B007CF389 /* DZNEmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB0123BC296B007CF389 /* DZNEmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4FA1AB0723BC296B007CF389 /* EmptyDataSet.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 4FA1AB0C23BC2991007CF389 /* EmptyDataSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */; }; 4FA1AB0D23BC29D2007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; 4FA1AB0F23BC2BC9007CF389 /* EmptyDataSetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */; }; @@ -25,6 +24,7 @@ 4FA1AB1423BD3645007CF389 /* EmptyDataSetSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */; }; 4FA1AB1623BD3679007CF389 /* EmptyDataSetDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */; }; 4FA1AB1823BD67B3007CF389 /* DisplayEmptyDataSetTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */; }; + 4FA1AB1B23BDF332007CF389 /* DetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1923BDF331007CF389 /* DetailViewController.m */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -58,7 +58,6 @@ F5BE154C1E713E9300F6FBEA /* colors.json in Resources */ = {isa = PBXBuildFile; fileRef = F5BE15411E713E9300F6FBEA /* colors.json */; }; F5BE154D1E713E9300F6FBEA /* Palette.m in Sources */ = {isa = PBXBuildFile; fileRef = F5BE15431E713E9300F6FBEA /* Palette.m */; }; F5BE154E1E713E9300F6FBEA /* UIColor+Hex.m in Sources */ = {isa = PBXBuildFile; fileRef = F5BE15451E713E9300F6FBEA /* UIColor+Hex.m */; }; - F5BE154F1E713E9300F6FBEA /* SearchViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F5BE15471E713E9300F6FBEA /* SearchViewController.m */; }; F5BE15501E713E9300F6FBEA /* TableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F5BE15491E713E9300F6FBEA /* TableViewController.m */; }; F5BE15521E713E9B00F6FBEA /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F5BE15511E713E9B00F6FBEA /* Images.xcassets */; }; F5BE15561E713EC800F6FBEA /* Storyboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F5BE15551E713EC800F6FBEA /* Storyboard.storyboard */; }; @@ -66,13 +65,6 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 4FA1AB0423BC296B007CF389 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = F58A3E291E66AEE90086E0EF /* Project object */; - proxyType = 1; - remoteGlobalIDString = 4FA1AAFE23BC296B007CF389; - remoteInfo = EmptyDataSet; - }; F58A3E3D1E66AEE90086E0EF /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = F58A3E291E66AEE90086E0EF /* Project object */; @@ -89,20 +81,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 4FA1AB0B23BC296B007CF389 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 4FA1AB0723BC296B007CF389 /* EmptyDataSet.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig"; sourceTree = ""; }; 1C26D4C95382E14DAC506EE2 /* Pods-EmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; @@ -126,6 +104,8 @@ 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetSource.swift; sourceTree = ""; }; 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyDataSetDelegate.swift; sourceTree = ""; }; 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DisplayEmptyDataSetTests.swift; sourceTree = ""; }; + 4FA1AB1923BDF331007CF389 /* DetailViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DetailViewController.m; sourceTree = ""; }; + 4FA1AB1A23BDF332007CF389 /* DetailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DetailViewController.h; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.release.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig"; sourceTree = ""; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; @@ -178,8 +158,6 @@ F5BE15431E713E9300F6FBEA /* Palette.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Palette.m; sourceTree = ""; }; F5BE15441E713E9300F6FBEA /* UIColor+Hex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIColor+Hex.h"; sourceTree = ""; }; F5BE15451E713E9300F6FBEA /* UIColor+Hex.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIColor+Hex.m"; sourceTree = ""; }; - F5BE15461E713E9300F6FBEA /* SearchViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchViewController.h; sourceTree = ""; }; - F5BE15471E713E9300F6FBEA /* SearchViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SearchViewController.m; sourceTree = ""; }; F5BE15481E713E9300F6FBEA /* TableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewController.h; sourceTree = ""; }; F5BE15491E713E9300F6FBEA /* TableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TableViewController.m; sourceTree = ""; }; F5BE15511E713E9B00F6FBEA /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; @@ -417,10 +395,10 @@ F5BE152B1E713E2100F6FBEA /* AppDelegate.m */, F5BE153C1E713E9300F6FBEA /* CollectionViewController.h */, F5BE153D1E713E9300F6FBEA /* CollectionViewController.m */, - F5BE15461E713E9300F6FBEA /* SearchViewController.h */, - F5BE15471E713E9300F6FBEA /* SearchViewController.m */, F5BE15481E713E9300F6FBEA /* TableViewController.h */, F5BE15491E713E9300F6FBEA /* TableViewController.m */, + 4FA1AB1A23BDF332007CF389 /* DetailViewController.h */, + 4FA1AB1923BDF331007CF389 /* DetailViewController.m */, F5BE153E1E713E9300F6FBEA /* DataSource */, F5BE15551E713EC800F6FBEA /* Storyboard.storyboard */, F5BE15511E713E9B00F6FBEA /* Images.xcassets */, @@ -563,12 +541,10 @@ F58A3E5F1E66B5410086E0EF /* Sources */, F58A3E601E66B5410086E0EF /* Frameworks */, F58A3E611E66B5410086E0EF /* Resources */, - 4FA1AB0B23BC296B007CF389 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( - 4FA1AB0523BC296B007CF389 /* PBXTargetDependency */, ); name = Applications; productName = Applications; @@ -887,7 +863,7 @@ F5BE15501E713E9300F6FBEA /* TableViewController.m in Sources */, F5BE154E1E713E9300F6FBEA /* UIColor+Hex.m in Sources */, F5BE152C1E713E2100F6FBEA /* AppDelegate.m in Sources */, - F5BE154F1E713E9300F6FBEA /* SearchViewController.m in Sources */, + 4FA1AB1B23BDF332007CF389 /* DetailViewController.m in Sources */, F5BE15291E713E2100F6FBEA /* main.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -895,11 +871,6 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 4FA1AB0523BC296B007CF389 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 4FA1AAFE23BC296B007CF389 /* EmptyDataSet */; - targetProxy = 4FA1AB0423BC296B007CF389 /* PBXContainerItemProxy */; - }; F58A3E3E1E66AEE90086E0EF /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = F58A3E311E66AEE90086E0EF /* DZNEmptyDataSet */; @@ -968,7 +939,7 @@ CODE_SIGN_STYLE = Automatic; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "Sample - Bento/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -993,7 +964,7 @@ CODE_SIGN_STYLE = Automatic; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "Sample - Bento/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Bento; @@ -1260,7 +1231,6 @@ F58A3E771E66B5410086E0EF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = ""; DEVELOPMENT_TEAM = ""; @@ -1269,13 +1239,13 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Applications; PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; F58A3E781E66B5410086E0EF /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = ""; DEVELOPMENT_TEAM = ""; @@ -1284,6 +1254,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Applications; PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; @@ -1296,6 +1267,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Colors; PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; @@ -1308,6 +1280,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Colors; PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json index d8db8d65..bb97d4d0 100644 --- a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,93 +1,57 @@ { "images" : [ { - "idiom" : "iphone", "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", "scale" : "2x" }, { - "idiom" : "iphone", "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", "scale" : "3x" }, { - "idiom" : "iphone", "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", "scale" : "2x" }, { - "idiom" : "iphone", "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", "scale" : "3x" }, { - "idiom" : "iphone", "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", "scale" : "2x" }, { - "idiom" : "iphone", "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", "scale" : "3x" }, { - "idiom" : "iphone", "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", "scale" : "2x" }, { - "idiom" : "iphone", "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", "scale" : "3x" }, { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024.png", "scale" : "1x" } ], diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png new file mode 100644 index 0000000000000000000000000000000000000000..2f8b551191e2baa5e9ce1bd8109afb6d1020ac22 GIT binary patch literal 713459 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%0D{WZoDzY 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ν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

EY!@2)I*$X_hkQ{q2 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 z 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

    -u3aVzv9!Dqf{^2 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 literal 0 HcmV?d00001 diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..ce04d00c7afe13ca6b043ce5499839cc6bfc7cd1 GIT binary patch literal 6960 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 IM6N<$f)u}l#sB~S literal 0 HcmV?d00001 diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..c422c18489cb26072ca1cec96221ce9a6513c6ff GIT binary patch literal 20920 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 literal 0 HcmV?d00001 diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..6f4d096505bddb530753b40b1528a3b8fd744e3a GIT binary patch literal 20856 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 literal 0 HcmV?d00001 From 2a9d2a4b0bd3dc59432d5b2a3f7fe85c79d90f10 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Thu, 2 Jan 2020 09:05:42 -0800 Subject: [PATCH 16/25] renaming --- DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift | 5 ++--- DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift index 31cb0621..c644a478 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift @@ -26,11 +26,10 @@ internal extension UIScrollView { view.imageView.image = source.image(forEmptyDataSet: self) view.backgroundColor = source.backgroundColor(forEmptyDataSet: self) - var spacing = [EmptyDataSetElement: CGFloat]() + view.verticalSpacing = [EmptyDataSetElement: CGFloat]() EmptyDataSetElement.allCases.forEach { - spacing[$0] = source.spacing(forEmptyDataSet: self, after: $0) + view.verticalSpacing?[$0] = source.spacing(forEmptyDataSet: self, after: $0) } - view.spacing = spacing } if let delegate = emptyDataSetDelegate { diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift index 1da9c321..7526dc96 100644 --- a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift +++ b/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift @@ -14,7 +14,7 @@ internal class EmptyDataSetView: UIView { // MARK: - Internal var fadeInOnDisplay = false - var spacing: [EmptyDataSetElement: CGFloat]? + var verticalSpacing: [EmptyDataSetElement: CGFloat]? lazy var contentView: UIView = { let view = UIView() @@ -117,7 +117,7 @@ internal class EmptyDataSetView: UIView { stackView.alignment = .center stackView.spacing = EmptyDataSetDefaultSpacing - if let spacing = spacing { + if let spacing = verticalSpacing { if let space = spacing[.image] { stackView.setCustomSpacing(space, after: imageView) } if let space = spacing[.title] { stackView.setCustomSpacing(space, after: titleLabel) } if let space = spacing[.description] { stackView.setCustomSpacing(space, after: descriptionLabel) } From 24a153166eee3aed2e012731b799dc243a846d80 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Thu, 2 Jan 2020 11:00:29 -0800 Subject: [PATCH 17/25] Fixing tests, again --- .../AppIcon.appiconset/Contents.json | 78 +----------------- .../AppIcon.appiconset/icon-1024.png | Bin 0 -> 121020 bytes .../AppIcon.appiconset/icon-29@2x~ipad.png | Bin 1769 -> 0 bytes .../AppIcon.appiconset/icon-29~ipad.png | Bin 2064 -> 0 bytes .../AppIcon.appiconset/icon-40@2x~ipad.png | Bin 2454 -> 0 bytes .../AppIcon.appiconset/icon-40~ipad.png | Bin 2452 -> 0 bytes .../AppIcon.appiconset/icon-50@2x~ipad.png | Bin 3220 -> 0 bytes .../AppIcon.appiconset/icon-50~ipad.png | Bin 1544 -> 0 bytes .../AppIcon.appiconset/icon-72@2x~ipad.png | Bin 5226 -> 0 bytes .../AppIcon.appiconset/icon-72~ipad.png | Bin 2221 -> 0 bytes .../AppIcon.appiconset/icon-76@2x~ipad.png | Bin 4846 -> 0 bytes .../AppIcon.appiconset/icon-76~ipad.png | Bin 2353 -> 0 bytes .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 2 + 13 files changed, 4 insertions(+), 76 deletions(-) create mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-50~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-72~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png delete mode 100644 DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-76~ipad.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json index 72cba767..8f0d12f2 100644 --- a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -65,83 +65,9 @@ "scale" : "3x" }, { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "icon-29~ipad.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "icon-29@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "icon-40~ipad.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "icon-40@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "50x50", - "idiom" : "ipad", - "filename" : "icon-50~ipad.png", - "scale" : "1x" - }, - { - "size" : "50x50", - "idiom" : "ipad", - "filename" : "icon-50@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "72x72", - "idiom" : "ipad", - "filename" : "icon-72~ipad.png", - "scale" : "1x" - }, - { - "size" : "72x72", - "idiom" : "ipad", - "filename" : "icon-72@2x~ipad.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "icon-76~ipad.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "icon-76@2x~ipad.png", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "icon-1024.png", "scale" : "1x" } ], diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png new file mode 100644 index 0000000000000000000000000000000000000000..a61f4698cc5c98033d96935241c4fd52676ff06d GIT binary patch literal 121020 zcmeFYcTkhxyD$2NfPhj(np8nW=}50ZsVagZz4s15dQY$*N*5KRD=JEnCLlEw0coL0 z@6vlGKuB_4gzxX}b7${!_uTo-oIlQCU=m>ES!+G@^OX0+eN8pWvlq_-06=+LU0E9d zh{3nS02vYZvVo}j4Ze`Os~dU(z&X0(9|(|?!UOR1Oj zTT9z;!4x><{A54^uC`v5oPMq@Zk{rJ@?3xE%7E{W|18AC`FDwzvpm<$;|)0t?%n59 zf_vCb4p4Jib#lxNlWu{-Vhd%5)zgY5)l;;k&qD+mbr0*^Yn`g+|9$r zPDWc<^>i=rH+e1xFE4i)At7I1UqN3{LAZy#kchOjw2<%(p&K^@z!d_X{%&5DegbZu z-2YHew)M33aCG-_gu8JbQ?#^#dwa=qfhRq=f~)(#$hvu+vI%6Eke{Wykcgo0@s<8A zw6XrzI(Kgmm%p3aSPR*@*t*)fd3l0sMgFzc-2v_e_jG{&7o`97@Be87khS;j{cDf^ z^enEf|JuUSOT`Dg#wkPo)773j{_eIy+P0o>Zx3r*6(8`J+{d?Zmr?Stwe*5}=)mDF z{|M^-KS$)K;(visE7_Iy5nz20bwZ_ zVd0ad_uw{;cK-h?y&)_hEFvI$Lq|kdMqFA(OyYl93hIrGrI+RZ=VBXc89TU#t0j1A zM^{UGTOoHhdoIp@@lr+!?gIA!HwI59`XB#(TS@7@2i(rl1^kDnw%RSu+bT*DBGM8P z0yhLj{vP+++KPa$|9oBO%*swoQp!@m&eqOOKulc1 zPQX&^h9qcQ64ugEmbOxo5?05$|5u%4)EzxRLHnOt(?i=wr|(=GIsa;qjHUIlWyo_` zAFG6|4cFS?O^Fz{J9$M8xRPeN7T`a@IQu}^P}w0S?JSlh)Ci(nn*SFm;Mqa6@oBA|r~SvcOz zaRz!B^1NKsN=SBor2|V?mk&Sw`bGU@@%-O+*MPq-;Y7%P*RTJVBFM>qBNP68lKDr- z|Cb^tp?@C}{*AIeCG~$M#eYQd?~}~`CW^m4y*c)-CXRBm_7lHQyL7>A>E5PZw6r7u zE$zX0HXN8vGtlHG40%E}i2W#ySyGog0XA;bAHsQ0yqwRxRJA+8SqCl^=3 zmznt&#I>So&w62fFZ^o#DKdycPZT%^-bh#^pdUKzPjg^;LwK}s51(Rt)*lel&^`cY zXyf$FmtpfwHPa(^JqS%P@maXiCLaU>{ZRY->4Jm@JH-!-vD!nc6N!+cTOvsN{d+Tu z2qaI>;}a+L>p--2arWRkeKoX&5e9b~*qkQ?2u)g@htvFb5rV-p{95-;&+qaHmd*hL z6;e%_^&PIMQ~7>edg4vIK}V0Ueq&KsZSRjD9Obaw>>)ef7vpnh7Y1W(pVhj;#dQ|o z;@WckL~!JgDW3{4!&Npww8Eoj(&ld0h92Zwv6C)z0QaAh!ik@$O3-zye$bf|`dE+afOpfJJo|p}b;by~5TIEn{m6k77!~J;KglO1N7JrhxvK{13|`|(%{HV>@7vM zmankfm6qS{u^$DHMs}qCeF!;)J z)Kyp;q&C?X*JcewqQ?+ddgqHG)CVR9MtgRR}@?v5en%n4Oghg-y0%2*Wz)Wx=4l&S4-T-V8p_6YgSE>Bnu-ye@-cBE?U-i#Ycab0T~ES9)2zQ9{K&v6Z_nPemh7<8Gn}k z>Kl@bsJX;*RT-1Gw5JdOd+6Fv9VVy5r^I8Q-%-LYfgQc*Ufo$Ds3*JPJLp`PoS9nu zMufUusl*q-5G>Wu{Syn#Zk=J9n_OX|psVZ+Z zcCIRK>QER6Fj*{^u*z!G4ATqa7Z!b+HwkMC6F5c(`iGWGEB?*7t5w7h3JJ9zsqG7pBNliDRV(nkx?Z_i)^w8t2ltT-=;A zfvbuJ7HRKC>N6Vps0P5BZ_Fi)nay|Tni)^2rstSa4PV0$zI&Du-B4n1P%d|Frn9Q& zx6*c(nw}cOsMdJS_)7TMbK@3oA2wJAZHdVbZ#IbBmpcEd_!>&IKSoDD`7)G^IOQVU z)xUbb1-%Dky{;d>b~rZWC=FaTAKlkV>p2=nj1^1_x)n}LIWe+8#|;XNm#eDXB=yV1 zC+)y9zfr0zZ#MA z#AJu~$U^aiDvvc8S=jwu{PWH4mG}uJC_g9l%G^Rpc~70wfMmt!N^x=n5`nG9P=}IT zmU;keRAlqqn%;grTO&dA;xFbs65jYO3hbUqJS@m(^o~#Gy7US3qca`kHDcdAc4S8v zw);cU8?!d^xoPsJK&c)d+?WH zCutuk2(`;IC1-{kdY?6_IJ5orrxEldg88SuBxDcHdaTNFe3peTnO|<_vfBBuQvB{B zPcVe3h_#wZ@=R4Vy6oEs*0%v$R^M>E=PrAIz+C7aFT9wgu)jpF$t@x;CG;sHVarfP z&O@0qfLQwj^Va>;2kx9Sc6}+KjVq!bBFVn}!_$BZxGau+TQ;Eep29Bk1ec}WKK}=q zxn$PDO;YGKgI+*YiRJouQOw#fwyZ%`a&_vh>)s%md4DX}xjMzSUx4~4R?N!e0%6ZT ziGqz>-JSFBC^0|q9Z)3$6-M#%Vpaaa0W*TSFns)>>!y(Jk=h0F;-x*99OUb;fjO>) z!k=_NZ>7!~yAh4sxw*ezBVWZJ5oof=S-fuP9L%@TbXK8??lbvwI#|*qwRxk|*K|*B zi61gU8jnk*&VzvBIN;_Rzn`eWbk07iHY?lLAQ$nU>O-d+?l84gOvEvagv1sOG<0|e zV&3BRE%%3>Y}Bo~!{d{K+iC`sO8h5Rz4^{lsn)=DrY;9>{thPk(J&b|OQb6OZgBYt zMH2a`?iukw#3U*^M~s?3&SoE+xQq)@{+ zUel7y*AF*+38`GIm0jK|CY`dF!E&dg|HQLl49lq|f%D9iE%H|`XZlxP1+I~vz>}(` zOBvei2Le4+I~YToNOkh?nrk>{5$h9$b+=(s-+J@Wa~$KPzVK&($))2;ZGsP0N81kE z+d}ZFgKUT6H1URozJLY{xiuK`3v06> z2OgNJP-Y`nH>&+PN^DER#sJ(FR>88C`>3QXB*N#wEd?_Ygbf(G6Neew0~`MJDXa&Z)+%kA9C?AF=Or!CVWL7Nmv(Hh0+Ra&9+WUZ#BDpsDN@q&NhE z2oOljEa~9o9_&lz5Vn59e}3N>q9`2QF(2pWiLEm-VBT2!T#Xn3ufI0{e-^VgnAaCO zWJ?%-GKH=P4w4Mox*S~5(Tq*J*V=%N{>em3DRPO%77z~9bmNU7t9*qF|HWrtLCnR) z_zi2QSs`Dtj1sa7X?)6MrDvfh{1$_cXhf%X)jOqAm#$1>rxMof2nV>0c+#O&@wRWj z5bpz}Cw|ziPf+B+RhwA!OiYU zxxZXioQ|R$uVmJf)n8}#(%Ds5#liWlP2mR{oP>%hwn8qCU;?MFx!n^!T19CB89 zHkef%V&--6JRx;jvL!)BSs~F(UGUA0D51PdP{G{ab`Qq$HWo_} zrK{M69h)=h5a4`DIBlVvXzHY*;@I-4mqd}^_ zd+dvA+QIvEV>szfeWlYhO3-r=r4F>266Wa;y;bvCioXgKCP9UXC*6~T+anI_{Fa;A zzTlUYT7+~OiVqe1mV7db4cCV&B{vq{BTD8+K=eZ_B7L4FZc?Rukw=FuG?z9l#a`a! z)NxK|5gA;xS&k?)FLXQNpzAqO%n@k|>Y7g#2qcu^RxI~G&X?tH=k}p8rBw!4w4N~X zVLH!WJ{nE$3O9B>>Q3Dl@;N+m9A!BSfoRQsvV3{1{q{xLTe#E>U{cQzhGcrjq2cQw5Xl1k8*=qwy=$P=##Y*464uSW2haHL>S)iZyb zJ@NaRHO^)Z@7@p8Ke>k;YFNpXE$xTi3f7-sbiUg0?dz=CoOITKx3?7NbY^>wolav% zAR&Pi(WaKfF)03&0!Njfw-L2`w4u4bq4}fIZHRhuJc4#We>GEfe|vgkp2yLi$$s|2 zj1CDh`!N4*5Y!>xO)EY;TntZ_cbAjP<7$@f=Z+DA%B`vJU7QQerHp|;s_7Vs)#{PG zI@iD-wtT4(h+wm?hkjji)s*-Jv;FRBch@(+7zyqtugyruKhS7b1BAJH;a(CUGQ{iI;82Ixtx2I8f>7~J<3pH{q7D<7d zo%^}{fqVG8jb744t(a-F<;Biyt+-c=w8Ud$tf7iXS;pBA+(BwagCQFSST$hGq6cW> zwrv4+_|ZBTv=8|GY30kIn%i>V;R9lPC06oS_U61R%hBkewFSnm`|p)LHxRm;F;^? z?)nU53jXbw$?TnEdsHeRV07hb_xi^8XWW9BpI=8saIpvXeIo65kozf8vX@TW--I(g zwhG&|E0|Fqcb;as&|J}Op`@^TewA{3Y%+@eo0or6F{;m$&}Mor9XB)^w#*l_Znxhp zUx|oHm00Sd^Seb`9d7m`-G%rvh={_`U@bi5IyA+ISl=G_5V(`wSzULd)bpFqYE$;u zSb^+vX}7(s?Di@GflsJ<{P@wQC(n(+IBKUw6@*x5h|ByUlprcY#zaeZqanyINr;Cs zO%%NEahCS0@nEY(M{KP(Ap!`WEigu2?rtd@pN|qBH!ALcR0@P`^Z(dNj&H^=K3SL# zF;m?ct|~^GSG@}^Prz?@2lyZzU6ij0Uwm9Co7~JEO$lQF%|XQ&sjO@!#!|c70VCg7 z0%`-O2lRjRsiC6ejxwl=?ZW!lIoyt21Gdc7+Tz#6vYobV;A%9_8_bViMeUuCq$i!}9omDKyB&D0M=^x|2eyQZl z`IC63;g~@M7%GAZE|}ypFcA^u2Mx6{^3`r5E0d2Sw3=^23B3}4Tq;Ecia+#MxFjWj zr|%fgG`UD~^;Ck0ckQ!Vub-ywPxf^HLLShNk_KP5FpddojKq+e5StPod^@Yj+L3m0 zhEbR3)X!Y#dsJT5_&`~M%dW8Ed0qfLl2&qH1&j@2#--);u|lQ^9?>4z_C%M>HI(R1 z9O`;SX>*z02b0lxq4Qx6S);*{!uO5W?$I^J60U00=W?Z z3$jYEB&&<^Y30fa56sOEiG|_wo~2n8!&6`i0Wz||*<`iX zclHRAfQggTD+obg7XMI#qoyHGWRPOD#&)HzVe!|Z?5}+g)V(6=vbXv~b}EayxRRyc z?fqF0^0r1P+MfAhN3=k3QcC!RnK8KDy7U}d0?_tB+JlGJay~XxU zzb8i;^OWD}XAjP#My`)iAaFi=Q*6fTy_4JJt!vl7g3?-xy!b^(M}7X16YX#Vc7=Lgab$Y^nuE% zBmFFVS+RVd#X{LT5_XNA1lgM4NtFkqP`{~Fkr4N7IOICVowm@**`@%l^O|8Ku=ZdzbjM z@E51AGbcePdEi?la-L7RYCKyzy69|^W`v~PYEu&BuyC3*O)`yWl4s+(K z2k}qDQUW5kI}K7HWVz9Lo{##Hn~5)S(4QEN{skcE%8DFtS&bKyD^!xt6RsDwn>J=L z-H*)6F!Fx?2J&<57sonwoVH12Oz4fSX3>3bh|?J$htW*=gn6qHe@Y_~KfzWYfi@T>I2D7nth@x67cP(;uqDV=gwXJzQcCvj1`B#$Fp z^{Z|qsGJaMwL{J>p~~;tD==ipzR+qVOG zwVLRu->A_>^m|5Hm0Vdo6Q#S(HY01_*X5S=w82j z-X9D%KJeZ%s}cIy35ba{64k^v5r7s|&os_Us>vp7i_E=zr1=4R&g7ASu;Dt9(+rm` z0hH)_i3~0-p?TQn*%Tvar0|m=D<`J&S4n)H?@v$fROa`hySy8tTPWZre^ZniM;z5w zE-T?2&`nGC@~Po14c(g4OlMuE?`VGT-omGrl3lbn>3OT2%oiYngUM^A%k5?^`qvor zF>~nWtjVv_jW29BV~W$|e!0O5CT_mHM8m0liGm$P$il`UuVetj3YYoe+1)CbKFdR*YKDjzE$SdFO+52x z-1#aw>Pf(&$%3rOgFyY31@d+OBxmy1g=7qS)tGn$l#ijtGqr7zO$TEZx{S$Dko-J@ zvc_#6;_CAdWC#7L?V~z9#jM8e3!u8ykrh8>iu<5X`uO%avL=6Ea*H+0+T8TC{N@T6 zxDinMUk7ZzGQSd)u8=O%TNy^CMlxc1^rvs762AI)_U!M}mQf#Bti&^GLw;r-ph#>& z>m2%-h(C+eo<^p7j)5K|wRPE}uu|AF&MDilh3AFV>>Pc~a>pZkpd$+Sm@Pgpk2Vye) zU^K8|2sZM|e>Sr0W8G2XO^fWPILuxlOf?#N`gr;n?>ThBhBO1!6a=71i0Va#telv8 z_H#Xruy?7aX7P*&xEQR!LiqA>r)h6zD?~h=n?5?6>A~g1N1h;_a>;>D3=5^}ufE-j zaQVs81%CveF_*g=gX#TZv9&ZKPT99gP#rWfvU?|l7JCeW*5k%wRXgCG>(>|*jEsnp zq2aCq&eqb_5mU+hD0VCB&rAKPVTw z=uf=cH~LZg4DvM%_b4NzmhGXM-5}EjI?R=lN$`GIT5)y_|G+9mXJ5Exgox$*FW;CT zDHYndw>-Ip_)^2v?*^=IX-+*HE1-$HqKC<|zNO&}eCec8Bc&W;fah(aKks_f{Ceo$ zK?ET6ntZ}GDYU4LhG?&froUmX&H04P{%tRPIYWd^S+MfJ2vqxsP@U}0}BXfMjPfY8Z4P<(%SVO+V(LeeX2Nl%QrcFA+z2%2{$(3S70o{7Pp%tm~R~*<5rWUSd%E zVhIf*MHyY`&Ib3Wg0 z^yfDs#F2J>Me8G^3Mu~LI`0*L2NNqiERUSKU+JoxmI`vn03H~6)=Ugw)j%gsdhb$m zhHB0*OJJ+Y?VPL6tu3K=mx1QP#4QTM$J9*qQR%Jb=Z^45Lt=m_sSLBMtf;pQVVHjR zwF7oyYC@=Qt}75L&l`%?uz;b9*RFgdex0WXp?PNgwrhO@Ed$RrT9%6d7{|>BxUJd5 zoemFc1}VXf72#FZ1NWB;yJmbs`IxHyELyvWC`De}NqM{`Lb$dG&C&lUB)b`!RgoSn z&e$$}y{fl9PrS0kj?XkL|H>Dk8j1Yj5}D}$HA#D7pD_H&FY4yR3+f?OBB5eRoVo0D zpTYL}af^M+lmz*Si*cif@0xbDRju|^+I=Y+@N9>?U<~3xb*W|yNCHf8%vmIRs(wBT z&*_A?s)ki(%`gONFHylJC?DuHk6mX_0>q+F;7cxktPPmVfNp%c`tI42p8@HT11{CR z{ckh$#ej_?Pl_$j6Lf=qAZY$qbDxU^DUbyfPQ1kQq&s(s=;M2f)A*wTC>GOp$N^%K zc{J!xFyXu5`g)>;UFYPJxOg$5_3I&ipn&$(#<;F3onPN#mcO2Pk2rvsl@&fzUMUkjSF2yH$ zn}Yh{%J3%_ij*CVp-(4XwB=RTeVC!%^fctTe~um8U2b> zXF{imMo1TztG`Qbi9ydR)&tP;*APuDwyKK*cTT*h2Yr!A+P1e7pvVTyT|pc)9Ob%u zbN*nUvm>`NSe$C&1)*MzE4@Xx$7}tS9#aijYtFr9{B9bY!%{AFo#=zHG+FKn(RX#G zZBzXYh^t>=)}<3osn9<#31Gbor zkuv)^w$os(4;Z*~!Cd(W+x^68>GW@3s=@SpBwG=%2g60>_koP6Me}dKWlp^q^Izf{b^DTm$5Gk5i-$BPmT~kKXe5R#DLWA@3 z*#blxxe>rG=m%>=r2X?6*q-5oGGdbZ>Cm)%z#v%Dz#gIUH?BWF514&l2}GMBFugSk zExboF?m#V@h%Pfg9&VO*X{LaIjjT?;!eqH4^r;=H*X>U-;9^iYhwRJ?-@whOx zH&TsGZd_~Rxk56eyRB<_y92f>gB-7rXFLXeG*^_QMbO$YbsjBV zV(0ic7ME#YvQtEo!~FQY6J_heafxQ`%+qq+H@116;JQzG$!0M_ccK&TE9bw&ha3Ln zKjgR43x2w7o&>YX{&VwzKH+YRU7erPvtSoCWR@2siJ;0INs*iNTvv?}Xr^#4O7(QE zWdX|~vb`=A63?SepZ(cWxhOKr96#;8qD2*q?P?}j%B<~6u6GGJ^7WT+-;NFAI?*(f z7fXa0vhj*0Gnb*5mNuE1@bDJF8pV(1U?j&1f6*4Y(F}YKBC+DQ?#f=j((9Zh7rW;$osWrLPCsFLXu+A^xb` z-2d}MsNqAXcDcNRqnLqbuqxO8$2l?x3RnPNWQ5(8(10D0{ysZ%W zz&eD5JtB{wYdG{H6tVP~KL74uJms^w7RwsnFH85yGh8Ue*3TOCtwaLhW-KhwN{NCJ z!Qu@f{S~L`pZ05H%I-I|$1bI@A5MKw%QXq<40DoeC~N^t%-)@#>GJR1ghHG^^YZ$q zrHQs4nCgWV>&MNFXOf%jSOoQ#4S08gyJd^UkIdysd0JG@bU>b(_Hi%v*w2`}2MSEyH85WB8|&z0Nk+(hc0%fx zY=>QwT@$S(5)iiep7OSv=w0`X8#>0G4i<{ys@YCUopTSY#bgfk^Hd({K0;%0l3Pty zGP<6OXCJH*uD8-7Jsx~OUnE!Gu=quE#?>uv&|5Sgu!@jd@%W-RnTB!*%?(o`T7LoEK>wZ(XW{Hqc|<^V&ji5zScLfL z7LQ)v>}*ZyLHE>;K^(PK)XND-hSY3s_LGlKZ0DJ4DbD=R?ejILDW6!mX&9AD)K25- z-(yg3^DZZAd{4oBrWMT61 ziBHmXUzFH8VyGPGt!%9io(re#o@!|e+y+y*T8m$ls~{{$%{{#BX7_&d`IAK9yNL`6 zsRv?K!wwWOF$^uCTg?xB=*l4)vy>r8+`k*Lme7Rn^W%d)+(hr%+4_Q)w~{sDK$k3E z%cIo`=V(mkTPVw$sIV}oI5NG7yM=J?s(T`UJ!sh2O=KnPkbI`SE^Sq8+Q|jIOr(6nU?{K&`Ll7z*6(tv?sBJg zx%n3(5qDxWWi}S=1NlS0u++?*MTycH4X`oMf0w!}m)@+B(M#bg=E!3@O84j}sz4Sj zrQ(J{IjGpa9;PUypGl1+dmAC@{ZURL<)-0@$qO0|O*nMDTN)wQJ|P(HB*t=OCndF0 ztTLQ&{pMBPJzqj^WdRG^_fVfCG2m&pN@Qi+zWR(*QECk6ujlHCvd~*v&7Ikj8du zRlo0G4@Sz&ybf$AdHcI6%GwtOk%0B3+L^~85!7WXJeUS}jRqnlC38vG~Q#&0?O&#t-@Tx0YV}3{|~3bG2(JK{1Q>B=%u*XD&Vq z+2)Qgtnx;s8l(*g_%5kw(e_ztLBT=?m>X7GQhyst9$2k=J7!jv2O)L!^6>KbexogS zIO-w$MM18s&$R4V85NTLxLc8OBP29r)xZi;8tZ;B_Zn3&h779&yNLZ!n~PM#3_4H{ zb6)B&?(TvzKKv3XT;VTH&J=Z3WyeX7i6U*%Mz{9rNAN;0dG&PHY2TRM2Is~8q>^n> z-=Zn{zyqP9pt3Vyo6m1qbswXK&sA42u6hR!8<=TohuczY&zpSQlK#N}4htL?TPm*; z`~v!9CXRYpcZ}0|Q&oNz9SZR+QalmN&)cedTOBA{1dyd6mLYk%1;x z=FPI=on7fk0|lvwM3r;~g|s2}uqTD<><1vaRM=_`Tx_WUk^U+agqqzPgxF8{7wzGxoL24t3WRGL5%Ij(iH~<$UrFYx9W2s z=vge_ZL3(La{!Y>tP zuQU~g$$4icaus!xzoruMCB4Vp^pK;&U8)ZKARu7Ud}TjtWN~|SXEzNdd*``zr2Vy* z9wK!)n>Jqq(782?_K!pBV%s}tmZ}vmJ6Ooy%yqdov+MZ;Dys2f>^IEJTMPxNEE`}ssNW7Pw&>yd6rB}Vj$r`GM7(cL0DSLO) zZal#2V({D-T@kTX!O1~pxctpkmMJyNN;7p4>IcjC4?CQMF=WEask8>`%sjdnvC5&` z=lwgrmrbSK#x4+)%#M(6Z+iM+diuxC^iTP|y?b%%F+pOxj-iI3T;e?{Mo-`UTmqD? zoqJeMVTmU;_{LOwf0aAiSik2SYc!a=AxhZ@`-#-0Ke|yCU{y*2cAk%|%D)3_90nco zuTo7H6Pcy=tCJVXg~c(vKPN-P$(4Wo9uY$v-^1F%a@sE<{*v#r@e$!%{^hGY5;7h) ztWnLz%X{d&jd<)7BRKa`&H>&bS>Dd4za`(+)S)c~ES9$?l9r0@8LgBRc7q-htZYd3 z`vuqTrtQi)*i)Q2Pp;9{5ySwKX{D>rMSV0Br^;?3pV|>P8u4736ngnM z^rWJp2Fc*BNtzv~iV2Jpjxck>Y2EFE1(=Q-fYT^Lo$O(#0KTIgOF!#2J(>KEFWVwl zQ~222cKm~%fk|+Gk}IW4NtnQY{rYCR?k*+`sEX^Tc@qaVnAJQc*ubV0Yh-oBzV}D|P8-in zxb9LiDewk=lDMVn5IQQ-BmTh0w_sN<6pmud^$A~{KD_h&QC=^Zzuin-j|kwwHa2Wn z^vWFY3C%oyKk&yW!5BJXROrlSvR*h~Cw$(FG2hE$G2Gp|p6c8sO5~jS{w_>b7m(Sh(0zK&G#=uYTqsO{C8j+Ux7B-d@=E@3`<^1mN}N23}x05vI{ z&(z1b{RU0n*FPRq1^S;*0}XH%ZmRpP%)GK>x?uea`gs_fT^5aPCpvU>+xgK`qUU!H z3ZU75J9z*p6%YQn@zUd`$J4YV=Hop8W115%OlG|044eqEHCu+C<7iivL=O&0iopuZ z2@saiFo#FMjS5xPr~n}>mbwVz_RI|*%<#Q#(7Cuu1XWVMo91o&3%ZSzd%~RK*ce6B z%knG_`zMY8l~<_rsqjhTO;IYD(G|}U&u$fD8yhg_7m>2;|H=jI5v+BAS>M`V?^Z_G zmY9lv{m9CWmS!sH-!fO6zW#V!LKE&Sy&Er7QF+H{C4n)j118`T7&I+|IB?saP-s=C zN!T^6qL|QOFX)*Hh#AmZoy&I3Ge9X7H{wEs^dSr*BR4(F4hL={XV2fXW(=Z_YHicL z%s@WIP^R~z-+JDvI5htkGxD5Vi(ZpnSOa+tST1`XW3L_|N)I@OeD-%u%8cwHb@$sX?csA{=r@|`TZB0NnyPk*tF?OCz=kK%aiVz@E%n-?=09IqoP z>&rK(au z$U*2RD602$dyWbO^=E7)Z`m$koy=Ys953-HAGXd{DP9uuyffQw@zbldYz5sb`96U| zLs6O!5LU{1)<-2tI=C_-%>Y4i+_Gh%NKGkznnk)F&`BL;)>d8Cq?;T{9)_@wOp3s9i)Qq#DqCFduT82{V_}@@)A(I*Jog!jz=_>=WAa+*2`N^k zk}+8=nz)tqjGxn=-tnalo832F>|8F=pW@3NQJ-#hCqlL(mej|{U>%$rc=Ii_`ietv zF?Kf^;$r`ch*}kY;1=L9*>`DcE7gA1hJ<~DQ2d+zy9leI{|Qhv%MeUnhfO&K3%3Ol zz#+RLf)?-69IUCUuH+uRF&Nty2#)o#t+|*qjS!l%SKT7OryyijN)kyfkjH;;qF(BV zD+^ia{vjK@k^s;cDyCU>&CMZ`gO|Sx*5uFMx$wh`Fr909v&9GfC{!(QF-IQ81TAb$ zHKQUimSI$M7oj}d7v#Kh0s;Kr1Mb6q1KH%CxhoQqZC*a*3ZQ*K6ix+52S95OJV&dt zLlZU0)t=m5+oEHbz4el(++8i@J(l1jG3N|3puO+Fk*z<4*LJjo0$KVHee@S797udT zzU{i^boL2~%Fg>5nkTfGPoS+|Nsg;b@QPlY91@lv-n9o?mC@DoWIA{GRhbOYq#5$_ zHU%fei?*|XSy^q&Y~6%`9^qPRFkvUH5 zchH+XODH{ytj3V!CseWmwK;pABP=Zy;5*w9$D$08?wEl1Bg=BeeF!5qJQqu}QD`*-DH|v(Uv&%ZjPSnNNgZD@ z8N&=ASNwI!Iwp$(j}Lj4T}^hNZ%hlOxsgDaElQ{gi35O)H#Bih2GBYF!VtL*C&1*l-2qk+HPZrrdb zi_P+WqNIzT=V(3Fivmq73`V=Or?7%_y@e0~Au4W5u=4a~)#;qCn&+Qfz&lHCn?mQS; zyq1=vz9g`b>vQ%~cngIZ-GqWVBA`CmdGYY<065B*j(Ai5h~)EQ)9(!Hvq4zZ{l$iz z-I{gkY4^t;HUfrOC&O*{sjXA?x$quo;FE`7VN>0DD?v7Pl01ze0vI2qrt4ao+yiF; z-S#Ja23JzEYOk~>EE$I=U6vAg+-82ygDk9%Y90Rcb@pe)c&>X91{V^=%lHnq?`nc` z4?q3FaI`g}w^2CWaU*ad&Bu7f?xRn^Zwe3`q{Ap;_Kw<8cXqn6L_c~Ic$LS#x@a$) z#G|US9`TF*c*w@%`o`}O!uGwv-8BN3xnFygrPJvuz_-r;cLC>d!w3UvL!BH?cgLk= z#^ZUKsN5ZgmwPh1q3kY4Xgm0RFINM}OV?MaDPs&ZKQP0w^k(x7Fb>fqgFV%`TD13?4rX=V{UW;aU=tii@#g} zjF8HI5-#)TN4CKT6|;50#eYvyq6|;>t80BEuxu5EO2;jYZMgFdO7obp7mK@Hrty;e-g)Pe)ec458fov417B~_|zkpDGFDbw>tzco{;I} z0`hCAGE{ggyX+lENz zwnR=}|4h5KmQk5y-GD+)C%;=_Bdb`T%96Yk(nP*>z-smw&efd`CNV`;&{oba- z0BUp>R~VRrFzca-40F1wIGr2dy_u}E{Q5M<%LRK?a-Q#6aWGmDy(mJCrj#x4t3YBB zoT)?j!;U&ehE~0c?;^62<|zPG8wl~spB}(1{&NBOA#&qCcV-;VJm*m+`q(`n1GYbn zp*}_DN{EA_2wCbEXakiHRqI-q;2Sx<@8c}`2wA*4)k$=6<~NLvpRhUpnb0xZdfg#9 zJD3mVm9H4Tt~@bZCw!e3oi$acazh149wlIksokD~)zI@Rx{{^R_`FA78y3rFLN5s$ z_^&go)bn$xw!dngJNRu^67uIUno%=AVAP;wnXj~Gs%-8P$M4TR=j&oeF=6`w6TUoY zFAsDrs&7X|1zV+X97*}ODTBikfBT!GuOgz-!H3AMsCfusaGh3tSk%yAyzBVjWas!V zJRWy6PhGssH~#~>-kgL%6;X7_v9?Ey^IVN3nR_=2xolORTl>A1|E+x7Ace|Z@jz*f z_aPS)!TjEBXLT5CrMcKM9<0Ue)>O5RvaEj-1yhsIOy)Go;CZqJ<|>)H5Euh67!G8y zadwAVoD3#}0Fyl(Th{TYR)+oSb&RQqa0)&scEfGIbKMpd#1rV(ftH%?$N6P;u4mkF z9=}vGiO7GU7pBMA!euE37N+9gb#k3kyJJEHM6pgriPHh0mkN68Rbz~EN&~`FknlS| zLSS*AC;T__dTYGy$ft%vn1XsB_fIE$l4L(*P>QXP74V`m_*+v(Uj*JJFApRm?kj6> zTe*1QcxV#K4w}5Nm6#&Jmf7)y<7$sz-ITfhC%toFa@L%$taU8JcDsM`s4&Mydqe(c z(~o``5a5$6&Kzi(L$U<>Y%wO1yO&%g-p(B;fAff8bEnHUI!LN6_e(wf?Tf8fkO2{l zG2U?}S*^d@YW3ii&c&~uRx?)^;ZKuu-VPo3 z5TIGaG3$}(+F9wh?S6^IrZ6a^{Bd~MeWBNIjLrMHPRGE*!75ygqGXq4=y4`C1fRBI z2}SGbn!mz~8m8sarlwqSm)Zq8Rh~0yy+srAe<+^!P55~}jAc6q3_~yfRoiBw+7DNg z8UJ|Cr!RzqRm>3)qGz2f1kw3BG4P23^O|@NWUj0(&&y&fcZh3ZfJv$GVuFdd7XuST zad;*1hLakip~5O?mWgRD-Um<=kCcK~S?b3~K^)N{XqQm=)r2GZvho zQ0omKGcBhj>sv!`w_D6?LV;}_MYfZa>7ecmpkTj}pbtZL;`OQtZ5{uErSp!5`hVc~ z*+fQUkD{m$BAX+tAzJp{WM=Opv#g|$*+Myc&$BYJ&gg6|d(Xoe=kE8`_m}?m@LBKi z8qYVhwCKB`vB7*mbsHMN5q#`@xRYk`8H4;OJlRw%q}s3YM4Ue8RO_-pr}#!(V=qL5 zF_tZK4 zh=8hl`qyT6FBdcQbx#vI%_OoU$+c7$0`kE8y_cD6DL_D_n-Jg~1nzGj#_5^x=;B6U z#5(+N#`$!`1ti;MD_3gAVtE(6Zt$Rm=r@@IoDU~9D#x5llf;ql$WjwAaY}uC&^{Sz zDpPaWHv9l|T8nU~c5*hlJO1?6oJ`gs>ZLENbb0*u@rV~FarmC9kFkp)wwpal6g>c=n$s3Q25LbZ0&ZLuY-SK757VPKEG0UaL9d zE4v^CudO|l5>N$wn{>0`M<@I)f1%jy*nM*ojej4LgHx0}^EXph{Hts%Uc~Yn78=Uz zPaepB}TRLk&=G>`xX97MsL=)`F;#r zt=ODfxJcGlec{9Df&sWcR%kL9Ifr}M^2VC4@pN_W}@cYtd z7`xq>^Il*h43VjzSG<@bW!cP@wf{0|8+`#9v|_e(gzsv~s?}b1hQ@!O4^{OI>UtfS zBgNC>3CT+%eRIA5#k~uIuvC9#q~}sA;QpD9Z_F_HSQ+RM0XjBd%C2@98~HowN@&85 zmQ2}MBB$N%@qRd1ZV+#5qw=|((tMwx?I)};ig0vi23<0_ZoFe`(r(z~@VhJU%kg{b$C1~KgDvI=Z{&g+#T%3cQO z*oM`h*PE~vfd%bej;fjY^}4gDzU<87fLOqd5D?Gq4P;l~*Y<+ka6RS;uqHB4qBIvL zx%Qn{gHL|qF=1B+ht+U6T?veV#MBYqUJIf2TwPtNX<`7{SD@#pOQBKyB1*DKU!fc8 zM%*w(@L0+%`nRatGrU~6aC2FxrwWSV^YdDlJ+^f8j&uQ)?4!SFVECV@b-)$_0YUeW zJ(;lIo?)0(E9r&hwFHhDX7E?%bIllkvJe#W6>)Ma(X_$Xt5?LWBh5=f_PX3MuRZB4 z5#QI&K7j>ZCNykn410_gE>GygE*E<3jvVZ;U|Z8iopXBV*X|aq+~2~O=;x7sW9jAw zaq&c2qL?l$A5m8RZ?nb2k003U`GG?wspkue0nK3_m+>&+dW2=Bam4T(u@*IroiyjX zTkJO~b#YBr}YSddu$7?(<&eaK5GlIV`T_b&=^4bf$t-z>Xi25>a*Jw~1Fnt6? zX$ZhU4Qq*KLAZbp;0|UG4xsf7{;c}-jcVV+c>I>$wu?lMWTG7ngi3>PBO!44#wPdq zy#0xV;pWv3f>glmod~3b%=W*mY{@*>e3@NM?Zrgq9gl-@=Qs-PE~OP>{jAKFgW5$r z(5T~_nz7SwY1G~Vfq1}2dEoEgJo_tXq-JdNVY*@Y3;7yn*wzrIV&yO$iF zo}{2)`}x~;CTCF@XSa)sKc>T4<*M7xgpJlenfwqBIuJ>zymGME<8^3Q9~~^Jg^V9M zRGv`SoBd@+_RLe7{{C$j0>y1vG8yxD)q$R(j}W+@BPvblX%)#{B{#r36y9C09w$^q zut>VNV;(ljh%AlVg4QwOH@$J5lRi<3X&>}T-ZC#1RjGc>>JUYfbuzC0@ONPPPxLb_ zrhEcA=!+ToOK(j7Eb})ap1)+96fVO024sR3fK<_B*kec)Ye-&Uq`zwJ5n{9s>JMAaW0gckfJ=v&VA1*gO0*@3~g^`kv9=_HNE=)w&`Wjqm$ zm*W*(VdcgRM;Wf;6uH$=v+n@@p(yj@*x#7j*EI}SabOmRyWAs(!V6<1C{eA|aZ`ndnlYo(Wz=uhGkyiSKPRYvQxYSM9(%l(Q;sSB?_o0*1~)Z@7p zt762k7N2pqpl9xeXvPts_ax=*4!TV6vu$(FH&mc`IQw_b4XLx&>zC$Rv$;<|2PzNbmO>M96(1=gWiSD_7@ZU~ z(U-k!(qaN*X`@}C(bDb1L4*X2T`98;z?Hd&-dq%M<pJP0i_#Ycb~!E|FApWXtWHA7$WO*0Bx(je|t3ggI6 z`bDeC8NZ9tI;lp^*GoAU_9z=gtPR;rZA^m6r1%iG-smYEUmne?>u9`1iFx#R;Kf2r zmkq-RehD_JL!X#p#({cFm!1@|zI7v2O_N%iL5HIII8)E+oVep$I%-+m4%8L!_gLb|9XIi<2!x7sNA zdbphb5I3A#c3qA-XQOJ)<<=tGXPvT;7mwHBG*7g@lIeTrQ90Rkk*EZr|8(hg>|E;M zhnb$i5N~m0d!4mSQxYe7^{Y~5xrBqxxzX&-yi>(Af6c{%P_||4p2`pJ16GHsANUmi zC+>r9hC&x&`xoLItizMEmOtaMF1~6G9UI%U$J>j=1nr z#PttJI(?=uX?*)JP;M$y8&c`{tIG>x9J6!@!%&(Wr+bQKfe8_phl3S#L!~Vk+AjB>Ih*czjO8^k_T!A@WbXZ)>1vvK zT(6RSIj(dBHSS10Le!j`ZYfMbpF{lLUwIYMJR6?ZK09cI1-fe8vYvyFCxru`} z?)yUH_;0*bTPC;*J~^)I)q_B!l~Jevq#eD+eW>a3tC_<*#Z#lIbj@fgw^o@ZtQkxC zPV_j9hB%FYH0$vU<*5}k1Efd4vGJ4HGQ_*TMzzzC_eRZg2S^w#25PWuI+?Amej)U* z?80zY@fd+!__RdE3lJqqM!`f$b)jjA#zK@r-uN9=6H_usaujd(<8_JG1y#h?eOr5p zKBJf7bO2pRtKXyHI=k6>z1eB%i~tUOK~d^44&Xpmcq|M@GqJ$sGq(HZhUAj_nr=G9 zz8Zi5a2yC>6saCSMeNf0uJsu8V7@|6aM9K#W)rv?2;3`#IJG5Dk!{{Q+>Q^Z)-#k8 ze6hJ8IVIeUcpDd98)5gs$##lvJ(Eg`p5$qQS&>oLaBPRxmTU&NTfnRB`Kt=AW+f;`kPq9$wsT zD0HUN?d>?ujar$nFfdP~v2AI-xq|7RtLuIjPEh+)%?g)5W6fqxwGV#Z7v$h$r(Yot z_ecJgC(-0$JQ|Bh2d4!sF`xL9ohZ`N+`YW>_ETsn*z)`{M*lfpgJxa$d3y_w{^2AKc{iK zIkEkhk1x`P*y|G1rl*^J03wwNOs=-lqsq{!GPRP;op+!wRF;IP`IlH^LXc$ZEGdQ6 z#^d1@(zctq;;O}Ia8k_FQRcMzq7R+|ihe-A(EWR7j^FTb$-XU%f|fN4U2!B0$^QmT zArDrNf=HMa9P5Yp9j9{+uHPrWCd%Lkit5!P&gHHwMgg-Q16;EW1g+fVc3v-tQBU!O4sk@5zl1DwUtsY)hPPP#on0<&EU~*5Pc~kh880z%JZIi@e!ML!<8UK3 zX>a(t?qsNKbHNl#xI~NF+s2>UTCb!J2bq%CY)fUWotA8R+Ebpb^AJX3X7Ek=kTH(a zrob$G0=ff+yQUbNJjA-Qb_nZAjd*FC*5`wlNDmHP_ZgXr?QfrobSG%%%Sj8X%haUk zN%y!}^|=%o6i38tkk+{iDR{(L8Fhn#B(Gw{W3fOZ43$K*@rPu^5TFIX zO0xDL(dVpV9aRw2V7O@!eC1A0$;cuo6jeKboL>twAgyG2nVS9M*Bwqc*-5C-+#sgD z)GzxC!f=C=OsviGb=aHjxU+Fe3M**ZiQDVJf(&+Dp786YOS2&?aAV}DY6ls9=h_(( z-AULzodXluU{}xuY5J}Z`c$?(wV2-?8Miv#WEK9}GynSn>zcV8mTwzrv83f*8RI^k zn=S|uav)2y@Bty|h7BW~?=O4rp*%kpP>_6c8dvoqF#WrPw?yWqcoA=cMs^<(pX+|* zk|CQEMMIMfSg-=kVp3`&Zhdwua$3K#@N&`Nm}@Cu5SC`PxHGfm>Y^WL7lLJM|9YM%=AX!M?^b*?Cg2#v`HHxCxtfkIk{cGOy<7g$K*T&nshjq^T z{pHJR5!$N8c!<*1Byky_*aCO*wS#fmMPod-c;p?(*zOXvh>-iwS~9M)w67IXpD!su zo(8Kkl?nwlxI}A-SAZrsU>=ACAQBm;(*AYOp+x2%zOWD#R-Q!~>uP-I+sG z$~IKYg7V!p27ZZ=M`lF^i|z^Vp}8$!v2AbY@=}?z-iL|uBI!+S8vXo>wW0Xkawr)E zSXP47D`6hnPB@M_8ZVdNlzZzhrS;hc#TG)(y4HX8Na}r)bM+;T_8Zzu$#oX+(SWeP zETT)f3=vj2ZAKhZ?E1xC2$QFJKgO>k#fvP80EANJ)9m=wLv>cIK;335KLhw5oj6C) zOL>Km8>IhTX_o(rUv&%Izcd54X!^bEATOZcBODd~{A^-sf8j_bVz4(!v3`zCnsLklX{SxmT}2JW(^yuC=XBwXPS2OmQ3!2cZ=-+kWPK zMTDrc7SKX$wsW5o423TOwfKAyxGfHmZ(_Qg-pTTF;*6(Qf)DwTgwX^_uGtvfKIhQWzm? zl*}!-C)p$^8cJV=9m*h%P#iv9cnCdMF&q3ERw4L{Y|!o&ft0QakKUY4XJ z^9v_S$;7Nba^#fLv#aW{VYJNis=$|bN2rMzwfQ(N1_i9h0i8Z2k2vrS#=zR|R`c4| zW1HP&CPH63(S$)v*I+MdBtOTA%4tL7uQUD&%y;=1 z(Fx~%8c~>EPH%la&XenMR{I0rGgsMOiI|@GTVD+n`v`#KDy)3&LXc|GWgh!|&aRw& zcpj$ru9>Jr(fT`AP3$vw5Qz!g3(BjTO1;CwE#Km_acU*cc0624C&2kwEbHU+_;llm zq-o&Y&wlacpJJFvYWt11xgYPWBj*X&>UP43#|h3LO><3dr^9_x+huVRMs78(hF<_t z855i^twJNdWmwwa4!S6F0t$?rlyDaWm zd&8zQQkrW9S?C`DDA{D*UqReP*lvR8#~GEU#!%Wpa0J@>^}h z2f4;(mTo5m$zvQoJsX;HY8IRbbq>j_jp~({E6?1A66gu1+w--Ub0)co9WK6&s zN{5g9MmE@FbkStSW-O&7$cbbpTXK znCxDr#RS)^`P{dk33iH)uH;9a9KIKb6fPtW6!Zyf+$P}sa6B-f;4{CImr{=f`h@2x zb-nQx%uif6vx`kKaJPc{Qx1+a(oWML?=Y{Le{RsekRnS{V~#Jp9B`^$)9Au7sk7J_ z){%4Az{iu-@tAK~%AJ1SV(k%l}gfs|kSxX0$vqw5dTdVRF?yheB`biA@ZP1~BGSF`?5knr0mlfTo6=u7db_06I(2(TiwB^|-e#PDd? zEj&(QldI2_@Gb3>Bb99lY@Y=_%#JC~U^+f7?QW@GHxxeo1BYV7kf=Q^;tQIbf+UJl zWuQJkgcvY<=y8AKdhuyWl-v%DYnXSu!>^eEtU9oce}v?19H5H;PjX2RuAua9 zuZ#9tO~}#Rl^)^jfPXF7ILo&5KB{SHdwB0N6?$X_VD{>!H&;NZHT4PZ`(gS|1)3z~}P zkf(QTk8eL_R18=mAoF(5FLfyfEN#}O38+R`dD*I+!bwU``Iv8F9l@7eUklRtErR5; zT#vFVN^_1RC(Ggk>+766y&3Bt;p z0=rTND?N>)$)w?|VahnQeEFyd1Y*D3dnYy*5fnasRh==RwExAya;g9IkiHO#zW;l{ z{f`Js{NYQc&aR{Yu)$RhKp}n(V@qr7AWDW`%G}7KYi$!=uinU+8o2h3qCyoUmKCeAlph}{o(5E@Kdu!SmGZn^w?+g}5)?(se6lt|3}*1g+X zrqzJEca~ROj&+$ZTt+1egG|_F##C{sSrZ4T`Q}WTGv6BP-1+9o?3~U5?A1N%U^4~X^G?se5&Z~|uSBSLG?AR!ND^IF)+dFNaGAxQE= zVXRw$^Hb=QqwhVE%A3F;A?M=oEMVsxu_}J#DZMFLwK^UcT%xD&n!kBWOjT_E?29X1 zkk9!JP)juJOLX*`n?&ITsFFoBY0-?i!6L%e`aUwd-3-P6Mek1YiP$cZUAuTyl#V7+ zs5y4z20cq3%v5bhu5fN&om|PFfZgK$U!0`(!$leT?W$LfeO0#y=1fdA119x=op2rCs3Flw;{7%G3sRcF=3A*3qJ^I^fo;=ky#~ zfA1Xc!OWH@Oh=bR%-G4w`i1orPiYnhyw|o;p2wmYARjy13$zjq$`q+35#31b3!prt zT{Y~Ah$Wmj;LhgvJ<%HTdn2;uG;C$D29ZGV^28fV9l>lO_I5+*IuZ0Tt~#sMpQzw8 ze^X@zeq(4x$-O;Ly0UhUA1COyM8rWWlD4u~W0Bk!S1v*3YTK%qQ1=EhwUU&F#H>J;H!>k3XE=5TM%_$qx!J z>+*M{G96OTB5oPzA9wV~Y5Pdq?G;ja`_!ar!kT(MLrkL*SqB7(ju19cFP?9#RQo~Ir?-jC9>F3ktQXocW*LT18Yw@7ZU*oV) zqJ>buX8TBxAzHW+m%F2%5J>)n2cT%-y?z?}&j6?P+`JG}$r!TBH71Jo5^zPgp(kA3 zpMo(qxc#3{x&2jAoh(s(bLO!NUH4GfVRpH)6n#mzDm0&8`14y* zvVm@2kBdGd&I4c0L~rS49q%oLs_jo-1$CfIzU<2fwa06HO@Z?~6?!8_I{(s!>?oK? zv{V%2`^gMU=S+i%tYL$22|i8mOR1LH6hZgmdnf?3)9G74q^W4nbEoC{Ni*GP)@a=h zE$T2yJvmfONStCd`G(JmGv}hFus^wV)qUbpcJ5fQw_>2X?G&A9AtMG^{1xJU(>!@) z>l(%__hZPnH!yrJVIF>zE;7u+lUIzz*+;+74OJ(%1#w31{E_Uu5m@n8ij`+q12(Qf zSblz+g3o=HdoQm0NGgNpQZ|F%-_K#|@CHfBOphv3FNvylGklY9@I&vDWU22hp|55^ zPT=s&5#u(cmE)=*RK$#J-+hJH|YMU84cerl^}@FPAUlLBe`Pyw>|8x5@g?@*;6+8`6(m+^N{j^oQr4aJm(6me}vpa<@;uL4{%)3Y; z9NcHu;#ZA6{c0gO(!Mz_r^>xHZcYaAn@hLM&h6xxJ> zbhxCy@cyLns(EFba#SO&5m#BCLAsjh)_QTaF(3I6YdIBdE<&MY3j|1b`b0lj7+#T` zr3u}9f_0PclRg0y?|O|@kOvc(T-` z(@&+f#G){cBY1D{zscqT1RPJpV1+vFv}!zn55{>q*OWwaAw@KabzEUji0Ssus@tbr{tlzx4Uz zbGKCTe5bRXm84zoCNHxOg+6G4eZU`G3#whO*8ouot`~5~JF?_c*c~fMU%xO4(|Zv8 zTLbGLqMvYNS>*ib0@YXaQsG^rZ47acx!F9#d@)_r&J)BQ4~Zh5V@W^2@-j-)AwL3? zLa%rd{<9YrKi(Fw%PcckLlK!LKT-Wf`JoWn(0~18mQW zL9!}o#A>wob|;rL40f1CWhuWF{>YT$SS<}(x#q?m({=fC2rfR*w*{u_C= zH@&ev)2G zK+Cndy>$?xSidwBkDwuH;Pzo7{joz~PiR|cUksvU}uiWTNt2An;eVID zEY}py4O`(*PXxVdKZ5ES|GKM%*N?(L2BfK&?#D1k#wiJ3CCZ|rB_f$7PgRuk!HzL zoe^2==`1Kmf;g*{V5eJTG2loRC3GlR*0Ry)7V_QI4$VHfF2VD!WVT>K8sg`-eE-Kp zV+x8ObhTefP~ggy_1(C1Foc$wAvk7g8BT;v3z%oAlo$Uv86-?;N5w!-+A;&#M)G;kABqf%5n8}c~V zxA2?*Mtdm%yR+%Ye_jFa{TvK#!X|+M5gnBtkp-;@b39*YZ zqgK@fqnaugXb>Oh%K`H2nok>OcebMS`~HyaLSqubc*u z{s)=LiN$nO%==i0Ute|H$4lL=+X^HQnIC(-tiaubk^EjG^BU+u6D3FSsEcn``@saA zXbUnkMN;9qE*1U`~}|Y)i2s#kt)sxTNKGGM<3P*V=a*DME^u?k7OU? zmlCUpF|3*5+ZDBYZ+H9-Tvuq1W-@oGw`~`v&|2QfEoP`ps|=4MY-xE*@e;X=xRuEA z=QdN&d;<=K(MH9XgTaU;gD9=4y{Gjr%eQWttZJN>S&?oMEqKa$KCpp8(w>cji`<(A z1US*GW6wz5tD)EW>f0H>Z*<6nf~Ad)1#v-=L4j7*KkU9^CBE`-@3yk zUW+<25Fr%e65|)s`{|BW53Bi);0nLWE%8oi3uAMM_Q5~rk8JPXLOkur_pO7fCTewU z&rMmBT-U0pz=Z(2!+MPMQ4Se)pZL9b1EDW>@0O98-)y)=VQ0D{;HVnTPR=AjOSm>W z+$BW;^>2TGF7J^?O9?A!ht+&@nwWky;UAF;)IPdl83nD&=`h=$>}MQ&&+<7eFHy46 z9042w9NT8rczMe;T-Q6%bUUTW?Ix09naxOMLdIX1cEWg7zp1_9vE#7Ex$4r@!_ex* zeT7f@QL1`;4?+oyfcc7FY*w?^;<#;Muxn3K@ZOfJ7;ILwmhchSW=Qc(_vEWz!?~(4|CYzqOn)(J z&Oe*v{(>zzXce)p2N1m0kqu!KqZ`HO-@(UPhb@~W6AGAPEz>xF;OvqYrE^+dS?2Tv zV&B1Spg(MuO;!$AtqsYk#$=JOF?5HudKUBN_5s6F%{l|kW%unwO8+=&EnDhQU5>C4 zUIFn~t9~4P|0ZVfEszcUtfzYJ($cd{QWsWaK^}*#=?&+ znQ|I=yl0?0_l5eOKs1C zhW^mg-(hZc3V|3zylW7xNZy((zC7pUfhE{0d5Z&QtGae*)-b^lC=9PEk(Jzf0UO>9 z!nql0kb5RSWxz2}H^1J`Kp#-}?j^%?evdCUe(A9)W=}R8{w%iV6zu=~p%6K1k4l?* zk*BX!pCkp%a)A+x&Vf$-Y)~@RRCFQqQ|W!*vg|C*6JK3h#eTl#xeCopig+HTr{J_i z;12t_^aXugG0U%5V=ubT&1d@?j>yIsy(enSQmE-~@)H1!c~FY6$niiBr}uQynexNF z$Zq%{CB>`CZ$W4#Kv-d@{bh=yNs)H}T0M);T9hR2ji$X*$OD}OoI9V!l{TC$%;bzC zMbg7;4v;ngSbLUNAD>cc=f7>8T_pB~k^`B&?d#jFUQ^vw+%Bjt`k%0uYwXD8TUxGT7| zvkg1Cwu8&mA_Hv%IYB*Bx1XV^pswxhe*ThM<~;YJ-mD($Pi1?Zs7h@6bL(TpN-B`? znvdfM=8rUFUR_?RwweshztB`VpTo&ns=sTm4v@*-@s8lIwMuGE_F6+C$g=T#H%ZuW zMKj>n%xG&o_fcFVHDNLc z;WvywYy`^^Dp%9;ewiL=M8j8{Z%%|O+l`%P2*ZEWh>gnHbF(FYYl$r^(bI>CYB+kl z^pEPDW*Uo`m0@P7&Qkfev+r3v9~syj|IC$D(AD5d_Q{jhzXoCT^bNY}bm-S|wyyVm zVNnLXaLtgd*G;rz^b|~l!(S&nDTWM8pCz{u^{(ww=i$}drReHktz8o$UvMDtkNpK<`P1a36*Ap>Hs4Erd_buabDck&o`m zY(KAsAs{T(?7XmrNZ)5=rN8HwUvmM1d1{7)rKNz>424%>%;2Eu^r_i~?cPaaa)!;L zaoxy5#I(LmQ&7v#!3J4aPya`EaVr3Mus9vy**>1>nofW*TYbFx=D7B+AltitLKmWb z=%TdZ=x>e(%{>ZJC??T_SFa9Pi2O!p5Ekb&g-M^XD5I+ZUrq=gM=d(39Xt1+*#SZQ z!3suf0nSx-u60U)1vzMR<*`0~`aw`&ahtjVB-ZJA@7-PNDO#GIa9!i3t{LWvWA`oX zpFMctzz6(kYH<=ZKQrK)C?uqf7>KwTLoU9e?>9oj|LumqhsYMN-?ym__b z4#fBE0rMebX~TP`<1YS4+4s~|e?91QbI1FDeJ~McGd>91i z?MAl~WY+n_fCIozHG{t~MsIHVjW^^pV9mY*!z-n_bbNECgB{)E3`MwNM+y&|3t_nQ z3+>yO3m?3$X$MrX%)GZU7hUS;wO{zET(86Ou4)YHde9LI%w|DUbLp{lke{B8-zi#* z&S>Wj>BsHTJ5-RiQdngQFt!3qY^q0&wjPUT-6Z)F^+u#eZtb$z++p1r&f=U@f2_qG z7sT|u@*)zx233FO*1BpdI>7aFck3k{^_-MG@r0nuyGPOw>2nds#F54(xX z8c@R(5MI;gC&JaX#I<}nsTPt%9WB;T8gJDnu*?W&PUQiTl%jA$w3kkAJDz7`J~%yd zcW}(}Mdq&`&&NM@5p^Cu?xQ1}9Qwu(mH(0dJDYa`4hb}XKyKKn7sw=#&2$8#)+Ub8 zW##sEf%9o+3!#lc!{iFQ@R`qAb$t9H?^DwE=NdMj&40YYan*PkPzOPB>*`-?<#$UL zIe`bHL&4#54ZzfAmu{Vpq5Bp!jkcRR?4}=CeuTf0Xa~cb!v1t(LT+mNJW+Fj7#3T3 z`**b30rL23XX*M!(NBMWhY}8-0yTJeS&n;n9hP*`@W!UG6YCNMY*r%iovYcH#b`?Obr!lL%@|IRxm2zx{RBY45;kArf%HXrUn{hml`^&QO24*ftmt;b{c$ z_EKj{J?CQSX4}4sOrihMcG+b&Slc-p$`=@Sc6ohkH`MY^LYaTZlm)m3k((pJQN}$( z;Fz`Z9E>_9dufDF({N0oq*UE=YJ~f%<%`WdFoH(kn%h7xd~cp7Az+gBPdmZ(d5A@B zbyZoG)ynY7b>PZ!iD=`Qr|KE)?Y}@YXKqaBRWj<15Sud(2PGYlo5SzEihTgP zn_#rL15!0HQf;6_G@wiw*VKHVAL4Er1)oefA44eDI7&OgcR~53;?Hs36k$Hv>%g^Z z5@aXnw!^{lY*cTf!R&>Q{-OYxB2k_DDX81UbwSwN2}ic4cXpN;J}!IorV58 z5K>Z=E6deQX7iJ!c^Ph3DB0Pf%}XF366)gqd~Z%VuXmhfE5?~^`0nv^nDvNLN7i#3 zrnrKTL4>2=hyzL^e_8k=?=wT3m*R-ykMVa8V?dEz9Ks7tB@LMmY5^lkUmoEkkld~E z08R9oZN%TV#s>BZsaRvfB6Hd!s7t`ei}!Sh!y2-IL47v+>ICC`;t$>A@?%iuWexk{ z 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 literal 0 HcmV?d00001 diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png deleted file mode 100644 index 2a6a9fc31608db3270864471895746a2ca3c4ae6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1769 zcmVVb$x*ZEFCBF(owO#W(s4w}*EA!FWjMYPCF~)B zqKJtSm`Of>-M!D#w=C?d-34|@)|oxCGYt2hd++al=lg!Y-*+zVx9kCWdVhP$jw;3ypg%kMUal|TzWT`O7b^oSU4&Hd;drF2v6w+5Qw&C^?0a>!}Z>>r6TuU4#l;zzQoq zX&5^$iRgH|E>Em$aIXK57-s%>-Yn8kf!koAv(mWSw+siC8o$dn0@toPB)U#m_JR=G zgKFbk?_>&~9i0pp*r47*UmU?jcX5)d zQHLRq*B*2W@SJo$HG#ECoeCFVjUB@3SoGlmYt`N6YT9r}q#7zHRq{&|$4rhu%?a>& zG`J9xuFtFtSQp^g+ZGt+jNzg1zc?=4ZJ@Oe=*GjMz}rrh*Q&3i^8nO7;(IU^ceD#t zD$n9hh;E~mW{u|32HN0E8p?k5njVU2@pd!A*f?0=(8ZhT_ET=l5314Kh=U=u0O7(T zdvsxzPZ3;~8xESSPEVuf@z$dv#M?1vKu_k4=Y(KLEkL;N$TuhQaZ%38tLn5*j)=g! zPWMF6?fdlOBW{|uWFnu~n@Gwdge%D?sSjD4!Mh&Za9FH+=xG;?I`mDU{9Bci)FO2F z{V9T^1Q=k}mjM7LrKr>!d0{9cNCT7L4CLu6>dsRVNBRcjA)l%e=!9v5a?Pbn~7 ze|ZWn`L#;jTP)8W%{kcm-Aq^+I&Um5sh*QzY%P$k)~FoYX1J0{GoEChPxf+lU$MMs zg5VmMU1y}RiR|m+d0#8|avGPNYspArd$p*^xJ0&~Oc@o=#zuLG@cv@CtQv7`&s}Vj z057X?vrenHt&JH(97k&I(_e0=bI0)hbMB?5xE-h6NNvG5e#?*EIRY34x3|<7Z)adl zvr^q&`|Fb;VC7rup~eqp%@QrG)*P8#_NP`>l9a>uQ962S4F_ zj|(@|x<;DXpO{;-FSsedkT&aQ>xwENm8HaJvTLzn-C;2~hD4e?ZIds+*z0yQR7|7^ z1J653$12m9?##Zo4JMuQR`b6!7hYAtaJ7Y&2u6R`)65ZUOgCoMXbvO;4jw5{mgQKw z8?b9=@77ajp}oeK^<}l-8qI|lAbx9R>0PlNzpUi{u5gUal(n%vQdRWxHTCRAdYA5q z-9MNdD3bN=`r<1eeC93?K2VAM2O>0e6gPDQ>p~r9ZJr1@NQiSPwuv^Y7kbzx8;zk~$FD zPa3$Yc{s0y8A5U&=Zis}z$0CkuN^8%Y|T9=Hr(*oC1qwR2Z{q_y?l=)w@@|;!TDV% zHRulD2Vyq7AF*44HF@H(QYA3BFu?Dgt56gT?^t9Q+Lzef9JKi7Z>ZO9Ya9u};(!__ z_aWeA?>wZhZZn@KSAZ{f{UjN6!EPlbL^FEMt+-cC6M(<{w;Qb_gRIb$Skf~BubwWH z*J@z5e<+cG7g-V%R*vAyHJ+XE$XJpTL&|QcJQrwm83v~fY<{Jr-b^kt?AfVs}AOmBNonwI&YZp)Xo1iFY zKrbdX5(AfI@3w3!5W#MD)b=L?_>Vilkgy8fV;^=TuRW@!D(ec0SKl^QV4uzqA|j%81w6k+J-eft*egnWZ; zzMxFLcuTFfAd}8-7Ww+(PMhHNjl`F$wE)zsy*pO}qM5pST5qNPKWDIhEFZ8~MJ@fm zvD#(g`d=DkTB{#2*j6?35e(Yq2ZcWahT(?chT(?chT-}d{|YbwSQ?>|cf>9e00000 LNkvXXu0mjfTLe?@ diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29~ipad.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29~ipad.png deleted file mode 100644 index be8f88805211134f7a2ccf434c1251e04ccf6174..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2064 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 UoL~3B>Hq)$07*qoM6N<$f(IV5J^%m! diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40~ipad.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40~ipad.png deleted file mode 100644 index c95b6faced422f6a69c299589aaf87197a31b5ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2452 zcmV;F32XL=P)4Tx05}naRo`#hR1`jmZ&IWdKOk5~hl<6oRa0BJ8yc;~21%2p?MfD<>DVeH z9(p*dx19w`~g7O0}n_%Aq@s%d)fBDv`JHkDym6Hd+5XuAtvnwRpGmK zVkc9?T=n|PIo~X-eVh__(Z?q}P9Z-Dj?gOW6|D%o20XmjW-qs4UjrD(li^iv8@eK9k+ZFm zVRFymFOPAzG5-%Pn|1W;U4vNroTa&AxDScmEA~{ri9gr1^c?U@uwSpaNnw8l_>cP1 zd;)kMQS_;jeRSUEM_*s96y65j1$)tOrwdK{YIQMt92l|D^(E_=$Rjw{b!QT@q!)ni zR`|5oW9X5n$Wv+HVc@|^eX5yXnsHX8PF3UX~a6)MwxDE0HaPjyrlI!;jX{6Kvuh*8ej?;85ekN$?5uuCiS zBTvvVG+XTxAO{m@bvM#Jr)z6J><&E22D|vq?Y?Vkbo_DijopiF$2PET#mZ8eu=y$(ArYkv7@Ex`GL?QCc!_*KFrd&;n1r7 zqW-CFs9&fT)ZaU5gc&=gBz-DaCw(vdOp0__x+47~U6sC(E(JNe@4cTT*n6*E zVH4eoU1-&7pEV~_PRe`a7v+@vy!^5}8?Y3)UmlaER000FmNklQ>&)M0@Zn8Uh>;w#w1IwMqz2|=OopZi>5}~AS*uX3{*DS`C zfHnuvX@uq&oOKM&v?R<}h+`UH=q6uA+$nFV^-}6G_bWXHtSFPvSnoxIfWE#z2sLa# z5Oeowt#k~K+43j?4({-wa_ zX4a`W2B=d=HO;`jwg~*!%@SEyBw#y%j3;x_2}nl(wJ5OmUKx8{%0qFXfcFWcWzVda zQMu9$p5w%F2FT2n-YVk2b|0SK;6cZ(eDq(|aPG26o7XL%VT%HZvfN2k=M0d8S-wn! z|C*^OTn>K+bnH16hLIG*nmgTCS1l8ZxvOJNRjjGNU8~$^B3Wtg)6jb{h6{sn`27X~ zfhbP=qJhD&HEr?Y4Bd}}47hTTooO@3;gU&K8foM5MIstDD{v8gEnkKqdjMTG@WJO{ zgp;{fUMk|L8U-;bq+D#;06FP5-sizX6(;$F2OU3ah{sI;ZdpM8c?~T;qzY!|CIw3t zO9XQI5VHbgmZGYW@ngL!Di-i&9Z{9Ewx3jVo>U27YK=~HviE2hgUM#SC{Mu4bxI;P zv-zE<(lc_9!Fjy`Y95p!ODX&u#vv+#s@vTtD>0KPaKpffJ{`3iJ&9^%%)Fk(I~W2E zpHlJ0;|lmdd74=Nx<|u2`Zk|;tY7~X9X;o?#5(K4tuX^2Gf|M|Li2Mz_$b%X?NFDB zM_0+CkB**J@#141R4vb*{h!kO)4#{?z)Fce7I>A!`wEHq=DW=TvK)2MDfHx70%$!* z8&jW>_K+{fr}P=B)O^K-1qG&?fk7R-*bW@~sIT^*?~hobf#CaMpMW+3J#=-f_qe4? zJZYR|FeuResuoB4*(mZU6dW?{Q2wIuzOX?VUEcbA6lIG9d_$obyWQv%NaSmn82gMs z$wb<9lA3LgcyRE$2v#qX5}{}58TeBN@0-ms0P=!=$muJ4M-uZHpqrxFwyOYnNqna$ zBu6^JQ?AN_eCl>~=40#q=63yb+C01a2E^p@2z=uBX4~5nt|R6sn(`~+A=SNoAaI5*@0t*Yyt91ZkKLeAmSYoWy_9GVf4|- zz@j`AV|GLW(b679=dUrmdpwMbejRUb^P+(Ad9sctBgEr3EiG~3SdWVOH6$gp(Y`Mt zw)rxCt#!{VaoW6gU<9p=KCE79ZhO;w5j#E#Ql3-yZ9|nUKu&xYE#fv_pfcG1Z3LHw zbPQ7UN@G>R!ZG2CJGPky4xjZey@L_|2xvzZNU^ADiHLJ@aRzO1iwW9cm} zbaqD*;mYP{vS-XElo$w05DG3?RSf zwYytG(8%{zI;rN-xgCw!iInNloqmkH-fA8}{f9ve z)AetcViQ)eVE6Ag&cC(y$T-;>MUWwZF4Z)(SLb82hb_|a}56P8T=Qk58$sZ S_e{C~0000f+W(^ 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 diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-72~ipad.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-72~ipad.png deleted file mode 100644 index 373b7cdc5e030757a16b932750d551757a2ac516..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2221 zcmV;e2vYZnP)F(O!+-@Rt73ofOQjIjH-jAH*b=B+py?gI>zx%3!a{f?HU5SIH zuF&BEbAh?QTwpFR7nlpo1?B>4^I$H`*XRZnQVIMN7$mS1xdMP8iV7&i%c1dkY>y6f znO{3pt&1!osSYe4lL1}vvgzWW?il`@Gr}16OyE=l;h0p;FHlC*tF-Xb+V=;C7 zw6Utx>YdxKXC@A08zqvGzzCthCq4nau|xUh2i@}N!U;lqAJX)c0tP9i>XfX93s+Df zbpf(ulWg%$?`(R`a4sMx%V{{hV3FgCDms4z zzRaBk-1(V4+4Re^J%_4{m$xgHi>KvtxAbO`5s(f81GbW}yj0d2kXk58W@UJgW>BREHBkMR zoyP()RnU`}@e^l&a~>VXzdA=O-ldct)V+L@#qi7aZ?zA;RxP*B9l`a_!9nFR3&jX$ zkcAU?OEUrt&)Q=x-6TO<$(yGI z7Wu36wPjZCfO;(K&o(+l{SE+wq|frgehZfQeaH28zEZ&z7vBN_3BW*+SV(oz1Rg%p zjmrQSSOa@JcO=)VBW+Q@OE<}qLYU^h0fO`NS>u@!EA{7f!!vJT!T)XN5GKCSz~GV^ zFE)Vb`gX?iM)8(;pojH)6t95lLnKyOuKP@xR=^JLW3u6)+xgAq8q^6rZq0^HkHhf} zh2jB|R3JJ$HjmX}$T@*Q@9$ObDq!1tOj}$VATMoGo|+G5VC5Eh zL|^>GM4`oi`SS)D{Py5z(+a;C#_c(xgNE*y9y25lR~x&JXngFtN4MBk#Tn0iB99%w zdd#?>F7N$bf3T3ZlL_-jab$k+i^pD*7m z%^uFBi?;F~Vs-LO-1DVY>WA?DUxNW!Bw4J8VprtXcPjVYW(~qE2Q=WDse@Vj7R(sJ zR-FkuIXbsrER!20>V>Vcq$XyVZD27L_;8=vIfDifWFeb%pUa@665Cot{kD)_yRC`( zH_c!~zmakAc67Ik*8v0R({d=Q}KcEpJa$OIndC>qtL6a9FR zRZo=pwGI2VW>tKmBTYmf>{0I?%4Ye($914H7yN=Bbscm3wDHK_Lt77OX(DnS7^qSf z(=~NQmKR5(1r-mBfsg~hfcjyX`LBmSJ2$Zu9Ft!O>8J z?7AwA9+$_=doA>6ap+`2Q#QT*rLyaY=HVSXs{qYjQEdR-L-of|)&Y5}m?3s(XZN_D zwjYO`+oL~D6yE!t7nYv%Y~ZyW%84JtPf`TuPGHV)9dv8WwiDpDX*aV$dk+om0#kL8 z*EJl0+3D!nnc}K@#U0;iMJoc;b%bXrX9vrm!_~UhT)#8=I)-PEozqp?<}N}C<>y{V ztwG&!VSlFT48ch_{O1|!Kb89SZ<|rTxmVK}USt>!0fU9oJ=6_dF92Kjx$^Ma62uIR zoCgN{K?nj?JfF$YjWfU|PK6>gKM>!!S2qD${i*y|afl9UJSs^8dOUxnK7Dmy&-c3J zI4q@ zg3^gE;R{&c9O$y4u58$^f)D|TBXYLVx@F}7r8y^yUb9VprAz@ulMJ?K!F42Doy+`s zWvv9d$7fHwAv^ym0WJzEVNHN8IjU%Qu*LQh+m=>@S_#bl^MN|wXgjU$e`ZMMZAiop v_YG4Qm4gMwk00000NkvXXu0mjfkYg(C diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png deleted file mode 100644 index 6efeacbff355df5d009da4befbfc24d7fb216baa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4846 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 diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-76~ipad.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-76~ipad.png deleted file mode 100644 index a68be4d33ddaa558ac67af51b5eef740acd38926..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2353 zcmV-13C{M3P)fDAweAlu8qwdTVVjd7_2AqFF46+0qijf=!b;0gV?pLW9= z_N(iQRf~W+6r|lnrX=&PKV%6DGQl1kz)x6YFFc|Li45r&bJC%ZF@5-~Ut6yb!hu=l zj6quC75g0$uvCp1(i5|uu{rD~+@t|K#BfJ|1PFmcU+&XDb*N)bx(H*d=^Y|m zEdo<`MEi7?Lbba(Tl5f z`7vm5$dLK|xUXTDpdUSLo7A5NA$?>p-`U2lD^@Sm5J-|9uLCi$5jcCd3L1q_`x!~- z>JKjR=rDdr9In$I9zB;PEO=O2vq#xfLQlZ~F?edSnNCnU3RhWU67FQ@j-&1ALj!r6 z#J-s$J5_oTK0jK#E0nFDX4)tuj0P~=5zLZ$1CzU7(+#rkg#O`HI-NvzVP~cZ;Ehn* zhlDQH%FM`KTv`%0Im^Cy)Ad2CyllLiCxbDth$t&hIbCH?*FOFWp>GU!C=6=jkdO<& zk-j)ig7Ev`3G1Os{eeaHoFa1)F3FQmUNi*Eh?qHb$yl66rxUAy=8l&j+Zb(JU4L+b z-Uv^o2=MOOXy~U0%CinlKgp{{Qh*yjqQ+!=8YF8 zFL8iADUGhGLBrtb&4(oJuFV=Pf*rXTC(kik%CycF)HfPar?Pjcps3J$LYgQYeDObZ zbD1_g!J{)NKjX&q;o$6uMDAvG59IpjIb-?P3Wu8w>E@i8EI|5dd%g>{5lfg15j(cOR>)v>d_w3H>vEqUp`8W3pja*xNT>s~01>?p-x9K?v0n^CY ze|@dQhO<4p()U@CFAt96ydi|6Uo?*EikH_jv~YQJ82Z}=SL3BX|ElYmY67wPL<;?; z51%zQAJS%z^`S^UYqYSoNQE0x?XNr_-rgwt7xHGs{L)kUsf)%h2hwQ+#ulXiclQgvcICN|;)x5! z{)##=-FZZt@}9lmp!%O@t>>yqerdzvWA$RMfomc?BIc7FGN`LoFJ1~twRss5W+_X+ zEXg|Wb z;X$!@=7-Ku8=?{t=xURL*|Zt3d8S&k45u;oM6+|!8%P^(=gQDak!PB{Rss)f5c2qa zbhOV&m%civfim&f|H4DeS|fRWj0g^sI<;)GQg&Lm@VDeMZ346Rn4VRyLfb6_%}5hn z%`&vUK_b)TF+<}ya0t{XPr6)i3=T85e!x^T)5eCn!Tjc1EhE#Oy<2_tLFuIo3Ff4%`NrwnCM>M|9v&os ztEAeueygq7qt;(%HG42&;Q}{IP2{$h>)Q`&&!h^E4i!M~MkaE7da$5CPKDvU?z;~) z9(Xp-BCt`4hTuuu)kO!SiWw`M6&H!va@*Edgnf0P+O0EM^?Tc(SngVJJw5_QhqF0F zDy+G^thoCSuCmJXio}`Ita&Bs=(p^-2kI&ps|uAJ<(jRfH^u<~ZkU?Dg;;2miT(JA z{RO*BT7FI{8cFER4vWWYU$8wnTzKtsdHOQPwsLK0zASQnDeyzAoUd(|Wcq!)z#&3f z8WLXZ;Mlr|oR%yU%(Ep$vXA}UaRLIB_Xnf7ATB!Aur*JD1D z_aHNOg<@4_u;2DLB?0X?tnE4007|fgdW5mMcN?4Db`aiKOgI~JL%DHjf&7ORPDm=O z-!>L8GPiN(f9ky0P|!-ew>jBcNL44jBk{Er3D~z+vRx3RoIm&D-Nt|^IfmYkhl2+=~S0!>XO?giQM(H|L(CdgWzZ5wOT7oMThJ|>hj8N0$8}b% Date: Thu, 2 Jan 2020 11:23:48 -0800 Subject: [PATCH 18/25] File re-structuring + podspec update to 2.0 --- DZNEmptyDataSet.podspec | 39 ++++++++---- .../Applications/AppDelegate.h | 0 .../Applications/AppDelegate.m | 0 .../Applications/Application.h | 0 .../Applications/Application.m | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-1024.png | Bin .../AppIcon.appiconset/icon-29.png | Bin .../AppIcon.appiconset/icon-29@2x.png | Bin .../AppIcon.appiconset/icon-29@3x.png | Bin .../AppIcon.appiconset/icon-40@2x.png | Bin .../AppIcon.appiconset/icon-40@3x.png | Bin .../AppIcon.appiconset/icon-57.png | Bin .../AppIcon.appiconset/icon-57@2x.png | Bin .../AppIcon.appiconset/icon-60@2x.png | Bin .../AppIcon.appiconset/icon-60@3x.png | Bin .../Assets.xcassets/Contents.json | 0 .../Contents.json | 0 ...button_background_foursquare_highlight.png | Bin ...ton_background_foursquare_highlight@2x.png | Bin .../Contents.json | 0 .../button_background_foursquare_normal.png | Bin ...button_background_foursquare_normal@2x.png | Bin .../Contents.json | 0 .../button_background_icloud_highlight.png | Bin .../button_background_icloud_highlight@2x.png | Bin .../Contents.json | 0 .../button_background_icloud_normal.png | Bin .../button_background_icloud_normal@2x.png | Bin .../Contents.json | 0 ...utton_background_kickstarter_highlight.png | Bin ...on_background_kickstarter_highlight@2x.png | Bin .../Contents.json | 0 .../button_background_kickstarter_normal.png | Bin ...utton_background_kickstarter_normal@2x.png | Bin .../header_pinterest.imageset/Contents.json | 0 .../header_pinterest.png | Bin .../header_pinterest@2x.png | Bin .../header_podcasts.imageset/Contents.json | 0 .../header_podcasts.png | Bin .../header_podcasts@2x.png | Bin .../icon_500px.imageset/Contents.json | 0 .../icon_500px.imageset/icon_500px.png | Bin .../icon_500px.imageset/icon_500px@2x.png | Bin .../icon_airbnb.imageset/Contents.json | 0 .../icon_airbnb.imageset/icon_airbnb.png | Bin .../icon_airbnb.imageset/icon_airbnb@2x.png | Bin .../icon_appstore.imageset/Contents.json | 0 .../icon_appstore.imageset/icon_appstore.png | Bin .../icon_appstore@2x.png | Bin .../icon_camera.imageset/Contents.json | 0 .../icon_camera.imageset/icon_camera.png | Bin .../icon_camera.imageset/icon_camera@2x.png | Bin .../icon_dropbox.imageset/Contents.json | 0 .../icon_dropbox.imageset/icon_dropbox.png | Bin .../icon_dropbox.imageset/icon_dropbox@2x.png | Bin .../icon_facebook.imageset/Contents.json | 0 .../icon_facebook.imageset/icon_facebook.png | Bin .../icon_facebook@2x.png | Bin .../icon_fancy.imageset/Contents.json | 0 .../icon_fancy.imageset/icon_fancy.png | Bin .../icon_fancy.imageset/icon_fancy@2x.png | Bin .../icon_foursquare.imageset/Contents.json | 0 .../icon_foursquare.png | Bin .../icon_foursquare@2x.png | Bin .../icon_icloud.imageset/Contents.json | 0 .../icon_icloud.imageset/icon_icloud.png | Bin .../icon_icloud.imageset/icon_icloud@2x.png | Bin .../icon_instagram.imageset/Contents.json | 0 .../icon_instagram.png | Bin .../icon_instagram@2x.png | Bin .../Contents.json | 0 .../icon_itunesconnect.png | Bin .../icon_itunesconnect@2x.png | Bin .../icon_kickstarter.imageset/Contents.json | 0 .../icon_kickstarter.png | Bin .../icon_kickstarter@2x.png | Bin .../icon_path.imageset/Contents.json | 0 .../icon_path.imageset/icon_path.png | Bin .../icon_path.imageset/icon_path@2x.png | Bin .../icon_photos.imageset/Contents.json | 0 .../icon_photos.imageset/icon_photos.png | Bin .../icon_photos.imageset/icon_photos@2x.png | Bin .../icon_pinterest.imageset/Contents.json | 0 .../icon_pinterest.png | Bin .../icon_pinterest@2x.png | Bin .../icon_podcasts.imageset/Contents.json | 0 .../icon_podcasts.imageset/icon_podcasts.png | Bin .../icon_podcasts@2x.png | Bin .../icon_remote.imageset/Contents.json | 0 .../icon_remote.imageset/icon_remote.png | Bin .../icon_remote.imageset/icon_remote@2x.png | Bin .../icon_safari.imageset/Contents.json | 0 .../icon_safari.imageset/icon_safari.png | Bin .../icon_safari.imageset/icon_safari@2x.png | Bin .../icon_skype.imageset/Contents.json | 0 .../icon_skype.imageset/icon_skype.png | Bin .../icon_skype.imageset/icon_skype@2x.png | Bin .../icon_slack.imageset/Contents.json | 0 .../icon_slack.imageset/icon_slack.png | Bin .../icon_slack.imageset/icon_slack@2x.png | Bin .../icon_tumblr.imageset/Contents.json | 0 .../icon_tumblr.imageset/icon_tumblr.png | Bin .../icon_tumblr.imageset/icon_tumblr@2x.png | Bin .../icon_twitter.imageset/Contents.json | 0 .../icon_twitter.imageset/icon_twitter.png | Bin .../icon_twitter.imageset/icon_twitter@2x.png | Bin .../icon_vesper.imageset/Contents.json | 0 .../icon_vesper.imageset/icon_vesper.png | Bin .../icon_vesper.imageset/icon_vesper@2x.png | Bin .../icon_videos.imageset/Contents.json | 0 .../icon_videos.imageset/icon_videos.png | Bin .../icon_videos.imageset/icon_videos@2x.png | Bin .../icon_vine.imageset/Contents.json | 0 .../icon_vine.imageset/icon_vine.png | Bin .../icon_vine.imageset/icon_vine@2x.png | Bin .../icon_whatsapp.imageset/Contents.json | 0 .../icon_whatsapp.imageset/icon_whatsapp.png | Bin .../icon_whatsapp@2x.png | Bin .../icon_wwdc.imageset/Contents.json | 0 .../icon_wwdc.imageset/icon_wwdc.png | Bin .../icon_wwdc.imageset/icon_wwdc@2x.png | Bin .../Contents.json | 0 .../loading_imgBlue_78x78@2x.png | Bin .../loading_imgBlue_78x78@3x.png | Bin .../logo_500px.imageset/Contents.json | 0 .../logo_500px.imageset/logo_500px.png | Bin .../logo_500px.imageset/logo_500px@2x.png | Bin .../logo_airbnb.imageset/Contents.json | 0 .../logo_airbnb.imageset/logo_airbnb.png | Bin .../logo_airbnb.imageset/logo_airbnb@2x.png | Bin .../logo_dropbox.imageset/Contents.json | 0 .../logo_dropbox.imageset/logo_dropbox.png | Bin .../logo_dropbox.imageset/logo_dropbox@2x.png | Bin .../logo_facebook.imageset/Contents.json | 0 .../logo_facebook.imageset/logo_facebook.png | Bin .../logo_facebook@2x.png | Bin .../logo_fancy.imageset/Contents.json | 0 .../logo_fancy.imageset/logo_fancy.png | Bin .../logo_fancy.imageset/logo_fancy@2x.png | Bin .../logo_foursquare.imageset/Contents.json | 0 .../logo_foursquare.png | Bin .../logo_foursquare@2x.png | Bin .../logo_instagram.imageset/Contents.json | 0 .../logo_instagram.png | Bin .../logo_instagram@2x.png | Bin .../logo_kickstarter.imageset/Contents.json | 0 .../logo_kickstarter.png | Bin .../logo_kickstarter@2x.png | Bin .../logo_path.imageset/Contents.json | 0 .../logo_path.imageset/logo_path.png | Bin .../logo_path.imageset/logo_path@2x.png | Bin .../logo_pinterest.imageset/Contents.json | 0 .../logo_pinterest.png | Bin .../logo_pinterest@2x.png | Bin .../logo_skype.imageset/Contents.json | 0 .../logo_skype.imageset/logo_skype.png | Bin .../logo_skype.imageset/logo_skype@2x.png | Bin .../logo_slack.imageset/Contents.json | 0 .../logo_slack.imageset/logo_slack.png | Bin .../logo_slack.imageset/logo_slack@2x.png | Bin .../logo_tumblr.imageset/Contents.json | 0 .../logo_tumblr.imageset/logo_tumblr.png | Bin .../logo_tumblr.imageset/logo_tumblr@2x.png | Bin .../logo_twitter.imageset/Contents.json | 0 .../logo_twitter.imageset/logo_twitter.png | Bin .../logo_twitter.imageset/logo_twitter@2x.png | Bin .../logo_vesper.imageset/Contents.json | 0 .../logo_vesper.imageset/logo_vesper.png | Bin .../logo_vesper.imageset/logo_vesper@2x.png | Bin .../logo_vine.imageset/Contents.json | 0 .../logo_vine.imageset/logo_vine.png | Bin .../logo_vine.imageset/logo_vine@2x.png | Bin .../placeholder_500px.imageset/Contents.json | 0 .../placeholder_500px.png | Bin .../placeholder_500px@2x.png | Bin .../placeholder_airbnb.imageset/Contents.json | 0 .../placeholder_airbnb.png | Bin .../placeholder_airbnb@2x.png | Bin .../Contents.json | 0 .../placeholder_appstore.png | Bin .../placeholder_appstore@2x.png | Bin .../Contents.json | 0 .../placeholder_dropbox.png | Bin .../placeholder_dropbox@2x.png | Bin .../Contents.json | 0 .../placeholder_facebook.png | Bin .../placeholder_facebook@2x.png | Bin .../placeholder_fancy.imageset/Contents.json | 0 .../placeholder_fancy.png | Bin .../placeholder_fancy@2x.png | Bin .../Contents.json | 0 .../placeholder_foursquare.png | Bin .../placeholder_foursquare@2x.png | Bin .../Contents.json | 0 .../placeholder_instagram.png | Bin .../placeholder_instagram@2x.png | Bin .../Contents.json | 0 .../placeholder_itunes_connect.png | Bin .../placeholder_itunes_connect@2x.png | Bin .../Contents.json | 0 .../placeholder_kickstarter.png | Bin .../placeholder_kickstarter@2x.png | Bin .../placeholder_path.imageset/Contents.json | 0 .../placeholder_path.png | Bin .../placeholder_path@2x.png | Bin .../placeholder_remote.imageset/Contents.json | 0 .../placeholder_remote.png | Bin .../placeholder_remote@2x.png | Bin .../placeholder_skype.imageset/Contents.json | 0 .../placeholder_skype.png | Bin .../placeholder_skype@2x.png | Bin .../placeholder_slack.imageset/Contents.json | 0 .../placeholder_slack.png | Bin .../placeholder_slack@2x.png | Bin .../placeholder_tumblr.imageset/Contents.json | 0 .../placeholder_tumblr.png | Bin .../placeholder_tumblr@2x.png | Bin .../placeholder_vesper.imageset/Contents.json | 0 .../placeholder_vesper.png | Bin .../placeholder_vesper@2x.png | Bin .../placeholder_videos.imageset/Contents.json | 0 .../placeholder_videos.png | Bin .../placeholder_videos@2x.png | Bin .../placeholder_vine.imageset/Contents.json | 0 .../placeholder_vine.png | Bin .../placeholder_vine@2x.png | Bin .../Contents.json | 0 .../placeholder_whatsapp.png | Bin .../placeholder_whatsapp@2x.png | Bin .../Applications/DetailViewController.h | 0 .../Applications/DetailViewController.m | 0 .../Fonts/Ideal Sans/IdealSans-Book-Pro.otf | Bin .../Applications/Fonts/Lato/Lato-Regular.ttf | Bin .../Applications/MainViewController.h | 0 .../Applications/MainViewController.m | 0 .../Supporting Files/Applications-Prefix.pch | 0 .../Base.lproj/LaunchScreen.storyboard | 0 .../Applications/Supporting Files/Info.plist | 0 .../Supporting Files/Storyboard.storyboard | 0 .../en.lproj/InfoPlist.strings | 0 .../Applications/Supporting Files/main.m | 0 .../Applications/UIColor+Hexadecimal.h | 0 .../Applications/UIColor+Hexadecimal.m | 0 .../Applications/applications.json | 0 .../Colors/AppDelegate.h | 0 .../Colors/AppDelegate.m | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-1024.png | Bin .../AppIcon.appiconset/icon-29.png | Bin .../AppIcon.appiconset/icon-29@2x.png | Bin .../AppIcon.appiconset/icon-29@3x.png | Bin .../AppIcon.appiconset/icon-40@2x.png | Bin .../AppIcon.appiconset/icon-40@3x.png | Bin .../AppIcon.appiconset/icon-57.png | Bin .../AppIcon.appiconset/icon-57@2x.png | Bin .../AppIcon.appiconset/icon-60@2x.png | Bin .../AppIcon.appiconset/icon-60@3x.png | Bin .../Colors/Assets.xcassets/Contents.json | 0 .../Colors/Base.lproj/LaunchScreen.storyboard | 0 .../Colors/CollectionViewController.h | 0 .../Colors/CollectionViewController.m | 0 .../Colors/Colors/Colors-Info.plist | 0 .../Colors/Colors/Colors-Prefix.pch | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-120~car.png | Bin .../AppIcon.appiconset/icon-29.png | Bin .../AppIcon.appiconset/icon-29@2x.png | Bin .../AppIcon.appiconset/icon-29@2x~ipad.png | Bin .../AppIcon.appiconset/icon-29@3x.png | Bin .../AppIcon.appiconset/icon-29~ipad.png | Bin .../AppIcon.appiconset/icon-40@2x.png | Bin .../AppIcon.appiconset/icon-40@2x~ipad.png | Bin .../AppIcon.appiconset/icon-40@3x.png | Bin .../AppIcon.appiconset/icon-40~ipad.png | Bin .../AppIcon.appiconset/icon-50@2x~ipad.png | Bin .../AppIcon.appiconset/icon-50~ipad.png | Bin .../AppIcon.appiconset/icon-57.png | Bin .../AppIcon.appiconset/icon-57@2x.png | Bin .../AppIcon.appiconset/icon-60@2x.png | Bin .../AppIcon.appiconset/icon-60@3x.png | Bin .../AppIcon.appiconset/icon-72@2x~ipad.png | Bin .../AppIcon.appiconset/icon-72~ipad.png | Bin .../AppIcon.appiconset/icon-76@2x~ipad.png | Bin .../AppIcon.appiconset/icon-76~ipad.png | Bin .../LaunchImage.launchimage/Contents.json | 0 .../Default-568h@2x.png | Bin .../Default-hd-plus@2x.png | Bin .../LaunchImage.launchimage/Default-hd@2x.png | Bin .../LaunchImage.launchimage/Default@2x.png | Bin .../Colors/Colors/en.lproj/InfoPlist.strings | 0 .../Colors/Colors/main.m | 0 .../Colors/DataSource/Color.h | 0 .../Colors/DataSource/Color.m | 0 .../Colors/DataSource/Palette.h | 0 .../Colors/DataSource/Palette.m | 0 .../Colors/DataSource/UIColor+Hex.h | 0 .../Colors/DataSource/UIColor+Hex.m | 0 .../Colors/DataSource/colors.json | 0 .../Colors/DetailViewController.h | 0 .../Colors/DetailViewController.m | 0 .../empty_placeholder.imageset/Contents.json | 0 .../empty_placeholder.png | Bin .../empty_placeholder@2x.png | Bin .../search_icon.imageset/Contents.json | 0 .../search_icon.imageset/search_icon.png | Bin .../search_icon.imageset/search_icon@2x.png | Bin .../tab_collection.imageset/Contents.json | 0 .../tab_collection.png | Bin .../tab_collection@2x.png | Bin .../tab_search.imageset/Contents.json | 0 .../tab_search.imageset/tab_search.png | Bin .../tab_search.imageset/tab_search@2x.png | Bin .../tab_table.imageset/Contents.json | 0 .../tab_table.imageset/tab_table.png | Bin .../tab_table.imageset/tab_table@2x.png | Bin .../Colors/Info.plist | 0 .../Colors/Storyboard.storyboard | 0 .../Colors/TableViewController.h | 0 .../Colors/TableViewController.m | 0 .../Colors/main.m | 0 .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 60 +++++++++++------- .../contents.xcworkspacedata | 0 .../xcshareddata/xcschemes/Bento.xcscheme | 0 .../xcschemes/DZNEmptyDataSet.xcscheme | 0 .../xcschemes/DZNEmptyDataSetTests.xcscheme | 0 .../xcschemes/EmptyDataSet.xcscheme | 10 +++ .../contents.xcworkspacedata | 3 + .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 0 .../DZNEmptyDataSet/DZNEmptyDataSet.h | 0 .../DZNEmptyDataSet/Info.plist | 0 .../ApplicationsSnapshotTests.m | 0 .../DisplayEmptyDataSetTests.swift | 0 .../DZNEmptyDataSetTests/Info.plist | 0 .../testApplicationEmptyDataSets_500px@2x.png | Bin ...testApplicationEmptyDataSets_Airbnb@2x.png | Bin ...stApplicationEmptyDataSets_AppStore@2x.png | Bin ...testApplicationEmptyDataSets_Camera@2x.png | Bin ...estApplicationEmptyDataSets_Dropbox@2x.png | Bin ...stApplicationEmptyDataSets_Facebook@2x.png | Bin .../testApplicationEmptyDataSets_Fancy@2x.png | Bin ...ApplicationEmptyDataSets_Foursquare@2x.png | Bin ...tApplicationEmptyDataSets_Instagram@2x.png | Bin ...pplicationEmptyDataSets_Kickstarter@2x.png | Bin .../testApplicationEmptyDataSets_Path@2x.png | Bin ...testApplicationEmptyDataSets_Photos@2x.png | Bin ...tApplicationEmptyDataSets_Pinterest@2x.png | Bin ...stApplicationEmptyDataSets_Podcasts@2x.png | Bin ...testApplicationEmptyDataSets_Remote@2x.png | Bin ...testApplicationEmptyDataSets_Safari@2x.png | Bin .../testApplicationEmptyDataSets_Skype@2x.png | Bin .../testApplicationEmptyDataSets_Slack@2x.png | Bin ...testApplicationEmptyDataSets_Tumblr@2x.png | Bin ...estApplicationEmptyDataSets_Twitter@2x.png | Bin ...testApplicationEmptyDataSets_Vesper@2x.png | Bin ...testApplicationEmptyDataSets_Videos@2x.png | Bin .../testApplicationEmptyDataSets_Vine@2x.png | Bin .../testApplicationEmptyDataSets_WWDC@2x.png | Bin ...stApplicationEmptyDataSets_WhatsApp@2x.png | Bin ...testApplicationEmptyDataSets_iCloud@2x.png | Bin ...icationEmptyDataSets_iTunes_Connect@2x.png | Bin .../DZNEmptyDataSetTests-Bridging-Header.h | 0 {DZNEmptyDataSet => EmptyDataSet}/Podfile | 0 .../Podfile.lock | 0 .../Pods/Manifest.lock | 0 .../Pods/Pods.xcodeproj/project.pbxproj | 0 .../Pods/SnapKit/LICENSE | 0 .../Pods/SnapKit/README.md | 0 .../Pods/SnapKit/Source/Constraint.swift | 0 .../SnapKit/Source/ConstraintAttributes.swift | 0 .../SnapKit/Source/ConstraintConfig.swift | 0 .../Source/ConstraintConstantTarget.swift | 0 .../Pods/SnapKit/Source/ConstraintDSL.swift | 0 .../Source/ConstraintDescription.swift | 0 .../ConstraintDirectionalInsetTarget.swift | 0 .../Source/ConstraintDirectionalInsets.swift | 0 .../Source/ConstraintInsetTarget.swift | 0 .../SnapKit/Source/ConstraintInsets.swift | 0 .../Pods/SnapKit/Source/ConstraintItem.swift | 0 .../ConstraintLayoutGuide+Extensions.swift | 0 .../Source/ConstraintLayoutGuide.swift | 0 .../Source/ConstraintLayoutGuideDSL.swift | 0 .../Source/ConstraintLayoutSupport.swift | 0 .../Source/ConstraintLayoutSupportDSL.swift | 0 .../Pods/SnapKit/Source/ConstraintMaker.swift | 0 .../Source/ConstraintMakerEditable.swift | 0 .../Source/ConstraintMakerExtendable.swift | 0 .../Source/ConstraintMakerFinalizable.swift | 0 .../Source/ConstraintMakerPriortizable.swift | 0 .../Source/ConstraintMakerRelatable.swift | 0 .../Source/ConstraintMultiplierTarget.swift | 0 .../Source/ConstraintOffsetTarget.swift | 0 .../SnapKit/Source/ConstraintPriority.swift | 0 .../Source/ConstraintPriorityTarget.swift | 0 .../Source/ConstraintRelatableTarget.swift | 0 .../SnapKit/Source/ConstraintRelation.swift | 0 .../Source/ConstraintView+Extensions.swift | 0 .../Pods/SnapKit/Source/ConstraintView.swift | 0 .../SnapKit/Source/ConstraintViewDSL.swift | 0 .../Pods/SnapKit/Source/Debugging.swift | 0 .../SnapKit/Source/LayoutConstraint.swift | 0 .../SnapKit/Source/LayoutConstraintItem.swift | 0 .../Pods/SnapKit/Source/Typealiases.swift | 0 .../Source/UILayoutSupport+Extensions.swift | 0 .../Pods-Bento/Pods-Bento-Info.plist | 0 .../Pods-Bento-acknowledgements.markdown | 0 .../Pods-Bento-acknowledgements.plist | 0 .../Pods-Bento/Pods-Bento-dummy.m | 0 .../Pods-Bento/Pods-Bento-frameworks.sh | 0 .../Pods-Bento/Pods-Bento-umbrella.h | 0 .../Pods-Bento/Pods-Bento.debug.xcconfig | 0 .../Pods-Bento/Pods-Bento.modulemap | 0 .../Pods-Bento/Pods-Bento.release.xcconfig | 0 .../Pods-DZNEmptyDataSetTests-Info.plist | 0 ...mptyDataSetTests-acknowledgements.markdown | 0 ...ZNEmptyDataSetTests-acknowledgements.plist | 0 .../Pods-DZNEmptyDataSetTests-dummy.m | 0 .../Pods-DZNEmptyDataSetTests-frameworks.sh | 0 .../Pods-DZNEmptyDataSetTests-umbrella.h | 0 .../Pods-DZNEmptyDataSetTests.debug.xcconfig | 0 .../Pods-DZNEmptyDataSetTests.modulemap | 0 ...Pods-DZNEmptyDataSetTests.release.xcconfig | 0 .../Pods-EmptyDataSet-Info.plist | 0 ...ods-EmptyDataSet-acknowledgements.markdown | 0 .../Pods-EmptyDataSet-acknowledgements.plist | 0 .../Pods-EmptyDataSet-dummy.m | 0 .../Pods-EmptyDataSet-umbrella.h | 0 .../Pods-EmptyDataSet.debug.xcconfig | 0 .../Pods-EmptyDataSet.modulemap | 0 .../Pods-EmptyDataSet.release.xcconfig | 0 .../SnapKit/SnapKit-Info.plist | 0 .../SnapKit/SnapKit-dummy.m | 0 .../SnapKit/SnapKit-prefix.pch | 0 .../SnapKit/SnapKit-umbrella.h | 0 .../SnapKit/SnapKit.modulemap | 0 .../SnapKit/SnapKit.xcconfig | 0 .../iOSSnapshotTestCase/Info.plist | 0 .../iOSSnapshotTestCase-Info.plist | 0 .../iOSSnapshotTestCase-dummy.m | 0 .../iOSSnapshotTestCase-prefix.pch | 0 .../iOSSnapshotTestCase-umbrella.h | 0 .../iOSSnapshotTestCase.modulemap | 0 .../iOSSnapshotTestCase.xcconfig | 0 .../Categories/UIImage+Compare.h | 0 .../Categories/UIImage+Compare.m | 0 .../Categories/UIImage+Diff.h | 0 .../Categories/UIImage+Diff.m | 0 .../Categories/UIImage+Snapshot.h | 0 .../Categories/UIImage+Snapshot.m | 0 .../FBSnapshotTestCase/FBSnapshotTestCase.h | 0 .../FBSnapshotTestCase/FBSnapshotTestCase.m | 0 .../FBSnapshotTestCasePlatform.h | 0 .../FBSnapshotTestCasePlatform.m | 0 .../FBSnapshotTestController.h | 0 .../FBSnapshotTestController.m | 0 .../FBSnapshotTestCase/SwiftSupport.swift | 0 .../Pods/iOSSnapshotTestCase/LICENSE | 0 .../Pods/iOSSnapshotTestCase/README.md | 0 .../Sample - Bento/AppDelegate.swift | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/Icon-App-1024x1024.png | Bin .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin .../Bento-Box.imageset/Bento-Box.jpg | Bin .../Bento-Box.imageset/Bento-Box@2x.jpg | Bin .../Bento-Box.imageset/Contents.json | 0 .../Assets.xcassets/Contents.json | 0 .../Base.lproj/LaunchScreen.storyboard | 0 .../Sample - Bento/Base.lproj/Main.storyboard | 0 .../Sample - Bento/Info.plist | 0 .../Sample - Bento/SceneDelegate.swift | 0 .../Sample - Bento/ViewController.swift | 0 Source/Objc/DZNEmptyDataSet.h | 14 ++++ Source/Objc/Info.plist | 24 +++++++ Source/{ => Objc}/UIScrollView+EmptyDataSet.h | 0 Source/{ => Objc}/UIScrollView+EmptyDataSet.m | 0 .../Swift}/DZNEmptyDataSet.h | 5 +- .../Swift}/EmptyDataSet.swift | 0 .../Swift}/EmptyDataSetDelegate.swift | 0 .../Swift}/EmptyDataSetImpl.swift | 0 .../Swift}/EmptyDataSetSource.swift | 0 .../Swift}/EmptyDataSetView.swift | 0 .../EmptyDataSet => Source/Swift}/Info.plist | 0 490 files changed, 114 insertions(+), 41 deletions(-) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/AppDelegate.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/AppDelegate.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Application.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Application.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_500px.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_camera.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_path.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_path.imageset/icon_path.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_photos.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_remote.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_safari.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_skype.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_slack.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_videos.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_vine.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_500px.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_path.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_path.imageset/logo_path.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_skype.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_slack.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_vine.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/DetailViewController.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/DetailViewController.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Fonts/Lato/Lato-Regular.ttf (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/MainViewController.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/MainViewController.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Supporting Files/Applications-Prefix.pch (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Supporting Files/Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Supporting Files/Storyboard.storyboard (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Supporting Files/en.lproj/InfoPlist.strings (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/Supporting Files/main.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/UIColor+Hexadecimal.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/UIColor+Hexadecimal.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Applications/applications.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/AppDelegate.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/AppDelegate.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Assets.xcassets/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Base.lproj/LaunchScreen.storyboard (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/CollectionViewController.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/CollectionViewController.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/Colors-Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/Colors-Prefix.pch (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/en.lproj/InfoPlist.strings (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Colors/main.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/Color.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/Color.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/Palette.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/Palette.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/UIColor+Hex.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/UIColor+Hex.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DataSource/colors.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DetailViewController.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/DetailViewController.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/search_icon.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/search_icon.imageset/search_icon.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_collection.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_search.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_search.imageset/tab_search.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_table.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_table.imageset/tab_table.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/Storyboard.storyboard (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/TableViewController.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/TableViewController.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Colors/main.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcodeproj/project.pbxproj (95%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme (84%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcworkspace/contents.xcworkspacedata (88%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet/DZNEmptyDataSet.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSet/Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Podfile (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Podfile.lock (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Manifest.lock (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Pods.xcodeproj/project.pbxproj (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/LICENSE (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/README.md (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/Constraint.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintAttributes.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintConfig.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintConstantTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintDSL.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintDescription.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintInsetTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintInsets.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintItem.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutGuide.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutSupport.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMaker.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerEditable.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerExtendable.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerRelatable.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintOffsetTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintPriority.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintPriorityTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintRelatableTarget.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintRelation.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintView+Extensions.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintView.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/ConstraintViewDSL.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/Debugging.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/LayoutConstraint.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/LayoutConstraintItem.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/Typealiases.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-dummy.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit.modulemap (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/LICENSE (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Pods/iOSSnapshotTestCase/README.md (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/AppDelegate.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Assets.xcassets/Contents.json (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Base.lproj/LaunchScreen.storyboard (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Base.lproj/Main.storyboard (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/Info.plist (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/SceneDelegate.swift (100%) rename {DZNEmptyDataSet => EmptyDataSet}/Sample - Bento/ViewController.swift (100%) create mode 100644 Source/Objc/DZNEmptyDataSet.h create mode 100644 Source/Objc/Info.plist rename Source/{ => Objc}/UIScrollView+EmptyDataSet.h (100%) rename Source/{ => Objc}/UIScrollView+EmptyDataSet.m (100%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/DZNEmptyDataSet.h (76%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/EmptyDataSet.swift (100%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/EmptyDataSetDelegate.swift (100%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/EmptyDataSetImpl.swift (100%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/EmptyDataSetSource.swift (100%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/EmptyDataSetView.swift (100%) rename {DZNEmptyDataSet/EmptyDataSet => Source/Swift}/Info.plist (100%) diff --git a/DZNEmptyDataSet.podspec b/DZNEmptyDataSet.podspec index 1eeb867b..791206e8 100644 --- a/DZNEmptyDataSet.podspec +++ b/DZNEmptyDataSet.podspec @@ -1,17 +1,28 @@ -@version = "1.8.1" +@version = '2.0' Pod::Spec.new do |s| - s.name = "DZNEmptyDataSet" - s.version = @version - s.summary = "A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display." - s.description = "It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show. The -reloadData call will be observed so the empty dataset will be configured whenever needed." - s.homepage = "https://github.com/dzenbot/DZNEmptyDataSet" - s.license = { :type => 'MIT', :file => 'LICENSE' } - s.author = { "dzenbot" => "iromero@dzen.cl" } - s.ios.deployment_target = '6.0' - s.tvos.deployment_target = '9.0' - s.source = { :git => "https://github.com/dzenbot/DZNEmptyDataSet.git", :tag => "v#{s.version}" } - s.source_files = 'Classes', 'Source/**/*.{h,m}' - s.requires_arc = true - s.framework = "UIKit" + s.name = 'DZNEmptyDataSet' + s.version = @version + s.summary = 'A drop-in UITableView/UICollectionView superclass extension for displaying placeholders for whenever the view has no content to display.' + s.homepage = 'https://github.com/dzenbot/DZNEmptyDataSet' + s.license = { :type => 'MIT', :file => 'LICENSE' } + s.author = { 'Ignacio Romero Zurbuchen' => 'ignacio.romeroz@gmail.com' } + + s.source = { + :git => 'https://github.com/dzenbot/DZNEmptyDataSet.git', + :tag => 'v#{s.version}', + :branch => 'master' + } + + s.source_files = 'Source/*.{swift}' + s.preserve_paths = 'Source/*' + s.requires_arc = true + s.swift_versions = ['4.0', '5.0', '5.1'] + + s.ios.deployment_target = '11.0' + s.tvos.deployment_target = '11.0' + + s.ios.frameworks = 'UIKit' + s.tvos.frameworks = 'UIKit' + end diff --git a/DZNEmptyDataSet/Applications/AppDelegate.h b/EmptyDataSet/Applications/AppDelegate.h similarity index 100% rename from DZNEmptyDataSet/Applications/AppDelegate.h rename to EmptyDataSet/Applications/AppDelegate.h diff --git a/DZNEmptyDataSet/Applications/AppDelegate.m b/EmptyDataSet/Applications/AppDelegate.m similarity index 100% rename from DZNEmptyDataSet/Applications/AppDelegate.m rename to EmptyDataSet/Applications/AppDelegate.m diff --git a/DZNEmptyDataSet/Applications/Application.h b/EmptyDataSet/Applications/Application.h similarity index 100% rename from DZNEmptyDataSet/Applications/Application.h rename to EmptyDataSet/Applications/Application.h diff --git a/DZNEmptyDataSet/Applications/Application.m b/EmptyDataSet/Applications/Application.m similarity index 100% rename from DZNEmptyDataSet/Applications/Application.m rename to EmptyDataSet/Applications/Application.m diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png b/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png rename to EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png b/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png b/EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png rename to EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png b/EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png b/EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png rename to EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png b/EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png b/EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png b/EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png b/EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png b/EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png b/EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png b/EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png b/EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png b/EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png b/EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png b/EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png b/EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png b/EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png b/EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png b/EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png b/EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png b/EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png b/EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png b/EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png b/EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png b/EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png b/EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png b/EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png b/EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png b/EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png b/EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png b/EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png b/EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png b/EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png b/EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png b/EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png rename to EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png b/EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png b/EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png b/EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png b/EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png b/EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png b/EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png b/EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png b/EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png b/EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png b/EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png b/EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png b/EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png b/EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png b/EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png b/EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png b/EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png b/EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json b/EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png diff --git a/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png b/EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png similarity index 100% rename from DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png rename to EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png diff --git a/DZNEmptyDataSet/Applications/DetailViewController.h b/EmptyDataSet/Applications/DetailViewController.h similarity index 100% rename from DZNEmptyDataSet/Applications/DetailViewController.h rename to EmptyDataSet/Applications/DetailViewController.h diff --git a/DZNEmptyDataSet/Applications/DetailViewController.m b/EmptyDataSet/Applications/DetailViewController.m similarity index 100% rename from DZNEmptyDataSet/Applications/DetailViewController.m rename to EmptyDataSet/Applications/DetailViewController.m diff --git a/DZNEmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf b/EmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf similarity index 100% rename from DZNEmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf rename to EmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf diff --git a/DZNEmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf b/EmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf similarity index 100% rename from DZNEmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf rename to EmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf diff --git a/DZNEmptyDataSet/Applications/MainViewController.h b/EmptyDataSet/Applications/MainViewController.h similarity index 100% rename from DZNEmptyDataSet/Applications/MainViewController.h rename to EmptyDataSet/Applications/MainViewController.h diff --git a/DZNEmptyDataSet/Applications/MainViewController.m b/EmptyDataSet/Applications/MainViewController.m similarity index 100% rename from DZNEmptyDataSet/Applications/MainViewController.m rename to EmptyDataSet/Applications/MainViewController.m diff --git a/DZNEmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch b/EmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch similarity index 100% rename from DZNEmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch rename to EmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch diff --git a/DZNEmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard b/EmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from DZNEmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard rename to EmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard diff --git a/DZNEmptyDataSet/Applications/Supporting Files/Info.plist b/EmptyDataSet/Applications/Supporting Files/Info.plist similarity index 100% rename from DZNEmptyDataSet/Applications/Supporting Files/Info.plist rename to EmptyDataSet/Applications/Supporting Files/Info.plist diff --git a/DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard b/EmptyDataSet/Applications/Supporting Files/Storyboard.storyboard similarity index 100% rename from DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard rename to EmptyDataSet/Applications/Supporting Files/Storyboard.storyboard diff --git a/DZNEmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings b/EmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings similarity index 100% rename from DZNEmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings rename to EmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings diff --git a/DZNEmptyDataSet/Applications/Supporting Files/main.m b/EmptyDataSet/Applications/Supporting Files/main.m similarity index 100% rename from DZNEmptyDataSet/Applications/Supporting Files/main.m rename to EmptyDataSet/Applications/Supporting Files/main.m diff --git a/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.h b/EmptyDataSet/Applications/UIColor+Hexadecimal.h similarity index 100% rename from DZNEmptyDataSet/Applications/UIColor+Hexadecimal.h rename to EmptyDataSet/Applications/UIColor+Hexadecimal.h diff --git a/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m b/EmptyDataSet/Applications/UIColor+Hexadecimal.m similarity index 100% rename from DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m rename to EmptyDataSet/Applications/UIColor+Hexadecimal.m diff --git a/DZNEmptyDataSet/Applications/applications.json b/EmptyDataSet/Applications/applications.json similarity index 100% rename from DZNEmptyDataSet/Applications/applications.json rename to EmptyDataSet/Applications/applications.json diff --git a/DZNEmptyDataSet/Colors/AppDelegate.h b/EmptyDataSet/Colors/AppDelegate.h similarity index 100% rename from DZNEmptyDataSet/Colors/AppDelegate.h rename to EmptyDataSet/Colors/AppDelegate.h diff --git a/DZNEmptyDataSet/Colors/AppDelegate.m b/EmptyDataSet/Colors/AppDelegate.m similarity index 100% rename from DZNEmptyDataSet/Colors/AppDelegate.m rename to EmptyDataSet/Colors/AppDelegate.m diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png b/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png rename to EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png diff --git a/DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json b/EmptyDataSet/Colors/Assets.xcassets/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json rename to EmptyDataSet/Colors/Assets.xcassets/Contents.json diff --git a/DZNEmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard b/EmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from DZNEmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard rename to EmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard diff --git a/DZNEmptyDataSet/Colors/CollectionViewController.h b/EmptyDataSet/Colors/CollectionViewController.h similarity index 100% rename from DZNEmptyDataSet/Colors/CollectionViewController.h rename to EmptyDataSet/Colors/CollectionViewController.h diff --git a/DZNEmptyDataSet/Colors/CollectionViewController.m b/EmptyDataSet/Colors/CollectionViewController.m similarity index 100% rename from DZNEmptyDataSet/Colors/CollectionViewController.m rename to EmptyDataSet/Colors/CollectionViewController.m diff --git a/DZNEmptyDataSet/Colors/Colors/Colors-Info.plist b/EmptyDataSet/Colors/Colors/Colors-Info.plist similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/Colors-Info.plist rename to EmptyDataSet/Colors/Colors/Colors-Info.plist diff --git a/DZNEmptyDataSet/Colors/Colors/Colors-Prefix.pch b/EmptyDataSet/Colors/Colors/Colors-Prefix.pch similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/Colors-Prefix.pch rename to EmptyDataSet/Colors/Colors/Colors-Prefix.pch diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png b/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png rename to EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json b/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json rename to EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png b/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png rename to EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png diff --git a/DZNEmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings b/EmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings rename to EmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings diff --git a/DZNEmptyDataSet/Colors/Colors/main.m b/EmptyDataSet/Colors/Colors/main.m similarity index 100% rename from DZNEmptyDataSet/Colors/Colors/main.m rename to EmptyDataSet/Colors/Colors/main.m diff --git a/DZNEmptyDataSet/Colors/DataSource/Color.h b/EmptyDataSet/Colors/DataSource/Color.h similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/Color.h rename to EmptyDataSet/Colors/DataSource/Color.h diff --git a/DZNEmptyDataSet/Colors/DataSource/Color.m b/EmptyDataSet/Colors/DataSource/Color.m similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/Color.m rename to EmptyDataSet/Colors/DataSource/Color.m diff --git a/DZNEmptyDataSet/Colors/DataSource/Palette.h b/EmptyDataSet/Colors/DataSource/Palette.h similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/Palette.h rename to EmptyDataSet/Colors/DataSource/Palette.h diff --git a/DZNEmptyDataSet/Colors/DataSource/Palette.m b/EmptyDataSet/Colors/DataSource/Palette.m similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/Palette.m rename to EmptyDataSet/Colors/DataSource/Palette.m diff --git a/DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.h b/EmptyDataSet/Colors/DataSource/UIColor+Hex.h similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.h rename to EmptyDataSet/Colors/DataSource/UIColor+Hex.h diff --git a/DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.m b/EmptyDataSet/Colors/DataSource/UIColor+Hex.m similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.m rename to EmptyDataSet/Colors/DataSource/UIColor+Hex.m diff --git a/DZNEmptyDataSet/Colors/DataSource/colors.json b/EmptyDataSet/Colors/DataSource/colors.json similarity index 100% rename from DZNEmptyDataSet/Colors/DataSource/colors.json rename to EmptyDataSet/Colors/DataSource/colors.json diff --git a/DZNEmptyDataSet/Colors/DetailViewController.h b/EmptyDataSet/Colors/DetailViewController.h similarity index 100% rename from DZNEmptyDataSet/Colors/DetailViewController.h rename to EmptyDataSet/Colors/DetailViewController.h diff --git a/DZNEmptyDataSet/Colors/DetailViewController.m b/EmptyDataSet/Colors/DetailViewController.m similarity index 100% rename from DZNEmptyDataSet/Colors/DetailViewController.m rename to EmptyDataSet/Colors/DetailViewController.m diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json b/EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json rename to EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png b/EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png rename to EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png b/EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png rename to EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json b/EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json rename to EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png b/EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png rename to EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png b/EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png rename to EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json b/EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json rename to EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png b/EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png rename to EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png b/EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png rename to EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json b/EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json rename to EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png b/EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png rename to EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png b/EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png rename to EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json b/EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json rename to EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png b/EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png rename to EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png diff --git a/DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png b/EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png similarity index 100% rename from DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png rename to EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png diff --git a/DZNEmptyDataSet/Colors/Info.plist b/EmptyDataSet/Colors/Info.plist similarity index 100% rename from DZNEmptyDataSet/Colors/Info.plist rename to EmptyDataSet/Colors/Info.plist diff --git a/DZNEmptyDataSet/Colors/Storyboard.storyboard b/EmptyDataSet/Colors/Storyboard.storyboard similarity index 100% rename from DZNEmptyDataSet/Colors/Storyboard.storyboard rename to EmptyDataSet/Colors/Storyboard.storyboard diff --git a/DZNEmptyDataSet/Colors/TableViewController.h b/EmptyDataSet/Colors/TableViewController.h similarity index 100% rename from DZNEmptyDataSet/Colors/TableViewController.h rename to EmptyDataSet/Colors/TableViewController.h diff --git a/DZNEmptyDataSet/Colors/TableViewController.m b/EmptyDataSet/Colors/TableViewController.m similarity index 100% rename from DZNEmptyDataSet/Colors/TableViewController.m rename to EmptyDataSet/Colors/TableViewController.m diff --git a/DZNEmptyDataSet/Colors/main.m b/EmptyDataSet/Colors/main.m similarity index 100% rename from DZNEmptyDataSet/Colors/main.m rename to EmptyDataSet/Colors/main.m diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj similarity index 95% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj rename to EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index 68956f75..d7df33dc 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -26,12 +26,17 @@ 4FA1AB1823BD67B3007CF389 /* DisplayEmptyDataSetTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */; }; 4FA1AB1B23BDF332007CF389 /* DetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1923BDF331007CF389 /* DetailViewController.m */; }; 4FA1AB1C23BE74F0007CF389 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; + 4FA1AB1F23BE76A2007CF389 /* UIScrollView+EmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB1D23BE76A2007CF389 /* UIScrollView+EmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4FA1AB2023BE76A2007CF389 /* UIScrollView+EmptyDataSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB1E23BE76A2007CF389 /* UIScrollView+EmptyDataSet.m */; }; + 4FA1AB2423BE771F007CF389 /* DZNEmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB2223BE771F007CF389 /* DZNEmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4FA1AB2523BE7A10007CF389 /* EmptyDataSet.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4F59DA4E23BC1F060059733C /* EmptyDataSet.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 4FA1AB2623BE7A10007CF389 /* EmptyDataSetSource.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB1323BD3645007CF389 /* EmptyDataSetSource.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 4FA1AB2723BE7A10007CF389 /* EmptyDataSetDelegate.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 4FA1AB2823BE7A10007CF389 /* EmptyDataSetView.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */; }; + 4FA1AB2923BE7A10007CF389 /* EmptyDataSetImpl.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; - F58A3E431E66AEE90086E0EF /* DZNEmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F58A3E4E1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = F58A3E4C1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F58A3E4F1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E4D1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m */; }; F58A3E931E66B62F0086E0EF /* Application.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E7B1E66B62F0086E0EF /* Application.m */; }; F58A3E951E66B62F0086E0EF /* applications.json in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7E1E66B62F0086E0EF /* applications.json */; }; F58A3E961E66B62F0086E0EF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; @@ -42,7 +47,6 @@ F58A3E9C1E66B62F0086E0EF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E8B1E66B62F0086E0EF /* LaunchScreen.storyboard */; }; F58A3E9F1E66B62F0086E0EF /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E901E66B62F0086E0EF /* main.m */; }; F58A3EA01E66B62F0086E0EF /* UIColor+Hexadecimal.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E921E66B62F0086E0EF /* UIColor+Hexadecimal.m */; }; - F58A3EA31E66B6C70086E0EF /* Applications-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = F58A3EA21E66B6C70086E0EF /* Applications-Prefix.pch */; }; F58A3EA51E66B6D70086E0EF /* Storyboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F58A3EA41E66B6D70086E0EF /* Storyboard.storyboard */; }; F58A3EA81E66B6F10086E0EF /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3EA71E66B6F10086E0EF /* AppDelegate.m */; }; F58A3EA91E66B7940086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; @@ -107,6 +111,10 @@ 4FA1AB1723BD67B3007CF389 /* DisplayEmptyDataSetTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DisplayEmptyDataSetTests.swift; sourceTree = ""; }; 4FA1AB1923BDF331007CF389 /* DetailViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DetailViewController.m; sourceTree = ""; }; 4FA1AB1A23BDF332007CF389 /* DetailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DetailViewController.h; sourceTree = ""; }; + 4FA1AB1D23BE76A2007CF389 /* UIScrollView+EmptyDataSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIScrollView+EmptyDataSet.h"; sourceTree = ""; }; + 4FA1AB1E23BE76A2007CF389 /* UIScrollView+EmptyDataSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIScrollView+EmptyDataSet.m"; sourceTree = ""; }; + 4FA1AB2123BE771F007CF389 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 4FA1AB2223BE771F007CF389 /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.release.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig"; sourceTree = ""; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; @@ -115,13 +123,9 @@ BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DZNEmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = ""; }; - F58A3E361E66AEE90086E0EF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; F58A3E3B1E66AEE90086E0EF /* DZNEmptyDataSetTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DZNEmptyDataSetTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ApplicationsSnapshotTests.m; sourceTree = ""; }; F58A3E421E66AEE90086E0EF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - F58A3E4C1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "UIScrollView+EmptyDataSet.h"; path = "../../Source/UIScrollView+EmptyDataSet.h"; sourceTree = ""; }; - F58A3E4D1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "UIScrollView+EmptyDataSet.m"; path = "../../Source/UIScrollView+EmptyDataSet.m"; sourceTree = ""; }; F58A3E631E66B5410086E0EF /* Applications.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Applications.app; sourceTree = BUILT_PRODUCTS_DIR; }; F58A3E7A1E66B62F0086E0EF /* Application.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Application.h; sourceTree = ""; }; F58A3E7B1E66B62F0086E0EF /* Application.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Application.m; sourceTree = ""; }; @@ -259,7 +263,8 @@ 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */, 4FA1AB0223BC296B007CF389 /* Info.plist */, ); - path = EmptyDataSet; + name = EmptyDataSet; + path = ../Source/Swift; sourceTree = ""; }; A7CC5E0B0809CA256BDA9067 /* Frameworks */ = { @@ -276,11 +281,11 @@ F58A3E281E66AEE90086E0EF = { isa = PBXGroup; children = ( - F58A3E341E66AEE90086E0EF /* DZNEmptyDataSet */, F58A3E3F1E66AEE90086E0EF /* DZNEmptyDataSetTests */, 4FA1AAE723BC28F2007CF389 /* Sample - Bento */, F58A3E641E66B5410086E0EF /* Sample - Applications */, F5BE15261E713E2100F6FBEA /* Sample - Colors */, + F58A3E341E66AEE90086E0EF /* DZNEmptyDataSet */, 4FA1AB0023BC296B007CF389 /* EmptyDataSet */, F58A3E331E66AEE90086E0EF /* Products */, 242E9BB031D3264D62C731D6 /* Pods */, @@ -304,12 +309,13 @@ F58A3E341E66AEE90086E0EF /* DZNEmptyDataSet */ = { isa = PBXGroup; children = ( - F58A3E351E66AEE90086E0EF /* DZNEmptyDataSet.h */, - F58A3E4C1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h */, - F58A3E4D1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m */, - F58A3E361E66AEE90086E0EF /* Info.plist */, + 4FA1AB2223BE771F007CF389 /* DZNEmptyDataSet.h */, + 4FA1AB1D23BE76A2007CF389 /* UIScrollView+EmptyDataSet.h */, + 4FA1AB1E23BE76A2007CF389 /* UIScrollView+EmptyDataSet.m */, + 4FA1AB2123BE771F007CF389 /* Info.plist */, ); - path = DZNEmptyDataSet; + name = DZNEmptyDataSet; + path = ../Source/Objc; sourceTree = ""; }; F58A3E3F1E66AEE90086E0EF /* DZNEmptyDataSetTests */ = { @@ -443,6 +449,11 @@ buildActionMask = 2147483647; files = ( 4FA1AB0323BC296B007CF389 /* DZNEmptyDataSet.h in Headers */, + 4FA1AB2523BE7A10007CF389 /* EmptyDataSet.swift in Headers */, + 4FA1AB2623BE7A10007CF389 /* EmptyDataSetSource.swift in Headers */, + 4FA1AB2723BE7A10007CF389 /* EmptyDataSetDelegate.swift in Headers */, + 4FA1AB2823BE7A10007CF389 /* EmptyDataSetView.swift in Headers */, + 4FA1AB2923BE7A10007CF389 /* EmptyDataSetImpl.swift in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -450,9 +461,8 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - F58A3EA31E66B6C70086E0EF /* Applications-Prefix.pch in Headers */, - F58A3E431E66AEE90086E0EF /* DZNEmptyDataSet.h in Headers */, - F58A3E4E1E66AF400086E0EF /* UIScrollView+EmptyDataSet.h in Headers */, + 4FA1AB1F23BE76A2007CF389 /* UIScrollView+EmptyDataSet.h in Headers */, + 4FA1AB2423BE771F007CF389 /* DZNEmptyDataSet.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -826,7 +836,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F58A3E4F1E66AF400086E0EF /* UIScrollView+EmptyDataSet.m in Sources */, + 4FA1AB2023BE76A2007CF389 /* UIScrollView+EmptyDataSet.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -941,7 +951,7 @@ CODE_SIGN_STYLE = Automatic; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "Sample - Bento/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -966,7 +976,7 @@ CODE_SIGN_STYLE = Automatic; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "Sample - Bento/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Bento; @@ -992,7 +1002,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_C_LANGUAGE_STANDARD = gnu11; - INFOPLIST_FILE = EmptyDataSet/Info.plist; + INFOPLIST_FILE = "$(SRCROOT)/../Source/Objc/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1006,6 +1016,7 @@ SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 11.0; }; name = Debug; }; @@ -1024,7 +1035,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_C_LANGUAGE_STANDARD = gnu11; - INFOPLIST_FILE = EmptyDataSet/Info.plist; + INFOPLIST_FILE = "$(SRCROOT)/../Source/Objc/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1036,6 +1047,7 @@ SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 11.0; }; name = Release; }; @@ -1166,6 +1178,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = DZNEmptyDataSet/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.DZNEmptyDataSet; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1187,6 +1200,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = DZNEmptyDataSet/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.DZNEmptyDataSet; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme rename to EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme rename to EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme rename to EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme similarity index 84% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme rename to EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme index 2ca811eb..620af8a1 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme +++ b/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme @@ -28,6 +28,16 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> + + + + + + diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/DZNEmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h b/EmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h rename to EmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h diff --git a/DZNEmptyDataSet/DZNEmptyDataSet/Info.plist b/EmptyDataSet/DZNEmptyDataSet/Info.plist similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSet/Info.plist rename to EmptyDataSet/DZNEmptyDataSet/Info.plist diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m b/EmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m rename to EmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift b/EmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift rename to EmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/Info.plist b/EmptyDataSet/DZNEmptyDataSetTests/Info.plist similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/Info.plist rename to EmptyDataSet/DZNEmptyDataSetTests/Info.plist diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png diff --git a/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png b/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png similarity index 100% rename from DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png rename to EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png diff --git a/DZNEmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h b/EmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h similarity index 100% rename from DZNEmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h rename to EmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h diff --git a/DZNEmptyDataSet/Podfile b/EmptyDataSet/Podfile similarity index 100% rename from DZNEmptyDataSet/Podfile rename to EmptyDataSet/Podfile diff --git a/DZNEmptyDataSet/Podfile.lock b/EmptyDataSet/Podfile.lock similarity index 100% rename from DZNEmptyDataSet/Podfile.lock rename to EmptyDataSet/Podfile.lock diff --git a/DZNEmptyDataSet/Pods/Manifest.lock b/EmptyDataSet/Pods/Manifest.lock similarity index 100% rename from DZNEmptyDataSet/Pods/Manifest.lock rename to EmptyDataSet/Pods/Manifest.lock diff --git a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj b/EmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj similarity index 100% rename from DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj rename to EmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj diff --git a/DZNEmptyDataSet/Pods/SnapKit/LICENSE b/EmptyDataSet/Pods/SnapKit/LICENSE similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/LICENSE rename to EmptyDataSet/Pods/SnapKit/LICENSE diff --git a/DZNEmptyDataSet/Pods/SnapKit/README.md b/EmptyDataSet/Pods/SnapKit/README.md similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/README.md rename to EmptyDataSet/Pods/SnapKit/README.md diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift b/EmptyDataSet/Pods/SnapKit/Source/Constraint.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift rename to EmptyDataSet/Pods/SnapKit/Source/Constraint.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift b/EmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift rename to EmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift b/EmptyDataSet/Pods/SnapKit/Source/Debugging.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift rename to EmptyDataSet/Pods/SnapKit/Source/Debugging.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift b/EmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift rename to EmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift b/EmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift rename to EmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift b/EmptyDataSet/Pods/SnapKit/Source/Typealiases.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift rename to EmptyDataSet/Pods/SnapKit/Source/Typealiases.swift diff --git a/DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift b/EmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift similarity index 100% rename from DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift rename to EmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig b/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig rename to EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig b/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig rename to EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig b/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig rename to EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist b/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist rename to EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m b/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m rename to EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch b/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch rename to EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h b/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h rename to EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap b/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap rename to EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap diff --git a/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig b/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig rename to EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap diff --git a/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig b/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig similarity index 100% rename from DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig rename to EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift b/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift rename to EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE b/EmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE rename to EmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE diff --git a/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/README.md b/EmptyDataSet/Pods/iOSSnapshotTestCase/README.md similarity index 100% rename from DZNEmptyDataSet/Pods/iOSSnapshotTestCase/README.md rename to EmptyDataSet/Pods/iOSSnapshotTestCase/README.md diff --git a/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift b/EmptyDataSet/Sample - Bento/AppDelegate.swift similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/AppDelegate.swift rename to EmptyDataSet/Sample - Bento/AppDelegate.swift diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png rename to EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg b/EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg rename to EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg b/EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg rename to EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json b/EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json rename to EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json diff --git a/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json b/EmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json rename to EmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json diff --git a/DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard b/EmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard rename to EmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard diff --git a/DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard b/EmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard rename to EmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard diff --git a/DZNEmptyDataSet/Sample - Bento/Info.plist b/EmptyDataSet/Sample - Bento/Info.plist similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/Info.plist rename to EmptyDataSet/Sample - Bento/Info.plist diff --git a/DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift b/EmptyDataSet/Sample - Bento/SceneDelegate.swift similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift rename to EmptyDataSet/Sample - Bento/SceneDelegate.swift diff --git a/DZNEmptyDataSet/Sample - Bento/ViewController.swift b/EmptyDataSet/Sample - Bento/ViewController.swift similarity index 100% rename from DZNEmptyDataSet/Sample - Bento/ViewController.swift rename to EmptyDataSet/Sample - Bento/ViewController.swift diff --git a/Source/Objc/DZNEmptyDataSet.h b/Source/Objc/DZNEmptyDataSet.h new file mode 100644 index 00000000..b5d47fe6 --- /dev/null +++ b/Source/Objc/DZNEmptyDataSet.h @@ -0,0 +1,14 @@ +// +// DZNEmptyDataSet.h +// DZNEmptyDataSet +// +// Created by Ignacio Romero on 2/28/17. +// Copyright © 2017 DZN. All rights reserved. +// + +#import +#import +#import + +FOUNDATION_EXPORT double DZNEmptyDataSetVersionNumber; +FOUNDATION_EXPORT const unsigned char DZNEmptyDataSetVersionString[]; diff --git a/Source/Objc/Info.plist b/Source/Objc/Info.plist new file mode 100644 index 00000000..fbe1e6b3 --- /dev/null +++ b/Source/Objc/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + NSPrincipalClass + + + diff --git a/Source/UIScrollView+EmptyDataSet.h b/Source/Objc/UIScrollView+EmptyDataSet.h similarity index 100% rename from Source/UIScrollView+EmptyDataSet.h rename to Source/Objc/UIScrollView+EmptyDataSet.h diff --git a/Source/UIScrollView+EmptyDataSet.m b/Source/Objc/UIScrollView+EmptyDataSet.m similarity index 100% rename from Source/UIScrollView+EmptyDataSet.m rename to Source/Objc/UIScrollView+EmptyDataSet.m diff --git a/DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h b/Source/Swift/DZNEmptyDataSet.h similarity index 76% rename from DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h rename to Source/Swift/DZNEmptyDataSet.h index 33c526ec..c1703d60 100644 --- a/DZNEmptyDataSet/EmptyDataSet/DZNEmptyDataSet.h +++ b/Source/Swift/DZNEmptyDataSet.h @@ -7,10 +7,7 @@ // #import +#import -//! Project version number for EmptyDataSet. FOUNDATION_EXPORT double EmptyDataSetVersionNumber; - -//! Project version string for EmptyDataSet. FOUNDATION_EXPORT const unsigned char EmptyDataSetVersionString[]; - diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift b/Source/Swift/EmptyDataSet.swift similarity index 100% rename from DZNEmptyDataSet/EmptyDataSet/EmptyDataSet.swift rename to Source/Swift/EmptyDataSet.swift diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift b/Source/Swift/EmptyDataSetDelegate.swift similarity index 100% rename from DZNEmptyDataSet/EmptyDataSet/EmptyDataSetDelegate.swift rename to Source/Swift/EmptyDataSetDelegate.swift diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift b/Source/Swift/EmptyDataSetImpl.swift similarity index 100% rename from DZNEmptyDataSet/EmptyDataSet/EmptyDataSetImpl.swift rename to Source/Swift/EmptyDataSetImpl.swift diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift b/Source/Swift/EmptyDataSetSource.swift similarity index 100% rename from DZNEmptyDataSet/EmptyDataSet/EmptyDataSetSource.swift rename to Source/Swift/EmptyDataSetSource.swift diff --git a/DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift b/Source/Swift/EmptyDataSetView.swift similarity index 100% rename from DZNEmptyDataSet/EmptyDataSet/EmptyDataSetView.swift rename to Source/Swift/EmptyDataSetView.swift diff --git a/DZNEmptyDataSet/EmptyDataSet/Info.plist b/Source/Swift/Info.plist similarity index 100% rename from DZNEmptyDataSet/EmptyDataSet/Info.plist rename to Source/Swift/Info.plist From 6d984b3519a563bdc0ec0557939c69d8bedf31e3 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Thu, 2 Jan 2020 14:53:04 -0800 Subject: [PATCH 19/25] Fixing tests, again --- .../Applications/AppDelegate.h | 0 .../Applications/AppDelegate.m | 0 .../Applications/Application.h | 0 .../Applications/Application.m | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-1024.png | Bin .../AppIcon.appiconset/icon-29.png | Bin .../AppIcon.appiconset/icon-29@2x.png | Bin .../AppIcon.appiconset/icon-29@3x.png | Bin .../AppIcon.appiconset/icon-40@2x.png | Bin .../AppIcon.appiconset/icon-40@3x.png | Bin .../AppIcon.appiconset/icon-57.png | Bin .../AppIcon.appiconset/icon-57@2x.png | Bin .../AppIcon.appiconset/icon-60@2x.png | Bin .../AppIcon.appiconset/icon-60@3x.png | Bin .../Assets.xcassets/Contents.json | 0 .../Contents.json | 0 ...button_background_foursquare_highlight.png | Bin ...ton_background_foursquare_highlight@2x.png | Bin .../Contents.json | 0 .../button_background_foursquare_normal.png | Bin ...button_background_foursquare_normal@2x.png | Bin .../Contents.json | 0 .../button_background_icloud_highlight.png | Bin .../button_background_icloud_highlight@2x.png | Bin .../Contents.json | 0 .../button_background_icloud_normal.png | Bin .../button_background_icloud_normal@2x.png | Bin .../Contents.json | 0 ...utton_background_kickstarter_highlight.png | Bin ...on_background_kickstarter_highlight@2x.png | Bin .../Contents.json | 0 .../button_background_kickstarter_normal.png | Bin ...utton_background_kickstarter_normal@2x.png | Bin .../header_pinterest.imageset/Contents.json | 0 .../header_pinterest.png | Bin .../header_pinterest@2x.png | Bin .../header_podcasts.imageset/Contents.json | 0 .../header_podcasts.png | Bin .../header_podcasts@2x.png | Bin .../icon_500px.imageset/Contents.json | 0 .../icon_500px.imageset/icon_500px.png | Bin .../icon_500px.imageset/icon_500px@2x.png | Bin .../icon_airbnb.imageset/Contents.json | 0 .../icon_airbnb.imageset/icon_airbnb.png | Bin .../icon_airbnb.imageset/icon_airbnb@2x.png | Bin .../icon_appstore.imageset/Contents.json | 0 .../icon_appstore.imageset/icon_appstore.png | Bin .../icon_appstore@2x.png | Bin .../icon_camera.imageset/Contents.json | 0 .../icon_camera.imageset/icon_camera.png | Bin .../icon_camera.imageset/icon_camera@2x.png | Bin .../icon_dropbox.imageset/Contents.json | 0 .../icon_dropbox.imageset/icon_dropbox.png | Bin .../icon_dropbox.imageset/icon_dropbox@2x.png | Bin .../icon_facebook.imageset/Contents.json | 0 .../icon_facebook.imageset/icon_facebook.png | Bin .../icon_facebook@2x.png | Bin .../icon_fancy.imageset/Contents.json | 0 .../icon_fancy.imageset/icon_fancy.png | Bin .../icon_fancy.imageset/icon_fancy@2x.png | Bin .../icon_foursquare.imageset/Contents.json | 0 .../icon_foursquare.png | Bin .../icon_foursquare@2x.png | Bin .../icon_icloud.imageset/Contents.json | 0 .../icon_icloud.imageset/icon_icloud.png | Bin .../icon_icloud.imageset/icon_icloud@2x.png | Bin .../icon_instagram.imageset/Contents.json | 0 .../icon_instagram.png | Bin .../icon_instagram@2x.png | Bin .../Contents.json | 0 .../icon_itunesconnect.png | Bin .../icon_itunesconnect@2x.png | Bin .../icon_kickstarter.imageset/Contents.json | 0 .../icon_kickstarter.png | Bin .../icon_kickstarter@2x.png | Bin .../icon_path.imageset/Contents.json | 0 .../icon_path.imageset/icon_path.png | Bin .../icon_path.imageset/icon_path@2x.png | Bin .../icon_photos.imageset/Contents.json | 0 .../icon_photos.imageset/icon_photos.png | Bin .../icon_photos.imageset/icon_photos@2x.png | Bin .../icon_pinterest.imageset/Contents.json | 0 .../icon_pinterest.png | Bin .../icon_pinterest@2x.png | Bin .../icon_podcasts.imageset/Contents.json | 0 .../icon_podcasts.imageset/icon_podcasts.png | Bin .../icon_podcasts@2x.png | Bin .../icon_remote.imageset/Contents.json | 0 .../icon_remote.imageset/icon_remote.png | Bin .../icon_remote.imageset/icon_remote@2x.png | Bin .../icon_safari.imageset/Contents.json | 0 .../icon_safari.imageset/icon_safari.png | Bin .../icon_safari.imageset/icon_safari@2x.png | Bin .../icon_skype.imageset/Contents.json | 0 .../icon_skype.imageset/icon_skype.png | Bin .../icon_skype.imageset/icon_skype@2x.png | Bin .../icon_slack.imageset/Contents.json | 0 .../icon_slack.imageset/icon_slack.png | Bin .../icon_slack.imageset/icon_slack@2x.png | Bin .../icon_tumblr.imageset/Contents.json | 0 .../icon_tumblr.imageset/icon_tumblr.png | Bin .../icon_tumblr.imageset/icon_tumblr@2x.png | Bin .../icon_twitter.imageset/Contents.json | 0 .../icon_twitter.imageset/icon_twitter.png | Bin .../icon_twitter.imageset/icon_twitter@2x.png | Bin .../icon_vesper.imageset/Contents.json | 0 .../icon_vesper.imageset/icon_vesper.png | Bin .../icon_vesper.imageset/icon_vesper@2x.png | Bin .../icon_videos.imageset/Contents.json | 0 .../icon_videos.imageset/icon_videos.png | Bin .../icon_videos.imageset/icon_videos@2x.png | Bin .../icon_vine.imageset/Contents.json | 0 .../icon_vine.imageset/icon_vine.png | Bin .../icon_vine.imageset/icon_vine@2x.png | Bin .../icon_whatsapp.imageset/Contents.json | 0 .../icon_whatsapp.imageset/icon_whatsapp.png | Bin .../icon_whatsapp@2x.png | Bin .../icon_wwdc.imageset/Contents.json | 0 .../icon_wwdc.imageset/icon_wwdc.png | Bin .../icon_wwdc.imageset/icon_wwdc@2x.png | Bin .../Contents.json | 0 .../loading_imgBlue_78x78@2x.png | Bin .../loading_imgBlue_78x78@3x.png | Bin .../logo_500px.imageset/Contents.json | 0 .../logo_500px.imageset/logo_500px.png | Bin .../logo_500px.imageset/logo_500px@2x.png | Bin .../logo_airbnb.imageset/Contents.json | 0 .../logo_airbnb.imageset/logo_airbnb.png | Bin .../logo_airbnb.imageset/logo_airbnb@2x.png | Bin .../logo_dropbox.imageset/Contents.json | 0 .../logo_dropbox.imageset/logo_dropbox.png | Bin .../logo_dropbox.imageset/logo_dropbox@2x.png | Bin .../logo_facebook.imageset/Contents.json | 0 .../logo_facebook.imageset/logo_facebook.png | Bin .../logo_facebook@2x.png | Bin .../logo_fancy.imageset/Contents.json | 0 .../logo_fancy.imageset/logo_fancy.png | Bin .../logo_fancy.imageset/logo_fancy@2x.png | Bin .../logo_foursquare.imageset/Contents.json | 0 .../logo_foursquare.png | Bin .../logo_foursquare@2x.png | Bin .../logo_instagram.imageset/Contents.json | 0 .../logo_instagram.png | Bin .../logo_instagram@2x.png | Bin .../logo_kickstarter.imageset/Contents.json | 0 .../logo_kickstarter.png | Bin .../logo_kickstarter@2x.png | Bin .../logo_path.imageset/Contents.json | 0 .../logo_path.imageset/logo_path.png | Bin .../logo_path.imageset/logo_path@2x.png | Bin .../logo_pinterest.imageset/Contents.json | 0 .../logo_pinterest.png | Bin .../logo_pinterest@2x.png | Bin .../logo_skype.imageset/Contents.json | 0 .../logo_skype.imageset/logo_skype.png | Bin .../logo_skype.imageset/logo_skype@2x.png | Bin .../logo_slack.imageset/Contents.json | 0 .../logo_slack.imageset/logo_slack.png | Bin .../logo_slack.imageset/logo_slack@2x.png | Bin .../logo_tumblr.imageset/Contents.json | 0 .../logo_tumblr.imageset/logo_tumblr.png | Bin .../logo_tumblr.imageset/logo_tumblr@2x.png | Bin .../logo_twitter.imageset/Contents.json | 0 .../logo_twitter.imageset/logo_twitter.png | Bin .../logo_twitter.imageset/logo_twitter@2x.png | Bin .../logo_vesper.imageset/Contents.json | 0 .../logo_vesper.imageset/logo_vesper.png | Bin .../logo_vesper.imageset/logo_vesper@2x.png | Bin .../logo_vine.imageset/Contents.json | 0 .../logo_vine.imageset/logo_vine.png | Bin .../logo_vine.imageset/logo_vine@2x.png | Bin .../placeholder_500px.imageset/Contents.json | 0 .../placeholder_500px.png | Bin .../placeholder_500px@2x.png | Bin .../placeholder_airbnb.imageset/Contents.json | 0 .../placeholder_airbnb.png | Bin .../placeholder_airbnb@2x.png | Bin .../Contents.json | 0 .../placeholder_appstore.png | Bin .../placeholder_appstore@2x.png | Bin .../Contents.json | 0 .../placeholder_dropbox.png | Bin .../placeholder_dropbox@2x.png | Bin .../Contents.json | 0 .../placeholder_facebook.png | Bin .../placeholder_facebook@2x.png | Bin .../placeholder_fancy.imageset/Contents.json | 0 .../placeholder_fancy.png | Bin .../placeholder_fancy@2x.png | Bin .../Contents.json | 0 .../placeholder_foursquare.png | Bin .../placeholder_foursquare@2x.png | Bin .../Contents.json | 0 .../placeholder_instagram.png | Bin .../placeholder_instagram@2x.png | Bin .../Contents.json | 0 .../placeholder_itunes_connect.png | Bin .../placeholder_itunes_connect@2x.png | Bin .../Contents.json | 0 .../placeholder_kickstarter.png | Bin .../placeholder_kickstarter@2x.png | Bin .../placeholder_path.imageset/Contents.json | 0 .../placeholder_path.png | Bin .../placeholder_path@2x.png | Bin .../placeholder_remote.imageset/Contents.json | 0 .../placeholder_remote.png | Bin .../placeholder_remote@2x.png | Bin .../placeholder_skype.imageset/Contents.json | 0 .../placeholder_skype.png | Bin .../placeholder_skype@2x.png | Bin .../placeholder_slack.imageset/Contents.json | 0 .../placeholder_slack.png | Bin .../placeholder_slack@2x.png | Bin .../placeholder_tumblr.imageset/Contents.json | 0 .../placeholder_tumblr.png | Bin .../placeholder_tumblr@2x.png | Bin .../placeholder_vesper.imageset/Contents.json | 0 .../placeholder_vesper.png | Bin .../placeholder_vesper@2x.png | Bin .../placeholder_videos.imageset/Contents.json | 0 .../placeholder_videos.png | Bin .../placeholder_videos@2x.png | Bin .../placeholder_vine.imageset/Contents.json | 0 .../placeholder_vine.png | Bin .../placeholder_vine@2x.png | Bin .../Contents.json | 0 .../placeholder_whatsapp.png | Bin .../placeholder_whatsapp@2x.png | Bin .../Applications/DetailViewController.h | 0 .../Applications/DetailViewController.m | 0 .../Fonts/Ideal Sans/IdealSans-Book-Pro.otf | Bin .../Applications/Fonts/Lato/Lato-Regular.ttf | Bin .../Applications/MainViewController.h | 0 .../Applications/MainViewController.m | 0 .../Supporting Files/Applications-Prefix.pch | 0 .../Base.lproj/LaunchScreen.storyboard | 0 .../Applications/Supporting Files/Info.plist | 0 .../Supporting Files/Storyboard.storyboard | 0 .../en.lproj/InfoPlist.strings | 0 .../Applications/Supporting Files/main.m | 0 .../Applications/UIColor+Hexadecimal.h | 0 .../Applications/UIColor+Hexadecimal.m | 0 .../Applications/applications.json | 0 .../Colors/AppDelegate.h | 0 .../Colors/AppDelegate.m | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-1024.png | Bin .../AppIcon.appiconset/icon-29.png | Bin .../AppIcon.appiconset/icon-29@2x.png | Bin .../AppIcon.appiconset/icon-29@3x.png | Bin .../AppIcon.appiconset/icon-40@2x.png | Bin .../AppIcon.appiconset/icon-40@3x.png | Bin .../AppIcon.appiconset/icon-57.png | Bin .../AppIcon.appiconset/icon-57@2x.png | Bin .../AppIcon.appiconset/icon-60@2x.png | Bin .../AppIcon.appiconset/icon-60@3x.png | Bin .../Colors/Assets.xcassets/Contents.json | 0 .../Colors/Base.lproj/LaunchScreen.storyboard | 0 .../Colors/CollectionViewController.h | 0 .../Colors/CollectionViewController.m | 0 .../Colors/Colors/Colors-Info.plist | 0 .../Colors/Colors/Colors-Prefix.pch | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-120~car.png | Bin .../AppIcon.appiconset/icon-29.png | Bin .../AppIcon.appiconset/icon-29@2x.png | Bin .../AppIcon.appiconset/icon-29@2x~ipad.png | Bin .../AppIcon.appiconset/icon-29@3x.png | Bin .../AppIcon.appiconset/icon-29~ipad.png | Bin .../AppIcon.appiconset/icon-40@2x.png | Bin .../AppIcon.appiconset/icon-40@2x~ipad.png | Bin .../AppIcon.appiconset/icon-40@3x.png | Bin .../AppIcon.appiconset/icon-40~ipad.png | Bin .../AppIcon.appiconset/icon-50@2x~ipad.png | Bin .../AppIcon.appiconset/icon-50~ipad.png | Bin .../AppIcon.appiconset/icon-57.png | Bin .../AppIcon.appiconset/icon-57@2x.png | Bin .../AppIcon.appiconset/icon-60@2x.png | Bin .../AppIcon.appiconset/icon-60@3x.png | Bin .../AppIcon.appiconset/icon-72@2x~ipad.png | Bin .../AppIcon.appiconset/icon-72~ipad.png | Bin .../AppIcon.appiconset/icon-76@2x~ipad.png | Bin .../AppIcon.appiconset/icon-76~ipad.png | Bin .../LaunchImage.launchimage/Contents.json | 0 .../Default-568h@2x.png | Bin .../Default-hd-plus@2x.png | Bin .../LaunchImage.launchimage/Default-hd@2x.png | Bin .../LaunchImage.launchimage/Default@2x.png | Bin .../Colors/Colors/en.lproj/InfoPlist.strings | 0 .../Colors/Colors/main.m | 0 .../Colors/DataSource/Color.h | 0 .../Colors/DataSource/Color.m | 0 .../Colors/DataSource/Palette.h | 0 .../Colors/DataSource/Palette.m | 0 .../Colors/DataSource/UIColor+Hex.h | 0 .../Colors/DataSource/UIColor+Hex.m | 0 .../Colors/DataSource/colors.json | 0 .../Colors/DetailViewController.h | 0 .../Colors/DetailViewController.m | 0 .../empty_placeholder.imageset/Contents.json | 0 .../empty_placeholder.png | Bin .../empty_placeholder@2x.png | Bin .../search_icon.imageset/Contents.json | 0 .../search_icon.imageset/search_icon.png | Bin .../search_icon.imageset/search_icon@2x.png | Bin .../tab_collection.imageset/Contents.json | 0 .../tab_collection.png | Bin .../tab_collection@2x.png | Bin .../tab_search.imageset/Contents.json | 0 .../tab_search.imageset/tab_search.png | Bin .../tab_search.imageset/tab_search@2x.png | Bin .../tab_table.imageset/Contents.json | 0 .../tab_table.imageset/tab_table.png | Bin .../tab_table.imageset/tab_table@2x.png | Bin .../Colors/Info.plist | 0 .../Colors/Storyboard.storyboard | 0 .../Colors/TableViewController.h | 0 .../Colors/TableViewController.m | 0 .../Colors/main.m | 0 .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 0 .../contents.xcworkspacedata | 0 .../xcschemes/Applications.xcscheme | 78 ++++++++++++++++++ .../xcshareddata/xcschemes/Bento.xcscheme | 0 .../xcshareddata/xcschemes/Colors.xcscheme | 78 ++++++++++++++++++ .../xcschemes/DZNEmptyDataSet.xcscheme | 0 .../xcschemes/DZNEmptyDataSetTests.xcscheme | 0 .../xcschemes/EmptyDataSet.xcscheme | 0 .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 0 .../DZNEmptyDataSet/DZNEmptyDataSet.h | 0 .../DZNEmptyDataSet/Info.plist | 0 .../ApplicationsSnapshotTests.m | 0 .../DisplayEmptyDataSetTests.swift | 0 .../DZNEmptyDataSetTests/Info.plist | 0 .../testApplicationEmptyDataSets_500px@2x.png | Bin ...testApplicationEmptyDataSets_Airbnb@2x.png | Bin ...stApplicationEmptyDataSets_AppStore@2x.png | Bin ...testApplicationEmptyDataSets_Camera@2x.png | Bin ...estApplicationEmptyDataSets_Dropbox@2x.png | Bin ...stApplicationEmptyDataSets_Facebook@2x.png | Bin .../testApplicationEmptyDataSets_Fancy@2x.png | Bin ...ApplicationEmptyDataSets_Foursquare@2x.png | Bin ...tApplicationEmptyDataSets_Instagram@2x.png | Bin ...pplicationEmptyDataSets_Kickstarter@2x.png | Bin .../testApplicationEmptyDataSets_Path@2x.png | Bin ...testApplicationEmptyDataSets_Photos@2x.png | Bin ...tApplicationEmptyDataSets_Pinterest@2x.png | Bin ...stApplicationEmptyDataSets_Podcasts@2x.png | Bin ...testApplicationEmptyDataSets_Remote@2x.png | Bin ...testApplicationEmptyDataSets_Safari@2x.png | Bin .../testApplicationEmptyDataSets_Skype@2x.png | Bin .../testApplicationEmptyDataSets_Slack@2x.png | Bin ...testApplicationEmptyDataSets_Tumblr@2x.png | Bin ...estApplicationEmptyDataSets_Twitter@2x.png | Bin ...testApplicationEmptyDataSets_Vesper@2x.png | Bin ...testApplicationEmptyDataSets_Videos@2x.png | Bin .../testApplicationEmptyDataSets_Vine@2x.png | Bin .../testApplicationEmptyDataSets_WWDC@2x.png | Bin ...stApplicationEmptyDataSets_WhatsApp@2x.png | Bin ...testApplicationEmptyDataSets_iCloud@2x.png | Bin ...icationEmptyDataSets_iTunes_Connect@2x.png | Bin .../DZNEmptyDataSetTests-Bridging-Header.h | 0 {EmptyDataSet => DZNEmptyDataSet}/Podfile | 0 .../Podfile.lock | 0 .../Pods/Manifest.lock | 0 .../Pods/Pods.xcodeproj/project.pbxproj | 0 .../Pods/SnapKit/LICENSE | 0 .../Pods/SnapKit/README.md | 0 .../Pods/SnapKit/Source/Constraint.swift | 0 .../SnapKit/Source/ConstraintAttributes.swift | 0 .../SnapKit/Source/ConstraintConfig.swift | 0 .../Source/ConstraintConstantTarget.swift | 0 .../Pods/SnapKit/Source/ConstraintDSL.swift | 0 .../Source/ConstraintDescription.swift | 0 .../ConstraintDirectionalInsetTarget.swift | 0 .../Source/ConstraintDirectionalInsets.swift | 0 .../Source/ConstraintInsetTarget.swift | 0 .../SnapKit/Source/ConstraintInsets.swift | 0 .../Pods/SnapKit/Source/ConstraintItem.swift | 0 .../ConstraintLayoutGuide+Extensions.swift | 0 .../Source/ConstraintLayoutGuide.swift | 0 .../Source/ConstraintLayoutGuideDSL.swift | 0 .../Source/ConstraintLayoutSupport.swift | 0 .../Source/ConstraintLayoutSupportDSL.swift | 0 .../Pods/SnapKit/Source/ConstraintMaker.swift | 0 .../Source/ConstraintMakerEditable.swift | 0 .../Source/ConstraintMakerExtendable.swift | 0 .../Source/ConstraintMakerFinalizable.swift | 0 .../Source/ConstraintMakerPriortizable.swift | 0 .../Source/ConstraintMakerRelatable.swift | 0 .../Source/ConstraintMultiplierTarget.swift | 0 .../Source/ConstraintOffsetTarget.swift | 0 .../SnapKit/Source/ConstraintPriority.swift | 0 .../Source/ConstraintPriorityTarget.swift | 0 .../Source/ConstraintRelatableTarget.swift | 0 .../SnapKit/Source/ConstraintRelation.swift | 0 .../Source/ConstraintView+Extensions.swift | 0 .../Pods/SnapKit/Source/ConstraintView.swift | 0 .../SnapKit/Source/ConstraintViewDSL.swift | 0 .../Pods/SnapKit/Source/Debugging.swift | 0 .../SnapKit/Source/LayoutConstraint.swift | 0 .../SnapKit/Source/LayoutConstraintItem.swift | 0 .../Pods/SnapKit/Source/Typealiases.swift | 0 .../Source/UILayoutSupport+Extensions.swift | 0 .../Pods-Bento/Pods-Bento-Info.plist | 0 .../Pods-Bento-acknowledgements.markdown | 0 .../Pods-Bento-acknowledgements.plist | 0 .../Pods-Bento/Pods-Bento-dummy.m | 0 .../Pods-Bento/Pods-Bento-frameworks.sh | 0 .../Pods-Bento/Pods-Bento-umbrella.h | 0 .../Pods-Bento/Pods-Bento.debug.xcconfig | 0 .../Pods-Bento/Pods-Bento.modulemap | 0 .../Pods-Bento/Pods-Bento.release.xcconfig | 0 .../Pods-DZNEmptyDataSetTests-Info.plist | 0 ...mptyDataSetTests-acknowledgements.markdown | 0 ...ZNEmptyDataSetTests-acknowledgements.plist | 0 .../Pods-DZNEmptyDataSetTests-dummy.m | 0 .../Pods-DZNEmptyDataSetTests-frameworks.sh | 0 .../Pods-DZNEmptyDataSetTests-umbrella.h | 0 .../Pods-DZNEmptyDataSetTests.debug.xcconfig | 0 .../Pods-DZNEmptyDataSetTests.modulemap | 0 ...Pods-DZNEmptyDataSetTests.release.xcconfig | 0 .../Pods-EmptyDataSet-Info.plist | 0 ...ods-EmptyDataSet-acknowledgements.markdown | 0 .../Pods-EmptyDataSet-acknowledgements.plist | 0 .../Pods-EmptyDataSet-dummy.m | 0 .../Pods-EmptyDataSet-umbrella.h | 0 .../Pods-EmptyDataSet.debug.xcconfig | 0 .../Pods-EmptyDataSet.modulemap | 0 .../Pods-EmptyDataSet.release.xcconfig | 0 .../SnapKit/SnapKit-Info.plist | 0 .../SnapKit/SnapKit-dummy.m | 0 .../SnapKit/SnapKit-prefix.pch | 0 .../SnapKit/SnapKit-umbrella.h | 0 .../SnapKit/SnapKit.modulemap | 0 .../SnapKit/SnapKit.xcconfig | 0 .../iOSSnapshotTestCase/Info.plist | 0 .../iOSSnapshotTestCase-Info.plist | 0 .../iOSSnapshotTestCase-dummy.m | 0 .../iOSSnapshotTestCase-prefix.pch | 0 .../iOSSnapshotTestCase-umbrella.h | 0 .../iOSSnapshotTestCase.modulemap | 0 .../iOSSnapshotTestCase.xcconfig | 0 .../Categories/UIImage+Compare.h | 0 .../Categories/UIImage+Compare.m | 0 .../Categories/UIImage+Diff.h | 0 .../Categories/UIImage+Diff.m | 0 .../Categories/UIImage+Snapshot.h | 0 .../Categories/UIImage+Snapshot.m | 0 .../FBSnapshotTestCase/FBSnapshotTestCase.h | 0 .../FBSnapshotTestCase/FBSnapshotTestCase.m | 0 .../FBSnapshotTestCasePlatform.h | 0 .../FBSnapshotTestCasePlatform.m | 0 .../FBSnapshotTestController.h | 0 .../FBSnapshotTestController.m | 0 .../FBSnapshotTestCase/SwiftSupport.swift | 0 .../Pods/iOSSnapshotTestCase/LICENSE | 0 .../Pods/iOSSnapshotTestCase/README.md | 0 .../Sample - Bento/AppDelegate.swift | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/Icon-App-1024x1024.png | Bin .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin .../Bento-Box.imageset/Bento-Box.jpg | Bin .../Bento-Box.imageset/Bento-Box@2x.jpg | Bin .../Bento-Box.imageset/Contents.json | 0 .../Assets.xcassets/Contents.json | 0 .../Base.lproj/LaunchScreen.storyboard | 0 .../Sample - Bento/Base.lproj/Main.storyboard | 0 .../Sample - Bento/Info.plist | 0 .../Sample - Bento/SceneDelegate.swift | 0 .../Sample - Bento/ViewController.swift | 0 480 files changed, 156 insertions(+) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/AppDelegate.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/AppDelegate.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Application.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Application.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_500px.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_camera.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_path.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_path.imageset/icon_path.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_photos.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_remote.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_safari.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_skype.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_slack.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_videos.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_vine.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_500px.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_path.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_path.imageset/logo_path.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_skype.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_slack.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_vine.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/DetailViewController.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/DetailViewController.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Fonts/Lato/Lato-Regular.ttf (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/MainViewController.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/MainViewController.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Supporting Files/Applications-Prefix.pch (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Supporting Files/Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Supporting Files/Storyboard.storyboard (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Supporting Files/en.lproj/InfoPlist.strings (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/Supporting Files/main.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/UIColor+Hexadecimal.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/UIColor+Hexadecimal.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Applications/applications.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/AppDelegate.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/AppDelegate.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Assets.xcassets/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Base.lproj/LaunchScreen.storyboard (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/CollectionViewController.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/CollectionViewController.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/Colors-Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/Colors-Prefix.pch (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/en.lproj/InfoPlist.strings (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Colors/main.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/Color.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/Color.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/Palette.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/Palette.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/UIColor+Hex.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/UIColor+Hex.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DataSource/colors.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DetailViewController.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/DetailViewController.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/search_icon.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/search_icon.imageset/search_icon.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_collection.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_search.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_search.imageset/tab_search.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_table.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_table.imageset/tab_table.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/Storyboard.storyboard (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/TableViewController.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/TableViewController.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Colors/main.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcodeproj/project.pbxproj (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata (100%) create mode 100644 DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme (100%) create mode 100644 DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Colors.xcscheme rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcworkspace/contents.xcworkspacedata (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet/DZNEmptyDataSet.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSet/Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Podfile (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Podfile.lock (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Manifest.lock (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Pods.xcodeproj/project.pbxproj (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/LICENSE (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/README.md (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/Constraint.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintAttributes.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintConfig.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintConstantTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintDSL.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintDescription.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintInsetTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintInsets.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintItem.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutGuide.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutSupport.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMaker.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerEditable.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerExtendable.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMakerRelatable.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintOffsetTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintPriority.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintPriorityTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintRelatableTarget.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintRelation.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintView+Extensions.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintView.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/ConstraintViewDSL.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/Debugging.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/LayoutConstraint.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/LayoutConstraintItem.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/Typealiases.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-dummy.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit.modulemap (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/SnapKit/SnapKit.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/LICENSE (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Pods/iOSSnapshotTestCase/README.md (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/AppDelegate.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Assets.xcassets/Contents.json (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Base.lproj/LaunchScreen.storyboard (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Base.lproj/Main.storyboard (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/Info.plist (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/SceneDelegate.swift (100%) rename {EmptyDataSet => DZNEmptyDataSet}/Sample - Bento/ViewController.swift (100%) diff --git a/EmptyDataSet/Applications/AppDelegate.h b/DZNEmptyDataSet/Applications/AppDelegate.h similarity index 100% rename from EmptyDataSet/Applications/AppDelegate.h rename to DZNEmptyDataSet/Applications/AppDelegate.h diff --git a/EmptyDataSet/Applications/AppDelegate.m b/DZNEmptyDataSet/Applications/AppDelegate.m similarity index 100% rename from EmptyDataSet/Applications/AppDelegate.m rename to DZNEmptyDataSet/Applications/AppDelegate.m diff --git a/EmptyDataSet/Applications/Application.h b/DZNEmptyDataSet/Applications/Application.h similarity index 100% rename from EmptyDataSet/Applications/Application.h rename to DZNEmptyDataSet/Applications/Application.h diff --git a/EmptyDataSet/Applications/Application.m b/DZNEmptyDataSet/Applications/Application.m similarity index 100% rename from EmptyDataSet/Applications/Application.m rename to DZNEmptyDataSet/Applications/Application.m diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-1024.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_highlight.imageset/button_background_foursquare_highlight@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_foursquare_normal.imageset/button_background_foursquare_normal@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_highlight.imageset/button_background_icloud_highlight@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_icloud_normal.imageset/button_background_icloud_normal@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_highlight.imageset/button_background_kickstarter_highlight@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/button_background_kickstarter_normal.imageset/button_background_kickstarter_normal@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png b/DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/header_pinterest.imageset/header_pinterest@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png b/DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/header_podcasts.imageset/header_podcasts@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_500px.imageset/icon_500px@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_airbnb.imageset/icon_airbnb@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_appstore.imageset/icon_appstore@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_camera.imageset/icon_camera@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_dropbox.imageset/icon_dropbox@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_facebook.imageset/icon_facebook@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_fancy.imageset/icon_fancy@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_foursquare.imageset/icon_foursquare@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_icloud.imageset/icon_icloud@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_instagram.imageset/icon_instagram@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_itunes_connect.imageset/icon_itunesconnect@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_kickstarter.imageset/icon_kickstarter@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_path.imageset/icon_path@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_photos.imageset/icon_photos@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_pinterest.imageset/icon_pinterest@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_podcasts.imageset/icon_podcasts@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_remote.imageset/icon_remote@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_safari.imageset/icon_safari@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_skype.imageset/icon_skype@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_slack.imageset/icon_slack@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_tumblr.imageset/icon_tumblr@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_twitter.imageset/icon_twitter@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_vesper.imageset/icon_vesper@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_videos.imageset/icon_videos@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_vine.imageset/icon_vine@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_whatsapp.imageset/icon_whatsapp@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/icon_wwdc.imageset/icon_wwdc@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/loading_imgBlue_78x78.imageset/loading_imgBlue_78x78@3x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_500px.imageset/logo_500px@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_airbnb.imageset/logo_airbnb@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_dropbox.imageset/logo_dropbox@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_facebook.imageset/logo_facebook@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_fancy.imageset/logo_fancy@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_foursquare.imageset/logo_foursquare@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_instagram.imageset/logo_instagram@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_kickstarter.imageset/logo_kickstarter@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_path.imageset/logo_path@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_pinterest.imageset/logo_pinterest@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_skype.imageset/logo_skype@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_slack.imageset/logo_slack@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_tumblr.imageset/logo_tumblr@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_twitter.imageset/logo_twitter@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_vesper.imageset/logo_vesper@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/logo_vine.imageset/logo_vine@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_500px.imageset/placeholder_500px@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_airbnb.imageset/placeholder_airbnb@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_appstore.imageset/placeholder_appstore@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_dropbox.imageset/placeholder_dropbox@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_facebook.imageset/placeholder_facebook@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_fancy.imageset/placeholder_fancy@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_foursquare.imageset/placeholder_foursquare@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_instagram.imageset/placeholder_instagram@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_itunes_connect.imageset/placeholder_itunes_connect@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_kickstarter.imageset/placeholder_kickstarter@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_path.imageset/placeholder_path@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_remote.imageset/placeholder_remote@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_skype.imageset/placeholder_skype@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_slack.imageset/placeholder_slack@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_tumblr.imageset/placeholder_tumblr@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vesper.imageset/placeholder_vesper@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_videos.imageset/placeholder_videos@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_vine.imageset/placeholder_vine@2x.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/Contents.json diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp.png diff --git a/EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png b/DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png similarity index 100% rename from EmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png rename to DZNEmptyDataSet/Applications/Assets.xcassets/placeholder_whatsapp.imageset/placeholder_whatsapp@2x.png diff --git a/EmptyDataSet/Applications/DetailViewController.h b/DZNEmptyDataSet/Applications/DetailViewController.h similarity index 100% rename from EmptyDataSet/Applications/DetailViewController.h rename to DZNEmptyDataSet/Applications/DetailViewController.h diff --git a/EmptyDataSet/Applications/DetailViewController.m b/DZNEmptyDataSet/Applications/DetailViewController.m similarity index 100% rename from EmptyDataSet/Applications/DetailViewController.m rename to DZNEmptyDataSet/Applications/DetailViewController.m diff --git a/EmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf b/DZNEmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf similarity index 100% rename from EmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf rename to DZNEmptyDataSet/Applications/Fonts/Ideal Sans/IdealSans-Book-Pro.otf diff --git a/EmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf b/DZNEmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf similarity index 100% rename from EmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf rename to DZNEmptyDataSet/Applications/Fonts/Lato/Lato-Regular.ttf diff --git a/EmptyDataSet/Applications/MainViewController.h b/DZNEmptyDataSet/Applications/MainViewController.h similarity index 100% rename from EmptyDataSet/Applications/MainViewController.h rename to DZNEmptyDataSet/Applications/MainViewController.h diff --git a/EmptyDataSet/Applications/MainViewController.m b/DZNEmptyDataSet/Applications/MainViewController.m similarity index 100% rename from EmptyDataSet/Applications/MainViewController.m rename to DZNEmptyDataSet/Applications/MainViewController.m diff --git a/EmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch b/DZNEmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch similarity index 100% rename from EmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch rename to DZNEmptyDataSet/Applications/Supporting Files/Applications-Prefix.pch diff --git a/EmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard b/DZNEmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from EmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard rename to DZNEmptyDataSet/Applications/Supporting Files/Base.lproj/LaunchScreen.storyboard diff --git a/EmptyDataSet/Applications/Supporting Files/Info.plist b/DZNEmptyDataSet/Applications/Supporting Files/Info.plist similarity index 100% rename from EmptyDataSet/Applications/Supporting Files/Info.plist rename to DZNEmptyDataSet/Applications/Supporting Files/Info.plist diff --git a/EmptyDataSet/Applications/Supporting Files/Storyboard.storyboard b/DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard similarity index 100% rename from EmptyDataSet/Applications/Supporting Files/Storyboard.storyboard rename to DZNEmptyDataSet/Applications/Supporting Files/Storyboard.storyboard diff --git a/EmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings b/DZNEmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings similarity index 100% rename from EmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings rename to DZNEmptyDataSet/Applications/Supporting Files/en.lproj/InfoPlist.strings diff --git a/EmptyDataSet/Applications/Supporting Files/main.m b/DZNEmptyDataSet/Applications/Supporting Files/main.m similarity index 100% rename from EmptyDataSet/Applications/Supporting Files/main.m rename to DZNEmptyDataSet/Applications/Supporting Files/main.m diff --git a/EmptyDataSet/Applications/UIColor+Hexadecimal.h b/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.h similarity index 100% rename from EmptyDataSet/Applications/UIColor+Hexadecimal.h rename to DZNEmptyDataSet/Applications/UIColor+Hexadecimal.h diff --git a/EmptyDataSet/Applications/UIColor+Hexadecimal.m b/DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m similarity index 100% rename from EmptyDataSet/Applications/UIColor+Hexadecimal.m rename to DZNEmptyDataSet/Applications/UIColor+Hexadecimal.m diff --git a/EmptyDataSet/Applications/applications.json b/DZNEmptyDataSet/Applications/applications.json similarity index 100% rename from EmptyDataSet/Applications/applications.json rename to DZNEmptyDataSet/Applications/applications.json diff --git a/EmptyDataSet/Colors/AppDelegate.h b/DZNEmptyDataSet/Colors/AppDelegate.h similarity index 100% rename from EmptyDataSet/Colors/AppDelegate.h rename to DZNEmptyDataSet/Colors/AppDelegate.h diff --git a/EmptyDataSet/Colors/AppDelegate.m b/DZNEmptyDataSet/Colors/AppDelegate.m similarity index 100% rename from EmptyDataSet/Colors/AppDelegate.m rename to DZNEmptyDataSet/Colors/AppDelegate.m diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-1024.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-57@2x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png b/DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png rename to DZNEmptyDataSet/Colors/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png diff --git a/EmptyDataSet/Colors/Assets.xcassets/Contents.json b/DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Assets.xcassets/Contents.json rename to DZNEmptyDataSet/Colors/Assets.xcassets/Contents.json diff --git a/EmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard b/DZNEmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from EmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard rename to DZNEmptyDataSet/Colors/Base.lproj/LaunchScreen.storyboard diff --git a/EmptyDataSet/Colors/CollectionViewController.h b/DZNEmptyDataSet/Colors/CollectionViewController.h similarity index 100% rename from EmptyDataSet/Colors/CollectionViewController.h rename to DZNEmptyDataSet/Colors/CollectionViewController.h diff --git a/EmptyDataSet/Colors/CollectionViewController.m b/DZNEmptyDataSet/Colors/CollectionViewController.m similarity index 100% rename from EmptyDataSet/Colors/CollectionViewController.m rename to DZNEmptyDataSet/Colors/CollectionViewController.m diff --git a/EmptyDataSet/Colors/Colors/Colors-Info.plist b/DZNEmptyDataSet/Colors/Colors/Colors-Info.plist similarity index 100% rename from EmptyDataSet/Colors/Colors/Colors-Info.plist rename to DZNEmptyDataSet/Colors/Colors/Colors-Info.plist diff --git a/EmptyDataSet/Colors/Colors/Colors-Prefix.pch b/DZNEmptyDataSet/Colors/Colors/Colors-Prefix.pch similarity index 100% rename from EmptyDataSet/Colors/Colors/Colors-Prefix.pch rename to DZNEmptyDataSet/Colors/Colors/Colors-Prefix.pch diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-120~car.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@2x~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29@3x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-29~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@2x~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40@3x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-40~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50@2x~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-50~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-57@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-60@3x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72@2x~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-72~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76@2x~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/AppIcon.appiconset/icon-76~ipad.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json b/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-568h@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd-plus@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default-hd@2x.png diff --git a/EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png b/DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png similarity index 100% rename from EmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png rename to DZNEmptyDataSet/Colors/Colors/System.xcassets/LaunchImage.launchimage/Default@2x.png diff --git a/EmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings b/DZNEmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings similarity index 100% rename from EmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings rename to DZNEmptyDataSet/Colors/Colors/en.lproj/InfoPlist.strings diff --git a/EmptyDataSet/Colors/Colors/main.m b/DZNEmptyDataSet/Colors/Colors/main.m similarity index 100% rename from EmptyDataSet/Colors/Colors/main.m rename to DZNEmptyDataSet/Colors/Colors/main.m diff --git a/EmptyDataSet/Colors/DataSource/Color.h b/DZNEmptyDataSet/Colors/DataSource/Color.h similarity index 100% rename from EmptyDataSet/Colors/DataSource/Color.h rename to DZNEmptyDataSet/Colors/DataSource/Color.h diff --git a/EmptyDataSet/Colors/DataSource/Color.m b/DZNEmptyDataSet/Colors/DataSource/Color.m similarity index 100% rename from EmptyDataSet/Colors/DataSource/Color.m rename to DZNEmptyDataSet/Colors/DataSource/Color.m diff --git a/EmptyDataSet/Colors/DataSource/Palette.h b/DZNEmptyDataSet/Colors/DataSource/Palette.h similarity index 100% rename from EmptyDataSet/Colors/DataSource/Palette.h rename to DZNEmptyDataSet/Colors/DataSource/Palette.h diff --git a/EmptyDataSet/Colors/DataSource/Palette.m b/DZNEmptyDataSet/Colors/DataSource/Palette.m similarity index 100% rename from EmptyDataSet/Colors/DataSource/Palette.m rename to DZNEmptyDataSet/Colors/DataSource/Palette.m diff --git a/EmptyDataSet/Colors/DataSource/UIColor+Hex.h b/DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.h similarity index 100% rename from EmptyDataSet/Colors/DataSource/UIColor+Hex.h rename to DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.h diff --git a/EmptyDataSet/Colors/DataSource/UIColor+Hex.m b/DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.m similarity index 100% rename from EmptyDataSet/Colors/DataSource/UIColor+Hex.m rename to DZNEmptyDataSet/Colors/DataSource/UIColor+Hex.m diff --git a/EmptyDataSet/Colors/DataSource/colors.json b/DZNEmptyDataSet/Colors/DataSource/colors.json similarity index 100% rename from EmptyDataSet/Colors/DataSource/colors.json rename to DZNEmptyDataSet/Colors/DataSource/colors.json diff --git a/EmptyDataSet/Colors/DetailViewController.h b/DZNEmptyDataSet/Colors/DetailViewController.h similarity index 100% rename from EmptyDataSet/Colors/DetailViewController.h rename to DZNEmptyDataSet/Colors/DetailViewController.h diff --git a/EmptyDataSet/Colors/DetailViewController.m b/DZNEmptyDataSet/Colors/DetailViewController.m similarity index 100% rename from EmptyDataSet/Colors/DetailViewController.m rename to DZNEmptyDataSet/Colors/DetailViewController.m diff --git a/EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json b/DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json rename to DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json diff --git a/EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png b/DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png rename to DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder.png diff --git a/EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png b/DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png rename to DZNEmptyDataSet/Colors/Images.xcassets/empty_placeholder.imageset/empty_placeholder@2x.png diff --git a/EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json b/DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json rename to DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/Contents.json diff --git a/EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png b/DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png rename to DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon.png diff --git a/EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png b/DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png rename to DZNEmptyDataSet/Colors/Images.xcassets/search_icon.imageset/search_icon@2x.png diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json b/DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/Contents.json diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png b/DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection.png diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png b/DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_collection.imageset/tab_collection@2x.png diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json b/DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/Contents.json diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png b/DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search.png diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png b/DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_search.imageset/tab_search@2x.png diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json b/DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/Contents.json diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png b/DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table.png diff --git a/EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png b/DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png similarity index 100% rename from EmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png rename to DZNEmptyDataSet/Colors/Images.xcassets/tab_table.imageset/tab_table@2x.png diff --git a/EmptyDataSet/Colors/Info.plist b/DZNEmptyDataSet/Colors/Info.plist similarity index 100% rename from EmptyDataSet/Colors/Info.plist rename to DZNEmptyDataSet/Colors/Info.plist diff --git a/EmptyDataSet/Colors/Storyboard.storyboard b/DZNEmptyDataSet/Colors/Storyboard.storyboard similarity index 100% rename from EmptyDataSet/Colors/Storyboard.storyboard rename to DZNEmptyDataSet/Colors/Storyboard.storyboard diff --git a/EmptyDataSet/Colors/TableViewController.h b/DZNEmptyDataSet/Colors/TableViewController.h similarity index 100% rename from EmptyDataSet/Colors/TableViewController.h rename to DZNEmptyDataSet/Colors/TableViewController.h diff --git a/EmptyDataSet/Colors/TableViewController.m b/DZNEmptyDataSet/Colors/TableViewController.m similarity index 100% rename from EmptyDataSet/Colors/TableViewController.m rename to DZNEmptyDataSet/Colors/TableViewController.m diff --git a/EmptyDataSet/Colors/main.m b/DZNEmptyDataSet/Colors/main.m similarity index 100% rename from EmptyDataSet/Colors/main.m rename to DZNEmptyDataSet/Colors/main.m diff --git a/EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj rename to DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj diff --git a/EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme new file mode 100644 index 00000000..3cf3b8b7 --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme rename to DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Bento.xcscheme diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Colors.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Colors.xcscheme new file mode 100644 index 00000000..2fb79974 --- /dev/null +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Colors.xcscheme @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme rename to DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme diff --git a/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme rename to DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSetTests.xcscheme diff --git a/EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme rename to DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/EmptyDataSet.xcscheme diff --git a/EmptyDataSet/DZNEmptyDataSet.xcworkspace/contents.xcworkspacedata b/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/contents.xcworkspacedata similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcworkspace/contents.xcworkspacedata rename to DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/contents.xcworkspacedata diff --git a/EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to DZNEmptyDataSet/DZNEmptyDataSet.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/EmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h b/DZNEmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h rename to DZNEmptyDataSet/DZNEmptyDataSet/DZNEmptyDataSet.h diff --git a/EmptyDataSet/DZNEmptyDataSet/Info.plist b/DZNEmptyDataSet/DZNEmptyDataSet/Info.plist similarity index 100% rename from EmptyDataSet/DZNEmptyDataSet/Info.plist rename to DZNEmptyDataSet/DZNEmptyDataSet/Info.plist diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m b/DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ApplicationsSnapshotTests.m diff --git a/EmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift b/DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift rename to DZNEmptyDataSet/DZNEmptyDataSetTests/DisplayEmptyDataSetTests.swift diff --git a/EmptyDataSet/DZNEmptyDataSetTests/Info.plist b/DZNEmptyDataSet/DZNEmptyDataSetTests/Info.plist similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/Info.plist rename to DZNEmptyDataSet/DZNEmptyDataSetTests/Info.plist diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_500px@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Airbnb@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_AppStore@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Camera@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Dropbox@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Facebook@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Fancy@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Foursquare@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Instagram@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Kickstarter@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Path@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Photos@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Pinterest@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Podcasts@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Remote@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Safari@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Skype@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Slack@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Tumblr@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Twitter@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vesper@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Videos@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_Vine@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WWDC@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_WhatsApp@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iCloud@2x.png diff --git a/EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png b/DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png similarity index 100% rename from EmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png rename to DZNEmptyDataSet/DZNEmptyDataSetTests/ReferenceImages_64/ApplicationsSnapshotTests/testApplicationEmptyDataSets_iTunes_Connect@2x.png diff --git a/EmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h b/DZNEmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h similarity index 100% rename from EmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h rename to DZNEmptyDataSet/EmptyDataSetTests/DZNEmptyDataSetTests-Bridging-Header.h diff --git a/EmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile similarity index 100% rename from EmptyDataSet/Podfile rename to DZNEmptyDataSet/Podfile diff --git a/EmptyDataSet/Podfile.lock b/DZNEmptyDataSet/Podfile.lock similarity index 100% rename from EmptyDataSet/Podfile.lock rename to DZNEmptyDataSet/Podfile.lock diff --git a/EmptyDataSet/Pods/Manifest.lock b/DZNEmptyDataSet/Pods/Manifest.lock similarity index 100% rename from EmptyDataSet/Pods/Manifest.lock rename to DZNEmptyDataSet/Pods/Manifest.lock diff --git a/EmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj similarity index 100% rename from EmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj rename to DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj diff --git a/EmptyDataSet/Pods/SnapKit/LICENSE b/DZNEmptyDataSet/Pods/SnapKit/LICENSE similarity index 100% rename from EmptyDataSet/Pods/SnapKit/LICENSE rename to DZNEmptyDataSet/Pods/SnapKit/LICENSE diff --git a/EmptyDataSet/Pods/SnapKit/README.md b/DZNEmptyDataSet/Pods/SnapKit/README.md similarity index 100% rename from EmptyDataSet/Pods/SnapKit/README.md rename to DZNEmptyDataSet/Pods/SnapKit/README.md diff --git a/EmptyDataSet/Pods/SnapKit/Source/Constraint.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/Constraint.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/Constraint.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintAttributes.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConfig.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintConstantTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDSL.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDescription.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsetTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintDirectionalInsets.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsetTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintInsets.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintItem.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide+Extensions.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuide.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutGuideDSL.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupport.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintLayoutSupportDSL.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMaker.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerEditable.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerExtendable.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerFinalizable.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerPriortizable.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMakerRelatable.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintMultiplierTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintOffsetTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriority.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintPriorityTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelatableTarget.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintRelation.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView+Extensions.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintView.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/ConstraintViewDSL.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/Debugging.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/Debugging.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/Debugging.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraint.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/LayoutConstraintItem.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/Typealiases.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/Typealiases.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/Typealiases.swift diff --git a/EmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift b/DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift similarity index 100% rename from EmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift rename to DZNEmptyDataSet/Pods/SnapKit/Source/UILayoutSupport+Extensions.swift diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-Info.plist diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.markdown diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-acknowledgements.plist diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-dummy.m diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento-umbrella.h diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.modulemap diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-Info.plist diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.markdown diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-acknowledgements.plist diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-dummy.m diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-frameworks.sh diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests-umbrella.h diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.modulemap diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-Info.plist diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.markdown diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-acknowledgements.plist diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-dummy.m diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet-umbrella.h diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.modulemap diff --git a/EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-Info.plist diff --git a/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m rename to DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-dummy.m diff --git a/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch rename to DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-prefix.pch diff --git a/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h rename to DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit-umbrella.h diff --git a/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap rename to DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.modulemap diff --git a/EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/SnapKit/SnapKit.xcconfig diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/Info.plist diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-Info.plist diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-dummy.m diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-prefix.pch diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase-umbrella.h diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.modulemap diff --git a/EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig similarity index 100% rename from EmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig rename to DZNEmptyDataSet/Pods/Target Support Files/iOSSnapshotTestCase/iOSSnapshotTestCase.xcconfig diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.h diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.h diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Diff.m diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.h diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/LICENSE diff --git a/EmptyDataSet/Pods/iOSSnapshotTestCase/README.md b/DZNEmptyDataSet/Pods/iOSSnapshotTestCase/README.md similarity index 100% rename from EmptyDataSet/Pods/iOSSnapshotTestCase/README.md rename to DZNEmptyDataSet/Pods/iOSSnapshotTestCase/README.md diff --git a/EmptyDataSet/Sample - Bento/AppDelegate.swift b/DZNEmptyDataSet/Sample - Bento/AppDelegate.swift similarity index 100% rename from EmptyDataSet/Sample - Bento/AppDelegate.swift rename to DZNEmptyDataSet/Sample - Bento/AppDelegate.swift diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box.jpg diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Bento-Box@2x.jpg diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Bento-Box.imageset/Contents.json diff --git a/EmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json b/DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json similarity index 100% rename from EmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json rename to DZNEmptyDataSet/Sample - Bento/Assets.xcassets/Contents.json diff --git a/EmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard b/DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from EmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard rename to DZNEmptyDataSet/Sample - Bento/Base.lproj/LaunchScreen.storyboard diff --git a/EmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard b/DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard similarity index 100% rename from EmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard rename to DZNEmptyDataSet/Sample - Bento/Base.lproj/Main.storyboard diff --git a/EmptyDataSet/Sample - Bento/Info.plist b/DZNEmptyDataSet/Sample - Bento/Info.plist similarity index 100% rename from EmptyDataSet/Sample - Bento/Info.plist rename to DZNEmptyDataSet/Sample - Bento/Info.plist diff --git a/EmptyDataSet/Sample - Bento/SceneDelegate.swift b/DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift similarity index 100% rename from EmptyDataSet/Sample - Bento/SceneDelegate.swift rename to DZNEmptyDataSet/Sample - Bento/SceneDelegate.swift diff --git a/EmptyDataSet/Sample - Bento/ViewController.swift b/DZNEmptyDataSet/Sample - Bento/ViewController.swift similarity index 100% rename from EmptyDataSet/Sample - Bento/ViewController.swift rename to DZNEmptyDataSet/Sample - Bento/ViewController.swift From f16e5c65422e9f52bfbeac0e5c0bb45b62d87158 Mon Sep 17 00:00:00 2001 From: dzenbot Date: Tue, 7 Jan 2020 00:27:46 -0800 Subject: [PATCH 20/25] Slowly replicating the Application sample's app using the new Swift framework instead --- DZNEmptyDataSet/Applications/AppDelegate.m | 1 + DZNEmptyDataSet/Applications/Application.h | 9 + DZNEmptyDataSet/Applications/Application.m | 4 + .../ApplicationViewController.swift | 341 ++++++++++++++++ .../Applications-Bridging-Header.h | 6 + .../Applications/DetailViewController.m | 45 +-- .../Applications/MainViewController.m | 25 +- .../Applications/applications.json | 13 +- .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 82 +++- DZNEmptyDataSet/Podfile | 4 + DZNEmptyDataSet/Podfile.lock | 2 +- DZNEmptyDataSet/Pods/Manifest.lock | 2 +- .../Pods/Pods.xcodeproj/project.pbxproj | 380 +++++++++++++----- 13 files changed, 752 insertions(+), 162 deletions(-) create mode 100644 DZNEmptyDataSet/Applications/ApplicationViewController.swift create mode 100644 DZNEmptyDataSet/Applications/Applications-Bridging-Header.h diff --git a/DZNEmptyDataSet/Applications/AppDelegate.m b/DZNEmptyDataSet/Applications/AppDelegate.m index e61849d3..e1600fee 100644 --- a/DZNEmptyDataSet/Applications/AppDelegate.m +++ b/DZNEmptyDataSet/Applications/AppDelegate.m @@ -8,6 +8,7 @@ #import "AppDelegate.h" #import "MainViewController.h" +#import "Applications-Swift.h" @implementation AppDelegate diff --git a/DZNEmptyDataSet/Applications/Application.h b/DZNEmptyDataSet/Applications/Application.h index fa521373..73bde9a7 100644 --- a/DZNEmptyDataSet/Applications/Application.h +++ b/DZNEmptyDataSet/Applications/Application.h @@ -8,6 +8,8 @@ #import +NS_ASSUME_NONNULL_BEGIN + typedef NS_ENUM(NSUInteger, ApplicationType) { ApplicationTypeUndefined = 0, @@ -50,6 +52,11 @@ typedef NS_ENUM(NSUInteger, ApplicationType) { @property (nonatomic, strong) NSString *barColor; @property (nonatomic, strong) NSString *tintColor; @property (nonatomic, strong) NSString *identifier; +@property (nonatomic, strong) NSString * _Nullable title; +@property (nonatomic, strong) NSString * _Nullable subtitle; +@property (nonatomic, strong) NSString * _Nullable button; +@property (nonatomic, strong) NSString * _Nullable backgroundColor; + @property (nonatomic) ApplicationType type; - (instancetype)initWithDictionary:(NSDictionary *)dict; @@ -58,3 +65,5 @@ typedef NS_ENUM(NSUInteger, ApplicationType) { + (NSArray *)applicationsFromJSON:(id)JSON; @end + +NS_ASSUME_NONNULL_END diff --git a/DZNEmptyDataSet/Applications/Application.m b/DZNEmptyDataSet/Applications/Application.m index ab438e70..67df486b 100644 --- a/DZNEmptyDataSet/Applications/Application.m +++ b/DZNEmptyDataSet/Applications/Application.m @@ -19,6 +19,10 @@ - (instancetype)initWithDictionary:(NSDictionary *)dict self.barColor = dict[@"bar_color"]; self.tintColor = dict[@"tint_color"]; self.identifier = dict[@"identifier"]; + self.title = dict[@"title"]; + self.subtitle = dict[@"subtitle"]; + self.button = dict[@"button"]; + self.backgroundColor = dict[@"background_color"]; } return self; } diff --git a/DZNEmptyDataSet/Applications/ApplicationViewController.swift b/DZNEmptyDataSet/Applications/ApplicationViewController.swift new file mode 100644 index 00000000..b01d5ef3 --- /dev/null +++ b/DZNEmptyDataSet/Applications/ApplicationViewController.swift @@ -0,0 +1,341 @@ +// +// ApplicationViewController.swift +// Applications +// +// Created by Ignacio Romero Zurbuchen on 2020-01-02. +// Copyright © 2020 DZN. All rights reserved. +// + +import UIKit +import EmptyDataSet + +class ApplicationViewController: UITableViewController { + + var app: Application? + + @objc + convenience init(application: Application) { + self.init(nibName: nil, bundle: nil) + app = application + } + + override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) { + super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func viewDidLoad() { + super.viewDidLoad() + + tableView.emptyDataSetSource = self + tableView.emptyDataSetDelegate = self + + view.backgroundColor = .white + + configureHeaderAndFooter() + configureNavigationBar() + } + + override func viewDidAppear(_ animated: Bool) { + super.viewDidAppear(animated) + super.setNeedsStatusBarAppearanceUpdate() + } + + func configureHeaderAndFooter() { + guard let app = app else { return } + + var imageName: String? + + if app.type == .typePinterest { + imageName = "header_pinterest" + } else if app.type == .typePodcasts { + imageName = "header_podcasts" + } + + if let imageName = imageName, let image = UIImage(named: imageName) { + let imageView = UIImageView(image: image) + + let frame = CGRect(origin: .zero, size: CGSize(width: view.bounds.width, height: image.size.height)) + let headerView = UIView(frame: frame) + imageView.center = headerView.center + headerView.addSubview(imageView) + + tableView.tableHeaderView = headerView + } + + tableView.tableFooterView = UIView() + } + + func configureNavigationBar() { + guard let app = app else { return } + + if let logoImage = UIImage(named: "logo_\(app.displayName.lowercased())") { + navigationItem.titleView = UIImageView(image: logoImage) + } else { + navigationItem.titleView = nil + navigationItem.title = app.displayName + } + + let barColor = UIColor(hex: app.barColor) + let tintColor = UIColor(hex: app.tintColor) + + navigationController?.navigationBar.titleTextAttributes = nil + navigationController?.navigationBar.barTintColor = barColor + navigationController?.navigationBar.tintColor = tintColor + } + + override var preferredStatusBarStyle: UIStatusBarStyle { + guard let app = app else { return .default } + + switch (app.type) { + case .type500px, + .typeCamera, + .typeFacebook, + .typeFancy, + .typeFoursquare, + .typeInstagram, + .typePath, + .typeSkype, + .typeTumblr, + .typeTwitter, + .typeVesper, + .typeVine: + return .lightContent + default: + return .default + } + } + + override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + return 0 + } + + override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + return UITableViewCell() + } +} + +extension ApplicationViewController: EmptyDataSetSource { + + func title(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? { + guard let app = app, let title = app.title else { return nil } + + var attributes = [NSAttributedString.Key: Any]() + + switch app.type { + case .type500px: + attributes[NSAttributedString.Key.font] = UIFont.systemFont(ofSize: 17, weight: .bold) + attributes[NSAttributedString.Key.foregroundColor] = UIColor(hex: "545454") + case .typeAirbnb: + attributes[NSAttributedString.Key.font] = UIFont(name: "HelveticaNeue-Light", size: 22) + attributes[NSAttributedString.Key.foregroundColor] = UIColor(hex: "c9c9c9") + default: + break + } + + return NSAttributedString(string: title, attributes: attributes) + } + + func description(forEmptyDataSet scrollView: UIScrollView) -> NSAttributedString? { + guard let app = app, let subtitle = app.subtitle else { return nil } + + var attributes = [NSAttributedString.Key: Any]() + + switch app.type { + case .type500px: + attributes[NSAttributedString.Key.font] = UIFont.systemFont(ofSize: 15, weight: .bold) + attributes[NSAttributedString.Key.foregroundColor] = UIColor(hex: "545454") + case .typeAirbnb: + attributes[NSAttributedString.Key.font] = UIFont.systemFont(ofSize: 13, weight: .regular) + attributes[NSAttributedString.Key.foregroundColor] = UIColor(hex: "cfcfcf") + default: + break + } + + return NSAttributedString(string: subtitle, attributes: attributes) + } + + func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { + guard let app = app else { return nil } + + let imageName = "placeholder_\(app.displayName.lowercased())".replacingOccurrences(of: " ", with: "_") + return UIImage(named: imageName) + } + + func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? { + guard let app = app else { return nil } + return UIColor(hex: app.backgroundColor) + } +} + +extension ApplicationViewController: EmptyDataSetDelegate { + +} + + +//- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView +//{ +// NSString *text = nil; +// UIFont *font = nil; +// UIColor *textColor = nil; +// +// NSMutableDictionary *attributes = [NSMutableDictionary new]; +// +// switch (self.application.type) { + +// case ApplicationTypeCamera: +// { +// text = @"Please Allow Photo Access"; +// font = [UIFont boldSystemFontOfSize:18.0]; +// textColor = [UIColor colorWithHex:@"5f6978"]; +// break; +// } +// case ApplicationTypeDropbox: +// { +// text = @"Star Your Favorite Files"; +// font = [UIFont boldSystemFontOfSize:17.0]; +// textColor = [UIColor colorWithHex:@"25282b"]; +// break; +// } +// case ApplicationTypeFacebook: +// { +// text = @"No friends to show."; +// font = [UIFont boldSystemFontOfSize:22.0]; +// textColor = [UIColor colorWithHex:@"acafbd"]; +// +// NSShadow *shadow = [NSShadow new]; +// shadow.shadowColor = [UIColor whiteColor]; +// shadow.shadowOffset = CGSizeMake(0.0, 1.0); +// [attributes setObject:shadow forKey:NSShadowAttributeName]; +// break; +// } +// case ApplicationTypeFancy: +// { +// text = @"No Owns yet"; +// font = [UIFont boldSystemFontOfSize:14.0]; +// textColor = [UIColor colorWithHex:@"494c53"]; +// break; +// } +// case ApplicationTypeiCloud: +// { +// text = @"iCloud Photo Sharing"; +// break; +// } +// case ApplicationTypeInstagram: +// { +// text = @"Instagram Direct"; +// font = [UIFont fontWithName:@"HelveticaNeue-Light" size:26.0]; +// textColor = [UIColor colorWithHex:@"444444"]; +// break; +// } +// case ApplicationTypeiTunesConnect: +// { +// text = @"No Favorites"; +// font = [UIFont systemFontOfSize:22.0]; +// break; +// } +// case ApplicationTypeKickstarter: +// { +// text = @"Activity empty"; +// font = [UIFont boldSystemFontOfSize:16.0]; +// textColor = [UIColor colorWithHex:@"828587"]; +// [attributes setObject:@(-0.10) forKey:NSKernAttributeName]; +// break; +// } +// case ApplicationTypePath: +// { +// text = @"Message Your Friends"; +// font = [UIFont boldSystemFontOfSize:14.0]; +// textColor = [UIColor whiteColor]; +// break; +// } +// case ApplicationTypePinterest: +// { +// text = @"No boards to display"; +// font = [UIFont boldSystemFontOfSize:18.0]; +// textColor = [UIColor colorWithHex:@"666666"]; +// break; +// } +// case ApplicationTypePhotos: +// { +// text = @"No Photos or Videos"; +// break; +// } +// case ApplicationTypePodcasts: +// { +// text = @"No Podcasts"; +// break; +// } +// case ApplicationTypeRemote: +// { +// text = @"Cannot Connect to a Local Network"; +// font = [UIFont fontWithName:@"HelveticaNeue-Medium" size:18.0]; +// textColor = [UIColor colorWithHex:@"555555"]; +// break; +// } +// case ApplicationTypeTumblr: +// { +// text = @"This is your Dashboard."; +// font = [UIFont boldSystemFontOfSize:18.0]; +// textColor = [UIColor colorWithHex:@"aab6c4"]; +// break; +// } +// case ApplicationTypeTwitter: +// { +// text = @"No lists"; +// font = [UIFont boldSystemFontOfSize:14.0]; +// textColor = [UIColor colorWithHex:@"292f33"]; +// break; +// } +// case ApplicationTypeVesper: +// { +// text = @"No Notes"; +// font = [UIFont fontWithName:@"IdealSans-Book-Pro" size:16.0]; +// textColor = [UIColor colorWithHex:@"d9dce1"]; +// break; +// } +// case ApplicationTypeVideos: +// { +// text = @"AirPlay"; +// font = [UIFont systemFontOfSize:17.0]; +// textColor = [UIColor colorWithHex:@"414141"]; +// break; +// } +// case ApplicationTypeVine: +// { +// text = @"Welcome to VMs"; +// font = [UIFont boldSystemFontOfSize:22.0]; +// textColor = [UIColor colorWithHex:@"595959"]; +// [attributes setObject:@(0.45) forKey:NSKernAttributeName]; +// break; +// } +// case ApplicationTypeWhatsapp: +// { +// text = @"No Media"; +// font = [UIFont systemFontOfSize:20.0]; +// textColor = [UIColor colorWithHex:@"808080"]; +// break; +// } +// case ApplicationTypeWWDC: +// { +// text = @"No Favorites"; +// font = [UIFont fontWithName:@"HelveticaNeue-Medium" size:16.0]; +// textColor = [UIColor colorWithHex:@"b9b9b9"]; +// break; +// } +// default: +// return nil; +// } +// +// if (!text) { +// return nil; +// } +// +// if (font) [attributes setObject:font forKey:NSFontAttributeName]; +// if (textColor) [attributes setObject:textColor forKey:NSForegroundColorAttributeName]; +// +// return [[NSAttributedString alloc] initWithString:text attributes:attributes]; +//} diff --git a/DZNEmptyDataSet/Applications/Applications-Bridging-Header.h b/DZNEmptyDataSet/Applications/Applications-Bridging-Header.h new file mode 100644 index 00000000..80ce0f5b --- /dev/null +++ b/DZNEmptyDataSet/Applications/Applications-Bridging-Header.h @@ -0,0 +1,6 @@ +// +// Use this file to import your target's public headers that you would like to expose to Swift. +// + +#import "Application.h" +#import "UIColor+Hexadecimal.h" diff --git a/DZNEmptyDataSet/Applications/DetailViewController.m b/DZNEmptyDataSet/Applications/DetailViewController.m index 0a8869bf..fb68a2c3 100644 --- a/DZNEmptyDataSet/Applications/DetailViewController.m +++ b/DZNEmptyDataSet/Applications/DetailViewController.m @@ -13,7 +13,6 @@ @interface DetailViewController () @property (nonatomic, strong) Application *application; -@property (nonatomic, getter=isLoading) BOOL loading; @end @implementation DetailViewController @@ -174,17 +173,6 @@ - (Application *)randomApplication return [[self.applications filteredArrayUsingPredicate:query] firstObject]; } -- (void)setLoading:(BOOL)loading -{ - if (self.isLoading == loading) { - return; - } - - _loading = loading; - - [self.tableView reloadEmptyDataSet]; -} - #pragma mark - UITableViewDataSource Methods @@ -595,17 +583,10 @@ - (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView - (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView { - if (self.isLoading) { - return [UIImage imageNamed:@"loading_imgBlue_78x78" inBundle:[NSBundle bundleForClass:[self class]] compatibleWithTraitCollection:nil]; - } - else { - NSString *imageName = [[[NSString stringWithFormat:@"placeholder_%@", self.application.displayName] lowercaseString] - stringByReplacingOccurrencesOfString:@" " withString:@"_"]; - - UIImage *image = [UIImage imageNamed:imageName inBundle:[NSBundle bundleForClass:[self class]] compatibleWithTraitCollection:nil]; - - return image; - } + NSString *imageName = [[[NSString stringWithFormat:@"placeholder_%@", self.application.displayName] lowercaseString] + stringByReplacingOccurrencesOfString:@" " withString:@"_"]; + + return [UIImage imageNamed:imageName inBundle:[NSBundle bundleForClass:[self class]] compatibleWithTraitCollection:nil]; } - (CAAnimation *)imageAnimationForEmptyDataSet:(UIScrollView *)scrollView @@ -616,7 +597,6 @@ - (CAAnimation *)imageAnimationForEmptyDataSet:(UIScrollView *)scrollView animation.duration = 0.25; animation.cumulative = YES; animation.repeatCount = MAXFLOAT; - return animation; } @@ -800,27 +780,14 @@ - (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView return YES; } -- (BOOL)emptyDataSetShouldAnimateImageView:(UIScrollView *)scrollView -{ - return self.isLoading; -} - - (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view { - self.loading = YES; - - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ - self.loading = NO; - }); + } - (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button { - self.loading = YES; - - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ - self.loading = NO; - }); + } @end diff --git a/DZNEmptyDataSet/Applications/MainViewController.m b/DZNEmptyDataSet/Applications/MainViewController.m index bbf8daff..7f1fb371 100644 --- a/DZNEmptyDataSet/Applications/MainViewController.m +++ b/DZNEmptyDataSet/Applications/MainViewController.m @@ -8,6 +8,9 @@ #import "MainViewController.h" #import "UIColor+Hexadecimal.h" +#import "Applications-Swift.h" + +static BOOL isVersion2 = YES; @interface MainViewController () @property (nonatomic, strong) NSArray *applications; @@ -95,15 +98,21 @@ - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPa - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { Application *app = self.applications[indexPath.row]; - DetailViewController *controller = [[DetailViewController alloc] initWithApplication:app]; - controller.applications = self.applications; - controller.allowShuffling = YES; - - if ([controller preferredStatusBarStyle] == UIStatusBarStyleLightContent) { - self.navigationController.navigationBar.barStyle = UIBarStyleBlack; + + if (isVersion2) { + ApplicationViewController *controller = [[ApplicationViewController alloc] initWithApplication:app]; + [self.navigationController pushViewController:controller animated:YES]; + } else { + DetailViewController *controller = [[DetailViewController alloc] initWithApplication:app]; + controller.applications = self.applications; + controller.allowShuffling = YES; + + if ([controller preferredStatusBarStyle] == UIStatusBarStyleLightContent) { + self.navigationController.navigationBar.barStyle = UIBarStyleBlack; + } + + [self.navigationController pushViewController:controller animated:YES]; } - - [self.navigationController pushViewController:controller animated:YES]; } @end diff --git a/DZNEmptyDataSet/Applications/applications.json b/DZNEmptyDataSet/Applications/applications.json index ca094a84..81533ce0 100644 --- a/DZNEmptyDataSet/Applications/applications.json +++ b/DZNEmptyDataSet/Applications/applications.json @@ -4,14 +4,23 @@ "developer_name": "500px", "bar_color": "242424", "tint_color": "d7d7d7", - "identifier": "471965292" + "identifier": "471965292", + "title": "No Photos", + "subtitle": "Get started by uploading a photo.", + "button": "", + "background_color": "000000" }, { "display_name": "Airbnb", "developer_name": "Airbnb, Inc.", "bar_color": "f8f8f8", "tint_color": "08aeff", - "identifier": "401626263" + "identifier": "401626263", + "title": "No Messages", + "subtitle": "When you have messages, you’ll see them here.", + "button": "", + "background_color": "ffffff" + }, { "display_name": "AppStore", diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index d7df33dc..6ab3f37d 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 166785C29B6C017532F9BA5B /* Pods_Applications.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B820B46A35C2CCC62125F08 /* Pods_Applications.framework */; }; 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */; }; 3B12888038B2AA7F321565FC /* Pods_Bento.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A616CBACE16863851A421398 /* Pods_Bento.framework */; }; 3FF250E1FED243B2337A1DF9 /* Pods_EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */; }; @@ -34,6 +35,7 @@ 4FA1AB2723BE7A10007CF389 /* EmptyDataSetDelegate.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB1523BD3679007CF389 /* EmptyDataSetDelegate.swift */; settings = {ATTRIBUTES = (Public, ); }; }; 4FA1AB2823BE7A10007CF389 /* EmptyDataSetView.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB0E23BC2BC9007CF389 /* EmptyDataSetView.swift */; }; 4FA1AB2923BE7A10007CF389 /* EmptyDataSetImpl.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4FA1AB1023BC2C20007CF389 /* EmptyDataSetImpl.swift */; }; + 4FA1AB2C23BEC6D9007CF389 /* ApplicationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AB2B23BEC6D9007CF389 /* ApplicationViewController.swift */; }; F56CEC4B1E67430000E2FACA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F58A3E7F1E66B62F0086E0EF /* Assets.xcassets */; }; F58A3E3C1E66AEE90086E0EF /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */; }; F58A3E411E66AEE90086E0EF /* ApplicationsSnapshotTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */; }; @@ -87,8 +89,9 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 08CB8787A6FE35C35EF64E97 /* Pods-Applications.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Applications.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Applications/Pods-Applications.debug.xcconfig"; sourceTree = ""; }; 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.debug.xcconfig"; sourceTree = ""; }; - 1C26D4C95382E14DAC506EE2 /* Pods-EmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; + 1B820B46A35C2CCC62125F08 /* Pods_Applications.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Applications.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 23BB766D928F8635A201F389 /* Pods_EmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 35391D2768B732E0C798EDE8 /* Pods-EmptyDataSet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSet.debug.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.debug.xcconfig"; sourceTree = ""; }; 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; @@ -115,13 +118,15 @@ 4FA1AB1E23BE76A2007CF389 /* UIScrollView+EmptyDataSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIScrollView+EmptyDataSet.m"; sourceTree = ""; }; 4FA1AB2123BE771F007CF389 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 4FA1AB2223BE771F007CF389 /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = ""; }; + 4FA1AB2A23BEC6D9007CF389 /* Applications-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Applications-Bridging-Header.h"; sourceTree = ""; }; + 4FA1AB2B23BEC6D9007CF389 /* ApplicationViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApplicationViewController.swift; sourceTree = ""; }; 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DZNEmptyDataSetTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Bento.release.xcconfig"; path = "Pods/Target Support Files/Pods-Bento/Pods-Bento.release.xcconfig"; sourceTree = ""; }; 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DZNEmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DZNEmptyDataSetTests/Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; 8A3065E7E54480E6A729ACA3 /* Pods-EmptyDataSet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSet.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSet/Pods-EmptyDataSet.release.xcconfig"; sourceTree = ""; }; A616CBACE16863851A421398 /* Pods_Bento.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Bento.framework; sourceTree = BUILT_PRODUCTS_DIR; }; BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_EmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-EmptyDataSetTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-EmptyDataSetTests/Pods-EmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; + EA4364DC724FC0552FA06E59 /* Pods-Applications.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Applications.release.xcconfig"; path = "Pods/Target Support Files/Pods-Applications/Pods-Applications.release.xcconfig"; sourceTree = ""; }; F58A3E321E66AEE90086E0EF /* DZNEmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DZNEmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; }; F58A3E3B1E66AEE90086E0EF /* DZNEmptyDataSetTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DZNEmptyDataSetTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; F58A3E401E66AEE90086E0EF /* ApplicationsSnapshotTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ApplicationsSnapshotTests.m; sourceTree = ""; }; @@ -209,6 +214,7 @@ buildActionMask = 2147483647; files = ( F58A3EA91E66B7940086E0EF /* DZNEmptyDataSet.framework in Frameworks */, + 166785C29B6C017532F9BA5B /* Pods_Applications.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -226,14 +232,14 @@ 242E9BB031D3264D62C731D6 /* Pods */ = { isa = PBXGroup; children = ( - 1C26D4C95382E14DAC506EE2 /* Pods-EmptyDataSetTests.debug.xcconfig */, - DC2B63699C936D9C9CDB1740 /* Pods-EmptyDataSetTests.release.xcconfig */, 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, 0964B6B448E0388404127D2C /* Pods-Bento.debug.xcconfig */, 80429DE569A05F9D34CC30C7 /* Pods-Bento.release.xcconfig */, 35391D2768B732E0C798EDE8 /* Pods-EmptyDataSet.debug.xcconfig */, 8A3065E7E54480E6A729ACA3 /* Pods-EmptyDataSet.release.xcconfig */, + 08CB8787A6FE35C35EF64E97 /* Pods-Applications.debug.xcconfig */, + EA4364DC724FC0552FA06E59 /* Pods-Applications.release.xcconfig */, ); name = Pods; sourceTree = ""; @@ -274,6 +280,7 @@ 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */, A616CBACE16863851A421398 /* Pods_Bento.framework */, BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */, + 1B820B46A35C2CCC62125F08 /* Pods_Applications.framework */, ); name = Frameworks; sourceTree = ""; @@ -337,12 +344,14 @@ F58A3E881E66B62F0086E0EF /* MainViewController.m */, F58A3E801E66B62F0086E0EF /* DetailViewController.h */, F58A3E811E66B62F0086E0EF /* DetailViewController.m */, + 4FA1AB2B23BEC6D9007CF389 /* ApplicationViewController.swift */, F58A3E7A1E66B62F0086E0EF /* Application.h */, F58A3E7B1E66B62F0086E0EF /* Application.m */, F58A3E911E66B62F0086E0EF /* UIColor+Hexadecimal.h */, F58A3E921E66B62F0086E0EF /* UIColor+Hexadecimal.m */, F58A3EA11E66B6970086E0EF /* Resources */, F58A3E8A1E66B62F0086E0EF /* Supporting Files */, + 4FA1AB2A23BEC6D9007CF389 /* Applications-Bridging-Header.h */, ); name = "Sample - Applications"; path = Applications; @@ -550,9 +559,11 @@ isa = PBXNativeTarget; buildConfigurationList = F58A3E791E66B5410086E0EF /* Build configuration list for PBXNativeTarget "Applications" */; buildPhases = ( + 2F3341A4DF9A1B96AAFD80A9 /* [CP] Check Pods Manifest.lock */, F58A3E5F1E66B5410086E0EF /* Sources */, F58A3E601E66B5410086E0EF /* Frameworks */, F58A3E611E66B5410086E0EF /* Resources */, + FFB179DA559B93229CB438FE /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -610,6 +621,7 @@ }; F58A3E621E66B5410086E0EF = { CreatedOnToolsVersion = 8.2.1; + LastSwiftMigration = 1130; ProvisioningStyle = Manual; }; F5BE15241E713E2100F6FBEA = { @@ -721,6 +733,28 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Bento/Pods-Bento-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; + 2F3341A4DF9A1B96AAFD80A9 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Applications-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; 5C0F88490C790BF71E5724B6 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -807,6 +841,24 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; + FFB179DA559B93229CB438FE /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Applications/Pods-Applications-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SnapKit.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Applications/Pods-Applications-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -862,6 +914,7 @@ F58A3EA01E66B62F0086E0EF /* UIColor+Hexadecimal.m in Sources */, F58A3E9F1E66B62F0086E0EF /* main.m in Sources */, F58A3E971E66B62F0086E0EF /* DetailViewController.m in Sources */, + 4FA1AB2C23BEC6D9007CF389 /* ApplicationViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1213,6 +1266,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 3B3456B9A6D72D48F19A7F61 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = DZNEmptyDataSetTests/Info.plist; @@ -1231,6 +1285,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 84189CEC4210484C1F24D3A8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = DZNEmptyDataSetTests/Info.plist; @@ -1246,30 +1301,41 @@ }; F58A3E771E66B5410086E0EF /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 08CB8787A6FE35C35EF64E97 /* Pods-Applications.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = ""; + CLANG_ENABLE_MODULES = YES; + DEFINES_MODULE = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = "$(SRCROOT)/Applications/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Applications; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Applications/Applications-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; F58A3E781E66B5410086E0EF /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = EA4364DC724FC0552FA06E59 /* Pods-Applications.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = ""; + CLANG_ENABLE_MODULES = YES; + DEFINES_MODULE = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = "$(SRCROOT)/Applications/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Applications; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Applications/Applications-Bridging-Header.h"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 1; }; name = Release; @@ -1279,7 +1345,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; INFOPLIST_FILE = Colors/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Colors; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1292,7 +1358,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; INFOPLIST_FILE = Colors/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.dzn.Colors; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/DZNEmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile index 3746e99f..05a3e8f1 100644 --- a/DZNEmptyDataSet/Podfile +++ b/DZNEmptyDataSet/Podfile @@ -9,6 +9,10 @@ target 'Bento' do pod 'SnapKit' end +target 'Applications' do + pod 'SnapKit' +end + target 'EmptyDataSet' do pod 'SnapKit' end diff --git a/DZNEmptyDataSet/Podfile.lock b/DZNEmptyDataSet/Podfile.lock index 00a9f1b1..3811d411 100644 --- a/DZNEmptyDataSet/Podfile.lock +++ b/DZNEmptyDataSet/Podfile.lock @@ -19,6 +19,6 @@ SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: e60d37824ec50488d4ff5a90e11214777471be51 +PODFILE CHECKSUM: 37424b22f1f24c4492a68c9afca2453badf25f5a COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Manifest.lock b/DZNEmptyDataSet/Pods/Manifest.lock index 00a9f1b1..3811d411 100644 --- a/DZNEmptyDataSet/Pods/Manifest.lock +++ b/DZNEmptyDataSet/Pods/Manifest.lock @@ -19,6 +19,6 @@ SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb -PODFILE CHECKSUM: e60d37824ec50488d4ff5a90e11214777471be51 +PODFILE CHECKSUM: 37424b22f1f24c4492a68c9afca2453badf25f5a COCOAPODS: 1.8.4 diff --git a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj index b07ec48e..cd18af17 100644 --- a/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/Pods/Pods.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 039EAFE7935113805F3FC21BF1B7C9D5 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBB3E566465976FD7618A282BD43D799 /* LayoutConstraint.swift */; }; 04543980C4A7CE442330B0F1BC4A9A54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 09F3021D3323D0B64812EE10886827AB /* UIImage+Diff.h in Headers */ = {isa = PBXBuildFile; fileRef = 781106B5E3E775340896FC5DD09BCF14 /* UIImage+Diff.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 0B8B6AE8660F732E4DED59573FE1355B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 115B9F2A343D1880D138F41B9491C125 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */; }; 144F29212101A4D03109E989BE0A4F92 /* FBSnapshotTestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 1956E392D500F3CD899D39A5F805736D /* Typealiases.swift in Sources */ = {isa = PBXBuildFile; fileRef = F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */; }; @@ -21,14 +22,14 @@ 2A1BBBC87AC2367BD14610A9D10D285E /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */; }; 2C06F2E972444D359754D21AC46BFFE2 /* ConstraintInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */; }; 2CA412DDC41031745F66213AD86238FE /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */; }; - 2CBF7DEEF65392897EFBC35D9A09FABB /* Pods-EmptyDataSet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */; }; + 2CBF7DEEF65392897EFBC35D9A09FABB /* Pods-EmptyDataSet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E8CEFE69249B54E15C56B2EB567BD273 /* Pods-EmptyDataSet-dummy.m */; }; 338DD760BB611C08829BEC825B2BB816 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 370B6599BB08FAFD53343DB64AB4E825 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 370B6599BB08FAFD53343DB64AB4E825 /* Pods-DZNEmptyDataSetTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 574C8B427481F411FBA0FB89B266DBFC /* Pods-DZNEmptyDataSetTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 3B540469AF7772C156A3AD0CC6184734 /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; }; 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */; }; 3CE95FD1D722818A524677118DF557BA /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = AAEFAFB515CDC63285C990A18B7F186C /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; }; 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */; }; - 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 45CBB011A9386ADE27BACDD789287991 /* Pods-Bento-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9EF2F891DA5908C685945618C88524C5 /* Pods-Bento-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ABFDB1D4B81322EDEF8D1E7B4FF40033 /* SnapKit-dummy.m */; }; 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */; }; 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */; }; @@ -56,19 +57,21 @@ A270CD9EC3C541FE86E65AEDCEF500CF /* ConstraintLayoutGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A66A601713D0924ACB8459F6E4671A3 /* ConstraintLayoutGuide.swift */; }; A2DF2053A890C10FE0B6ADA21A5A0FED /* UIImage+Compare.m in Sources */ = {isa = PBXBuildFile; fileRef = 33E328700A080B8821651041F993D4FC /* UIImage+Compare.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A992D78BE9F7A42CE40BD4D2CB53B3AA /* Pods-Applications-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AFC6F17BC2F95003B3D5756927909079 /* Pods-Applications-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; AA2A80FACDE8BCA52EFF8948A50C070B /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */; }; B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */; }; B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */; }; - B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */; }; + B7E3632F21E7C8240AFB2EB6D4576ED6 /* Pods-Bento-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EDA68062E2904441886198B2341CC8A /* Pods-Bento-dummy.m */; }; BECA67DFB5E0984DFAEFCB775C31972E /* ConstraintView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */; }; + C073210591E414357D5A5C9009ABDF8E /* Pods-Applications-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B672910CCABDEE18AA93B68F3584648D /* Pods-Applications-dummy.m */; }; C412F27D75AFC0DF0F0289DBB270931C /* ConstraintMakerFinalizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */; }; C930BCB1B395E19ABBE9D4D491867353 /* iOSSnapshotTestCase-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; C9E1F1A48507326B8AF0EFDBE3C0EC75 /* FBSnapshotTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */; }; - D25DBA6AF7D11C6F74CBA829AB90D8B0 /* Pods-EmptyDataSet-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D25DBA6AF7D11C6F74CBA829AB90D8B0 /* Pods-EmptyDataSet-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 284EAFD9EB58AD1C2A4A3BCE51633117 /* Pods-EmptyDataSet-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */; }; - DECBD9272C97FB4427DE3C8B2050B6C8 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; + DECBD9272C97FB4427DE3C8B2050B6C8 /* Pods-DZNEmptyDataSetTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2AFC1E99AE8E26CCEC3398310BBCAD35 /* Pods-DZNEmptyDataSetTests-dummy.m */; }; E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */; }; E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */; }; EAC1544AADA392F95DEF08C5C89DAA93 /* FBSnapshotTestCasePlatform.m in Sources */ = {isa = PBXBuildFile; fileRef = D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; @@ -98,6 +101,13 @@ remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; remoteInfo = SnapKit; }; + BF85A9AB9C55B6C03D5437F3CD473B8F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; + remoteInfo = SnapKit; + }; EAB7C7E47ED215787C4F0FA4D31C39D8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; @@ -108,72 +118,71 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 017A9D966112906EE27D452BE895E322 /* Pods-Bento-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-Info.plist"; sourceTree = ""; }; + 02F3013369C9861B2458E9A38A07C11C /* Pods-EmptyDataSet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSet.release.xcconfig"; sourceTree = ""; }; + 051EFBB91C9A91E1100D3147DD0EA22F /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; 069ED88DABE9F9FCE0E3BCBFD719E1F7 /* ConstraintRelatableTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelatableTarget.swift; path = Source/ConstraintRelatableTarget.swift; sourceTree = ""; }; + 06D1790119FAA8A273A94FFE931C1C0D /* Pods-Applications-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Applications-acknowledgements.markdown"; sourceTree = ""; }; 09CCE11A4A7A4D2029ACC06D57EFE95D /* ConstraintLayoutGuideDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuideDSL.swift; path = Source/ConstraintLayoutGuideDSL.swift; sourceTree = ""; }; - 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-EmptyDataSet-dummy.m"; sourceTree = ""; }; - 0FB5CFC7568E4C1AFB1C06868594D6C7 /* Pods-EmptyDataSet-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSet-Info.plist"; sourceTree = ""; }; - 10402DFB824B32E0DC2DFB198B972921 /* Pods-Bento-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Bento-frameworks.sh"; sourceTree = ""; }; - 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.release.xcconfig"; sourceTree = ""; }; 14688B21017F1CE9E5DED52C0502F7C4 /* ConstraintLayoutSupportDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupportDSL.swift; path = Source/ConstraintLayoutSupportDSL.swift; sourceTree = ""; }; + 149B86D06734DD732C7FF9828296F125 /* Pods-Bento-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Bento-acknowledgements.markdown"; sourceTree = ""; }; 1620B3097118721476A4B4E815C15371 /* LayoutConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraintItem.swift; path = Source/LayoutConstraintItem.swift; sourceTree = ""; }; + 1A3E9715CDFA719D2E9DEAF1A894CCE2 /* Pods-EmptyDataSet-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSet-acknowledgements.plist"; sourceTree = ""; }; 204DD29D73DE0EEB8C7C0D5D719E57A0 /* iOSSnapshotTestCase-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSSnapshotTestCase-Info.plist"; sourceTree = ""; }; 24E447DDE7E1FF49CC5ED9D962EEEE56 /* ConstraintMakerExtendable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerExtendable.swift; path = Source/ConstraintMakerExtendable.swift; sourceTree = ""; }; - 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DZNEmptyDataSetTests-dummy.m"; sourceTree = ""; }; + 261532DCB77853A47A27D92BD15A739D /* Pods-DZNEmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-Info.plist"; sourceTree = ""; }; + 284EAFD9EB58AD1C2A4A3BCE51633117 /* Pods-EmptyDataSet-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-EmptyDataSet-umbrella.h"; sourceTree = ""; }; 293189008ECD2EAD6E7944A4BE05A869 /* ConstraintRelation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelation.swift; path = Source/ConstraintRelation.swift; sourceTree = ""; }; + 2AFC1E99AE8E26CCEC3398310BBCAD35 /* Pods-DZNEmptyDataSetTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DZNEmptyDataSetTests-dummy.m"; sourceTree = ""; }; 2B0B97DAC9F94F24298BA65639265472 /* ConstraintLayoutSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupport.swift; path = Source/ConstraintLayoutSupport.swift; sourceTree = ""; }; 2C0D7860F0C4CD5300B4BFE4C815E878 /* ConstraintMakerPriortizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerPriortizable.swift; path = Source/ConstraintMakerPriortizable.swift; sourceTree = ""; }; + 2CDA8ACCB61525BA49CFB574B6D8E673 /* Pods-Bento-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-Info.plist"; sourceTree = ""; }; 2E0244F1A949723234F3F77A0622F707 /* ConstraintConstantTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConstantTarget.swift; path = Source/ConstraintConstantTarget.swift; sourceTree = ""; }; 2F81E8ABEBEDD4B5F02F6D6D2DCC5885 /* ConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintItem.swift; path = Source/ConstraintItem.swift; sourceTree = ""; }; + 306AE84C3F26C644C845131437A7917A /* Pods-Applications.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Applications.release.xcconfig"; sourceTree = ""; }; 33E328700A080B8821651041F993D4FC /* UIImage+Compare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Compare.m"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.m"; sourceTree = ""; }; - 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-DZNEmptyDataSetTests-umbrella.h"; sourceTree = ""; }; 39309FF58F4F8458ED74F252C8562AB2 /* SnapKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.xcconfig; sourceTree = ""; }; 3A66A601713D0924ACB8459F6E4671A3 /* ConstraintLayoutGuide.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuide.swift; path = Source/ConstraintLayoutGuide.swift; sourceTree = ""; }; 3D8154E810B3407E6BB3B714F36BD6A4 /* ConstraintMakerRelatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerRelatable.swift; path = Source/ConstraintMakerRelatable.swift; sourceTree = ""; }; 401FE53A7D5EECDFB5537EB036FB47C2 /* FBSnapshotTestCase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCase.m; path = FBSnapshotTestCase/FBSnapshotTestCase.m; sourceTree = ""; }; - 429FAC89D5E776AE127C927F12E05E20 /* Pods-Bento.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Bento.modulemap"; sourceTree = ""; }; - 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Bento-umbrella.h"; sourceTree = ""; }; 4A279845955DAE11D5CA5DDDA607BC5B /* FBSnapshotTestCasePlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCasePlatform.h; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.h; sourceTree = ""; }; 4E9A01E7D0ACDA53F277D17D1A07B37A /* ConstraintAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintAttributes.swift; path = Source/ConstraintAttributes.swift; sourceTree = ""; }; 4F10334A1FB928B745EC8563AE78F951 /* ConstraintView+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintView+Extensions.swift"; path = "Source/ConstraintView+Extensions.swift"; sourceTree = ""; }; 5060CFFF2F977027179ABCF73CAB078B /* ConstraintMaker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMaker.swift; path = Source/ConstraintMaker.swift; sourceTree = ""; }; 509924EFA033A91CF4C37C30EEA81E36 /* ConstraintOffsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintOffsetTarget.swift; path = Source/ConstraintOffsetTarget.swift; sourceTree = ""; }; - 5736C54D74D73CD0622542A4F02E8624 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; + 574C8B427481F411FBA0FB89B266DBFC /* Pods-DZNEmptyDataSetTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-DZNEmptyDataSetTests-umbrella.h"; sourceTree = ""; }; 5BA331ADDAC2EBE5AE0BE4B5B2057A54 /* ConstraintInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsetTarget.swift; path = Source/ConstraintInsetTarget.swift; sourceTree = ""; }; - 5CD7E9FEF6C40BB1A05BE3502A4FBB69 /* Pods-DZNEmptyDataSetTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-Info.plist"; sourceTree = ""; }; + 5C87E3CBFA70D9884A46EB21F5769C01 /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DZNEmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; 5E601BD54DA9BF4071437E60125281FA /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + 5FE9BE358F4BB5B86C550EF6CEDEC1BB /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DZNEmptyDataSetTests-acknowledgements.plist"; sourceTree = ""; }; 602AE493333C02D22A808DB2E814C8CD /* ConstraintPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriority.swift; path = Source/ConstraintPriority.swift; sourceTree = ""; }; + 63F11F486BE2BC8632D596046D4FA7F8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = iOSSnapshotTestCase.xcconfig; sourceTree = ""; }; + 6773BAF92621D499DB8E1C48879D0440 /* Pods-Applications-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Applications-acknowledgements.plist"; sourceTree = ""; }; 67BA8C743B739E29ADA042502044CB6B /* SnapKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SnapKit.modulemap; sourceTree = ""; }; 68349ABEA22D52E59F27120988E541CC /* Constraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constraint.swift; path = Source/Constraint.swift; sourceTree = ""; }; - 691385C0B16EE5C65954C064D87F17C9 /* Pods-EmptyDataSet-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSet-acknowledgements.plist"; sourceTree = ""; }; 6B4BEFED37132D0C0BF675021C271678 /* ConstraintConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConfig.swift; path = Source/ConstraintConfig.swift; sourceTree = ""; }; 6BACCF31CA7AFD967E2591A4EFD8552C /* FBSnapshotTestCase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCase.h; path = FBSnapshotTestCase/FBSnapshotTestCase.h; sourceTree = ""; }; 712DEB6C69372749547C312D131A027F /* ConstraintView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintView.swift; path = Source/ConstraintView.swift; sourceTree = ""; }; 716A9972B9D9103B54DB950893FAF104 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; 71D4A2F54D713986524E5AD5E92805A6 /* iOSSnapshotTestCase.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = iOSSnapshotTestCase.modulemap; sourceTree = ""; }; - 73852B793610CEE797B3B8A3C79D52AD /* Pods-DZNEmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DZNEmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; 76DF6A3B9EA5B47BA407F65C5E54A45E /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = FBSnapshotTestCase/SwiftSupport.swift; sourceTree = ""; }; 781106B5E3E775340896FC5DD09BCF14 /* UIImage+Diff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Diff.h"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.h"; sourceTree = ""; }; 7BD4ED544B638D07C7D755AF1C27116A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 7C480087BC040476F9EA3A10C516F5F3 /* Pods-DZNEmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-DZNEmptyDataSetTests.modulemap"; sourceTree = ""; }; 802D3F63C22D9332292AF0105A25F2C8 /* ConstraintPriorityTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriorityTarget.swift; path = Source/ConstraintPriorityTarget.swift; sourceTree = ""; }; + 82B8B8BCE2F17F69A14F5EA6E8157091 /* Pods-Bento.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Bento.modulemap"; sourceTree = ""; }; 85D9695985053C52E2910ADA84A0F086 /* ConstraintDescription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDescription.swift; path = Source/ConstraintDescription.swift; sourceTree = ""; }; - 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSet.debug.xcconfig"; sourceTree = ""; }; 8B1021A4B99AAA338492CF276326B811 /* FBSnapshotTestController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestController.m; path = FBSnapshotTestCase/FBSnapshotTestController.m; sourceTree = ""; }; - 8B1ED7470E3D027A1C47B95F5B85F42E /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DZNEmptyDataSetTests-acknowledgements.markdown"; sourceTree = ""; }; - 8BB7DBFAF88B61A2D54708DDE7A5D3A1 /* Pods-EmptyDataSet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSet.release.xcconfig"; sourceTree = ""; }; 8C48510661F05605D903277A49626521 /* ConstraintMultiplierTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMultiplierTarget.swift; path = Source/ConstraintMultiplierTarget.swift; sourceTree = ""; }; - 8C884A1A38933E805E6E9141DF91316D /* Pods-Bento-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Bento-acknowledgements.markdown"; sourceTree = ""; }; 8CAA89EEF1039078430D7A886477E365 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; 8CC07AD74E665C41837429712EEFEFD1 /* Debugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debugging.swift; path = Source/Debugging.swift; sourceTree = ""; }; + 8EDA68062E2904441886198B2341CC8A /* Pods-Bento-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Bento-dummy.m"; sourceTree = ""; }; 90E20B0C95C9A88DD1367C03A2C604F1 /* UIImage+Snapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Snapshot.m"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.m"; sourceTree = ""; }; 930E354543B5D38844D443BC8AF35616 /* SnapKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-prefix.pch"; sourceTree = ""; }; + 95F0C0C69B75B760D7505C6832CDEAD2 /* Pods-EmptyDataSet.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-EmptyDataSet.modulemap"; sourceTree = ""; }; 979486118B3E90C08386079D57962701 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SnapKit.framework; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 9C0466A9E3673A0DC8FBF1380B6E9279 /* UIImage+Diff.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Diff.m"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.m"; sourceTree = ""; }; 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Bento-dummy.m"; sourceTree = ""; }; - A2ACD8CA9C959CE226C61D144B0BB9DD /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.debug.xcconfig"; sourceTree = ""; }; + 9EF2F891DA5908C685945618C88524C5 /* Pods-Bento-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Bento-umbrella.h"; sourceTree = ""; }; A8AA92BACDC3928DF8341019D74CCE92 /* UILayoutSupport+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILayoutSupport+Extensions.swift"; path = "Source/UILayoutSupport+Extensions.swift"; sourceTree = ""; }; A8D6632E06227B6D340FA539C42E71BA /* UIImage+Compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Compare.h"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.h"; sourceTree = ""; }; A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_DZNEmptyDataSetTests.framework; path = "Pods-DZNEmptyDataSetTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -183,27 +192,38 @@ ACB0E874B67DCE7034C37BD02A9C502C /* FBSnapshotTestController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestController.h; path = FBSnapshotTestCase/FBSnapshotTestController.h; sourceTree = ""; }; ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Bento.framework; path = "Pods-Bento.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; AED2E02F3FCAD023A93FB2BBBDDAA233 /* Pods_EmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_EmptyDataSet.framework; path = "Pods-EmptyDataSet.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - B4DFF98A8D6CC32361B8503277F9F0D5 /* Pods-Bento-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-acknowledgements.plist"; sourceTree = ""; }; + AFC6F17BC2F95003B3D5756927909079 /* Pods-Applications-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Applications-umbrella.h"; sourceTree = ""; }; + B10BF1D34104F50F34C7216285F47078 /* Pods-Applications.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Applications.debug.xcconfig"; sourceTree = ""; }; B501B2B5BEAA88F651B3EFA5EE300E0A /* iOSSnapshotTestCase-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-umbrella.h"; sourceTree = ""; }; + B672910CCABDEE18AA93B68F3584648D /* Pods-Applications-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Applications-dummy.m"; sourceTree = ""; }; B7EC860D5BCEBB8D7FFD18CE720EB4F1 /* ConstraintMakerFinalizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerFinalizable.swift; path = Source/ConstraintMakerFinalizable.swift; sourceTree = ""; }; B7F24A97E3D6B910F581DFCEC81E0759 /* iOSSnapshotTestCase-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSSnapshotTestCase-dummy.m"; sourceTree = ""; }; + B861E30FEDC04CA6A8639F38D250AC3D /* Pods-DZNEmptyDataSetTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DZNEmptyDataSetTests-frameworks.sh"; sourceTree = ""; }; B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FBSnapshotTestCase.framework; path = iOSSnapshotTestCase.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.debug.xcconfig"; sourceTree = ""; }; - C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-EmptyDataSet-umbrella.h"; sourceTree = ""; }; + BD4BEFEE937B1D9351571B29A139C1C5 /* Pods-Applications-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Applications-Info.plist"; sourceTree = ""; }; + BDB2FBBB7F7F2C0E3BDBFC213CB361E2 /* Pods-EmptyDataSet-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-EmptyDataSet-Info.plist"; sourceTree = ""; }; + BF456646606C9AE0393004FC7B83886E /* Pods-Applications-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Applications-frameworks.sh"; sourceTree = ""; }; C59FE233233D259792F99E2E932DEAC3 /* ConstraintViewDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintViewDSL.swift; path = Source/ConstraintViewDSL.swift; sourceTree = ""; }; CAE40D775153994A861969D2F68AE7B8 /* ConstraintDirectionalInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsets.swift; path = Source/ConstraintDirectionalInsets.swift; sourceTree = ""; }; CDFA66846C593CAA66836976FE3BB11F /* ConstraintLayoutGuide+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintLayoutGuide+Extensions.swift"; path = "Source/ConstraintLayoutGuide+Extensions.swift"; sourceTree = ""; }; CF053B8FB329B13E00D6639E0080A4EB /* SnapKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-umbrella.h"; sourceTree = ""; }; - CF84579517241DEA12E8D1A7CA79A1E3 /* Pods-EmptyDataSet-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-EmptyDataSet-acknowledgements.markdown"; sourceTree = ""; }; D16800BBFE31BC78E783108D7FECEDE8 /* ConstraintInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsets.swift; path = Source/ConstraintInsets.swift; sourceTree = ""; }; + D401FBF4C517EE9EA053F7C32F110299 /* Pods-EmptyDataSet-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-EmptyDataSet-acknowledgements.markdown"; sourceTree = ""; }; D8EB440657B1A826CBA05B6DB0A1D3BE /* FBSnapshotTestCasePlatform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCasePlatform.m; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.m; sourceTree = ""; }; + DB41BF1F17277416FBF8C0F8412ADB79 /* Pods_Applications.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Applications.framework; path = "Pods-Applications.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; DB449F1D76F58450F0CC2BE2EE78F972 /* ConstraintDirectionalInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsetTarget.swift; path = Source/ConstraintDirectionalInsetTarget.swift; sourceTree = ""; }; DBB3E566465976FD7618A282BD43D799 /* LayoutConstraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraint.swift; path = Source/LayoutConstraint.swift; sourceTree = ""; }; + DCB62C3C3503D234557704B6FD1C3105 /* Pods-DZNEmptyDataSetTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-DZNEmptyDataSetTests.modulemap"; sourceTree = ""; }; + DEC218B769C46E7B4EE81626512077FA /* Pods-Bento.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.release.xcconfig"; sourceTree = ""; }; E0F296AEF0CB8AB64CE53A92A08A6A1A /* SnapKit-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "SnapKit-Info.plist"; sourceTree = ""; }; + E8CEFE69249B54E15C56B2EB567BD273 /* Pods-EmptyDataSet-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-EmptyDataSet-dummy.m"; sourceTree = ""; }; + E90DEF0616B4CBFD4E71F978EB1EEF53 /* Pods-Bento.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Bento.debug.xcconfig"; sourceTree = ""; }; + E99A1D3D32986312CCD4345CEE9068C8 /* Pods-Bento-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Bento-acknowledgements.plist"; sourceTree = ""; }; + EB66BF06F7911DF85E2557DEB7BD8B6D /* Pods-EmptyDataSet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-EmptyDataSet.debug.xcconfig"; sourceTree = ""; }; EBB920E68A7DA92F06A7B49CE2B9B329 /* iOSSnapshotTestCase-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-prefix.pch"; sourceTree = ""; }; - ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DZNEmptyDataSetTests.release.xcconfig"; sourceTree = ""; }; - EF3BB9A12FBF98DD924A17455FFF96B0 /* Pods-EmptyDataSet.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-EmptyDataSet.modulemap"; sourceTree = ""; }; + EE2D4F6B903FA80861AF314EB8F4F728 /* Pods-Applications.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Applications.modulemap"; sourceTree = ""; }; F56957F4DF79C109B4B7DD07C7BB8CD7 /* Typealiases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Typealiases.swift; path = Source/Typealiases.swift; sourceTree = ""; }; + F8DEF315C2B2C95511A498EEC613F021 /* Pods-Bento-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Bento-frameworks.sh"; sourceTree = ""; }; F949A0CCE79FE9678D1E57C53198F545 /* ConstraintDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDSL.swift; path = Source/ConstraintDSL.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -224,6 +244,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 8F858070156EA0B62274A9486755B906 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 0B8B6AE8660F732E4DED59573FE1355B /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 9C3B34FFDC69FA04EA29F3457562B138 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -254,6 +282,22 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 099CA0F3DDF1539E0097575F45E597A7 /* Pods-EmptyDataSet */ = { + isa = PBXGroup; + children = ( + 95F0C0C69B75B760D7505C6832CDEAD2 /* Pods-EmptyDataSet.modulemap */, + D401FBF4C517EE9EA053F7C32F110299 /* Pods-EmptyDataSet-acknowledgements.markdown */, + 1A3E9715CDFA719D2E9DEAF1A894CCE2 /* Pods-EmptyDataSet-acknowledgements.plist */, + E8CEFE69249B54E15C56B2EB567BD273 /* Pods-EmptyDataSet-dummy.m */, + BDB2FBBB7F7F2C0E3BDBFC213CB361E2 /* Pods-EmptyDataSet-Info.plist */, + 284EAFD9EB58AD1C2A4A3BCE51633117 /* Pods-EmptyDataSet-umbrella.h */, + EB66BF06F7911DF85E2557DEB7BD8B6D /* Pods-EmptyDataSet.debug.xcconfig */, + 02F3013369C9861B2458E9A38A07C11C /* Pods-EmptyDataSet.release.xcconfig */, + ); + name = "Pods-EmptyDataSet"; + path = "Target Support Files/Pods-EmptyDataSet"; + sourceTree = ""; + }; 10377082182EFE0D7E0E6D60D58DFA90 /* Support Files */ = { isa = PBXGroup; children = ( @@ -268,33 +312,15 @@ path = "../Target Support Files/iOSSnapshotTestCase"; sourceTree = ""; }; - 1BE9446274ECBB0BF57EAD796DC449B1 /* Products */ = { + 1180FAA6352C2B7B9CD197C3BE846482 /* Targets Support Files */ = { isa = PBXGroup; children = ( - B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */, - ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */, - A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */, - AED2E02F3FCAD023A93FB2BBBDDAA233 /* Pods_EmptyDataSet.framework */, - 979486118B3E90C08386079D57962701 /* SnapKit.framework */, + F3F44704727EF96B729A60DF09EB1EC9 /* Pods-Applications */, + 7DBC7E32EB581B2FC648C3018989D270 /* Pods-Bento */, + DECB121B56316CD08BF986DAC0702702 /* Pods-DZNEmptyDataSetTests */, + 099CA0F3DDF1539E0097575F45E597A7 /* Pods-EmptyDataSet */, ); - name = Products; - sourceTree = ""; - }; - 1E367254EEFDC361CCC8257BD1D2F9FA /* Pods-DZNEmptyDataSetTests */ = { - isa = PBXGroup; - children = ( - 7C480087BC040476F9EA3A10C516F5F3 /* Pods-DZNEmptyDataSetTests.modulemap */, - 8B1ED7470E3D027A1C47B95F5B85F42E /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */, - 5736C54D74D73CD0622542A4F02E8624 /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */, - 28622392297EFA2D6730389CD19269B8 /* Pods-DZNEmptyDataSetTests-dummy.m */, - 73852B793610CEE797B3B8A3C79D52AD /* Pods-DZNEmptyDataSetTests-frameworks.sh */, - 5CD7E9FEF6C40BB1A05BE3502A4FBB69 /* Pods-DZNEmptyDataSetTests-Info.plist */, - 3483A910E4748DC9A26CB3917AA8A77C /* Pods-DZNEmptyDataSetTests-umbrella.h */, - BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, - ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, - ); - name = "Pods-DZNEmptyDataSetTests"; - path = "Target Support Files/Pods-DZNEmptyDataSetTests"; + name = "Targets Support Files"; sourceTree = ""; }; 5069F9E0D99C6E5925D43959B16AEA18 /* SnapKit */ = { @@ -342,30 +368,21 @@ path = SnapKit; sourceTree = ""; }; - 5B4DCE98C8684D98B471CCCA387E5483 /* Targets Support Files */ = { + 7DBC7E32EB581B2FC648C3018989D270 /* Pods-Bento */ = { isa = PBXGroup; children = ( - B360AD80F547E05EAB934E0168F61783 /* Pods-Bento */, - 1E367254EEFDC361CCC8257BD1D2F9FA /* Pods-DZNEmptyDataSetTests */, - 5C1C0CFC1EAEFAD2B84B9FDF086FCBC6 /* Pods-EmptyDataSet */, + 82B8B8BCE2F17F69A14F5EA6E8157091 /* Pods-Bento.modulemap */, + 149B86D06734DD732C7FF9828296F125 /* Pods-Bento-acknowledgements.markdown */, + E99A1D3D32986312CCD4345CEE9068C8 /* Pods-Bento-acknowledgements.plist */, + 8EDA68062E2904441886198B2341CC8A /* Pods-Bento-dummy.m */, + F8DEF315C2B2C95511A498EEC613F021 /* Pods-Bento-frameworks.sh */, + 2CDA8ACCB61525BA49CFB574B6D8E673 /* Pods-Bento-Info.plist */, + 9EF2F891DA5908C685945618C88524C5 /* Pods-Bento-umbrella.h */, + E90DEF0616B4CBFD4E71F978EB1EEF53 /* Pods-Bento.debug.xcconfig */, + DEC218B769C46E7B4EE81626512077FA /* Pods-Bento.release.xcconfig */, ); - name = "Targets Support Files"; - sourceTree = ""; - }; - 5C1C0CFC1EAEFAD2B84B9FDF086FCBC6 /* Pods-EmptyDataSet */ = { - isa = PBXGroup; - children = ( - EF3BB9A12FBF98DD924A17455FFF96B0 /* Pods-EmptyDataSet.modulemap */, - CF84579517241DEA12E8D1A7CA79A1E3 /* Pods-EmptyDataSet-acknowledgements.markdown */, - 691385C0B16EE5C65954C064D87F17C9 /* Pods-EmptyDataSet-acknowledgements.plist */, - 0AA61AFF6853CDEB5BDB85B94ACE6CD5 /* Pods-EmptyDataSet-dummy.m */, - 0FB5CFC7568E4C1AFB1C06868594D6C7 /* Pods-EmptyDataSet-Info.plist */, - C228E9E6EAB2B67450B66AB821F7CB57 /* Pods-EmptyDataSet-umbrella.h */, - 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */, - 8BB7DBFAF88B61A2D54708DDE7A5D3A1 /* Pods-EmptyDataSet.release.xcconfig */, - ); - name = "Pods-EmptyDataSet"; - path = "Target Support Files/Pods-EmptyDataSet"; + name = "Pods-Bento"; + path = "Target Support Files/Pods-Bento"; sourceTree = ""; }; 7DE5752EED0A4C4A430975244947611A /* iOS */ = { @@ -407,6 +424,19 @@ name = Core; sourceTree = ""; }; + A37D289EB403FF33F28BF9000E9BA420 /* Products */ = { + isa = PBXGroup; + children = ( + B91B00F8BE943329D633234BD67AE0AC /* FBSnapshotTestCase.framework */, + DB41BF1F17277416FBF8C0F8412ADB79 /* Pods_Applications.framework */, + ADC6D3AB85B6EE3B5915BA7AF8A54A8C /* Pods_Bento.framework */, + A93D16E4190310C154EA0253BFD291D9 /* Pods_DZNEmptyDataSetTests.framework */, + AED2E02F3FCAD023A93FB2BBBDDAA233 /* Pods_EmptyDataSet.framework */, + 979486118B3E90C08386079D57962701 /* SnapKit.framework */, + ); + name = Products; + sourceTree = ""; + }; A4FB6E03AEBB90E8953BA41F9C1E2249 /* Support Files */ = { isa = PBXGroup; children = ( @@ -421,23 +451,6 @@ path = "../Target Support Files/SnapKit"; sourceTree = ""; }; - B360AD80F547E05EAB934E0168F61783 /* Pods-Bento */ = { - isa = PBXGroup; - children = ( - 429FAC89D5E776AE127C927F12E05E20 /* Pods-Bento.modulemap */, - 8C884A1A38933E805E6E9141DF91316D /* Pods-Bento-acknowledgements.markdown */, - B4DFF98A8D6CC32361B8503277F9F0D5 /* Pods-Bento-acknowledgements.plist */, - A017F6CA16E742EA6D2ABD83BAC7FD49 /* Pods-Bento-dummy.m */, - 10402DFB824B32E0DC2DFB198B972921 /* Pods-Bento-frameworks.sh */, - 017A9D966112906EE27D452BE895E322 /* Pods-Bento-Info.plist */, - 4723E0B17B4A32ABD1922F4289880C42 /* Pods-Bento-umbrella.h */, - A2ACD8CA9C959CE226C61D144B0BB9DD /* Pods-Bento.debug.xcconfig */, - 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */, - ); - name = "Pods-Bento"; - path = "Target Support Files/Pods-Bento"; - sourceTree = ""; - }; BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */ = { isa = PBXGroup; children = ( @@ -452,8 +465,8 @@ 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, BA4F31F07263C99FC76E66D632A59F09 /* Frameworks */, 9300DC269E7A7CF1292D2FE731BE01E4 /* Pods */, - 1BE9446274ECBB0BF57EAD796DC449B1 /* Products */, - 5B4DCE98C8684D98B471CCCA387E5483 /* Targets Support Files */, + A37D289EB403FF33F28BF9000E9BA420 /* Products */, + 1180FAA6352C2B7B9CD197C3BE846482 /* Targets Support Files */, ); sourceTree = ""; }; @@ -468,6 +481,23 @@ path = iOSSnapshotTestCase; sourceTree = ""; }; + DECB121B56316CD08BF986DAC0702702 /* Pods-DZNEmptyDataSetTests */ = { + isa = PBXGroup; + children = ( + DCB62C3C3503D234557704B6FD1C3105 /* Pods-DZNEmptyDataSetTests.modulemap */, + 5C87E3CBFA70D9884A46EB21F5769C01 /* Pods-DZNEmptyDataSetTests-acknowledgements.markdown */, + 5FE9BE358F4BB5B86C550EF6CEDEC1BB /* Pods-DZNEmptyDataSetTests-acknowledgements.plist */, + 2AFC1E99AE8E26CCEC3398310BBCAD35 /* Pods-DZNEmptyDataSetTests-dummy.m */, + B861E30FEDC04CA6A8639F38D250AC3D /* Pods-DZNEmptyDataSetTests-frameworks.sh */, + 261532DCB77853A47A27D92BD15A739D /* Pods-DZNEmptyDataSetTests-Info.plist */, + 574C8B427481F411FBA0FB89B266DBFC /* Pods-DZNEmptyDataSetTests-umbrella.h */, + 051EFBB91C9A91E1100D3147DD0EA22F /* Pods-DZNEmptyDataSetTests.debug.xcconfig */, + 63F11F486BE2BC8632D596046D4FA7F8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */, + ); + name = "Pods-DZNEmptyDataSetTests"; + path = "Target Support Files/Pods-DZNEmptyDataSetTests"; + sourceTree = ""; + }; EF51F2FFBDF0376D72F24EF40E31779E /* SwiftSupport */ = { isa = PBXGroup; children = ( @@ -476,9 +506,34 @@ name = SwiftSupport; sourceTree = ""; }; + F3F44704727EF96B729A60DF09EB1EC9 /* Pods-Applications */ = { + isa = PBXGroup; + children = ( + EE2D4F6B903FA80861AF314EB8F4F728 /* Pods-Applications.modulemap */, + 06D1790119FAA8A273A94FFE931C1C0D /* Pods-Applications-acknowledgements.markdown */, + 6773BAF92621D499DB8E1C48879D0440 /* Pods-Applications-acknowledgements.plist */, + B672910CCABDEE18AA93B68F3584648D /* Pods-Applications-dummy.m */, + BF456646606C9AE0393004FC7B83886E /* Pods-Applications-frameworks.sh */, + BD4BEFEE937B1D9351571B29A139C1C5 /* Pods-Applications-Info.plist */, + AFC6F17BC2F95003B3D5756927909079 /* Pods-Applications-umbrella.h */, + B10BF1D34104F50F34C7216285F47078 /* Pods-Applications.debug.xcconfig */, + 306AE84C3F26C644C845131437A7917A /* Pods-Applications.release.xcconfig */, + ); + name = "Pods-Applications"; + path = "Target Support Files/Pods-Applications"; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ + 05EB618349350915F622C0F0F2B06D0C /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + A992D78BE9F7A42CE40BD4D2CB53B3AA /* Pods-Applications-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 07F2DC871D4F9282C729AD5C1939F3D9 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -546,6 +601,25 @@ productReference = 979486118B3E90C08386079D57962701 /* SnapKit.framework */; productType = "com.apple.product-type.framework"; }; + 305146273C67BB0A619445F7D9E691FA /* Pods-Applications */ = { + isa = PBXNativeTarget; + buildConfigurationList = 5F728644B9B26206FF90AF6EBE61277D /* Build configuration list for PBXNativeTarget "Pods-Applications" */; + buildPhases = ( + 05EB618349350915F622C0F0F2B06D0C /* Headers */, + BDE458F9B898D68606B110358A6329FB /* Sources */, + 8F858070156EA0B62274A9486755B906 /* Frameworks */, + 5DF1CFEEF1FA62441A18BAE855AC18FB /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ACD19C6FDAE766315D193DA4D5535CED /* PBXTargetDependency */, + ); + name = "Pods-Applications"; + productName = "Pods-Applications"; + productReference = DB41BF1F17277416FBF8C0F8412ADB79 /* Pods_Applications.framework */; + productType = "com.apple.product-type.framework"; + }; 6B93C698BAA4A0901F8AAF752C8EDC0D /* Pods-EmptyDataSet */ = { isa = PBXNativeTarget; buildConfigurationList = 45925B9A74393B787D0B8552FB10993E /* Build configuration list for PBXNativeTarget "Pods-EmptyDataSet" */; @@ -640,11 +714,12 @@ Base, ); mainGroup = CF1408CF629C7361332E53B88F7BD30C; - productRefGroup = 1BE9446274ECBB0BF57EAD796DC449B1 /* Products */; + productRefGroup = A37D289EB403FF33F28BF9000E9BA420 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( C393038B0BEF088C1B93E6528005862D /* iOSSnapshotTestCase */, + 305146273C67BB0A619445F7D9E691FA /* Pods-Applications */, AE5F0EC5A805C8E001F8086092590AA1 /* Pods-Bento */, B1EE7C977B6484DAE578FFC4A25371F7 /* Pods-DZNEmptyDataSetTests */, 6B93C698BAA4A0901F8AAF752C8EDC0D /* Pods-EmptyDataSet */, @@ -654,6 +729,13 @@ /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ + 5DF1CFEEF1FA62441A18BAE855AC18FB /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 71AA6C67A63201125DEEE4DD04A13EFD /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -767,6 +849,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + BDE458F9B898D68606B110358A6329FB /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C073210591E414357D5A5C9009ABDF8E /* Pods-Applications-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D28AC23142EE73DE1F500ABBF473C740 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -790,6 +880,12 @@ target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; targetProxy = 32E128361F15B1FF30A123342AEAD359 /* PBXContainerItemProxy */; }; + ACD19C6FDAE766315D193DA4D5535CED /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SnapKit; + target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; + targetProxy = BF85A9AB9C55B6C03D5437F3CD473B8F /* PBXContainerItemProxy */; + }; BE54E54E91236233B9C43EF834C93579 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = iOSSnapshotTestCase; @@ -936,7 +1032,7 @@ }; 79CC4E7753F54CB9BD7B6C253109C5EF /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 11CD9B9A825FF0E4403E4CF07E52161E /* Pods-Bento.release.xcconfig */; + baseConfigurationReference = DEC218B769C46E7B4EE81626512077FA /* Pods-Bento.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -971,7 +1067,7 @@ }; 8273F671372DCC5D8DECAE112429A1F7 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89308203BE9D0330B54E9BC1CB0CEA18 /* Pods-EmptyDataSet.debug.xcconfig */; + baseConfigurationReference = EB66BF06F7911DF85E2557DEB7BD8B6D /* Pods-EmptyDataSet.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1003,9 +1099,44 @@ }; name = Debug; }; + 8ABA56DA4587184BD9DF2DF0109D360B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 306AE84C3F26C644C845131437A7917A /* Pods-Applications.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Applications/Pods-Applications-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Applications/Pods-Applications.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; 970AA8B847EAD3073063B855C97B231A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = ED95F584F9FA3D876E6E0B837E723CA3 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; + baseConfigurationReference = 63F11F486BE2BC8632D596046D4FA7F8 /* Pods-DZNEmptyDataSetTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1040,7 +1171,7 @@ }; 9B7CD3ED739DDFB5CD2C15F27B5DCBB1 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = BFFB430185CC8B6836269E2651A30CC8 /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; + baseConfigurationReference = 051EFBB91C9A91E1100D3147DD0EA22F /* Pods-DZNEmptyDataSetTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1074,7 +1205,7 @@ }; AD0F6071E0AB0ACB7933EFB7C4BB72F4 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A2ACD8CA9C959CE226C61D144B0BB9DD /* Pods-Bento.debug.xcconfig */; + baseConfigurationReference = E90DEF0616B4CBFD4E71F978EB1EEF53 /* Pods-Bento.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1168,7 +1299,7 @@ }; BFEF5DFC657A5A17557BF850CA58ED54 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8BB7DBFAF88B61A2D54708DDE7A5D3A1 /* Pods-EmptyDataSet.release.xcconfig */; + baseConfigurationReference = 02F3013369C9861B2458E9A38A07C11C /* Pods-EmptyDataSet.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -1201,6 +1332,40 @@ }; name = Release; }; + CD3A91965F811FB1358B0839B1FD8AFE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B10BF1D34104F50F34C7216285F47078 /* Pods-Applications.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Applications/Pods-Applications-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Applications/Pods-Applications.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; E30677E30722EED4EFAAF96B70FB53E0 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 64A732CAD1B5652659390A19B6C0C8DF /* iOSSnapshotTestCase.xcconfig */; @@ -1287,6 +1452,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 5F728644B9B26206FF90AF6EBE61277D /* Build configuration list for PBXNativeTarget "Pods-Applications" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CD3A91965F811FB1358B0839B1FD8AFE /* Debug */, + 8ABA56DA4587184BD9DF2DF0109D360B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 6D7B4E7EB204B4F78272A96C2ADA5BD6 /* Build configuration list for PBXNativeTarget "Pods-DZNEmptyDataSetTests" */ = { isa = XCConfigurationList; buildConfigurations = ( From 754d7c0f78f9a9f7b67c144954ee7b1853eb3bae Mon Sep 17 00:00:00 2001 From: dzenbot Date: Sun, 19 Jan 2020 00:53:33 -0800 Subject: [PATCH 21/25] Adding a weak reference wrapper + code cleanup --- .../ApplicationViewController.swift | 39 +++- .../Applications/MainViewController.m | 2 + .../DZNEmptyDataSet.xcodeproj/project.pbxproj | 2 + .../xcschemes/Applications.xcscheme | 7 + .../Pods-Applications-Info.plist | 26 +++ ...ods-Applications-acknowledgements.markdown | 26 +++ .../Pods-Applications-acknowledgements.plist | 58 ++++++ .../Pods-Applications-dummy.m | 5 + .../Pods-Applications-frameworks.sh | 171 ++++++++++++++++++ .../Pods-Applications-umbrella.h | 16 ++ .../Pods-Applications.debug.xcconfig | 13 ++ .../Pods-Applications.modulemap | 6 + .../Pods-Applications.release.xcconfig | 13 ++ Source/Swift/EmptyDataSet.swift | 18 +- Source/Swift/EmptyDataSetImpl.swift | 100 ++++++++-- Source/Swift/EmptyDataSetView.swift | 6 +- 16 files changed, 475 insertions(+), 33 deletions(-) create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-Info.plist create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.markdown create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.plist create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-dummy.m create mode 100755 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-frameworks.sh create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-umbrella.h create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.debug.xcconfig create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.modulemap create mode 100644 DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.release.xcconfig diff --git a/DZNEmptyDataSet/Applications/ApplicationViewController.swift b/DZNEmptyDataSet/Applications/ApplicationViewController.swift index b01d5ef3..487ea18f 100644 --- a/DZNEmptyDataSet/Applications/ApplicationViewController.swift +++ b/DZNEmptyDataSet/Applications/ApplicationViewController.swift @@ -9,10 +9,19 @@ import UIKit import EmptyDataSet -class ApplicationViewController: UITableViewController { +class ApplicationViewController: UIViewController { var app: Application? + lazy var tableView: MyTableView = { + let view = MyTableView(frame: self.view.bounds, style: .plain) + view.autoresizingMask = [.flexibleWidth, .flexibleHeight] + view.dataSource = self + view.emptyDataSetSource = self + view.emptyDataSetDelegate = self + return view + }() + @objc convenience init(application: Application) { self.init(nibName: nil, bundle: nil) @@ -29,14 +38,15 @@ class ApplicationViewController: UITableViewController { override func viewDidLoad() { super.viewDidLoad() - - tableView.emptyDataSetSource = self - tableView.emptyDataSetDelegate = self view.backgroundColor = .white + view.addSubview(tableView) + configureHeaderAndFooter() configureNavigationBar() + + print("ApplicationViewController: \(self)") } override func viewDidAppear(_ animated: Bool) { @@ -109,11 +119,18 @@ class ApplicationViewController: UITableViewController { } } - override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + deinit { + print("ApplicationViewController -deinit") + } +} + +extension ApplicationViewController: UITableViewDataSource { + + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 0 } - override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { return UITableViewCell() } } @@ -158,7 +175,7 @@ extension ApplicationViewController: EmptyDataSetSource { return NSAttributedString(string: subtitle, attributes: attributes) } - func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { + func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? { guard let app = app else { return nil } let imageName = "placeholder_\(app.displayName.lowercased())".replacingOccurrences(of: " ", with: "_") @@ -339,3 +356,11 @@ extension ApplicationViewController: EmptyDataSetDelegate { // // return [[NSAttributedString alloc] initWithString:text attributes:attributes]; //} + +class MyTableView: UITableView { + deinit { + print("deinit MyTableView") + emptyDataSetSource = nil + emptyDataSetDelegate = nil + } +} diff --git a/DZNEmptyDataSet/Applications/MainViewController.m b/DZNEmptyDataSet/Applications/MainViewController.m index 7f1fb371..8889099e 100644 --- a/DZNEmptyDataSet/Applications/MainViewController.m +++ b/DZNEmptyDataSet/Applications/MainViewController.m @@ -113,6 +113,8 @@ - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath [self.navigationController pushViewController:controller animated:YES]; } + + NSLog(@"viewControllers.count = %lu", (unsigned long)self.navigationController.viewControllers.count); } @end diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj index 6ab3f37d..7ca93664 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 3AC13C2C04A330F6731CD271 /* Pods_DZNEmptyDataSetTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C5DC4B343BE997FFAA0048 /* Pods_DZNEmptyDataSetTests.framework */; }; 3B12888038B2AA7F321565FC /* Pods_Bento.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A616CBACE16863851A421398 /* Pods_Bento.framework */; }; 3FF250E1FED243B2337A1DF9 /* Pods_EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BB8442C77998FDE8BE3D6A37 /* Pods_EmptyDataSet.framework */; }; + 4F9DB7A823D433FE00570483 /* EmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4FA1AAFF23BC296B007CF389 /* EmptyDataSet.framework */; }; 4FA1AAE923BC28F2007CF389 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAE823BC28F2007CF389 /* AppDelegate.swift */; }; 4FA1AAEB23BC28F2007CF389 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEA23BC28F2007CF389 /* SceneDelegate.swift */; }; 4FA1AAED23BC28F2007CF389 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FA1AAEC23BC28F2007CF389 /* ViewController.swift */; }; @@ -213,6 +214,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 4F9DB7A823D433FE00570483 /* EmptyDataSet.framework in Frameworks */, F58A3EA91E66B7940086E0EF /* DZNEmptyDataSet.framework in Frameworks */, 166785C29B6C017532F9BA5B /* Pods_Applications.framework in Frameworks */, ); diff --git a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme index 3cf3b8b7..cefaf5c0 100644 --- a/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme +++ b/DZNEmptyDataSet/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/Applications.xcscheme @@ -50,6 +50,13 @@ ReferencedContainer = "container:DZNEmptyDataSet.xcodeproj"> + + + + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.markdown b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.markdown new file mode 100644 index 00000000..25f8f66c --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.markdown @@ -0,0 +1,26 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## SnapKit + +Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. + +Generated by CocoaPods - https://cocoapods.org diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.plist b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.plist new file mode 100644 index 00000000..8474d451 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-acknowledgements.plist @@ -0,0 +1,58 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit + +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. + + License + MIT + Title + SnapKit + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-dummy.m b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-dummy.m new file mode 100644 index 00000000..33ed7538 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Applications : NSObject +@end +@implementation PodsDummy_Pods_Applications +@end diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-frameworks.sh b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-frameworks.sh new file mode 100755 index 00000000..b253b3b3 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-frameworks.sh @@ -0,0 +1,171 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + +if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + +COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" +SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" + +# Used as a return value for each invocation of `strip_invalid_archs` function. +STRIP_BINARY_RETVAL=0 + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +# Copies and strips a vendored framework +install_framework() +{ + if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then + local source="${BUILT_PRODUCTS_DIR}/$1" + elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then + local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" + elif [ -r "$1" ]; then + local source="$1" + fi + + local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + + if [ -L "${source}" ]; then + echo "Symlinked..." + source="$(readlink "${source}")" + fi + + # Use filter instead of exclude so missing patterns don't throw errors. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" + + local basename + basename="$(basename -s .framework "$1")" + binary="${destination}/${basename}.framework/${basename}" + + if ! [ -r "$binary" ]; then + binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" + fi + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then + strip_invalid_archs "$binary" + fi + + # Resign the code if required by the build settings to avoid unstable apps + code_sign_if_enabled "${destination}/$(basename "$1")" + + # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. + if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then + local swift_runtime_libs + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) + for lib in $swift_runtime_libs; do + echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" + rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" + code_sign_if_enabled "${destination}/${lib}" + done + fi +} + +# Copies and strips a vendored dSYM +install_dsym() { + local source="$1" + if [ -r "$source" ]; then + # Copy the dSYM into a the targets temp dir. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}" + + local basename + basename="$(basename -s .framework.dSYM "$source")" + binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}" + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then + strip_invalid_archs "$binary" + fi + + if [[ $STRIP_BINARY_RETVAL == 1 ]]; then + # Move the stripped file into its final destination. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}" + else + # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing. + touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM" + fi + fi +} + +# Copies the bcsymbolmap files of a vendored framework +install_bcsymbolmap() { + local bcsymbolmap_path="$1" + local destination="${BUILT_PRODUCTS_DIR}" + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}" +} + +# Signs a framework with the provided identity +code_sign_if_enabled() { + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity + echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" + local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" + + if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + code_sign_cmd="$code_sign_cmd &" + fi + echo "$code_sign_cmd" + eval "$code_sign_cmd" + fi +} + +# Strip invalid architectures +strip_invalid_archs() { + binary="$1" + # Get architectures for current target binary + binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)" + # Intersect them with the architectures we are building for + intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)" + # If there are no archs supported by this binary then warn the user + if [[ -z "$intersected_archs" ]]; then + echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)." + STRIP_BINARY_RETVAL=0 + return + fi + stripped="" + for arch in $binary_archs; do + if ! [[ "${ARCHS}" == *"$arch"* ]]; then + # Strip non-valid architectures in-place + lipo -remove "$arch" -output "$binary" "$binary" + stripped="$stripped $arch" + fi + done + if [[ "$stripped" ]]; then + echo "Stripped $binary of architectures:$stripped" + fi + STRIP_BINARY_RETVAL=1 +} + + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" +fi +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-umbrella.h b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-umbrella.h new file mode 100644 index 00000000..7d5ecb8b --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_ApplicationsVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_ApplicationsVersionString[]; + diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.debug.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.debug.xcconfig new file mode 100644 index 00000000..5ff82a81 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.debug.xcconfig @@ -0,0 +1,13 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +OTHER_LDFLAGS = $(inherited) -framework "SnapKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.modulemap b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.modulemap new file mode 100644 index 00000000..a8953272 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.modulemap @@ -0,0 +1,6 @@ +framework module Pods_Applications { + umbrella header "Pods-Applications-umbrella.h" + + export * + module * { export * } +} diff --git a/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.release.xcconfig b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.release.xcconfig new file mode 100644 index 00000000..5ff82a81 --- /dev/null +++ b/DZNEmptyDataSet/Pods/Target Support Files/Pods-Applications/Pods-Applications.release.xcconfig @@ -0,0 +1,13 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' +OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" +OTHER_LDFLAGS = $(inherited) -framework "SnapKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Source/Swift/EmptyDataSet.swift b/Source/Swift/EmptyDataSet.swift index 29ab5f6e..0a4d4a0d 100644 --- a/Source/Swift/EmptyDataSet.swift +++ b/Source/Swift/EmptyDataSet.swift @@ -33,19 +33,21 @@ let EmptyDataSetDefaultSpacing: CGFloat = 10 extension UIScrollView: EmptyDataSetInterface { - public var emptyDataSetSource: EmptyDataSetSource? { - get { return objc_getAssociatedObject(self, &AssociatedKeys.datasource) as? EmptyDataSetSource } - set { objc_setAssociatedObject(self, &AssociatedKeys.datasource, newValue, .OBJC_ASSOCIATION_ASSIGN); swizzleIfNeeded() } + public weak var emptyDataSetSource: EmptyDataSetSource? { + get { return getEmptyDataSetSource() } + set { setEmptyDataSetSource(newValue) } } - public var emptyDataSetDelegate: EmptyDataSetDelegate? { - get { return objc_getAssociatedObject(self, &AssociatedKeys.delegate) as? EmptyDataSetDelegate } - set { objc_setAssociatedObject(self, &AssociatedKeys.delegate, newValue, .OBJC_ASSOCIATION_ASSIGN); swizzleIfNeeded() } + public weak var emptyDataSetDelegate: EmptyDataSetDelegate? { + get { return getEmptyDataSetDelegate() } + set { setEmptyDataSetDelegate(newValue) } } public var isEmptyDataSetVisible: Bool { - guard let view = emptyDataSetView else { return false } - return !view.isHidden +// guard let view = emptyDataSetView else { return false } +// return !view.isHidden + + return true } public func reloadEmptyDataSet() { diff --git a/Source/Swift/EmptyDataSetImpl.swift b/Source/Swift/EmptyDataSetImpl.swift index c644a478..5e98a648 100644 --- a/Source/Swift/EmptyDataSetImpl.swift +++ b/Source/Swift/EmptyDataSetImpl.swift @@ -15,6 +15,36 @@ protocol EmptyDataSetProtocol { internal extension UIScrollView { + // MARK: - Setter / Getter + + func getEmptyDataSetSource() -> EmptyDataSetSource? { + let reference = objc_getAssociatedObject(self, &AssociatedKeys.datasource) as? WeakReference + return reference?.object as? EmptyDataSetSource + } + + func setEmptyDataSetSource(_ datasource: EmptyDataSetSource?) { + if datasource == nil { + objc_setAssociatedObject(self, &AssociatedKeys.datasource, nil, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + invalidate() + } else { + objc_setAssociatedObject(self, &AssociatedKeys.datasource, WeakReference(with: datasource), .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + swizzleIfNeeded() + } + } + + func getEmptyDataSetDelegate() -> EmptyDataSetDelegate? { + let reference = objc_getAssociatedObject(self, &AssociatedKeys.delegate) as? WeakReference + return reference?.object as? EmptyDataSetDelegate + } + + func setEmptyDataSetDelegate(_ delegate: Any?) { + if delegate == nil { + objc_setAssociatedObject(self, &AssociatedKeys.delegate, nil, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } else { + objc_setAssociatedObject(self, &AssociatedKeys.delegate, WeakReference(with: delegate), .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + } + // MARK: - Layout func layoutEmptyDataSetIfNeeded() { @@ -40,40 +70,48 @@ internal extension UIScrollView { isScrollEnabled = delegate.emptyDataSetShouldAllowScroll(self) } - view.setupLayout() - addSubview(view) + view.setupLayout() } - var emptyDataSetView: EmptyDataSetView? { - var view = objc_getAssociatedObject(self, &AssociatedKeys.view) as? EmptyDataSetView - - if view == nil { - view = EmptyDataSetView() + weak var emptyDataSetView: EmptyDataSetView? { + get { + if let reference = objc_getAssociatedObject(self, &AssociatedKeys.view) as? WeakReference { + return reference.object as? EmptyDataSetView + } else { + let view = EmptyDataSetView() - let tapGesture = UITapGestureRecognizer.init(target: self, action: #selector(didTapContentView(_:))) - view?.addGestureRecognizer(tapGesture) + let tapGesture = UITapGestureRecognizer.init(target: self, action: #selector(didTapContentView(_:))) + view.addGestureRecognizer(tapGesture) - objc_setAssociatedObject(self, &AssociatedKeys.view, view, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + objc_setAssociatedObject(self, &AssociatedKeys.view, WeakReference(with: view), .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + return view + } + } + set { + objc_setAssociatedObject(self, &AssociatedKeys.view, WeakReference(with: newValue), .OBJC_ASSOCIATION_RETAIN_NONATOMIC); } - - return view } // MARK: - Swizzling - var didSwizzle: Bool { + var didSwizzle: Bool? { get { - let value = objc_getAssociatedObject(self, &AssociatedKeys.didSwizzle) as? NSNumber - return value?.boolValue ?? false // Returns false if the boolValue is nil. + let reference = objc_getAssociatedObject(self, &AssociatedKeys.didSwizzle) as? WeakReference + let number = reference?.object as? NSNumber + return number?.boolValue ?? false // Returns false if the boolValue is nil. } set { - objc_setAssociatedObject(self, &AssociatedKeys.didSwizzle, NSNumber(value: newValue), .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + if let bool = newValue { + objc_setAssociatedObject(self, &AssociatedKeys.didSwizzle, WeakReference(with: NSNumber(value: bool)), .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } else { + objc_setAssociatedObject(self, &AssociatedKeys.didSwizzle, nil, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } } } func swizzleIfNeeded() { - guard !didSwizzle else { return } + guard let bool = didSwizzle, !bool else { return } if let proxy = self as? EmptyDataSetProtocol { didSwizzle = proxy.swizzle() @@ -99,6 +137,16 @@ internal extension UIScrollView { } } + // MARK: - Invalidation + + func invalidate() { + if let view = emptyDataSetView { + view.prepareForReuse() + view.isHidden = true + emptyDataSetView = nil + } + } + // MARK: - Gestures @objc private func didTapContentView(_ sender: UITapGestureRecognizer) { @@ -138,12 +186,16 @@ extension UITableView: EmptyDataSetProtocol { } @objc func reloadData_swizzled() { + print("reloadData_swizzled") + // Calls the original implementation reloadData_swizzled() reloadEmptyDataSet() } @objc func endUpdates_swizzled() { + print("endUpdates_swizzled") + // Calls the original implementation endUpdates_swizzled() reloadEmptyDataSet() @@ -201,3 +253,17 @@ struct AssociatedKeys { static var view = "emptyDataSetView" static var didSwizzle = "didSwizzle" } + +class WeakReference: NSObject { + weak var object: AnyObject? + + init(with object: Any?) { + super.init() + self.object = object as AnyObject? + } + + deinit { + print("WeakReference -deinit") + self.object = nil + } +} diff --git a/Source/Swift/EmptyDataSetView.swift b/Source/Swift/EmptyDataSetView.swift index 7526dc96..0bebe73f 100644 --- a/Source/Swift/EmptyDataSetView.swift +++ b/Source/Swift/EmptyDataSetView.swift @@ -100,7 +100,7 @@ internal class EmptyDataSetView: UIView { // MARK: - Layout func setupLayout() { - + prepareForReuse() var views = [UIView]() @@ -160,6 +160,10 @@ internal class EmptyDataSetView: UIView { fileprivate func didTapButton(sender: UIButton) { print("didTapButton: \(self)") } + + deinit { + print("EmptyDataSetView -deinit") + } } extension UIView { From 4504cbf699dacfad8c3f9c3c154d725fa78850c1 Mon Sep 17 00:00:00 2001 From: Anmol Malhotra Date: Mon, 2 Mar 2020 11:47:50 +0530 Subject: [PATCH 22/25] Removes SnapKit from EmptyDataSet (#455) * Removes SnapKit from EmptyDataSet * Removes weak self from UIKit animation block as it's not required --- DZNEmptyDataSet/Podfile | 4 ---- Source/Swift/EmptyDataSetView.swift | 23 +++++++++-------------- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/DZNEmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile index 05a3e8f1..44b846e3 100644 --- a/DZNEmptyDataSet/Podfile +++ b/DZNEmptyDataSet/Podfile @@ -13,10 +13,6 @@ target 'Applications' do pod 'SnapKit' end -target 'EmptyDataSet' do - pod 'SnapKit' -end - target 'DZNEmptyDataSetTests' do pod 'iOSSnapshotTestCase' pod 'SnapKit' diff --git a/Source/Swift/EmptyDataSetView.swift b/Source/Swift/EmptyDataSetView.swift index 0bebe73f..9fddcb19 100644 --- a/Source/Swift/EmptyDataSetView.swift +++ b/Source/Swift/EmptyDataSetView.swift @@ -7,7 +7,6 @@ // import UIKit -import SnapKit internal class EmptyDataSetView: UIView { @@ -89,9 +88,9 @@ internal class EmptyDataSetView: UIView { addSubview(contentView) if fadeInOnDisplay { - UIView.animate(withDuration: 0.25, animations: { [weak self] () -> Void in - self?.contentView.alpha = 1 - }) + UIView.animate(withDuration: 0.25) { + self.contentView.alpha = 1 + } } else { contentView.alpha = 1 } @@ -124,16 +123,12 @@ internal class EmptyDataSetView: UIView { } contentView.addSubview(stackView) - stackView.snp.makeConstraints { - $0.centerX.centerY.equalToSuperview() - } - - // TODO: For some reason, the following implementation is causing conflicts and not laying out correctly! - // This is the exact same result that the SnapKit implementation above! -// NSLayoutConstraint.activate([ -// contentView.centerXAnchor.constraint(equalTo: stackView.centerXAnchor), -// contentView.centerYAnchor.constraint(equalTo: stackView.centerYAnchor) -// ]) + stackView.translatesAutoresizingMaskIntoConstraints = false + + NSLayoutConstraint.activate([ + stackView.centerXAnchor.constraint(equalTo: contentView.centerXAnchor), + stackView.centerYAnchor.constraint(equalTo: contentView.centerYAnchor) + ]) } func prepareForReuse() { From 5463d561228752c8786a70a699a8496bd2d05861 Mon Sep 17 00:00:00 2001 From: Anmol Malhotra Date: Tue, 3 Mar 2020 04:45:44 +0530 Subject: [PATCH 23/25] Adds early exit to `isEmpty` function and removes SnapKit from Bento (#456) * Removes SnapKit from EmptyDataSet * Removes weak self from UIKit animation block as it's not required * Adds early exit to isEmpty function to prevent unnecessary calculation * Removes SnapKit from Bento --- DZNEmptyDataSet/Podfile | 4 ---- Source/Swift/EmptyDataSetImpl.swift | 18 ++++++++++-------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/DZNEmptyDataSet/Podfile b/DZNEmptyDataSet/Podfile index 44b846e3..58a7d4b8 100644 --- a/DZNEmptyDataSet/Podfile +++ b/DZNEmptyDataSet/Podfile @@ -5,10 +5,6 @@ inhibit_all_warnings! workspace 'DZNEmptyDataSet.xcworkspace' -target 'Bento' do - pod 'SnapKit' -end - target 'Applications' do pod 'SnapKit' end diff --git a/Source/Swift/EmptyDataSetImpl.swift b/Source/Swift/EmptyDataSetImpl.swift index 5e98a648..62393acd 100644 --- a/Source/Swift/EmptyDataSetImpl.swift +++ b/Source/Swift/EmptyDataSetImpl.swift @@ -175,14 +175,15 @@ extension UITableView: EmptyDataSetProtocol { } func isEmpty() -> Bool { - var items: Int = 0 let sections = dataSource?.numberOfSections?(in: self) ?? 1 for i in 0.. 0 { + return false + } } - return items == 0 + + return true } @objc func reloadData_swizzled() { @@ -222,14 +223,15 @@ extension UICollectionView: EmptyDataSetProtocol { } func isEmpty() -> Bool { - var items: Int = 0 let sections = dataSource?.numberOfSections?(in: self) ?? 1 for i in 0.. 0 { + return false + } } - return items == 0 + + return true } @objc func reloadData_swizzled() { From b9e6ffc675f577035e70a878600f6dad8899c774 Mon Sep 17 00:00:00 2001 From: Ignacio Romero Zurbuchen <590579+dzenbot@users.noreply.github.com> Date: Mon, 23 Mar 2020 17:23:41 -0700 Subject: [PATCH 24/25] Update Source/Swift/EmptyDataSetSource.swift Co-Authored-By: Eytan Schulman --- Source/Swift/EmptyDataSetSource.swift | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Source/Swift/EmptyDataSetSource.swift b/Source/Swift/EmptyDataSetSource.swift index 631a95ae..dedaa9c0 100644 --- a/Source/Swift/EmptyDataSetSource.swift +++ b/Source/Swift/EmptyDataSetSource.swift @@ -22,7 +22,7 @@ public protocol EmptyDataSetSource: class { func image(forEmptyDataSet scrollView: UIScrollView) -> UIImage? /// Default is nil. - func imagetintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? + func imageTintColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? /// Default is nil. func backgroundColor(forEmptyDataSet scrollView: UIScrollView) -> UIColor? @@ -93,4 +93,3 @@ public extension EmptyDataSetSource { return nil } } - From 2e5398b4d563c60757a17fa82b2a1e89e3981930 Mon Sep 17 00:00:00 2001 From: Ignacio Romero Zurbuchen <590579+dzenbot@users.noreply.github.com> Date: Mon, 23 Mar 2020 17:23:49 -0700 Subject: [PATCH 25/25] Update Source/Swift/EmptyDataSet.swift Co-Authored-By: Eytan Schulman --- Source/Swift/EmptyDataSet.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Swift/EmptyDataSet.swift b/Source/Swift/EmptyDataSet.swift index 0a4d4a0d..dc0fe827 100644 --- a/Source/Swift/EmptyDataSet.swift +++ b/Source/Swift/EmptyDataSet.swift @@ -21,7 +21,7 @@ public protocol EmptyDataSetInterface { /// Reloads the empty dataset content receiver. /// Call this method to force all the data to refresh. Calling reloadData() is similar, but this method only refreshes the empty dataset, - /// instead of all the delegate/datasource callbs from your table view or collection view. + /// instead of all the delegate/datasource calls from your table view or collection view. func reloadEmptyDataSet() }