mirror of
https://github.com/tappollo/SwipeDemo.git
synced 2026-01-12 15:55:03 +08:00
finished
This commit is contained in:
12
Pods/Manifest.lock
generated
Normal file
12
Pods/Manifest.lock
generated
Normal file
@@ -0,0 +1,12 @@
|
||||
PODS:
|
||||
- TransitionButton (0.3.0)
|
||||
|
||||
DEPENDENCIES:
|
||||
- TransitionButton
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
TransitionButton: 0bf7e5ffe80030f9d10d57983a04acf2f511998a
|
||||
|
||||
PODFILE CHECKSUM: cfcbbf53aece051f4493b0c6a5a057be62852215
|
||||
|
||||
COCOAPODS: 1.4.0
|
||||
730
Pods/Pods.xcodeproj/project.pbxproj
generated
Normal file
730
Pods/Pods.xcodeproj/project.pbxproj
generated
Normal file
@@ -0,0 +1,730 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 48;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
0E525CD68CAD30E4845C3C35838914DF /* CustomTransitionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 596F377176A538EC15C556C00CD93C14 /* CustomTransitionViewController.swift */; };
|
||||
0EEDBECCC1746571B09BC04C719D6262 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D88AAE1F92055A60CC2FC970D7D34634 /* Foundation.framework */; };
|
||||
2A1C7C65DD19EF330E8A4FC3C8B7025C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D88AAE1F92055A60CC2FC970D7D34634 /* Foundation.framework */; };
|
||||
43A33829153211BDAEE97FA74BF78CA4 /* FadeTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F88A44376B0BA487E4D474A9F901B32 /* FadeTransition.swift */; };
|
||||
479F0C6407F04579D446097FD9DCB36B /* SpinerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFD916774F662BF07452242B4A1C055F /* SpinerLayer.swift */; };
|
||||
4E76E9219D6FBF66710E968F0EBB2B6F /* TransitionButton-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BB5E4B63CC746C1AFBD6097771CF951 /* TransitionButton-dummy.m */; };
|
||||
574F2DD2D8BA34EDA522AA5292FACC6A /* Pods-SwipeToConfirmTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B2D8CAC0809D095ED7ADB04C2E721F0 /* Pods-SwipeToConfirmTests-dummy.m */; };
|
||||
5DE877B53D5434B05102B383E4092CAF /* Pods-SwipeToConfirm-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BF6F24099E9AAB6FCACDEB5860C4522 /* Pods-SwipeToConfirm-dummy.m */; };
|
||||
7B7F0076EC2D2E729C159F7F90921D55 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D88AAE1F92055A60CC2FC970D7D34634 /* Foundation.framework */; };
|
||||
934EDEC6EAC1B5A23D8A0B2084347B2D /* Pods-SwipeToConfirm-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 816DC86D2D67798F3B1CDD10469B117E /* Pods-SwipeToConfirm-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
A63F30E1B0EB913FE7227AF08F19A0CC /* Pods-SwipeToConfirmTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F3D8A193E317DF12EF2A6C21829E061 /* Pods-SwipeToConfirmTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
BA3C9378E4B337AF4060C20896A8B75B /* TransitionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3688C893AB618C3028129D9C735B1F8 /* TransitionButton.swift */; };
|
||||
C80FF2729D63EB04CC7A85D790146BC0 /* TransitionButton-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AD80F5B9DD01B7A2C0FD9E468547918B /* TransitionButton-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
D0B15EE0F003F2A824E70E264D93D05D /* CGRectExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71774896FEAF20037437E03690629556 /* CGRectExtension.swift */; };
|
||||
F06E5B2AE640C826637DD35ED7CE78D5 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B63C6A64CF66340668996F78DA6BB482 /* UIKit.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
E50F08149385F70E0F28481692637839 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = ABF7088C2AA796DED67D342DA9344FBB;
|
||||
remoteInfo = TransitionButton;
|
||||
};
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
0432F07A655551C1B3822108C6175B00 /* Pods-SwipeToConfirm-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwipeToConfirm-frameworks.sh"; sourceTree = "<group>"; };
|
||||
05A75B8DBD0BDB8CF8CC6029674171A5 /* Pods-SwipeToConfirmTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = "Pods-SwipeToConfirmTests.modulemap"; sourceTree = "<group>"; };
|
||||
1275296A784409B80C17562B221FBA53 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
159AB5914D6BCE4A60C04C47B130EB2B /* Pods-SwipeToConfirm-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwipeToConfirm-acknowledgements.markdown"; sourceTree = "<group>"; };
|
||||
1BB5E4B63CC746C1AFBD6097771CF951 /* TransitionButton-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "TransitionButton-dummy.m"; sourceTree = "<group>"; };
|
||||
26F39D10830AAB27AC4984999AFD15B4 /* Pods_SwipeToConfirm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwipeToConfirm.framework; path = "Pods-SwipeToConfirm.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
3D2A60A0C0E1301B42ADF28C9AEB147C /* Pods-SwipeToConfirmTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwipeToConfirmTests-frameworks.sh"; sourceTree = "<group>"; };
|
||||
3F3D8A193E317DF12EF2A6C21829E061 /* Pods-SwipeToConfirmTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwipeToConfirmTests-umbrella.h"; sourceTree = "<group>"; };
|
||||
4885195FF3FFFC10CF893080DC6B0883 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
4B2D8CAC0809D095ED7ADB04C2E721F0 /* Pods-SwipeToConfirmTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwipeToConfirmTests-dummy.m"; sourceTree = "<group>"; };
|
||||
4BF6F24099E9AAB6FCACDEB5860C4522 /* Pods-SwipeToConfirm-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwipeToConfirm-dummy.m"; sourceTree = "<group>"; };
|
||||
596F377176A538EC15C556C00CD93C14 /* CustomTransitionViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CustomTransitionViewController.swift; path = Source/CustomTransitionViewController.swift; sourceTree = "<group>"; };
|
||||
6F88A44376B0BA487E4D474A9F901B32 /* FadeTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FadeTransition.swift; path = Source/FadeTransition.swift; sourceTree = "<group>"; };
|
||||
71774896FEAF20037437E03690629556 /* CGRectExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CGRectExtension.swift; path = Source/CGRectExtension.swift; sourceTree = "<group>"; };
|
||||
779FE13F22DC3084E06B7DD8E35189E9 /* Pods-SwipeToConfirm-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwipeToConfirm-resources.sh"; sourceTree = "<group>"; };
|
||||
816DC86D2D67798F3B1CDD10469B117E /* Pods-SwipeToConfirm-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwipeToConfirm-umbrella.h"; sourceTree = "<group>"; };
|
||||
8416D7F2CE760952CF424753E8EB2F27 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
91C96FA844C7455EF04222467D6DF8C4 /* Pods_SwipeToConfirmTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwipeToConfirmTests.framework; path = "Pods-SwipeToConfirmTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
|
||||
98D1434747244818C7D94444DFC5AAD1 /* TransitionButton.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = TransitionButton.xcconfig; sourceTree = "<group>"; };
|
||||
9A7040746435E23168C42FB0378F67A6 /* TransitionButton.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = TransitionButton.framework; path = TransitionButton.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
AAC3F778CDF4C89A6C25B38D66AA7D74 /* TransitionButton-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "TransitionButton-prefix.pch"; sourceTree = "<group>"; };
|
||||
AB4AC738B918996D945ECE0A612AE252 /* Pods-SwipeToConfirmTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwipeToConfirmTests-resources.sh"; sourceTree = "<group>"; };
|
||||
AD80F5B9DD01B7A2C0FD9E468547918B /* TransitionButton-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "TransitionButton-umbrella.h"; sourceTree = "<group>"; };
|
||||
B07601A2824D773AF657A0788471E6D8 /* Pods-SwipeToConfirm.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = "Pods-SwipeToConfirm.modulemap"; sourceTree = "<group>"; };
|
||||
B63C6A64CF66340668996F78DA6BB482 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
||||
B7752755FB852AAE2BE50938ADAD9F61 /* Pods-SwipeToConfirm.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwipeToConfirm.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
BD383862DCFD15833A648366516D8FD2 /* Pods-SwipeToConfirmTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwipeToConfirmTests-acknowledgements.plist"; sourceTree = "<group>"; };
|
||||
BF71804145C3725051D6AAEDE833BF3E /* Pods-SwipeToConfirmTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwipeToConfirmTests.release.xcconfig"; sourceTree = "<group>"; };
|
||||
CCAEB817DD61F7F3821EC10D1420E277 /* Pods-SwipeToConfirm-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwipeToConfirm-acknowledgements.plist"; sourceTree = "<group>"; };
|
||||
CE1C1D17A53C1FF913F84D576B9504A1 /* TransitionButton.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = TransitionButton.modulemap; sourceTree = "<group>"; };
|
||||
D3688C893AB618C3028129D9C735B1F8 /* TransitionButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TransitionButton.swift; path = Source/TransitionButton.swift; sourceTree = "<group>"; };
|
||||
D88AAE1F92055A60CC2FC970D7D34634 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
|
||||
DFD916774F662BF07452242B4A1C055F /* SpinerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SpinerLayer.swift; path = Source/SpinerLayer.swift; sourceTree = "<group>"; };
|
||||
E4B6C7940C279C3C1C394C28D65310E2 /* Pods-SwipeToConfirm.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwipeToConfirm.release.xcconfig"; sourceTree = "<group>"; };
|
||||
E5BBCB977174C2C7A36221F828F080A6 /* Pods-SwipeToConfirmTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwipeToConfirmTests.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
F385E81267D16F29D841881C76B68EF4 /* Pods-SwipeToConfirmTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwipeToConfirmTests-acknowledgements.markdown"; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
13B7A024DB820ED147DBA71C6E2819FE /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
0EEDBECCC1746571B09BC04C719D6262 /* Foundation.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
28B7DE7EB5C88495F3FCAC9156336A4C /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
7B7F0076EC2D2E729C159F7F90921D55 /* Foundation.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
CE07E779F2203C55D0E0E8C012340BD2 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
2A1C7C65DD19EF330E8A4FC3C8B7025C /* Foundation.framework in Frameworks */,
|
||||
F06E5B2AE640C826637DD35ED7CE78D5 /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
151D8A68E408B41527B4EA02616C9041 /* Pods-SwipeToConfirmTests */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4885195FF3FFFC10CF893080DC6B0883 /* Info.plist */,
|
||||
05A75B8DBD0BDB8CF8CC6029674171A5 /* Pods-SwipeToConfirmTests.modulemap */,
|
||||
F385E81267D16F29D841881C76B68EF4 /* Pods-SwipeToConfirmTests-acknowledgements.markdown */,
|
||||
BD383862DCFD15833A648366516D8FD2 /* Pods-SwipeToConfirmTests-acknowledgements.plist */,
|
||||
4B2D8CAC0809D095ED7ADB04C2E721F0 /* Pods-SwipeToConfirmTests-dummy.m */,
|
||||
3D2A60A0C0E1301B42ADF28C9AEB147C /* Pods-SwipeToConfirmTests-frameworks.sh */,
|
||||
AB4AC738B918996D945ECE0A612AE252 /* Pods-SwipeToConfirmTests-resources.sh */,
|
||||
3F3D8A193E317DF12EF2A6C21829E061 /* Pods-SwipeToConfirmTests-umbrella.h */,
|
||||
E5BBCB977174C2C7A36221F828F080A6 /* Pods-SwipeToConfirmTests.debug.xcconfig */,
|
||||
BF71804145C3725051D6AAEDE833BF3E /* Pods-SwipeToConfirmTests.release.xcconfig */,
|
||||
);
|
||||
name = "Pods-SwipeToConfirmTests";
|
||||
path = "Target Support Files/Pods-SwipeToConfirmTests";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1EAF7646557D3A3D36521C4B3321E710 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
26F39D10830AAB27AC4984999AFD15B4 /* Pods_SwipeToConfirm.framework */,
|
||||
91C96FA844C7455EF04222467D6DF8C4 /* Pods_SwipeToConfirmTests.framework */,
|
||||
9A7040746435E23168C42FB0378F67A6 /* TransitionButton.framework */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
2477676CD7ACBD4DB24BB5782A2408EE /* Pods-SwipeToConfirm */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8416D7F2CE760952CF424753E8EB2F27 /* Info.plist */,
|
||||
B07601A2824D773AF657A0788471E6D8 /* Pods-SwipeToConfirm.modulemap */,
|
||||
159AB5914D6BCE4A60C04C47B130EB2B /* Pods-SwipeToConfirm-acknowledgements.markdown */,
|
||||
CCAEB817DD61F7F3821EC10D1420E277 /* Pods-SwipeToConfirm-acknowledgements.plist */,
|
||||
4BF6F24099E9AAB6FCACDEB5860C4522 /* Pods-SwipeToConfirm-dummy.m */,
|
||||
0432F07A655551C1B3822108C6175B00 /* Pods-SwipeToConfirm-frameworks.sh */,
|
||||
779FE13F22DC3084E06B7DD8E35189E9 /* Pods-SwipeToConfirm-resources.sh */,
|
||||
816DC86D2D67798F3B1CDD10469B117E /* Pods-SwipeToConfirm-umbrella.h */,
|
||||
B7752755FB852AAE2BE50938ADAD9F61 /* Pods-SwipeToConfirm.debug.xcconfig */,
|
||||
E4B6C7940C279C3C1C394C28D65310E2 /* Pods-SwipeToConfirm.release.xcconfig */,
|
||||
);
|
||||
name = "Pods-SwipeToConfirm";
|
||||
path = "Target Support Files/Pods-SwipeToConfirm";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4120C4A6E7180A54DE765FA4AE6A6BD3 /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FA2E2D331425E79EC684AE0B46FDA992 /* TransitionButton */,
|
||||
);
|
||||
name = Pods;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
433CD3331B6C3787F473C941B61FC68F /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
438B396F6B4147076630CAEFE34282C1 /* iOS */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
438B396F6B4147076630CAEFE34282C1 /* iOS */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
D88AAE1F92055A60CC2FC970D7D34634 /* Foundation.framework */,
|
||||
B63C6A64CF66340668996F78DA6BB482 /* UIKit.framework */,
|
||||
);
|
||||
name = iOS;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4E0F31BE1E74FEF6BE2A0167E7545FD1 /* Targets Support Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
2477676CD7ACBD4DB24BB5782A2408EE /* Pods-SwipeToConfirm */,
|
||||
151D8A68E408B41527B4EA02616C9041 /* Pods-SwipeToConfirmTests */,
|
||||
);
|
||||
name = "Targets Support Files";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
7DB346D0F39D3F0E887471402A8071AB = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */,
|
||||
433CD3331B6C3787F473C941B61FC68F /* Frameworks */,
|
||||
4120C4A6E7180A54DE765FA4AE6A6BD3 /* Pods */,
|
||||
1EAF7646557D3A3D36521C4B3321E710 /* Products */,
|
||||
4E0F31BE1E74FEF6BE2A0167E7545FD1 /* Targets Support Files */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F0085B955AC77394D00F450331DCBDD7 /* Support Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1275296A784409B80C17562B221FBA53 /* Info.plist */,
|
||||
CE1C1D17A53C1FF913F84D576B9504A1 /* TransitionButton.modulemap */,
|
||||
98D1434747244818C7D94444DFC5AAD1 /* TransitionButton.xcconfig */,
|
||||
1BB5E4B63CC746C1AFBD6097771CF951 /* TransitionButton-dummy.m */,
|
||||
AAC3F778CDF4C89A6C25B38D66AA7D74 /* TransitionButton-prefix.pch */,
|
||||
AD80F5B9DD01B7A2C0FD9E468547918B /* TransitionButton-umbrella.h */,
|
||||
);
|
||||
name = "Support Files";
|
||||
path = "../Target Support Files/TransitionButton";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
FA2E2D331425E79EC684AE0B46FDA992 /* TransitionButton */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
71774896FEAF20037437E03690629556 /* CGRectExtension.swift */,
|
||||
596F377176A538EC15C556C00CD93C14 /* CustomTransitionViewController.swift */,
|
||||
6F88A44376B0BA487E4D474A9F901B32 /* FadeTransition.swift */,
|
||||
DFD916774F662BF07452242B4A1C055F /* SpinerLayer.swift */,
|
||||
D3688C893AB618C3028129D9C735B1F8 /* TransitionButton.swift */,
|
||||
F0085B955AC77394D00F450331DCBDD7 /* Support Files */,
|
||||
);
|
||||
name = TransitionButton;
|
||||
path = TransitionButton;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
4E861520E37B71D36CFDC7AF938BCE7C /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
C80FF2729D63EB04CC7A85D790146BC0 /* TransitionButton-umbrella.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
AB563D64D840862C3C1D8B59858D88C5 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
934EDEC6EAC1B5A23D8A0B2084347B2D /* Pods-SwipeToConfirm-umbrella.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
BA085F4EF20E55D9A50EB520305E3E27 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
A63F30E1B0EB913FE7227AF08F19A0CC /* Pods-SwipeToConfirmTests-umbrella.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
0934870EF5D8E658348D39893ED7229F /* Pods-SwipeToConfirmTests */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 46BE3A98C5A48D196A55C392D195D6F9 /* Build configuration list for PBXNativeTarget "Pods-SwipeToConfirmTests" */;
|
||||
buildPhases = (
|
||||
DE3E384E710F3F67E91A398C49693D96 /* Sources */,
|
||||
13B7A024DB820ED147DBA71C6E2819FE /* Frameworks */,
|
||||
BA085F4EF20E55D9A50EB520305E3E27 /* Headers */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = "Pods-SwipeToConfirmTests";
|
||||
productName = "Pods-SwipeToConfirmTests";
|
||||
productReference = 91C96FA844C7455EF04222467D6DF8C4 /* Pods_SwipeToConfirmTests.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
ABF7088C2AA796DED67D342DA9344FBB /* TransitionButton */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 102BEF7A7CF61F17EE9A7CD76EF6CF47 /* Build configuration list for PBXNativeTarget "TransitionButton" */;
|
||||
buildPhases = (
|
||||
E3D4A4F55BFC02981DA24022CBC4DD95 /* Sources */,
|
||||
CE07E779F2203C55D0E0E8C012340BD2 /* Frameworks */,
|
||||
4E861520E37B71D36CFDC7AF938BCE7C /* Headers */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = TransitionButton;
|
||||
productName = TransitionButton;
|
||||
productReference = 9A7040746435E23168C42FB0378F67A6 /* TransitionButton.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
FFA21A13BBF73CC08F5736C3B5DEB8F2 /* Pods-SwipeToConfirm */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 75AF9DDF6E1746E8791F74E3F8AEC4CB /* Build configuration list for PBXNativeTarget "Pods-SwipeToConfirm" */;
|
||||
buildPhases = (
|
||||
574F276A0A0A061196AB059BDCDDF78D /* Sources */,
|
||||
28B7DE7EB5C88495F3FCAC9156336A4C /* Frameworks */,
|
||||
AB563D64D840862C3C1D8B59858D88C5 /* Headers */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
F2F97193BA5938B0DCD86DC0DCF0ADD0 /* PBXTargetDependency */,
|
||||
);
|
||||
name = "Pods-SwipeToConfirm";
|
||||
productName = "Pods-SwipeToConfirm";
|
||||
productReference = 26F39D10830AAB27AC4984999AFD15B4 /* Pods_SwipeToConfirm.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
D41D8CD98F00B204E9800998ECF8427E /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastSwiftUpdateCheck = 0830;
|
||||
LastUpgradeCheck = 0700;
|
||||
};
|
||||
buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = 7DB346D0F39D3F0E887471402A8071AB;
|
||||
productRefGroup = 1EAF7646557D3A3D36521C4B3321E710 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
FFA21A13BBF73CC08F5736C3B5DEB8F2 /* Pods-SwipeToConfirm */,
|
||||
0934870EF5D8E658348D39893ED7229F /* Pods-SwipeToConfirmTests */,
|
||||
ABF7088C2AA796DED67D342DA9344FBB /* TransitionButton */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
574F276A0A0A061196AB059BDCDDF78D /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
5DE877B53D5434B05102B383E4092CAF /* Pods-SwipeToConfirm-dummy.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
DE3E384E710F3F67E91A398C49693D96 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
574F2DD2D8BA34EDA522AA5292FACC6A /* Pods-SwipeToConfirmTests-dummy.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
E3D4A4F55BFC02981DA24022CBC4DD95 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
D0B15EE0F003F2A824E70E264D93D05D /* CGRectExtension.swift in Sources */,
|
||||
0E525CD68CAD30E4845C3C35838914DF /* CustomTransitionViewController.swift in Sources */,
|
||||
43A33829153211BDAEE97FA74BF78CA4 /* FadeTransition.swift in Sources */,
|
||||
479F0C6407F04579D446097FD9DCB36B /* SpinerLayer.swift in Sources */,
|
||||
4E76E9219D6FBF66710E968F0EBB2B6F /* TransitionButton-dummy.m in Sources */,
|
||||
BA3C9378E4B337AF4060C20896A8B75B /* TransitionButton.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXTargetDependency section */
|
||||
F2F97193BA5938B0DCD86DC0DCF0ADD0 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
name = TransitionButton;
|
||||
target = ABF7088C2AA796DED67D342DA9344FBB /* TransitionButton */;
|
||||
targetProxy = E50F08149385F70E0F28481692637839 /* PBXContainerItemProxy */;
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
08FCC03B4B2E04428CC519F844EDDF12 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = B7752755FB852AAE2BE50938ADAD9F61 /* Pods-SwipeToConfirm.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-SwipeToConfirm/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.modulemap";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = Pods_SwipeToConfirm;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
343F4F9F080EF9646CBDC89B30ECCFD4 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 98D1434747244818C7D94444DFC5AAD1 /* TransitionButton.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
GCC_PREFIX_HEADER = "Target Support Files/TransitionButton/TransitionButton-prefix.pch";
|
||||
INFOPLIST_FILE = "Target Support Files/TransitionButton/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MODULEMAP_FILE = "Target Support Files/TransitionButton/TransitionButton.modulemap";
|
||||
PRODUCT_NAME = TransitionButton;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) ";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 4.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
39C5BC78A31CDE101068C530CAC7FA0F /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGNING_REQUIRED = NO;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"POD_CONFIGURATION_DEBUG=1",
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
|
||||
STRIP_INSTALLED_PRODUCT = NO;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
SYMROOT = "${SRCROOT}/../build";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
50E31DEC8E56F8B213104B77BD075FF2 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = E5BBCB977174C2C7A36221F828F080A6 /* Pods-SwipeToConfirmTests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-SwipeToConfirmTests/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.modulemap";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = Pods_SwipeToConfirmTests;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
89C8BB24E37B25BAEEB8FBA01EE05DAF /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGNING_REQUIRED = NO;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"POD_CONFIGURATION_RELEASE=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
|
||||
STRIP_INSTALLED_PRODUCT = NO;
|
||||
SYMROOT = "${SRCROOT}/../build";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
99ECF79ACD6D1DBB7A3435C650C5AF43 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = E4B6C7940C279C3C1C394C28D65310E2 /* Pods-SwipeToConfirm.release.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-SwipeToConfirm/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.modulemap";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = Pods_SwipeToConfirm;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
C3BA0D470CD36CA5EC327A50CE2DD70C /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = BF71804145C3725051D6AAEDE833BF3E /* Pods-SwipeToConfirmTests.release.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-SwipeToConfirmTests/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.modulemap";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = Pods_SwipeToConfirmTests;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
DB4B97FAA127AE1109DC4EE46E61B8C5 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 98D1434747244818C7D94444DFC5AAD1 /* TransitionButton.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
GCC_PREFIX_HEADER = "Target Support Files/TransitionButton/TransitionButton-prefix.pch";
|
||||
INFOPLIST_FILE = "Target Support Files/TransitionButton/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MODULEMAP_FILE = "Target Support Files/TransitionButton/TransitionButton.modulemap";
|
||||
PRODUCT_NAME = TransitionButton;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) ";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
SWIFT_VERSION = 4.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
102BEF7A7CF61F17EE9A7CD76EF6CF47 /* Build configuration list for PBXNativeTarget "TransitionButton" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
343F4F9F080EF9646CBDC89B30ECCFD4 /* Debug */,
|
||||
DB4B97FAA127AE1109DC4EE46E61B8C5 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
39C5BC78A31CDE101068C530CAC7FA0F /* Debug */,
|
||||
89C8BB24E37B25BAEEB8FBA01EE05DAF /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
46BE3A98C5A48D196A55C392D195D6F9 /* Build configuration list for PBXNativeTarget "Pods-SwipeToConfirmTests" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
50E31DEC8E56F8B213104B77BD075FF2 /* Debug */,
|
||||
C3BA0D470CD36CA5EC327A50CE2DD70C /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
75AF9DDF6E1746E8791F74E3F8AEC4CB /* Build configuration list for PBXNativeTarget "Pods-SwipeToConfirm" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
08FCC03B4B2E04428CC519F844EDDF12 /* Debug */,
|
||||
99ECF79ACD6D1DBB7A3435C650C5AF43 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */;
|
||||
}
|
||||
73
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/Pods-SwipeToConfirm.xcscheme
generated
Normal file
73
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/Pods-SwipeToConfirm.xcscheme
generated
Normal file
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0700"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "FFA21A13BBF73CC08F5736C3B5DEB8F2"
|
||||
BuildableName = "Pods_SwipeToConfirm.framework"
|
||||
BlueprintName = "Pods-SwipeToConfirm"
|
||||
ReferencedContainer = "container:Pods.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
language = ""
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
language = ""
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "FFA21A13BBF73CC08F5736C3B5DEB8F2"
|
||||
BuildableName = "Pods_SwipeToConfirm.framework"
|
||||
BlueprintName = "Pods-SwipeToConfirm"
|
||||
ReferencedContainer = "container:Pods.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
73
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/Pods-SwipeToConfirmTests.xcscheme
generated
Normal file
73
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/Pods-SwipeToConfirmTests.xcscheme
generated
Normal file
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0700"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "0934870EF5D8E658348D39893ED7229F"
|
||||
BuildableName = "Pods_SwipeToConfirmTests.framework"
|
||||
BlueprintName = "Pods-SwipeToConfirmTests"
|
||||
ReferencedContainer = "container:Pods.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
language = ""
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
language = ""
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "0934870EF5D8E658348D39893ED7229F"
|
||||
BuildableName = "Pods_SwipeToConfirmTests.framework"
|
||||
BlueprintName = "Pods-SwipeToConfirmTests"
|
||||
ReferencedContainer = "container:Pods.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
60
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/TransitionButton.xcscheme
generated
Normal file
60
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/TransitionButton.xcscheme
generated
Normal file
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0700"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForAnalyzing = "YES"
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = 'primary'
|
||||
BlueprintIdentifier = 'ABF7088C2AA796DED67D342DA9344FBB'
|
||||
BlueprintName = 'TransitionButton'
|
||||
ReferencedContainer = 'container:Pods.xcodeproj'
|
||||
BuildableName = 'TransitionButton.framework'>
|
||||
</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>
|
||||
32
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/xcschememanagement.plist
generated
Normal file
32
Pods/Pods.xcodeproj/xcuserdata/aemaeth.xcuserdatad/xcschemes/xcschememanagement.plist
generated
Normal file
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>Pods-SwipeToConfirm.xcscheme</key>
|
||||
<dict>
|
||||
<key>isShown</key>
|
||||
<false/>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<key>Pods-SwipeToConfirmTests.xcscheme</key>
|
||||
<dict>
|
||||
<key>isShown</key>
|
||||
<false/>
|
||||
<key>orderHint</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
<key>TransitionButton.xcscheme</key>
|
||||
<dict>
|
||||
<key>isShown</key>
|
||||
<false/>
|
||||
<key>orderHint</key>
|
||||
<integer>2</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict/>
|
||||
</dict>
|
||||
</plist>
|
||||
26
Pods/Target Support Files/Pods-SwipeToConfirm/Info.plist
generated
Normal file
26
Pods/Target Support Files/Pods-SwipeToConfirm/Info.plist
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>${CURRENT_PROJECT_VERSION}</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>
|
||||
26
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-acknowledgements.markdown
generated
Normal file
26
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-acknowledgements.markdown
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
# Acknowledgements
|
||||
This application makes use of the following third party libraries:
|
||||
|
||||
## TransitionButton
|
||||
|
||||
Copyright (c) 2017 Alaeddine M. <itechnodev@gmail.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
|
||||
Generated by CocoaPods - https://cocoapods.org
|
||||
58
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-acknowledgements.plist
generated
Normal file
58
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-acknowledgements.plist
generated
Normal file
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PreferenceSpecifiers</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>This application makes use of the following third party libraries:</string>
|
||||
<key>Title</key>
|
||||
<string>Acknowledgements</string>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>Copyright (c) 2017 Alaeddine M. <itechnodev@gmail.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
</string>
|
||||
<key>License</key>
|
||||
<string>MIT</string>
|
||||
<key>Title</key>
|
||||
<string>TransitionButton</string>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>Generated by CocoaPods - https://cocoapods.org</string>
|
||||
<key>Title</key>
|
||||
<string></string>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>StringsTable</key>
|
||||
<string>Acknowledgements</string>
|
||||
<key>Title</key>
|
||||
<string>Acknowledgements</string>
|
||||
</dict>
|
||||
</plist>
|
||||
5
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-dummy.m
generated
Normal file
5
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-dummy.m
generated
Normal file
@@ -0,0 +1,5 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
@interface PodsDummy_Pods_SwipeToConfirm : NSObject
|
||||
@end
|
||||
@implementation PodsDummy_Pods_SwipeToConfirm
|
||||
@end
|
||||
144
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-frameworks.sh
generated
Executable file
144
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-frameworks.sh
generated
Executable file
@@ -0,0 +1,144 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
|
||||
SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
|
||||
|
||||
# Used as a return value for each invocation of `strip_invalid_archs` function.
|
||||
STRIP_BINARY_RETVAL=0
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
# Copies and strips a vendored framework
|
||||
install_framework()
|
||||
{
|
||||
if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then
|
||||
local source="${BUILT_PRODUCTS_DIR}/$1"
|
||||
elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then
|
||||
local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")"
|
||||
elif [ -r "$1" ]; then
|
||||
local source="$1"
|
||||
fi
|
||||
|
||||
local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
|
||||
if [ -L "${source}" ]; then
|
||||
echo "Symlinked..."
|
||||
source="$(readlink "${source}")"
|
||||
fi
|
||||
|
||||
# Use filter instead of exclude so missing patterns don't throw errors.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
|
||||
|
||||
local basename
|
||||
basename="$(basename -s .framework "$1")"
|
||||
binary="${destination}/${basename}.framework/${basename}"
|
||||
if ! [ -r "$binary" ]; then
|
||||
binary="${destination}/${basename}"
|
||||
fi
|
||||
|
||||
# Strip invalid architectures so "fat" simulator / device frameworks work on device
|
||||
if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then
|
||||
strip_invalid_archs "$binary"
|
||||
fi
|
||||
|
||||
# Resign the code if required by the build settings to avoid unstable apps
|
||||
code_sign_if_enabled "${destination}/$(basename "$1")"
|
||||
|
||||
# Embed linked Swift runtime libraries. No longer necessary as of Xcode 7.
|
||||
if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then
|
||||
local swift_runtime_libs
|
||||
swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]})
|
||||
for lib in $swift_runtime_libs; do
|
||||
echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\""
|
||||
rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}"
|
||||
code_sign_if_enabled "${destination}/${lib}"
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
# Copies and strips a vendored dSYM
|
||||
install_dsym() {
|
||||
local source="$1"
|
||||
if [ -r "$source" ]; then
|
||||
# Copy the dSYM into a the targets temp dir.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}"
|
||||
|
||||
local basename
|
||||
basename="$(basename -s .framework.dSYM "$source")"
|
||||
binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}"
|
||||
|
||||
# Strip invalid architectures so "fat" simulator / device frameworks work on device
|
||||
if [[ "$(file "$binary")" == *"Mach-O dSYM companion"* ]]; then
|
||||
strip_invalid_archs "$binary"
|
||||
fi
|
||||
|
||||
if [[ $STRIP_BINARY_RETVAL == 1 ]]; then
|
||||
# Move the stripped file into its final destination.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}"
|
||||
else
|
||||
# The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing.
|
||||
touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Signs a framework with the provided identity
|
||||
code_sign_if_enabled() {
|
||||
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
|
||||
# Use the current code_sign_identitiy
|
||||
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
|
||||
local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'"
|
||||
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
code_sign_cmd="$code_sign_cmd &"
|
||||
fi
|
||||
echo "$code_sign_cmd"
|
||||
eval "$code_sign_cmd"
|
||||
fi
|
||||
}
|
||||
|
||||
# Strip invalid architectures
|
||||
strip_invalid_archs() {
|
||||
binary="$1"
|
||||
# Get architectures for current target binary
|
||||
binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)"
|
||||
# Intersect them with the architectures we are building for
|
||||
intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)"
|
||||
# If there are no archs supported by this binary then warn the user
|
||||
if [[ -z "$intersected_archs" ]]; then
|
||||
echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)."
|
||||
STRIP_BINARY_RETVAL=0
|
||||
return
|
||||
fi
|
||||
stripped=""
|
||||
for arch in $binary_archs; do
|
||||
if ! [[ "${ARCHS}" == *"$arch"* ]]; then
|
||||
# Strip non-valid architectures in-place
|
||||
lipo -remove "$arch" -output "$binary" "$binary" || exit 1
|
||||
stripped="$stripped $arch"
|
||||
fi
|
||||
done
|
||||
if [[ "$stripped" ]]; then
|
||||
echo "Stripped $binary of architectures:$stripped"
|
||||
fi
|
||||
STRIP_BINARY_RETVAL=1
|
||||
}
|
||||
|
||||
|
||||
if [[ "$CONFIGURATION" == "Debug" ]]; then
|
||||
install_framework "${BUILT_PRODUCTS_DIR}/TransitionButton/TransitionButton.framework"
|
||||
fi
|
||||
if [[ "$CONFIGURATION" == "Release" ]]; then
|
||||
install_framework "${BUILT_PRODUCTS_DIR}/TransitionButton/TransitionButton.framework"
|
||||
fi
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
wait
|
||||
fi
|
||||
106
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-resources.sh
generated
Executable file
106
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-resources.sh
generated
Executable file
@@ -0,0 +1,106 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
|
||||
RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
|
||||
> "$RESOURCES_TO_COPY"
|
||||
|
||||
XCASSET_FILES=()
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
case "${TARGETED_DEVICE_FAMILY}" in
|
||||
1,2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
|
||||
;;
|
||||
1)
|
||||
TARGET_DEVICE_ARGS="--target-device iphone"
|
||||
;;
|
||||
2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad"
|
||||
;;
|
||||
3)
|
||||
TARGET_DEVICE_ARGS="--target-device tv"
|
||||
;;
|
||||
4)
|
||||
TARGET_DEVICE_ARGS="--target-device watch"
|
||||
;;
|
||||
*)
|
||||
TARGET_DEVICE_ARGS="--target-device mac"
|
||||
;;
|
||||
esac
|
||||
|
||||
install_resource()
|
||||
{
|
||||
if [[ "$1" = /* ]] ; then
|
||||
RESOURCE_PATH="$1"
|
||||
else
|
||||
RESOURCE_PATH="${PODS_ROOT}/$1"
|
||||
fi
|
||||
if [[ ! -e "$RESOURCE_PATH" ]] ; then
|
||||
cat << EOM
|
||||
error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script.
|
||||
EOM
|
||||
exit 1
|
||||
fi
|
||||
case $RESOURCE_PATH in
|
||||
*.storyboard)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.xib)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.framework)
|
||||
echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
;;
|
||||
*.xcdatamodel)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom"
|
||||
;;
|
||||
*.xcdatamodeld)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd"
|
||||
;;
|
||||
*.xcmappingmodel)
|
||||
echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true
|
||||
xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm"
|
||||
;;
|
||||
*.xcassets)
|
||||
ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH"
|
||||
XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE")
|
||||
;;
|
||||
*)
|
||||
echo "$RESOURCE_PATH" || true
|
||||
echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then
|
||||
mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
fi
|
||||
rm -f "$RESOURCES_TO_COPY"
|
||||
|
||||
if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ]
|
||||
then
|
||||
# Find all other xcassets (this unfortunately includes those of path pods and other targets).
|
||||
OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d)
|
||||
while read line; do
|
||||
if [[ $line != "${PODS_ROOT}*" ]]; then
|
||||
XCASSET_FILES+=("$line")
|
||||
fi
|
||||
done <<<"$OTHER_XCASSETS"
|
||||
|
||||
printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
fi
|
||||
16
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-umbrella.h
generated
Normal file
16
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm-umbrella.h
generated
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
FOUNDATION_EXPORT double Pods_SwipeToConfirmVersionNumber;
|
||||
FOUNDATION_EXPORT const unsigned char Pods_SwipeToConfirmVersionString[];
|
||||
|
||||
11
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.debug.xcconfig
generated
Normal file
11
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.debug.xcconfig
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton/TransitionButton.framework/Headers"
|
||||
OTHER_LDFLAGS = $(inherited) -framework "TransitionButton"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
6
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.modulemap
generated
Normal file
6
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.modulemap
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
framework module Pods_SwipeToConfirm {
|
||||
umbrella header "Pods-SwipeToConfirm-umbrella.h"
|
||||
|
||||
export *
|
||||
module * { export * }
|
||||
}
|
||||
11
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.release.xcconfig
generated
Normal file
11
Pods/Target Support Files/Pods-SwipeToConfirm/Pods-SwipeToConfirm.release.xcconfig
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton/TransitionButton.framework/Headers"
|
||||
OTHER_LDFLAGS = $(inherited) -framework "TransitionButton"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
26
Pods/Target Support Files/Pods-SwipeToConfirmTests/Info.plist
generated
Normal file
26
Pods/Target Support Files/Pods-SwipeToConfirmTests/Info.plist
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>${CURRENT_PROJECT_VERSION}</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -0,0 +1,3 @@
|
||||
# Acknowledgements
|
||||
This application makes use of the following third party libraries:
|
||||
Generated by CocoaPods - https://cocoapods.org
|
||||
29
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-acknowledgements.plist
generated
Normal file
29
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-acknowledgements.plist
generated
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PreferenceSpecifiers</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>This application makes use of the following third party libraries:</string>
|
||||
<key>Title</key>
|
||||
<string>Acknowledgements</string>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>FooterText</key>
|
||||
<string>Generated by CocoaPods - https://cocoapods.org</string>
|
||||
<key>Title</key>
|
||||
<string></string>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>StringsTable</key>
|
||||
<string>Acknowledgements</string>
|
||||
<key>Title</key>
|
||||
<string>Acknowledgements</string>
|
||||
</dict>
|
||||
</plist>
|
||||
5
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-dummy.m
generated
Normal file
5
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-dummy.m
generated
Normal file
@@ -0,0 +1,5 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
@interface PodsDummy_Pods_SwipeToConfirmTests : NSObject
|
||||
@end
|
||||
@implementation PodsDummy_Pods_SwipeToConfirmTests
|
||||
@end
|
||||
137
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-frameworks.sh
generated
Executable file
137
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-frameworks.sh
generated
Executable file
@@ -0,0 +1,137 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
|
||||
SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
|
||||
|
||||
# Used as a return value for each invocation of `strip_invalid_archs` function.
|
||||
STRIP_BINARY_RETVAL=0
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
# Copies and strips a vendored framework
|
||||
install_framework()
|
||||
{
|
||||
if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then
|
||||
local source="${BUILT_PRODUCTS_DIR}/$1"
|
||||
elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then
|
||||
local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")"
|
||||
elif [ -r "$1" ]; then
|
||||
local source="$1"
|
||||
fi
|
||||
|
||||
local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
|
||||
if [ -L "${source}" ]; then
|
||||
echo "Symlinked..."
|
||||
source="$(readlink "${source}")"
|
||||
fi
|
||||
|
||||
# Use filter instead of exclude so missing patterns don't throw errors.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
|
||||
|
||||
local basename
|
||||
basename="$(basename -s .framework "$1")"
|
||||
binary="${destination}/${basename}.framework/${basename}"
|
||||
if ! [ -r "$binary" ]; then
|
||||
binary="${destination}/${basename}"
|
||||
fi
|
||||
|
||||
# Strip invalid architectures so "fat" simulator / device frameworks work on device
|
||||
if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then
|
||||
strip_invalid_archs "$binary"
|
||||
fi
|
||||
|
||||
# Resign the code if required by the build settings to avoid unstable apps
|
||||
code_sign_if_enabled "${destination}/$(basename "$1")"
|
||||
|
||||
# Embed linked Swift runtime libraries. No longer necessary as of Xcode 7.
|
||||
if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then
|
||||
local swift_runtime_libs
|
||||
swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]})
|
||||
for lib in $swift_runtime_libs; do
|
||||
echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\""
|
||||
rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}"
|
||||
code_sign_if_enabled "${destination}/${lib}"
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
# Copies and strips a vendored dSYM
|
||||
install_dsym() {
|
||||
local source="$1"
|
||||
if [ -r "$source" ]; then
|
||||
# Copy the dSYM into a the targets temp dir.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}"
|
||||
|
||||
local basename
|
||||
basename="$(basename -s .framework.dSYM "$source")"
|
||||
binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}"
|
||||
|
||||
# Strip invalid architectures so "fat" simulator / device frameworks work on device
|
||||
if [[ "$(file "$binary")" == *"Mach-O dSYM companion"* ]]; then
|
||||
strip_invalid_archs "$binary"
|
||||
fi
|
||||
|
||||
if [[ $STRIP_BINARY_RETVAL == 1 ]]; then
|
||||
# Move the stripped file into its final destination.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}"
|
||||
else
|
||||
# The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing.
|
||||
touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Signs a framework with the provided identity
|
||||
code_sign_if_enabled() {
|
||||
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
|
||||
# Use the current code_sign_identitiy
|
||||
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
|
||||
local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'"
|
||||
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
code_sign_cmd="$code_sign_cmd &"
|
||||
fi
|
||||
echo "$code_sign_cmd"
|
||||
eval "$code_sign_cmd"
|
||||
fi
|
||||
}
|
||||
|
||||
# Strip invalid architectures
|
||||
strip_invalid_archs() {
|
||||
binary="$1"
|
||||
# Get architectures for current target binary
|
||||
binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)"
|
||||
# Intersect them with the architectures we are building for
|
||||
intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)"
|
||||
# If there are no archs supported by this binary then warn the user
|
||||
if [[ -z "$intersected_archs" ]]; then
|
||||
echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)."
|
||||
STRIP_BINARY_RETVAL=0
|
||||
return
|
||||
fi
|
||||
stripped=""
|
||||
for arch in $binary_archs; do
|
||||
if ! [[ "${ARCHS}" == *"$arch"* ]]; then
|
||||
# Strip non-valid architectures in-place
|
||||
lipo -remove "$arch" -output "$binary" "$binary" || exit 1
|
||||
stripped="$stripped $arch"
|
||||
fi
|
||||
done
|
||||
if [[ "$stripped" ]]; then
|
||||
echo "Stripped $binary of architectures:$stripped"
|
||||
fi
|
||||
STRIP_BINARY_RETVAL=1
|
||||
}
|
||||
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
wait
|
||||
fi
|
||||
106
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-resources.sh
generated
Executable file
106
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-resources.sh
generated
Executable file
@@ -0,0 +1,106 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
|
||||
RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
|
||||
> "$RESOURCES_TO_COPY"
|
||||
|
||||
XCASSET_FILES=()
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
case "${TARGETED_DEVICE_FAMILY}" in
|
||||
1,2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
|
||||
;;
|
||||
1)
|
||||
TARGET_DEVICE_ARGS="--target-device iphone"
|
||||
;;
|
||||
2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad"
|
||||
;;
|
||||
3)
|
||||
TARGET_DEVICE_ARGS="--target-device tv"
|
||||
;;
|
||||
4)
|
||||
TARGET_DEVICE_ARGS="--target-device watch"
|
||||
;;
|
||||
*)
|
||||
TARGET_DEVICE_ARGS="--target-device mac"
|
||||
;;
|
||||
esac
|
||||
|
||||
install_resource()
|
||||
{
|
||||
if [[ "$1" = /* ]] ; then
|
||||
RESOURCE_PATH="$1"
|
||||
else
|
||||
RESOURCE_PATH="${PODS_ROOT}/$1"
|
||||
fi
|
||||
if [[ ! -e "$RESOURCE_PATH" ]] ; then
|
||||
cat << EOM
|
||||
error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script.
|
||||
EOM
|
||||
exit 1
|
||||
fi
|
||||
case $RESOURCE_PATH in
|
||||
*.storyboard)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.xib)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.framework)
|
||||
echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
;;
|
||||
*.xcdatamodel)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom"
|
||||
;;
|
||||
*.xcdatamodeld)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd"
|
||||
;;
|
||||
*.xcmappingmodel)
|
||||
echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true
|
||||
xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm"
|
||||
;;
|
||||
*.xcassets)
|
||||
ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH"
|
||||
XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE")
|
||||
;;
|
||||
*)
|
||||
echo "$RESOURCE_PATH" || true
|
||||
echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then
|
||||
mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
fi
|
||||
rm -f "$RESOURCES_TO_COPY"
|
||||
|
||||
if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ]
|
||||
then
|
||||
# Find all other xcassets (this unfortunately includes those of path pods and other targets).
|
||||
OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d)
|
||||
while read line; do
|
||||
if [[ $line != "${PODS_ROOT}*" ]]; then
|
||||
XCASSET_FILES+=("$line")
|
||||
fi
|
||||
done <<<"$OTHER_XCASSETS"
|
||||
|
||||
printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
|
||||
fi
|
||||
16
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-umbrella.h
generated
Normal file
16
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests-umbrella.h
generated
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
FOUNDATION_EXPORT double Pods_SwipeToConfirmTestsVersionNumber;
|
||||
FOUNDATION_EXPORT const unsigned char Pods_SwipeToConfirmTestsVersionString[];
|
||||
|
||||
8
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.debug.xcconfig
generated
Normal file
8
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.debug.xcconfig
generated
Normal file
@@ -0,0 +1,8 @@
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton/TransitionButton.framework/Headers"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
6
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.modulemap
generated
Normal file
6
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.modulemap
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
framework module Pods_SwipeToConfirmTests {
|
||||
umbrella header "Pods-SwipeToConfirmTests-umbrella.h"
|
||||
|
||||
export *
|
||||
module * { export * }
|
||||
}
|
||||
8
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.release.xcconfig
generated
Normal file
8
Pods/Target Support Files/Pods-SwipeToConfirmTests/Pods-SwipeToConfirmTests.release.xcconfig
generated
Normal file
@@ -0,0 +1,8 @@
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton/TransitionButton.framework/Headers"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
26
Pods/Target Support Files/TransitionButton/Info.plist
generated
Normal file
26
Pods/Target Support Files/TransitionButton/Info.plist
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.3.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>${CURRENT_PROJECT_VERSION}</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>
|
||||
5
Pods/Target Support Files/TransitionButton/TransitionButton-dummy.m
generated
Normal file
5
Pods/Target Support Files/TransitionButton/TransitionButton-dummy.m
generated
Normal file
@@ -0,0 +1,5 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
@interface PodsDummy_TransitionButton : NSObject
|
||||
@end
|
||||
@implementation PodsDummy_TransitionButton
|
||||
@end
|
||||
12
Pods/Target Support Files/TransitionButton/TransitionButton-prefix.pch
generated
Normal file
12
Pods/Target Support Files/TransitionButton/TransitionButton-prefix.pch
generated
Normal file
@@ -0,0 +1,12 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
16
Pods/Target Support Files/TransitionButton/TransitionButton-umbrella.h
generated
Normal file
16
Pods/Target Support Files/TransitionButton/TransitionButton-umbrella.h
generated
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
FOUNDATION_EXPORT double TransitionButtonVersionNumber;
|
||||
FOUNDATION_EXPORT const unsigned char TransitionButtonVersionString[];
|
||||
|
||||
6
Pods/Target Support Files/TransitionButton/TransitionButton.modulemap
generated
Normal file
6
Pods/Target Support Files/TransitionButton/TransitionButton.modulemap
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
framework module TransitionButton {
|
||||
umbrella header "TransitionButton-umbrella.h"
|
||||
|
||||
export *
|
||||
module * { export * }
|
||||
}
|
||||
11
Pods/Target Support Files/TransitionButton/TransitionButton.xcconfig
generated
Normal file
11
Pods/Target Support Files/TransitionButton/TransitionButton.xcconfig
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/TransitionButton
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public"
|
||||
OTHER_LDFLAGS = -framework "UIKit"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_ROOT = ${SRCROOT}
|
||||
PODS_TARGET_SRCROOT = ${PODS_ROOT}/TransitionButton
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||
SKIP_INSTALL = YES
|
||||
19
Pods/TransitionButton/LICENSE
generated
Executable file
19
Pods/TransitionButton/LICENSE
generated
Executable file
@@ -0,0 +1,19 @@
|
||||
Copyright (c) 2017 Alaeddine M. <itechnodev@gmail.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
150
Pods/TransitionButton/README.md
generated
Executable file
150
Pods/TransitionButton/README.md
generated
Executable file
@@ -0,0 +1,150 @@
|
||||
# TransitionButton
|
||||
|
||||
[](https://travis-ci.org/AladinWay/TransitionButton)
|
||||
[](http://cocoapods.org/pods/TransitionButton)
|
||||
[](http://cocoapods.org/pods/TransitionButton)
|
||||
[](http://cocoapods.org/pods/TransitionButton)
|
||||
[](https://github.com/Carthage/Carthage)
|
||||
|
||||
## Concept
|
||||
|
||||
<img src="https://cdn.dribbble.com/users/62319/screenshots/1945593/shot.gif" height="527">
|
||||
|
||||
Source: [Dribbble](https://dribbble.com/shots/1945593-Login-Home-Screen)
|
||||
|
||||
## Preview
|
||||
|
||||
- **Expand animation**:
|
||||
|
||||
<img src="http://itechnodev.com/img/success.gif" height="527">
|
||||
|
||||
- **Shake animation**:
|
||||
|
||||
<img src="http://itechnodev.com/img/error.gif" height="527">
|
||||
|
||||
## Example
|
||||
|
||||
To run the example project, clone the repo, then open the workspace `TransitionButton.xcworkspace` run using `iOS Example` scheme.
|
||||
|
||||
## Installation
|
||||
|
||||
### CocoaPods
|
||||
|
||||
[CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command:
|
||||
|
||||
```bash
|
||||
$ gem install cocoapods
|
||||
```
|
||||
|
||||
To integrate TransitionButton into your Xcode project using CocoaPods, specify it in your `Podfile`:
|
||||
|
||||
```ruby
|
||||
use_frameworks!
|
||||
|
||||
pod 'TransitionButton'
|
||||
```
|
||||
|
||||
Then, run the following command:
|
||||
|
||||
```bash
|
||||
$ pod install
|
||||
```
|
||||
|
||||
|
||||
### Carthage
|
||||
|
||||
[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
|
||||
|
||||
You can install Carthage with [Homebrew](http://brew.sh/) using the following command:
|
||||
|
||||
```bash
|
||||
$ brew update
|
||||
$ brew install carthage
|
||||
```
|
||||
|
||||
To integrate TransitionButton into your Xcode project using Carthage, specify it in your `Cartfile`:
|
||||
|
||||
```ogdl
|
||||
github "aladinway/TransitionButton"
|
||||
```
|
||||
|
||||
Run `carthage update` to build the framework and on your application targets’ “General” settings tab, in the “Embedded Binaries” section, drag and drop the built `TransitionButton.framework` from the Carthage/Build folder on disk.
|
||||
|
||||
## Usage
|
||||
`TransitionButton` is a subclass of `UIButton`. In addition to all what `UIButton` provides. `TransitionButton` has two main methods :
|
||||
|
||||
- `startAnimation()` : start animating the button with a loading spinner, it should be called just before starting a task, exemple: before a network call to check the login information.
|
||||
|
||||
- `stopAnimation(animationStyle: StopAnimationStyle, revertAfterDelay delay: TimeInterval, completion: (() -> Void)?)` : stop animating the button.
|
||||
|
||||
- `animationStyle`: the style of the stop animation.
|
||||
- `revertAfterDelay`: revert the button to the original state after a delay to give opportunity to custom transition.
|
||||
- `completion`: a completion block to be called once the animation finished, it may be useful to transit to another view controller, example transit to the home screen from the login screen.
|
||||
|
||||
For the stop Animation paramteter `StopAnimationStyle` there is three styles :
|
||||
|
||||
|
||||
- `StopAnimationStyle.normal`: just revert the button to the original state.
|
||||
- `StopAnimationStyle.expand`: expand the button and cover all the screen, useful to do transit animation.
|
||||
- `StopAnimationStyle.shake`: revert the button to original state and make a shaoe animation, useful to reflect that something went wrong
|
||||
|
||||
## Example
|
||||
|
||||
import TransitionButton // 1: First import the TransitionButton library
|
||||
import UIKit
|
||||
|
||||
class FirstViewController: UIViewController {
|
||||
|
||||
let button = TransitionButton(frame: CGRect(x: 100, y: 100, width: 100, height: 40)) // please use Autolayout in real project
|
||||
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
|
||||
self.view.addSubview(button)
|
||||
|
||||
button.backgroundColor = .red
|
||||
button.setTitle("button", for: .normal)
|
||||
button.cornerRadius = 20
|
||||
button.spinnerColor = .white
|
||||
button.addTarget(self, action: #selector(buttonAction(_:)), for: .touchUpInside)
|
||||
}
|
||||
|
||||
@IBAction func buttonAction(_ button: TransitionButton) {
|
||||
button.startAnimation() // 2: Then start the animation when the user tap the button
|
||||
let qualityOfServiceClass = DispatchQoS.QoSClass.background
|
||||
let backgroundQueue = DispatchQueue.global(qos: qualityOfServiceClass)
|
||||
backgroundQueue.async(execute: {
|
||||
|
||||
sleep(3) // 3: Do your networking task or background work here.
|
||||
|
||||
DispatchQueue.main.async(execute: { () -> Void in
|
||||
// 4: Stop the animation, here you have three options for the `animationStyle` property:
|
||||
// .expand: useful when the task has been compeletd successfully and you want to expand the button and transit to another view controller in the completion callback
|
||||
// .shake: when you want to reflect to the user that the task did not complete successfly
|
||||
// .normal
|
||||
button.stopAnimation(animationStyle: .expand, completion: {
|
||||
let secondVC = UIViewController()
|
||||
self.present(secondVC, animated: true, completion: nil)
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
When using the expand animation it's important that you use a custom fade animation to move from the frist view controller to the second view controller to override the native slide animation. You can use the call `CustomTransitionViewController` it's a subclass of `UIViewController` which provides a built-in fade transition animation, here is how your second view contoller should looks like :
|
||||
|
||||
import TransitionButton
|
||||
|
||||
class SecondViewController: CustomTransitionViewController {
|
||||
|
||||
}
|
||||
|
||||
And you are done.
|
||||
|
||||
## Author
|
||||
|
||||
Alaeddine M. <itechnodev@gmail.com>
|
||||
|
||||
## License
|
||||
|
||||
TransitionButton is available under the MIT license. See the LICENSE file for more info.
|
||||
115
Pods/TransitionButton/Source/CGRectExtension.swift
generated
Executable file
115
Pods/TransitionButton/Source/CGRectExtension.swift
generated
Executable file
@@ -0,0 +1,115 @@
|
||||
//
|
||||
// CGRectExtension.swift
|
||||
// TransitionButton
|
||||
//
|
||||
// Created by Alaeddine M. on 11/1/15.
|
||||
// Copyright (c) 2015 Alaeddine M. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
extension CGRect {
|
||||
|
||||
var x: CGFloat {
|
||||
get {
|
||||
return self.origin.x
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: newValue, y: self.y, width: self.width, height: self.height)
|
||||
}
|
||||
}
|
||||
|
||||
var y: CGFloat {
|
||||
get {
|
||||
return self.origin.y
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: self.x, y: newValue, width: self.width, height: self.height)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var width: CGFloat {
|
||||
get {
|
||||
return self.size.width
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: self.x, y: self.y, width: newValue, height: self.height)
|
||||
}
|
||||
}
|
||||
|
||||
var height: CGFloat {
|
||||
get {
|
||||
return self.size.height
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: self.x, y: self.y, width: self.width, height: newValue)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var top: CGFloat {
|
||||
get {
|
||||
return self.origin.y
|
||||
}
|
||||
set {
|
||||
y = newValue
|
||||
}
|
||||
}
|
||||
|
||||
var bottom: CGFloat {
|
||||
get {
|
||||
return self.origin.y + self.size.height
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: x, y: newValue - height, width: width, height: height)
|
||||
}
|
||||
}
|
||||
|
||||
var left: CGFloat {
|
||||
get {
|
||||
return self.origin.x
|
||||
}
|
||||
set {
|
||||
self.x = newValue
|
||||
}
|
||||
}
|
||||
|
||||
var right: CGFloat {
|
||||
get {
|
||||
return x + width
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: newValue - width, y: y, width: width, height: height)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var midX: CGFloat {
|
||||
get {
|
||||
return self.x + self.width / 2
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: newValue - width / 2, y: y, width: width, height: height)
|
||||
}
|
||||
}
|
||||
|
||||
var midY: CGFloat {
|
||||
get {
|
||||
return self.y + self.height / 2
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: x, y: newValue - height / 2, width: width, height: height)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var center: CGPoint {
|
||||
get {
|
||||
return CGPoint(x: self.midX, y: self.midY)
|
||||
}
|
||||
set {
|
||||
self = CGRect(x: newValue.x - width / 2, y: newValue.y - height / 2, width: width, height: height)
|
||||
}
|
||||
}
|
||||
}
|
||||
25
Pods/TransitionButton/Source/CustomTransitionViewController.swift
generated
Normal file
25
Pods/TransitionButton/Source/CustomTransitionViewController.swift
generated
Normal file
@@ -0,0 +1,25 @@
|
||||
//
|
||||
// CustomTransitionViewController.swift
|
||||
// TransitionButton
|
||||
//
|
||||
// Created by Alaeddine M. on 11/1/15.
|
||||
// Copyright (c) 2015 Alaeddine M. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
open class CustomTransitionViewController: UIViewController, UIViewControllerTransitioningDelegate {
|
||||
|
||||
open override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
self.transitioningDelegate = self
|
||||
}
|
||||
|
||||
public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
|
||||
return FadeTransition(transitionDuration: 0.5, startingAlpha: 0.8)
|
||||
}
|
||||
|
||||
public func animationController(forDismissed dismissed: UIViewController) -> UIViewControllerAnimatedTransitioning? {
|
||||
return FadeTransition(transitionDuration: 0.5, startingAlpha: 0.8)
|
||||
}
|
||||
}
|
||||
46
Pods/TransitionButton/Source/FadeTransition.swift
generated
Executable file
46
Pods/TransitionButton/Source/FadeTransition.swift
generated
Executable file
@@ -0,0 +1,46 @@
|
||||
//
|
||||
// FadeTransition.swift
|
||||
// TransitionButton
|
||||
//
|
||||
// Created by Alaeddine M. on 11/1/15.
|
||||
// Copyright (c) 2015 Alaeddine M. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
|
||||
open class FadeTransition: NSObject, UIViewControllerAnimatedTransitioning {
|
||||
var transitionDuration: TimeInterval = 0.5
|
||||
var startingAlpha: CGFloat = 0.0
|
||||
|
||||
public convenience init(transitionDuration: TimeInterval, startingAlpha: CGFloat){
|
||||
self.init()
|
||||
self.transitionDuration = transitionDuration
|
||||
self.startingAlpha = startingAlpha
|
||||
}
|
||||
|
||||
open func transitionDuration(using transitionContext: UIViewControllerContextTransitioning?) -> TimeInterval {
|
||||
return transitionDuration
|
||||
}
|
||||
|
||||
open func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
|
||||
let containerView = transitionContext.containerView
|
||||
|
||||
let toView = transitionContext.view(forKey: .to)!
|
||||
let fromView = transitionContext.view(forKey: .from)!
|
||||
|
||||
toView.alpha = startingAlpha
|
||||
fromView.alpha = 0.8
|
||||
|
||||
toView.frame = containerView.frame
|
||||
containerView.addSubview(toView)
|
||||
|
||||
UIView.animate(withDuration: self.transitionDuration(using: transitionContext), animations: { () -> Void in
|
||||
toView.alpha = 1.0
|
||||
fromView.alpha = 0.0
|
||||
}, completion: { _ in
|
||||
fromView.alpha = 1.0
|
||||
transitionContext.completeTransition(true)
|
||||
})
|
||||
}
|
||||
}
|
||||
61
Pods/TransitionButton/Source/SpinerLayer.swift
generated
Executable file
61
Pods/TransitionButton/Source/SpinerLayer.swift
generated
Executable file
@@ -0,0 +1,61 @@
|
||||
//
|
||||
// SpinerLayer.swift
|
||||
// TransitionButton
|
||||
//
|
||||
// Created by Alaeddine M. on 11/1/15.
|
||||
// Copyright (c) 2015 Alaeddine M. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
|
||||
class SpinerLayer: CAShapeLayer {
|
||||
|
||||
var spinnerColor = UIColor.white {
|
||||
didSet {
|
||||
strokeColor = spinnerColor.cgColor
|
||||
}
|
||||
}
|
||||
|
||||
init(frame:CGRect) {
|
||||
super.init()
|
||||
let radius:CGFloat = (frame.height / 2) * 0.5
|
||||
self.frame = CGRect(x: 0, y: 0, width: frame.height, height: frame.height)
|
||||
let center = CGPoint(x: frame.height / 2, y: bounds.center.y)
|
||||
let startAngle = 0 - Double.pi/2
|
||||
let endAngle = Double.pi * 2 - Double.pi/2
|
||||
let clockwise: Bool = true
|
||||
self.path = UIBezierPath(arcCenter: center, radius: radius, startAngle: CGFloat(startAngle), endAngle: CGFloat(endAngle), clockwise: clockwise).cgPath
|
||||
|
||||
self.fillColor = nil
|
||||
self.strokeColor = spinnerColor.cgColor
|
||||
self.lineWidth = 1
|
||||
|
||||
self.strokeEnd = 0.4
|
||||
self.isHidden = true
|
||||
}
|
||||
|
||||
required init?(coder aDecoder: NSCoder) {
|
||||
fatalError("init(coder:) has not been implemented")
|
||||
}
|
||||
|
||||
func animation() {
|
||||
self.isHidden = false
|
||||
let rotate = CABasicAnimation(keyPath: "transform.rotation.z")
|
||||
rotate.fromValue = 0
|
||||
rotate.toValue = Double.pi * 2
|
||||
rotate.duration = 0.4
|
||||
rotate.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
|
||||
|
||||
rotate.repeatCount = HUGE
|
||||
rotate.fillMode = kCAFillModeForwards
|
||||
rotate.isRemovedOnCompletion = false
|
||||
self.add(rotate, forKey: rotate.keyPath)
|
||||
|
||||
}
|
||||
|
||||
func stopAnimation() {
|
||||
self.isHidden = true
|
||||
self.removeAllAnimations()
|
||||
}
|
||||
}
|
||||
223
Pods/TransitionButton/Source/TransitionButton.swift
generated
Executable file
223
Pods/TransitionButton/Source/TransitionButton.swift
generated
Executable file
@@ -0,0 +1,223 @@
|
||||
//
|
||||
// TransitionButton.swift
|
||||
// TransitionButton
|
||||
//
|
||||
// Created by Alaeddine M. on 11/1/15.
|
||||
// Copyright (c) 2015 Alaeddine M. All rights reserved.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import UIKit
|
||||
|
||||
/**
|
||||
Stop animation style of the `TransitionButton`.
|
||||
|
||||
- normal: just revert the button to the original state.
|
||||
- expand: expand the button and cover all the screen, useful to do transit animation.
|
||||
- shake: revert the button to original state and make a shaoe animation, useful to reflect that something went wrong
|
||||
*/
|
||||
public enum StopAnimationStyle {
|
||||
case normal
|
||||
case expand
|
||||
case shake
|
||||
}
|
||||
|
||||
@IBDesignable
|
||||
|
||||
|
||||
/// UIButton sublass for loading and transition animation. Useful for network based application or where you need to animate an action button while doing background tasks.
|
||||
|
||||
open class TransitionButton : UIButton, UIViewControllerTransitioningDelegate, CAAnimationDelegate {
|
||||
|
||||
/// the color of the spinner while animating the button
|
||||
@IBInspectable open var spinnerColor: UIColor = UIColor.white {
|
||||
didSet {
|
||||
spiner.spinnerColor = spinnerColor
|
||||
}
|
||||
}
|
||||
|
||||
/// the background of the button in disabled state
|
||||
@IBInspectable open var disabledBackgroundColor: UIColor = UIColor.lightGray {
|
||||
didSet {
|
||||
self.setBackgroundImage(UIImage(color: disabledBackgroundColor), for: .disabled)
|
||||
}
|
||||
}
|
||||
|
||||
/// the corner radius value to have a button with rounded corners.
|
||||
@IBInspectable open var cornerRadius: CGFloat = 0 {
|
||||
didSet {
|
||||
layer.cornerRadius = cornerRadius
|
||||
layer.masksToBounds = cornerRadius > 0
|
||||
}
|
||||
}
|
||||
|
||||
private lazy var spiner: SpinerLayer = {
|
||||
let spiner = SpinerLayer(frame: self.frame)
|
||||
self.layer.addSublayer(spiner)
|
||||
return spiner
|
||||
}()
|
||||
|
||||
private var cachedTitle: String?
|
||||
private var cachedImage: UIImage?
|
||||
|
||||
private let springGoEase:CAMediaTimingFunction = CAMediaTimingFunction(controlPoints: 0.45, -0.36, 0.44, 0.92)
|
||||
private let shrinkCurve:CAMediaTimingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
|
||||
private let expandCurve:CAMediaTimingFunction = CAMediaTimingFunction(controlPoints: 0.95, 0.02, 1, 0.05)
|
||||
private let shrinkDuration: CFTimeInterval = 0.1
|
||||
|
||||
public override init(frame: CGRect) {
|
||||
super.init(frame: frame)
|
||||
self.setup()
|
||||
}
|
||||
|
||||
public required init(coder aDecoder: NSCoder) {
|
||||
super.init(coder: aDecoder)!
|
||||
self.setup()
|
||||
}
|
||||
|
||||
private func setup() {
|
||||
self.clipsToBounds = true
|
||||
spiner.spinnerColor = spinnerColor
|
||||
}
|
||||
|
||||
/**
|
||||
start animating the button, before starting a task, exemple: before a network call.
|
||||
*/
|
||||
open func startAnimation() {
|
||||
self.isUserInteractionEnabled = false // Disable the user interaction during the animation
|
||||
self.cachedTitle = title(for: .normal) // cache title before animation of spiner
|
||||
self.cachedImage = image(for: .normal) // cache image before animation of spiner
|
||||
|
||||
self.setTitle("", for: .normal) // place an empty string as title to display a spiner
|
||||
self.setImage(nil, for: .normal) // remove the image, if any, before displaying the spinner
|
||||
|
||||
UIView.animate(withDuration: 0.1, animations: { () -> Void in
|
||||
self.layer.cornerRadius = self.frame.height / 2 // corner radius should be half the height to have a circle corners
|
||||
}, completion: { completed -> Void in
|
||||
self.shrink() // reduce the width to be equal to the height in order to have a circle
|
||||
self.spiner.animation() // animate spinner
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
stop animating the button.
|
||||
|
||||
- Parameter animationStyle: the style of the stop animation.
|
||||
- Parameter revertAfterDelay: revert the button to the original state after a delay to give opportunity to custom transition.
|
||||
- Parameter completion: a callback closure to be called once the animation finished, it may be useful to transit to another view controller, example transit to the home screen from the login screen.
|
||||
|
||||
*/
|
||||
open func stopAnimation(animationStyle:StopAnimationStyle = .normal, revertAfterDelay delay: TimeInterval = 1.0, completion:(()->Void)? = nil) {
|
||||
|
||||
switch animationStyle {
|
||||
case .normal:
|
||||
completion?()
|
||||
// We return to original state after a delay to give opportunity to custom transition
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + delay) {
|
||||
self.setOriginalState()
|
||||
}
|
||||
case .shake:
|
||||
completion?()
|
||||
// We return to original state after a delay to give opportunity to custom transition
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + delay) {
|
||||
self.setOriginalState()
|
||||
self.shakeAnimation()
|
||||
}
|
||||
case .expand:
|
||||
self.spiner.stopAnimation() // before animate the expand animation we need to hide the spiner first
|
||||
self.expand(completion: completion, revertDelay:delay) // scale the round button to fill the screen
|
||||
}
|
||||
}
|
||||
|
||||
private func shakeAnimation() {
|
||||
let keyFrame = CAKeyframeAnimation(keyPath: "position")
|
||||
let point = self.layer.position
|
||||
keyFrame.values = [NSValue(cgPoint: CGPoint(x: CGFloat(point.x), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: CGPoint(x: CGFloat(point.x - 10), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: CGPoint(x: CGFloat(point.x + 10), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: CGPoint(x: CGFloat(point.x - 10), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: CGPoint(x: CGFloat(point.x + 10), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: CGPoint(x: CGFloat(point.x - 10), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: CGPoint(x: CGFloat(point.x + 10), y: CGFloat(point.y))),
|
||||
NSValue(cgPoint: point)]
|
||||
|
||||
keyFrame.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
keyFrame.duration = 0.7
|
||||
self.layer.position = point
|
||||
self.layer.add(keyFrame, forKey: keyFrame.keyPath)
|
||||
}
|
||||
|
||||
private func setOriginalState() {
|
||||
self.animateToOriginalWidth()
|
||||
self.spiner.stopAnimation()
|
||||
self.setTitle(self.cachedTitle, for: .normal)
|
||||
self.setImage(self.cachedImage, for: .normal)
|
||||
self.isUserInteractionEnabled = true // enable again the user interaction
|
||||
self.layer.cornerRadius = self.cornerRadius
|
||||
}
|
||||
|
||||
private func animateToOriginalWidth() {
|
||||
let shrinkAnim = CABasicAnimation(keyPath: "bounds.size.width")
|
||||
shrinkAnim.fromValue = (self.bounds.height)
|
||||
shrinkAnim.toValue = (self.bounds.width)
|
||||
shrinkAnim.duration = shrinkDuration
|
||||
shrinkAnim.timingFunction = shrinkCurve
|
||||
shrinkAnim.fillMode = kCAFillModeForwards
|
||||
shrinkAnim.isRemovedOnCompletion = false
|
||||
self.layer.add(shrinkAnim, forKey: shrinkAnim.keyPath)
|
||||
}
|
||||
|
||||
private func shrink() {
|
||||
let shrinkAnim = CABasicAnimation(keyPath: "bounds.size.width")
|
||||
shrinkAnim.fromValue = frame.width
|
||||
shrinkAnim.toValue = frame.height
|
||||
shrinkAnim.duration = shrinkDuration
|
||||
shrinkAnim.timingFunction = shrinkCurve
|
||||
shrinkAnim.fillMode = kCAFillModeForwards
|
||||
shrinkAnim.isRemovedOnCompletion = false
|
||||
|
||||
layer.add(shrinkAnim, forKey: shrinkAnim.keyPath)
|
||||
}
|
||||
|
||||
private func expand(completion:(()->Void)?, revertDelay: TimeInterval) {
|
||||
let expandAnim = CABasicAnimation(keyPath: "transform.scale")
|
||||
expandAnim.fromValue = 1.0
|
||||
expandAnim.toValue = 26.0
|
||||
expandAnim.timingFunction = expandCurve
|
||||
expandAnim.duration = 0.4
|
||||
expandAnim.fillMode = kCAFillModeForwards
|
||||
expandAnim.isRemovedOnCompletion = false
|
||||
|
||||
CATransaction.setCompletionBlock {
|
||||
completion?()
|
||||
// We return to original state after a delay to give opportunity to custom transition
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + revertDelay) {
|
||||
self.setOriginalState()
|
||||
self.layer.removeAllAnimations() // make sure we remove all animation
|
||||
}
|
||||
}
|
||||
|
||||
layer.add(expandAnim, forKey: expandAnim.keyPath)
|
||||
|
||||
CATransaction.commit()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public extension UIImage {
|
||||
public convenience init?(color: UIColor, size: CGSize = CGSize(width: 1, height: 1)) {
|
||||
let rect = CGRect(origin: .zero, size: size)
|
||||
UIGraphicsBeginImageContextWithOptions(rect.size, false, 0.0)
|
||||
color.setFill()
|
||||
UIRectFill(rect)
|
||||
let image = UIGraphicsGetImageFromCurrentImageContext()
|
||||
UIGraphicsEndImageContext()
|
||||
|
||||
guard let cgImage = image!.cgImage else { return nil }
|
||||
self.init(cgImage: cgImage)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user