From 50304254b4172de79bc92422f54227b9adbfc456 Mon Sep 17 00:00:00 2001 From: Rajan Shah Date: Tue, 21 Feb 2017 12:05:26 +0530 Subject: [PATCH] Update Desc --- Example/Podfile.lock | 16 + .../ValidatorExtension.podspec.json | 22 + Example/Pods/Manifest.lock | 16 + Example/Pods/Pods.xcodeproj/project.pbxproj | 707 ++++++++++++++++++ .../Info.plist | 26 + ...xtension_Example-acknowledgements.markdown | 26 + ...orExtension_Example-acknowledgements.plist | 58 ++ .../Pods-ValidatorExtension_Example-dummy.m | 5 + ...s-ValidatorExtension_Example-frameworks.sh | 99 +++ ...ds-ValidatorExtension_Example-resources.sh | 99 +++ ...Pods-ValidatorExtension_Example-umbrella.h | 16 + ...-ValidatorExtension_Example.debug.xcconfig | 10 + .../Pods-ValidatorExtension_Example.modulemap | 6 + ...alidatorExtension_Example.release.xcconfig | 10 + .../Pods-ValidatorExtension_Tests/Info.plist | 26 + ...rExtension_Tests-acknowledgements.markdown | 3 + ...atorExtension_Tests-acknowledgements.plist | 29 + .../Pods-ValidatorExtension_Tests-dummy.m | 5 + ...ods-ValidatorExtension_Tests-frameworks.sh | 92 +++ ...Pods-ValidatorExtension_Tests-resources.sh | 99 +++ .../Pods-ValidatorExtension_Tests-umbrella.h | 16 + ...ds-ValidatorExtension_Tests.debug.xcconfig | 7 + .../Pods-ValidatorExtension_Tests.modulemap | 6 + ...-ValidatorExtension_Tests.release.xcconfig | 7 + .../ValidatorExtension/Info.plist | 26 + .../ValidatorExtension-dummy.m | 5 + .../ValidatorExtension-prefix.pch | 12 + .../ValidatorExtension-umbrella.h | 16 + .../ValidatorExtension.modulemap | 6 + .../ValidatorExtension.xcconfig | 10 + .../project.pbxproj | 19 +- .../ValidatorExtension-Example.xcscheme | 2 +- .../contents.xcworkspacedata | 10 + Example/ValidatorExtension/AppDelegate.swift | 18 +- .../Base.lproj/Main.storyboard | 122 ++- .../ValidatorExtension/ViewController.swift | 73 +- README.md | 1 + ValidatorExtension.podspec | 4 +- ValidatorExtension/Classes/ReplaceMe.swift | 0 .../Classes/ValidatorExtension.swift | 88 +++ 40 files changed, 1793 insertions(+), 25 deletions(-) create mode 100644 Example/Podfile.lock create mode 100644 Example/Pods/Local Podspecs/ValidatorExtension.podspec.json create mode 100644 Example/Pods/Manifest.lock create mode 100644 Example/Pods/Pods.xcodeproj/project.pbxproj create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Info.plist create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.markdown create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.plist create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-dummy.m create mode 100755 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-frameworks.sh create mode 100755 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-resources.sh create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-umbrella.h create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.debug.xcconfig create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.modulemap create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.release.xcconfig create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Info.plist create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.markdown create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.plist create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-dummy.m create mode 100755 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-frameworks.sh create mode 100755 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-resources.sh create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-umbrella.h create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.debug.xcconfig create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.modulemap create mode 100644 Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.release.xcconfig create mode 100644 Example/Pods/Target Support Files/ValidatorExtension/Info.plist create mode 100644 Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-dummy.m create mode 100644 Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-prefix.pch create mode 100644 Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-umbrella.h create mode 100644 Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.modulemap create mode 100644 Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.xcconfig create mode 100644 Example/ValidatorExtension.xcworkspace/contents.xcworkspacedata delete mode 100644 ValidatorExtension/Classes/ReplaceMe.swift create mode 100644 ValidatorExtension/Classes/ValidatorExtension.swift diff --git a/Example/Podfile.lock b/Example/Podfile.lock new file mode 100644 index 0000000..719128c --- /dev/null +++ b/Example/Podfile.lock @@ -0,0 +1,16 @@ +PODS: + - ValidatorExtension (0.1.0) + +DEPENDENCIES: + - ValidatorExtension (from `../`) + +EXTERNAL SOURCES: + ValidatorExtension: + :path: "../" + +SPEC CHECKSUMS: + ValidatorExtension: 0ae6606111d2e14eef477640af41c97565db053c + +PODFILE CHECKSUM: 7ae3147fb659a64dd9c783bb7fa6e318ee399772 + +COCOAPODS: 1.2.0 diff --git a/Example/Pods/Local Podspecs/ValidatorExtension.podspec.json b/Example/Pods/Local Podspecs/ValidatorExtension.podspec.json new file mode 100644 index 0000000..221ac34 --- /dev/null +++ b/Example/Pods/Local Podspecs/ValidatorExtension.podspec.json @@ -0,0 +1,22 @@ +{ + "name": "ValidatorExtension", + "version": "0.1.0", + "summary": "A short description of ValidatorExtension.", + "description": "TODO: Add long description of the pod here.", + "homepage": "https://github.com/rajanshahsa/ValidatorExtension", + "license": { + "type": "MIT", + "file": "LICENSE" + }, + "authors": { + "rajanshahsa": "rajan.shah@solutionanalysts.com" + }, + "source": { + "git": "https://github.com/rajanshahsa/ValidatorExtension.git", + "tag": "0.1.0" + }, + "platforms": { + "ios": "8.0" + }, + "source_files": "ValidatorExtension/Classes/**/*" +} diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock new file mode 100644 index 0000000..719128c --- /dev/null +++ b/Example/Pods/Manifest.lock @@ -0,0 +1,16 @@ +PODS: + - ValidatorExtension (0.1.0) + +DEPENDENCIES: + - ValidatorExtension (from `../`) + +EXTERNAL SOURCES: + ValidatorExtension: + :path: "../" + +SPEC CHECKSUMS: + ValidatorExtension: 0ae6606111d2e14eef477640af41c97565db053c + +PODFILE CHECKSUM: 7ae3147fb659a64dd9c783bb7fa6e318ee399772 + +COCOAPODS: 1.2.0 diff --git a/Example/Pods/Pods.xcodeproj/project.pbxproj b/Example/Pods/Pods.xcodeproj/project.pbxproj new file mode 100644 index 0000000..06b8f89 --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/project.pbxproj @@ -0,0 +1,707 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 1EAFA917437D6A7B3116941397B6C279 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; }; + 2C22628411B82669A1A9F72B65B1DCC7 /* ValidatorExtension-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1062898A7F0EFC8FD6CFCD580C2FDEB2 /* ValidatorExtension-dummy.m */; }; + 34E533D2E0AEA6435BC054C5593A47D2 /* Pods-ValidatorExtension_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C3FF41EEF28B2FF54E061531E6AD3DA0 /* Pods-ValidatorExtension_Tests-dummy.m */; }; + 42A9F952B8C80AF322335B31810C3AB4 /* ValidatorExtension-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3697CC3229FAF447E310EB9760D1DCDA /* ValidatorExtension-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4F29240E3F18837906960C2F398E9C05 /* Pods-ValidatorExtension_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = EECBAC755FB35B182C4DA115A629C72F /* Pods-ValidatorExtension_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7BE69BE27319902478570BB65A27A821 /* Pods-ValidatorExtension_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B2C1DD8AC238821E8157FB9C6E6CE013 /* Pods-ValidatorExtension_Example-dummy.m */; }; + 8948FDB45C779698DBC79A63FB4A8C7F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; }; + 89AA623C6E6A70184C59F44C8C841AA8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; }; + C7141EEF11B933CAB652F7E4B9E31981 /* Pods-ValidatorExtension_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B698D33C5A525F1EB51192E54380B365 /* Pods-ValidatorExtension_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F98A85426F7284402F54A62016CBECB9 /* ValidatorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D707E0CC644EE23483D212EBB7BC872 /* ValidatorExtension.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + FE6DE1F8201D1D8F1BDA25B45A054169 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = D3650E5D94A2180C702859366C120D36; + remoteInfo = ValidatorExtension; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 01FF29AB6A1B59B7A62F2F20E9A9337E /* Pods-ValidatorExtension_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ValidatorExtension_Example-acknowledgements.plist"; sourceTree = ""; }; + 081B3C88137B53EC303ACE7921C95CAB /* ValidatorExtension-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ValidatorExtension-prefix.pch"; sourceTree = ""; }; + 1062898A7F0EFC8FD6CFCD580C2FDEB2 /* ValidatorExtension-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ValidatorExtension-dummy.m"; sourceTree = ""; }; + 24AC7DBE54AE304F4C52B88A5C35739E /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 353F4E0F0F21A65109EEBAA5C07A869F /* Pods-ValidatorExtension_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = "Pods-ValidatorExtension_Example.modulemap"; sourceTree = ""; }; + 3697CC3229FAF447E310EB9760D1DCDA /* ValidatorExtension-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ValidatorExtension-umbrella.h"; sourceTree = ""; }; + 44F79187149BF7377921D008629E4D61 /* ValidatorExtension.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = ValidatorExtension.modulemap; sourceTree = ""; }; + 4A18ACC213C8A5F8A3A1F595F4126C5A /* Pods-ValidatorExtension_Tests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ValidatorExtension_Tests-resources.sh"; sourceTree = ""; }; + 5CBE741019C5519120DDE13A95713C5A /* Pods-ValidatorExtension_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ValidatorExtension_Tests.release.xcconfig"; sourceTree = ""; }; + 740DF4E054235D23FBB31C0754C521AE /* Pods-ValidatorExtension_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ValidatorExtension_Example-frameworks.sh"; sourceTree = ""; }; + 8900FB7AAAD9640B2115ED4C65054AC3 /* ValidatorExtension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ValidatorExtension.framework; path = ValidatorExtension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 8D33D0149D2BACA64BC6CA79E6CAE565 /* Pods-ValidatorExtension_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ValidatorExtension_Example.debug.xcconfig"; sourceTree = ""; }; + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9D707E0CC644EE23483D212EBB7BC872 /* ValidatorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ValidatorExtension.swift; sourceTree = ""; }; + A293F30C80DF643CBE44CC6A2A7AAEA9 /* Pods-ValidatorExtension_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ValidatorExtension_Example-acknowledgements.markdown"; sourceTree = ""; }; + A415EDD00C1BEC4B6EB60C479DEBAB42 /* Pods-ValidatorExtension_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = "Pods-ValidatorExtension_Tests.modulemap"; sourceTree = ""; }; + A44779C5CD39826B0ECF807C3BE5B505 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + A83C09EC45DE80F1BF41456CC525D18A /* Pods_ValidatorExtension_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_ValidatorExtension_Tests.framework; path = "Pods-ValidatorExtension_Tests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A8F77C6512760A48C8FC9292EAD025DC /* Pods-ValidatorExtension_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ValidatorExtension_Example.release.xcconfig"; sourceTree = ""; }; + AF6BC715110DD309C5AF53C3DDF7EEFA /* Pods-ValidatorExtension_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ValidatorExtension_Tests.debug.xcconfig"; sourceTree = ""; }; + B2C1DD8AC238821E8157FB9C6E6CE013 /* Pods-ValidatorExtension_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ValidatorExtension_Example-dummy.m"; sourceTree = ""; }; + B698D33C5A525F1EB51192E54380B365 /* Pods-ValidatorExtension_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ValidatorExtension_Tests-umbrella.h"; sourceTree = ""; }; + BC5E893C84F7D5F54D1DC5BE11DAC658 /* Pods_ValidatorExtension_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_ValidatorExtension_Example.framework; path = "Pods-ValidatorExtension_Example.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + BD953F15DBD8A23E5F4B90DF48F1BEB1 /* ValidatorExtension.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ValidatorExtension.xcconfig; sourceTree = ""; }; + C3FF41EEF28B2FF54E061531E6AD3DA0 /* Pods-ValidatorExtension_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ValidatorExtension_Tests-dummy.m"; sourceTree = ""; }; + CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + CF1D17EEF02E06FD7EC70271C1BD84BD /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + EA18532CE5FC52B01B00F59DC5926DE6 /* Pods-ValidatorExtension_Example-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ValidatorExtension_Example-resources.sh"; sourceTree = ""; }; + EE0053150C26ED958F445DA4CCAD3D27 /* Pods-ValidatorExtension_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ValidatorExtension_Tests-acknowledgements.plist"; sourceTree = ""; }; + EECBAC755FB35B182C4DA115A629C72F /* Pods-ValidatorExtension_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ValidatorExtension_Example-umbrella.h"; sourceTree = ""; }; + EEF4EA5F9399CAC773A9EE55234A55A4 /* Pods-ValidatorExtension_Tests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ValidatorExtension_Tests-frameworks.sh"; sourceTree = ""; }; + F2A7D76A320ECF56F965E02902F9C009 /* Pods-ValidatorExtension_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ValidatorExtension_Tests-acknowledgements.markdown"; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 72833EF421A4E1C9A4970289333BA2D0 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 8948FDB45C779698DBC79A63FB4A8C7F /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DD85C20556D08B9DEC055D7DC6424BB9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 1EAFA917437D6A7B3116941397B6C279 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FFBE7C925AF6092433BCA8653E65DDE8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 89AA623C6E6A70184C59F44C8C841AA8 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 05C335E1242B624EDDAD2C698A50369B /* ValidatorExtension */ = { + isa = PBXGroup; + children = ( + 2EA89FD434D7B2AE4AC28243080728C1 /* Classes */, + ); + name = ValidatorExtension; + path = ValidatorExtension; + sourceTree = ""; + }; + 0CF6DAA585263A84287C833C1B33727E /* Products */ = { + isa = PBXGroup; + children = ( + BC5E893C84F7D5F54D1DC5BE11DAC658 /* Pods_ValidatorExtension_Example.framework */, + A83C09EC45DE80F1BF41456CC525D18A /* Pods_ValidatorExtension_Tests.framework */, + 8900FB7AAAD9640B2115ED4C65054AC3 /* ValidatorExtension.framework */, + ); + name = Products; + sourceTree = ""; + }; + 27CD631B5B2123FD2269122D47D8474E /* Pods-ValidatorExtension_Example */ = { + isa = PBXGroup; + children = ( + A44779C5CD39826B0ECF807C3BE5B505 /* Info.plist */, + 353F4E0F0F21A65109EEBAA5C07A869F /* Pods-ValidatorExtension_Example.modulemap */, + A293F30C80DF643CBE44CC6A2A7AAEA9 /* Pods-ValidatorExtension_Example-acknowledgements.markdown */, + 01FF29AB6A1B59B7A62F2F20E9A9337E /* Pods-ValidatorExtension_Example-acknowledgements.plist */, + B2C1DD8AC238821E8157FB9C6E6CE013 /* Pods-ValidatorExtension_Example-dummy.m */, + 740DF4E054235D23FBB31C0754C521AE /* Pods-ValidatorExtension_Example-frameworks.sh */, + EA18532CE5FC52B01B00F59DC5926DE6 /* Pods-ValidatorExtension_Example-resources.sh */, + EECBAC755FB35B182C4DA115A629C72F /* Pods-ValidatorExtension_Example-umbrella.h */, + 8D33D0149D2BACA64BC6CA79E6CAE565 /* Pods-ValidatorExtension_Example.debug.xcconfig */, + A8F77C6512760A48C8FC9292EAD025DC /* Pods-ValidatorExtension_Example.release.xcconfig */, + ); + name = "Pods-ValidatorExtension_Example"; + path = "Target Support Files/Pods-ValidatorExtension_Example"; + sourceTree = ""; + }; + 2EA89FD434D7B2AE4AC28243080728C1 /* Classes */ = { + isa = PBXGroup; + children = ( + 9D707E0CC644EE23483D212EBB7BC872 /* ValidatorExtension.swift */, + ); + name = Classes; + path = Classes; + sourceTree = ""; + }; + 4CCD5F357B4CE394AEC68069569AEC73 /* Support Files */ = { + isa = PBXGroup; + children = ( + CF1D17EEF02E06FD7EC70271C1BD84BD /* Info.plist */, + 44F79187149BF7377921D008629E4D61 /* ValidatorExtension.modulemap */, + BD953F15DBD8A23E5F4B90DF48F1BEB1 /* ValidatorExtension.xcconfig */, + 1062898A7F0EFC8FD6CFCD580C2FDEB2 /* ValidatorExtension-dummy.m */, + 081B3C88137B53EC303ACE7921C95CAB /* ValidatorExtension-prefix.pch */, + 3697CC3229FAF447E310EB9760D1DCDA /* ValidatorExtension-umbrella.h */, + ); + name = "Support Files"; + path = "Example/Pods/Target Support Files/ValidatorExtension"; + sourceTree = ""; + }; + 72D534DDAEB6A8F03353C9A51351CFA3 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + 27CD631B5B2123FD2269122D47D8474E /* Pods-ValidatorExtension_Example */, + CC6ABA2E7C67DC845008CCB05B9EB62D /* Pods-ValidatorExtension_Tests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 7531C8F8DE19F1AA3C8A7AC97A91DC29 /* iOS */ = { + isa = PBXGroup; + children = ( + CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */, + ); + name = iOS; + sourceTree = ""; + }; + 7DB346D0F39D3F0E887471402A8071AB = { + isa = PBXGroup; + children = ( + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, + 8ABE43D509EB566E5DA5DC1012977F45 /* Development Pods */, + BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */, + 0CF6DAA585263A84287C833C1B33727E /* Products */, + 72D534DDAEB6A8F03353C9A51351CFA3 /* Targets Support Files */, + ); + sourceTree = ""; + }; + 8ABE43D509EB566E5DA5DC1012977F45 /* Development Pods */ = { + isa = PBXGroup; + children = ( + D51DF91EB78365DE20AFF88DE96C48F6 /* ValidatorExtension */, + ); + name = "Development Pods"; + sourceTree = ""; + }; + BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = { + isa = PBXGroup; + children = ( + 7531C8F8DE19F1AA3C8A7AC97A91DC29 /* iOS */, + ); + name = Frameworks; + sourceTree = ""; + }; + CC6ABA2E7C67DC845008CCB05B9EB62D /* Pods-ValidatorExtension_Tests */ = { + isa = PBXGroup; + children = ( + 24AC7DBE54AE304F4C52B88A5C35739E /* Info.plist */, + A415EDD00C1BEC4B6EB60C479DEBAB42 /* Pods-ValidatorExtension_Tests.modulemap */, + F2A7D76A320ECF56F965E02902F9C009 /* Pods-ValidatorExtension_Tests-acknowledgements.markdown */, + EE0053150C26ED958F445DA4CCAD3D27 /* Pods-ValidatorExtension_Tests-acknowledgements.plist */, + C3FF41EEF28B2FF54E061531E6AD3DA0 /* Pods-ValidatorExtension_Tests-dummy.m */, + EEF4EA5F9399CAC773A9EE55234A55A4 /* Pods-ValidatorExtension_Tests-frameworks.sh */, + 4A18ACC213C8A5F8A3A1F595F4126C5A /* Pods-ValidatorExtension_Tests-resources.sh */, + B698D33C5A525F1EB51192E54380B365 /* Pods-ValidatorExtension_Tests-umbrella.h */, + AF6BC715110DD309C5AF53C3DDF7EEFA /* Pods-ValidatorExtension_Tests.debug.xcconfig */, + 5CBE741019C5519120DDE13A95713C5A /* Pods-ValidatorExtension_Tests.release.xcconfig */, + ); + name = "Pods-ValidatorExtension_Tests"; + path = "Target Support Files/Pods-ValidatorExtension_Tests"; + sourceTree = ""; + }; + D51DF91EB78365DE20AFF88DE96C48F6 /* ValidatorExtension */ = { + isa = PBXGroup; + children = ( + 4CCD5F357B4CE394AEC68069569AEC73 /* Support Files */, + 05C335E1242B624EDDAD2C698A50369B /* ValidatorExtension */, + ); + name = ValidatorExtension; + path = ../..; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 305D29EA0787C16C7AD6FCB4A1A5DA61 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 42A9F952B8C80AF322335B31810C3AB4 /* ValidatorExtension-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5480FC63CFF6FDF80E39FAD58C63CB90 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 4F29240E3F18837906960C2F398E9C05 /* Pods-ValidatorExtension_Example-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7A963D9B9C237C032072F71E37900C32 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + C7141EEF11B933CAB652F7E4B9E31981 /* Pods-ValidatorExtension_Tests-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 24599780722A12AF1204E6D505C17676 /* Pods-ValidatorExtension_Tests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2DED08F179FD5F8EC201C0CCE2D536CD /* Build configuration list for PBXNativeTarget "Pods-ValidatorExtension_Tests" */; + buildPhases = ( + 15FF1B9FAF7E1AA07C14071A190089F2 /* Sources */, + FFBE7C925AF6092433BCA8653E65DDE8 /* Frameworks */, + 7A963D9B9C237C032072F71E37900C32 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "Pods-ValidatorExtension_Tests"; + productName = "Pods-ValidatorExtension_Tests"; + productReference = A83C09EC45DE80F1BF41456CC525D18A /* Pods_ValidatorExtension_Tests.framework */; + productType = "com.apple.product-type.framework"; + }; + 404B7D9CC71469F6CEFA3CA4E5A6C008 /* Pods-ValidatorExtension_Example */ = { + isa = PBXNativeTarget; + buildConfigurationList = 812EB93C993E5545DE16AD49ECCF01A2 /* Build configuration list for PBXNativeTarget "Pods-ValidatorExtension_Example" */; + buildPhases = ( + A9801F951510B9D1FC4B683A7919F6B4 /* Sources */, + DD85C20556D08B9DEC055D7DC6424BB9 /* Frameworks */, + 5480FC63CFF6FDF80E39FAD58C63CB90 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + EBC465B76AFBD37E5950CF2E9CA8A5EF /* PBXTargetDependency */, + ); + name = "Pods-ValidatorExtension_Example"; + productName = "Pods-ValidatorExtension_Example"; + productReference = BC5E893C84F7D5F54D1DC5BE11DAC658 /* Pods_ValidatorExtension_Example.framework */; + productType = "com.apple.product-type.framework"; + }; + D3650E5D94A2180C702859366C120D36 /* ValidatorExtension */ = { + isa = PBXNativeTarget; + buildConfigurationList = AABDE4F5F10C85EB4A26551C907758F8 /* Build configuration list for PBXNativeTarget "ValidatorExtension" */; + buildPhases = ( + 4FA4753D724152C8865F10BA7CD0163B /* Sources */, + 72833EF421A4E1C9A4970289333BA2D0 /* Frameworks */, + 305D29EA0787C16C7AD6FCB4A1A5DA61 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = ValidatorExtension; + productName = ValidatorExtension; + productReference = 8900FB7AAAD9640B2115ED4C65054AC3 /* ValidatorExtension.framework */; + productType = "com.apple.product-type.framework"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0730; + LastUpgradeCheck = 0700; + }; + buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 7DB346D0F39D3F0E887471402A8071AB; + productRefGroup = 0CF6DAA585263A84287C833C1B33727E /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 404B7D9CC71469F6CEFA3CA4E5A6C008 /* Pods-ValidatorExtension_Example */, + 24599780722A12AF1204E6D505C17676 /* Pods-ValidatorExtension_Tests */, + D3650E5D94A2180C702859366C120D36 /* ValidatorExtension */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 15FF1B9FAF7E1AA07C14071A190089F2 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 34E533D2E0AEA6435BC054C5593A47D2 /* Pods-ValidatorExtension_Tests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4FA4753D724152C8865F10BA7CD0163B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2C22628411B82669A1A9F72B65B1DCC7 /* ValidatorExtension-dummy.m in Sources */, + F98A85426F7284402F54A62016CBECB9 /* ValidatorExtension.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A9801F951510B9D1FC4B683A7919F6B4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7BE69BE27319902478570BB65A27A821 /* Pods-ValidatorExtension_Example-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + EBC465B76AFBD37E5950CF2E9CA8A5EF /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = ValidatorExtension; + target = D3650E5D94A2180C702859366C120D36 /* ValidatorExtension */; + targetProxy = FE6DE1F8201D1D8F1BDA25B45A054169 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 1A2EE4A4DA9185D9B5AE3BA983789DA7 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5CBE741019C5519120DDE13A95713C5A /* Pods-ValidatorExtension_Tests.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "Target Support Files/Pods-ValidatorExtension_Tests/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.modulemap"; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_ValidatorExtension_Tests; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 3085B2E5404323F7F143067E96C04644 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BD953F15DBD8A23E5F4B90DF48F1BEB1 /* ValidatorExtension.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/ValidatorExtension/ValidatorExtension-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ValidatorExtension/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/ValidatorExtension/ValidatorExtension.modulemap"; + MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_NAME = ValidatorExtension; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 39D4BDAE0B78B072B5B02A7139C3BF52 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A8F77C6512760A48C8FC9292EAD025DC /* Pods-ValidatorExtension_Example.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "Target Support Files/Pods-ValidatorExtension_Example/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.modulemap"; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_ValidatorExtension_Example; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 8DED8AD26D381A6ACFF202E5217EC498 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGNING_REQUIRED = NO; + COPY_PHASE_STRIP = YES; + ENABLE_NS_ASSERTIONS = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 9E1E4E48AF2EAB23169E611BF694090A /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGNING_REQUIRED = NO; + COPY_PHASE_STRIP = NO; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + ONLY_ACTIVE_ARCH = YES; + PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + CA64CA995DCEEF57AC3C4090DA1B7DDF /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8D33D0149D2BACA64BC6CA79E6CAE565 /* Pods-ValidatorExtension_Example.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "Target Support Files/Pods-ValidatorExtension_Example/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.modulemap"; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_ValidatorExtension_Example; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + EEE7D3098B5D1DC2AE7AC94E01610F1E /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AF6BC715110DD309C5AF53C3DDF7EEFA /* Pods-ValidatorExtension_Tests.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "Target Support Files/Pods-ValidatorExtension_Tests/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.modulemap"; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_ValidatorExtension_Tests; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + F621EB16CC7D515998014F2E9C58D9A1 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BD953F15DBD8A23E5F4B90DF48F1BEB1 /* ValidatorExtension.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/ValidatorExtension/ValidatorExtension-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ValidatorExtension/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/ValidatorExtension/ValidatorExtension.modulemap"; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_NAME = ValidatorExtension; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9E1E4E48AF2EAB23169E611BF694090A /* Debug */, + 8DED8AD26D381A6ACFF202E5217EC498 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2DED08F179FD5F8EC201C0CCE2D536CD /* Build configuration list for PBXNativeTarget "Pods-ValidatorExtension_Tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + EEE7D3098B5D1DC2AE7AC94E01610F1E /* Debug */, + 1A2EE4A4DA9185D9B5AE3BA983789DA7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 812EB93C993E5545DE16AD49ECCF01A2 /* Build configuration list for PBXNativeTarget "Pods-ValidatorExtension_Example" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CA64CA995DCEEF57AC3C4090DA1B7DDF /* Debug */, + 39D4BDAE0B78B072B5B02A7139C3BF52 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + AABDE4F5F10C85EB4A26551C907758F8 /* Build configuration list for PBXNativeTarget "ValidatorExtension" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 3085B2E5404323F7F143067E96C04644 /* Debug */, + F621EB16CC7D515998014F2E9C58D9A1 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; +} diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Info.plist b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.markdown b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.markdown new file mode 100644 index 0000000..5700e9f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.markdown @@ -0,0 +1,26 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## ValidatorExtension + +Copyright (c) 2017 rajanshahsa + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +Generated by CocoaPods - https://cocoapods.org diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.plist b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.plist new file mode 100644 index 0000000..0dcc093 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-acknowledgements.plist @@ -0,0 +1,58 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (c) 2017 rajanshahsa <rajan.shah@solutionanalysts.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. + + License + MIT + Title + ValidatorExtension + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-dummy.m b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-dummy.m new file mode 100644 index 0000000..4234f9f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_ValidatorExtension_Example : NSObject +@end +@implementation PodsDummy_Pods_ValidatorExtension_Example +@end diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-frameworks.sh b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-frameworks.sh new file mode 100755 index 0000000..6e9d6f1 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-frameworks.sh @@ -0,0 +1,99 @@ +#!/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}" + +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 dont' throw errors + echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync -av --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 +} + +# 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 file + archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" + stripped="" + for arch in $archs; do + if ! [[ "${VALID_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 +} + + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "$BUILT_PRODUCTS_DIR/ValidatorExtension/ValidatorExtension.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "$BUILT_PRODUCTS_DIR/ValidatorExtension/ValidatorExtension.framework" +fi +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-resources.sh b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-resources.sh new file mode 100755 index 0000000..4602c68 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-resources.sh @@ -0,0 +1,99 @@ +#!/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=() + +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" + ;; + *) + 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}" + 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}" + 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}" + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "$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\"" + 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\"" + 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\"" + 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" + 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 diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-umbrella.h b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-umbrella.h new file mode 100644 index 0000000..f293313 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_ValidatorExtension_ExampleVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_ValidatorExtension_ExampleVersionString[]; + diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.debug.xcconfig b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.debug.xcconfig new file mode 100644 index 0000000..086e650 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.debug.xcconfig @@ -0,0 +1,10 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ValidatorExtension" +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/ValidatorExtension/ValidatorExtension.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "ValidatorExtension" +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 diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.modulemap b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.modulemap new file mode 100644 index 0000000..a10e22b --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.modulemap @@ -0,0 +1,6 @@ +framework module Pods_ValidatorExtension_Example { + umbrella header "Pods-ValidatorExtension_Example-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.release.xcconfig b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.release.xcconfig new file mode 100644 index 0000000..086e650 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.release.xcconfig @@ -0,0 +1,10 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ValidatorExtension" +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/ValidatorExtension/ValidatorExtension.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "ValidatorExtension" +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 diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Info.plist b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.markdown b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.markdown new file mode 100644 index 0000000..102af75 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.markdown @@ -0,0 +1,3 @@ +# Acknowledgements +This application makes use of the following third party libraries: +Generated by CocoaPods - https://cocoapods.org diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.plist b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.plist new file mode 100644 index 0000000..7acbad1 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-acknowledgements.plist @@ -0,0 +1,29 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-dummy.m b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-dummy.m new file mode 100644 index 0000000..6030303 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_ValidatorExtension_Tests : NSObject +@end +@implementation PodsDummy_Pods_ValidatorExtension_Tests +@end diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-frameworks.sh b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-frameworks.sh new file mode 100755 index 0000000..0f29f13 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-frameworks.sh @@ -0,0 +1,92 @@ +#!/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}" + +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 dont' throw errors + echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync -av --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 +} + +# 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 file + archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" + stripped="" + for arch in $archs; do + if ! [[ "${VALID_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 +} + +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-resources.sh b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-resources.sh new file mode 100755 index 0000000..4602c68 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-resources.sh @@ -0,0 +1,99 @@ +#!/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=() + +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" + ;; + *) + 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}" + 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}" + 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}" + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "$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\"" + 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\"" + 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\"" + 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" + 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 diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-umbrella.h b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-umbrella.h new file mode 100644 index 0000000..506df12 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_ValidatorExtension_TestsVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_ValidatorExtension_TestsVersionString[]; + diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.debug.xcconfig b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.debug.xcconfig new file mode 100644 index 0000000..8eff108 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.debug.xcconfig @@ -0,0 +1,7 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ValidatorExtension" +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/ValidatorExtension/ValidatorExtension.framework/Headers" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.modulemap b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.modulemap new file mode 100644 index 0000000..ae0786a --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.modulemap @@ -0,0 +1,6 @@ +framework module Pods_ValidatorExtension_Tests { + umbrella header "Pods-ValidatorExtension_Tests-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.release.xcconfig b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.release.xcconfig new file mode 100644 index 0000000..8eff108 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.release.xcconfig @@ -0,0 +1,7 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ValidatorExtension" +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/ValidatorExtension/ValidatorExtension.framework/Headers" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/ValidatorExtension/Info.plist b/Example/Pods/Target Support Files/ValidatorExtension/Info.plist new file mode 100644 index 0000000..161a9d3 --- /dev/null +++ b/Example/Pods/Target Support Files/ValidatorExtension/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 0.1.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-dummy.m b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-dummy.m new file mode 100644 index 0000000..9970b54 --- /dev/null +++ b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_ValidatorExtension : NSObject +@end +@implementation PodsDummy_ValidatorExtension +@end diff --git a/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-prefix.pch b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-prefix.pch new file mode 100644 index 0000000..beb2a24 --- /dev/null +++ b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-umbrella.h b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-umbrella.h new file mode 100644 index 0000000..26c3e30 --- /dev/null +++ b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double ValidatorExtensionVersionNumber; +FOUNDATION_EXPORT const unsigned char ValidatorExtensionVersionString[]; + diff --git a/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.modulemap b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.modulemap new file mode 100644 index 0000000..12c6406 --- /dev/null +++ b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.modulemap @@ -0,0 +1,6 @@ +framework module ValidatorExtension { + umbrella header "ValidatorExtension-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.xcconfig b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.xcconfig new file mode 100644 index 0000000..7e96ecc --- /dev/null +++ b/Example/Pods/Target Support Files/ValidatorExtension/ValidatorExtension.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/ValidatorExtension +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" +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}/../.. +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/Example/ValidatorExtension.xcodeproj/project.pbxproj b/Example/ValidatorExtension.xcodeproj/project.pbxproj index 26261a6..d230427 100644 --- a/Example/ValidatorExtension.xcodeproj/project.pbxproj +++ b/Example/ValidatorExtension.xcodeproj/project.pbxproj @@ -30,7 +30,7 @@ /* Begin PBXFileReference section */ 422AF08A72EA5FB7A786D9C7 /* Pods-ValidatorExtension_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ValidatorExtension_Example.release.xcconfig"; path = "Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.release.xcconfig"; sourceTree = ""; }; 52E08675CC44B93161314C57 /* Pods_ValidatorExtension_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ValidatorExtension_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 600E4BE78E6ADED5DB0EDBE1 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; name = README.md; path = ../README.md; sourceTree = ""; }; + 600E4BE78E6ADED5DB0EDBE1 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; 607FACD01AFB9204008FA782 /* ValidatorExtension_Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ValidatorExtension_Example.app; sourceTree = BUILT_PRODUCTS_DIR; }; 607FACD41AFB9204008FA782 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 607FACD51AFB9204008FA782 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -44,9 +44,9 @@ 69AEBA2ABE8718605D36DC4E /* Pods-ValidatorExtension_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ValidatorExtension_Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.release.xcconfig"; sourceTree = ""; }; 70F2EA0C165868F62574AFFD /* Pods-ValidatorExtension_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ValidatorExtension_Example.debug.xcconfig"; path = "Pods/Target Support Files/Pods-ValidatorExtension_Example/Pods-ValidatorExtension_Example.debug.xcconfig"; sourceTree = ""; }; 90E1E7FB67AA5580A9BD24A7 /* Pods-ValidatorExtension_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ValidatorExtension_Tests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-ValidatorExtension_Tests/Pods-ValidatorExtension_Tests.debug.xcconfig"; sourceTree = ""; }; - AA0C1DECDB1BAC5519A1D6E2 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; + AA0C1DECDB1BAC5519A1D6E2 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; B5DD2BB42EC010145006E4F6 /* Pods_ValidatorExtension_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ValidatorExtension_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - F7566836481808173E23B34D /* ValidatorExtension.podspec */ = {isa = PBXFileReference; includeInIndex = 1; name = ValidatorExtension.podspec; path = ../ValidatorExtension.podspec; sourceTree = ""; }; + F7566836481808173E23B34D /* ValidatorExtension.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ValidatorExtension.podspec; path = ../ValidatorExtension.podspec; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -210,7 +210,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0720; - LastUpgradeCheck = 0720; + LastUpgradeCheck = 0820; ORGANIZATIONNAME = CocoaPods; TargetAttributes = { 607FACCF1AFB9204008FA782 = { @@ -415,8 +415,10 @@ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; @@ -460,8 +462,10 @@ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; @@ -480,6 +484,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.3; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; VALIDATE_PRODUCT = YES; }; name = Release; @@ -488,12 +493,14 @@ isa = XCBuildConfiguration; baseConfigurationReference = 70F2EA0C165868F62574AFFD /* Pods-ValidatorExtension_Example.debug.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; INFOPLIST_FILE = ValidatorExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MODULE_NAME = ExampleApp; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; }; name = Debug; }; @@ -501,12 +508,14 @@ isa = XCBuildConfiguration; baseConfigurationReference = 422AF08A72EA5FB7A786D9C7 /* Pods-ValidatorExtension_Example.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; INFOPLIST_FILE = ValidatorExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MODULE_NAME = ExampleApp; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; }; name = Release; }; @@ -526,6 +535,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; }; name = Debug; }; @@ -541,6 +551,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; }; name = Release; }; diff --git a/Example/ValidatorExtension.xcodeproj/xcshareddata/xcschemes/ValidatorExtension-Example.xcscheme b/Example/ValidatorExtension.xcodeproj/xcshareddata/xcschemes/ValidatorExtension-Example.xcscheme index 055be5c..4d7b2bd 100644 --- a/Example/ValidatorExtension.xcodeproj/xcshareddata/xcschemes/ValidatorExtension-Example.xcscheme +++ b/Example/ValidatorExtension.xcodeproj/xcshareddata/xcschemes/ValidatorExtension-Example.xcscheme @@ -1,6 +1,6 @@ + + + + + + diff --git a/Example/ValidatorExtension/AppDelegate.swift b/Example/ValidatorExtension/AppDelegate.swift index a388385..32ceb2f 100644 --- a/Example/ValidatorExtension/AppDelegate.swift +++ b/Example/ValidatorExtension/AppDelegate.swift @@ -7,40 +7,38 @@ // import UIKit - +import ValidatorExtension @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. return true } - + func applicationWillResignActive(_ application: UIApplication) { // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. + // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. } - + func applicationDidEnterBackground(_ application: UIApplication) { // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. } - + func applicationWillEnterForeground(_ application: UIApplication) { - // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. + // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. } - + func applicationDidBecomeActive(_ application: UIApplication) { // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. } - + func applicationWillTerminate(_ application: UIApplication) { // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. } - } diff --git a/Example/ValidatorExtension/Base.lproj/Main.storyboard b/Example/ValidatorExtension/Base.lproj/Main.storyboard index 52ea29e..53205d4 100644 --- a/Example/ValidatorExtension/Base.lproj/Main.storyboard +++ b/Example/ValidatorExtension/Base.lproj/Main.storyboard @@ -1,25 +1,135 @@ - - + + + + + - + + + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/ValidatorExtension/ViewController.swift b/Example/ValidatorExtension/ViewController.swift index 8a86236..5663865 100644 --- a/Example/ValidatorExtension/ViewController.swift +++ b/Example/ValidatorExtension/ViewController.swift @@ -9,16 +9,85 @@ import UIKit class ViewController: UIViewController { - + + + @IBOutlet var swtcOption : UISwitch! + + @IBOutlet var txtInput : UITextField! + @IBOutlet var lblAns : UILabel! + @IBOutlet var btnSubmit : UIButton! + var datePicker : UIDatePicker! + let dateFormatter = DateFormatter() + + @IBOutlet weak var txtEmailInput: UITextField! override func viewDidLoad() { super.viewDidLoad() + dateFormatter.dateFormat = "MM-dd-yyyy HH:mm:ss" // Do any additional setup after loading the view, typically from a nib. } - + override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } + @IBAction func swcOptionChange(_ sender: Any) { + view.endEditing(true) + if swtcOption.isOn { + txtInput.isHidden = false + txtEmailInput.isHidden = true + } + else { + txtInput.isHidden = true + txtEmailInput.isHidden = false + } + txtInput.text = "" + txtEmailInput.text = "" + } + + @IBAction func btnSubmit_Clicked(_ sender: Any) { + view.endEditing(true) + if swtcOption.isOn { + print("Ison") + guard datePicker != nil else { + return + } + let currentDate = dateFormatter.date(from: dateFormatter.string(from: Date())) + let selectedDate = dateFormatter.date(from: txtInput.text!) + let str = currentDate?.getDifferanceFromCurrentTime(serverDate: selectedDate!) + lblAns.text = str + } + else { + if (txtEmailInput.text?.isValidEmail())! { + lblAns.text = "Email Id is valid" + } + else { + lblAns.text = "Email Id is not valid" + } + } + } + + // Set the Value of DOB picker view's in DOB textFields + func setupDOBValue(_ sender:UIDatePicker) { + let DOB = sender.date + txtInput.text = dateFormatter.string(from: sender.date) + debugPrint(DOB) + } +} +extension ViewController : UITextFieldDelegate { + func textFieldDidBeginEditing(_ textField: UITextField) { + if swtcOption.isOn { + datePicker = UIDatePicker() + datePicker.datePickerMode = UIDatePickerMode.dateAndTime + datePicker.maximumDate = Date() + textField.inputView = datePicker + txtInput.text = dateFormatter.string(from: datePicker.date) + datePicker.addTarget(self, action: #selector(self.setupDOBValue(_:)), for: .valueChanged) + } + else { + textField.keyboardType = .emailAddress + } + + } } diff --git a/README.md b/README.md index d32ea79..2c8fdb9 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # ValidatorExtension +ValidatorExtension is extension of Swift & Date. Which used to validate Email id, Trim the string, & finding difference between to date in terms of Seconds, Minute, Hours, Days, Weeks, Months & Years. [![CI Status](http://img.shields.io/travis/rajanshahsa/ValidatorExtension.svg?style=flat)](https://travis-ci.org/rajanshahsa/ValidatorExtension) [![Version](https://img.shields.io/cocoapods/v/ValidatorExtension.svg?style=flat)](http://cocoapods.org/pods/ValidatorExtension) diff --git a/ValidatorExtension.podspec b/ValidatorExtension.podspec index 96173af..bafab27 100644 --- a/ValidatorExtension.podspec +++ b/ValidatorExtension.podspec @@ -9,7 +9,7 @@ Pod::Spec.new do |s| s.name = 'ValidatorExtension' s.version = '0.1.0' - s.summary = 'A short description of ValidatorExtension.' + s.summary = 'ValidatorExtension is extension of String & Date class.' # This description is used to generate tags and improve search results. # * Think: What does it do? Why did you write it? What is the focus? @@ -18,7 +18,7 @@ Pod::Spec.new do |s| # * Finally, don't worry about the indent, CocoaPods strips it! s.description = <<-DESC -TODO: Add long description of the pod here. +ValidatorExtension is extension of String & Date. Which used to validate Email id, Trim the string, & finding difference between to date in terms of Seconds, Minute, Hours, Days, Weeks, Months & Years. DESC s.homepage = 'https://github.com/rajanshahsa/ValidatorExtension' diff --git a/ValidatorExtension/Classes/ReplaceMe.swift b/ValidatorExtension/Classes/ReplaceMe.swift deleted file mode 100644 index e69de29..0000000 diff --git a/ValidatorExtension/Classes/ValidatorExtension.swift b/ValidatorExtension/Classes/ValidatorExtension.swift new file mode 100644 index 0000000..13db165 --- /dev/null +++ b/ValidatorExtension/Classes/ValidatorExtension.swift @@ -0,0 +1,88 @@ +// +// Utilities.swift +// CustomTextField +// +// Created by rajan.shah on 21/02/17. +// Copyright © 2017 CocoaPods. All rights reserved. +// + +import Foundation +import UIKit + +// MARK: - Date Class extension +public extension Date { + /// Get text indicating time between caller date and passed date. *Send both dates with Time & both should be in same DateFormate* + /// + /// - Parameter serverDate: date recive from server or from DB + /// - Returns: return text indicating time for ex: Years ago, Month ago, Weeks ago, Days ago, Hours ago, Minutes ago, secods Ago, Just now or Yesterday + public func getDifferanceFromCurrentTime(serverDate : Date) -> String { + var strTimeAgo = "" + let components = Calendar.current.dateComponents([.year, .month, .day, .hour, .minute, .second], from: serverDate, to: self) + if components.year! >= 1{ + strTimeAgo = "\(components.year!) \(components.year == 1 ? "Year" : "Years")" + } + else if components.month! >= 1 { + strTimeAgo = "\(components.month!) \(components.month == 1 ? "Month" : "Months") ago" + } + else if components.day! >= 7 { + strTimeAgo = "\((components.day! / 7)) \(components.day!/7 >= 1 ? "Week" : "Weeks") ago" + } + else { + if components.day == 0 { + if components.hour! >= 1 { + strTimeAgo = "\(components.hour!) \(components.hour == 1 ? "Hour" : "Hours") ago" + } + else if components.minute! >= 1{ + strTimeAgo = "\(components.minute!) \(components.minute == 1 ? "Minute" : "Minutes") ago" + } + else if components.second! >= 1 { + strTimeAgo = "\(components.second!) \(components.second == 1 ? "Second" : "Seconds") ago" + } + else { + strTimeAgo = "Just now" + } + } + else if components.day! == 1{ + strTimeAgo = "Yesterday" + } + else { + strTimeAgo = "\(components.day!) Days ago" + } + } + return strTimeAgo + } +} + + +// MARK: - String extension +public extension String { + /// to trim string + /// + /// - Returns: return trim string + public func trim() -> String { + return self.trimmingCharacters(in: NSCharacterSet.whitespaces) + } + + /// For validating Email + /// + /// - Returns: return true if email id is valid else false + public func isValidEmail() -> Bool { + if self.isEmpty { + return false + } + let laxString: String = "^.+@([A-Za-z0-9-]+\\.)+[A-Za-z]{2}[A-Za-z]*$" + let emailRegex: String = laxString + let emailTest: NSPredicate = NSPredicate(format: "SELF MATCHES %@", emailRegex) + return emailTest.evaluate(with: self) + } + + /// Captialize first latter of string + /// + /// - Returns: String with frist latter capital + public func capitalizingFirstLetter() -> String { + let first = String(characters.prefix(1)).capitalized + let other = String(characters.dropFirst()) + return first + other + } + +}