diff --git a/Example/Heartland-iOS-SDK.xcodeproj/project.pbxproj b/Example/Heartland-iOS-SDK.xcodeproj/project.pbxproj index 8d4538cc..0ed5b56f 100644 --- a/Example/Heartland-iOS-SDK.xcodeproj/project.pbxproj +++ b/Example/Heartland-iOS-SDK.xcodeproj/project.pbxproj @@ -47,7 +47,7 @@ 08D636DD28A9667ED2741E32 /* Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig"; path = "Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig"; sourceTree = ""; }; 253ABA11EC670E90EACA486A /* Pods-Heartland-iOS-SDK_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Heartland-iOS-SDK_Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.release.xcconfig"; sourceTree = ""; }; 2D472C6C84F02E1033D8F882 /* Pods_Heartland_iOS_SDK_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Heartland_iOS_SDK_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3FA9B09A5740798478B9281B /* Heartland-iOS-SDK.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = "Heartland-iOS-SDK.podspec"; path = "../Heartland-iOS-SDK.podspec"; sourceTree = ""; }; + 3FA9B09A5740798478B9281B /* Heartland-iOS-SDK.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = "Heartland-iOS-SDK.podspec"; path = "../Heartland-iOS-SDK.podspec"; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 6003F58A195388D20070C39A /* Heartland-iOS-SDK_Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Heartland-iOS-SDK_Example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 6003F58D195388D20070C39A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 6003F58F195388D20070C39A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; @@ -235,7 +235,6 @@ 6003F587195388D20070C39A /* Frameworks */, 6003F588195388D20070C39A /* Resources */, 38B1A6D6613D7C674CF3033C /* [CP] Embed Pods Frameworks */, - 2C4AB92A6DA16A37E1341990 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -255,7 +254,6 @@ 6003F5AB195388D20070C39A /* Frameworks */, 6003F5AC195388D20070C39A /* Resources */, 38625BB0EE413B866DF8FAF4 /* [CP] Embed Pods Frameworks */, - F4DF8EF29BD28E0291B2EB2A /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -333,28 +331,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Heartland-iOS-SDK_Tests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; - showEnvVarsInLog = 0; - }; - 2C4AB92A6DA16A37E1341990 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-resources.sh\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; 38625BB0EE413B866DF8FAF4 /* [CP] Embed Pods Frameworks */ = { @@ -363,9 +349,14 @@ files = ( ); inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework", + "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Heartland_iOS_SDK.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/XMLDictionary.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -378,9 +369,14 @@ files = ( ); inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework", + "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Heartland_iOS_SDK.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/XMLDictionary.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -393,28 +389,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Heartland-iOS-SDK_Example-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; - showEnvVarsInLog = 0; - }; - F4DF8EF29BD28E0291B2EB2A /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-resources.sh\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ diff --git a/Example/Heartland-iOS-SDK.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/Heartland-iOS-SDK.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/Example/Heartland-iOS-SDK.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/Heartland-iOS-SDK.xcworkspace/xcuserdata/alexander.frolikov.xcuserdatad/UserInterfaceState.xcuserstate b/Example/Heartland-iOS-SDK.xcworkspace/xcuserdata/alexander.frolikov.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 00000000..3be34c83 Binary files /dev/null and b/Example/Heartland-iOS-SDK.xcworkspace/xcuserdata/alexander.frolikov.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/Example/Podfile.lock b/Example/Podfile.lock new file mode 100644 index 00000000..29035dbe --- /dev/null +++ b/Example/Podfile.lock @@ -0,0 +1,23 @@ +PODS: + - Heartland-iOS-SDK (1.0.8.2): + - XMLDictionary + - XMLDictionary (1.4.1) + +DEPENDENCIES: + - Heartland-iOS-SDK (from `../`) + +SPEC REPOS: + https://github.com/CocoaPods/Specs.git: + - XMLDictionary + +EXTERNAL SOURCES: + Heartland-iOS-SDK: + :path: "../" + +SPEC CHECKSUMS: + Heartland-iOS-SDK: 16df76806e63e0808d68b9e0339768690c74c845 + XMLDictionary: fa07b6ff422b3a91d47a5de9bc82e3fc04fbd167 + +PODFILE CHECKSUM: a2d4770e303e82c0989fd39f53fa31499ac49ee9 + +COCOAPODS: 1.5.0 diff --git a/Example/Pods/Local Podspecs/Heartland-iOS-SDK.podspec.json b/Example/Pods/Local Podspecs/Heartland-iOS-SDK.podspec.json new file mode 100644 index 00000000..e137ee41 --- /dev/null +++ b/Example/Pods/Local Podspecs/Heartland-iOS-SDK.podspec.json @@ -0,0 +1,33 @@ +{ + "name": "Heartland-iOS-SDK", + "version": "1.0.8.2", + "summary": "Secure Tokenized Payments by Heartland Payment Systems.", + "description": "Secure Tokenized Payments for iOS by Heartland Payment Systems.", + "homepage": "https://github.com/hps/heartland-ios", + "license": "EULA", + "authors": { + "Heartland Developer Portal": "EntApp_DevPortal@e-hps.com" + }, + "source": { + "git": "https://github.com/hps/heartland-ios.git", + "tag": "1.0.8.2" + }, + "platforms": { + "ios": "8.0" + }, + "requires_arc": true, + "source_files": "Pod/Classes/**/*", + "resource_bundles": { + "Heartland-iOS-SDK": [ + "Pod/Assets/*.png", + "Pod/Assets/*.xib", + "Pod/Certificates/*.*" + ] + }, + "frameworks": "UIKit", + "dependencies": { + "XMLDictionary": [ + + ] + } +} diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock new file mode 100644 index 00000000..29035dbe --- /dev/null +++ b/Example/Pods/Manifest.lock @@ -0,0 +1,23 @@ +PODS: + - Heartland-iOS-SDK (1.0.8.2): + - XMLDictionary + - XMLDictionary (1.4.1) + +DEPENDENCIES: + - Heartland-iOS-SDK (from `../`) + +SPEC REPOS: + https://github.com/CocoaPods/Specs.git: + - XMLDictionary + +EXTERNAL SOURCES: + Heartland-iOS-SDK: + :path: "../" + +SPEC CHECKSUMS: + Heartland-iOS-SDK: 16df76806e63e0808d68b9e0339768690c74c845 + XMLDictionary: fa07b6ff422b3a91d47a5de9bc82e3fc04fbd167 + +PODFILE CHECKSUM: a2d4770e303e82c0989fd39f53fa31499ac49ee9 + +COCOAPODS: 1.5.0 diff --git a/Example/Pods/Pods.xcodeproj/project.pbxproj b/Example/Pods/Pods.xcodeproj/project.pbxproj new file mode 100644 index 00000000..c768590c --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/project.pbxproj @@ -0,0 +1,1907 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 02E50459FB9CFA6A6D13C45DA12AD815 /* HpsPaxBaseResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = CAC38D38E85D9DB0E72B52C52487BA06 /* HpsPaxBaseResponse.m */; }; + 033E8CA34DEDCF08122CC08A17CAA569 /* secure-submit-logo.png in Resources */ = {isa = PBXBuildFile; fileRef = B3B079AA9905F56C60671D55B5284CBD /* secure-submit-logo.png */; }; + 036F6E424A9D671B067A5E2AA5E3AEE1 /* HpsCardData.m in Sources */ = {isa = PBXBuildFile; fileRef = B7E8F88506F7BCE9AE47944A6AB73737 /* HpsCardData.m */; }; + 04A0B0ABC0C8724E1C8F46051B977FF4 /* HpsPaxDebitReturnBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D10F544721B50D56B7CD6627342A6DD /* HpsPaxDebitReturnBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 05423EE6A53FB618A81AADBEF08824D8 /* HpsPaxMessageIDs.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B890997D786B23A69044331C8BD2F1B /* HpsPaxMessageIDs.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 093307F5DD61521B581EB2D926F1A168 /* HpsPaxGiftResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = F0D58302D51745CFF2528EBCC101594C /* HpsPaxGiftResponse.m */; }; + 0959174DAE4BA1F34152E26B897CC64A /* HpsPaxGiftBalanceBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = AE75FA38F00E8B283F1F3ADFDD801404 /* HpsPaxGiftBalanceBuilder.m */; }; + 0AB868299EF7BB9B4A9EB2F13487AA96 /* HpsPaxGiftVoidBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = C95E3B753AF32DE6E67C11952F915530 /* HpsPaxGiftVoidBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0BFAF309813D353D4703ECBDF308AB2A /* HpsPaxCreditVoidBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 4AFDE3D08D6D6D1551AC607B4A21F8AC /* HpsPaxCreditVoidBuilder.m */; }; + 0D30BCF9C5B51B913BE1E0244009329F /* HpsCardEntry.h in Headers */ = {isa = PBXBuildFile; fileRef = 65BCA21A34730EC47A5B30922C755CAD /* HpsCardEntry.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0D48D1BC9657C7DE8618973ECA454DB6 /* HpsDeviceMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 41D59F9EE04239C9C465553ADD3B3354 /* HpsDeviceMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0EFAB087F0C59562207AD9943B994B70 /* HpsPaxAccountRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 74EB825B69542DCF6AFE55556EE55A7D /* HpsPaxAccountRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 10364BF07F9BD6F65875E92534288B80 /* HpsTokenService.h in Headers */ = {isa = PBXBuildFile; fileRef = 72A1BB2F1A6046965865758F3F51B3E4 /* HpsTokenService.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 12D70BE697E04A0BE66A3047E6BB20A8 /* HpsPaxEcomSubGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = E6355DC711A7118B768080DEF417118D /* HpsPaxEcomSubGroup.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 136BF4CEB7950D8C698D506E033379F4 /* HpsEncryptionData.m in Sources */ = {isa = PBXBuildFile; fileRef = AF3AA6FC24629C120E393677B59CEA2A /* HpsEncryptionData.m */; }; + 1489BF04023130191A7A7B1A38D0F425 /* HpsPaxCreditSaleBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = AA5AFD7FDB6D1062EEEE66395FE35972 /* HpsPaxCreditSaleBuilder.m */; }; + 15881E7CC4B9B07A55DA991779BECB2C /* HpsHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = D77BE50F496D1538433ED9901E2F6A6F /* HpsHeader.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1755E7FC4F5F6DA2555A3347D555AA34 /* HpsAdditionalTxnFields.h in Headers */ = {isa = PBXBuildFile; fileRef = BC04150A08DB6444AF2B24EADF9F2737 /* HpsAdditionalTxnFields.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1896DFC276ECA8E4EA572EB127808603 /* HpsAddress.m in Sources */ = {isa = PBXBuildFile; fileRef = F7D73A38BD3D16158F5B91F8989B5F70 /* HpsAddress.m */; }; + 1934AE6B8A389DC40110462E013D712E /* HpsPaxTcpInterface.m in Sources */ = {isa = PBXBuildFile; fileRef = 2766699B7761BDFA32E030CAC9B34D38 /* HpsPaxTcpInterface.m */; }; + 19811C6CA9AB3657DB1EA84CFAFF1ED2 /* HpsPaxDevice.h in Headers */ = {isa = PBXBuildFile; fileRef = 3BB46F5838587812842337C0885F1095 /* HpsPaxDevice.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1B74148DB923D439F3D36753C288E458 /* HpsCardEntryViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 4248D69A11A3CC0EEB02EDE9D762C15E /* HpsCardEntryViewController.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1C90C06976EEE6E8CB8B920610D54B3C /* HpsPaxCreditReturnBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7773F954B8850B70BD010E0F0D980161 /* HpsPaxCreditReturnBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 209468CDFD46237982FEBAA20CA5B464 /* HpsPaxCommercialResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C76011F68A9FD46E60B5F55E2FF5FAE /* HpsPaxCommercialResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 222315DAF92E8E13B602218E6A6197CF /* HpsPaxHostResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E9381A7B62401E1F491825D8AABE7BE0 /* HpsPaxHostResponse.m */; }; + 2528D812E59A46024D3EFE46CF36AA74 /* HpsPaxHttpInterface.m in Sources */ = {isa = PBXBuildFile; fileRef = 0513ACBCDF34AF627D3C4719716E198B /* HpsPaxHttpInterface.m */; }; + 280CEE6D3EFB106DC429E083D7159344 /* HpsPaxAvsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 33100E7A8969A3D930BF00A5DAD3EBD2 /* HpsPaxAvsResponse.m */; }; + 284EB589D4ACB7D63E7A85AA988A305F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FE0100D67496D3F74C8141F33EFC1B4 /* UIKit.framework */; }; + 295862A34E587628C7AA4271004986CF /* HpsPaxTraceRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = DF5F5DBD3C9EA56FA49B222A6601BE50 /* HpsPaxTraceRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 29F08EF6DDC39FDBC50C88CDDF181B01 /* HpsHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = F438427561077EAEC7BD1609AC7D2A04 /* HpsHeader.m */; }; + 2AE2344A805893543A94CAF7B6AFB0FD /* HpsPaxCreditReturnBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 001370D7AE43E56A35745AEE2273796A /* HpsPaxCreditReturnBuilder.m */; }; + 2EA66502CACE6EB3E879AC6B4F8A4D4C /* Pods-Heartland-iOS-SDK_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FD03196B3F7712634B320E7A11B63D39 /* Pods-Heartland-iOS-SDK_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2EC197F0A4EA931FA90962D289740C38 /* HpsPaxAmountRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = F0D42E43FBCB0D8ED385CE3D0C103568 /* HpsPaxAmountRequest.m */; }; + 326C6E6CF89666D35BEC2314DD04A48F /* HpsPaxCreditAuthBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 4A77617B6B9C68EDF49B66C009C1DF10 /* HpsPaxCreditAuthBuilder.m */; }; + 32C816956A3A45486B8C5B9E676535FD /* HpsTransaction.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F4289A84D6CF09FD28003FF44169316 /* HpsTransaction.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3584CDD7FFC21D387A19D2E6E6F22BDA /* HpsDeviceProtocols.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AA0C8448480D7ADF5E2D29532C61099 /* HpsDeviceProtocols.m */; }; + 36C2E2186FCABFEAA350D5D0DE951264 /* HpsDeviceMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = A5F1D971D0A8967F2302FE36ECF51CCD /* HpsDeviceMessage.m */; }; + 3D220DFDFF2C7D1E126FA135561BC2D6 /* XMLDictionary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 56CBA65B578E766413ABC8342809C329 /* XMLDictionary.framework */; }; + 3D8D410F1FF48DEE2E04F4B2132D6E07 /* XMLDictionary-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 48ED6F513B57305E0DAC7DC423554ECD /* XMLDictionary-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3E0E051DF7AE02F630B37AE8ABC4EC77 /* HpsPaxGiftBalanceBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DCFA6A6DF83B3269F382C1092178268 /* HpsPaxGiftBalanceBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3E83C00125EA911B0A84392746CE275B /* HpsPaxCommercialRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 03D68BDED2E733D140E8BCFFAACB0635 /* HpsPaxCommercialRequest.m */; }; + 3FCA719D061CAEDD62DF5BC08BA16A16 /* HpsPaxCreditAuthBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 91022389D6B21CF1342D02E763352D57 /* HpsPaxCreditAuthBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4065BA86971B5D779427B924DB915480 /* HPSCardEntryViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 45D9A8FF33A2F983029F4A5ADBA53D14 /* HPSCardEntryViewController.xib */; }; + 436964C904978C8547DA2F963230D3EE /* api2.heartlandportico.com.cer in Resources */ = {isa = PBXBuildFile; fileRef = 4148B5CB00C626BFAACE5232D2C803B3 /* api2.heartlandportico.com.cer */; }; + 454F2E9A0DB5B37781882E2274FE8044 /* HpsGiftCard.m in Sources */ = {isa = PBXBuildFile; fileRef = 515186E2440807A41E8FA087A7E8FE3D /* HpsGiftCard.m */; }; + 45B04969A9FBA248C01DBA06AD5D7501 /* HpsPaxInitializeResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D99A49A67B597D4B16F7C668CDA4B6D /* HpsPaxInitializeResponse.m */; }; + 4829B26D8D31CEBAC88A91A36CFBD551 /* HpsPaxDebitReturnBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 909FDA885116EA9AFE1C0FB9B5FFF609 /* HpsPaxDebitReturnBuilder.m */; }; + 4C76E815FD6A95C77DE89DDDBB439B7E /* HpsPaxHttpInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E80DE11A2AD616826B3446B6344383E /* HpsPaxHttpInterface.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4D596DF4A7A3C90D84CE600BB60AA751 /* HpsPaxTraceResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 0EEE1954E9C2F6761FBA13D34C1DD189 /* HpsPaxTraceResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4D8B82BB65D5702E1285EA56A9EF6B3A /* Pods-Heartland-iOS-SDK_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F1716B4059268967DF201C2A5C9A450C /* Pods-Heartland-iOS-SDK_Tests-dummy.m */; }; + 4F34757F180D29F69F5F0CE96D55C14C /* HpsPaxExtDataSubGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = 9930CCAFA6FEB00A64951CBB693E3667 /* HpsPaxExtDataSubGroup.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 50BE594E104E50357A98BF86537A5A5B /* HpsGiftCard.h in Headers */ = {isa = PBXBuildFile; fileRef = AA77901606317A30B35590CD118EC1AE /* HpsGiftCard.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5B39C5CD0B17E50F5E04336F71E534C4 /* HpsPaxBatchCloseResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = A38364179E7F14A17F746759525B015B /* HpsPaxBatchCloseResponse.m */; }; + 5CDD58C6AA187FDC972D7761B7F3AAD0 /* HpsPaxCreditVoidBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 71877CECB51BAB303811A860BAE8AD03 /* HpsPaxCreditVoidBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5F7CF071DFC1B45BFA6A6DB14845AAF6 /* HpsPaxInitializeResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = A28B47DD52A62A6D7709E7C378EB0BCB /* HpsPaxInitializeResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6145FF02576993DB2CB57D4235D67ED4 /* HpsPaxCreditResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A3C2456AF42589CB4EF34CB9221C76C /* HpsPaxCreditResponse.m */; }; + 650519B135CDE4523DDAF6EF2CCB0199 /* HpsPaxDebitSaleBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DD7BE2F80983F142F2D547257418436 /* HpsPaxDebitSaleBuilder.m */; }; + 6602B54520D14B5C006B4B95 /* *.api2.heartlandportico.com.cer in Resources */ = {isa = PBXBuildFile; fileRef = 6602B54420D14B5C006B4B95 /* *.api2.heartlandportico.com.cer */; }; + 68E2D5B6680E6DAE93D5137BD6BF5016 /* HpsTerminalResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FFC22C60CCE5D5CF323ADAE986E4680 /* HpsTerminalResponse.m */; }; + 69249D9371CF9044A30BA2B811FDEC87 /* HpsEncryptionData.h in Headers */ = {isa = PBXBuildFile; fileRef = AE132E542C8D5E6B45CF66168F1E50E4 /* HpsEncryptionData.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69632F961C74D2CF6CD6230B95413772 /* HpsPaxExtDataSubGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E683BCCFA45451B52230C167186F0AD /* HpsPaxExtDataSubGroup.m */; }; + 6B1B28F61BD16DD48B54E113CA14C945 /* HpsPaxHostResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = BD8C0D713D4738B4C58B3F0C8C220C48 /* HpsPaxHostResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6BFCA6BA982C6A2016EAB4044930FCE3 /* XMLDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 7412ED7898D99C9BE2A2FA4D8DB4195D /* XMLDictionary.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 6C89968CA95F1D06F0DE4E8731A557DA /* HpsCardEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = FF13A4B70E28528F7C37F413AA2E5612 /* HpsCardEntry.m */; }; + 6CDE20109F2D90FF1A04B0B1F5648C31 /* HpsPaxAccountRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = F8AEF1E4F68BC4168F514A552F53FA1D /* HpsPaxAccountRequest.m */; }; + 6E87B936F7CEEC890B0CCDDD384E1530 /* HpsPaxCashierSubGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = 35E7D6BCFE8A3DFD9B52A971B2AB9AF2 /* HpsPaxCashierSubGroup.m */; }; + 6F0738B8BFB0A4C07CAFFDA46014352C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC15522CF1FCC13018B27F98F6CC8BB /* Foundation.framework */; }; + 717D59E14AA9CB553C45E79D6E06A33A /* HpsPaxCreditCaptureBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = FAAA87F44DBA0863F9FD720CFE65B58C /* HpsPaxCreditCaptureBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 725BE7069B8BDF379FC2F5D1626A360E /* HpsPaxDevice.m in Sources */ = {isa = PBXBuildFile; fileRef = E050886294DC816DDCA30E4F45C32A0C /* HpsPaxDevice.m */; }; + 7318F5058D5696D03EB4455C0C13493C /* HpsPaxBatchCloseResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 36F8540765530EA343E76D1F8B180E2E /* HpsPaxBatchCloseResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 767BB565E67D719EC5B25FF0B53CD9B5 /* HpsPaxGiftAddValueBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 6749C8B622A5C89D296055B6ADA94CC9 /* HpsPaxGiftAddValueBuilder.m */; }; + 782C62652113C7736968A52401738EF1 /* HpsTransaction.m in Sources */ = {isa = PBXBuildFile; fileRef = 7553B12957CDD6C63E219467ADC1648A /* HpsTransaction.m */; }; + 7ED0E900CCFB50D5BC0E0CD94269CDE2 /* HpsPaxTraceRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 5B8C4AE03DAE6F52F14B70C02B4074D3 /* HpsPaxTraceRequest.m */; }; + 8022493B6AACD1E737B410C00FA10967 /* HpsPaxMessageIDs.m in Sources */ = {isa = PBXBuildFile; fileRef = F38612C22F6FB9291D84186242727713 /* HpsPaxMessageIDs.m */; }; + 8061347BFD34BD8FC49A1988737CFC8D /* HpsPaxCreditVerifyBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = C4A47749B14A88DA971A6A958D6AEB0D /* HpsPaxCreditVerifyBuilder.m */; }; + 8138E3BCCEAEA69C956B98D9006495B3 /* HpsPaxCommercialRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F38941DBECCFE2DE51151D38E9977F6 /* HpsPaxCommercialRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 819437395A586F7F7FC2F30B4F65A21B /* HpsPaxGiftAddValueBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = A94C562D8408A2514EC97406950FDB36 /* HpsPaxGiftAddValueBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 84716290171F164CAEC47C71B8840911 /* HpsCreditCard.m in Sources */ = {isa = PBXBuildFile; fileRef = FD43545EF89579219A40D547B18F01A6 /* HpsCreditCard.m */; }; + 851170E51054C041758CB1A3867E536E /* HpsPaxEcomSubGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = 708198EAFCDA318F2316F4611333C79A /* HpsPaxEcomSubGroup.m */; }; + 8631DCDE76BDA7F92EF82CCBB4CEC8EF /* HpsBinaryDataScanner.m in Sources */ = {isa = PBXBuildFile; fileRef = E47D5F13B5B1E9D797A856F9268C27C4 /* HpsBinaryDataScanner.m */; }; + 8642DA4E9768B041E399B44EC17C9688 /* HpsConnectionConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = D586B9D7D04A21DBD8E63CEC7965F74F /* HpsConnectionConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8759A5618217421876F0C89A4C7BDE93 /* HpsPaxTraceResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = F0C0DE086FAF84F65F209F25DBEF4B82 /* HpsPaxTraceResponse.m */; }; + 8991EBF21F579003525D504D8F473AFB /* HpsTokenService.m in Sources */ = {isa = PBXBuildFile; fileRef = CA6BB7D584B8DF8117D143CE3C42C0A0 /* HpsTokenService.m */; }; + 8A767C4E2285B5BB48E3631F0107EB77 /* XMLDictionary-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C270AEFFFC5901D0F2E1362268053C77 /* XMLDictionary-dummy.m */; }; + 8B18893A0952A1D8549A4280F21C0E9E /* HpsPaxAmountRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = A2C27AC845F1DF7239E7FCCA7E22BE8E /* HpsPaxAmountRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8E8BBEE340068857650F4E52D919C2EE /* HpsBinaryDataScanner.h in Headers */ = {isa = PBXBuildFile; fileRef = 60E0A947B2FBEECD5629330FAF685902 /* HpsBinaryDataScanner.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8F5FC03507179FB1A13C12743D0DD2BA /* HpsPaxDebitResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = E46EF7951CD051E08DAE6322F1B0078B /* HpsPaxDebitResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 917798322CCDC11DD72D00BDCECCE73A /* hps.h in Headers */ = {isa = PBXBuildFile; fileRef = D6A83F0C683E08DB2E10F1A615B44674 /* hps.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 93823A3D33DB68E49E63F8850DD53107 /* HpsGatewayData.h in Headers */ = {isa = PBXBuildFile; fileRef = A29541E4BFA8C8D8FD323E5A0C2DEACC /* HpsGatewayData.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 94DC97F348D86EF1AC42F5B35196B54C /* HpsTransactionDetails.m in Sources */ = {isa = PBXBuildFile; fileRef = 43EFF32A670AD36EFAB348FD711A30B4 /* HpsTransactionDetails.m */; }; + 962F660046756F861E948FDCC3456B43 /* HpsTokenData.h in Headers */ = {isa = PBXBuildFile; fileRef = C6EFA3E8038C34116E5F44D1EA1E2469 /* HpsTokenData.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9928ED562105707D7201BF5DDB4654E2 /* HpsTerminalUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 641D08F7A93F2142D5A2F75C2ACF4543 /* HpsTerminalUtilities.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9A9BD8CB18FC5029DF696EF9197026A4 /* HpsCreditCard.h in Headers */ = {isa = PBXBuildFile; fileRef = 480C1C36213E2568C9C67AD9CFBF5ADC /* HpsCreditCard.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9BA3CF5073422F92B507E95957E8179B /* HpsPaxCommercialResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = CA143F1E015EFC2051CA6B0C0DCEDBD5 /* HpsPaxCommercialResponse.m */; }; + 9CFA6128183EB31AB6AA7CD0F824AC90 /* HpsCardEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3BBE1E5CCAE3FD4CB71050B2F62980 /* HpsCardEntryViewController.m */; }; + A2138DD76AAAF8D8FE3E6487CE295FB3 /* HpsCardData.h in Headers */ = {isa = PBXBuildFile; fileRef = B862A5404ACE40E0F2E9E5A66A7B1562 /* HpsCardData.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A7BAFB3718D69BCD319C9C05FA1A126C /* HpsGatewayService.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F9503E2E825F99CB4ED1D9B4FCD3740 /* HpsGatewayService.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A8C2C66AE26570864B57074DBB20BFE0 /* HpsCommon.h in Headers */ = {isa = PBXBuildFile; fileRef = F6E579D50BF610FFB15B95EA470128CE /* HpsCommon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AB386B08FE2EC845F894321E8369FC80 /* HpsPaxCreditCaptureBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = DE28E9381288FA48AED545F8A1745E1E /* HpsPaxCreditCaptureBuilder.m */; }; + AB6B6567240EA58CA98263F52E5DEAD3 /* HpsTerminalResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F6D8D5232850178A9E23D77BAA98351 /* HpsTerminalResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AD1EAF0FD35CB765E5F3EDD71DB37E34 /* HpsPaxCashierSubGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C8DC81DF21A32448F3D35CF44E24E32 /* HpsPaxCashierSubGroup.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AD86996B1164D1B9F7A1C593804E75AD /* HpsCardHolderData.h in Headers */ = {isa = PBXBuildFile; fileRef = F657F21F98B6312557085F2EAAA765FF /* HpsCardHolderData.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AE66D1837FB37A92C1099D003C32FED5 /* HpsAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D428A7158BAFDD56985CA90D4F2D31E /* HpsAddress.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AF07DD8D55E1505CC3F7C827CCFEF736 /* Heartland-iOS-SDK-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 04F8A91704C5C83AFE48D231520E29E3 /* Heartland-iOS-SDK-dummy.m */; }; + AF6930334AFCA99D489379FDD6364C73 /* HpsPaxCreditVerifyBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = F9E97FEB552CA8599D01A508BE456AB5 /* HpsPaxCreditVerifyBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B07FB0A095CEF6DE06E8CE79F2C3F7C9 /* HpsGatewayData.m in Sources */ = {isa = PBXBuildFile; fileRef = 7CD471F023EC8D0F2172B72075D8DD42 /* HpsGatewayData.m */; }; + B322CAE0994DBAFE0ED2D84C40B9D47F /* HpsPaxTcpInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D79E3453AF37312B2FB016C0EA8F5E /* HpsPaxTcpInterface.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B353590E7992DFD9B55BB9503F2064B0 /* HpsPaxAccountResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 07FF1726EF49E358BF27D15A9FB31530 /* HpsPaxAccountResponse.m */; }; + B5658BAEC0C0764548A04192D0979A24 /* HpsPaxGiftSaleBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 79769EC0E5290C7272EC396780FE27A2 /* HpsPaxGiftSaleBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B9416C016BF77213E9E6738240537980 /* HpsAdditionalTxnFields.m in Sources */ = {isa = PBXBuildFile; fileRef = F0AC624555E652F12CD6A18EE27F649C /* HpsAdditionalTxnFields.m */; }; + B97B00478E6D18672737574CA6C8581B /* HpsPaxDebitResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = AAB1E1B56FA6F53764301A042E4CD21B /* HpsPaxDebitResponse.m */; }; + BC9AFA004C087DA99F7E44FBCE0632A0 /* HpsPosRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 5FBA95CABDEF3CB020CA2F0062F4638D /* HpsPosRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C233309C749E6772FD4888506AB9CAAD /* HpsGatewayService.m in Sources */ = {isa = PBXBuildFile; fileRef = EC956F480BE233E57830ED69EE2F7228 /* HpsGatewayService.m */; }; + C24881871A973879C315ED3D21CAE204 /* HpsDeviceProtocols.h in Headers */ = {isa = PBXBuildFile; fileRef = 36F6BDD5FB2830A84BF815C8954C2A0D /* HpsDeviceProtocols.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C3A0DABF39DDECF6A8584A68100A6C10 /* HpsCardHolderData.m in Sources */ = {isa = PBXBuildFile; fileRef = 30A1A2C857DA4EED7D1B85FAE3802122 /* HpsCardHolderData.m */; }; + C4EFFF6C7A37CEFAF0254FDCAA84890D /* HpsTokenData.m in Sources */ = {isa = PBXBuildFile; fileRef = 151A7D5B987AB160B3FF6C0D71D7F1C9 /* HpsTokenData.m */; }; + C61704C923250DB2FFF3E78746B7F19A /* HpsPaxGiftSaleBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 844EB7B93738D15C37760AE7ABDAEBED /* HpsPaxGiftSaleBuilder.m */; }; + C6A65EC41EA764B54FA291510AAE33C0 /* Pods-Heartland-iOS-SDK_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0B6E002F17C5113BC0194E5AB6269D2C /* Pods-Heartland-iOS-SDK_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C73510DF52936410A74D6789122F57FC /* Heartland-iOS-SDK.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 65C3793845F7F29EC01F2C7FFB073968 /* Heartland-iOS-SDK.bundle */; }; + C973AA1CD7FC182A44553C5A2C040AE4 /* HpsTerminalEnums.m in Sources */ = {isa = PBXBuildFile; fileRef = 47C4004D3E106F4F518B2F97F94AB838 /* HpsTerminalEnums.m */; }; + CAB2E2E747E007AF9081428F68F5893E /* Pods-Heartland-iOS-SDK_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0ACE79F40806F1605EC3C7E9FD4F4E87 /* Pods-Heartland-iOS-SDK_Example-dummy.m */; }; + CBFBA7CA452EFA18446995FC761D83CB /* HpsPaxAvsResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 90746E9520BABC1BE54E377A75BEED18 /* HpsPaxAvsResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + CCCE12A12EFA402B3E583485372EEDA5 /* HpsPaxDeviceResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E7507405C813945F487D89D3E602C4A /* HpsPaxDeviceResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + CFC374F1AFDF5A14D3D13B74B6F6173F /* HpsPaxGiftResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 8DB339145A748948B8C52C047069BB3D /* HpsPaxGiftResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D013125C66593162E081C5FA6D830BB3 /* HpsPaxAmountResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 73D1141F3CF17206138FC737D27684A9 /* HpsPaxAmountResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D33B1484247F0E59AFD4E2434A4A58E8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC15522CF1FCC13018B27F98F6CC8BB /* Foundation.framework */; }; + D3D4E9BA5937A7BB231D42C6161A7BB8 /* HpsPaxAccountResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 5BE88F852C785C3B2BD5C47C08A6C8A2 /* HpsPaxAccountResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D48DAE86112B3159A598EDCB105A2766 /* HpsPaxAvsRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A549BC5C78C5F85F3F8A589EBFBBD36 /* HpsPaxAvsRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D5A28040A9DDB429926130C5ABC60410 /* HpsPaxDeviceResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 58F56E88F676AA8DD8717C4EEEDDFC72 /* HpsPaxDeviceResponse.m */; }; + DB5DC49C635F0F387314DEF9FFACD54A /* HpsPosRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AA8B7576B0FDF80199A16AEE6E46EEC /* HpsPosRequest.m */; }; + DBCEA37157033F9B060D34EC368C1ADC /* HpsPaxAvsRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8AF4746B91FEC9CC4EB0A0760266BED0 /* HpsPaxAvsRequest.m */; }; + DC0253C0C6790126B4B5FB8B1C6F0561 /* HpsTerminalEnums.h in Headers */ = {isa = PBXBuildFile; fileRef = 3E46E4F57FEEF0BA582D5508F02BF0F0 /* HpsTerminalEnums.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DCDF19AF71BEB249967C1E6AB0CA00E5 /* HpsPaxCreditResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 59953FA95865AD43FCB0D5D5691F7CB8 /* HpsPaxCreditResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DF3A917E070218F0F7BE63D3C0DA90E4 /* HpsPaxAmountResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = A04105BB445748CA39853A55311E29DA /* HpsPaxAmountResponse.m */; }; + E0EE2AEC5F39A0319BE0BB3F151A08F0 /* HpsTransactionDetails.h in Headers */ = {isa = PBXBuildFile; fileRef = 0B2DFDE2A22D48817B94E13AE01F6DB1 /* HpsTransactionDetails.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E2D198F2FF7572FC3A01F90A18FEFA7C /* HpsServicesConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 6CF977CC194552DAB40E3FB5881165D6 /* HpsServicesConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E54F47EF0C0E585EDC3047C300040DEA /* heartlandlogo.png in Resources */ = {isa = PBXBuildFile; fileRef = 82A564E0BE9A0C55F2FADAB1C0781CB3 /* heartlandlogo.png */; }; + E551CF26E38DF0A0DD77B079054F6D8F /* HpsPaxBaseResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = F879A69935F2F89EABE9946A36386AD6 /* HpsPaxBaseResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E59E112C1396A9D055934C01F5AF2280 /* HpsPaxDebitSaleBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = DF32A41CD93C1EA207DF6CF169394082 /* HpsPaxDebitSaleBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E5FB908C1E9F89DFF315C086D4739C46 /* HpsPaxGiftVoidBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = D67BA7F1221F40B4B066C81C803B78DC /* HpsPaxGiftVoidBuilder.m */; }; + E604352694485E0E02E0FE74AC77007C /* Heartland-iOS-SDK-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 08E5E372F08F65407FC3A13548E35F62 /* Heartland-iOS-SDK-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + ECFEFDE8132858EB3BFE805A0AE58410 /* HpsConnectionConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 46757BA545F11D7A61AB4D6AA9C1C1B2 /* HpsConnectionConfig.m */; }; + EE7EDA6AA2D53FF0297FCC7B41B3A81C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC15522CF1FCC13018B27F98F6CC8BB /* Foundation.framework */; }; + EE85678800234D206367A20E5C0E7D5A /* HpsPaxCreditSaleBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D199D679F2DFCA0B893D3342A4B63EC /* HpsPaxCreditSaleBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F0C97858448ECC3A6ACE704A1F0083DB /* HpsTerminalUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 713E0CE5360D0C1AF53D0634FCAEC8E2 /* HpsTerminalUtilities.m */; }; + F1471758F5EB670C3AF52F4087DBA3B6 /* HpsServicesConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 5636DF9B989B1BFCD651BEBD36FF0259 /* HpsServicesConfig.m */; }; + F204AE7959EB19E1DEC91F585962597B /* HpsCommon.m in Sources */ = {isa = PBXBuildFile; fileRef = B0F5A87224E87D04557E5831687A1AE9 /* HpsCommon.m */; }; + F25EE1B0FFEDC0CD6CC00B6B2C27DA8F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC15522CF1FCC13018B27F98F6CC8BB /* Foundation.framework */; }; + F72FB912C308B2D8317ECAAD7A9804BB /* XMLDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = CE4B977FDDF201EC7DA6CC0E724F2FC2 /* XMLDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 0D2ADF4FEF32736DB83C6B42BDE37970 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = F56A94D4551B58DFDA27C533B178CD89; + remoteInfo = XMLDictionary; + }; + 54707C4613D0E7EC3C3CF6B6FD84F326 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = F56A94D4551B58DFDA27C533B178CD89; + remoteInfo = XMLDictionary; + }; + 978F5767CCDA002B1E29A4CF55841921 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2DB6824BD2009BF5C06C85D014B62D77; + remoteInfo = "Heartland-iOS-SDK"; + }; + B13E721DCD1926280416818484F59FD6 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = F56A94D4551B58DFDA27C533B178CD89; + remoteInfo = XMLDictionary; + }; + DFC8A77878348ADDDEE6E43AC99021CB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4938244EAF6244320BA6A03BE568227E; + remoteInfo = "Heartland-iOS-SDK-Heartland-iOS-SDK"; + }; + FE3179EEDAAB67D774B430FC43513B13 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2DB6824BD2009BF5C06C85D014B62D77; + remoteInfo = "Heartland-iOS-SDK"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 001370D7AE43E56A35745AEE2273796A /* HpsPaxCreditReturnBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditReturnBuilder.m; sourceTree = ""; }; + 03D68BDED2E733D140E8BCFFAACB0635 /* HpsPaxCommercialRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCommercialRequest.m; sourceTree = ""; }; + 04EF18682954A4402485AB6EB076B47A /* Pods-Heartland-iOS-SDK_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Heartland-iOS-SDK_Example.modulemap"; sourceTree = ""; }; + 04F8A91704C5C83AFE48D231520E29E3 /* Heartland-iOS-SDK-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Heartland-iOS-SDK-dummy.m"; sourceTree = ""; }; + 0513ACBCDF34AF627D3C4719716E198B /* HpsPaxHttpInterface.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxHttpInterface.m; sourceTree = ""; }; + 07FF1726EF49E358BF27D15A9FB31530 /* HpsPaxAccountResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxAccountResponse.m; sourceTree = ""; }; + 08E5E372F08F65407FC3A13548E35F62 /* Heartland-iOS-SDK-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Heartland-iOS-SDK-umbrella.h"; sourceTree = ""; }; + 0ACE79F40806F1605EC3C7E9FD4F4E87 /* Pods-Heartland-iOS-SDK_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Heartland-iOS-SDK_Example-dummy.m"; sourceTree = ""; }; + 0B2DFDE2A22D48817B94E13AE01F6DB1 /* HpsTransactionDetails.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTransactionDetails.h; sourceTree = ""; }; + 0B6E002F17C5113BC0194E5AB6269D2C /* Pods-Heartland-iOS-SDK_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Heartland-iOS-SDK_Tests-umbrella.h"; sourceTree = ""; }; + 0CCDB5BB30A319A5D3166630E656C8D5 /* Pods-Heartland-iOS-SDK_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Heartland-iOS-SDK_Example-acknowledgements.markdown"; sourceTree = ""; }; + 0EEE1954E9C2F6761FBA13D34C1DD189 /* HpsPaxTraceResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxTraceResponse.h; sourceTree = ""; }; + 151A7D5B987AB160B3FF6C0D71D7F1C9 /* HpsTokenData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTokenData.m; sourceTree = ""; }; + 1598C64A982D976869D6040E19206D8C /* Pods-Heartland-iOS-SDK_Tests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Heartland-iOS-SDK_Tests-frameworks.sh"; sourceTree = ""; }; + 1B96F103E8357B56B35C28CF9949E6A3 /* Pods_Heartland_iOS_SDK_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Heartland_iOS_SDK_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 1D199D679F2DFCA0B893D3342A4B63EC /* HpsPaxCreditSaleBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditSaleBuilder.h; sourceTree = ""; }; + 1D3BBE1E5CCAE3FD4CB71050B2F62980 /* HpsCardEntryViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsCardEntryViewController.m; sourceTree = ""; }; + 1F4289A84D6CF09FD28003FF44169316 /* HpsTransaction.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTransaction.h; sourceTree = ""; }; + 1FE0100D67496D3F74C8141F33EFC1B4 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; + 2766699B7761BDFA32E030CAC9B34D38 /* HpsPaxTcpInterface.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxTcpInterface.m; sourceTree = ""; }; + 2A3C2456AF42589CB4EF34CB9221C76C /* HpsPaxCreditResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditResponse.m; sourceTree = ""; }; + 2C7EBD24D65D80B0F8DCAD2703738707 /* Pods-Heartland-iOS-SDK_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Heartland-iOS-SDK_Tests-acknowledgements.plist"; sourceTree = ""; }; + 2F38941DBECCFE2DE51151D38E9977F6 /* HpsPaxCommercialRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCommercialRequest.h; sourceTree = ""; }; + 2F9503E2E825F99CB4ED1D9B4FCD3740 /* HpsGatewayService.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsGatewayService.h; sourceTree = ""; }; + 30A1A2C857DA4EED7D1B85FAE3802122 /* HpsCardHolderData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsCardHolderData.m; sourceTree = ""; }; + 33100E7A8969A3D930BF00A5DAD3EBD2 /* HpsPaxAvsResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxAvsResponse.m; sourceTree = ""; }; + 35E7D6BCFE8A3DFD9B52A971B2AB9AF2 /* HpsPaxCashierSubGroup.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCashierSubGroup.m; sourceTree = ""; }; + 36F6BDD5FB2830A84BF815C8954C2A0D /* HpsDeviceProtocols.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsDeviceProtocols.h; sourceTree = ""; }; + 36F8540765530EA343E76D1F8B180E2E /* HpsPaxBatchCloseResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxBatchCloseResponse.h; sourceTree = ""; }; + 3AA0C8448480D7ADF5E2D29532C61099 /* HpsDeviceProtocols.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsDeviceProtocols.m; sourceTree = ""; }; + 3BB46F5838587812842337C0885F1095 /* HpsPaxDevice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxDevice.h; sourceTree = ""; }; + 3C76011F68A9FD46E60B5F55E2FF5FAE /* HpsPaxCommercialResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCommercialResponse.h; sourceTree = ""; }; + 3E46E4F57FEEF0BA582D5508F02BF0F0 /* HpsTerminalEnums.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTerminalEnums.h; sourceTree = ""; }; + 3F6D2AA985483512258B9807F1C18E8C /* Pods_Heartland_iOS_SDK_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Heartland_iOS_SDK_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 3F9F05F890C74258189FD8E65E50352C /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 40B057E38A35F1B527D2ED473B2E1CBE /* Pods-Heartland-iOS-SDK_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Heartland-iOS-SDK_Tests.modulemap"; sourceTree = ""; }; + 4148B5CB00C626BFAACE5232D2C803B3 /* api2.heartlandportico.com.cer */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; path = api2.heartlandportico.com.cer; sourceTree = ""; }; + 4195B0F3DF691C544F99A9EF9A6EEF68 /* Heartland_iOS_SDK.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Heartland_iOS_SDK.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 419FACCBEBE11983010FFD9F1F4F5D62 /* Pods-Heartland-iOS-SDK_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Heartland-iOS-SDK_Example.debug.xcconfig"; sourceTree = ""; }; + 41D59F9EE04239C9C465553ADD3B3354 /* HpsDeviceMessage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsDeviceMessage.h; sourceTree = ""; }; + 4248D69A11A3CC0EEB02EDE9D762C15E /* HpsCardEntryViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsCardEntryViewController.h; sourceTree = ""; }; + 43EFF32A670AD36EFAB348FD711A30B4 /* HpsTransactionDetails.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTransactionDetails.m; sourceTree = ""; }; + 45D9A8FF33A2F983029F4A5ADBA53D14 /* HPSCardEntryViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; path = HPSCardEntryViewController.xib; sourceTree = ""; }; + 46757BA545F11D7A61AB4D6AA9C1C1B2 /* HpsConnectionConfig.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsConnectionConfig.m; sourceTree = ""; }; + 47C4004D3E106F4F518B2F97F94AB838 /* HpsTerminalEnums.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTerminalEnums.m; sourceTree = ""; }; + 480C1C36213E2568C9C67AD9CFBF5ADC /* HpsCreditCard.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsCreditCard.h; sourceTree = ""; }; + 48ED6F513B57305E0DAC7DC423554ECD /* XMLDictionary-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "XMLDictionary-umbrella.h"; sourceTree = ""; }; + 4A77617B6B9C68EDF49B66C009C1DF10 /* HpsPaxCreditAuthBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditAuthBuilder.m; sourceTree = ""; }; + 4AFDE3D08D6D6D1551AC607B4A21F8AC /* HpsPaxCreditVoidBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditVoidBuilder.m; sourceTree = ""; }; + 4B5D47F2D31AF5025C908A7A52243A7A /* Pods-Heartland-iOS-SDK_Tests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Heartland-iOS-SDK_Tests-resources.sh"; sourceTree = ""; }; + 4C8DC81DF21A32448F3D35CF44E24E32 /* HpsPaxCashierSubGroup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCashierSubGroup.h; sourceTree = ""; }; + 4D3847003157FF9294BA27A8C6E02AC1 /* Heartland-iOS-SDK-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Heartland-iOS-SDK-prefix.pch"; sourceTree = ""; }; + 4D646D46C886B2D15AA45EEC64C76261 /* Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig"; sourceTree = ""; }; + 4E7507405C813945F487D89D3E602C4A /* HpsPaxDeviceResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxDeviceResponse.h; sourceTree = ""; }; + 4E80DE11A2AD616826B3446B6344383E /* HpsPaxHttpInterface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxHttpInterface.h; sourceTree = ""; }; + 515186E2440807A41E8FA087A7E8FE3D /* HpsGiftCard.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsGiftCard.m; sourceTree = ""; }; + 5636DF9B989B1BFCD651BEBD36FF0259 /* HpsServicesConfig.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsServicesConfig.m; sourceTree = ""; }; + 56CBA65B578E766413ABC8342809C329 /* XMLDictionary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = XMLDictionary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 58F56E88F676AA8DD8717C4EEEDDFC72 /* HpsPaxDeviceResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxDeviceResponse.m; sourceTree = ""; }; + 59953FA95865AD43FCB0D5D5691F7CB8 /* HpsPaxCreditResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditResponse.h; sourceTree = ""; }; + 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Heartland-iOS-SDK.xcconfig"; sourceTree = ""; }; + 5AA8B7576B0FDF80199A16AEE6E46EEC /* HpsPosRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPosRequest.m; sourceTree = ""; }; + 5B63CC58E42EA387A9CC02D0DF846D02 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 5B890997D786B23A69044331C8BD2F1B /* HpsPaxMessageIDs.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxMessageIDs.h; sourceTree = ""; }; + 5B8C4AE03DAE6F52F14B70C02B4074D3 /* HpsPaxTraceRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxTraceRequest.m; sourceTree = ""; }; + 5BE88F852C785C3B2BD5C47C08A6C8A2 /* HpsPaxAccountResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxAccountResponse.h; sourceTree = ""; }; + 5DCFA6A6DF83B3269F382C1092178268 /* HpsPaxGiftBalanceBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxGiftBalanceBuilder.h; sourceTree = ""; }; + 5FBA95CABDEF3CB020CA2F0062F4638D /* HpsPosRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPosRequest.h; sourceTree = ""; }; + 6088161459924C50F0D52469DDA853BA /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 60E0A947B2FBEECD5629330FAF685902 /* HpsBinaryDataScanner.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsBinaryDataScanner.h; sourceTree = ""; }; + 62C76EAFE4212A93D15FE8B367C29B3B /* Pods-Heartland-iOS-SDK_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Heartland-iOS-SDK_Tests.release.xcconfig"; sourceTree = ""; }; + 641D08F7A93F2142D5A2F75C2ACF4543 /* HpsTerminalUtilities.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTerminalUtilities.h; sourceTree = ""; }; + 65BCA21A34730EC47A5B30922C755CAD /* HpsCardEntry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsCardEntry.h; sourceTree = ""; }; + 65C3793845F7F29EC01F2C7FFB073968 /* Heartland-iOS-SDK.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Heartland-iOS-SDK.bundle"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6602B54420D14B5C006B4B95 /* *.api2.heartlandportico.com.cer */ = {isa = PBXFileReference; lastKnownFileType = file; path = "*.api2.heartlandportico.com.cer"; sourceTree = ""; }; + 6749C8B622A5C89D296055B6ADA94CC9 /* HpsPaxGiftAddValueBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxGiftAddValueBuilder.m; sourceTree = ""; }; + 6CF977CC194552DAB40E3FB5881165D6 /* HpsServicesConfig.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsServicesConfig.h; sourceTree = ""; }; + 6DD7BE2F80983F142F2D547257418436 /* HpsPaxDebitSaleBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxDebitSaleBuilder.m; sourceTree = ""; }; + 708198EAFCDA318F2316F4611333C79A /* HpsPaxEcomSubGroup.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxEcomSubGroup.m; sourceTree = ""; }; + 713E0CE5360D0C1AF53D0634FCAEC8E2 /* HpsTerminalUtilities.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTerminalUtilities.m; sourceTree = ""; }; + 71877CECB51BAB303811A860BAE8AD03 /* HpsPaxCreditVoidBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditVoidBuilder.h; sourceTree = ""; }; + 72A1BB2F1A6046965865758F3F51B3E4 /* HpsTokenService.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTokenService.h; sourceTree = ""; }; + 73D1141F3CF17206138FC737D27684A9 /* HpsPaxAmountResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxAmountResponse.h; sourceTree = ""; }; + 7412ED7898D99C9BE2A2FA4D8DB4195D /* XMLDictionary.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = XMLDictionary.m; path = XMLDictionary/XMLDictionary.m; sourceTree = ""; }; + 74EB825B69542DCF6AFE55556EE55A7D /* HpsPaxAccountRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxAccountRequest.h; sourceTree = ""; }; + 7553B12957CDD6C63E219467ADC1648A /* HpsTransaction.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTransaction.m; sourceTree = ""; }; + 7773F954B8850B70BD010E0F0D980161 /* HpsPaxCreditReturnBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditReturnBuilder.h; sourceTree = ""; }; + 79769EC0E5290C7272EC396780FE27A2 /* HpsPaxGiftSaleBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxGiftSaleBuilder.h; sourceTree = ""; }; + 7A86797DA451CC938C40A9CBE7F28D65 /* XMLDictionary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = XMLDictionary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 7CD471F023EC8D0F2172B72075D8DD42 /* HpsGatewayData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsGatewayData.m; sourceTree = ""; }; + 7D10F544721B50D56B7CD6627342A6DD /* HpsPaxDebitReturnBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxDebitReturnBuilder.h; sourceTree = ""; }; + 7D99A49A67B597D4B16F7C668CDA4B6D /* HpsPaxInitializeResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxInitializeResponse.m; sourceTree = ""; }; + 7DE668511D6D5E9AA4395D43F5C1B929 /* Pods-Heartland-iOS-SDK_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Heartland-iOS-SDK_Example-acknowledgements.plist"; sourceTree = ""; }; + 7F6D8D5232850178A9E23D77BAA98351 /* HpsTerminalResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTerminalResponse.h; sourceTree = ""; }; + 7FFC22C60CCE5D5CF323ADAE986E4680 /* HpsTerminalResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTerminalResponse.m; sourceTree = ""; }; + 82A564E0BE9A0C55F2FADAB1C0781CB3 /* heartlandlogo.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; path = heartlandlogo.png; sourceTree = ""; }; + 83EDA171A6A2633289CF9DB714854680 /* Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig"; sourceTree = ""; }; + 844EB7B93738D15C37760AE7ABDAEBED /* HpsPaxGiftSaleBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxGiftSaleBuilder.m; sourceTree = ""; }; + 884ECE3ED1DE38CEEC19B823D38513D3 /* Heartland-iOS-SDK.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Heartland-iOS-SDK.modulemap"; sourceTree = ""; }; + 8A549BC5C78C5F85F3F8A589EBFBBD36 /* HpsPaxAvsRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxAvsRequest.h; sourceTree = ""; }; + 8AF4746B91FEC9CC4EB0A0760266BED0 /* HpsPaxAvsRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxAvsRequest.m; sourceTree = ""; }; + 8DB339145A748948B8C52C047069BB3D /* HpsPaxGiftResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxGiftResponse.h; sourceTree = ""; }; + 8E683BCCFA45451B52230C167186F0AD /* HpsPaxExtDataSubGroup.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxExtDataSubGroup.m; sourceTree = ""; }; + 90746E9520BABC1BE54E377A75BEED18 /* HpsPaxAvsResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxAvsResponse.h; sourceTree = ""; }; + 909FDA885116EA9AFE1C0FB9B5FFF609 /* HpsPaxDebitReturnBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxDebitReturnBuilder.m; sourceTree = ""; }; + 91022389D6B21CF1342D02E763352D57 /* HpsPaxCreditAuthBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditAuthBuilder.h; sourceTree = ""; }; + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9930CCAFA6FEB00A64951CBB693E3667 /* HpsPaxExtDataSubGroup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxExtDataSubGroup.h; sourceTree = ""; }; + 9C059FEAB870EBC0260BB2D218D5D479 /* XMLDictionary.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = XMLDictionary.modulemap; sourceTree = ""; }; + 9C3248B45F8924F00C8279B5844384F3 /* Heartland-iOS-SDK.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; path = "Heartland-iOS-SDK.podspec"; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9D428A7158BAFDD56985CA90D4F2D31E /* HpsAddress.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsAddress.h; sourceTree = ""; }; + A04105BB445748CA39853A55311E29DA /* HpsPaxAmountResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxAmountResponse.m; sourceTree = ""; }; + A28B47DD52A62A6D7709E7C378EB0BCB /* HpsPaxInitializeResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxInitializeResponse.h; sourceTree = ""; }; + A29541E4BFA8C8D8FD323E5A0C2DEACC /* HpsGatewayData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsGatewayData.h; sourceTree = ""; }; + A2C27AC845F1DF7239E7FCCA7E22BE8E /* HpsPaxAmountRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxAmountRequest.h; sourceTree = ""; }; + A38364179E7F14A17F746759525B015B /* HpsPaxBatchCloseResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxBatchCloseResponse.m; sourceTree = ""; }; + A5F1D971D0A8967F2302FE36ECF51CCD /* HpsDeviceMessage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsDeviceMessage.m; sourceTree = ""; }; + A8FB499C667E5160CCA6757B2CF007D9 /* Pods-Heartland-iOS-SDK_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Heartland-iOS-SDK_Example-frameworks.sh"; sourceTree = ""; }; + A94C562D8408A2514EC97406950FDB36 /* HpsPaxGiftAddValueBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxGiftAddValueBuilder.h; sourceTree = ""; }; + A99D207709AAFB414901D21A99636113 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; + AA5AFD7FDB6D1062EEEE66395FE35972 /* HpsPaxCreditSaleBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditSaleBuilder.m; sourceTree = ""; }; + AA77901606317A30B35590CD118EC1AE /* HpsGiftCard.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsGiftCard.h; sourceTree = ""; }; + AAB1E1B56FA6F53764301A042E4CD21B /* HpsPaxDebitResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxDebitResponse.m; sourceTree = ""; }; + AE132E542C8D5E6B45CF66168F1E50E4 /* HpsEncryptionData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsEncryptionData.h; sourceTree = ""; }; + AE75FA38F00E8B283F1F3ADFDD801404 /* HpsPaxGiftBalanceBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxGiftBalanceBuilder.m; sourceTree = ""; }; + AF3AA6FC24629C120E393677B59CEA2A /* HpsEncryptionData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsEncryptionData.m; sourceTree = ""; }; + AF9F30E0107BCD67E605C8773404AD75 /* Pods-Heartland-iOS-SDK_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Heartland-iOS-SDK_Tests-acknowledgements.markdown"; sourceTree = ""; }; + B0F5A87224E87D04557E5831687A1AE9 /* HpsCommon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsCommon.m; sourceTree = ""; }; + B3B079AA9905F56C60671D55B5284CBD /* secure-submit-logo.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; path = "secure-submit-logo.png"; sourceTree = ""; }; + B7E8F88506F7BCE9AE47944A6AB73737 /* HpsCardData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsCardData.m; sourceTree = ""; }; + B862A5404ACE40E0F2E9E5A66A7B1562 /* HpsCardData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsCardData.h; sourceTree = ""; }; + BC04150A08DB6444AF2B24EADF9F2737 /* HpsAdditionalTxnFields.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsAdditionalTxnFields.h; sourceTree = ""; }; + BD8C0D713D4738B4C58B3F0C8C220C48 /* HpsPaxHostResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxHostResponse.h; sourceTree = ""; }; + BE552E385A2E285629FF9FE3048BF601 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + BEC15522CF1FCC13018B27F98F6CC8BB /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + C270AEFFFC5901D0F2E1362268053C77 /* XMLDictionary-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "XMLDictionary-dummy.m"; sourceTree = ""; }; + C4A47749B14A88DA971A6A958D6AEB0D /* HpsPaxCreditVerifyBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditVerifyBuilder.m; sourceTree = ""; }; + C6EFA3E8038C34116E5F44D1EA1E2469 /* HpsTokenData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsTokenData.h; sourceTree = ""; }; + C95E3B753AF32DE6E67C11952F915530 /* HpsPaxGiftVoidBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxGiftVoidBuilder.h; sourceTree = ""; }; + CA143F1E015EFC2051CA6B0C0DCEDBD5 /* HpsPaxCommercialResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCommercialResponse.m; sourceTree = ""; }; + CA6BB7D584B8DF8117D143CE3C42C0A0 /* HpsTokenService.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsTokenService.m; sourceTree = ""; }; + CAC38D38E85D9DB0E72B52C52487BA06 /* HpsPaxBaseResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxBaseResponse.m; sourceTree = ""; }; + CE4B977FDDF201EC7DA6CC0E724F2FC2 /* XMLDictionary.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = XMLDictionary.h; path = XMLDictionary/XMLDictionary.h; sourceTree = ""; }; + D586B9D7D04A21DBD8E63CEC7965F74F /* HpsConnectionConfig.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsConnectionConfig.h; sourceTree = ""; }; + D67BA7F1221F40B4B066C81C803B78DC /* HpsPaxGiftVoidBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxGiftVoidBuilder.m; sourceTree = ""; }; + D6A83F0C683E08DB2E10F1A615B44674 /* hps.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hps.h; path = Pod/Classes/hps.h; sourceTree = ""; }; + D77BE50F496D1538433ED9901E2F6A6F /* HpsHeader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsHeader.h; sourceTree = ""; }; + D82A6AEC0ECE3EB65B6DDBB1FC264710 /* Pods-Heartland-iOS-SDK_Example-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Heartland-iOS-SDK_Example-resources.sh"; sourceTree = ""; }; + DDC03B794FD8468300B3B0EE8AB46572 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = LICENSE; sourceTree = ""; }; + DE28E9381288FA48AED545F8A1745E1E /* HpsPaxCreditCaptureBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxCreditCaptureBuilder.m; sourceTree = ""; }; + DF32A41CD93C1EA207DF6CF169394082 /* HpsPaxDebitSaleBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxDebitSaleBuilder.h; sourceTree = ""; }; + DF5F5DBD3C9EA56FA49B222A6601BE50 /* HpsPaxTraceRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxTraceRequest.h; sourceTree = ""; }; + E050886294DC816DDCA30E4F45C32A0C /* HpsPaxDevice.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxDevice.m; sourceTree = ""; }; + E46EF7951CD051E08DAE6322F1B0078B /* HpsPaxDebitResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxDebitResponse.h; sourceTree = ""; }; + E47D5F13B5B1E9D797A856F9268C27C4 /* HpsBinaryDataScanner.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsBinaryDataScanner.m; sourceTree = ""; }; + E6355DC711A7118B768080DEF417118D /* HpsPaxEcomSubGroup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxEcomSubGroup.h; sourceTree = ""; }; + E9381A7B62401E1F491825D8AABE7BE0 /* HpsPaxHostResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxHostResponse.m; sourceTree = ""; }; + EA64E5A53A0830002241E31296D1C707 /* ResourceBundle-Heartland-iOS-SDK-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-Heartland-iOS-SDK-Info.plist"; sourceTree = ""; }; + EA710C6ECC810DF4478F3647760A59A9 /* Pods-Heartland-iOS-SDK_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Heartland-iOS-SDK_Tests.debug.xcconfig"; sourceTree = ""; }; + EBF84C38915224A745321A6D5E3E2D8C /* XMLDictionary-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "XMLDictionary-prefix.pch"; sourceTree = ""; }; + EC956F480BE233E57830ED69EE2F7228 /* HpsGatewayService.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsGatewayService.m; sourceTree = ""; }; + F0AC624555E652F12CD6A18EE27F649C /* HpsAdditionalTxnFields.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsAdditionalTxnFields.m; sourceTree = ""; }; + F0C0DE086FAF84F65F209F25DBEF4B82 /* HpsPaxTraceResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxTraceResponse.m; sourceTree = ""; }; + F0D42E43FBCB0D8ED385CE3D0C103568 /* HpsPaxAmountRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxAmountRequest.m; sourceTree = ""; }; + F0D58302D51745CFF2528EBCC101594C /* HpsPaxGiftResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxGiftResponse.m; sourceTree = ""; }; + F1716B4059268967DF201C2A5C9A450C /* Pods-Heartland-iOS-SDK_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Heartland-iOS-SDK_Tests-dummy.m"; sourceTree = ""; }; + F38612C22F6FB9291D84186242727713 /* HpsPaxMessageIDs.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxMessageIDs.m; sourceTree = ""; }; + F438427561077EAEC7BD1609AC7D2A04 /* HpsHeader.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsHeader.m; sourceTree = ""; }; + F535745C973D08436EFC930BBF96582A /* Pods-Heartland-iOS-SDK_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Heartland-iOS-SDK_Example.release.xcconfig"; sourceTree = ""; }; + F5D79E3453AF37312B2FB016C0EA8F5E /* HpsPaxTcpInterface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxTcpInterface.h; sourceTree = ""; }; + F657F21F98B6312557085F2EAAA765FF /* HpsCardHolderData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsCardHolderData.h; sourceTree = ""; }; + F6E579D50BF610FFB15B95EA470128CE /* HpsCommon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsCommon.h; sourceTree = ""; }; + F7D73A38BD3D16158F5B91F8989B5F70 /* HpsAddress.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsAddress.m; sourceTree = ""; }; + F879A69935F2F89EABE9946A36386AD6 /* HpsPaxBaseResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxBaseResponse.h; sourceTree = ""; }; + F8AEF1E4F68BC4168F514A552F53FA1D /* HpsPaxAccountRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsPaxAccountRequest.m; sourceTree = ""; }; + F9E97FEB552CA8599D01A508BE456AB5 /* HpsPaxCreditVerifyBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditVerifyBuilder.h; sourceTree = ""; }; + FAAA87F44DBA0863F9FD720CFE65B58C /* HpsPaxCreditCaptureBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = HpsPaxCreditCaptureBuilder.h; sourceTree = ""; }; + FC20E8B2288D503D57E880C5637184CA /* XMLDictionary.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = XMLDictionary.xcconfig; sourceTree = ""; }; + FD03196B3F7712634B320E7A11B63D39 /* Pods-Heartland-iOS-SDK_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Heartland-iOS-SDK_Example-umbrella.h"; sourceTree = ""; }; + FD43545EF89579219A40D547B18F01A6 /* HpsCreditCard.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsCreditCard.m; sourceTree = ""; }; + FF13A4B70E28528F7C37F413AA2E5612 /* HpsCardEntry.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = HpsCardEntry.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 2FEE3CEB5323394C167086645D927F8D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + F25EE1B0FFEDC0CD6CC00B6B2C27DA8F /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 3F9E64387E09F3BC7B764B74DEBCD78A /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8699FE9C95E587438285B9A4B506B34E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F0738B8BFB0A4C07CAFFDA46014352C /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DD1B15FED2D72C638AA4ABCF17D11ED5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + EE7EDA6AA2D53FF0297FCC7B41B3A81C /* Foundation.framework in Frameworks */, + 284EB589D4ACB7D63E7A85AA988A305F /* UIKit.framework in Frameworks */, + 3D220DFDFF2C7D1E126FA135561BC2D6 /* XMLDictionary.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + EC3979FFB3E2D73E9BC7959CCA095904 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + D33B1484247F0E59AFD4E2434A4A58E8 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 110D7DC0B7BAF1D8C4DA849FAD4FD31E /* PAX */ = { + isa = PBXGroup; + children = ( + 3BB46F5838587812842337C0885F1095 /* HpsPaxDevice.h */, + E050886294DC816DDCA30E4F45C32A0C /* HpsPaxDevice.m */, + 5B890997D786B23A69044331C8BD2F1B /* HpsPaxMessageIDs.h */, + F38612C22F6FB9291D84186242727713 /* HpsPaxMessageIDs.m */, + F7B8CEE85CD2BBC216D9877381E064FD /* Builders */, + 3A54566CC27B10EF8A9B38B6ABC8AEB1 /* Interfaces */, + 27E577D422312C8A1EE80B4C15850A4E /* Models */, + ); + path = PAX; + sourceTree = ""; + }; + 27E577D422312C8A1EE80B4C15850A4E /* Models */ = { + isa = PBXGroup; + children = ( + 74EB825B69542DCF6AFE55556EE55A7D /* HpsPaxAccountRequest.h */, + F8AEF1E4F68BC4168F514A552F53FA1D /* HpsPaxAccountRequest.m */, + 5BE88F852C785C3B2BD5C47C08A6C8A2 /* HpsPaxAccountResponse.h */, + 07FF1726EF49E358BF27D15A9FB31530 /* HpsPaxAccountResponse.m */, + A2C27AC845F1DF7239E7FCCA7E22BE8E /* HpsPaxAmountRequest.h */, + F0D42E43FBCB0D8ED385CE3D0C103568 /* HpsPaxAmountRequest.m */, + 73D1141F3CF17206138FC737D27684A9 /* HpsPaxAmountResponse.h */, + A04105BB445748CA39853A55311E29DA /* HpsPaxAmountResponse.m */, + 8A549BC5C78C5F85F3F8A589EBFBBD36 /* HpsPaxAvsRequest.h */, + 8AF4746B91FEC9CC4EB0A0760266BED0 /* HpsPaxAvsRequest.m */, + 90746E9520BABC1BE54E377A75BEED18 /* HpsPaxAvsResponse.h */, + 33100E7A8969A3D930BF00A5DAD3EBD2 /* HpsPaxAvsResponse.m */, + F879A69935F2F89EABE9946A36386AD6 /* HpsPaxBaseResponse.h */, + CAC38D38E85D9DB0E72B52C52487BA06 /* HpsPaxBaseResponse.m */, + 36F8540765530EA343E76D1F8B180E2E /* HpsPaxBatchCloseResponse.h */, + A38364179E7F14A17F746759525B015B /* HpsPaxBatchCloseResponse.m */, + 4C8DC81DF21A32448F3D35CF44E24E32 /* HpsPaxCashierSubGroup.h */, + 35E7D6BCFE8A3DFD9B52A971B2AB9AF2 /* HpsPaxCashierSubGroup.m */, + 2F38941DBECCFE2DE51151D38E9977F6 /* HpsPaxCommercialRequest.h */, + 03D68BDED2E733D140E8BCFFAACB0635 /* HpsPaxCommercialRequest.m */, + 3C76011F68A9FD46E60B5F55E2FF5FAE /* HpsPaxCommercialResponse.h */, + CA143F1E015EFC2051CA6B0C0DCEDBD5 /* HpsPaxCommercialResponse.m */, + 59953FA95865AD43FCB0D5D5691F7CB8 /* HpsPaxCreditResponse.h */, + 2A3C2456AF42589CB4EF34CB9221C76C /* HpsPaxCreditResponse.m */, + E46EF7951CD051E08DAE6322F1B0078B /* HpsPaxDebitResponse.h */, + AAB1E1B56FA6F53764301A042E4CD21B /* HpsPaxDebitResponse.m */, + 4E7507405C813945F487D89D3E602C4A /* HpsPaxDeviceResponse.h */, + 58F56E88F676AA8DD8717C4EEEDDFC72 /* HpsPaxDeviceResponse.m */, + E6355DC711A7118B768080DEF417118D /* HpsPaxEcomSubGroup.h */, + 708198EAFCDA318F2316F4611333C79A /* HpsPaxEcomSubGroup.m */, + 9930CCAFA6FEB00A64951CBB693E3667 /* HpsPaxExtDataSubGroup.h */, + 8E683BCCFA45451B52230C167186F0AD /* HpsPaxExtDataSubGroup.m */, + 8DB339145A748948B8C52C047069BB3D /* HpsPaxGiftResponse.h */, + F0D58302D51745CFF2528EBCC101594C /* HpsPaxGiftResponse.m */, + BD8C0D713D4738B4C58B3F0C8C220C48 /* HpsPaxHostResponse.h */, + E9381A7B62401E1F491825D8AABE7BE0 /* HpsPaxHostResponse.m */, + A28B47DD52A62A6D7709E7C378EB0BCB /* HpsPaxInitializeResponse.h */, + 7D99A49A67B597D4B16F7C668CDA4B6D /* HpsPaxInitializeResponse.m */, + DF5F5DBD3C9EA56FA49B222A6601BE50 /* HpsPaxTraceRequest.h */, + 5B8C4AE03DAE6F52F14B70C02B4074D3 /* HpsPaxTraceRequest.m */, + 0EEE1954E9C2F6761FBA13D34C1DD189 /* HpsPaxTraceResponse.h */, + F0C0DE086FAF84F65F209F25DBEF4B82 /* HpsPaxTraceResponse.m */, + ); + path = Models; + sourceTree = ""; + }; + 3A54566CC27B10EF8A9B38B6ABC8AEB1 /* Interfaces */ = { + isa = PBXGroup; + children = ( + 4E80DE11A2AD616826B3446B6344383E /* HpsPaxHttpInterface.h */, + 0513ACBCDF34AF627D3C4719716E198B /* HpsPaxHttpInterface.m */, + F5D79E3453AF37312B2FB016C0EA8F5E /* HpsPaxTcpInterface.h */, + 2766699B7761BDFA32E030CAC9B34D38 /* HpsPaxTcpInterface.m */, + ); + path = Interfaces; + sourceTree = ""; + }; + 43D71D48BFA6471F534C91EC01EA324E /* iOS */ = { + isa = PBXGroup; + children = ( + BEC15522CF1FCC13018B27F98F6CC8BB /* Foundation.framework */, + 1FE0100D67496D3F74C8141F33EFC1B4 /* UIKit.framework */, + ); + name = iOS; + sourceTree = ""; + }; + 51C5FEE0D32A99C74BF958DD631503EB /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + E165E694B7D5EECF2B434BC62BC88D86 /* Pods-Heartland-iOS-SDK_Example */, + 95D2939330F87939F6D804C1AD5A12B0 /* Pods-Heartland-iOS-SDK_Tests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 51D130914A1AEAB3C0FA58C8E9FC3D0D /* XMLDictionary */ = { + isa = PBXGroup; + children = ( + CE4B977FDDF201EC7DA6CC0E724F2FC2 /* XMLDictionary.h */, + 7412ED7898D99C9BE2A2FA4D8DB4195D /* XMLDictionary.m */, + 993EAF7D42B4B8047AD8C749036C475B /* Support Files */, + ); + path = XMLDictionary; + sourceTree = ""; + }; + 562175956BEC32E3248669516CAD1048 /* Models */ = { + isa = PBXGroup; + children = ( + BC04150A08DB6444AF2B24EADF9F2737 /* HpsAdditionalTxnFields.h */, + F0AC624555E652F12CD6A18EE27F649C /* HpsAdditionalTxnFields.m */, + 9D428A7158BAFDD56985CA90D4F2D31E /* HpsAddress.h */, + F7D73A38BD3D16158F5B91F8989B5F70 /* HpsAddress.m */, + B862A5404ACE40E0F2E9E5A66A7B1562 /* HpsCardData.h */, + B7E8F88506F7BCE9AE47944A6AB73737 /* HpsCardData.m */, + 65BCA21A34730EC47A5B30922C755CAD /* HpsCardEntry.h */, + FF13A4B70E28528F7C37F413AA2E5612 /* HpsCardEntry.m */, + F657F21F98B6312557085F2EAAA765FF /* HpsCardHolderData.h */, + 30A1A2C857DA4EED7D1B85FAE3802122 /* HpsCardHolderData.m */, + F6E579D50BF610FFB15B95EA470128CE /* HpsCommon.h */, + B0F5A87224E87D04557E5831687A1AE9 /* HpsCommon.m */, + 480C1C36213E2568C9C67AD9CFBF5ADC /* HpsCreditCard.h */, + FD43545EF89579219A40D547B18F01A6 /* HpsCreditCard.m */, + AE132E542C8D5E6B45CF66168F1E50E4 /* HpsEncryptionData.h */, + AF3AA6FC24629C120E393677B59CEA2A /* HpsEncryptionData.m */, + A29541E4BFA8C8D8FD323E5A0C2DEACC /* HpsGatewayData.h */, + 7CD471F023EC8D0F2172B72075D8DD42 /* HpsGatewayData.m */, + AA77901606317A30B35590CD118EC1AE /* HpsGiftCard.h */, + 515186E2440807A41E8FA087A7E8FE3D /* HpsGiftCard.m */, + D77BE50F496D1538433ED9901E2F6A6F /* HpsHeader.h */, + F438427561077EAEC7BD1609AC7D2A04 /* HpsHeader.m */, + 5FBA95CABDEF3CB020CA2F0062F4638D /* HpsPosRequest.h */, + 5AA8B7576B0FDF80199A16AEE6E46EEC /* HpsPosRequest.m */, + 6CF977CC194552DAB40E3FB5881165D6 /* HpsServicesConfig.h */, + 5636DF9B989B1BFCD651BEBD36FF0259 /* HpsServicesConfig.m */, + C6EFA3E8038C34116E5F44D1EA1E2469 /* HpsTokenData.h */, + 151A7D5B987AB160B3FF6C0D71D7F1C9 /* HpsTokenData.m */, + 1F4289A84D6CF09FD28003FF44169316 /* HpsTransaction.h */, + 7553B12957CDD6C63E219467ADC1648A /* HpsTransaction.m */, + 0B2DFDE2A22D48817B94E13AE01F6DB1 /* HpsTransactionDetails.h */, + 43EFF32A670AD36EFAB348FD711A30B4 /* HpsTransactionDetails.m */, + ); + name = Models; + path = Pod/Classes/Models; + sourceTree = ""; + }; + 60D31C783285E81F0E99CF9C62F4E29B /* Development Pods */ = { + isa = PBXGroup; + children = ( + 7581A2A99D9F6C48403DE8BD5973151D /* Heartland-iOS-SDK */, + ); + name = "Development Pods"; + sourceTree = ""; + }; + 63BDF2A02B16F408E5AD11CCB3E88E3E /* Services */ = { + isa = PBXGroup; + children = ( + 2F9503E2E825F99CB4ED1D9B4FCD3740 /* HpsGatewayService.h */, + EC956F480BE233E57830ED69EE2F7228 /* HpsGatewayService.m */, + 72A1BB2F1A6046965865758F3F51B3E4 /* HpsTokenService.h */, + CA6BB7D584B8DF8117D143CE3C42C0A0 /* HpsTokenService.m */, + ); + name = Services; + path = Pod/Classes/Services; + sourceTree = ""; + }; + 6ADA4B10C086ABF105AD43972E45D178 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 56CBA65B578E766413ABC8342809C329 /* XMLDictionary.framework */, + 43D71D48BFA6471F534C91EC01EA324E /* iOS */, + ); + name = Frameworks; + sourceTree = ""; + }; + 6AE9E238E700AEF2865A52BD08FDE28C /* Pods */ = { + isa = PBXGroup; + children = ( + 51D130914A1AEAB3C0FA58C8E9FC3D0D /* XMLDictionary */, + ); + name = Pods; + sourceTree = ""; + }; + 6DA21F68D8FCE9B3712964720B9BFED7 /* Assets */ = { + isa = PBXGroup; + children = ( + 82A564E0BE9A0C55F2FADAB1C0781CB3 /* heartlandlogo.png */, + 45D9A8FF33A2F983029F4A5ADBA53D14 /* HPSCardEntryViewController.xib */, + B3B079AA9905F56C60671D55B5284CBD /* secure-submit-logo.png */, + ); + name = Assets; + path = Pod/Assets; + sourceTree = ""; + }; + 7581A2A99D9F6C48403DE8BD5973151D /* Heartland-iOS-SDK */ = { + isa = PBXGroup; + children = ( + D6A83F0C683E08DB2E10F1A615B44674 /* hps.h */, + 562175956BEC32E3248669516CAD1048 /* Models */, + 7D00BC5CFE2C370599BFC80B5800E944 /* Pod */, + 7A30C0F9605C1EBA7AB339BA68C540DE /* Resources */, + 63BDF2A02B16F408E5AD11CCB3E88E3E /* Services */, + 7F5BA4DADED3C5FA5E5ABCE6716BD41B /* Support Files */, + E579FAC2A4D9DBE9B1243F80AE73A0C9 /* Terminals */, + C0E78856D995EEB73DE398CACEA8D57B /* ViewControllers */, + ); + name = "Heartland-iOS-SDK"; + path = ../..; + sourceTree = ""; + }; + 7A30C0F9605C1EBA7AB339BA68C540DE /* Resources */ = { + isa = PBXGroup; + children = ( + 6DA21F68D8FCE9B3712964720B9BFED7 /* Assets */, + CB51DB46C49460613F4E5BE7C4544F66 /* Certificates */, + ); + name = Resources; + sourceTree = ""; + }; + 7D00BC5CFE2C370599BFC80B5800E944 /* Pod */ = { + isa = PBXGroup; + children = ( + 9C3248B45F8924F00C8279B5844384F3 /* Heartland-iOS-SDK.podspec */, + DDC03B794FD8468300B3B0EE8AB46572 /* LICENSE */, + A99D207709AAFB414901D21A99636113 /* README.md */, + ); + name = Pod; + sourceTree = ""; + }; + 7DB346D0F39D3F0E887471402A8071AB = { + isa = PBXGroup; + children = ( + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, + 60D31C783285E81F0E99CF9C62F4E29B /* Development Pods */, + 6ADA4B10C086ABF105AD43972E45D178 /* Frameworks */, + 6AE9E238E700AEF2865A52BD08FDE28C /* Pods */, + C853070BD85BF59949E34C0F34221A29 /* Products */, + 51C5FEE0D32A99C74BF958DD631503EB /* Targets Support Files */, + ); + sourceTree = ""; + }; + 7F5BA4DADED3C5FA5E5ABCE6716BD41B /* Support Files */ = { + isa = PBXGroup; + children = ( + 884ECE3ED1DE38CEEC19B823D38513D3 /* Heartland-iOS-SDK.modulemap */, + 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */, + 04F8A91704C5C83AFE48D231520E29E3 /* Heartland-iOS-SDK-dummy.m */, + 4D3847003157FF9294BA27A8C6E02AC1 /* Heartland-iOS-SDK-prefix.pch */, + 08E5E372F08F65407FC3A13548E35F62 /* Heartland-iOS-SDK-umbrella.h */, + 3F9F05F890C74258189FD8E65E50352C /* Info.plist */, + EA64E5A53A0830002241E31296D1C707 /* ResourceBundle-Heartland-iOS-SDK-Info.plist */, + ); + name = "Support Files"; + path = "Example/Pods/Target Support Files/Heartland-iOS-SDK"; + sourceTree = ""; + }; + 95D2939330F87939F6D804C1AD5A12B0 /* Pods-Heartland-iOS-SDK_Tests */ = { + isa = PBXGroup; + children = ( + 6088161459924C50F0D52469DDA853BA /* Info.plist */, + 40B057E38A35F1B527D2ED473B2E1CBE /* Pods-Heartland-iOS-SDK_Tests.modulemap */, + AF9F30E0107BCD67E605C8773404AD75 /* Pods-Heartland-iOS-SDK_Tests-acknowledgements.markdown */, + 2C7EBD24D65D80B0F8DCAD2703738707 /* Pods-Heartland-iOS-SDK_Tests-acknowledgements.plist */, + F1716B4059268967DF201C2A5C9A450C /* Pods-Heartland-iOS-SDK_Tests-dummy.m */, + 1598C64A982D976869D6040E19206D8C /* Pods-Heartland-iOS-SDK_Tests-frameworks.sh */, + 4B5D47F2D31AF5025C908A7A52243A7A /* Pods-Heartland-iOS-SDK_Tests-resources.sh */, + 0B6E002F17C5113BC0194E5AB6269D2C /* Pods-Heartland-iOS-SDK_Tests-umbrella.h */, + EA710C6ECC810DF4478F3647760A59A9 /* Pods-Heartland-iOS-SDK_Tests.debug.xcconfig */, + 83EDA171A6A2633289CF9DB714854680 /* Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig */, + 62C76EAFE4212A93D15FE8B367C29B3B /* Pods-Heartland-iOS-SDK_Tests.release.xcconfig */, + ); + name = "Pods-Heartland-iOS-SDK_Tests"; + path = "Target Support Files/Pods-Heartland-iOS-SDK_Tests"; + sourceTree = ""; + }; + 993EAF7D42B4B8047AD8C749036C475B /* Support Files */ = { + isa = PBXGroup; + children = ( + BE552E385A2E285629FF9FE3048BF601 /* Info.plist */, + 9C059FEAB870EBC0260BB2D218D5D479 /* XMLDictionary.modulemap */, + FC20E8B2288D503D57E880C5637184CA /* XMLDictionary.xcconfig */, + C270AEFFFC5901D0F2E1362268053C77 /* XMLDictionary-dummy.m */, + EBF84C38915224A745321A6D5E3E2D8C /* XMLDictionary-prefix.pch */, + 48ED6F513B57305E0DAC7DC423554ECD /* XMLDictionary-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/XMLDictionary"; + sourceTree = ""; + }; + C0E78856D995EEB73DE398CACEA8D57B /* ViewControllers */ = { + isa = PBXGroup; + children = ( + 4248D69A11A3CC0EEB02EDE9D762C15E /* HpsCardEntryViewController.h */, + 1D3BBE1E5CCAE3FD4CB71050B2F62980 /* HpsCardEntryViewController.m */, + ); + name = ViewControllers; + path = Pod/Classes/ViewControllers; + sourceTree = ""; + }; + C853070BD85BF59949E34C0F34221A29 /* Products */ = { + isa = PBXGroup; + children = ( + 65C3793845F7F29EC01F2C7FFB073968 /* Heartland-iOS-SDK.bundle */, + 4195B0F3DF691C544F99A9EF9A6EEF68 /* Heartland_iOS_SDK.framework */, + 3F6D2AA985483512258B9807F1C18E8C /* Pods_Heartland_iOS_SDK_Example.framework */, + 1B96F103E8357B56B35C28CF9949E6A3 /* Pods_Heartland_iOS_SDK_Tests.framework */, + 7A86797DA451CC938C40A9CBE7F28D65 /* XMLDictionary.framework */, + ); + name = Products; + sourceTree = ""; + }; + CB51DB46C49460613F4E5BE7C4544F66 /* Certificates */ = { + isa = PBXGroup; + children = ( + 6602B54420D14B5C006B4B95 /* *.api2.heartlandportico.com.cer */, + 4148B5CB00C626BFAACE5232D2C803B3 /* api2.heartlandportico.com.cer */, + ); + name = Certificates; + path = Pod/Certificates; + sourceTree = ""; + }; + DCD58D866CB09AC9824C60ECD0CA1855 /* Utility */ = { + isa = PBXGroup; + children = ( + 60E0A947B2FBEECD5629330FAF685902 /* HpsBinaryDataScanner.h */, + E47D5F13B5B1E9D797A856F9268C27C4 /* HpsBinaryDataScanner.m */, + 3E46E4F57FEEF0BA582D5508F02BF0F0 /* HpsTerminalEnums.h */, + 47C4004D3E106F4F518B2F97F94AB838 /* HpsTerminalEnums.m */, + 641D08F7A93F2142D5A2F75C2ACF4543 /* HpsTerminalUtilities.h */, + 713E0CE5360D0C1AF53D0634FCAEC8E2 /* HpsTerminalUtilities.m */, + ); + path = Utility; + sourceTree = ""; + }; + E165E694B7D5EECF2B434BC62BC88D86 /* Pods-Heartland-iOS-SDK_Example */ = { + isa = PBXGroup; + children = ( + 5B63CC58E42EA387A9CC02D0DF846D02 /* Info.plist */, + 04EF18682954A4402485AB6EB076B47A /* Pods-Heartland-iOS-SDK_Example.modulemap */, + 0CCDB5BB30A319A5D3166630E656C8D5 /* Pods-Heartland-iOS-SDK_Example-acknowledgements.markdown */, + 7DE668511D6D5E9AA4395D43F5C1B929 /* Pods-Heartland-iOS-SDK_Example-acknowledgements.plist */, + 0ACE79F40806F1605EC3C7E9FD4F4E87 /* Pods-Heartland-iOS-SDK_Example-dummy.m */, + A8FB499C667E5160CCA6757B2CF007D9 /* Pods-Heartland-iOS-SDK_Example-frameworks.sh */, + D82A6AEC0ECE3EB65B6DDBB1FC264710 /* Pods-Heartland-iOS-SDK_Example-resources.sh */, + FD03196B3F7712634B320E7A11B63D39 /* Pods-Heartland-iOS-SDK_Example-umbrella.h */, + 419FACCBEBE11983010FFD9F1F4F5D62 /* Pods-Heartland-iOS-SDK_Example.debug.xcconfig */, + 4D646D46C886B2D15AA45EEC64C76261 /* Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig */, + F535745C973D08436EFC930BBF96582A /* Pods-Heartland-iOS-SDK_Example.release.xcconfig */, + ); + name = "Pods-Heartland-iOS-SDK_Example"; + path = "Target Support Files/Pods-Heartland-iOS-SDK_Example"; + sourceTree = ""; + }; + E579FAC2A4D9DBE9B1243F80AE73A0C9 /* Terminals */ = { + isa = PBXGroup; + children = ( + D586B9D7D04A21DBD8E63CEC7965F74F /* HpsConnectionConfig.h */, + 46757BA545F11D7A61AB4D6AA9C1C1B2 /* HpsConnectionConfig.m */, + 41D59F9EE04239C9C465553ADD3B3354 /* HpsDeviceMessage.h */, + A5F1D971D0A8967F2302FE36ECF51CCD /* HpsDeviceMessage.m */, + 36F6BDD5FB2830A84BF815C8954C2A0D /* HpsDeviceProtocols.h */, + 3AA0C8448480D7ADF5E2D29532C61099 /* HpsDeviceProtocols.m */, + 7F6D8D5232850178A9E23D77BAA98351 /* HpsTerminalResponse.h */, + 7FFC22C60CCE5D5CF323ADAE986E4680 /* HpsTerminalResponse.m */, + 110D7DC0B7BAF1D8C4DA849FAD4FD31E /* PAX */, + DCD58D866CB09AC9824C60ECD0CA1855 /* Utility */, + ); + name = Terminals; + path = Pod/Classes/Terminals; + sourceTree = ""; + }; + F7B8CEE85CD2BBC216D9877381E064FD /* Builders */ = { + isa = PBXGroup; + children = ( + 91022389D6B21CF1342D02E763352D57 /* HpsPaxCreditAuthBuilder.h */, + 4A77617B6B9C68EDF49B66C009C1DF10 /* HpsPaxCreditAuthBuilder.m */, + FAAA87F44DBA0863F9FD720CFE65B58C /* HpsPaxCreditCaptureBuilder.h */, + DE28E9381288FA48AED545F8A1745E1E /* HpsPaxCreditCaptureBuilder.m */, + 7773F954B8850B70BD010E0F0D980161 /* HpsPaxCreditReturnBuilder.h */, + 001370D7AE43E56A35745AEE2273796A /* HpsPaxCreditReturnBuilder.m */, + 1D199D679F2DFCA0B893D3342A4B63EC /* HpsPaxCreditSaleBuilder.h */, + AA5AFD7FDB6D1062EEEE66395FE35972 /* HpsPaxCreditSaleBuilder.m */, + F9E97FEB552CA8599D01A508BE456AB5 /* HpsPaxCreditVerifyBuilder.h */, + C4A47749B14A88DA971A6A958D6AEB0D /* HpsPaxCreditVerifyBuilder.m */, + 71877CECB51BAB303811A860BAE8AD03 /* HpsPaxCreditVoidBuilder.h */, + 4AFDE3D08D6D6D1551AC607B4A21F8AC /* HpsPaxCreditVoidBuilder.m */, + 7D10F544721B50D56B7CD6627342A6DD /* HpsPaxDebitReturnBuilder.h */, + 909FDA885116EA9AFE1C0FB9B5FFF609 /* HpsPaxDebitReturnBuilder.m */, + DF32A41CD93C1EA207DF6CF169394082 /* HpsPaxDebitSaleBuilder.h */, + 6DD7BE2F80983F142F2D547257418436 /* HpsPaxDebitSaleBuilder.m */, + A94C562D8408A2514EC97406950FDB36 /* HpsPaxGiftAddValueBuilder.h */, + 6749C8B622A5C89D296055B6ADA94CC9 /* HpsPaxGiftAddValueBuilder.m */, + 5DCFA6A6DF83B3269F382C1092178268 /* HpsPaxGiftBalanceBuilder.h */, + AE75FA38F00E8B283F1F3ADFDD801404 /* HpsPaxGiftBalanceBuilder.m */, + 79769EC0E5290C7272EC396780FE27A2 /* HpsPaxGiftSaleBuilder.h */, + 844EB7B93738D15C37760AE7ABDAEBED /* HpsPaxGiftSaleBuilder.m */, + C95E3B753AF32DE6E67C11952F915530 /* HpsPaxGiftVoidBuilder.h */, + D67BA7F1221F40B4B066C81C803B78DC /* HpsPaxGiftVoidBuilder.m */, + ); + path = Builders; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 0A3A11D92D61A1BCFDF54E3798A8A177 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 2EA66502CACE6EB3E879AC6B4F8A4D4C /* Pods-Heartland-iOS-SDK_Example-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0CBADFC7FF260841201B156915C5A7EE /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + C6A65EC41EA764B54FA291510AAE33C0 /* Pods-Heartland-iOS-SDK_Tests-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 757D3997BF0E0D2BD7DEAF209AD397CF /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 3D8D410F1FF48DEE2E04F4B2132D6E07 /* XMLDictionary-umbrella.h in Headers */, + F72FB912C308B2D8317ECAAD7A9804BB /* XMLDictionary.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7B4D56CD58EA9AA5DFCB603C3396C429 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + E604352694485E0E02E0FE74AC77007C /* Heartland-iOS-SDK-umbrella.h in Headers */, + 917798322CCDC11DD72D00BDCECCE73A /* hps.h in Headers */, + 1755E7FC4F5F6DA2555A3347D555AA34 /* HpsAdditionalTxnFields.h in Headers */, + AE66D1837FB37A92C1099D003C32FED5 /* HpsAddress.h in Headers */, + 8E8BBEE340068857650F4E52D919C2EE /* HpsBinaryDataScanner.h in Headers */, + A2138DD76AAAF8D8FE3E6487CE295FB3 /* HpsCardData.h in Headers */, + 0D30BCF9C5B51B913BE1E0244009329F /* HpsCardEntry.h in Headers */, + 1B74148DB923D439F3D36753C288E458 /* HpsCardEntryViewController.h in Headers */, + AD86996B1164D1B9F7A1C593804E75AD /* HpsCardHolderData.h in Headers */, + A8C2C66AE26570864B57074DBB20BFE0 /* HpsCommon.h in Headers */, + 8642DA4E9768B041E399B44EC17C9688 /* HpsConnectionConfig.h in Headers */, + 9A9BD8CB18FC5029DF696EF9197026A4 /* HpsCreditCard.h in Headers */, + 0D48D1BC9657C7DE8618973ECA454DB6 /* HpsDeviceMessage.h in Headers */, + C24881871A973879C315ED3D21CAE204 /* HpsDeviceProtocols.h in Headers */, + 69249D9371CF9044A30BA2B811FDEC87 /* HpsEncryptionData.h in Headers */, + 93823A3D33DB68E49E63F8850DD53107 /* HpsGatewayData.h in Headers */, + A7BAFB3718D69BCD319C9C05FA1A126C /* HpsGatewayService.h in Headers */, + 50BE594E104E50357A98BF86537A5A5B /* HpsGiftCard.h in Headers */, + 15881E7CC4B9B07A55DA991779BECB2C /* HpsHeader.h in Headers */, + 0EFAB087F0C59562207AD9943B994B70 /* HpsPaxAccountRequest.h in Headers */, + D3D4E9BA5937A7BB231D42C6161A7BB8 /* HpsPaxAccountResponse.h in Headers */, + 8B18893A0952A1D8549A4280F21C0E9E /* HpsPaxAmountRequest.h in Headers */, + D013125C66593162E081C5FA6D830BB3 /* HpsPaxAmountResponse.h in Headers */, + D48DAE86112B3159A598EDCB105A2766 /* HpsPaxAvsRequest.h in Headers */, + CBFBA7CA452EFA18446995FC761D83CB /* HpsPaxAvsResponse.h in Headers */, + E551CF26E38DF0A0DD77B079054F6D8F /* HpsPaxBaseResponse.h in Headers */, + 7318F5058D5696D03EB4455C0C13493C /* HpsPaxBatchCloseResponse.h in Headers */, + AD1EAF0FD35CB765E5F3EDD71DB37E34 /* HpsPaxCashierSubGroup.h in Headers */, + 8138E3BCCEAEA69C956B98D9006495B3 /* HpsPaxCommercialRequest.h in Headers */, + 209468CDFD46237982FEBAA20CA5B464 /* HpsPaxCommercialResponse.h in Headers */, + 3FCA719D061CAEDD62DF5BC08BA16A16 /* HpsPaxCreditAuthBuilder.h in Headers */, + 717D59E14AA9CB553C45E79D6E06A33A /* HpsPaxCreditCaptureBuilder.h in Headers */, + DCDF19AF71BEB249967C1E6AB0CA00E5 /* HpsPaxCreditResponse.h in Headers */, + 1C90C06976EEE6E8CB8B920610D54B3C /* HpsPaxCreditReturnBuilder.h in Headers */, + EE85678800234D206367A20E5C0E7D5A /* HpsPaxCreditSaleBuilder.h in Headers */, + AF6930334AFCA99D489379FDD6364C73 /* HpsPaxCreditVerifyBuilder.h in Headers */, + 5CDD58C6AA187FDC972D7761B7F3AAD0 /* HpsPaxCreditVoidBuilder.h in Headers */, + 8F5FC03507179FB1A13C12743D0DD2BA /* HpsPaxDebitResponse.h in Headers */, + 04A0B0ABC0C8724E1C8F46051B977FF4 /* HpsPaxDebitReturnBuilder.h in Headers */, + E59E112C1396A9D055934C01F5AF2280 /* HpsPaxDebitSaleBuilder.h in Headers */, + 19811C6CA9AB3657DB1EA84CFAFF1ED2 /* HpsPaxDevice.h in Headers */, + CCCE12A12EFA402B3E583485372EEDA5 /* HpsPaxDeviceResponse.h in Headers */, + 12D70BE697E04A0BE66A3047E6BB20A8 /* HpsPaxEcomSubGroup.h in Headers */, + 4F34757F180D29F69F5F0CE96D55C14C /* HpsPaxExtDataSubGroup.h in Headers */, + 819437395A586F7F7FC2F30B4F65A21B /* HpsPaxGiftAddValueBuilder.h in Headers */, + 3E0E051DF7AE02F630B37AE8ABC4EC77 /* HpsPaxGiftBalanceBuilder.h in Headers */, + CFC374F1AFDF5A14D3D13B74B6F6173F /* HpsPaxGiftResponse.h in Headers */, + B5658BAEC0C0764548A04192D0979A24 /* HpsPaxGiftSaleBuilder.h in Headers */, + 0AB868299EF7BB9B4A9EB2F13487AA96 /* HpsPaxGiftVoidBuilder.h in Headers */, + 6B1B28F61BD16DD48B54E113CA14C945 /* HpsPaxHostResponse.h in Headers */, + 4C76E815FD6A95C77DE89DDDBB439B7E /* HpsPaxHttpInterface.h in Headers */, + 5F7CF071DFC1B45BFA6A6DB14845AAF6 /* HpsPaxInitializeResponse.h in Headers */, + 05423EE6A53FB618A81AADBEF08824D8 /* HpsPaxMessageIDs.h in Headers */, + B322CAE0994DBAFE0ED2D84C40B9D47F /* HpsPaxTcpInterface.h in Headers */, + 295862A34E587628C7AA4271004986CF /* HpsPaxTraceRequest.h in Headers */, + 4D596DF4A7A3C90D84CE600BB60AA751 /* HpsPaxTraceResponse.h in Headers */, + BC9AFA004C087DA99F7E44FBCE0632A0 /* HpsPosRequest.h in Headers */, + E2D198F2FF7572FC3A01F90A18FEFA7C /* HpsServicesConfig.h in Headers */, + DC0253C0C6790126B4B5FB8B1C6F0561 /* HpsTerminalEnums.h in Headers */, + AB6B6567240EA58CA98263F52E5DEAD3 /* HpsTerminalResponse.h in Headers */, + 9928ED562105707D7201BF5DDB4654E2 /* HpsTerminalUtilities.h in Headers */, + 962F660046756F861E948FDCC3456B43 /* HpsTokenData.h in Headers */, + 10364BF07F9BD6F65875E92534288B80 /* HpsTokenService.h in Headers */, + 32C816956A3A45486B8C5B9E676535FD /* HpsTransaction.h in Headers */, + E0EE2AEC5F39A0319BE0BB3F151A08F0 /* HpsTransactionDetails.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 2DB6824BD2009BF5C06C85D014B62D77 /* Heartland-iOS-SDK */ = { + isa = PBXNativeTarget; + buildConfigurationList = D9B26F65D90C42D1A35C30E3A8C5C50F /* Build configuration list for PBXNativeTarget "Heartland-iOS-SDK" */; + buildPhases = ( + D08208E25D1871B3CE219DFADAD2387A /* Sources */, + DD1B15FED2D72C638AA4ABCF17D11ED5 /* Frameworks */, + 5CD613BAE642A52706F1F66573FE9F50 /* Resources */, + 7B4D56CD58EA9AA5DFCB603C3396C429 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + DA65A89172F9B6CDC21B52F1EC22706A /* PBXTargetDependency */, + C4CDCDEC13C74314A735FB4BC16BC5A3 /* PBXTargetDependency */, + ); + name = "Heartland-iOS-SDK"; + productName = "Heartland-iOS-SDK"; + productReference = 4195B0F3DF691C544F99A9EF9A6EEF68 /* Heartland_iOS_SDK.framework */; + productType = "com.apple.product-type.framework"; + }; + 4938244EAF6244320BA6A03BE568227E /* Heartland-iOS-SDK-Heartland-iOS-SDK */ = { + isa = PBXNativeTarget; + buildConfigurationList = F00FA449613E9CFFEF65CD78E2769BCD /* Build configuration list for PBXNativeTarget "Heartland-iOS-SDK-Heartland-iOS-SDK" */; + buildPhases = ( + 26FA2A5BA2B341DA41427E299924A9EA /* Sources */, + 3F9E64387E09F3BC7B764B74DEBCD78A /* Frameworks */, + B4328988852835440A1C67629B5992D1 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "Heartland-iOS-SDK-Heartland-iOS-SDK"; + productName = "Heartland-iOS-SDK-Heartland-iOS-SDK"; + productReference = 65C3793845F7F29EC01F2C7FFB073968 /* Heartland-iOS-SDK.bundle */; + productType = "com.apple.product-type.bundle"; + }; + CF9001232002861A09A0E3F4A86D4D60 /* Pods-Heartland-iOS-SDK_Example */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2D345A75CE70370701435CCC01D2E318 /* Build configuration list for PBXNativeTarget "Pods-Heartland-iOS-SDK_Example" */; + buildPhases = ( + 73E57E5F13D35DC90B5FB411BA04032E /* Sources */, + 2FEE3CEB5323394C167086645D927F8D /* Frameworks */, + 0A3A11D92D61A1BCFDF54E3798A8A177 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + 1954522691B836694DEAAD077E293881 /* PBXTargetDependency */, + 5AF8E3BE032EECBC5E8F06F6FE1CAEE4 /* PBXTargetDependency */, + ); + name = "Pods-Heartland-iOS-SDK_Example"; + productName = "Pods-Heartland-iOS-SDK_Example"; + productReference = 3F6D2AA985483512258B9807F1C18E8C /* Pods_Heartland_iOS_SDK_Example.framework */; + productType = "com.apple.product-type.framework"; + }; + F56A94D4551B58DFDA27C533B178CD89 /* XMLDictionary */ = { + isa = PBXNativeTarget; + buildConfigurationList = 3D451964A5ED57B7318BDEC40E62F61D /* Build configuration list for PBXNativeTarget "XMLDictionary" */; + buildPhases = ( + 68C8F420D0D260237BD681411C863835 /* Sources */, + 8699FE9C95E587438285B9A4B506B34E /* Frameworks */, + 757D3997BF0E0D2BD7DEAF209AD397CF /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = XMLDictionary; + productName = XMLDictionary; + productReference = 7A86797DA451CC938C40A9CBE7F28D65 /* XMLDictionary.framework */; + productType = "com.apple.product-type.framework"; + }; + FDD7B9E9A897DD75590744A02150BCA0 /* Pods-Heartland-iOS-SDK_Tests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 31B190EB733CC34903FD547A38A5EB2F /* Build configuration list for PBXNativeTarget "Pods-Heartland-iOS-SDK_Tests" */; + buildPhases = ( + 4E1474F5D237AD830556C74572C883C4 /* Sources */, + EC3979FFB3E2D73E9BC7959CCA095904 /* Frameworks */, + 0CBADFC7FF260841201B156915C5A7EE /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + AFBC5D8E4E12803D9F1D0B9E494CBA71 /* PBXTargetDependency */, + 92854537A7944422A22B779954807433 /* PBXTargetDependency */, + ); + name = "Pods-Heartland-iOS-SDK_Tests"; + productName = "Pods-Heartland-iOS-SDK_Tests"; + productReference = 1B96F103E8357B56B35C28CF9949E6A3 /* Pods_Heartland_iOS_SDK_Tests.framework */; + productType = "com.apple.product-type.framework"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0930; + LastUpgradeCheck = 0930; + }; + buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 7DB346D0F39D3F0E887471402A8071AB; + productRefGroup = C853070BD85BF59949E34C0F34221A29 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 2DB6824BD2009BF5C06C85D014B62D77 /* Heartland-iOS-SDK */, + 4938244EAF6244320BA6A03BE568227E /* Heartland-iOS-SDK-Heartland-iOS-SDK */, + CF9001232002861A09A0E3F4A86D4D60 /* Pods-Heartland-iOS-SDK_Example */, + FDD7B9E9A897DD75590744A02150BCA0 /* Pods-Heartland-iOS-SDK_Tests */, + F56A94D4551B58DFDA27C533B178CD89 /* XMLDictionary */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 5CD613BAE642A52706F1F66573FE9F50 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C73510DF52936410A74D6789122F57FC /* Heartland-iOS-SDK.bundle in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B4328988852835440A1C67629B5992D1 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 436964C904978C8547DA2F963230D3EE /* api2.heartlandportico.com.cer in Resources */, + E54F47EF0C0E585EDC3047C300040DEA /* heartlandlogo.png in Resources */, + 4065BA86971B5D779427B924DB915480 /* HPSCardEntryViewController.xib in Resources */, + 6602B54520D14B5C006B4B95 /* *.api2.heartlandportico.com.cer in Resources */, + 033E8CA34DEDCF08122CC08A17CAA569 /* secure-submit-logo.png in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 26FA2A5BA2B341DA41427E299924A9EA /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4E1474F5D237AD830556C74572C883C4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 4D8B82BB65D5702E1285EA56A9EF6B3A /* Pods-Heartland-iOS-SDK_Tests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 68C8F420D0D260237BD681411C863835 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8A767C4E2285B5BB48E3631F0107EB77 /* XMLDictionary-dummy.m in Sources */, + 6BFCA6BA982C6A2016EAB4044930FCE3 /* XMLDictionary.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 73E57E5F13D35DC90B5FB411BA04032E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + CAB2E2E747E007AF9081428F68F5893E /* Pods-Heartland-iOS-SDK_Example-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D08208E25D1871B3CE219DFADAD2387A /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AF07DD8D55E1505CC3F7C827CCFEF736 /* Heartland-iOS-SDK-dummy.m in Sources */, + B9416C016BF77213E9E6738240537980 /* HpsAdditionalTxnFields.m in Sources */, + 1896DFC276ECA8E4EA572EB127808603 /* HpsAddress.m in Sources */, + 8631DCDE76BDA7F92EF82CCBB4CEC8EF /* HpsBinaryDataScanner.m in Sources */, + 036F6E424A9D671B067A5E2AA5E3AEE1 /* HpsCardData.m in Sources */, + 6C89968CA95F1D06F0DE4E8731A557DA /* HpsCardEntry.m in Sources */, + 9CFA6128183EB31AB6AA7CD0F824AC90 /* HpsCardEntryViewController.m in Sources */, + C3A0DABF39DDECF6A8584A68100A6C10 /* HpsCardHolderData.m in Sources */, + F204AE7959EB19E1DEC91F585962597B /* HpsCommon.m in Sources */, + ECFEFDE8132858EB3BFE805A0AE58410 /* HpsConnectionConfig.m in Sources */, + 84716290171F164CAEC47C71B8840911 /* HpsCreditCard.m in Sources */, + 36C2E2186FCABFEAA350D5D0DE951264 /* HpsDeviceMessage.m in Sources */, + 3584CDD7FFC21D387A19D2E6E6F22BDA /* HpsDeviceProtocols.m in Sources */, + 136BF4CEB7950D8C698D506E033379F4 /* HpsEncryptionData.m in Sources */, + B07FB0A095CEF6DE06E8CE79F2C3F7C9 /* HpsGatewayData.m in Sources */, + C233309C749E6772FD4888506AB9CAAD /* HpsGatewayService.m in Sources */, + 454F2E9A0DB5B37781882E2274FE8044 /* HpsGiftCard.m in Sources */, + 29F08EF6DDC39FDBC50C88CDDF181B01 /* HpsHeader.m in Sources */, + 6CDE20109F2D90FF1A04B0B1F5648C31 /* HpsPaxAccountRequest.m in Sources */, + B353590E7992DFD9B55BB9503F2064B0 /* HpsPaxAccountResponse.m in Sources */, + 2EC197F0A4EA931FA90962D289740C38 /* HpsPaxAmountRequest.m in Sources */, + DF3A917E070218F0F7BE63D3C0DA90E4 /* HpsPaxAmountResponse.m in Sources */, + DBCEA37157033F9B060D34EC368C1ADC /* HpsPaxAvsRequest.m in Sources */, + 280CEE6D3EFB106DC429E083D7159344 /* HpsPaxAvsResponse.m in Sources */, + 02E50459FB9CFA6A6D13C45DA12AD815 /* HpsPaxBaseResponse.m in Sources */, + 5B39C5CD0B17E50F5E04336F71E534C4 /* HpsPaxBatchCloseResponse.m in Sources */, + 6E87B936F7CEEC890B0CCDDD384E1530 /* HpsPaxCashierSubGroup.m in Sources */, + 3E83C00125EA911B0A84392746CE275B /* HpsPaxCommercialRequest.m in Sources */, + 9BA3CF5073422F92B507E95957E8179B /* HpsPaxCommercialResponse.m in Sources */, + 326C6E6CF89666D35BEC2314DD04A48F /* HpsPaxCreditAuthBuilder.m in Sources */, + AB386B08FE2EC845F894321E8369FC80 /* HpsPaxCreditCaptureBuilder.m in Sources */, + 6145FF02576993DB2CB57D4235D67ED4 /* HpsPaxCreditResponse.m in Sources */, + 2AE2344A805893543A94CAF7B6AFB0FD /* HpsPaxCreditReturnBuilder.m in Sources */, + 1489BF04023130191A7A7B1A38D0F425 /* HpsPaxCreditSaleBuilder.m in Sources */, + 8061347BFD34BD8FC49A1988737CFC8D /* HpsPaxCreditVerifyBuilder.m in Sources */, + 0BFAF309813D353D4703ECBDF308AB2A /* HpsPaxCreditVoidBuilder.m in Sources */, + B97B00478E6D18672737574CA6C8581B /* HpsPaxDebitResponse.m in Sources */, + 4829B26D8D31CEBAC88A91A36CFBD551 /* HpsPaxDebitReturnBuilder.m in Sources */, + 650519B135CDE4523DDAF6EF2CCB0199 /* HpsPaxDebitSaleBuilder.m in Sources */, + 725BE7069B8BDF379FC2F5D1626A360E /* HpsPaxDevice.m in Sources */, + D5A28040A9DDB429926130C5ABC60410 /* HpsPaxDeviceResponse.m in Sources */, + 851170E51054C041758CB1A3867E536E /* HpsPaxEcomSubGroup.m in Sources */, + 69632F961C74D2CF6CD6230B95413772 /* HpsPaxExtDataSubGroup.m in Sources */, + 767BB565E67D719EC5B25FF0B53CD9B5 /* HpsPaxGiftAddValueBuilder.m in Sources */, + 0959174DAE4BA1F34152E26B897CC64A /* HpsPaxGiftBalanceBuilder.m in Sources */, + 093307F5DD61521B581EB2D926F1A168 /* HpsPaxGiftResponse.m in Sources */, + C61704C923250DB2FFF3E78746B7F19A /* HpsPaxGiftSaleBuilder.m in Sources */, + E5FB908C1E9F89DFF315C086D4739C46 /* HpsPaxGiftVoidBuilder.m in Sources */, + 222315DAF92E8E13B602218E6A6197CF /* HpsPaxHostResponse.m in Sources */, + 2528D812E59A46024D3EFE46CF36AA74 /* HpsPaxHttpInterface.m in Sources */, + 45B04969A9FBA248C01DBA06AD5D7501 /* HpsPaxInitializeResponse.m in Sources */, + 8022493B6AACD1E737B410C00FA10967 /* HpsPaxMessageIDs.m in Sources */, + 1934AE6B8A389DC40110462E013D712E /* HpsPaxTcpInterface.m in Sources */, + 7ED0E900CCFB50D5BC0E0CD94269CDE2 /* HpsPaxTraceRequest.m in Sources */, + 8759A5618217421876F0C89A4C7BDE93 /* HpsPaxTraceResponse.m in Sources */, + DB5DC49C635F0F387314DEF9FFACD54A /* HpsPosRequest.m in Sources */, + F1471758F5EB670C3AF52F4087DBA3B6 /* HpsServicesConfig.m in Sources */, + C973AA1CD7FC182A44553C5A2C040AE4 /* HpsTerminalEnums.m in Sources */, + 68E2D5B6680E6DAE93D5137BD6BF5016 /* HpsTerminalResponse.m in Sources */, + F0C97858448ECC3A6ACE704A1F0083DB /* HpsTerminalUtilities.m in Sources */, + C4EFFF6C7A37CEFAF0254FDCAA84890D /* HpsTokenData.m in Sources */, + 8991EBF21F579003525D504D8F473AFB /* HpsTokenService.m in Sources */, + 782C62652113C7736968A52401738EF1 /* HpsTransaction.m in Sources */, + 94DC97F348D86EF1AC42F5B35196B54C /* HpsTransactionDetails.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 1954522691B836694DEAAD077E293881 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Heartland-iOS-SDK"; + target = 2DB6824BD2009BF5C06C85D014B62D77 /* Heartland-iOS-SDK */; + targetProxy = FE3179EEDAAB67D774B430FC43513B13 /* PBXContainerItemProxy */; + }; + 5AF8E3BE032EECBC5E8F06F6FE1CAEE4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = XMLDictionary; + target = F56A94D4551B58DFDA27C533B178CD89 /* XMLDictionary */; + targetProxy = B13E721DCD1926280416818484F59FD6 /* PBXContainerItemProxy */; + }; + 92854537A7944422A22B779954807433 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = XMLDictionary; + target = F56A94D4551B58DFDA27C533B178CD89 /* XMLDictionary */; + targetProxy = 54707C4613D0E7EC3C3CF6B6FD84F326 /* PBXContainerItemProxy */; + }; + AFBC5D8E4E12803D9F1D0B9E494CBA71 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Heartland-iOS-SDK"; + target = 2DB6824BD2009BF5C06C85D014B62D77 /* Heartland-iOS-SDK */; + targetProxy = 978F5767CCDA002B1E29A4CF55841921 /* PBXContainerItemProxy */; + }; + C4CDCDEC13C74314A735FB4BC16BC5A3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = XMLDictionary; + target = F56A94D4551B58DFDA27C533B178CD89 /* XMLDictionary */; + targetProxy = 0D2ADF4FEF32736DB83C6B42BDE37970 /* PBXContainerItemProxy */; + }; + DA65A89172F9B6CDC21B52F1EC22706A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Heartland-iOS-SDK-Heartland-iOS-SDK"; + target = 4938244EAF6244320BA6A03BE568227E /* Heartland-iOS-SDK-Heartland-iOS-SDK */; + targetProxy = DFC8A77878348ADDDEE6E43AC99021CB /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 0720E44A8931AAC5D60C562B280764DA /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = F535745C973D08436EFC930BBF96582A /* Pods-Heartland-iOS-SDK_Example.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Example/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 0727494991316DA37B72449FF7DD00A1 /* Pax_Testing */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 83EDA171A6A2633289CF9DB714854680 /* Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Tests/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Pax_Testing; + }; + 157BE7A0E4704B39C77E2E6671FD65C4 /* Pax_Testing */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_PAX_TESTING=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Pax_Testing; + }; + 1EE19F5DD95931924296F637BF18BD8F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + 2DC5A0A683EDD36A4A15DAF69D813897 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EA710C6ECC810DF4478F3647760A59A9 /* Pods-Heartland-iOS-SDK_Tests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Tests/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 39D97F033BEC645F84277A2EA42AD6D8 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FC20E8B2288D503D57E880C5637184CA /* XMLDictionary.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/XMLDictionary/XMLDictionary-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/XMLDictionary/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/XMLDictionary/XMLDictionary.modulemap"; + PRODUCT_MODULE_NAME = XMLDictionary; + PRODUCT_NAME = XMLDictionary; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 3FD07ED3D2F478FC612AA965C08194DF /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 62C76EAFE4212A93D15FE8B367C29B3B /* Pods-Heartland-iOS-SDK_Tests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Tests/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 541C64F407A0B38C9275D765FA4EFBF0 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Heartland-iOS-SDK/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/Heartland-iOS-SDK/Heartland-iOS-SDK.modulemap"; + PRODUCT_MODULE_NAME = Heartland_iOS_SDK; + PRODUCT_NAME = Heartland_iOS_SDK; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 60838358DD198B5C341B7CB3189C044A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Heartland-iOS-SDK"; + INFOPLIST_FILE = "Target Support Files/Heartland-iOS-SDK/ResourceBundle-Heartland-iOS-SDK-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + PRODUCT_NAME = "Heartland-iOS-SDK"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; + }; + name = Release; + }; + 6FF39036302E3D4BD83863997428067A /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Heartland-iOS-SDK"; + INFOPLIST_FILE = "Target Support Files/Heartland-iOS-SDK/ResourceBundle-Heartland-iOS-SDK-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + PRODUCT_NAME = "Heartland-iOS-SDK"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; + }; + name = Debug; + }; + 9A1CB7C44B7946C64FB3FDFEAB67736A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Heartland-iOS-SDK/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/Heartland-iOS-SDK/Heartland-iOS-SDK.modulemap"; + PRODUCT_MODULE_NAME = Heartland_iOS_SDK; + PRODUCT_NAME = Heartland_iOS_SDK; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 9FAD1C5C750C08656762C4D692960C01 /* Pax_Testing */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Heartland-iOS-SDK"; + INFOPLIST_FILE = "Target Support Files/Heartland-iOS-SDK/ResourceBundle-Heartland-iOS-SDK-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + PRODUCT_NAME = "Heartland-iOS-SDK"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + WRAPPER_EXTENSION = bundle; + }; + name = Pax_Testing; + }; + ACDFDC45D7652F1AED888CD20FDFFED5 /* Pax_Testing */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A70078EA9568B20CEE8F522D0E9774D /* Heartland-iOS-SDK.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Heartland-iOS-SDK/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/Heartland-iOS-SDK/Heartland-iOS-SDK.modulemap"; + PRODUCT_MODULE_NAME = Heartland_iOS_SDK; + PRODUCT_NAME = Heartland_iOS_SDK; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Pax_Testing; + }; + B30FCD60EF93FA129453008722F37975 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 419FACCBEBE11983010FFD9F1F4F5D62 /* Pods-Heartland-iOS-SDK_Example.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Example/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + B8E85BFA0E23CEC1412D17A77A2E4E02 /* Pax_Testing */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FC20E8B2288D503D57E880C5637184CA /* XMLDictionary.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/XMLDictionary/XMLDictionary-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/XMLDictionary/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/XMLDictionary/XMLDictionary.modulemap"; + PRODUCT_MODULE_NAME = XMLDictionary; + PRODUCT_NAME = XMLDictionary; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Pax_Testing; + }; + D2D68093630A9809652C574DFA88A119 /* Pax_Testing */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 4D646D46C886B2D15AA45EEC64C76261 /* Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Example/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Pax_Testing; + }; + D5592C4A744D638A310C3BF6C199F7EA /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FC20E8B2288D503D57E880C5637184CA /* XMLDictionary.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/XMLDictionary/XMLDictionary-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/XMLDictionary/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/XMLDictionary/XMLDictionary.modulemap"; + PRODUCT_MODULE_NAME = XMLDictionary; + PRODUCT_NAME = XMLDictionary; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + F4568DEE257655D290C2B9CEAB37C934 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 2D345A75CE70370701435CCC01D2E318 /* Build configuration list for PBXNativeTarget "Pods-Heartland-iOS-SDK_Example" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B30FCD60EF93FA129453008722F37975 /* Debug */, + D2D68093630A9809652C574DFA88A119 /* Pax_Testing */, + 0720E44A8931AAC5D60C562B280764DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1EE19F5DD95931924296F637BF18BD8F /* Debug */, + 157BE7A0E4704B39C77E2E6671FD65C4 /* Pax_Testing */, + F4568DEE257655D290C2B9CEAB37C934 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 31B190EB733CC34903FD547A38A5EB2F /* Build configuration list for PBXNativeTarget "Pods-Heartland-iOS-SDK_Tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2DC5A0A683EDD36A4A15DAF69D813897 /* Debug */, + 0727494991316DA37B72449FF7DD00A1 /* Pax_Testing */, + 3FD07ED3D2F478FC612AA965C08194DF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 3D451964A5ED57B7318BDEC40E62F61D /* Build configuration list for PBXNativeTarget "XMLDictionary" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D5592C4A744D638A310C3BF6C199F7EA /* Debug */, + B8E85BFA0E23CEC1412D17A77A2E4E02 /* Pax_Testing */, + 39D97F033BEC645F84277A2EA42AD6D8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D9B26F65D90C42D1A35C30E3A8C5C50F /* Build configuration list for PBXNativeTarget "Heartland-iOS-SDK" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 541C64F407A0B38C9275D765FA4EFBF0 /* Debug */, + ACDFDC45D7652F1AED888CD20FDFFED5 /* Pax_Testing */, + 9A1CB7C44B7946C64FB3FDFEAB67736A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + F00FA449613E9CFFEF65CD78E2769BCD /* Build configuration list for PBXNativeTarget "Heartland-iOS-SDK-Heartland-iOS-SDK" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6FF39036302E3D4BD83863997428067A /* Debug */, + 9FAD1C5C750C08656762C4D692960C01 /* Pax_Testing */, + 60838358DD198B5C341B7CB3189C044A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; +} diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Heartland-iOS-SDK-Heartland-iOS-SDK.xcscheme b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Heartland-iOS-SDK-Heartland-iOS-SDK.xcscheme new file mode 100644 index 00000000..10af04f5 --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Heartland-iOS-SDK-Heartland-iOS-SDK.xcscheme @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Heartland-iOS-SDK.xcscheme b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Heartland-iOS-SDK.xcscheme new file mode 100644 index 00000000..72d431c5 --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Heartland-iOS-SDK.xcscheme @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Pods-Heartland-iOS-SDK_Example.xcscheme b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Pods-Heartland-iOS-SDK_Example.xcscheme new file mode 100644 index 00000000..db49f4ac --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Pods-Heartland-iOS-SDK_Example.xcscheme @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Pods-Heartland-iOS-SDK_Tests.xcscheme b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Pods-Heartland-iOS-SDK_Tests.xcscheme new file mode 100644 index 00000000..844b1fc2 --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/Pods-Heartland-iOS-SDK_Tests.xcscheme @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/XMLDictionary.xcscheme b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/XMLDictionary.xcscheme new file mode 100644 index 00000000..c7a47149 --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/XMLDictionary.xcscheme @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/xcschememanagement.plist b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 00000000..e6276f95 --- /dev/null +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alexander.frolikov.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,36 @@ + + + + + SchemeUserState + + Heartland-iOS-SDK-Heartland-iOS-SDK.xcscheme + + isShown + + + Heartland-iOS-SDK.xcscheme + + isShown + + + Pods-Heartland-iOS-SDK_Example.xcscheme + + isShown + + + Pods-Heartland-iOS-SDK_Tests.xcscheme + + isShown + + + XMLDictionary.xcscheme + + isShown + + + + SuppressBuildableAutocreation + + + diff --git a/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-dummy.m b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-dummy.m new file mode 100644 index 00000000..65b3bebb --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Heartland_iOS_SDK : NSObject +@end +@implementation PodsDummy_Heartland_iOS_SDK +@end diff --git a/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-prefix.pch b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-prefix.pch new file mode 100644 index 00000000..beb2a244 --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-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/Heartland-iOS-SDK/Heartland-iOS-SDK-umbrella.h b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-umbrella.h new file mode 100644 index 00000000..67f22b02 --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK-umbrella.h @@ -0,0 +1,80 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + +#import "hps.h" +#import "HpsAdditionalTxnFields.h" +#import "HpsAddress.h" +#import "HpsCardData.h" +#import "HpsCardEntry.h" +#import "HpsCardHolderData.h" +#import "HpsCommon.h" +#import "HpsCreditCard.h" +#import "HpsEncryptionData.h" +#import "HpsGatewayData.h" +#import "HpsGiftCard.h" +#import "HpsHeader.h" +#import "HpsPosRequest.h" +#import "HpsServicesConfig.h" +#import "HpsTokenData.h" +#import "HpsTransaction.h" +#import "HpsTransactionDetails.h" +#import "HpsGatewayService.h" +#import "HpsTokenService.h" +#import "HpsConnectionConfig.h" +#import "HpsDeviceMessage.h" +#import "HpsDeviceProtocols.h" +#import "HpsTerminalResponse.h" +#import "HpsPaxCreditAuthBuilder.h" +#import "HpsPaxCreditCaptureBuilder.h" +#import "HpsPaxCreditReturnBuilder.h" +#import "HpsPaxCreditSaleBuilder.h" +#import "HpsPaxCreditVerifyBuilder.h" +#import "HpsPaxCreditVoidBuilder.h" +#import "HpsPaxDebitReturnBuilder.h" +#import "HpsPaxDebitSaleBuilder.h" +#import "HpsPaxGiftAddValueBuilder.h" +#import "HpsPaxGiftBalanceBuilder.h" +#import "HpsPaxGiftSaleBuilder.h" +#import "HpsPaxGiftVoidBuilder.h" +#import "HpsPaxDevice.h" +#import "HpsPaxMessageIDs.h" +#import "HpsPaxHttpInterface.h" +#import "HpsPaxTcpInterface.h" +#import "HpsPaxAccountRequest.h" +#import "HpsPaxAccountResponse.h" +#import "HpsPaxAmountRequest.h" +#import "HpsPaxAmountResponse.h" +#import "HpsPaxAvsRequest.h" +#import "HpsPaxAvsResponse.h" +#import "HpsPaxBaseResponse.h" +#import "HpsPaxBatchCloseResponse.h" +#import "HpsPaxCashierSubGroup.h" +#import "HpsPaxCommercialRequest.h" +#import "HpsPaxCommercialResponse.h" +#import "HpsPaxCreditResponse.h" +#import "HpsPaxDebitResponse.h" +#import "HpsPaxDeviceResponse.h" +#import "HpsPaxEcomSubGroup.h" +#import "HpsPaxExtDataSubGroup.h" +#import "HpsPaxGiftResponse.h" +#import "HpsPaxHostResponse.h" +#import "HpsPaxInitializeResponse.h" +#import "HpsPaxTraceRequest.h" +#import "HpsPaxTraceResponse.h" +#import "HpsBinaryDataScanner.h" +#import "HpsTerminalEnums.h" +#import "HpsTerminalUtilities.h" +#import "HpsCardEntryViewController.h" + +FOUNDATION_EXPORT double Heartland_iOS_SDKVersionNumber; +FOUNDATION_EXPORT const unsigned char Heartland_iOS_SDKVersionString[]; + diff --git a/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK.modulemap b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK.modulemap new file mode 100644 index 00000000..47d9f24f --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK.modulemap @@ -0,0 +1,6 @@ +framework module Heartland_iOS_SDK { + umbrella header "Heartland-iOS-SDK-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK.xcconfig b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK.xcconfig new file mode 100644 index 00000000..f142102d --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Heartland-iOS-SDK.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_LDFLAGS = -framework "UIKit" +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/Pods/Target Support Files/Heartland-iOS-SDK/Info.plist b/Example/Pods/Target Support Files/Heartland-iOS-SDK/Info.plist new file mode 100644 index 00000000..3f382712 --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/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.8 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Heartland-iOS-SDK/ResourceBundle-Heartland-iOS-SDK-Info.plist b/Example/Pods/Target Support Files/Heartland-iOS-SDK/ResourceBundle-Heartland-iOS-SDK-Info.plist new file mode 100644 index 00000000..2aa029b8 --- /dev/null +++ b/Example/Pods/Target Support Files/Heartland-iOS-SDK/ResourceBundle-Heartland-iOS-SDK-Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0.8 + CFBundleSignature + ???? + CFBundleVersion + 1 + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Info.plist b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Info.plist new file mode 100644 index 00000000..2243fe6e --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_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-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-acknowledgements.markdown b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-acknowledgements.markdown new file mode 100644 index 00000000..84e94549 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-acknowledgements.markdown @@ -0,0 +1,60 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## Heartland-iOS-SDK + +END-USER LICENSE AGREEMENT FOR SECURE SUBMIT +REVISED 11.13.13 +IMPORTANT READ CAREFULLY: +This Heartland Payment Systems (“HPS”) End-User License Agreement (“EULA”) is a legal agreement between you (either an individual or a single entity) and HPS for the Secure Submit software product accompanying this EULA, which includes computer software and may include associated media, printed materials, and online or electronic documentation (“Software”). By downloading, copying or otherwise using the Software, you agree to the terms of this EULA and any additional terms and conditions that may be added to the EULA by HPS. BY DOWNLOADING, COPYING OR USING THE SOFTWARE YOU ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD, AND AGREED TO BE BOUND BY THE TERMS HEREIN. IF YOU HAVE ANY QUESTIONS ON THE TERMS OF USE, YOU SHOULD CONSULT WITH AN ATTORNEY BEFORE DOWNLOADING OR USING THE SOFTWARE. If you do not agree to the terms of this EULA, do not download or use the Software. As used herein, the words “you” and “your” mean the person or entity that has downloaded or used the Software. The words “we,” “us” and “our” means HPS. You must be at least 18 years of age in any of the fifty United States (or 21 in Puerto Rico) to use the Software. By downloading or using the Software, you agree that you will use the Software only in the United States or United States territories. +GRANT OF LICENSE +HPS hereby grants you a limited, non-exclusive, non-transferable, royalty-free license to make and use an unlimited number of copies of the Software accompanying this EULA: (1) solely for your internal purpose of integrating session-based data encryption into HPS’s payment processing platform; or (2) to make and distribute new programs incorporating the Software for the purpose of integrating to HPS’s payment processing platform for sublicensing to those who have an internal purpose of integrating session-based data encryption into HPS’s payment processing platform (the “Purpose”). +USE RESTRICTION +You acknowledge that the Software acquired hereunder can only be used for the Purpose. Use of the Software for any other purpose is a violation of this EULA and you agree to be subject to any and all penalties and remedies available at law or in equity for violation of intellectual property laws and treaties. +TERMINATION +Without prejudice to any other rights, HPS may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In any event, this EULA shall terminate if you no longer have a purpose of integrating session-based data encryption into HPS’s payment processing platform. In the event of termination of this EULA, you must destroy all copies of the Software and all of its component parts. +RESERVATION OF RIGHTS +You agree that the Software is owned HPS and all rights not expressly granted herein are reserved by HPS. +PRODUCT MAINTENANCE +You understand and agree that HPS may provide updates to the Software from time to time but HPS shall have no obligation to provide maintenance or updates to you for Software licensed under this Agreement. +MISAPPROPRIATION +You shall promptly advise HPS, in writing, of any misappropriation or misuse of the Software by any person which may come to your attention. +U.S. GOVERNMENT RESTRICTED RIGHTS AND EXPORT RESTRICTIONS +The Software is provided with restricted rights. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software Restricted Rights at 48 CFR 52.227-19, as applicable. Manufacturer is Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08542. You acknowledge that the Software acquired hereunder is subject to the export control laws and regulations of the U.S.A., and any amendments thereof. You acknowledge and agree that you will not, directly or indirectly, export the Software. +DISCLAIMER OF WARRANTY +THE SOFTWARE IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, WHATSOEVER, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. YOU ASSUME THE ENTIRE RISK ARISING OUT OF THE USE OR PERFORMANCE OF THE SOFTWARE. +DISCLAIMER OF DAMAGES AND LIMITATION OF LIABILITY + +IN NO EVENT SHALL HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, PUNITIVE, EXEMPLARY, CONSEQUENTIAL OR OTHER DAMAGES WHATSOEVER, INCLUDING BUT NOT LIMITED TO PROPERTY DAMAGE, LOSS OF USE, LOSS OF BUSINESS, ECONOMIC LOSS, LOSS OF DATA OR LOSS OF PROFITS, WITHOUT REGARD TO THE FORM OF ACTION (INCLUDING BUT NOT LIMITED TO CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTIONS) ARISING OUT OF OR IN CONNECTION WITH YOUR USE OF THE SOFTWARE, EVEN IF HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS HAD BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE OR LOSS. BECAUSE SOME STATES OR JURISDICTIONS DO NOT ALLOW LIMITATION OR EXCLUSION OF DAMAGES, THE ABOVE LIMITATION MAY NOT FULLY APPLY TO YOU. + +MISCELLANEOUS + +This EULA shall be construed, interpreted and performed exclusively according to the laws of the State of New Jersey, United States of America, without giving effect to any principles of conflicts of law. You expressly agree that any action at law or in equity arising out of or directly or indirectly relating to this EULA or the Software shall be filed only in the federal or state courts sitting in Mercer County, New Jersey. You hereby consent and submit to personal jurisdiction of such courts for the purposes of any action related to the Software, your access or use thereof, or this EULA, and to extra-territorial service of process. + +This EULA may not be assigned by you. HPS may assign their rights and obligations set forth in this EULA at any time. Should any part or provision of this EULA be held unlawful, void, invalid or unenforceable, that portion shall be deemed severable from this EULA shall not affect the validity and enforceability of any remaining provisions. Except as provided herein, this EULA constitutes the entire agreement between you and HPS pertaining to the download or use of the Software. Nothing herein shall alter or modify your agreements with HPS related to payment processing or other services or products provided to you by HPS. HPS’s failure to enforce any provision of this EULA or any additional terms shall not be deemed a waiver of such provisions nor of its right to enforce such provision. This EULA may be accepted in electronic form (e.g., by an electronic or other means of demonstrating assent) and your acceptance will be deemed binding between you and HPS. You hereby agree, without limitation, that you not will contest the validity or enforceability of this EULA. + +CONTACT +Should you have any questions concerning this EULA, or if you desire to contact HPS for any reason, please write: Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08452. Attention: Legal. + +## XMLDictionary + +XMLDictionary + +Copyright (C) 2011 Charcoal Design + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +Generated by CocoaPods - https://cocoapods.org diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-acknowledgements.plist b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-acknowledgements.plist new file mode 100644 index 00000000..913c58a8 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-acknowledgements.plist @@ -0,0 +1,98 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + END-USER LICENSE AGREEMENT FOR SECURE SUBMIT +REVISED 11.13.13 +IMPORTANT READ CAREFULLY: +This Heartland Payment Systems (“HPS”) End-User License Agreement (“EULA”) is a legal agreement between you (either an individual or a single entity) and HPS for the Secure Submit software product accompanying this EULA, which includes computer software and may include associated media, printed materials, and online or electronic documentation (“Software”). By downloading, copying or otherwise using the Software, you agree to the terms of this EULA and any additional terms and conditions that may be added to the EULA by HPS. BY DOWNLOADING, COPYING OR USING THE SOFTWARE YOU ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD, AND AGREED TO BE BOUND BY THE TERMS HEREIN. IF YOU HAVE ANY QUESTIONS ON THE TERMS OF USE, YOU SHOULD CONSULT WITH AN ATTORNEY BEFORE DOWNLOADING OR USING THE SOFTWARE. If you do not agree to the terms of this EULA, do not download or use the Software. As used herein, the words “you” and “your” mean the person or entity that has downloaded or used the Software. The words “we,” “us” and “our” means HPS. You must be at least 18 years of age in any of the fifty United States (or 21 in Puerto Rico) to use the Software. By downloading or using the Software, you agree that you will use the Software only in the United States or United States territories. +GRANT OF LICENSE +HPS hereby grants you a limited, non-exclusive, non-transferable, royalty-free license to make and use an unlimited number of copies of the Software accompanying this EULA: (1) solely for your internal purpose of integrating session-based data encryption into HPS’s payment processing platform; or (2) to make and distribute new programs incorporating the Software for the purpose of integrating to HPS’s payment processing platform for sublicensing to those who have an internal purpose of integrating session-based data encryption into HPS’s payment processing platform (the “Purpose”). +USE RESTRICTION +You acknowledge that the Software acquired hereunder can only be used for the Purpose. Use of the Software for any other purpose is a violation of this EULA and you agree to be subject to any and all penalties and remedies available at law or in equity for violation of intellectual property laws and treaties. +TERMINATION +Without prejudice to any other rights, HPS may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In any event, this EULA shall terminate if you no longer have a purpose of integrating session-based data encryption into HPS’s payment processing platform. In the event of termination of this EULA, you must destroy all copies of the Software and all of its component parts. +RESERVATION OF RIGHTS +You agree that the Software is owned HPS and all rights not expressly granted herein are reserved by HPS. +PRODUCT MAINTENANCE +You understand and agree that HPS may provide updates to the Software from time to time but HPS shall have no obligation to provide maintenance or updates to you for Software licensed under this Agreement. +MISAPPROPRIATION +You shall promptly advise HPS, in writing, of any misappropriation or misuse of the Software by any person which may come to your attention. +U.S. GOVERNMENT RESTRICTED RIGHTS AND EXPORT RESTRICTIONS +The Software is provided with restricted rights. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software Restricted Rights at 48 CFR 52.227-19, as applicable. Manufacturer is Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08542. You acknowledge that the Software acquired hereunder is subject to the export control laws and regulations of the U.S.A., and any amendments thereof. You acknowledge and agree that you will not, directly or indirectly, export the Software. +DISCLAIMER OF WARRANTY +THE SOFTWARE IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, WHATSOEVER, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. YOU ASSUME THE ENTIRE RISK ARISING OUT OF THE USE OR PERFORMANCE OF THE SOFTWARE. +DISCLAIMER OF DAMAGES AND LIMITATION OF LIABILITY + +IN NO EVENT SHALL HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, PUNITIVE, EXEMPLARY, CONSEQUENTIAL OR OTHER DAMAGES WHATSOEVER, INCLUDING BUT NOT LIMITED TO PROPERTY DAMAGE, LOSS OF USE, LOSS OF BUSINESS, ECONOMIC LOSS, LOSS OF DATA OR LOSS OF PROFITS, WITHOUT REGARD TO THE FORM OF ACTION (INCLUDING BUT NOT LIMITED TO CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTIONS) ARISING OUT OF OR IN CONNECTION WITH YOUR USE OF THE SOFTWARE, EVEN IF HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS HAD BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE OR LOSS. BECAUSE SOME STATES OR JURISDICTIONS DO NOT ALLOW LIMITATION OR EXCLUSION OF DAMAGES, THE ABOVE LIMITATION MAY NOT FULLY APPLY TO YOU. + +MISCELLANEOUS + +This EULA shall be construed, interpreted and performed exclusively according to the laws of the State of New Jersey, United States of America, without giving effect to any principles of conflicts of law. You expressly agree that any action at law or in equity arising out of or directly or indirectly relating to this EULA or the Software shall be filed only in the federal or state courts sitting in Mercer County, New Jersey. You hereby consent and submit to personal jurisdiction of such courts for the purposes of any action related to the Software, your access or use thereof, or this EULA, and to extra-territorial service of process. + +This EULA may not be assigned by you. HPS may assign their rights and obligations set forth in this EULA at any time. Should any part or provision of this EULA be held unlawful, void, invalid or unenforceable, that portion shall be deemed severable from this EULA shall not affect the validity and enforceability of any remaining provisions. Except as provided herein, this EULA constitutes the entire agreement between you and HPS pertaining to the download or use of the Software. Nothing herein shall alter or modify your agreements with HPS related to payment processing or other services or products provided to you by HPS. HPS’s failure to enforce any provision of this EULA or any additional terms shall not be deemed a waiver of such provisions nor of its right to enforce such provision. This EULA may be accepted in electronic form (e.g., by an electronic or other means of demonstrating assent) and your acceptance will be deemed binding between you and HPS. You hereby agree, without limitation, that you not will contest the validity or enforceability of this EULA. + +CONTACT +Should you have any questions concerning this EULA, or if you desire to contact HPS for any reason, please write: Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08452. Attention: Legal. + License + EULA + Title + Heartland-iOS-SDK + Type + PSGroupSpecifier + + + FooterText + XMLDictionary + +Copyright (C) 2011 Charcoal Design + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + License + zlib + Title + XMLDictionary + 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-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-dummy.m b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-dummy.m new file mode 100644 index 00000000..18db47b5 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Heartland_iOS_SDK_Example : NSObject +@end +@implementation PodsDummy_Pods_Heartland_iOS_SDK_Example +@end diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-frameworks.sh b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-frameworks.sh new file mode 100755 index 00000000..a94f7074 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-frameworks.sh @@ -0,0 +1,159 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + +COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" +SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" + +# Used as a return value for each invocation of `strip_invalid_archs` function. +STRIP_BINARY_RETVAL=0 + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +# Copies and strips a vendored framework +install_framework() +{ + if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then + local source="${BUILT_PRODUCTS_DIR}/$1" + elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then + local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" + elif [ -r "$1" ]; then + local source="$1" + fi + + local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + + if [ -L "${source}" ]; then + echo "Symlinked..." + source="$(readlink "${source}")" + fi + + # Use filter instead of exclude so missing patterns don't throw errors. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" + + local basename + basename="$(basename -s .framework "$1")" + binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then + binary="${destination}/${basename}" + fi + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then + strip_invalid_archs "$binary" + fi + + # Resign the code if required by the build settings to avoid unstable apps + code_sign_if_enabled "${destination}/$(basename "$1")" + + # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. + if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then + local swift_runtime_libs + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + for lib in $swift_runtime_libs; do + echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" + rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" + code_sign_if_enabled "${destination}/${lib}" + done + fi +} + +# Copies and strips a vendored dSYM +install_dsym() { + local source="$1" + if [ -r "$source" ]; then + # Copy the dSYM into a the targets temp dir. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}" + + local basename + basename="$(basename -s .framework.dSYM "$source")" + binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}" + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"Mach-O dSYM companion"* ]]; then + strip_invalid_archs "$binary" + fi + + if [[ $STRIP_BINARY_RETVAL == 1 ]]; then + # Move the stripped file into its final destination. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}" + else + # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing. + touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM" + fi + fi +} + +# Signs a framework with the provided identity +code_sign_if_enabled() { + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identitiy + echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" + local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" + + if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + code_sign_cmd="$code_sign_cmd &" + fi + echo "$code_sign_cmd" + eval "$code_sign_cmd" + fi +} + +# Strip invalid architectures +strip_invalid_archs() { + binary="$1" + # Get architectures for current target binary + binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)" + # Intersect them with the architectures we are building for + intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)" + # If there are no archs supported by this binary then warn the user + if [[ -z "$intersected_archs" ]]; then + echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)." + STRIP_BINARY_RETVAL=0 + return + fi + stripped="" + for arch in $binary_archs; do + if ! [[ "${ARCHS}" == *"$arch"* ]]; then + # Strip non-valid architectures in-place + lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + stripped="$stripped $arch" + fi + done + if [[ "$stripped" ]]; then + echo "Stripped $binary of architectures:$stripped" + fi + STRIP_BINARY_RETVAL=1 +} + + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework" + install_framework "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework" +fi +if [[ "$CONFIGURATION" == "Pax_Testing" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework" + install_framework "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework" + install_framework "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework" +fi +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-resources.sh b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-resources.sh new file mode 100755 index 00000000..fe3f9c72 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-resources.sh @@ -0,0 +1,118 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +if [ -z ${UNLOCALIZED_RESOURCES_FOLDER_PATH+x} ]; then + # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy + # resources to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +case "${TARGETED_DEVICE_FAMILY:-}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + 3) + TARGET_DEVICE_ARGS="--target-device tv" + ;; + 4) + TARGET_DEVICE_ARGS="--target-device watch" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; +esac + +install_resource() +{ + if [[ "$1" = /* ]] ; then + RESOURCE_PATH="$1" + else + RESOURCE_PATH="${PODS_ROOT}/$1" + fi + if [[ ! -e "$RESOURCE_PATH" ]] ; then + cat << EOM +error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. +EOM + exit 1 + fi + case $RESOURCE_PATH in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.framework) + echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true + xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + *) + echo "$RESOURCE_PATH" || true + echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "${XCASSET_FILES:-}" ] +then + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "${PODS_ROOT}*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + if [ -z ${ASSETCATALOG_COMPILER_APPICON_NAME+x} ]; then + 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}" + else + 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}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${TARGET_BUILD_DIR}/assetcatalog_generated_info.plist" + fi +fi diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-umbrella.h b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example-umbrella.h new file mode 100644 index 00000000..73661c28 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_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_Heartland_iOS_SDK_ExampleVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_Heartland_iOS_SDK_ExampleVersionString[]; + diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.debug.xcconfig b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.debug.xcconfig new file mode 100644 index 00000000..9067fd5f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.debug.xcconfig @@ -0,0 +1,9 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK" "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +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}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary/XMLDictionary.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Heartland_iOS_SDK" -framework "XMLDictionary" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.modulemap b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.modulemap new file mode 100644 index 00000000..09967679 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.modulemap @@ -0,0 +1,6 @@ +framework module Pods_Heartland_iOS_SDK_Example { + umbrella header "Pods-Heartland-iOS-SDK_Example-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig new file mode 100644 index 00000000..9067fd5f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.pax_testing.xcconfig @@ -0,0 +1,9 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK" "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +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}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary/XMLDictionary.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Heartland_iOS_SDK" -framework "XMLDictionary" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.release.xcconfig b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.release.xcconfig new file mode 100644 index 00000000..9067fd5f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Example/Pods-Heartland-iOS-SDK_Example.release.xcconfig @@ -0,0 +1,9 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK" "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +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}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary/XMLDictionary.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Heartland_iOS_SDK" -framework "XMLDictionary" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Info.plist b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Info.plist new file mode 100644 index 00000000..2243fe6e --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_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-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-acknowledgements.markdown b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-acknowledgements.markdown new file mode 100644 index 00000000..84e94549 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-acknowledgements.markdown @@ -0,0 +1,60 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## Heartland-iOS-SDK + +END-USER LICENSE AGREEMENT FOR SECURE SUBMIT +REVISED 11.13.13 +IMPORTANT READ CAREFULLY: +This Heartland Payment Systems (“HPS”) End-User License Agreement (“EULA”) is a legal agreement between you (either an individual or a single entity) and HPS for the Secure Submit software product accompanying this EULA, which includes computer software and may include associated media, printed materials, and online or electronic documentation (“Software”). By downloading, copying or otherwise using the Software, you agree to the terms of this EULA and any additional terms and conditions that may be added to the EULA by HPS. BY DOWNLOADING, COPYING OR USING THE SOFTWARE YOU ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD, AND AGREED TO BE BOUND BY THE TERMS HEREIN. IF YOU HAVE ANY QUESTIONS ON THE TERMS OF USE, YOU SHOULD CONSULT WITH AN ATTORNEY BEFORE DOWNLOADING OR USING THE SOFTWARE. If you do not agree to the terms of this EULA, do not download or use the Software. As used herein, the words “you” and “your” mean the person or entity that has downloaded or used the Software. The words “we,” “us” and “our” means HPS. You must be at least 18 years of age in any of the fifty United States (or 21 in Puerto Rico) to use the Software. By downloading or using the Software, you agree that you will use the Software only in the United States or United States territories. +GRANT OF LICENSE +HPS hereby grants you a limited, non-exclusive, non-transferable, royalty-free license to make and use an unlimited number of copies of the Software accompanying this EULA: (1) solely for your internal purpose of integrating session-based data encryption into HPS’s payment processing platform; or (2) to make and distribute new programs incorporating the Software for the purpose of integrating to HPS’s payment processing platform for sublicensing to those who have an internal purpose of integrating session-based data encryption into HPS’s payment processing platform (the “Purpose”). +USE RESTRICTION +You acknowledge that the Software acquired hereunder can only be used for the Purpose. Use of the Software for any other purpose is a violation of this EULA and you agree to be subject to any and all penalties and remedies available at law or in equity for violation of intellectual property laws and treaties. +TERMINATION +Without prejudice to any other rights, HPS may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In any event, this EULA shall terminate if you no longer have a purpose of integrating session-based data encryption into HPS’s payment processing platform. In the event of termination of this EULA, you must destroy all copies of the Software and all of its component parts. +RESERVATION OF RIGHTS +You agree that the Software is owned HPS and all rights not expressly granted herein are reserved by HPS. +PRODUCT MAINTENANCE +You understand and agree that HPS may provide updates to the Software from time to time but HPS shall have no obligation to provide maintenance or updates to you for Software licensed under this Agreement. +MISAPPROPRIATION +You shall promptly advise HPS, in writing, of any misappropriation or misuse of the Software by any person which may come to your attention. +U.S. GOVERNMENT RESTRICTED RIGHTS AND EXPORT RESTRICTIONS +The Software is provided with restricted rights. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software Restricted Rights at 48 CFR 52.227-19, as applicable. Manufacturer is Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08542. You acknowledge that the Software acquired hereunder is subject to the export control laws and regulations of the U.S.A., and any amendments thereof. You acknowledge and agree that you will not, directly or indirectly, export the Software. +DISCLAIMER OF WARRANTY +THE SOFTWARE IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, WHATSOEVER, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. YOU ASSUME THE ENTIRE RISK ARISING OUT OF THE USE OR PERFORMANCE OF THE SOFTWARE. +DISCLAIMER OF DAMAGES AND LIMITATION OF LIABILITY + +IN NO EVENT SHALL HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, PUNITIVE, EXEMPLARY, CONSEQUENTIAL OR OTHER DAMAGES WHATSOEVER, INCLUDING BUT NOT LIMITED TO PROPERTY DAMAGE, LOSS OF USE, LOSS OF BUSINESS, ECONOMIC LOSS, LOSS OF DATA OR LOSS OF PROFITS, WITHOUT REGARD TO THE FORM OF ACTION (INCLUDING BUT NOT LIMITED TO CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTIONS) ARISING OUT OF OR IN CONNECTION WITH YOUR USE OF THE SOFTWARE, EVEN IF HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS HAD BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE OR LOSS. BECAUSE SOME STATES OR JURISDICTIONS DO NOT ALLOW LIMITATION OR EXCLUSION OF DAMAGES, THE ABOVE LIMITATION MAY NOT FULLY APPLY TO YOU. + +MISCELLANEOUS + +This EULA shall be construed, interpreted and performed exclusively according to the laws of the State of New Jersey, United States of America, without giving effect to any principles of conflicts of law. You expressly agree that any action at law or in equity arising out of or directly or indirectly relating to this EULA or the Software shall be filed only in the federal or state courts sitting in Mercer County, New Jersey. You hereby consent and submit to personal jurisdiction of such courts for the purposes of any action related to the Software, your access or use thereof, or this EULA, and to extra-territorial service of process. + +This EULA may not be assigned by you. HPS may assign their rights and obligations set forth in this EULA at any time. Should any part or provision of this EULA be held unlawful, void, invalid or unenforceable, that portion shall be deemed severable from this EULA shall not affect the validity and enforceability of any remaining provisions. Except as provided herein, this EULA constitutes the entire agreement between you and HPS pertaining to the download or use of the Software. Nothing herein shall alter or modify your agreements with HPS related to payment processing or other services or products provided to you by HPS. HPS’s failure to enforce any provision of this EULA or any additional terms shall not be deemed a waiver of such provisions nor of its right to enforce such provision. This EULA may be accepted in electronic form (e.g., by an electronic or other means of demonstrating assent) and your acceptance will be deemed binding between you and HPS. You hereby agree, without limitation, that you not will contest the validity or enforceability of this EULA. + +CONTACT +Should you have any questions concerning this EULA, or if you desire to contact HPS for any reason, please write: Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08452. Attention: Legal. + +## XMLDictionary + +XMLDictionary + +Copyright (C) 2011 Charcoal Design + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +Generated by CocoaPods - https://cocoapods.org diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-acknowledgements.plist b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-acknowledgements.plist new file mode 100644 index 00000000..913c58a8 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-acknowledgements.plist @@ -0,0 +1,98 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + END-USER LICENSE AGREEMENT FOR SECURE SUBMIT +REVISED 11.13.13 +IMPORTANT READ CAREFULLY: +This Heartland Payment Systems (“HPS”) End-User License Agreement (“EULA”) is a legal agreement between you (either an individual or a single entity) and HPS for the Secure Submit software product accompanying this EULA, which includes computer software and may include associated media, printed materials, and online or electronic documentation (“Software”). By downloading, copying or otherwise using the Software, you agree to the terms of this EULA and any additional terms and conditions that may be added to the EULA by HPS. BY DOWNLOADING, COPYING OR USING THE SOFTWARE YOU ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD, AND AGREED TO BE BOUND BY THE TERMS HEREIN. IF YOU HAVE ANY QUESTIONS ON THE TERMS OF USE, YOU SHOULD CONSULT WITH AN ATTORNEY BEFORE DOWNLOADING OR USING THE SOFTWARE. If you do not agree to the terms of this EULA, do not download or use the Software. As used herein, the words “you” and “your” mean the person or entity that has downloaded or used the Software. The words “we,” “us” and “our” means HPS. You must be at least 18 years of age in any of the fifty United States (or 21 in Puerto Rico) to use the Software. By downloading or using the Software, you agree that you will use the Software only in the United States or United States territories. +GRANT OF LICENSE +HPS hereby grants you a limited, non-exclusive, non-transferable, royalty-free license to make and use an unlimited number of copies of the Software accompanying this EULA: (1) solely for your internal purpose of integrating session-based data encryption into HPS’s payment processing platform; or (2) to make and distribute new programs incorporating the Software for the purpose of integrating to HPS’s payment processing platform for sublicensing to those who have an internal purpose of integrating session-based data encryption into HPS’s payment processing platform (the “Purpose”). +USE RESTRICTION +You acknowledge that the Software acquired hereunder can only be used for the Purpose. Use of the Software for any other purpose is a violation of this EULA and you agree to be subject to any and all penalties and remedies available at law or in equity for violation of intellectual property laws and treaties. +TERMINATION +Without prejudice to any other rights, HPS may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In any event, this EULA shall terminate if you no longer have a purpose of integrating session-based data encryption into HPS’s payment processing platform. In the event of termination of this EULA, you must destroy all copies of the Software and all of its component parts. +RESERVATION OF RIGHTS +You agree that the Software is owned HPS and all rights not expressly granted herein are reserved by HPS. +PRODUCT MAINTENANCE +You understand and agree that HPS may provide updates to the Software from time to time but HPS shall have no obligation to provide maintenance or updates to you for Software licensed under this Agreement. +MISAPPROPRIATION +You shall promptly advise HPS, in writing, of any misappropriation or misuse of the Software by any person which may come to your attention. +U.S. GOVERNMENT RESTRICTED RIGHTS AND EXPORT RESTRICTIONS +The Software is provided with restricted rights. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software Restricted Rights at 48 CFR 52.227-19, as applicable. Manufacturer is Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08542. You acknowledge that the Software acquired hereunder is subject to the export control laws and regulations of the U.S.A., and any amendments thereof. You acknowledge and agree that you will not, directly or indirectly, export the Software. +DISCLAIMER OF WARRANTY +THE SOFTWARE IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, WHATSOEVER, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. YOU ASSUME THE ENTIRE RISK ARISING OUT OF THE USE OR PERFORMANCE OF THE SOFTWARE. +DISCLAIMER OF DAMAGES AND LIMITATION OF LIABILITY + +IN NO EVENT SHALL HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, PUNITIVE, EXEMPLARY, CONSEQUENTIAL OR OTHER DAMAGES WHATSOEVER, INCLUDING BUT NOT LIMITED TO PROPERTY DAMAGE, LOSS OF USE, LOSS OF BUSINESS, ECONOMIC LOSS, LOSS OF DATA OR LOSS OF PROFITS, WITHOUT REGARD TO THE FORM OF ACTION (INCLUDING BUT NOT LIMITED TO CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTIONS) ARISING OUT OF OR IN CONNECTION WITH YOUR USE OF THE SOFTWARE, EVEN IF HPS, ITS BUSINESS PARTNERS, ITS OWNERS, DIRECTORS, EMPLOYEES OR AGENTS HAD BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE OR LOSS. BECAUSE SOME STATES OR JURISDICTIONS DO NOT ALLOW LIMITATION OR EXCLUSION OF DAMAGES, THE ABOVE LIMITATION MAY NOT FULLY APPLY TO YOU. + +MISCELLANEOUS + +This EULA shall be construed, interpreted and performed exclusively according to the laws of the State of New Jersey, United States of America, without giving effect to any principles of conflicts of law. You expressly agree that any action at law or in equity arising out of or directly or indirectly relating to this EULA or the Software shall be filed only in the federal or state courts sitting in Mercer County, New Jersey. You hereby consent and submit to personal jurisdiction of such courts for the purposes of any action related to the Software, your access or use thereof, or this EULA, and to extra-territorial service of process. + +This EULA may not be assigned by you. HPS may assign their rights and obligations set forth in this EULA at any time. Should any part or provision of this EULA be held unlawful, void, invalid or unenforceable, that portion shall be deemed severable from this EULA shall not affect the validity and enforceability of any remaining provisions. Except as provided herein, this EULA constitutes the entire agreement between you and HPS pertaining to the download or use of the Software. Nothing herein shall alter or modify your agreements with HPS related to payment processing or other services or products provided to you by HPS. HPS’s failure to enforce any provision of this EULA or any additional terms shall not be deemed a waiver of such provisions nor of its right to enforce such provision. This EULA may be accepted in electronic form (e.g., by an electronic or other means of demonstrating assent) and your acceptance will be deemed binding between you and HPS. You hereby agree, without limitation, that you not will contest the validity or enforceability of this EULA. + +CONTACT +Should you have any questions concerning this EULA, or if you desire to contact HPS for any reason, please write: Heartland Payment Systems, 90 Nassau Street, Princeton, NJ 08452. Attention: Legal. + License + EULA + Title + Heartland-iOS-SDK + Type + PSGroupSpecifier + + + FooterText + XMLDictionary + +Copyright (C) 2011 Charcoal Design + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + License + zlib + Title + XMLDictionary + 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-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-dummy.m b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-dummy.m new file mode 100644 index 00000000..cd6e6a87 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Heartland_iOS_SDK_Tests : NSObject +@end +@implementation PodsDummy_Pods_Heartland_iOS_SDK_Tests +@end diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-frameworks.sh b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-frameworks.sh new file mode 100755 index 00000000..a94f7074 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-frameworks.sh @@ -0,0 +1,159 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + +COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" +SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" + +# Used as a return value for each invocation of `strip_invalid_archs` function. +STRIP_BINARY_RETVAL=0 + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +# Copies and strips a vendored framework +install_framework() +{ + if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then + local source="${BUILT_PRODUCTS_DIR}/$1" + elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then + local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" + elif [ -r "$1" ]; then + local source="$1" + fi + + local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + + if [ -L "${source}" ]; then + echo "Symlinked..." + source="$(readlink "${source}")" + fi + + # Use filter instead of exclude so missing patterns don't throw errors. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" + + local basename + basename="$(basename -s .framework "$1")" + binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then + binary="${destination}/${basename}" + fi + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then + strip_invalid_archs "$binary" + fi + + # Resign the code if required by the build settings to avoid unstable apps + code_sign_if_enabled "${destination}/$(basename "$1")" + + # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. + if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then + local swift_runtime_libs + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + for lib in $swift_runtime_libs; do + echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" + rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" + code_sign_if_enabled "${destination}/${lib}" + done + fi +} + +# Copies and strips a vendored dSYM +install_dsym() { + local source="$1" + if [ -r "$source" ]; then + # Copy the dSYM into a the targets temp dir. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}" + + local basename + basename="$(basename -s .framework.dSYM "$source")" + binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}" + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"Mach-O dSYM companion"* ]]; then + strip_invalid_archs "$binary" + fi + + if [[ $STRIP_BINARY_RETVAL == 1 ]]; then + # Move the stripped file into its final destination. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}" + else + # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing. + touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM" + fi + fi +} + +# Signs a framework with the provided identity +code_sign_if_enabled() { + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identitiy + echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" + local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" + + if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + code_sign_cmd="$code_sign_cmd &" + fi + echo "$code_sign_cmd" + eval "$code_sign_cmd" + fi +} + +# Strip invalid architectures +strip_invalid_archs() { + binary="$1" + # Get architectures for current target binary + binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)" + # Intersect them with the architectures we are building for + intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)" + # If there are no archs supported by this binary then warn the user + if [[ -z "$intersected_archs" ]]; then + echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)." + STRIP_BINARY_RETVAL=0 + return + fi + stripped="" + for arch in $binary_archs; do + if ! [[ "${ARCHS}" == *"$arch"* ]]; then + # Strip non-valid architectures in-place + lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + stripped="$stripped $arch" + fi + done + if [[ "$stripped" ]]; then + echo "Stripped $binary of architectures:$stripped" + fi + STRIP_BINARY_RETVAL=1 +} + + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework" + install_framework "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework" +fi +if [[ "$CONFIGURATION" == "Pax_Testing" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework" + install_framework "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework" + install_framework "${BUILT_PRODUCTS_DIR}/XMLDictionary/XMLDictionary.framework" +fi +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-resources.sh b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-resources.sh new file mode 100755 index 00000000..fe3f9c72 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-resources.sh @@ -0,0 +1,118 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +if [ -z ${UNLOCALIZED_RESOURCES_FOLDER_PATH+x} ]; then + # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy + # resources to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +case "${TARGETED_DEVICE_FAMILY:-}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + 3) + TARGET_DEVICE_ARGS="--target-device tv" + ;; + 4) + TARGET_DEVICE_ARGS="--target-device watch" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; +esac + +install_resource() +{ + if [[ "$1" = /* ]] ; then + RESOURCE_PATH="$1" + else + RESOURCE_PATH="${PODS_ROOT}/$1" + fi + if [[ ! -e "$RESOURCE_PATH" ]] ; then + cat << EOM +error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. +EOM + exit 1 + fi + case $RESOURCE_PATH in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.framework) + echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true + xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + *) + echo "$RESOURCE_PATH" || true + echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "${XCASSET_FILES:-}" ] +then + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "${PODS_ROOT}*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + if [ -z ${ASSETCATALOG_COMPILER_APPICON_NAME+x} ]; then + 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}" + else + 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}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${TARGET_BUILD_DIR}/assetcatalog_generated_info.plist" + fi +fi diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-umbrella.h b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests-umbrella.h new file mode 100644 index 00000000..9200db2e --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_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_Heartland_iOS_SDK_TestsVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_Heartland_iOS_SDK_TestsVersionString[]; + diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.debug.xcconfig b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.debug.xcconfig new file mode 100644 index 00000000..9067fd5f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.debug.xcconfig @@ -0,0 +1,9 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK" "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +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}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary/XMLDictionary.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Heartland_iOS_SDK" -framework "XMLDictionary" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.modulemap b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.modulemap new file mode 100644 index 00000000..dc4dceca --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.modulemap @@ -0,0 +1,6 @@ +framework module Pods_Heartland_iOS_SDK_Tests { + umbrella header "Pods-Heartland-iOS-SDK_Tests-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig new file mode 100644 index 00000000..9067fd5f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.pax_testing.xcconfig @@ -0,0 +1,9 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK" "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +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}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary/XMLDictionary.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Heartland_iOS_SDK" -framework "XMLDictionary" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.release.xcconfig b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.release.xcconfig new file mode 100644 index 00000000..9067fd5f --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Heartland-iOS-SDK_Tests/Pods-Heartland-iOS-SDK_Tests.release.xcconfig @@ -0,0 +1,9 @@ +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Heartland-iOS-SDK" "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary" +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}/Heartland-iOS-SDK/Heartland_iOS_SDK.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary/XMLDictionary.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Heartland_iOS_SDK" -framework "XMLDictionary" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Example/Pods/Target Support Files/XMLDictionary/Info.plist b/Example/Pods/Target Support Files/XMLDictionary/Info.plist new file mode 100644 index 00000000..93197ee7 --- /dev/null +++ b/Example/Pods/Target Support Files/XMLDictionary/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.4.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-dummy.m b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-dummy.m new file mode 100644 index 00000000..a031366a --- /dev/null +++ b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_XMLDictionary : NSObject +@end +@implementation PodsDummy_XMLDictionary +@end diff --git a/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-prefix.pch b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-prefix.pch new file mode 100644 index 00000000..beb2a244 --- /dev/null +++ b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-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/XMLDictionary/XMLDictionary-umbrella.h b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-umbrella.h new file mode 100644 index 00000000..39e56083 --- /dev/null +++ b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary-umbrella.h @@ -0,0 +1,17 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + +#import "XMLDictionary.h" + +FOUNDATION_EXPORT double XMLDictionaryVersionNumber; +FOUNDATION_EXPORT const unsigned char XMLDictionaryVersionString[]; + diff --git a/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary.modulemap b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary.modulemap new file mode 100644 index 00000000..d4188b83 --- /dev/null +++ b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary.modulemap @@ -0,0 +1,6 @@ +framework module XMLDictionary { + umbrella header "XMLDictionary-umbrella.h" + + export * + module * { export * } +} diff --git a/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary.xcconfig b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary.xcconfig new file mode 100644 index 00000000..31b0e59d --- /dev/null +++ b/Example/Pods/Target Support Files/XMLDictionary/XMLDictionary.xcconfig @@ -0,0 +1,8 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/XMLDictionary +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/XMLDictionary +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/Example/Pods/XMLDictionary/LICENCE.md b/Example/Pods/XMLDictionary/LICENCE.md new file mode 100755 index 00000000..470fa8e7 --- /dev/null +++ b/Example/Pods/XMLDictionary/LICENCE.md @@ -0,0 +1,19 @@ +XMLDictionary + +Copyright (C) 2011 Charcoal Design + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. \ No newline at end of file diff --git a/Example/Pods/XMLDictionary/README.md b/Example/Pods/XMLDictionary/README.md new file mode 100755 index 00000000..7635658b --- /dev/null +++ b/Example/Pods/XMLDictionary/README.md @@ -0,0 +1,239 @@ +Purpose +-------------- + +XMLDictionary is a class designed to simplify parsing and generating of XML on iOS and Mac OS. XMLDictionary is built on top of the NSXMLParser classes, but behaves more like a DOM-style parser rather than SAX parser, in that it creates a tree of objects rather than generating events at the start and end of each node. + +Unlike other DOM parsers, XMLDictionary does not attempt to replicate all of the nuances of the XML standard such as the ability to nest tags within text. If you need to represent something like an HTML document then XMLDictionary won't work for you. If you want to use XML as a data interchange format for passing nested data structures then XMLDictionary may well provide a simpler solution than other DOM-based parsers. + + +Supported OS & SDK Versions +----------------------------- + +* Supported build target - iOS 10.2 / Mac OS 10.12 (Xcode 8.2, Apple LLVM compiler 8.0) +* Earliest supported deployment target - iOS 8.0 / Mac OS 10.10 +* Earliest compatible deployment target - iOS 4.3 / Mac OS 10.6 + +NOTE: 'Supported' means that the library has been tested with this version. 'Compatible' means that the library should work on this OS version (i.e. it doesn't rely on any unavailable SDK features) but is no longer being tested for compatibility and may require tweaking or bug fixes to run correctly. + + +ARC Compatibility +------------------ + +As of version 1.1, XMLDictionary requires ARC. If you wish to use XMLDictionary in a non-ARC project, just add the -fobjc-arc compiler flag to the XMLDictionary.m class. To do this, go to the Build Phases tab in your target settings, open the Compile Sources group, double-click XMLDictionary.m in the list and type -fobjc-arc into the popover. + +If you wish to convert your whole project to ARC, comment out the #error line in XMLDictionary.m, then run the Edit > Refactor > Convert to Objective-C ARC... tool in Xcode and make sure all files that you wish to use ARC for (including XMLDictionary.m) are checked. + + +Thread Safety +-------------- + +XMLDictionary's methods should all be thread safe. It is safe to use multiple XMLDictionaryParsers concurrently on different threads, but it is not safe to call the same parser concurrently on multiple threads. + + +Installation +-------------- + +To use the XMLDictionary in an app, just drag the class files into your project. + + +XMLDictionaryParser +--------------------- + +The XMLDictionaryParser class is responsible for parsing an XML file into a dictionary. You don't normally need to use this class explicitly as you can just use the utility methods added to NSDictionary, however it can be useful if you want to modify the default parser settings. + +You can create new instances of XMLDictionaryParser if you need to use multiple different settings for different dictionaries. Once you have created an XMLDictionaryParser you can use the following methods to parse XML files using that specific parser instance: + + - (NSDictionary *)dictionaryWithData:(NSData *)data; + - (NSDictionary *)dictionaryWithString:(NSString *)string; + - (NSDictionary *)dictionaryWithFile:(NSString *)path; + - (NSDictionary *)dictionaryWithParser:(NSXMLParser *)parser; + +Alternatively, you can simply modify the settings of `[XMLDictionaryParser sharedInstance]` to affect the settings for all dictionaries parsed subsequently using the NSDictionary category extension methods. + +Use the following properties to tweak the parsing behaviour: + + @property (nonatomic, assign) BOOL collapseTextNodes; + +If YES (the default value), tags that contain only text and have no children, attributes or comments will be collapsed into a single string object, simplifying traversal of the object tree. + + @property (nonatomic, assign) BOOL stripEmptyNodes; + +If YES (the default value), tags that are empty (have no children, attributes, text or comments) will be stripped. + + @property (nonatomic, assign) BOOL trimWhiteSpace; + +If YES (the default value), leading and trailing white space will be trimmed from text nodes, and text nodes containing only white space will be omitted from the dictionary. + + @property (nonatomic, assign) BOOL alwaysUseArrays; + +If `YES`, the every child node will be represented as an array, even if there is only one of them. This simplifies the logic needed to cope with properties that may be duplicated because you don't need to use `[value isKindOfClass:[NSArray class]]` to check the for the singular case. Defaults to `NO`. + + @property (nonatomic, assign) BOOL preserveComments; + +If `YES`, XML comments will be grouped into an array under the key `__comments` and can be accessed via the `comments` method. Defaults to `NO`. + + @property (nonatomic, assign) XMLDictionaryAttributesMode attributesMode; + +This property controls how XML attributes are handled. The default is `XMLDictionaryAttributesModePrefixed` meaning that attributes will be included in the dictionary, with an _ (underscore) prefix to avoid namespace collisions. Alternative values are `XMLDictionaryAttributesModeDictionary`, which will place all the attributes in a separate dictionary, `XMLDictionaryAttributesModeUnprefixed`, which includes the attributes without prefix (which may cause collisions with nodes) and `XMLDictionaryAttributesModeDiscard`, which will strip the attributes. + + @property (nonatomic, assign) XMLDictionaryNodeNameMode nodeNameMode; + +This property controls how the node name is handled. The default value is `XMLDictionaryNodeNameModeRootOnly`, meaning that the node name will only be included in the root dictionary (the names for the children can be inferred from the dictionary keys, but the `nodeName` method won't work for anything except the root node). Alternative values are `XMLDictionaryNodeNameModeAlways`, meaning that the node name will be included in the dictionary with the key `__name` (and can be accessed using the `nodeName`) method, or `XMLDictionaryNodeNameModeNever` which will never include the `__name' key. + + +Category Methods +----------------- + +XMLDictionary extends NSDictionary with the following methods: + + + (NSDictionary *)dictionaryWithXMLParser:(NSParser *)parser; + +Create a new NSDictionary object from an existing NSXMLParser. Useful if fetching data through AFNetworking. + + + (NSDictionary *)dictionaryWithXMLData:(NSData *)data; + +Create a new NSDictionary object from XML-encoded data. + + + (NSDictionary *)dictionaryWithXMLString:(NSString *)string; + +Create a new NSDictionary object from XML-encoded string. + + + (NSDictionary *)dictionaryWithXMLFile:(NSString *)path; + +Create a new NSDictionary object from and XML-encoded file. + + - (NSString *)attributeForKey:(NSString *)key; + +Get the XML attribute for a given key (key name should not include prefix). + + - (NSDictionary *)attributes; + +Get a dictionary of all XML attributes for a given node's dictionary. If the node has no attributes then this will return nil. + + - (NSDictionary *)childNodes; + +Get a dictionary of all child nodes for a given node's dictionary. If multiple nodes have the same name they will be grouped into an array. If the node has no children then this will return nil. + + - (NSArray *)comments; + +Get an array of all comments for a given node. Note that the nesting relative to other nodes is not preserved. If the node has no comments then this will return nil. + + - (NSString *)nodeName; + +Get the name of the node. If the name is not known this will return nil. + + - (NSString *)innerText; + +Get the text content of the node. If the node has no text content, this will return nil; + + - (NSString *)innerXML; + +Get the contents of the node as an XML-encoded string. This XML string will not include the container node itself. + + - (NSString *)XMLString; + +Get the node and its content as an XML-encoded string. If the node name is not known, the top level tag will be called ``. + + - (NSArray *)arrayValueForKeyPath:(NSString *)keyPath; + +Works just like `valueForKeyPath:` except that the value returned will always be an array. So if there is only a single value, it will be returned as `@[value]`. + + - (NSString *)stringValueForKeyPath:(NSString *)keyPath; + +Works just like `valueForKeyPath:` except that the value returned will always be a string. So if the value is a dictionary, the text value of `innerText` will be returned, and if the value is an array, the first item will be returned. + + - (NSDictionary *)dictionaryValueForKeyPath:(NSString *)keyPath; + +Works just like `valueForKeyPath:` except that the value returned will always be a dictionary. So if the collapseTextNodes option is enabled and the value is a string, this will convert it back to a dictionary before returning, and if the value is an array, the first item will be returned. + + +Usage +-------- + +The simplest way to load an XML file is as follows: + + NSString *filePath = [[NSBundle mainBundle] pathForResource:@"someFile" ofType:@"xml"]; + NSDictionary *xmlDoc = [NSDictionary dictionaryWithXMLFile:filePath]; + +You can then iterate over the dictionary as you would with any other object tree, e.g. one loaded from a Plist. + +To access nested nodes and attributes, you can use the valueForKeyPath syntax. For example to get the string value of `` from the following XML: + + + + Hello World + + Was his name-oh + + +You would write: + + NSString *foo = [xmlDoc valueForKeyPath:@"bar.foo"]; + +The above examples assumes that you are using the default setting for `collapseTextNodes` and `alwaysUseArrays`. If `collapseTextNodes` is disabled then you would instead access ``'s value by writing: + + NSString *foo = [[xmlDoc valueForKeyPath:@"bar.foo"] innerText]; + +If the `alwaysUseArrays` option is enabled then would use one of the following, depending on the `collapseTextNodes` property: + + NSString *foo = [[xmlDoc valueForKeyPath:@"bar.foo"] firstObject]; + NSString *foo = [[[xmlDoc valueForKeyPath:@"bar.foo"] firstObject] innerText]; + +To get the cliche attribute of `bar`, you could write: + + NSString *barCliche = [xmlDoc[@"bar] attributes][@"cliche"]; + +If the `attributesMode` is set to the default value of `XMLDictionaryAttributesModePrefixed` then you can also do this: + + NSString *barCliche = [xmlDoc valueForKeyPath:@"bar._cliche"]; + +Or if it is set to `XMLDictionaryAttributesModeUnprefixed` you would simply do this: + + NSString *barCliche = [xmlDoc valueForKeyPath:@"bar.cliche"]; + + +Release Notes +---------------- + +Version 1.4.1 + +- Upgraded for Xcode 8.2 +- Added tvOS and watchOS support to podspec + +Version 1.4 + +- Added dictionaryWithXMLParser: constructor method +- Added wrapRootNode option as a nicer way to preserve root node name +- No longer crashes if non-string values are used as keys or attributes +- Now complies with the -Weverything warning level + +Version 1.3 + +- added stripEmptyNodes property (defaults to YES) +- added arrayValueForKeyPath, stringValueForKeyPath and dictionaryValueForKeyPath methods to simplify working with data + +Version 1.2.2 + +- sharedInstance method no longer returns a new instance each time + +Version 1.2.1 + +- Removed isa reference, deprecated in iOS 7 + +Version 1.2 + +- Exposed XMLDictionaryParser object, which can be used to configure the parser +- Parsing options can now be changed without modifying the library +- Added option to always encode properties as arrays +- `__name` and `__coment` keys are no longer included by default +- Apostrophe is now encoded as `'` +- removed `attributeForKey:` method + +Version 1.1 + +- Updated to use ARC +- Added podspec + +Version 1.0 + +- Initial release diff --git a/Example/Pods/XMLDictionary/XMLDictionary/XMLDictionary.h b/Example/Pods/XMLDictionary/XMLDictionary/XMLDictionary.h new file mode 100644 index 00000000..82a6300e --- /dev/null +++ b/Example/Pods/XMLDictionary/XMLDictionary/XMLDictionary.h @@ -0,0 +1,118 @@ +// +// XMLDictionary.h +// +// Version 1.4.1 +// +// Created by Nick Lockwood on 15/11/2010. +// Copyright 2010 Charcoal Design. All rights reserved. +// +// Get the latest version of XMLDictionary from here: +// +// https://github.com/nicklockwood/XMLDictionary +// +// This software is provided 'as-is', without any express or implied +// warranty. In no event will the authors be held liable for any damages +// arising from the use of this software. +// +// Permission is granted to anyone to use this software for any purpose, +// including commercial applications, and to alter it and redistribute it +// freely, subject to the following restrictions: +// +// 1. The origin of this software must not be misrepresented; you must not +// claim that you wrote the original software. If you use this software +// in a product, an acknowledgment in the product documentation would be +// appreciated but is not required. +// +// 2. Altered source versions must be plainly marked as such, and must not be +// misrepresented as being the original software. +// +// 3. This notice may not be removed or altered from any source distribution. +// + +#import +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wobjc-missing-property-synthesis" + + +NS_ASSUME_NONNULL_BEGIN + + +typedef NS_ENUM(NSInteger, XMLDictionaryAttributesMode) +{ + XMLDictionaryAttributesModePrefixed = 0, //default + XMLDictionaryAttributesModeDictionary, + XMLDictionaryAttributesModeUnprefixed, + XMLDictionaryAttributesModeDiscard +}; + + +typedef NS_ENUM(NSInteger, XMLDictionaryNodeNameMode) +{ + XMLDictionaryNodeNameModeRootOnly = 0, //default + XMLDictionaryNodeNameModeAlways, + XMLDictionaryNodeNameModeNever +}; + + +static NSString *const XMLDictionaryAttributesKey = @"__attributes"; +static NSString *const XMLDictionaryCommentsKey = @"__comments"; +static NSString *const XMLDictionaryTextKey = @"__text"; +static NSString *const XMLDictionaryNodeNameKey = @"__name"; +static NSString *const XMLDictionaryAttributePrefix = @"_"; + + +@interface XMLDictionaryParser : NSObject + ++ (XMLDictionaryParser *)sharedInstance; + +@property (nonatomic, assign) BOOL collapseTextNodes; // defaults to YES +@property (nonatomic, assign) BOOL stripEmptyNodes; // defaults to YES +@property (nonatomic, assign) BOOL trimWhiteSpace; // defaults to YES +@property (nonatomic, assign) BOOL alwaysUseArrays; // defaults to NO +@property (nonatomic, assign) BOOL preserveComments; // defaults to NO +@property (nonatomic, assign) BOOL wrapRootNode; // defaults to NO + +@property (nonatomic, assign) XMLDictionaryAttributesMode attributesMode; +@property (nonatomic, assign) XMLDictionaryNodeNameMode nodeNameMode; + +- (nullable NSDictionary *)dictionaryWithParser:(NSXMLParser *)parser; +- (nullable NSDictionary *)dictionaryWithData:(NSData *)data; +- (nullable NSDictionary *)dictionaryWithString:(NSString *)string; +- (nullable NSDictionary *)dictionaryWithFile:(NSString *)path; + +@end + + +@interface NSDictionary (XMLDictionary) + ++ (nullable NSDictionary *)dictionaryWithXMLParser:(NSXMLParser *)parser; ++ (nullable NSDictionary *)dictionaryWithXMLData:(NSData *)data; ++ (nullable NSDictionary *)dictionaryWithXMLString:(NSString *)string; ++ (nullable NSDictionary *)dictionaryWithXMLFile:(NSString *)path; + +@property (nonatomic, readonly, copy, nullable) NSDictionary *attributes; +@property (nonatomic, readonly, copy, nullable) NSDictionary *childNodes; +@property (nonatomic, readonly, copy, nullable) NSArray *comments; +@property (nonatomic, readonly, copy, nullable) NSString *nodeName; +@property (nonatomic, readonly, copy, nullable) NSString *innerText; +@property (nonatomic, readonly, copy) NSString *innerXML; +@property (nonatomic, readonly, copy) NSString *XMLString; + +- (nullable NSArray *)arrayValueForKeyPath:(NSString *)keyPath; +- (nullable NSString *)stringValueForKeyPath:(NSString *)keyPath; +- (nullable NSDictionary *)dictionaryValueForKeyPath:(NSString *)keyPath; + +@end + + +@interface NSString (XMLDictionary) + +@property (nonatomic, readonly, copy) NSString *XMLEncodedString; + +@end + + +NS_ASSUME_NONNULL_END + + +#pragma GCC diagnostic pop diff --git a/Example/Pods/XMLDictionary/XMLDictionary/XMLDictionary.m b/Example/Pods/XMLDictionary/XMLDictionary/XMLDictionary.m new file mode 100644 index 00000000..e2b7de39 --- /dev/null +++ b/Example/Pods/XMLDictionary/XMLDictionary/XMLDictionary.m @@ -0,0 +1,564 @@ +// +// XMLDictionary.m +// +// Version 1.4.1 +// +// Created by Nick Lockwood on 15/11/2010. +// Copyright 2010 Charcoal Design. All rights reserved. +// +// Get the latest version of XMLDictionary from here: +// +// https://github.com/nicklockwood/XMLDictionary +// +// This software is provided 'as-is', without any express or implied +// warranty. In no event will the authors be held liable for any damages +// arising from the use of this software. +// +// Permission is granted to anyone to use this software for any purpose, +// including commercial applications, and to alter it and redistribute it +// freely, subject to the following restrictions: +// +// 1. The origin of this software must not be misrepresented; you must not +// claim that you wrote the original software. If you use this software +// in a product, an acknowledgment in the product documentation would be +// appreciated but is not required. +// +// 2. Altered source versions must be plainly marked as such, and must not be +// misrepresented as being the original software. +// +// 3. This notice may not be removed or altered from any source distribution. +// + +#import "XMLDictionary.h" + + +#pragma GCC diagnostic ignored "-Wobjc-missing-property-synthesis" +#pragma GCC diagnostic ignored "-Wpartial-availability" +#pragma GCC diagnostic ignored "-Wdirect-ivar-access" +#pragma GCC diagnostic ignored "-Wformat-non-iso" +#pragma GCC diagnostic ignored "-Wgnu" + + +#import +#if !__has_feature(objc_arc) +#error This class requires automatic reference counting +#endif + + +@interface XMLDictionaryParser () + +@property (nonatomic, strong) NSMutableDictionary *root; +@property (nonatomic, strong) NSMutableArray *stack; +@property (nonatomic, strong) NSMutableString *text; + +@end + + +@implementation XMLDictionaryParser + ++ (XMLDictionaryParser *)sharedInstance +{ + static dispatch_once_t once; + static XMLDictionaryParser *sharedInstance; + dispatch_once(&once, ^{ + + sharedInstance = [[XMLDictionaryParser alloc] init]; + }); + return sharedInstance; +} + +- (instancetype)init +{ + if ((self = [super init])) + { + _collapseTextNodes = YES; + _stripEmptyNodes = YES; + _trimWhiteSpace = YES; + _alwaysUseArrays = NO; + _preserveComments = NO; + _wrapRootNode = NO; + } + return self; +} + +- (id)copyWithZone:(NSZone *)zone +{ + XMLDictionaryParser *copy = [[[self class] allocWithZone:zone] init]; + copy.collapseTextNodes = _collapseTextNodes; + copy.stripEmptyNodes = _stripEmptyNodes; + copy.trimWhiteSpace = _trimWhiteSpace; + copy.alwaysUseArrays = _alwaysUseArrays; + copy.preserveComments = _preserveComments; + copy.attributesMode = _attributesMode; + copy.nodeNameMode = _nodeNameMode; + copy.wrapRootNode = _wrapRootNode; + return copy; +} + +- (NSDictionary *)dictionaryWithParser:(NSXMLParser *)parser +{ + parser.delegate = self; + [parser parse]; + id result = _root; + _root = nil; + _stack = nil; + _text = nil; + return result; +} + +- (NSDictionary *)dictionaryWithData:(NSData *)data +{ + NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data]; + return [self dictionaryWithParser:parser]; +} + +- (NSDictionary *)dictionaryWithString:(NSString *)string +{ + NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; + return [self dictionaryWithData:data]; +} + +- (NSDictionary *)dictionaryWithFile:(NSString *)path +{ + NSData *data = [NSData dataWithContentsOfFile:path]; + return [self dictionaryWithData:data]; +} + ++ (NSString *)XMLStringForNode:(id)node withNodeName:(NSString *)nodeName +{ + if ([node isKindOfClass:[NSArray class]]) + { + NSMutableArray *nodes = [NSMutableArray arrayWithCapacity:[node count]]; + for (id individualNode in node) + { + [nodes addObject:[self XMLStringForNode:individualNode withNodeName:nodeName]]; + } + return [nodes componentsJoinedByString:@"\n"]; + } + else if ([node isKindOfClass:[NSDictionary class]]) + { + NSDictionary *attributes = [(NSDictionary *)node attributes]; + NSMutableString *attributeString = [NSMutableString string]; + [attributes enumerateKeysAndObjectsUsingBlock:^(NSString *key, NSString *value, __unused BOOL *stop) { + [attributeString appendFormat:@" %@=\"%@\"", key.description.XMLEncodedString, value.description.XMLEncodedString]; + }]; + + NSString *innerXML = [node innerXML]; + if (innerXML.length) + { + return [NSString stringWithFormat:@"<%1$@%2$@>%3$@", nodeName, attributeString, innerXML]; + } + else + { + return [NSString stringWithFormat:@"<%@%@/>", nodeName, attributeString]; + } + } + else + { + return [NSString stringWithFormat:@"<%1$@>%2$@", nodeName, [node description].XMLEncodedString]; + } +} + +- (void)endText +{ + if (_trimWhiteSpace) + { + _text = [[_text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] mutableCopy]; + } + if (_text.length) + { + NSMutableDictionary *top = _stack.lastObject; + id existing = top[XMLDictionaryTextKey]; + if ([existing isKindOfClass:[NSArray class]]) + { + [existing addObject:_text]; + } + else if (existing) + { + top[XMLDictionaryTextKey] = [@[existing, _text] mutableCopy]; + } + else + { + top[XMLDictionaryTextKey] = _text; + } + } + _text = nil; +} + +- (void)addText:(NSString *)text +{ + if (!_text) + { + _text = [NSMutableString stringWithString:text]; + } + else + { + [_text appendString:text]; + } +} + +- (void)parser:(__unused NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(__unused NSString *)namespaceURI qualifiedName:(__unused NSString *)qName attributes:(NSDictionary *)attributeDict +{ + [self endText]; + + NSMutableDictionary *node = [NSMutableDictionary dictionary]; + switch (_nodeNameMode) + { + case XMLDictionaryNodeNameModeRootOnly: + { + if (!_root) + { + node[XMLDictionaryNodeNameKey] = elementName; + } + break; + } + case XMLDictionaryNodeNameModeAlways: + { + node[XMLDictionaryNodeNameKey] = elementName; + break; + } + case XMLDictionaryNodeNameModeNever: + { + break; + } + } + + if (attributeDict.count) + { + switch (_attributesMode) + { + case XMLDictionaryAttributesModePrefixed: + { + for (NSString *key in attributeDict) + { + node[[XMLDictionaryAttributePrefix stringByAppendingString:key]] = attributeDict[key]; + } + break; + } + case XMLDictionaryAttributesModeDictionary: + { + node[XMLDictionaryAttributesKey] = attributeDict; + break; + } + case XMLDictionaryAttributesModeUnprefixed: + { + [node addEntriesFromDictionary:attributeDict]; + break; + } + case XMLDictionaryAttributesModeDiscard: + { + break; + } + } + } + + if (!_root) + { + _root = node; + _stack = [NSMutableArray arrayWithObject:node]; + if (_wrapRootNode) + { + _root = [NSMutableDictionary dictionaryWithObject:_root forKey:elementName]; + [_stack insertObject:_root atIndex:0]; + } + } + else + { + NSMutableDictionary *top = _stack.lastObject; + id existing = top[elementName]; + if ([existing isKindOfClass:[NSArray class]]) + { + [(NSMutableArray *)existing addObject:node]; + } + else if (existing) + { + top[elementName] = [@[existing, node] mutableCopy]; + } + else if (_alwaysUseArrays) + { + top[elementName] = [NSMutableArray arrayWithObject:node]; + } + else + { + top[elementName] = node; + } + [_stack addObject:node]; + } +} + +- (NSString *)nameForNode:(NSDictionary *)node inDictionary:(NSDictionary *)dict +{ + if (node.nodeName) + { + return node.nodeName; + } + else + { + for (NSString *name in dict) + { + id object = dict[name]; + if (object == node) + { + return name; + } + else if ([object isKindOfClass:[NSArray class]] && [(NSArray *)object containsObject:node]) + { + return name; + } + } + } + return nil; +} + +- (void)parser:(__unused NSXMLParser *)parser didEndElement:(__unused NSString *)elementName namespaceURI:(__unused NSString *)namespaceURI qualifiedName:(__unused NSString *)qName +{ + [self endText]; + + NSMutableDictionary *top = _stack.lastObject; + [_stack removeLastObject]; + + if (!top.attributes && !top.childNodes && !top.comments) + { + NSMutableDictionary *newTop = _stack.lastObject; + NSString *nodeName = [self nameForNode:top inDictionary:newTop]; + if (nodeName) + { + id parentNode = newTop[nodeName]; + NSString *innerText = top.innerText; + if (innerText && _collapseTextNodes) + { + if ([parentNode isKindOfClass:[NSArray class]]) + { + parentNode[[parentNode count] - 1] = innerText; + } + else + { + newTop[nodeName] = innerText; + } + } + else if (!innerText) + { + if (_stripEmptyNodes) + { + if ([parentNode isKindOfClass:[NSArray class]]) + { + [(NSMutableArray *)parentNode removeLastObject]; + } + else + { + [newTop removeObjectForKey:nodeName]; + } + } + else if (!_collapseTextNodes) + { + top[XMLDictionaryTextKey] = @""; + } + } + } + } +} + +- (void)parser:(__unused NSXMLParser *)parser foundCharacters:(NSString *)string +{ + [self addText:string]; +} + +- (void)parser:(__unused NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock +{ + [self addText:[[NSString alloc] initWithData:CDATABlock encoding:NSUTF8StringEncoding]]; +} + +- (void)parser:(__unused NSXMLParser *)parser foundComment:(NSString *)comment +{ + if (_preserveComments) + { + NSMutableDictionary *top = _stack.lastObject; + NSMutableArray *comments = top[XMLDictionaryCommentsKey]; + if (!comments) + { + comments = [@[comment] mutableCopy]; + top[XMLDictionaryCommentsKey] = comments; + } + else + { + [comments addObject:comment]; + } + } +} + +@end + + +@implementation NSDictionary(XMLDictionary) + ++ (NSDictionary *)dictionaryWithXMLParser:(NSXMLParser *)parser +{ + return [[[XMLDictionaryParser sharedInstance] copy] dictionaryWithParser:parser]; +} + ++ (NSDictionary *)dictionaryWithXMLData:(NSData *)data +{ + return [[[XMLDictionaryParser sharedInstance] copy] dictionaryWithData:data]; +} + ++ (NSDictionary *)dictionaryWithXMLString:(NSString *)string +{ + return [[[XMLDictionaryParser sharedInstance] copy] dictionaryWithString:string]; +} + ++ (NSDictionary *)dictionaryWithXMLFile:(NSString *)path +{ + return [[[XMLDictionaryParser sharedInstance] copy] dictionaryWithFile:path]; +} + +- (nullable NSDictionary *)attributes +{ + NSDictionary *attributes = self[XMLDictionaryAttributesKey]; + if (attributes) + { + return attributes.count? attributes: nil; + } + else + { + NSMutableDictionary *filteredDict = [NSMutableDictionary dictionaryWithDictionary:self]; + [filteredDict removeObjectsForKeys:@[XMLDictionaryCommentsKey, XMLDictionaryTextKey, XMLDictionaryNodeNameKey]]; + for (NSString *key in filteredDict.allKeys) + { + [filteredDict removeObjectForKey:key]; + if ([key hasPrefix:XMLDictionaryAttributePrefix]) + { + filteredDict[[key substringFromIndex:XMLDictionaryAttributePrefix.length]] = self[key]; + } + } + return filteredDict.count? filteredDict: nil; + } + return nil; +} + +- (nullable NSDictionary *)childNodes +{ + NSMutableDictionary *filteredDict = [self mutableCopy]; + [filteredDict removeObjectsForKeys:@[XMLDictionaryAttributesKey, XMLDictionaryCommentsKey, XMLDictionaryTextKey, XMLDictionaryNodeNameKey]]; + for (NSString *key in filteredDict.allKeys) + { + if ([key hasPrefix:XMLDictionaryAttributePrefix]) + { + [filteredDict removeObjectForKey:key]; + } + } + return filteredDict.count? filteredDict: nil; +} + +- (nullable NSArray *)comments +{ + return self[XMLDictionaryCommentsKey]; +} + +- (nullable NSString *)nodeName +{ + return self[XMLDictionaryNodeNameKey]; +} + +- (id)innerText +{ + id text = self[XMLDictionaryTextKey]; + if ([text isKindOfClass:[NSArray class]]) + { + return [text componentsJoinedByString:@"\n"]; + } + else + { + return text; + } +} + +- (NSString *)innerXML +{ + NSMutableArray *nodes = [NSMutableArray array]; + + for (NSString *comment in [self comments]) + { + [nodes addObject:[NSString stringWithFormat:@"", [comment XMLEncodedString]]]; + } + + NSDictionary *childNodes = [self childNodes]; + for (NSString *key in childNodes) + { + [nodes addObject:[XMLDictionaryParser XMLStringForNode:childNodes[key] withNodeName:key]]; + } + + NSString *text = [self innerText]; + if (text) + { + [nodes addObject:[text XMLEncodedString]]; + } + + return [nodes componentsJoinedByString:@"\n"]; +} + +- (NSString *)XMLString +{ + if (self.count == 1 && ![self nodeName]) + { + //ignore outermost dictionary + return [self innerXML]; + } + else + { + return [XMLDictionaryParser XMLStringForNode:self withNodeName:[self nodeName] ?: @"root"]; + } +} + +- (nullable NSArray *)arrayValueForKeyPath:(NSString *)keyPath +{ + id value = [self valueForKeyPath:keyPath]; + if (value && ![value isKindOfClass:[NSArray class]]) + { + return @[value]; + } + return value; +} + +- (nullable NSString *)stringValueForKeyPath:(NSString *)keyPath +{ + id value = [self valueForKeyPath:keyPath]; + if ([value isKindOfClass:[NSArray class]]) + { + value = ((NSArray *)value).firstObject; + } + if ([value isKindOfClass:[NSDictionary class]]) + { + return [(NSDictionary *)value innerText]; + } + return value; +} + +- (nullable NSDictionary *)dictionaryValueForKeyPath:(NSString *)keyPath +{ + id value = [self valueForKeyPath:keyPath]; + if ([value isKindOfClass:[NSArray class]]) + { + value = [value count]? value[0]: nil; + } + if ([value isKindOfClass:[NSString class]]) + { + return @{XMLDictionaryTextKey: value}; + } + return value; +} + +@end + + +@implementation NSString (XMLDictionary) + +- (NSString *)XMLEncodedString +{ + return [[[[[self stringByReplacingOccurrencesOfString:@"&" withString:@"&"] + stringByReplacingOccurrencesOfString:@"<" withString:@"<"] + stringByReplacingOccurrencesOfString:@">" withString:@">"] + stringByReplacingOccurrencesOfString:@"\"" withString:@"""] + stringByReplacingOccurrencesOfString:@"\'" withString:@"'"]; +} + +@end diff --git a/Heartland-iOS-SDK.podspec b/Heartland-iOS-SDK.podspec index 0450eee0..3de9e9e0 100644 --- a/Heartland-iOS-SDK.podspec +++ b/Heartland-iOS-SDK.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.name = "Heartland-iOS-SDK" - s.version = "1.0.8" + s.version = "1.0.8.2" s.summary = "Secure Tokenized Payments by Heartland Payment Systems." # This description is used to generate tags and improve search results. @@ -32,7 +32,7 @@ Pod::Spec.new do |s| s.source_files = 'Pod/Classes/**/*' s.resource_bundles = { - 'Heartland-iOS-SDK' => ['Pod/Assets/*.png', 'Pod/Assets/*.xib'] + 'Heartland-iOS-SDK' => ['Pod/Assets/*.png', 'Pod/Assets/*.xib', 'Pod/Certificates/*.*'] } s.frameworks = 'UIKit' diff --git a/Pod/Certificates/*.api2.heartlandportico.com.cer b/Pod/Certificates/*.api2.heartlandportico.com.cer new file mode 100644 index 00000000..7ea4d343 Binary files /dev/null and b/Pod/Certificates/*.api2.heartlandportico.com.cer differ diff --git a/Pod/Certificates/api2.heartlandportico.com.cer b/Pod/Certificates/api2.heartlandportico.com.cer new file mode 100644 index 00000000..eea36b86 Binary files /dev/null and b/Pod/Certificates/api2.heartlandportico.com.cer differ diff --git a/Pod/Classes/Services/HpsTokenService.m b/Pod/Classes/Services/HpsTokenService.m index e1f77f59..f119fb94 100644 --- a/Pod/Classes/Services/HpsTokenService.m +++ b/Pod/Classes/Services/HpsTokenService.m @@ -1,16 +1,23 @@ -// Copyright (c) 2016 Heartland Payment Systems. All rights reserved. +// +// TokenService.m +// Heartland-Tokenization +// +// Created by Roberts, Jerry on 2/2/15. +// Copyright (c) 2015 Heartland Payment Systems. All rights reserved. +// #import "HpsTokenService.h" #import "HpsTokenData.h" +#define CFSafeRelease(x) if (x) { CFRelease(x); x = NULL; } +typedef void(^CallbackBlock)(HpsTokenData*); - -@interface HpsTokenService() +@interface HpsTokenService() @property (nonatomic, strong) NSOperationQueue *queue; @property (nonatomic, strong) NSString *publicKey; @property (nonatomic, strong) NSString *serviceURL; - +@property (nonatomic) CallbackBlock responseBlock; @end @@ -20,7 +27,7 @@ - (id) initWithPublicKey:(NSString *)publicKey { if((self = [super init])) { - self.publicKey = publicKey == nil ? @"" : [publicKey stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; + self.publicKey = publicKey; self.queue = [[NSOperationQueue alloc] init]; if(!publicKey) @@ -32,7 +39,7 @@ - (id) initWithPublicKey:(NSString *)publicKey NSString *env = [components[1] lowercaseString]; if([env isEqual:@"prod"]) { - self.serviceURL = @"https://api.heartlandportico.com/SecureSubmit.v1/api/token"; + self.serviceURL = @"https://api2.heartlandportico.com/SecureSubmit.v1/api/token"; } else if ([env isEqualToString:@"cert"]) { self.serviceURL = @"https://cert.api2.heartlandportico.com/Hps.Exchange.PosGateway.Hpf.v1/api/token"; @@ -52,51 +59,8 @@ - (void) getTokenWithCardNumber:(NSString*)cardNumber expYear:(NSString*)expYear andResponseBlock:(void(^)(HpsTokenData*))responseBlock { - NSDictionary *card = @{@"number": [self dataOrDefault:cardNumber withDefault:@""], - @"cvc": [self dataOrDefault:cvc withDefault:@""], - @"exp_month": [self dataOrDefault:expMonth withDefault:@""], - @"exp_year": [self dataOrDefault:expYear withDefault:@""], - }; - - [self getTokenWithCardDictionary:card - orEncryptedCardDictionary:nil - andResponseBlock:responseBlock]; -} - -- (void) getTokenWithCardTrackData:(NSString*)trackData - andResponseBlock:(void(^)(HpsTokenData*))responseBlock -{ - NSDictionary *card = @{@"track_method": @"swipe", - @"track": [self dataOrDefault:trackData withDefault:@""], - }; + self.responseBlock = responseBlock; - [self getTokenWithCardDictionary:card - orEncryptedCardDictionary:nil - andResponseBlock:responseBlock]; -} - -- (void) getTokenWithEncryptedCardTrackData:(NSString*)trackData - trackNumber:(NSString*)trackNumber - ktb:(NSString*)ktb - pinBlock:(NSString*)pinBlock - andResponseBlock:(void(^)(HpsTokenData*))responseBlock -{ - NSDictionary *card = @{@"track_method": @"swipe", - @"track": [self dataOrDefault:trackData withDefault:@""], - @"track_number": [self dataOrDefault:trackNumber withDefault:@""], - @"ktb": [self dataOrDefault:ktb withDefault:@""], - @"pin_block": [self dataOrDefault:pinBlock withDefault:@""], - }; - - [self getTokenWithCardDictionary:nil - orEncryptedCardDictionary:card - andResponseBlock:responseBlock]; -} - -- (void) getTokenWithCardDictionary:(NSDictionary *)card - orEncryptedCardDictionary:(NSDictionary*)encryptedCard - andResponseBlock:(void(^)(HpsTokenData*))responseBlock -{ NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:self.serviceURL] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60]; @@ -105,17 +69,18 @@ - (void) getTokenWithCardDictionary:(NSDictionary *)card NSString *authorization = [NSString stringWithFormat:@"Basic %@", [apiKey base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength]]; - NSMutableDictionary *tokenRequestData = [@{@"object": @"token", - @"token_type": @"supt", - } mutableCopy]; + NSDictionary *card = [NSDictionary dictionaryWithObjectsAndKeys: + cardNumber, @"number", + cvc, @"cvc", + expMonth, @"exp_month", + expYear, @"exp_year", nil]; - if (card) { - tokenRequestData[@"card"] = card; - } else { - tokenRequestData[@"encryptedcard"] = encryptedCard; - } + NSDictionary *token = [NSDictionary dictionaryWithObjectsAndKeys: + @"token", @"object", + @"supt", @"token_type", + card, @"card", nil]; - NSData *jsonData = [NSJSONSerialization dataWithJSONObject:tokenRequestData + NSData *jsonData = [NSJSONSerialization dataWithJSONObject:token options:0 error:nil]; @@ -123,93 +88,131 @@ - (void) getTokenWithCardDictionary:(NSDictionary *)card [request setValue:authorization forHTTPHeaderField:@"Authorization"]; [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; [request setValue:[@([jsonData length]) stringValue] forHTTPHeaderField:@"Content-Length"]; - [request setHTTPBody:jsonData]; + [request setHTTPBody:jsonData]; - [NSURLConnection sendAsynchronousRequest:request - queue:self.queue - completionHandler:^(NSURLResponse *urlResponse, NSData *data, NSError *error) { - if (error != nil){ - - HpsTokenData *response = [[HpsTokenData alloc] init]; - response.code = [@(error.code) stringValue]; - response.message = [error localizedDescription]; - response.type = @"error"; - - - dispatch_async(dispatch_get_main_queue(), ^{ - responseBlock(response); - }); - - } + NSURLConnection *connection =[[NSURLConnection alloc] initWithRequest:request delegate:self]; + [connection start]; +} - if (data != nil){ - - - NSError *jsonError; - NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data - options:NSJSONReadingAllowFragments - error:&jsonError]; - if (jsonError != nil){ - - HpsTokenData *response = [[HpsTokenData alloc] init]; - response.code = [@(jsonError.code) stringValue]; - response.message = [jsonError localizedDescription]; - response.type = @"error"; - - - dispatch_async(dispatch_get_main_queue(), ^{ - responseBlock(response); - }); - - }else{ - - } +// NSURLConnectionDelegate - HpsTokenData *response = [[HpsTokenData alloc] init]; - - if(json[@"error"]) - { - response.code = json[@"error"][@"code"]; - response.message = json[@"error"][@"message"]; - response.param = json[@"error"][@"param"]; - response.type = @"error"; - } - else - { - response.tokenValue = json[@"token_value"]; - response.tokenType = json[@"token_type"]; - response.tokenExpire = json[@"token_expire"]; - response.cardNumber = json[@"card"][@"number"]; - response.type = @"token"; - } - - dispatch_async(dispatch_get_main_queue(), ^{ - responseBlock(response); - - }); +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { + if (data != nil){ + + + NSError *jsonError; + NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data + options:NSJSONReadingAllowFragments + error:&jsonError]; + if (jsonError != nil){ + + HpsTokenData *response = [[HpsTokenData alloc] init]; + response.code = [@(jsonError.code) stringValue]; + response.message = [jsonError localizedDescription]; + response.type = @"error"; + + + dispatch_async(dispatch_get_main_queue(), ^{ + self.responseBlock(response); + }); + + } + + HpsTokenData *response = [[HpsTokenData alloc] init]; + + if(json[@"error"]) + { + response.code = json[@"error"][@"code"]; + response.message = json[@"error"][@"message"]; + response.param = json[@"error"][@"param"]; + response.type = @"error"; + } + else + { + response.tokenValue = json[@"token_value"]; + response.tokenType = json[@"token_type"]; + response.tokenExpire = json[@"token_expire"]; + response.cardNumber = json[@"card"][@"number"]; + response.type = @"token"; + } + + dispatch_async(dispatch_get_main_queue(), ^{ + self.responseBlock(response); + + }); + } +} - }else{ - - HpsTokenData *response = [[HpsTokenData alloc] init]; - response.code = @"01"; - response.message = @"No data returned"; - response.type = @"error"; - dispatch_async(dispatch_get_main_queue(), ^{ - responseBlock(response); - }); - } - - }]; +- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { + if (error != nil){ + + HpsTokenData *response = [[HpsTokenData alloc] init]; + response.code = [@(error.code) stringValue]; + response.message = [error localizedDescription]; + response.type = @"error"; + + + dispatch_async(dispatch_get_main_queue(), ^{ + self.responseBlock(response); + }); + + } } -- (NSString*) dataOrDefault:(NSString*)data - withDefault:(NSString*)defaultData -{ - if (data) { - return data; +-(void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { + // get the public key offered by the server + SecTrustRef serverTrust = challenge.protectionSpace.serverTrust; + SecKeyRef actualKey = SecTrustCopyPublicKey(serverTrust); + + // load the reference certificates + NSBundle *frameworkBundle = [NSBundle bundleForClass:[HpsTokenService class]]; + NSURL *bundleURL = [[frameworkBundle resourceURL] URLByAppendingPathComponent:@"Heartland-iOS-SDK.bundle"]; + NSBundle *resourceBundle = [NSBundle bundleWithURL:bundleURL]; + + NSString *path = [resourceBundle bundlePath]; + NSArray *dirFiles = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:path error:nil]; + NSArray *certFiles = [dirFiles filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self ENDSWITH '.cer'"]]; + + BOOL isMatch = false; + + for (NSString *certFile in certFiles) { + + NSString *certPath = [NSString stringWithFormat:@"%@/%@", path, certFile]; + NSData* certData = [NSData dataWithContentsOfFile: certPath]; + SecCertificateRef expectedCertificate = SecCertificateCreateWithData(NULL, (__bridge CFDataRef)certData); + + // extract the expected public key + SecKeyRef expectedKey = NULL; + SecCertificateRef certRefs[1] = { expectedCertificate }; + CFArrayRef certArray = CFArrayCreate(kCFAllocatorDefault, (void *) certRefs, 1, NULL); + SecPolicyRef policy = SecPolicyCreateBasicX509(); + SecTrustRef expTrust = NULL; + OSStatus status = SecTrustCreateWithCertificates(certArray, policy, &expTrust); + if (status == errSecSuccess) { + expectedKey = SecTrustCopyPublicKey(expTrust); + } + + // check a match + if (actualKey != NULL && expectedKey != NULL && [(__bridge id) actualKey isEqual:(__bridge id)expectedKey]) { + // public keys match, continue with other checks + isMatch = true; + } + + CFSafeRelease(expectedKey) + CFSafeRelease(expTrust) + CFSafeRelease(certArray) + CFSafeRelease(policy) + + if (isMatch) { + CFSafeRelease(actualKey) + [challenge.sender performDefaultHandlingForAuthenticationChallenge:challenge]; + return; + } } - return defaultData; + // public keys do not match + CFSafeRelease(actualKey) + [challenge.sender cancelAuthenticationChallenge:challenge]; } @end