Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
GeliBusinessPlatform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
CI / CD Analytics
Repository Analytics
Value Stream Analytics
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ljy
GeliBusinessPlatform
Commits
b4cfb21c
Commit
b4cfb21c
authored
Nov 03, 2020
by
刘俊宏
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
pod更新
parent
deeb7bb0
Changes
56
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
56 changed files
with
2832 additions
and
2620 deletions
+2832
-2620
GeliBusinessPlatform.xcworkspace/xcuserdata/liujunhong.xcuserdatad/UserInterfaceState.xcuserstate
...ata/liujunhong.xcuserdatad/UserInterfaceState.xcuserstate
+0
-0
Pods/Pods.xcodeproj/project.pbxproj
Pods/Pods.xcodeproj/project.pbxproj
+2046
-2042
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Alamofire.xcscheme
...rdata/liujunhong.xcuserdatad/xcschemes/Alamofire.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/CryptoSwift.xcscheme
...ata/liujunhong.xcuserdatad/xcschemes/CryptoSwift.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Dollar.xcscheme
...userdata/liujunhong.xcuserdatad/xcschemes/Dollar.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ESTabBarController-swift.xcscheme
...g.xcuserdatad/xcschemes/ESTabBarController-swift.xcscheme
+1
-1
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Hue.xcscheme
.../xcuserdata/liujunhong.xcuserdatad/xcschemes/Hue.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/IQKeyboardManagerSwift.xcscheme
...ong.xcuserdatad/xcschemes/IQKeyboardManagerSwift.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/JZLocationConverter.xcscheme
...unhong.xcuserdatad/xcschemes/JZLocationConverter.xcscheme
+60
-0
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Kingfisher.xcscheme
...data/liujunhong.xcuserdatad/xcschemes/Kingfisher.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/LGButton.xcscheme
...erdata/liujunhong.xcuserdatad/xcschemes/LGButton.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/MJRefresh.xcscheme
...rdata/liujunhong.xcuserdatad/xcschemes/MJRefresh.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ObjectMapper.xcscheme
...ta/liujunhong.xcuserdatad/xcschemes/ObjectMapper.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Pods-GeliBusinessPlatform.xcscheme
....xcuserdatad/xcschemes/Pods-GeliBusinessPlatform.xcscheme
+1
-1
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ReachabilitySwift.xcscheme
...ujunhong.xcuserdatad/xcschemes/ReachabilitySwift.xcscheme
+1
-1
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SkeletonView.xcscheme
...ta/liujunhong.xcuserdatad/xcschemes/SkeletonView.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SnapKit.xcscheme
...serdata/liujunhong.xcuserdatad/xcschemes/SnapKit.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SwiftDate.xcscheme
...rdata/liujunhong.xcuserdatad/xcschemes/SwiftDate.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SwifterSwift.xcscheme
...ta/liujunhong.xcuserdatad/xcschemes/SwifterSwift.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SwiftyJSON.xcscheme
...data/liujunhong.xcuserdatad/xcschemes/SwiftyJSON.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ViewAnimator.xcscheme
...ta/liujunhong.xcuserdatad/xcschemes/ViewAnimator.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/WYAutoLayout.xcscheme
...ta/liujunhong.xcuserdatad/xcschemes/WYAutoLayout.xcscheme
+13
-11
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/xcschememanagement.plist
...liujunhong.xcuserdatad/xcschemes/xcschememanagement.plist
+3
-41
Pods/SkeletonView/README.md
Pods/SkeletonView/README.md
+183
-190
Pods/SkeletonView/Sources/Appearance/SkeletonAppearance.swift
.../SkeletonView/Sources/Appearance/SkeletonAppearance.swift
+1
-1
Pods/SkeletonView/Sources/Builders/SkeletonLayerBuilder.swift
.../SkeletonView/Sources/Builders/SkeletonLayerBuilder.swift
+5
-0
Pods/SkeletonView/Sources/Builders/SkeletonMultilineLayerBuilder.swift
...View/Sources/Builders/SkeletonMultilineLayerBuilder.swift
+23
-5
Pods/SkeletonView/Sources/Collections/CollectionViews/SkeletonCollectionViewProtocols.swift
...ons/CollectionViews/SkeletonCollectionViewProtocols.swift
+0
-2
Pods/SkeletonView/Sources/Collections/CollectionViews/UICollectionView+CollectionSkeleton.swift
...CollectionViews/UICollectionView+CollectionSkeleton.swift
+2
-2
Pods/SkeletonView/Sources/Collections/SkeletonCollectionDataSource.swift
...ew/Sources/Collections/SkeletonCollectionDataSource.swift
+1
-2
Pods/SkeletonView/Sources/Collections/SkeletonCollectionDelegate.swift
...View/Sources/Collections/SkeletonCollectionDelegate.swift
+0
-2
Pods/SkeletonView/Sources/Collections/TableViews/UITableView+CollectionSkeleton.swift
...llections/TableViews/UITableView+CollectionSkeleton.swift
+2
-3
Pods/SkeletonView/Sources/Debug/SkeletonDebug.swift
Pods/SkeletonView/Sources/Debug/SkeletonDebug.swift
+3
-3
Pods/SkeletonView/Sources/Extensions/CALayer+Extensions.swift
.../SkeletonView/Sources/Extensions/CALayer+Extensions.swift
+56
-37
Pods/SkeletonView/Sources/Extensions/UIColor+Skeleton.swift
Pods/SkeletonView/Sources/Extensions/UIColor+Skeleton.swift
+8
-4
Pods/SkeletonView/Sources/Extensions/UITableView+VisibleSections.swift
...View/Sources/Extensions/UITableView+VisibleSections.swift
+6
-8
Pods/SkeletonView/Sources/Extensions/UIView+Autolayout.swift
Pods/SkeletonView/Sources/Extensions/UIView+Autolayout.swift
+25
-0
Pods/SkeletonView/Sources/Extensions/UIView+Extension.swift
Pods/SkeletonView/Sources/Extensions/UIView+Extension.swift
+6
-4
Pods/SkeletonView/Sources/Extensions/UIView+Frame.swift
Pods/SkeletonView/Sources/Extensions/UIView+Frame.swift
+18
-16
Pods/SkeletonView/Sources/Extensions/UIView+IBInspectable.swift
...keletonView/Sources/Extensions/UIView+IBInspectable.swift
+16
-6
Pods/SkeletonView/Sources/Helpers/AssociationPolicy.swift
Pods/SkeletonView/Sources/Helpers/AssociationPolicy.swift
+1
-0
Pods/SkeletonView/Sources/Helpers/PrepareForSkeletonProtocol.swift
...etonView/Sources/Helpers/PrepareForSkeletonProtocol.swift
+38
-0
Pods/SkeletonView/Sources/Helpers/RecursiveProtocol.swift
Pods/SkeletonView/Sources/Helpers/RecursiveProtocol.swift
+2
-4
Pods/SkeletonView/Sources/Helpers/Swizzling.swift
Pods/SkeletonView/Sources/Helpers/Swizzling.swift
+2
-2
Pods/SkeletonView/Sources/Multilines/ContainsMultilineText.swift
...eletonView/Sources/Multilines/ContainsMultilineText.swift
+1
-4
Pods/SkeletonView/Sources/Multilines/UILabel+Multiline.swift
Pods/SkeletonView/Sources/Multilines/UILabel+Multiline.swift
+8
-1
Pods/SkeletonView/Sources/Multilines/UITextView+Multiline.swift
...keletonView/Sources/Multilines/UITextView+Multiline.swift
+6
-3
Pods/SkeletonView/Sources/Recoverable/Recoverable.swift
Pods/SkeletonView/Sources/Recoverable/Recoverable.swift
+41
-13
Pods/SkeletonView/Sources/Recoverable/RecoverableViewState.swift
...eletonView/Sources/Recoverable/RecoverableViewState.swift
+10
-6
Pods/SkeletonView/Sources/SkeletonAnimationBuilder.swift
Pods/SkeletonView/Sources/SkeletonAnimationBuilder.swift
+16
-16
Pods/SkeletonView/Sources/SkeletonConfig.swift
Pods/SkeletonView/Sources/SkeletonConfig.swift
+6
-8
Pods/SkeletonView/Sources/SkeletonFlow.swift
Pods/SkeletonView/Sources/SkeletonFlow.swift
+1
-1
Pods/SkeletonView/Sources/SkeletonLayer.swift
Pods/SkeletonView/Sources/SkeletonLayer.swift
+14
-11
Pods/SkeletonView/Sources/SkeletonView.swift
Pods/SkeletonView/Sources/SkeletonView.swift
+10
-2
Pods/SkeletonView/Sources/Transitions/UIView+Transitions.swift
...SkeletonView/Sources/Transitions/UIView+Transitions.swift
+0
-1
Pods/Target Support Files/SkeletonView/SkeletonView-Info.plist
...Target Support Files/SkeletonView/SkeletonView-Info.plist
+1
-1
No files found.
GeliBusinessPlatform.xcworkspace/xcuserdata/liujunhong.xcuserdatad/UserInterfaceState.xcuserstate
View file @
b4cfb21c
No preview for this file type
Pods/Pods.xcodeproj/project.pbxproj
View file @
b4cfb21c
This diff is collapsed.
Click to expand it.
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Alamofire.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"EAAA1AD3A8A1B59AB91319EE40752C6D"
BlueprintIdentifier =
"EAAA1AD3A8A1B59AB91319EE40752C6D"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/CryptoSwift.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"99313990C1D76A6D1D017868B6975CC8"
BlueprintIdentifier =
"99313990C1D76A6D1D017868B6975CC8"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Dollar.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"F798030A13A5E43528C860AD809CD390"
BlueprintIdentifier =
"F798030A13A5E43528C860AD809CD390"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ESTabBarController-swift.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Hue.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"00D9B51B84230E50370AC70ADCF7F8AA"
BlueprintIdentifier =
"00D9B51B84230E50370AC70ADCF7F8AA"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/IQKeyboardManagerSwift.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"B490E7485944099E16C9CBD79119D1D4"
BlueprintIdentifier =
"B490E7485944099E16C9CBD79119D1D4"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/JZLocationConverter.xcscheme
0 → 100644
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion =
"1100"
version =
"1.3"
>
<BuildAction
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
>
<BuildableReference
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"E8572772A2B42B68FDF351C752B8A238"
BuildableName =
"JZLocationConverter.framework"
BlueprintName =
"JZLocationConverter"
ReferencedContainer =
"container:Pods.xcodeproj"
>
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
buildConfiguration =
"Debug"
>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
useCustomWorkingDirectory =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
<AnalyzeAction
buildConfiguration =
"Debug"
>
</AnalyzeAction>
<ArchiveAction
buildConfiguration =
"Release"
revealArchiveInOrganizer =
"YES"
>
</ArchiveAction>
</Scheme>
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Kingfisher.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"E8022D22FAA6690B5E1C379C1BCE1491"
BlueprintIdentifier =
"E8022D22FAA6690B5E1C379C1BCE1491"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/LGButton.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"FD999FE212F29E29DEEA0A85E1DC4D4E"
BlueprintIdentifier =
"FD999FE212F29E29DEEA0A85E1DC4D4E"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/MJRefresh.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"6868056D761E163D10FDAF8CF1C4D9B8"
BlueprintIdentifier =
"6868056D761E163D10FDAF8CF1C4D9B8"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ObjectMapper.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"162E649F50FEC62B61BDD87D1BD422B4"
BlueprintIdentifier =
"162E649F50FEC62B61BDD87D1BD422B4"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/Pods-GeliBusinessPlatform.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ReachabilitySwift.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SkeletonView.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"8CEEFD1CB630CA790F0396E2E24A4C8C"
BlueprintIdentifier =
"8CEEFD1CB630CA790F0396E2E24A4C8C"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SnapKit.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"19622742EBA51E823D6DAE3F8CDBFAD4"
BlueprintIdentifier =
"19622742EBA51E823D6DAE3F8CDBFAD4"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SwiftDate.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"6038CE6006EFBE9D905454CF01909C42"
BlueprintIdentifier =
"6038CE6006EFBE9D905454CF01909C42"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SwifterSwift.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"5D8BB851D938AE8F1A461F95C1ABD69B"
BlueprintIdentifier =
"5D8BB851D938AE8F1A461F95C1ABD69B"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/SwiftyJSON.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"D118A6A04828FD3CDA8640CD2B6796D2"
BlueprintIdentifier =
"D118A6A04828FD3CDA8640CD2B6796D2"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/ViewAnimator.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"91BFC2827E7E6E2B51AB2CFF58AC6317"
BlueprintIdentifier =
"91BFC2827E7E6E2B51AB2CFF58AC6317"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/WYAutoLayout.xcscheme
View file @
b4cfb21c
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
<Scheme
LastUpgradeVersion =
"1
2
00"
LastUpgradeVersion =
"1
1
00"
version =
"1.3"
>
version =
"1.3"
>
<BuildAction
<BuildAction
parallelizeBuildables =
"YES"
parallelizeBuildables =
"YES"
buildImplicitDependencies =
"YES"
>
buildImplicitDependencies =
"YES"
>
<BuildActionEntries>
<BuildActionEntries>
<BuildActionEntry
<BuildActionEntry
buildForAnalyzing =
"YES"
buildForTesting =
"YES"
buildForTesting =
"YES"
buildForRunning =
"YES"
buildForRunning =
"YES"
buildForProfiling =
"YES"
buildForProfiling =
"YES"
buildForArchiving =
"YES"
buildForArchiving =
"YES"
>
buildForAnalyzing =
"YES"
>
<BuildableReference
<BuildableReference
BuildableIdentifier =
"primary"
BuildableIdentifier =
"primary"
BlueprintIdentifier =
"930887923DC0E8AC2A3589A7987F2BDD"
BlueprintIdentifier =
"930887923DC0E8AC2A3589A7987F2BDD"
...
@@ -23,15 +23,14 @@
...
@@ -23,15 +23,14 @@
</BuildActionEntries>
</BuildActionEntries>
</BuildAction>
</BuildAction>
<TestAction
<TestAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
shouldUseLaunchSchemeArgsEnv =
"YES"
<Testables>
buildConfiguration =
"Debug"
>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
</TestAction>
<LaunchAction
<LaunchAction
buildConfiguration =
"Debug"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedDebuggerIdentifier =
"Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
selectedLauncherIdentifier =
"Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle =
"0"
launchStyle =
"0"
...
@@ -39,14 +38,17 @@
...
@@ -39,14 +38,17 @@
ignoresPersistentStateOnLaunch =
"NO"
ignoresPersistentStateOnLaunch =
"NO"
debugDocumentVersioning =
"YES"
debugDocumentVersioning =
"YES"
debugServiceExtension =
"internal"
debugServiceExtension =
"internal"
buildConfiguration =
"Debug"
allowLocationSimulation =
"YES"
>
allowLocationSimulation =
"YES"
>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
</LaunchAction>
<ProfileAction
<ProfileAction
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
savedToolIdentifier =
""
savedToolIdentifier =
""
useCustomWorkingDirectory =
"NO"
useCustomWorkingDirectory =
"NO"
debugDocumentVersioning =
"YES"
>
debugDocumentVersioning =
"YES"
buildConfiguration =
"Release"
shouldUseLaunchSchemeArgsEnv =
"YES"
>
</ProfileAction>
</ProfileAction>
<AnalyzeAction
<AnalyzeAction
buildConfiguration =
"Debug"
>
buildConfiguration =
"Debug"
>
...
...
Pods/Pods.xcodeproj/xcuserdata/liujunhong.xcuserdatad/xcschemes/xcschememanagement.plist
View file @
b4cfb21c
...
@@ -8,139 +8,101 @@
...
@@ -8,139 +8,101 @@
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
1
</integer>
</dict>
</dict>
<key>
CryptoSwift.xcscheme
</key>
<key>
CryptoSwift.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
2
</integer>
</dict>
</dict>
<key>
Dollar.xcscheme
</key>
<key>
Dollar.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
3
</integer>
</dict>
</dict>
<key>
ESTabBarController-swift.xcscheme
</key>
<key>
ESTabBarController-swift.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
4
</integer>
</dict>
</dict>
<key>
Hue.xcscheme
</key>
<key>
Hue.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
5
</integer>
</dict>
</dict>
<key>
IQKeyboardManagerSwift.xcscheme
</key>
<key>
IQKeyboardManagerSwift.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
6
</integer>
</dict>
</dict>
<key>
JZLocationConverter.xcscheme
_^#shared#^_
</key>
<key>
JZLocationConverter.xcscheme
</key>
<dict>
<dict>
<key>
orderHint
</key>
<key>
isShown
</key>
<
integer>
20
</integer
>
<
false/
>
</dict>
</dict>
<key>
Kingfisher.xcscheme
</key>
<key>
Kingfisher.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
7
</integer>
</dict>
</dict>
<key>
LGButton.xcscheme
</key>
<key>
LGButton.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
8
</integer>
</dict>
</dict>
<key>
MJRefresh.xcscheme
</key>
<key>
MJRefresh.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
9
</integer>
</dict>
</dict>
<key>
ObjectMapper.xcscheme
</key>
<key>
ObjectMapper.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
10
</integer>
</dict>
</dict>
<key>
Pods-GeliBusinessPlatform.xcscheme
</key>
<key>
Pods-GeliBusinessPlatform.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
11
</integer>
</dict>
</dict>
<key>
ReachabilitySwift.xcscheme
</key>
<key>
ReachabilitySwift.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
12
</integer>
</dict>
</dict>
<key>
SkeletonView.xcscheme
</key>
<key>
SkeletonView.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
13
</integer>
</dict>
</dict>
<key>
SnapKit.xcscheme
</key>
<key>
SnapKit.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
14
</integer>
</dict>
</dict>
<key>
SwiftDate.xcscheme
</key>
<key>
SwiftDate.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
15
</integer>
</dict>
</dict>
<key>
SwifterSwift.xcscheme
</key>
<key>
SwifterSwift.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
16
</integer>
</dict>
</dict>
<key>
SwiftyJSON.xcscheme
</key>
<key>
SwiftyJSON.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
17
</integer>
</dict>
</dict>
<key>
ViewAnimator.xcscheme
</key>
<key>
ViewAnimator.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
18
</integer>
</dict>
</dict>
<key>
WYAutoLayout.xcscheme
</key>
<key>
WYAutoLayout.xcscheme
</key>
<dict>
<dict>
<key>
isShown
</key>
<key>
isShown
</key>
<false/>
<false/>
<key>
orderHint
</key>
<integer>
19
</integer>
</dict>
</dict>
</dict>
</dict>
<key>
SuppressBuildableAutocreation
</key>
<key>
SuppressBuildableAutocreation
</key>
...
...
Pods/SkeletonView/README.md
View file @
b4cfb21c
This diff is collapsed.
Click to expand it.
Pods/SkeletonView/Sources/Appearance/SkeletonAppearance.swift
View file @
b4cfb21c
...
@@ -22,7 +22,7 @@ class SkeletonViewAppearance: Appearance {
...
@@ -22,7 +22,7 @@ class SkeletonViewAppearance: Appearance {
var
tintColor
:
UIColor
=
.
skeletonDefault
var
tintColor
:
UIColor
=
.
skeletonDefault
var
gradient
:
SkeletonGradient
=
SkeletonGradient
(
baseColor
:
.
skeletonDefault
)
var
gradient
=
SkeletonGradient
(
baseColor
:
.
skeletonDefault
)
var
multilineHeight
:
CGFloat
=
15
var
multilineHeight
:
CGFloat
=
15
...
...
Pods/SkeletonView/Sources/Builders/SkeletonLayerBuilder.swift
View file @
b4cfb21c
...
@@ -9,25 +9,30 @@ class SkeletonLayerBuilder {
...
@@ -9,25 +9,30 @@ class SkeletonLayerBuilder {
var
colors
:
[
UIColor
]
=
[]
var
colors
:
[
UIColor
]
=
[]
var
holder
:
UIView
?
var
holder
:
UIView
?
@discardableResult
func
setSkeletonType
(
_
type
:
SkeletonType
)
->
SkeletonLayerBuilder
{
func
setSkeletonType
(
_
type
:
SkeletonType
)
->
SkeletonLayerBuilder
{
self
.
skeletonType
=
type
self
.
skeletonType
=
type
return
self
return
self
}
}
@discardableResult
func
addColor
(
_
color
:
UIColor
)
->
SkeletonLayerBuilder
{
func
addColor
(
_
color
:
UIColor
)
->
SkeletonLayerBuilder
{
return
addColors
([
color
])
return
addColors
([
color
])
}
}
@discardableResult
func
addColors
(
_
colors
:
[
UIColor
])
->
SkeletonLayerBuilder
{
func
addColors
(
_
colors
:
[
UIColor
])
->
SkeletonLayerBuilder
{
self
.
colors
.
append
(
contentsOf
:
colors
)
self
.
colors
.
append
(
contentsOf
:
colors
)
return
self
return
self
}
}
@discardableResult
func
setHolder
(
_
holder
:
UIView
)
->
SkeletonLayerBuilder
{
func
setHolder
(
_
holder
:
UIView
)
->
SkeletonLayerBuilder
{
self
.
holder
=
holder
self
.
holder
=
holder
return
self
return
self
}
}
@discardableResult
func
build
()
->
SkeletonLayer
?
{
func
build
()
->
SkeletonLayer
?
{
guard
let
type
=
skeletonType
,
guard
let
type
=
skeletonType
,
let
holder
=
holder
let
holder
=
holder
...
...
Pods/SkeletonView/Sources/Builders/SkeletonMultilineLayerBuilder.swift
View file @
b4cfb21c
...
@@ -12,41 +12,55 @@ class SkeletonMultilineLayerBuilder {
...
@@ -12,41 +12,55 @@ class SkeletonMultilineLayerBuilder {
var
cornerRadius
:
Int
?
var
cornerRadius
:
Int
?
var
multilineSpacing
:
CGFloat
=
SkeletonAppearance
.
default
.
multilineSpacing
var
multilineSpacing
:
CGFloat
=
SkeletonAppearance
.
default
.
multilineSpacing
var
paddingInsets
:
UIEdgeInsets
=
.
zero
var
paddingInsets
:
UIEdgeInsets
=
.
zero
var
isRTL
:
Bool
=
false
@discardableResult
func
setSkeletonType
(
_
type
:
SkeletonType
)
->
SkeletonMultilineLayerBuilder
{
func
setSkeletonType
(
_
type
:
SkeletonType
)
->
SkeletonMultilineLayerBuilder
{
self
.
skeletonType
=
type
self
.
skeletonType
=
type
return
self
return
self
}
}
@discardableResult
func
setIndex
(
_
index
:
Int
)
->
SkeletonMultilineLayerBuilder
{
func
setIndex
(
_
index
:
Int
)
->
SkeletonMultilineLayerBuilder
{
self
.
index
=
index
self
.
index
=
index
return
self
return
self
}
}
@discardableResult
func
setHeight
(
_
height
:
CGFloat
)
->
SkeletonMultilineLayerBuilder
{
func
setHeight
(
_
height
:
CGFloat
)
->
SkeletonMultilineLayerBuilder
{
self
.
height
=
height
self
.
height
=
height
return
self
return
self
}
}
@discardableResult
func
setWidth
(
_
width
:
CGFloat
)
->
SkeletonMultilineLayerBuilder
{
func
setWidth
(
_
width
:
CGFloat
)
->
SkeletonMultilineLayerBuilder
{
self
.
width
=
width
self
.
width
=
width
return
self
return
self
}
}
@discardableResult
func
setCornerRadius
(
_
radius
:
Int
)
->
SkeletonMultilineLayerBuilder
{
func
setCornerRadius
(
_
radius
:
Int
)
->
SkeletonMultilineLayerBuilder
{
self
.
cornerRadius
=
radius
self
.
cornerRadius
=
radius
return
self
return
self
}
}
@discardableResult
func
setMultilineSpacing
(
_
spacing
:
CGFloat
)
->
SkeletonMultilineLayerBuilder
{
func
setMultilineSpacing
(
_
spacing
:
CGFloat
)
->
SkeletonMultilineLayerBuilder
{
self
.
multilineSpacing
=
spacing
self
.
multilineSpacing
=
spacing
return
self
return
self
}
}
@discardableResult
func
setPadding
(
_
insets
:
UIEdgeInsets
)
->
SkeletonMultilineLayerBuilder
{
func
setPadding
(
_
insets
:
UIEdgeInsets
)
->
SkeletonMultilineLayerBuilder
{
self
.
paddingInsets
=
insets
self
.
paddingInsets
=
insets
return
self
return
self
}
}
@discardableResult
func
setIsRTL
(
_
isRTL
:
Bool
)
->
SkeletonMultilineLayerBuilder
{
self
.
isRTL
=
isRTL
return
self
}
func
build
()
->
CALayer
?
{
func
build
()
->
CALayer
?
{
guard
let
type
=
skeletonType
,
guard
let
type
=
skeletonType
,
...
@@ -59,7 +73,11 @@ class SkeletonMultilineLayerBuilder {
...
@@ -59,7 +73,11 @@ class SkeletonMultilineLayerBuilder {
let
layer
=
type
.
layer
let
layer
=
type
.
layer
layer
.
anchorPoint
=
.
zero
layer
.
anchorPoint
=
.
zero
layer
.
name
=
CALayer
.
skeletonSubLayersName
layer
.
name
=
CALayer
.
skeletonSubLayersName
layer
.
updateLayerFrame
(
for
:
index
,
size
:
CGSize
(
width
:
width
,
height
:
height
),
multilineSpacing
:
self
.
multilineSpacing
,
paddingInsets
:
paddingInsets
)
layer
.
updateLayerFrame
(
for
:
index
,
size
:
CGSize
(
width
:
width
,
height
:
height
),
multilineSpacing
:
multilineSpacing
,
paddingInsets
:
paddingInsets
,
isRTL
:
isRTL
)
layer
.
cornerRadius
=
CGFloat
(
radius
)
layer
.
cornerRadius
=
CGFloat
(
radius
)
layer
.
masksToBounds
=
true
layer
.
masksToBounds
=
true
...
...
Pods/SkeletonView/Sources/Collections/CollectionViews/SkeletonCollectionViewProtocols.swift
View file @
b4cfb21c
...
@@ -8,7 +8,6 @@
...
@@ -8,7 +8,6 @@
import
UIKit
import
UIKit
public
protocol
SkeletonCollectionViewDataSource
:
UICollectionViewDataSource
{
public
protocol
SkeletonCollectionViewDataSource
:
UICollectionViewDataSource
{
func
numSections
(
in
collectionSkeletonView
:
UICollectionView
)
->
Int
func
numSections
(
in
collectionSkeletonView
:
UICollectionView
)
->
Int
func
collectionSkeletonView
(
_
skeletonView
:
UICollectionView
,
numberOfItemsInSection
section
:
Int
)
->
Int
func
collectionSkeletonView
(
_
skeletonView
:
UICollectionView
,
numberOfItemsInSection
section
:
Int
)
->
Int
...
@@ -31,4 +30,3 @@ public extension SkeletonCollectionViewDataSource {
...
@@ -31,4 +30,3 @@ public extension SkeletonCollectionViewDataSource {
}
}
public
protocol
SkeletonCollectionViewDelegate
:
UICollectionViewDelegate
{
}
public
protocol
SkeletonCollectionViewDelegate
:
UICollectionViewDelegate
{
}
Pods/SkeletonView/Sources/Collections/CollectionViews/UICollectionView+CollectionSkeleton.swift
View file @
b4cfb21c
...
@@ -11,7 +11,7 @@ import UIKit
...
@@ -11,7 +11,7 @@ import UIKit
extension
UICollectionView
:
CollectionSkeleton
{
extension
UICollectionView
:
CollectionSkeleton
{
var
estimatedNumberOfRows
:
Int
{
var
estimatedNumberOfRows
:
Int
{
guard
let
flowlayout
=
collectionViewLayout
as?
UICollectionViewFlowLayout
else
{
return
0
}
guard
let
flowlayout
=
collectionViewLayout
as?
UICollectionViewFlowLayout
else
{
return
0
}
return
Int
(
ceil
(
frame
.
height
/
flowlayout
.
itemSize
.
height
))
return
Int
(
ceil
(
frame
.
height
/
flowlayout
.
itemSize
.
height
))
}
}
var
skeletonDataSource
:
SkeletonCollectionDataSource
?
{
var
skeletonDataSource
:
SkeletonCollectionDataSource
?
{
...
@@ -70,7 +70,7 @@ public extension UICollectionView {
...
@@ -70,7 +70,7 @@ public extension UICollectionView {
self
.
skeletonDataSource
=
dataSource
self
.
skeletonDataSource
=
dataSource
performBatchUpdates
({
performBatchUpdates
({
self
.
reloadData
()
self
.
reloadData
()
})
{
(
done
)
in
})
{
done
in
completion
(
done
)
completion
(
done
)
}
}
...
...
Pods/SkeletonView/Sources/Collections/SkeletonCollectionDataSource.swift
View file @
b4cfb21c
...
@@ -63,9 +63,8 @@ extension SkeletonCollectionDataSource: UICollectionViewDataSource {
...
@@ -63,9 +63,8 @@ extension SkeletonCollectionDataSource: UICollectionViewDataSource {
func
collectionView
(
_
collectionView
:
UICollectionView
,
func
collectionView
(
_
collectionView
:
UICollectionView
,
viewForSupplementaryElementOfKind
kind
:
String
,
viewForSupplementaryElementOfKind
kind
:
String
,
at
indexPath
:
IndexPath
)
->
UICollectionReusableView
{
at
indexPath
:
IndexPath
)
->
UICollectionReusableView
{
if
let
viewIdentifier
=
originalCollectionViewDataSource
?
.
collectionSkeletonView
(
collectionView
,
supplementaryViewIdentifierOfKind
:
kind
,
at
:
indexPath
)
{
if
let
viewIdentifier
=
originalCollectionViewDataSource
?
.
collectionSkeletonView
(
collectionView
,
supplementaryViewIdentifierOfKind
:
kind
,
at
:
indexPath
)
{
let
view
=
collectionView
.
dequeueReusableSupplementaryView
(
ofKind
:
kind
,
withReuseIdentifier
:
viewIdentifier
,
for
:
indexPath
)
let
view
=
collectionView
.
dequeueReusableSupplementaryView
(
ofKind
:
kind
,
withReuseIdentifier
:
viewIdentifier
,
for
:
indexPath
)
skeletonViewIfContainerSkeletonIsActive
(
container
:
collectionView
,
view
:
view
)
skeletonViewIfContainerSkeletonIsActive
(
container
:
collectionView
,
view
:
view
)
return
view
return
view
}
}
...
...
Pods/SkeletonView/Sources/Collections/SkeletonCollectionDelegate.swift
View file @
b4cfb21c
...
@@ -23,7 +23,6 @@ extension SkeletonCollectionDelegate: UITableViewDelegate {
...
@@ -23,7 +23,6 @@ extension SkeletonCollectionDelegate: UITableViewDelegate {
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
UIView
?
{
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
UIView
?
{
if
let
viewIdentifier
=
originalTableViewDelegate
?
.
collectionSkeletonView
(
tableView
,
identifierForHeaderInSection
:
section
),
if
let
viewIdentifier
=
originalTableViewDelegate
?
.
collectionSkeletonView
(
tableView
,
identifierForHeaderInSection
:
section
),
let
header
=
tableView
.
dequeueReusableHeaderFooterView
(
withIdentifier
:
viewIdentifier
)
{
let
header
=
tableView
.
dequeueReusableHeaderFooterView
(
withIdentifier
:
viewIdentifier
)
{
skeletonViewIfContainerSkeletonIsActive
(
container
:
tableView
,
view
:
header
)
skeletonViewIfContainerSkeletonIsActive
(
container
:
tableView
,
view
:
header
)
return
header
return
header
}
}
...
@@ -34,7 +33,6 @@ extension SkeletonCollectionDelegate: UITableViewDelegate {
...
@@ -34,7 +33,6 @@ extension SkeletonCollectionDelegate: UITableViewDelegate {
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
UIView
?
{
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
UIView
?
{
if
let
viewIdentifier
=
originalTableViewDelegate
?
.
collectionSkeletonView
(
tableView
,
identifierForFooterInSection
:
section
),
if
let
viewIdentifier
=
originalTableViewDelegate
?
.
collectionSkeletonView
(
tableView
,
identifierForFooterInSection
:
section
),
let
footer
=
tableView
.
dequeueReusableHeaderFooterView
(
withIdentifier
:
viewIdentifier
)
{
let
footer
=
tableView
.
dequeueReusableHeaderFooterView
(
withIdentifier
:
viewIdentifier
)
{
skeletonViewIfContainerSkeletonIsActive
(
container
:
tableView
,
view
:
footer
)
skeletonViewIfContainerSkeletonIsActive
(
container
:
tableView
,
view
:
footer
)
return
footer
return
footer
}
}
...
...
Pods/SkeletonView/Sources/Collections/TableViews/UITableView+CollectionSkeleton.swift
View file @
b4cfb21c
...
@@ -12,7 +12,7 @@ public typealias ReusableHeaderFooterIdentifier = String
...
@@ -12,7 +12,7 @@ public typealias ReusableHeaderFooterIdentifier = String
extension
UITableView
:
CollectionSkeleton
{
extension
UITableView
:
CollectionSkeleton
{
var
estimatedNumberOfRows
:
Int
{
var
estimatedNumberOfRows
:
Int
{
return
Int
(
ceil
(
frame
.
height
/
rowHeight
))
return
Int
(
ceil
(
frame
.
height
/
rowHeight
))
}
}
var
skeletonDataSource
:
SkeletonCollectionDataSource
?
{
var
skeletonDataSource
:
SkeletonCollectionDataSource
?
{
...
@@ -43,8 +43,7 @@ extension UITableView: CollectionSkeleton {
...
@@ -43,8 +43,7 @@ extension UITableView: CollectionSkeleton {
self
.
skeletonDataSource
=
dataSource
self
.
skeletonDataSource
=
dataSource
if
let
originalDelegate
=
self
.
delegate
as?
SkeletonTableViewDelegate
,
if
let
originalDelegate
=
self
.
delegate
as?
SkeletonTableViewDelegate
,
!
(
originalDelegate
is
SkeletonCollectionDelegate
)
!
(
originalDelegate
is
SkeletonCollectionDelegate
)
{
{
let
delegate
=
SkeletonCollectionDelegate
(
tableViewDelegate
:
originalDelegate
)
let
delegate
=
SkeletonCollectionDelegate
(
tableViewDelegate
:
originalDelegate
)
self
.
skeletonDelegate
=
delegate
self
.
skeletonDelegate
=
delegate
}
}
...
...
Pods/SkeletonView/Sources/Debug/SkeletonDebug.swift
View file @
b4cfb21c
// Copyright © 2018 SkeletonView. All rights reserved.
// Copyright © 2018 SkeletonView. All rights reserved.
import
Foundation
import
Foundation
...
@@ -10,6 +9,7 @@ enum SkeletonEnvironmentKey: String {
...
@@ -10,6 +9,7 @@ enum SkeletonEnvironmentKey: String {
extension
Dictionary
{
extension
Dictionary
{
subscript
(
_
key
:
SkeletonEnvironmentKey
)
->
Value
?
{
subscript
(
_
key
:
SkeletonEnvironmentKey
)
->
Value
?
{
// swiftlint:disable:next force_cast
return
self
[
key
.
rawValue
as!
Key
]
return
self
[
key
.
rawValue
as!
Key
]
}
}
}
}
...
@@ -19,7 +19,7 @@ func printSkeletonHierarchy(in view: UIView) {
...
@@ -19,7 +19,7 @@ func printSkeletonHierarchy(in view: UIView) {
}
}
func
skeletonLog
(
_
message
:
String
)
{
func
skeletonLog
(
_
message
:
String
)
{
if
let
_
=
ProcessInfo
.
processInfo
.
environment
[
.
debugMode
]
{
if
ProcessInfo
.
processInfo
.
environment
[
.
debugMode
]
!=
nil
{
print
(
message
)
print
(
message
)
}
}
}
}
...
@@ -28,7 +28,7 @@ extension UIView {
...
@@ -28,7 +28,7 @@ extension UIView {
public
var
skeletonDescription
:
String
{
public
var
skeletonDescription
:
String
{
var
description
=
"<
\(
type
(
of
:
self
)
)
:
\(
Unmanaged
.
passUnretained
(
self
)
.
toOpaque
()
)
"
var
description
=
"<
\(
type
(
of
:
self
)
)
:
\(
Unmanaged
.
passUnretained
(
self
)
.
toOpaque
()
)
"
let
subSkeletons
=
subviewsSkeletonables
let
subSkeletons
=
subviewsSkeletonables
if
subSkeletons
.
count
!=
0
{
if
!
subSkeletons
.
isEmpty
{
description
+=
" | (
\(
subSkeletons
.
count
)
) subSkeletons"
description
+=
" | (
\(
subSkeletons
.
count
)
) subSkeletons"
}
}
if
isSkeletonable
{
if
isSkeletonable
{
...
...
Pods/SkeletonView/Sources/Extensions/CALayer+Extensions.swift
View file @
b4cfb21c
...
@@ -30,15 +30,23 @@ extension CAGradientLayer {
...
@@ -30,15 +30,23 @@ extension CAGradientLayer {
struct
SkeletonMultilinesLayerConfig
{
struct
SkeletonMultilinesLayerConfig
{
var
lines
:
Int
var
lines
:
Int
var
lineHeight
:
CGFloat
?
=
nil
var
lineHeight
:
CGFloat
var
type
:
SkeletonType
var
type
:
SkeletonType
var
lastLineFillPercent
:
Int
var
lastLineFillPercent
:
Int
var
multilineCornerRadius
:
Int
var
multilineCornerRadius
:
Int
var
multilineSpacing
:
CGFloat
var
multilineSpacing
:
CGFloat
var
paddingInsets
:
UIEdgeInsets
var
paddingInsets
:
UIEdgeInsets
var
isRTL
:
Bool
/// Returns padding insets taking into account if the RTL is activated
var
calculatedPaddingInsets
:
UIEdgeInsets
{
UIEdgeInsets
(
top
:
paddingInsets
.
top
,
left
:
isRTL
?
paddingInsets
.
right
:
paddingInsets
.
left
,
bottom
:
paddingInsets
.
bottom
,
right
:
isRTL
?
paddingInsets
.
left
:
paddingInsets
.
right
)
}
}
}
// MARK: Skeleton sublayers
// MARK: Skeleton sublayers
extension
CALayer
{
extension
CALayer
{
static
let
skeletonSubLayersName
=
"SkeletonSubLayersName"
static
let
skeletonSubLayersName
=
"SkeletonSubLayersName"
...
@@ -48,9 +56,10 @@ extension CALayer {
...
@@ -48,9 +56,10 @@ extension CALayer {
}
}
func
addMultilinesLayers
(
for
config
:
SkeletonMultilinesLayerConfig
)
{
func
addMultilinesLayers
(
for
config
:
SkeletonMultilinesLayerConfig
)
{
let
numberOfSublayers
=
config
.
lines
==
1
?
1
:
calculateNumLines
(
for
:
config
)
let
numberOfSublayers
=
config
.
lines
>
0
?
config
.
lines
:
calculateNumLines
(
for
:
config
)
var
height
=
config
.
lineHeight
??
SkeletonAppearance
.
default
.
multilineHeight
var
height
=
config
.
lineHeight
if
numberOfSublayers
==
1
{
if
numberOfSublayers
==
1
&&
SkeletonAppearance
.
default
.
renderSingleLineAsView
{
height
=
bounds
.
height
height
=
bounds
.
height
}
}
...
@@ -60,6 +69,7 @@ extension CALayer {
...
@@ -60,6 +69,7 @@ extension CALayer {
.
setMultilineSpacing
(
config
.
multilineSpacing
)
.
setMultilineSpacing
(
config
.
multilineSpacing
)
.
setPadding
(
config
.
paddingInsets
)
.
setPadding
(
config
.
paddingInsets
)
.
setHeight
(
height
)
.
setHeight
(
height
)
.
setIsRTL
(
config
.
isRTL
)
(
0
..<
numberOfSublayers
)
.
forEach
{
index
in
(
0
..<
numberOfSublayers
)
.
forEach
{
index
in
let
width
=
calculatedWidthForLine
(
at
:
index
,
totalLines
:
numberOfSublayers
,
lastLineFillPercent
:
config
.
lastLineFillPercent
,
paddingInsets
:
config
.
paddingInsets
)
let
width
=
calculatedWidthForLine
(
at
:
index
,
totalLines
:
numberOfSublayers
,
lastLineFillPercent
:
config
.
lastLineFillPercent
,
paddingInsets
:
config
.
paddingInsets
)
...
@@ -76,16 +86,21 @@ extension CALayer {
...
@@ -76,16 +86,21 @@ extension CALayer {
let
currentSkeletonSublayers
=
skeletonSublayers
let
currentSkeletonSublayers
=
skeletonSublayers
let
numberOfSublayers
=
currentSkeletonSublayers
.
count
let
numberOfSublayers
=
currentSkeletonSublayers
.
count
let
lastLineFillPercent
=
config
.
lastLineFillPercent
let
lastLineFillPercent
=
config
.
lastLineFillPercent
let
paddingInsets
=
config
.
p
addingInsets
let
paddingInsets
=
config
.
calculatedP
addingInsets
let
multilineSpacing
=
config
.
multilineSpacing
let
multilineSpacing
=
config
.
multilineSpacing
var
height
=
config
.
lineHeight
??
SkeletonAppearance
.
default
.
multilineHeight
var
height
=
config
.
lineHeight
if
numberOfSublayers
==
1
{
if
numberOfSublayers
==
1
&&
SkeletonAppearance
.
default
.
renderSingleLineAsView
{
height
=
bounds
.
height
height
=
bounds
.
height
}
}
for
(
index
,
layer
)
in
currentSkeletonSublayers
.
enumerated
()
{
for
(
index
,
layer
)
in
currentSkeletonSublayers
.
enumerated
()
{
let
width
=
calculatedWidthForLine
(
at
:
index
,
totalLines
:
numberOfSublayers
,
lastLineFillPercent
:
lastLineFillPercent
,
paddingInsets
:
paddingInsets
)
let
width
=
calculatedWidthForLine
(
at
:
index
,
totalLines
:
numberOfSublayers
,
lastLineFillPercent
:
lastLineFillPercent
,
paddingInsets
:
paddingInsets
)
layer
.
updateLayerFrame
(
for
:
index
,
size
:
CGSize
(
width
:
width
,
height
:
height
),
multilineSpacing
:
multilineSpacing
,
paddingInsets
:
paddingInsets
)
layer
.
updateLayerFrame
(
for
:
index
,
size
:
CGSize
(
width
:
width
,
height
:
height
),
multilineSpacing
:
multilineSpacing
,
paddingInsets
:
paddingInsets
,
isRTL
:
config
.
isRTL
)
}
}
}
}
...
@@ -97,16 +112,38 @@ extension CALayer {
...
@@ -97,16 +112,38 @@ extension CALayer {
return
width
return
width
}
}
func
updateLayerFrame
(
for
index
:
Int
,
size
:
CGSize
,
multilineSpacing
:
CGFloat
,
paddingInsets
:
UIEdgeInsets
)
{
func
updateLayerFrame
(
for
index
:
Int
,
size
:
CGSize
,
multilineSpacing
:
CGFloat
,
paddingInsets
:
UIEdgeInsets
,
isRTL
:
Bool
)
{
let
spaceRequiredForEachLine
=
SkeletonAppearance
.
default
.
multilineHeight
+
multilineSpacing
let
spaceRequiredForEachLine
=
size
.
height
+
multilineSpacing
frame
=
CGRect
(
x
:
paddingInsets
.
left
,
y
:
CGFloat
(
index
)
*
spaceRequiredForEachLine
+
paddingInsets
.
top
,
width
:
size
.
width
,
height
:
size
.
height
)
let
newFrame
=
CGRect
(
x
:
paddingInsets
.
left
,
y
:
CGFloat
(
index
)
*
spaceRequiredForEachLine
+
paddingInsets
.
top
,
width
:
size
.
width
,
height
:
size
.
height
)
frame
=
flipRectForRTLIfNeeded
(
newFrame
,
isRTL
:
isRTL
)
}
}
private
func
calculateNumLines
(
for
config
:
SkeletonMultilinesLayerConfig
)
->
Int
{
private
func
calculateNumLines
(
for
config
:
SkeletonMultilinesLayerConfig
)
->
Int
{
let
requiredSpaceForEachLine
=
(
config
.
lineHeight
??
SkeletonAppearance
.
default
.
multilineHeight
)
+
config
.
multilineSpacing
let
definedNumberOfLines
=
config
.
lines
var
numberOfSublayers
=
Int
(
round
(
CGFloat
(
bounds
.
height
-
config
.
paddingInsets
.
top
-
config
.
paddingInsets
.
bottom
)
/
CGFloat
(
requiredSpaceForEachLine
)))
let
requiredSpaceForEachLine
=
config
.
lineHeight
+
config
.
multilineSpacing
if
config
.
lines
!=
0
,
config
.
lines
<=
numberOfSublayers
{
numberOfSublayers
=
config
.
lines
}
let
calculatedNumberOfLines
=
Int
(
round
(
CGFloat
(
bounds
.
height
-
config
.
paddingInsets
.
top
-
config
.
paddingInsets
.
bottom
)
/
CGFloat
(
requiredSpaceForEachLine
)))
return
numberOfSublayers
guard
calculatedNumberOfLines
>
0
else
{
return
1
}
if
definedNumberOfLines
>
0
,
definedNumberOfLines
<=
calculatedNumberOfLines
{
return
definedNumberOfLines
}
return
calculatedNumberOfLines
}
private
func
flipRectForRTLIfNeeded
(
_
rect
:
CGRect
,
isRTL
:
Bool
)
->
CGRect
{
var
newRect
=
rect
if
isRTL
{
newRect
.
origin
.
x
=
(
superlayer
?
.
bounds
.
width
??
0
)
-
rect
.
origin
.
x
-
rect
.
width
}
return
newRect
}
}
}
}
...
@@ -115,6 +152,7 @@ public extension CALayer {
...
@@ -115,6 +152,7 @@ public extension CALayer {
var
pulse
:
CAAnimation
{
var
pulse
:
CAAnimation
{
let
pulseAnimation
=
CABasicAnimation
(
keyPath
:
#keyPath(
CALayer.backgroundColor
)
)
let
pulseAnimation
=
CABasicAnimation
(
keyPath
:
#keyPath(
CALayer.backgroundColor
)
)
pulseAnimation
.
fromValue
=
backgroundColor
pulseAnimation
.
fromValue
=
backgroundColor
//swiftlint:disable:next force_unwrapping
pulseAnimation
.
toValue
=
UIColor
(
cgColor
:
backgroundColor
!
)
.
complementaryColor
.
cgColor
pulseAnimation
.
toValue
=
UIColor
(
cgColor
:
backgroundColor
!
)
.
complementaryColor
.
cgColor
pulseAnimation
.
duration
=
1
pulseAnimation
.
duration
=
1
pulseAnimation
.
timingFunction
=
CAMediaTimingFunction
(
name
:
CAMediaTimingFunctionName
.
easeInEaseOut
)
pulseAnimation
.
timingFunction
=
CAMediaTimingFunction
(
name
:
CAMediaTimingFunctionName
.
easeInEaseOut
)
...
@@ -124,25 +162,6 @@ public extension CALayer {
...
@@ -124,25 +162,6 @@ public extension CALayer {
return
pulseAnimation
return
pulseAnimation
}
}
var
sliding
:
CAAnimation
{
let
startPointAnim
=
CABasicAnimation
(
keyPath
:
#keyPath(
CAGradientLayer.startPoint
)
)
startPointAnim
.
fromValue
=
CGPoint
(
x
:
-
1
,
y
:
0.5
)
startPointAnim
.
toValue
=
CGPoint
(
x
:
1
,
y
:
0.5
)
let
endPointAnim
=
CABasicAnimation
(
keyPath
:
#keyPath(
CAGradientLayer.endPoint
)
)
endPointAnim
.
fromValue
=
CGPoint
(
x
:
0
,
y
:
0.5
)
endPointAnim
.
toValue
=
CGPoint
(
x
:
2
,
y
:
0.5
)
let
animGroup
=
CAAnimationGroup
()
animGroup
.
animations
=
[
startPointAnim
,
endPointAnim
]
animGroup
.
duration
=
1.5
animGroup
.
timingFunction
=
CAMediaTimingFunction
(
name
:
CAMediaTimingFunctionName
.
easeIn
)
animGroup
.
repeatCount
=
.
infinity
animGroup
.
isRemovedOnCompletion
=
false
return
animGroup
}
func
playAnimation
(
_
anim
:
SkeletonLayerAnimation
,
key
:
String
,
completion
:
(()
->
Void
)?
=
nil
)
{
func
playAnimation
(
_
anim
:
SkeletonLayerAnimation
,
key
:
String
,
completion
:
(()
->
Void
)?
=
nil
)
{
skeletonSublayers
.
recursiveSearch
(
leafBlock
:
{
skeletonSublayers
.
recursiveSearch
(
leafBlock
:
{
DispatchQueue
.
main
.
async
{
CATransaction
.
begin
()
}
DispatchQueue
.
main
.
async
{
CATransaction
.
begin
()
}
...
...
Pods/SkeletonView/Sources/Extensions/UIColor+Skeleton.swift
View file @
b4cfb21c
...
@@ -22,7 +22,7 @@ extension UIColor {
...
@@ -22,7 +22,7 @@ extension UIColor {
public
var
complementaryColor
:
UIColor
{
public
var
complementaryColor
:
UIColor
{
if
#available(iOS 13, tvOS 13, *)
{
if
#available(iOS 13, tvOS 13, *)
{
return
UIColor
{
traitCollection
in
return
UIColor
{
_
in
return
self
.
isLight
()
?
self
.
darker
:
self
.
lighter
return
self
.
isLight
()
?
self
.
darker
:
self
.
lighter
}
}
}
else
{
}
else
{
...
@@ -50,6 +50,7 @@ extension UIColor {
...
@@ -50,6 +50,7 @@ extension UIColor {
}
}
public
extension
UIColor
{
public
extension
UIColor
{
// swiftlint:disable operator_usage_whitespace
static
var
greenSea
=
UIColor
(
0x16a085
)
static
var
greenSea
=
UIColor
(
0x16a085
)
static
var
turquoise
=
UIColor
(
0x1abc9c
)
static
var
turquoise
=
UIColor
(
0x1abc9c
)
static
var
emerald
=
UIColor
(
0x2ecc71
)
static
var
emerald
=
UIColor
(
0x2ecc71
)
...
@@ -71,13 +72,16 @@ public extension UIColor {
...
@@ -71,13 +72,16 @@ public extension UIColor {
static
var
pomegranate
=
UIColor
(
0xc0392b
)
static
var
pomegranate
=
UIColor
(
0xc0392b
)
static
var
silver
=
UIColor
(
0xbdc3c7
)
static
var
silver
=
UIColor
(
0xbdc3c7
)
static
var
asbestos
=
UIColor
(
0x7f8c8d
)
static
var
asbestos
=
UIColor
(
0x7f8c8d
)
// swiftlint:enable operator_usage_whitespace
static
var
skeletonDefault
:
UIColor
{
static
var
skeletonDefault
:
UIColor
{
if
#available(iOS 13, tvOS 13, *)
{
if
#available(iOS 13, tvOS 13, *)
{
return
UIColor
{
traitCollection
in
return
UIColor
{
traitCollection
in
switch
traitCollection
.
userInterfaceStyle
{
switch
traitCollection
.
userInterfaceStyle
{
case
.
dark
:
return
.
darkClouds
case
.
dark
:
default
:
return
.
clouds
return
.
darkClouds
default
:
return
.
clouds
}
}
}
}
}
else
{
}
else
{
...
...
Pods/SkeletonView/Sources/Extensions/UITableView+VisibleSections.swift
View file @
b4cfb21c
...
@@ -13,15 +13,13 @@ extension UITableView {
...
@@ -13,15 +13,13 @@ extension UITableView {
headerRect
=
rectForHeader
(
inSection
:
$1
)
headerRect
=
rectForHeader
(
inSection
:
$1
)
}
}
if
headerRect
!=
nil
{
if
let
headerRect
=
headerRect
{
let
visiblePartOfTableView
:
CGRect
=
CGRect
(
let
visiblePartOfTableView
=
CGRect
(
x
:
contentOffset
.
x
,
x
:
contentOffset
.
x
,
y
:
contentOffset
.
y
,
y
:
contentOffset
.
y
,
width
:
bounds
.
size
.
width
,
width
:
bounds
.
size
.
width
,
height
:
bounds
.
size
.
height
)
height
:
bounds
.
size
.
height
)
if
(
visiblePartOfTableView
.
intersects
(
headerRect
!
)
)
{
if
visiblePartOfTableView
.
intersects
(
headerRect
)
{
return
$0
+
[
$1
]
return
$0
+
[
$1
]
}
}
}
}
...
...
Pods/SkeletonView/Sources/Extensions/UIView+Autolayout.swift
0 → 100644
View file @
b4cfb21c
// Copyright © 2020 SkeletonView. All rights reserved.
import
UIKit
// MARK: Frame
extension
UIView
{
var
widthConstraints
:
[
NSLayoutConstraint
]
{
nonContentSizeLayoutConstraints
.
filter
{
$0
.
firstAttribute
==
NSLayoutConstraint
.
Attribute
.
width
}
}
var
heightConstraints
:
[
NSLayoutConstraint
]
{
nonContentSizeLayoutConstraints
.
filter
{
$0
.
firstAttribute
==
NSLayoutConstraint
.
Attribute
.
height
}
}
@discardableResult
func
setHeight
(
equalToConstant
constant
:
CGFloat
)
->
NSLayoutConstraint
{
let
heightConstraint
=
heightAnchor
.
constraint
(
equalToConstant
:
constant
)
NSLayoutConstraint
.
activate
([
heightConstraint
])
return
heightConstraint
}
var
nonContentSizeLayoutConstraints
:
[
NSLayoutConstraint
]
{
constraints
.
filter
({
"
\(
type
(
of
:
$0
)
)
"
!=
"NSContentSizeLayoutConstraint"
})
}
}
Pods/SkeletonView/Sources/Extensions/UIView+Extension.swift
View file @
b4cfb21c
...
@@ -5,6 +5,7 @@ import UIKit
...
@@ -5,6 +5,7 @@ import UIKit
// codebeat:disable[TOO_MANY_IVARS]
// codebeat:disable[TOO_MANY_IVARS]
enum
ViewAssociatedKeys
{
enum
ViewAssociatedKeys
{
static
var
skeletonable
=
"skeletonable"
static
var
skeletonable
=
"skeletonable"
static
var
hiddenWhenSkeletonIsActive
=
"hiddenWhenSkeletonIsActive"
static
var
status
=
"status"
static
var
status
=
"status"
static
var
skeletonLayer
=
"layer"
static
var
skeletonLayer
=
"layer"
static
var
flowDelegate
=
"flowDelegate"
static
var
flowDelegate
=
"flowDelegate"
...
@@ -12,6 +13,7 @@ enum ViewAssociatedKeys {
...
@@ -12,6 +13,7 @@ enum ViewAssociatedKeys {
static
var
viewState
=
"viewState"
static
var
viewState
=
"viewState"
static
var
labelViewState
=
"labelViewState"
static
var
labelViewState
=
"labelViewState"
static
var
imageViewState
=
"imageViewState"
static
var
imageViewState
=
"imageViewState"
static
var
buttonViewState
=
"buttonViewState"
static
var
currentSkeletonConfig
=
"currentSkeletonConfig"
static
var
currentSkeletonConfig
=
"currentSkeletonConfig"
static
var
skeletonCornerRadius
=
"skeletonCornerRadius"
static
var
skeletonCornerRadius
=
"skeletonCornerRadius"
}
}
...
@@ -38,13 +40,13 @@ extension UIView {
...
@@ -38,13 +40,13 @@ extension UIView {
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
currentSkeletonConfig
)
}
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
currentSkeletonConfig
)
}
}
}
var
status
:
Status
!
{
var
status
:
Status
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
status
)
as?
Status
??
.
off
}
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
status
)
as?
Status
??
.
off
}
set
{
ao_set
(
newValue
??
.
off
,
pkey
:
&
ViewAssociatedKeys
.
status
)
}
set
{
ao_set
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
status
)
}
}
}
var
isSkeletonAnimated
:
Bool
!
{
var
isSkeletonAnimated
:
Bool
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
isSkeletonAnimated
)
as?
Bool
??
false
}
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
isSkeletonAnimated
)
as?
Bool
??
false
}
set
{
ao_set
(
newValue
??
false
,
pkey
:
&
ViewAssociatedKeys
.
isSkeletonAnimated
)
}
set
{
ao_set
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
isSkeletonAnimated
)
}
}
}
}
}
Pods/SkeletonView/Sources/Extensions/UIView+Frame.swift
View file @
b4cfb21c
...
@@ -10,32 +10,38 @@ import UIKit
...
@@ -10,32 +10,38 @@ import UIKit
// MARK: Frame
// MARK: Frame
extension
UIView
{
extension
UIView
{
var
maxBoundsEstimated
:
CGRect
{
var
definedMaxBounds
:
CGRect
{
if
let
parentStackView
=
(
superview
as?
UIStackView
)
{
if
let
parentStackView
=
(
superview
as?
UIStackView
)
{
var
origin
:
CGPoint
=
.
zero
var
origin
:
CGPoint
=
.
zero
switch
parentStackView
.
alignment
{
switch
parentStackView
.
alignment
{
case
.
trailing
:
case
.
trailing
:
origin
.
x
=
maxWidthEstimated
origin
.
x
=
definedMaxWidth
default
:
default
:
break
break
}
}
return
CGRect
(
origin
:
origin
,
size
:
maxSizeEstimated
)
return
CGRect
(
origin
:
origin
,
size
:
definedMaxSize
)
}
}
return
CGRect
(
origin
:
.
zero
,
size
:
maxSizeEstimated
)
return
CGRect
(
origin
:
.
zero
,
size
:
definedMaxSize
)
}
}
var
maxSizeEstimated
:
CGSize
{
var
definedMaxSize
:
CGSize
{
return
CGSize
(
width
:
maxWidthEstimated
,
height
:
maxHeightEstimated
)
CGSize
(
width
:
definedMaxWidth
,
height
:
definedMaxHeight
)
}
}
var
maxWidthEstimated
:
CGFloat
{
var
definedMaxWidth
:
CGFloat
{
let
constraintsWidth
=
nonContentSizeLayoutConstraints
.
filter
({
$0
.
firstAttribute
==
NSLayoutConstraint
.
Attribute
.
width
})
max
(
between
:
frame
.
size
.
width
,
andContantsOf
:
widthConstraints
)
return
max
(
between
:
frame
.
size
.
width
,
andContantsOf
:
constraintsWidth
)
}
}
var
maxHeightEstimated
:
CGFloat
{
var
definedMaxHeight
:
CGFloat
{
let
constraintsHeight
=
nonContentSizeLayoutConstraints
.
filter
({
$0
.
firstAttribute
==
NSLayoutConstraint
.
Attribute
.
height
})
max
(
between
:
frame
.
size
.
height
,
andContantsOf
:
heightConstraints
)
return
max
(
between
:
frame
.
size
.
height
,
andContantsOf
:
constraintsHeight
)
}
var
isRTL
:
Bool
{
if
#available(iOS 10.0, *)
,
#available(tvOS 10.0, *)
{
return
effectiveUserInterfaceLayoutDirection
==
.
rightToLeft
}
else
{
return
false
}
}
}
private
func
max
(
between
value
:
CGFloat
,
andContantsOf
constraints
:
[
NSLayoutConstraint
])
->
CGFloat
{
private
func
max
(
between
value
:
CGFloat
,
andContantsOf
constraints
:
[
NSLayoutConstraint
])
->
CGFloat
{
...
@@ -46,8 +52,4 @@ extension UIView {
...
@@ -46,8 +52,4 @@ extension UIView {
})
})
return
max
return
max
}
}
var
nonContentSizeLayoutConstraints
:
[
NSLayoutConstraint
]
{
return
constraints
.
filter
({
"
\(
type
(
of
:
$0
)
)
"
!=
"NSContentSizeLayoutConstraint"
})
}
}
}
Pods/SkeletonView/Sources/Extensions/UIView+IBInspectable.swift
View file @
b4cfb21c
...
@@ -8,6 +8,12 @@ public extension UIView {
...
@@ -8,6 +8,12 @@ public extension UIView {
get
{
return
skeletonable
}
get
{
return
skeletonable
}
set
{
skeletonable
=
newValue
}
set
{
skeletonable
=
newValue
}
}
}
@IBInspectable
var
isHiddenWhenSkeletonIsActive
:
Bool
{
get
{
return
hiddenWhenSkeletonIsActive
}
set
{
hiddenWhenSkeletonIsActive
=
newValue
}
}
@IBInspectable
@IBInspectable
var
skeletonCornerRadius
:
Float
{
var
skeletonCornerRadius
:
Float
{
...
@@ -16,17 +22,21 @@ public extension UIView {
...
@@ -16,17 +22,21 @@ public extension UIView {
}
}
var
isSkeletonActive
:
Bool
{
var
isSkeletonActive
:
Bool
{
return
status
==
.
on
||
(
subviewsSkeletonables
.
first
(
where
:
{
$0
.
isSkeletonActive
})
!=
nil
)
return
status
==
.
on
||
subviewsSkeletonables
.
contains
(
where
:
{
$0
.
isSkeletonActive
}
)
}
}
private
var
skeletonable
:
Bool
!
{
private
var
skeletonable
:
Bool
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
skeletonable
)
as?
Bool
??
false
}
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
skeletonable
)
as?
Bool
??
false
}
set
{
ao_set
(
newValue
??
false
,
pkey
:
&
ViewAssociatedKeys
.
skeletonable
)
}
set
{
ao_set
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
skeletonable
)
}
}
private
var
hiddenWhenSkeletonIsActive
:
Bool
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
hiddenWhenSkeletonIsActive
)
as?
Bool
??
false
}
set
{
ao_set
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
hiddenWhenSkeletonIsActive
)
}
}
}
private
var
skeletonableCornerRadius
:
Float
!
{
private
var
skeletonableCornerRadius
:
Float
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
skeletonCornerRadius
)
as?
Float
??
0.0
}
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
skeletonCornerRadius
)
as?
Float
??
0.0
}
set
{
ao_set
(
newValue
??
0.0
,
pkey
:
&
ViewAssociatedKeys
.
skeletonCornerRadius
)
}
set
{
ao_set
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
skeletonCornerRadius
)
}
}
}
}
}
Pods/SkeletonView/Sources/Helpers/AssociationPolicy.swift
View file @
b4cfb21c
...
@@ -12,6 +12,7 @@ enum AssociationPolicy: UInt {
...
@@ -12,6 +12,7 @@ enum AssociationPolicy: UInt {
case
retainNonatomic
=
1
case
retainNonatomic
=
1
var
objc
:
objc_AssociationPolicy
{
var
objc
:
objc_AssociationPolicy
{
// swiftlint:disable:next force_unwrapping
return
objc_AssociationPolicy
(
rawValue
:
rawValue
)
!
return
objc_AssociationPolicy
(
rawValue
:
rawValue
)
!
}
}
}
}
...
...
Pods/SkeletonView/Sources/Helpers/PrepareForSkeletonProtocol.swift
View file @
b4cfb21c
...
@@ -12,15 +12,44 @@ extension UIView {
...
@@ -12,15 +12,44 @@ extension UIView {
@objc
func
prepareViewForSkeleton
()
{
@objc
func
prepareViewForSkeleton
()
{
startTransition
{
[
weak
self
]
in
startTransition
{
[
weak
self
]
in
self
?
.
backgroundColor
=
.
clear
self
?
.
backgroundColor
=
.
clear
self
?
.
isUserInteractionEnabled
=
false
}
}
}
}
}
}
extension
UILabel
{
extension
UILabel
{
var
desiredHeightBasedOnNumberOfLines
:
CGFloat
{
let
lineHeight
=
multilineTextFont
?
.
lineHeight
??
SkeletonAppearance
.
default
.
multilineHeight
let
spaceNeededForEachLine
=
lineHeight
*
CGFloat
(
numberOfLines
)
let
spaceNeededForSpaces
=
skeletonLineSpacing
*
CGFloat
(
numberOfLines
-
1
)
let
padding
=
paddingInsets
.
top
+
paddingInsets
.
bottom
return
spaceNeededForEachLine
+
spaceNeededForSpaces
+
padding
}
func
updateHeightConstraintsIfNeeded
()
{
guard
numberOfLines
>
1
else
{
return
}
let
desiredHeight
=
desiredHeightBasedOnNumberOfLines
if
desiredHeight
>
definedMaxHeight
{
backupHeightConstraints
=
heightConstraints
NSLayoutConstraint
.
deactivate
(
heightConstraints
)
setHeight
(
equalToConstant
:
desiredHeight
)
}
}
func
restoreBackupHeightConstraints
()
{
guard
!
backupHeightConstraints
.
isEmpty
else
{
return
}
NSLayoutConstraint
.
deactivate
(
heightConstraints
)
NSLayoutConstraint
.
activate
(
backupHeightConstraints
)
backupHeightConstraints
.
removeAll
()
}
override
func
prepareViewForSkeleton
()
{
override
func
prepareViewForSkeleton
()
{
backgroundColor
=
.
clear
backgroundColor
=
.
clear
resignFirstResponder
()
resignFirstResponder
()
startTransition
{
[
weak
self
]
in
startTransition
{
[
weak
self
]
in
self
?
.
updateHeightConstraintsIfNeeded
()
self
?
.
textColor
=
.
clear
self
?
.
textColor
=
.
clear
}
}
}
}
...
@@ -44,3 +73,12 @@ extension UIImageView {
...
@@ -44,3 +73,12 @@ extension UIImageView {
}
}
}
}
}
}
extension
UIButton
{
override
func
prepareViewForSkeleton
()
{
backgroundColor
=
.
clear
startTransition
{
[
weak
self
]
in
self
?
.
setTitle
(
nil
,
for
:
.
normal
)
}
}
}
Pods/SkeletonView/Sources/Helpers/RecursiveProtocol.swift
View file @
b4cfb21c
...
@@ -9,7 +9,7 @@ protocol IterableElement {}
...
@@ -9,7 +9,7 @@ protocol IterableElement {}
extension
UIView
:
IterableElement
{}
extension
UIView
:
IterableElement
{}
extension
CALayer
:
IterableElement
{}
extension
CALayer
:
IterableElement
{}
//MARK: Recursive
//
MARK: Recursive
protocol
Recursive
{
protocol
Recursive
{
associatedtype
Element
:
IterableElement
associatedtype
Element
:
IterableElement
func
recursiveSearch
(
leafBlock
:
VoidBlock
,
recursiveBlock
:
RecursiveBlock
<
Element
>
)
func
recursiveSearch
(
leafBlock
:
VoidBlock
,
recursiveBlock
:
RecursiveBlock
<
Element
>
)
...
@@ -17,12 +17,10 @@ protocol Recursive {
...
@@ -17,12 +17,10 @@ protocol Recursive {
extension
Array
:
Recursive
where
Element
:
IterableElement
{
extension
Array
:
Recursive
where
Element
:
IterableElement
{
func
recursiveSearch
(
leafBlock
:
VoidBlock
,
recursiveBlock
:
RecursiveBlock
<
Element
>
)
{
func
recursiveSearch
(
leafBlock
:
VoidBlock
,
recursiveBlock
:
RecursiveBlock
<
Element
>
)
{
guard
count
>
0
else
{
guard
!
isEmpty
else
{
leafBlock
()
leafBlock
()
return
return
}
}
forEach
{
recursiveBlock
(
$0
)
}
forEach
{
recursiveBlock
(
$0
)
}
}
}
}
}
Pods/SkeletonView/Sources/Helpers/Swizzling.swift
View file @
b4cfb21c
...
@@ -5,7 +5,7 @@ import Foundation
...
@@ -5,7 +5,7 @@ import Foundation
extension
DispatchQueue
{
extension
DispatchQueue
{
private
static
var
_onceTracker
=
[
String
]()
private
static
var
_onceTracker
=
[
String
]()
class
func
once
(
token
:
String
,
block
:
()
->
Void
)
{
class
func
once
(
token
:
String
,
block
:
()
->
Void
)
{
objc_sync_enter
(
self
);
defer
{
objc_sync_exit
(
self
)
}
objc_sync_enter
(
self
);
defer
{
objc_sync_exit
(
self
)
}
guard
!
_onceTracker
.
contains
(
token
)
else
{
return
}
guard
!
_onceTracker
.
contains
(
token
)
else
{
return
}
...
@@ -19,7 +19,7 @@ func swizzle(selector originalSelector: Selector, with swizzledSelector: Selecto
...
@@ -19,7 +19,7 @@ func swizzle(selector originalSelector: Selector, with swizzledSelector: Selecto
let
swizzledMethod
=
class_getInstanceMethod
(
usingClass
,
swizzledSelector
)
let
swizzledMethod
=
class_getInstanceMethod
(
usingClass
,
swizzledSelector
)
else
{
return
}
else
{
return
}
if
(
class_addMethod
(
inClass
,
swizzledSelector
,
method_getImplementation
(
originalMethod
),
method_getTypeEncoding
(
originalMethod
)
))
{
if
class_addMethod
(
inClass
,
swizzledSelector
,
method_getImplementation
(
originalMethod
),
method_getTypeEncoding
(
originalMethod
))
{
class_replaceMethod
(
inClass
,
originalSelector
,
method_getImplementation
(
swizzledMethod
),
method_getTypeEncoding
(
swizzledMethod
))
class_replaceMethod
(
inClass
,
originalSelector
,
method_getImplementation
(
swizzledMethod
),
method_getTypeEncoding
(
swizzledMethod
))
}
else
{
}
else
{
method_exchangeImplementations
(
originalMethod
,
swizzledMethod
)
method_exchangeImplementations
(
originalMethod
,
swizzledMethod
)
...
...
Pods/SkeletonView/Sources/Multilines/ContainsMultilineText.swift
View file @
b4cfb21c
...
@@ -7,6 +7,7 @@ enum MultilineAssociatedKeys {
...
@@ -7,6 +7,7 @@ enum MultilineAssociatedKeys {
static
var
multilineCornerRadius
=
"multilineCornerRadius"
static
var
multilineCornerRadius
=
"multilineCornerRadius"
static
var
multilineSpacing
=
"multilineSpacing"
static
var
multilineSpacing
=
"multilineSpacing"
static
var
paddingInsets
=
"paddingInsets"
static
var
paddingInsets
=
"paddingInsets"
static
var
backupHeightConstraints
=
"backupHeightConstraints"
}
}
protocol
ContainsMultilineText
{
protocol
ContainsMultilineText
{
...
@@ -17,7 +18,3 @@ protocol ContainsMultilineText {
...
@@ -17,7 +18,3 @@ protocol ContainsMultilineText {
var
multilineSpacing
:
CGFloat
{
get
}
var
multilineSpacing
:
CGFloat
{
get
}
var
paddingInsets
:
UIEdgeInsets
{
get
}
var
paddingInsets
:
UIEdgeInsets
{
get
}
}
}
extension
ContainsMultilineText
{
var
numLines
:
Int
{
return
0
}
}
Pods/SkeletonView/Sources/Multilines/UILabel+Multiline.swift
View file @
b4cfb21c
...
@@ -8,17 +8,19 @@ public extension UILabel {
...
@@ -8,17 +8,19 @@ public extension UILabel {
get
{
return
lastLineFillingPercent
}
get
{
return
lastLineFillingPercent
}
set
{
lastLineFillingPercent
=
min
(
newValue
,
100
)
}
set
{
lastLineFillingPercent
=
min
(
newValue
,
100
)
}
}
}
@IBInspectable
@IBInspectable
var
linesCornerRadius
:
Int
{
var
linesCornerRadius
:
Int
{
get
{
return
multilineCornerRadius
}
get
{
return
multilineCornerRadius
}
set
{
multilineCornerRadius
=
min
(
newValue
,
10
)
}
set
{
multilineCornerRadius
=
min
(
newValue
,
10
)
}
}
}
@IBInspectable
@IBInspectable
var
skeletonLineSpacing
:
CGFloat
{
var
skeletonLineSpacing
:
CGFloat
{
get
{
return
multilineSpacing
}
get
{
return
multilineSpacing
}
set
{
multilineSpacing
=
min
(
newValue
,
10
)
}
set
{
multilineSpacing
=
min
(
newValue
,
10
)
}
}
}
@IBInspectable
var
skeletonPaddingInsets
:
UIEdgeInsets
{
var
skeletonPaddingInsets
:
UIEdgeInsets
{
get
{
return
paddingInsets
}
get
{
return
paddingInsets
}
set
{
paddingInsets
=
newValue
}
set
{
paddingInsets
=
newValue
}
...
@@ -53,4 +55,9 @@ extension UILabel: ContainsMultilineText {
...
@@ -53,4 +55,9 @@ extension UILabel: ContainsMultilineText {
get
{
return
ao_get
(
pkey
:
&
MultilineAssociatedKeys
.
paddingInsets
)
as?
UIEdgeInsets
??
.
zero
}
get
{
return
ao_get
(
pkey
:
&
MultilineAssociatedKeys
.
paddingInsets
)
as?
UIEdgeInsets
??
.
zero
}
set
{
ao_set
(
newValue
,
pkey
:
&
MultilineAssociatedKeys
.
paddingInsets
)
}
set
{
ao_set
(
newValue
,
pkey
:
&
MultilineAssociatedKeys
.
paddingInsets
)
}
}
}
var
backupHeightConstraints
:
[
NSLayoutConstraint
]
{
get
{
return
ao_get
(
pkey
:
&
MultilineAssociatedKeys
.
backupHeightConstraints
)
as?
[
NSLayoutConstraint
]
??
[]
}
set
{
ao_set
(
newValue
,
pkey
:
&
MultilineAssociatedKeys
.
backupHeightConstraints
)
}
}
}
}
Pods/SkeletonView/Sources/Multilines/UITextView+Multiline.swift
View file @
b4cfb21c
...
@@ -21,7 +21,6 @@ public extension UITextView {
...
@@ -21,7 +21,6 @@ public extension UITextView {
set
{
multilineSpacing
=
min
(
newValue
,
10
)
}
set
{
multilineSpacing
=
min
(
newValue
,
10
)
}
}
}
@IBInspectable
var
skeletonPaddingInsets
:
UIEdgeInsets
{
var
skeletonPaddingInsets
:
UIEdgeInsets
{
get
{
return
paddingInsets
}
get
{
return
paddingInsets
}
set
{
paddingInsets
=
newValue
}
set
{
paddingInsets
=
newValue
}
...
@@ -30,8 +29,12 @@ public extension UITextView {
...
@@ -30,8 +29,12 @@ public extension UITextView {
extension
UITextView
:
ContainsMultilineText
{
extension
UITextView
:
ContainsMultilineText
{
var
multilineTextFont
:
UIFont
?
{
var
multilineTextFont
:
UIFont
?
{
return
font
font
}
}
var
numLines
:
Int
{
-
1
}
var
lastLineFillingPercent
:
Int
{
var
lastLineFillingPercent
:
Int
{
get
{
get
{
...
...
Pods/SkeletonView/Sources/Recoverable/Recoverable.swift
View file @
b4cfb21c
...
@@ -24,20 +24,21 @@ extension UIView: Recoverable {
...
@@ -24,20 +24,21 @@ extension UIView: Recoverable {
}
}
@objc
func
recoverViewState
(
forced
:
Bool
)
{
@objc
func
recoverViewState
(
forced
:
Bool
)
{
guard
let
s
afe
ViewState
=
viewState
else
{
return
}
guard
let
s
tored
ViewState
=
viewState
else
{
return
}
startTransition
{
[
weak
self
]
in
startTransition
{
[
weak
self
]
in
self
?
.
layer
.
cornerRadius
=
safeViewState
.
cornerRadius
self
?
.
layer
.
cornerRadius
=
storedViewState
.
cornerRadius
self
?
.
layer
.
masksToBounds
=
safeViewState
.
clipToBounds
self
?
.
layer
.
masksToBounds
=
storedViewState
.
clipToBounds
self
?
.
isUserInteractionEnabled
=
storedViewState
.
isUserInteractionsEnabled
if
s
afeViewState
.
backgroundColor
!=
self
?
.
backgroundColo
r
||
forced
{
if
s
elf
?
.
backgroundColor
==
.
clea
r
||
forced
{
self
?
.
backgroundColor
=
s
afe
ViewState
.
backgroundColor
self
?
.
backgroundColor
=
s
tored
ViewState
.
backgroundColor
}
}
}
}
}
}
}
}
extension
UILabel
{
extension
UILabel
{
var
labelState
:
RecoverableTextViewState
?
{
var
labelState
:
RecoverableTextViewState
?
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
as?
RecoverableTextViewState
}
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
as?
RecoverableTextViewState
}
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
}
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
}
...
@@ -51,14 +52,18 @@ extension UILabel{
...
@@ -51,14 +52,18 @@ extension UILabel{
override
func
recoverViewState
(
forced
:
Bool
)
{
override
func
recoverViewState
(
forced
:
Bool
)
{
super
.
recoverViewState
(
forced
:
forced
)
super
.
recoverViewState
(
forced
:
forced
)
startTransition
{
[
weak
self
]
in
startTransition
{
[
weak
self
]
in
self
?
.
textColor
=
self
?
.
labelState
?
.
textColor
guard
let
storedLabelState
=
self
?
.
labelState
else
{
return
}
self
?
.
text
=
self
?
.
labelState
?
.
text
self
?
.
isUserInteractionEnabled
=
self
?
.
labelState
?
.
isUserInteractionsEnabled
??
false
self
?
.
restoreBackupHeightConstraints
()
if
self
?
.
textColor
==
.
clear
||
forced
{
self
?
.
textColor
=
storedLabelState
.
textColor
}
}
}
}
}
}
}
extension
UITextView
{
extension
UITextView
{
var
textState
:
RecoverableTextViewState
?
{
var
textState
:
RecoverableTextViewState
?
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
as?
RecoverableTextViewState
}
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
as?
RecoverableTextViewState
}
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
}
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
labelViewState
)
}
...
@@ -72,9 +77,11 @@ extension UITextView{
...
@@ -72,9 +77,11 @@ extension UITextView{
override
func
recoverViewState
(
forced
:
Bool
)
{
override
func
recoverViewState
(
forced
:
Bool
)
{
super
.
recoverViewState
(
forced
:
forced
)
super
.
recoverViewState
(
forced
:
forced
)
startTransition
{
[
weak
self
]
in
startTransition
{
[
weak
self
]
in
self
?
.
textColor
=
self
?
.
textState
?
.
textColor
guard
let
storedLabelState
=
self
?
.
textState
else
{
return
}
self
?
.
text
=
self
?
.
textState
?
.
text
self
?
.
isUserInteractionEnabled
=
self
?
.
textState
?
.
isUserInteractionsEnabled
??
false
if
self
?
.
textColor
==
.
clear
||
forced
{
self
?
.
textColor
=
storedLabelState
.
textColor
}
}
}
}
}
}
}
...
@@ -97,3 +104,24 @@ extension UIImageView {
...
@@ -97,3 +104,24 @@ extension UIImageView {
}
}
}
}
}
}
extension
UIButton
{
var
buttonState
:
RecoverableButtonViewState
?
{
get
{
return
ao_get
(
pkey
:
&
ViewAssociatedKeys
.
buttonViewState
)
as?
RecoverableButtonViewState
}
set
{
ao_setOptional
(
newValue
,
pkey
:
&
ViewAssociatedKeys
.
buttonViewState
)
}
}
override
func
saveViewState
()
{
super
.
saveViewState
()
buttonState
=
RecoverableButtonViewState
(
view
:
self
)
}
override
func
recoverViewState
(
forced
:
Bool
)
{
super
.
recoverViewState
(
forced
:
forced
)
startTransition
{
[
weak
self
]
in
if
self
?
.
title
(
for
:
.
normal
)
==
nil
{
self
?
.
setTitle
(
self
?
.
buttonState
?
.
title
,
for
:
.
normal
)
}
}
}
}
Pods/SkeletonView/Sources/Recoverable/RecoverableViewState.swift
View file @
b4cfb21c
...
@@ -12,29 +12,25 @@ struct RecoverableViewState {
...
@@ -12,29 +12,25 @@ struct RecoverableViewState {
var
backgroundColor
:
UIColor
?
var
backgroundColor
:
UIColor
?
var
cornerRadius
:
CGFloat
var
cornerRadius
:
CGFloat
var
clipToBounds
:
Bool
var
clipToBounds
:
Bool
var
isUserInteractionsEnabled
:
Bool
init
(
view
:
UIView
)
{
init
(
view
:
UIView
)
{
self
.
backgroundColor
=
view
.
backgroundColor
self
.
backgroundColor
=
view
.
backgroundColor
self
.
clipToBounds
=
view
.
layer
.
masksToBounds
self
.
clipToBounds
=
view
.
layer
.
masksToBounds
self
.
cornerRadius
=
view
.
layer
.
cornerRadius
self
.
cornerRadius
=
view
.
layer
.
cornerRadius
self
.
isUserInteractionsEnabled
=
view
.
isUserInteractionEnabled
}
}
}
}
struct
RecoverableTextViewState
{
struct
RecoverableTextViewState
{
var
text
:
String
?
var
textColor
:
UIColor
?
var
textColor
:
UIColor
?
var
isUserInteractionsEnabled
:
Bool
init
(
view
:
UILabel
)
{
init
(
view
:
UILabel
)
{
self
.
textColor
=
view
.
textColor
self
.
textColor
=
view
.
textColor
self
.
text
=
view
.
text
self
.
isUserInteractionsEnabled
=
view
.
isUserInteractionEnabled
}
}
init
(
view
:
UITextView
)
{
init
(
view
:
UITextView
)
{
self
.
textColor
=
view
.
textColor
self
.
textColor
=
view
.
textColor
self
.
text
=
view
.
text
self
.
isUserInteractionsEnabled
=
view
.
isUserInteractionEnabled
}
}
}
}
...
@@ -45,3 +41,11 @@ struct RecoverableImageViewState {
...
@@ -45,3 +41,11 @@ struct RecoverableImageViewState {
self
.
image
=
view
.
image
self
.
image
=
view
.
image
}
}
}
}
struct
RecoverableButtonViewState
{
var
title
:
String
?
init
(
view
:
UIButton
)
{
self
.
title
=
view
.
titleLabel
?
.
text
}
}
Pods/SkeletonView/Sources/SkeletonAnimationBuilder.swift
View file @
b4cfb21c
...
@@ -18,42 +18,42 @@ public enum GradientDirection {
...
@@ -18,42 +18,42 @@ public enum GradientDirection {
case
topLeftBottomRight
case
topLeftBottomRight
case
bottomRightTopLeft
case
bottomRightTopLeft
public
func
slidingAnimation
(
duration
:
CFTimeInterval
=
1.5
)
->
SkeletonLayerAnimation
{
public
func
slidingAnimation
(
duration
:
CFTimeInterval
=
1.5
,
autoreverses
:
Bool
=
false
)
->
SkeletonLayerAnimation
{
return
SkeletonAnimationBuilder
()
.
makeSlidingAnimation
(
withDirection
:
self
,
duration
:
duration
)
return
SkeletonAnimationBuilder
()
.
makeSlidingAnimation
(
withDirection
:
self
,
duration
:
duration
,
autoreverses
:
autoreverses
)
}
}
// codebeat:disable[ABC]
// codebeat:disable[ABC]
var
startPoint
:
GradientAnimationPoint
{
var
startPoint
:
GradientAnimationPoint
{
switch
self
{
switch
self
{
case
.
leftRight
:
case
.
leftRight
:
return
(
from
:
CGPoint
(
x
:
-
1
,
y
:
0.5
),
to
:
CGPoint
(
x
:
1
,
y
:
0.5
))
return
(
from
:
CGPoint
(
x
:
-
1
,
y
:
0.5
),
to
:
CGPoint
(
x
:
1
,
y
:
0.5
))
case
.
rightLeft
:
case
.
rightLeft
:
return
(
from
:
CGPoint
(
x
:
1
,
y
:
0.5
),
to
:
CGPoint
(
x
:
-
1
,
y
:
0.5
))
return
(
from
:
CGPoint
(
x
:
1
,
y
:
0.5
),
to
:
CGPoint
(
x
:
-
1
,
y
:
0.5
))
case
.
topBottom
:
case
.
topBottom
:
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
-
1
),
to
:
CGPoint
(
x
:
0.5
,
y
:
1
))
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
-
1
),
to
:
CGPoint
(
x
:
0.5
,
y
:
1
))
case
.
bottomTop
:
case
.
bottomTop
:
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
1
),
to
:
CGPoint
(
x
:
0.5
,
y
:
-
1
))
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
1
),
to
:
CGPoint
(
x
:
0.5
,
y
:
-
1
))
case
.
topLeftBottomRight
:
case
.
topLeftBottomRight
:
return
(
from
:
CGPoint
(
x
:
-
1
,
y
:
-
1
),
to
:
CGPoint
(
x
:
1
,
y
:
1
))
return
(
from
:
CGPoint
(
x
:
-
1
,
y
:
-
1
),
to
:
CGPoint
(
x
:
1
,
y
:
1
))
case
.
bottomRightTopLeft
:
case
.
bottomRightTopLeft
:
return
(
from
:
CGPoint
(
x
:
1
,
y
:
1
),
to
:
CGPoint
(
x
:
-
1
,
y
:
-
1
))
return
(
from
:
CGPoint
(
x
:
1
,
y
:
1
),
to
:
CGPoint
(
x
:
-
1
,
y
:
-
1
))
}
}
}
}
var
endPoint
:
GradientAnimationPoint
{
var
endPoint
:
GradientAnimationPoint
{
switch
self
{
switch
self
{
case
.
leftRight
:
case
.
leftRight
:
return
(
from
:
CGPoint
(
x
:
0
,
y
:
0.5
),
to
:
CGPoint
(
x
:
2
,
y
:
0.5
))
return
(
from
:
CGPoint
(
x
:
0
,
y
:
0.5
),
to
:
CGPoint
(
x
:
2
,
y
:
0.5
))
case
.
rightLeft
:
case
.
rightLeft
:
return
(
from
:
CGPoint
(
x
:
2
,
y
:
0.5
),
to
:
CGPoint
(
x
:
0
,
y
:
0.5
))
return
(
from
:
CGPoint
(
x
:
2
,
y
:
0.5
),
to
:
CGPoint
(
x
:
0
,
y
:
0.5
))
case
.
topBottom
:
case
.
topBottom
:
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
0
),
to
:
CGPoint
(
x
:
0.5
,
y
:
2
))
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
0
),
to
:
CGPoint
(
x
:
0.5
,
y
:
2
))
case
.
bottomTop
:
case
.
bottomTop
:
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
2
),
to
:
CGPoint
(
x
:
0.5
,
y
:
0
))
return
(
from
:
CGPoint
(
x
:
0.5
,
y
:
2
),
to
:
CGPoint
(
x
:
0.5
,
y
:
0
))
case
.
topLeftBottomRight
:
case
.
topLeftBottomRight
:
return
(
from
:
CGPoint
(
x
:
0
,
y
:
0
),
to
:
CGPoint
(
x
:
2
,
y
:
2
))
return
(
from
:
CGPoint
(
x
:
0
,
y
:
0
),
to
:
CGPoint
(
x
:
2
,
y
:
2
))
case
.
bottomRightTopLeft
:
case
.
bottomRightTopLeft
:
return
(
from
:
CGPoint
(
x
:
2
,
y
:
2
),
to
:
CGPoint
(
x
:
0
,
y
:
0
))
return
(
from
:
CGPoint
(
x
:
2
,
y
:
2
),
to
:
CGPoint
(
x
:
0
,
y
:
0
))
}
}
}
}
// codebeat:enable[ABC]
// codebeat:enable[ABC]
...
@@ -62,9 +62,8 @@ public enum GradientDirection {
...
@@ -62,9 +62,8 @@ public enum GradientDirection {
public
class
SkeletonAnimationBuilder
{
public
class
SkeletonAnimationBuilder
{
public
init
()
{
}
public
init
()
{
}
public
func
makeSlidingAnimation
(
withDirection
direction
:
GradientDirection
,
duration
:
CFTimeInterval
=
1.5
)
->
SkeletonLayerAnimation
{
public
func
makeSlidingAnimation
(
withDirection
direction
:
GradientDirection
,
duration
:
CFTimeInterval
=
1.5
,
autoreverses
:
Bool
=
false
)
->
SkeletonLayerAnimation
{
return
{
layer
in
return
{
layer
in
let
startPointAnim
=
CABasicAnimation
(
keyPath
:
#keyPath(
CAGradientLayer.startPoint
)
)
let
startPointAnim
=
CABasicAnimation
(
keyPath
:
#keyPath(
CAGradientLayer.startPoint
)
)
startPointAnim
.
fromValue
=
direction
.
startPoint
.
from
startPointAnim
.
fromValue
=
direction
.
startPoint
.
from
startPointAnim
.
toValue
=
direction
.
startPoint
.
to
startPointAnim
.
toValue
=
direction
.
startPoint
.
to
...
@@ -78,6 +77,7 @@ public class SkeletonAnimationBuilder {
...
@@ -78,6 +77,7 @@ public class SkeletonAnimationBuilder {
animGroup
.
duration
=
duration
animGroup
.
duration
=
duration
animGroup
.
timingFunction
=
CAMediaTimingFunction
(
name
:
CAMediaTimingFunctionName
.
easeIn
)
animGroup
.
timingFunction
=
CAMediaTimingFunction
(
name
:
CAMediaTimingFunctionName
.
easeIn
)
animGroup
.
repeatCount
=
.
infinity
animGroup
.
repeatCount
=
.
infinity
animGroup
.
autoreverses
=
autoreverses
animGroup
.
isRemovedOnCompletion
=
false
animGroup
.
isRemovedOnCompletion
=
false
return
animGroup
return
animGroup
...
...
Pods/SkeletonView/Sources/SkeletonConfig.swift
View file @
b4cfb21c
...
@@ -22,14 +22,12 @@ struct SkeletonConfig {
...
@@ -22,14 +22,12 @@ struct SkeletonConfig {
/// Transition style
/// Transition style
var
transition
:
SkeletonTransitionStyle
var
transition
:
SkeletonTransitionStyle
init
(
init
(
type
:
SkeletonType
,
type
:
SkeletonType
,
colors
:
[
UIColor
],
colors
:
[
UIColor
],
gradientDirection
:
GradientDirection
?
=
nil
,
gradientDirection
:
GradientDirection
?
=
nil
,
animated
:
Bool
=
false
,
animated
:
Bool
=
false
,
animation
:
SkeletonLayerAnimation
?
=
nil
,
animation
:
SkeletonLayerAnimation
?
=
nil
,
transition
:
SkeletonTransitionStyle
=
.
crossDissolve
(
0.25
))
{
transition
:
SkeletonTransitionStyle
=
.
crossDissolve
(
0.25
)
)
{
self
.
type
=
type
self
.
type
=
type
self
.
colors
=
colors
self
.
colors
=
colors
self
.
gradientDirection
=
gradientDirection
self
.
gradientDirection
=
gradientDirection
...
...
Pods/SkeletonView/Sources/SkeletonFlow.swift
View file @
b4cfb21c
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
import
UIKit
import
UIKit
protocol
SkeletonFlowDelegate
{
protocol
SkeletonFlowDelegate
:
AnyObject
{
func
willBeginShowingSkeletons
(
rootView
:
UIView
)
func
willBeginShowingSkeletons
(
rootView
:
UIView
)
func
didShowSkeletons
(
rootView
:
UIView
)
func
didShowSkeletons
(
rootView
:
UIView
)
func
willBeginUpdatingSkeletons
(
rootView
:
UIView
)
func
willBeginUpdatingSkeletons
(
rootView
:
UIView
)
...
...
Pods/SkeletonView/Sources/SkeletonLayer.swift
View file @
b4cfb21c
...
@@ -23,12 +23,12 @@ public enum SkeletonType {
...
@@ -23,12 +23,12 @@ public enum SkeletonType {
}
}
}
}
var
layerAnimation
:
SkeletonLayerAnimation
{
func
defaultLayerAnimation
(
isRTL
:
Bool
)
->
SkeletonLayerAnimation
{
switch
self
{
switch
self
{
case
.
solid
:
case
.
solid
:
return
{
$0
.
pulse
}
return
{
$0
.
pulse
}
case
.
gradient
:
case
.
gradient
:
return
{
$0
.
sliding
}
return
{
SkeletonAnimationBuilder
()
.
makeSlidingAnimation
(
withDirection
:
isRTL
?
.
rightLeft
:
.
leftRight
)
}()
}
}
}
}
}
}
...
@@ -49,7 +49,7 @@ struct SkeletonLayer {
...
@@ -49,7 +49,7 @@ struct SkeletonLayer {
self
.
holder
=
holder
self
.
holder
=
holder
self
.
maskLayer
=
type
.
layer
self
.
maskLayer
=
type
.
layer
self
.
maskLayer
.
anchorPoint
=
.
zero
self
.
maskLayer
.
anchorPoint
=
.
zero
self
.
maskLayer
.
bounds
=
holder
.
maxBoundsEstimated
self
.
maskLayer
.
bounds
=
holder
.
definedMaxBounds
self
.
maskLayer
.
cornerRadius
=
CGFloat
(
holder
.
skeletonCornerRadius
)
self
.
maskLayer
.
cornerRadius
=
CGFloat
(
holder
.
skeletonCornerRadius
)
addTextLinesIfNeeded
()
addTextLinesIfNeeded
()
self
.
maskLayer
.
tint
(
withColors
:
colors
)
self
.
maskLayer
.
tint
(
withColors
:
colors
)
...
@@ -61,7 +61,7 @@ struct SkeletonLayer {
...
@@ -61,7 +61,7 @@ struct SkeletonLayer {
}
}
func
layoutIfNeeded
()
{
func
layoutIfNeeded
()
{
if
let
bounds
=
holder
?
.
maxBoundsEstimated
{
if
let
bounds
=
holder
?
.
definedMaxBounds
{
maskLayer
.
bounds
=
bounds
maskLayer
.
bounds
=
bounds
}
}
updateLinesIfNeeded
()
updateLinesIfNeeded
()
...
@@ -83,34 +83,37 @@ struct SkeletonLayer {
...
@@ -83,34 +83,37 @@ struct SkeletonLayer {
/// If there is more than one line, or custom preferences have been set for a single line, draw custom layers
/// If there is more than one line, or custom preferences have been set for a single line, draw custom layers
func
addTextLinesIfNeeded
()
{
func
addTextLinesIfNeeded
()
{
guard
let
textView
=
holderAsTextView
else
{
return
}
guard
let
textView
=
holderAsTextView
else
{
return
}
let
lineHeight
=
textView
.
multilineTextFont
?
.
lineHeight
??
SkeletonAppearance
.
default
.
multilineHeight
let
config
=
SkeletonMultilinesLayerConfig
(
lines
:
textView
.
numLines
,
let
config
=
SkeletonMultilinesLayerConfig
(
lines
:
textView
.
numLines
,
lineHeight
:
textView
.
multilineTextFont
?
.
lineHeight
,
lineHeight
:
lineHeight
,
type
:
type
,
type
:
type
,
lastLineFillPercent
:
textView
.
lastLineFillingPercent
,
lastLineFillPercent
:
textView
.
lastLineFillingPercent
,
multilineCornerRadius
:
textView
.
multilineCornerRadius
,
multilineCornerRadius
:
textView
.
multilineCornerRadius
,
multilineSpacing
:
textView
.
multilineSpacing
,
multilineSpacing
:
textView
.
multilineSpacing
,
paddingInsets
:
textView
.
paddingInsets
)
paddingInsets
:
textView
.
paddingInsets
,
isRTL
:
holder
?
.
isRTL
??
false
)
maskLayer
.
addMultilinesLayers
(
for
:
config
)
maskLayer
.
addMultilinesLayers
(
for
:
config
)
}
}
func
updateLinesIfNeeded
()
{
func
updateLinesIfNeeded
()
{
guard
let
textView
=
holderAsTextView
else
{
return
}
guard
let
textView
=
holderAsTextView
else
{
return
}
let
lineHeight
=
textView
.
multilineTextFont
?
.
lineHeight
??
SkeletonAppearance
.
default
.
multilineHeight
let
config
=
SkeletonMultilinesLayerConfig
(
lines
:
textView
.
numLines
,
let
config
=
SkeletonMultilinesLayerConfig
(
lines
:
textView
.
numLines
,
lineHeight
:
textView
.
multilineTextFont
?
.
lineHeight
,
lineHeight
:
lineHeight
,
type
:
type
,
type
:
type
,
lastLineFillPercent
:
textView
.
lastLineFillingPercent
,
lastLineFillPercent
:
textView
.
lastLineFillingPercent
,
multilineCornerRadius
:
textView
.
multilineCornerRadius
,
multilineCornerRadius
:
textView
.
multilineCornerRadius
,
multilineSpacing
:
textView
.
multilineSpacing
,
multilineSpacing
:
textView
.
multilineSpacing
,
paddingInsets
:
textView
.
paddingInsets
)
paddingInsets
:
textView
.
paddingInsets
,
isRTL
:
holder
?
.
isRTL
??
false
)
maskLayer
.
updateMultilinesLayers
(
for
:
config
)
maskLayer
.
updateMultilinesLayers
(
for
:
config
)
}
}
var
holderAsTextView
:
ContainsMultilineText
?
{
var
holderAsTextView
:
ContainsMultilineText
?
{
guard
let
textView
=
holder
as?
ContainsMultilineText
,
guard
let
textView
=
holder
as?
ContainsMultilineText
,
(
textView
.
numLines
==
0
||
textView
.
numLines
>
1
||
textView
.
numLines
==
1
&&
!
SkeletonAppearance
.
default
.
renderSingleLineAsView
)
else
{
(
textView
.
numLines
==
-
1
||
textView
.
numLines
==
0
||
textView
.
numLines
>
1
||
textView
.
numLines
==
1
&&
!
SkeletonAppearance
.
default
.
renderSingleLineAsView
)
else
{
return
nil
return
nil
}
}
return
textView
return
textView
...
@@ -119,7 +122,7 @@ struct SkeletonLayer {
...
@@ -119,7 +122,7 @@ struct SkeletonLayer {
extension
SkeletonLayer
{
extension
SkeletonLayer
{
func
start
(
_
anim
:
SkeletonLayerAnimation
?
=
nil
,
completion
:
(()
->
Void
)?
=
nil
)
{
func
start
(
_
anim
:
SkeletonLayerAnimation
?
=
nil
,
completion
:
(()
->
Void
)?
=
nil
)
{
let
animation
=
anim
??
type
.
layerAnimation
let
animation
=
anim
??
type
.
defaultLayerAnimation
(
isRTL
:
holder
?
.
isRTL
??
false
)
contentLayer
.
playAnimation
(
animation
,
key
:
"skeletonAnimation"
,
completion
:
completion
)
contentLayer
.
playAnimation
(
animation
,
key
:
"skeletonAnimation"
,
completion
:
completion
)
}
}
...
...
Pods/SkeletonView/Sources/SkeletonView.swift
View file @
b4cfb21c
...
@@ -94,6 +94,7 @@ public extension UIView {
...
@@ -94,6 +94,7 @@ public extension UIView {
extension
UIView
{
extension
UIView
{
@objc
func
skeletonLayoutSubviews
()
{
@objc
func
skeletonLayoutSubviews
()
{
guard
Thread
.
isMainThread
else
{
return
}
skeletonLayoutSubviews
()
skeletonLayoutSubviews
()
guard
isSkeletonActive
else
{
return
}
guard
isSkeletonActive
else
{
return
}
layoutSkeletonIfNeeded
()
layoutSkeletonIfNeeded
()
...
@@ -113,6 +114,9 @@ extension UIView {
...
@@ -113,6 +114,9 @@ extension UIView {
}
}
private
func
recursiveShowSkeleton
(
skeletonConfig
config
:
SkeletonConfig
,
root
:
UIView
?
=
nil
)
{
private
func
recursiveShowSkeleton
(
skeletonConfig
config
:
SkeletonConfig
,
root
:
UIView
?
=
nil
)
{
if
isHiddenWhenSkeletonIsActive
{
isHidden
=
true
}
guard
isSkeletonable
&&
!
isSkeletonActive
else
{
return
}
guard
isSkeletonable
&&
!
isSkeletonActive
else
{
return
}
currentSkeletonConfig
=
config
currentSkeletonConfig
=
config
swizzleLayoutSubviews
()
swizzleLayoutSubviews
()
...
@@ -120,7 +124,7 @@ extension UIView {
...
@@ -120,7 +124,7 @@ extension UIView {
addDummyDataSourceIfNeeded
()
addDummyDataSourceIfNeeded
()
subviewsSkeletonables
.
recursiveSearch
(
leafBlock
:
{
subviewsSkeletonables
.
recursiveSearch
(
leafBlock
:
{
showSkeletonIfNotActive
(
skeletonConfig
:
config
)
showSkeletonIfNotActive
(
skeletonConfig
:
config
)
}){
subview
in
})
{
subview
in
subview
.
recursiveShowSkeleton
(
skeletonConfig
:
config
)
subview
.
recursiveShowSkeleton
(
skeletonConfig
:
config
)
}
}
...
@@ -148,7 +152,8 @@ extension UIView {
...
@@ -148,7 +152,8 @@ extension UIView {
currentSkeletonConfig
=
config
currentSkeletonConfig
=
config
updateDummyDataSourceIfNeeded
()
updateDummyDataSourceIfNeeded
()
subviewsSkeletonables
.
recursiveSearch
(
leafBlock
:
{
subviewsSkeletonables
.
recursiveSearch
(
leafBlock
:
{
if
skeletonLayer
?
.
type
!=
config
.
type
{
if
let
skeletonLayer
=
skeletonLayer
,
skeletonLayer
.
type
!=
config
.
type
{
removeSkeletonLayer
()
removeSkeletonLayer
()
addSkeletonLayer
(
skeletonConfig
:
config
)
addSkeletonLayer
(
skeletonConfig
:
config
)
}
else
{
}
else
{
...
@@ -181,6 +186,9 @@ extension UIView {
...
@@ -181,6 +186,9 @@ extension UIView {
private
func
recursiveHideSkeleton
(
reloadDataAfter
reload
:
Bool
,
transition
:
SkeletonTransitionStyle
,
root
:
UIView
?
=
nil
)
{
private
func
recursiveHideSkeleton
(
reloadDataAfter
reload
:
Bool
,
transition
:
SkeletonTransitionStyle
,
root
:
UIView
?
=
nil
)
{
guard
isSkeletonActive
else
{
return
}
guard
isSkeletonActive
else
{
return
}
if
isHiddenWhenSkeletonIsActive
{
isHidden
=
false
}
currentSkeletonConfig
?
.
transition
=
transition
currentSkeletonConfig
?
.
transition
=
transition
isUserInteractionEnabled
=
true
isUserInteractionEnabled
=
true
removeDummyDataSourceIfNeeded
(
reloadAfter
:
reload
)
removeDummyDataSourceIfNeeded
(
reloadAfter
:
reload
)
...
...
Pods/SkeletonView/Sources/Transitions/UIView+Transitions.swift
View file @
b4cfb21c
...
@@ -8,7 +8,6 @@ extension CALayer {
...
@@ -8,7 +8,6 @@ extension CALayer {
switch
transition
{
switch
transition
{
case
.
none
:
case
.
none
:
completion
?()
completion
?()
break
case
.
crossDissolve
(
let
duration
):
case
.
crossDissolve
(
let
duration
):
layer
.
contentLayer
.
setOpacity
(
from
:
0
,
to
:
1
,
duration
:
duration
,
completion
:
completion
)
layer
.
contentLayer
.
setOpacity
(
from
:
0
,
to
:
1
,
duration
:
duration
,
completion
:
completion
)
}
}
...
...
Pods/Target Support Files/SkeletonView/SkeletonView-Info.plist
View file @
b4cfb21c
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
<key>
CFBundlePackageType
</key>
<key>
CFBundlePackageType
</key>
<string>
FMWK
</string>
<string>
FMWK
</string>
<key>
CFBundleShortVersionString
</key>
<key>
CFBundleShortVersionString
</key>
<string>
1.
8.7
</string>
<string>
1.
11.0
</string>
<key>
CFBundleSignature
</key>
<key>
CFBundleSignature
</key>
<string>
????
</string>
<string>
????
</string>
<key>
CFBundleVersion
</key>
<key>
CFBundleVersion
</key>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment