@aptos-scp/scp-component-rn-device-services 0.0.2 → 0.0.4-hm
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/src/main/java/com/aptos/scp/paymentterminal/adyen/AdyenPaymentTerminal.java +69 -0
- package/ios/AurusEnterpriseSDK.framework/AurusEnterpriseSDK +0 -0
- package/ios/AurusEnterpriseSDK.framework/Headers/AurusEnterpriseSDK.h +97 -95
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/Info.plist +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/VersionInfo.plist +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.2.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.3.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.4.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.4.omo +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.8.6.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.9.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit.mom +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAccountData.h +26 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAdditionalDataRequest.h +38 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAmount.h +16 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAppData.h +26 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYBalance.h +13 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYCashTransactionRequest.h +35 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYConstants.h +688 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYCurrency.h +33 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDevice.h +308 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDeviceData.h +52 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDeviceManagerDelegate.h +66 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDeviceRegistry.h +125 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDynamicCurrencyConversionData.h +22 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYErrors.h +153 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCard.h +41 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardBalanceRequest.h +50 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardBalanceResponse.h +38 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardLoadRequest.h +78 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardLoadRequestDelegate.h +25 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardLoadResponse.h +31 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardMask.h +31 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardRequest.h +13 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYLocationManager.h +14 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYLoginDelegate.h +80 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYPrintReceiptRequest.h +57 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYReceipt.h +33 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYReceiptLine.h +92 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYReferralRequest.h +16 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYRefundData.h +54 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYServerSynchronization.h +18 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYSignatureRequest.h +117 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYSpecialTransactionRequest.h +63 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYToneGenerator.h +45 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionData.h +416 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionDetails.h +45 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionProcessorDelegate.h +279 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionRequest.h +108 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYUIKit.h +30 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/Adyen.h +591 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/AdyenToolkit-umbrella.h +59 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/AdyenToolkit.h +79 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/NSData+ADY.h +31 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/NSString+ADY.h +19 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/adylog.h +176 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Info.plist +0 -0
- package/ios/Frameworks/Adyen/AdyenToolkit.framework/Modules/module.modulemap +6 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenConstants.h +40 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenConstants.m +28 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenDelegate.h +23 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenDelegate.m +15 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenDeviceManagerDelegate.h +19 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenDeviceManagerDelegate.m +31 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenLoginDelegate.h +19 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenLoginDelegate.m +26 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenTransactionProcessorDelegate.h +26 -0
- package/ios/SCPRNDeviceServices/Adyen/AdyenTransactionProcessorDelegate.m +148 -0
- package/ios/SCPRNDeviceServices/AdyenPaymentTerminal.h +19 -0
- package/ios/SCPRNDeviceServices/AdyenPaymentTerminal.m +457 -22
- package/ios/SCPRNDeviceServices/AurusPaymentTerminal.m +96 -11
- package/ios/SCPRNDeviceServices/VendorPaymentTerminal.m +1 -1
- package/ios/SCPRNDeviceServices.xcodeproj/project.pbxproj +56 -0
- package/lib/AdyenDevice/AdyenDevice.d.ts +56 -0
- package/lib/AdyenDevice/AdyenDevice.js +349 -0
- package/lib/AdyenDevice/AdyenDevice.js.map +1 -0
- package/lib/AdyenDevice/constants.d.ts +12 -0
- package/lib/AdyenDevice/constants.js +228 -0
- package/lib/AdyenDevice/constants.js.map +1 -0
- package/lib/AdyenDevice/index.d.ts +1 -0
- package/lib/AdyenDevice/index.js +7 -0
- package/lib/AdyenDevice/index.js.map +1 -0
- package/lib/AdyenDevice/interfaces.d.ts +175 -0
- package/lib/AdyenDevice/interfaces.js +3 -0
- package/lib/AdyenDevice/interfaces.js.map +1 -0
- package/lib/AurusDevice/AurusDevice.d.ts +102 -0
- package/lib/AurusDevice/AurusDevice.js +730 -0
- package/lib/AurusDevice/AurusDevice.js.map +1 -0
- package/lib/AurusDevice/constants.d.ts +85 -33
- package/lib/AurusDevice/constants.js +115 -37
- package/lib/AurusDevice/constants.js.map +1 -1
- package/lib/AurusDevice/index.d.ts +1 -1
- package/lib/AurusDevice/index.js +1 -1
- package/lib/AurusDevice/index.js.map +1 -1
- package/lib/AurusDevice/sdk-interface/AESDKRegistration.d.ts +10 -9
- package/lib/AurusDevice/sdk-interface/AESDKRegistration.js +0 -6
- package/lib/AurusDevice/sdk-interface/AESDKRegistration.js.map +1 -1
- package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.d.ts +5 -5
- package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.js +143 -107
- package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.js.map +1 -1
- package/lib/AurusDevice/sdk-interface/Barcode.d.ts +16 -0
- package/lib/AurusDevice/sdk-interface/Barcode.js +3 -0
- package/lib/AurusDevice/sdk-interface/Barcode.js.map +1 -0
- package/lib/AurusDevice/sdk-interface/ByPassScreen.d.ts +25 -0
- package/lib/AurusDevice/sdk-interface/ByPassScreen.js +9 -0
- package/lib/AurusDevice/sdk-interface/ByPassScreen.js.map +1 -0
- package/lib/AurusDevice/sdk-interface/CancelTransaction.d.ts +11 -10
- package/lib/AurusDevice/sdk-interface/CancelTransaction.js +0 -6
- package/lib/AurusDevice/sdk-interface/CancelTransaction.js.map +1 -1
- package/lib/AurusDevice/sdk-interface/GetCardBinRequest.d.ts +14 -12
- package/lib/AurusDevice/sdk-interface/PLCCApplication.d.ts +12 -11
- package/lib/AurusDevice/sdk-interface/PLCCApplication.js +0 -6
- package/lib/AurusDevice/sdk-interface/PLCCApplication.js.map +1 -1
- package/lib/AurusDevice/sdk-interface/TransactionRequest.d.ts +44 -48
- package/lib/AurusDevice/sdk-interface/TransactionRequest.js +0 -6
- package/lib/AurusDevice/sdk-interface/TransactionRequest.js.map +1 -1
- package/lib/AurusDevice/sdk-interface/Upgrade.d.ts +23 -0
- package/lib/AurusDevice/sdk-interface/Upgrade.js +9 -0
- package/lib/AurusDevice/sdk-interface/Upgrade.js.map +1 -0
- package/lib/AurusDevice/sdk-interface/XmlElementString.d.ts +3 -0
- package/lib/AurusDevice/sdk-interface/XmlElementString.js +3 -0
- package/lib/AurusDevice/sdk-interface/XmlElementString.js.map +1 -0
- package/lib/AurusDevice/sdk-interface/index.d.ts +3 -0
- package/lib/PaymentDeviceFactory.d.ts +5 -5
- package/lib/PaymentDeviceFactory.js +16 -22
- package/lib/PaymentDeviceFactory.js.map +1 -1
- package/lib/PaymentDeviceService.d.ts +13 -12
- package/lib/PaymentDeviceService.js +114 -71
- package/lib/PaymentDeviceService.js.map +1 -1
- package/lib/ScannerDeviceFactory.d.ts +11 -0
- package/lib/ScannerDeviceFactory.js +27 -0
- package/lib/ScannerDeviceFactory.js.map +1 -0
- package/lib/ScannerDeviceService.d.ts +13 -0
- package/lib/ScannerDeviceService.js +110 -0
- package/lib/ScannerDeviceService.js.map +1 -0
- package/lib/configs/inversify/inversify.config.d.ts +3 -0
- package/lib/configs/inversify/inversify.config.js +15 -0
- package/lib/configs/inversify/inversify.config.js.map +1 -0
- package/lib/constants/constants.d.ts +62 -38
- package/lib/constants/constants.js +64 -42
- package/lib/constants/constants.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/interfaces/IDeviceStatus.d.ts +1 -0
- package/lib/interfaces/index.d.ts +1 -0
- package/lib/interfaces/payment/IPayment.d.ts +17 -18
- package/lib/interfaces/payment/messages/requests.d.ts +2 -3
- package/lib/interfaces/payment/messages/responses.d.ts +13 -6
- package/lib/interfaces/scanner/IScanner.d.ts +23 -0
- package/lib/interfaces/scanner/IScanner.js +3 -0
- package/lib/interfaces/scanner/IScanner.js.map +1 -0
- package/lib/interfaces/scanner/index.d.ts +1 -0
- package/lib/interfaces/scanner/index.js +3 -0
- package/lib/interfaces/scanner/index.js.map +1 -0
- package/package.json +11 -9
- package/types/react-native-xml2js/index.d.ts +5 -0
- package/lib/AurusDevice/AurusPaymentDevice.d.ts +0 -77
- package/lib/AurusDevice/AurusPaymentDevice.js +0 -473
- package/lib/AurusDevice/AurusPaymentDevice.js.map +0 -1
- package/types/money-works/index.d.ts +0 -49
|
@@ -8,56 +8,491 @@
|
|
|
8
8
|
|
|
9
9
|
#import <Foundation/Foundation.h>
|
|
10
10
|
#import <React/RCTLog.h>
|
|
11
|
+
#import <React/RCTConvert.h>
|
|
12
|
+
#import "Adyen/AdyenConstants.h"
|
|
11
13
|
#import "AdyenPaymentTerminal.h"
|
|
14
|
+
#import "Adyen/AdyenLoginDelegate.h"
|
|
15
|
+
#import "Adyen/AdyenDeviceManagerDelegate.h"
|
|
16
|
+
#import "Adyen/AdyenTransactionProcessorDelegate.h"
|
|
12
17
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
+
NSDictionary const *AdyenEventsDictionary;
|
|
19
|
+
|
|
20
|
+
@implementation RCTConvert (LoginStatus)
|
|
21
|
+
RCT_ENUM_CONVERTER(
|
|
22
|
+
ADYLoginStatus,
|
|
23
|
+
(@{
|
|
24
|
+
@"LoggedIn": @(ADYLoginStatusLoggedIn),
|
|
25
|
+
@"LoggedOut": @(ADYLoginStatusLoggedOut),
|
|
26
|
+
@"LoggingIn": @(ADYLoginStatusLoggingIn),
|
|
27
|
+
@"LoggingOut": @(ADYLoginStatusLoggingOut)
|
|
28
|
+
}),
|
|
29
|
+
ADYLoginStatusLoggedOut,
|
|
30
|
+
integerValue
|
|
31
|
+
)
|
|
32
|
+
@end
|
|
33
|
+
|
|
34
|
+
@implementation RCTConvert (LoginDelegateStatus)
|
|
35
|
+
RCT_ENUM_CONVERTER(
|
|
36
|
+
ADYLoginDelegateStatus,
|
|
37
|
+
(
|
|
38
|
+
@{
|
|
39
|
+
@"LoggedIn" : @(ADYLoginDelegateStatusLoggedIn),
|
|
40
|
+
@"LoggingIn" : @(ADYLoginDelegateStatusLoggingIn),
|
|
41
|
+
@"PostSettling" : @(ADYLoginDelegateStatusPostSettling),
|
|
42
|
+
@"PreSettling" : @(ADYLoginDelegateStatusPreSettling),
|
|
43
|
+
@"TokenNotYetValid" : @(ADYLoginDelegateStatusTokenNotYetValid),
|
|
44
|
+
@"TokenValid" : @(ADYLoginDelegateStatusTokenValid),
|
|
45
|
+
@"VerifyingToken" : @(ADYLoginDelegateStatusVerifyingToken)
|
|
46
|
+
}
|
|
47
|
+
),
|
|
48
|
+
ADYLoginDelegateStatusLoggingIn,
|
|
49
|
+
integerValue
|
|
50
|
+
)
|
|
51
|
+
@end
|
|
52
|
+
|
|
53
|
+
@implementation RCTConvert (DeviceStatus)
|
|
54
|
+
RCT_ENUM_CONVERTER(
|
|
55
|
+
ADYDeviceStatus,
|
|
56
|
+
(@{
|
|
57
|
+
@"Initializing": @(ADYDeviceStatusInitializing),
|
|
58
|
+
@"Initialized": @(ADYDeviceStatusInitialized),
|
|
59
|
+
@"NotBoarded": @(ADYDeviceStatusNotBoarded),
|
|
60
|
+
@"Error": @(ADYDeviceStatusError),
|
|
61
|
+
@"Stopped": @(ADYDeviceStatusStopped),
|
|
62
|
+
@"Gone": @(ADYDeviceStatusGone),
|
|
63
|
+
}),
|
|
64
|
+
ADYDeviceStatusGone,
|
|
65
|
+
integerValue
|
|
66
|
+
)
|
|
67
|
+
@end
|
|
68
|
+
|
|
69
|
+
@implementation RCTConvert (DeviceManagerStep)
|
|
70
|
+
RCT_ENUM_CONVERTER(
|
|
71
|
+
ADYEMVDeviceManagerStep,
|
|
72
|
+
(@{
|
|
73
|
+
@"IdentifyPaymentDevice": @(ADYEMVDeviceManagerStepIdentifyPaymentDevice),
|
|
74
|
+
@"RegisterPaymentDevice": @(ADYEMVDeviceManagerStepRegisterPaymentDevice),
|
|
75
|
+
@"LoadConfiguration": @(ADYEMVDeviceManagerStepLoadConfiguration),
|
|
76
|
+
@"StoreConfiguration": @(ADYEMVDeviceManagerStepStoreConfiguration),
|
|
77
|
+
@"CheckConfiguration": @(ADYEMVDeviceManagerStepCheckConfiguration)
|
|
78
|
+
}),
|
|
79
|
+
ADYEMVDeviceManagerStepIdentifyPaymentDevice,
|
|
80
|
+
integerValue
|
|
81
|
+
)
|
|
82
|
+
@end
|
|
83
|
+
|
|
84
|
+
@implementation RCTConvert (TransactionType)
|
|
85
|
+
RCT_ENUM_CONVERTER(
|
|
86
|
+
ADYTransactionType,
|
|
87
|
+
(@{
|
|
88
|
+
@"GoodsServices": @(ADYTransactionTypeGoodsServices),
|
|
89
|
+
@"Refund": @(ADYTransactionTypeRefund),
|
|
90
|
+
@"Cash": @(ADYTransactionTypeCash)
|
|
91
|
+
}),
|
|
92
|
+
ADYTransactionTypeGoodsServices,
|
|
93
|
+
integerValue
|
|
94
|
+
)
|
|
95
|
+
@end
|
|
96
|
+
|
|
97
|
+
@implementation RCTConvert (CardStatus)
|
|
98
|
+
RCT_ENUM_CONVERTER(
|
|
99
|
+
ADYCardStatus,
|
|
100
|
+
(@{
|
|
101
|
+
@"CardRemoved": @(ADYCardStatusCardRemoved),
|
|
102
|
+
@"NextTransaction": @(ADYCardStatusNextTransaction),
|
|
103
|
+
@"Error": @(ADYCardStatusError),
|
|
104
|
+
@"NotSupported": @(ADYCardStatusNotSupported)
|
|
105
|
+
}),
|
|
106
|
+
ADYTransactionTypeGoodsServices,
|
|
107
|
+
integerValue
|
|
108
|
+
)
|
|
109
|
+
@end
|
|
110
|
+
|
|
111
|
+
@implementation RCTConvert (TenderState)
|
|
112
|
+
RCT_ENUM_CONVERTER(
|
|
113
|
+
ADYTenderState,
|
|
114
|
+
(@{
|
|
115
|
+
@"Initial": @(ADYTenderStateInitial),
|
|
116
|
+
@"Created": @(ADYTenderStateCreated),
|
|
117
|
+
@"Processing": @(ADYTenderStateProcessing),
|
|
118
|
+
@"AdditionalDataAvailable": @(ADYTenderStateAdditionalDataAvailable),
|
|
119
|
+
@"WaitForAmountAdjustment": @(ADYTenderStateWaitForAmountAdjustment),
|
|
120
|
+
@"AmountAdjusted": @(ADYTenderStateAmountAdjusted),
|
|
121
|
+
@"ProvideCardDetails": @(ADYTenderStateProvideCardDetails),
|
|
122
|
+
@"CardDetailsProvided": @(ADYTenderStateCardDetailsProvided),
|
|
123
|
+
@"AskSignature": @(ADYTenderStateAskSignature),
|
|
124
|
+
@"CheckSignature": @(ADYTenderStateCheckSignature),
|
|
125
|
+
@"SignatureChecked": @(ADYTenderStateSignatureChecked),
|
|
126
|
+
@"Referral": @(ADYTenderStateReferral),
|
|
127
|
+
@"ReferralChecked": @(ADYTenderStateReferralChecked),
|
|
128
|
+
@"PrintReceipt": @(ADYTenderStatePrintReceipt),
|
|
129
|
+
@"ReceiptPrinted": @(ADYTenderStateReceiptPrinted),
|
|
130
|
+
@"WaitingForAppSelection": @(ADYTenderStateWaitingForAppSelection),
|
|
131
|
+
@"AppSelected": @(ADYTenderStateAppSelected),
|
|
132
|
+
@"WaitingForPin": @(ADYTenderStateWaitingForPin),
|
|
133
|
+
@"PinDigitEntered": @(ADYTenderStatePinDigitEntered),
|
|
134
|
+
@"PinEntered": @(ADYTenderStatePinEntered),
|
|
135
|
+
@"AskGratuity": @(ADYTenderStateAskGratuity),
|
|
136
|
+
@"GratuityEntered": @(ADYTenderStateGratuityEntered),
|
|
137
|
+
@"AskDcc": @(ADYTenderStateAskDcc),
|
|
138
|
+
@"DccAccepted": @(ADYTenderStateDccAccepted),
|
|
139
|
+
@"DccRejected": @(ADYTenderStateDccRejected),
|
|
140
|
+
@"BeepOk": @(ADYTenderStateBeepOk),
|
|
141
|
+
@"BeepAlert": @(ADYTenderStateBeepAlert),
|
|
142
|
+
@"AskSwipeCard": @(ADYTenderStateAskSwipeCard),
|
|
143
|
+
@"CardSwiped": @(ADYTenderStateCardSwiped),
|
|
144
|
+
@"AskInsertCard": @(ADYTenderStateAskInsertCard),
|
|
145
|
+
@"CardInserted": @(ADYTenderStateCardInserted),
|
|
146
|
+
@"CardRemoved": @(ADYTenderStateCardRemoved),
|
|
147
|
+
@"AskPresentCard": @(ADYTenderStateAskPresentCard),
|
|
148
|
+
@"CardPresented": @(ADYTenderStateCardPresented),
|
|
149
|
+
@"CardErrorChipFailed": @(ADYTenderStateCardErrorChipFailed),
|
|
150
|
+
@"CardErrorChipFailedTrySwipe": @(ADYTenderStateCardErrorChipFailedTrySwipe),
|
|
151
|
+
@"CardErrorReadFailed": @(ADYTenderStateCardErrorReadFailed),
|
|
152
|
+
@"CardErrorNotSupportedUseICC": @(ADYTenderStateCardErrorNotSupportedUseICC),
|
|
153
|
+
@"CardErrorChipFailedReaderError": @(ADYTenderStateCardErrorChipFailedReaderError),
|
|
154
|
+
@"CardErrorNotAccepted": @(ADYTenderStateCardErrorNotAccepted),
|
|
155
|
+
@"CardErrorNotAcceptedTrySwipe": @(ADYTenderStateCardErrorNotAcceptedTrySwipe),
|
|
156
|
+
@"CardErrorApplicationBlocked": @(ADYTenderStateCardErrorApplicationBlocked),
|
|
157
|
+
@"CardErrorFallback": @(ADYTenderStateCardErrorFallback),
|
|
158
|
+
@"CardErrorNotSupported": @(ADYTenderStateCardErrorNotSupported),
|
|
159
|
+
@"CardErrorNotAllowed": @(ADYTenderStateCardErrorNotAllowed),
|
|
160
|
+
@"WaitingEndStateConfirmation": @(ADYTenderStateWaitingEndStateConfirmation),
|
|
161
|
+
@"Summary": @(ADYTenderStateSummary),
|
|
162
|
+
@"Approved": @(ADYTenderStateApproved),
|
|
163
|
+
@"Declined": @(ADYTenderStateDeclined),
|
|
164
|
+
@"Cancelled": @(ADYTenderStateCancelled),
|
|
165
|
+
@"Error": @(ADYTenderStateError),
|
|
166
|
+
@"End": @(ADYTenderStateEnd),
|
|
167
|
+
@"Retrying": @(ADYTenderStateRetrying),
|
|
168
|
+
@"Pending": @(ADYTenderStatePending),
|
|
169
|
+
@"Acknowledged": @(ADYTenderStateAcknowledged),
|
|
170
|
+
@"Unknown": @(ADYTenderStateUnknown)
|
|
171
|
+
}),
|
|
172
|
+
ADYTenderStateUnknown,
|
|
173
|
+
integerValue
|
|
174
|
+
)
|
|
175
|
+
@end
|
|
18
176
|
|
|
19
|
-
@
|
|
177
|
+
@implementation RCTConvert (FinalTenderState)
|
|
178
|
+
RCT_ENUM_CONVERTER(
|
|
179
|
+
ADYFinalTenderState,
|
|
180
|
+
(@{
|
|
181
|
+
@"NotFinal": @(ADYFinalTenderStateNotFinal),
|
|
182
|
+
@"Approved": @(ADYFinalTenderStateApproved),
|
|
183
|
+
@"Declined": @(ADYFinalTenderStateDeclined),
|
|
184
|
+
@"Cancelled": @(ADYFinalTenderStateCancelled),
|
|
185
|
+
@"Error": @(ADYFinalTenderStateError),
|
|
186
|
+
@"Unknown": @(ADYFinalTenderStateUnknown)
|
|
187
|
+
}),
|
|
188
|
+
ADYFinalTenderStateNotFinal,
|
|
189
|
+
integerValue
|
|
190
|
+
)
|
|
191
|
+
@end
|
|
192
|
+
|
|
193
|
+
@implementation RCTConvert (CardScheme)
|
|
194
|
+
RCT_ENUM_CONVERTER(
|
|
195
|
+
ADYCardScheme,
|
|
196
|
+
(@{
|
|
197
|
+
@"Error": @(ADYCardSchemeError),
|
|
198
|
+
@"VisaVisa": @(ADYCardSchemeVisaVisa),
|
|
199
|
+
@"VisaElectron": @(ADYCardSchemeVisaElectron),
|
|
200
|
+
@"VisaVPay": @(ADYCardSchemeVisaVPay),
|
|
201
|
+
@"VisaPlus": @(ADYCardSchemeVisaPlus),
|
|
202
|
+
@"VisaDankort": @(ADYCardSchemeVisaDankort),
|
|
203
|
+
@"MasterCardDebit": @(ADYCardSchemeMasterCardDebit),
|
|
204
|
+
@"MasterCardMaestro": @(ADYCardSchemeMasterCardMaestro),
|
|
205
|
+
@"MasterCardMaestroUK": @(ADYCardSchemeMasterCardMaestroUK),
|
|
206
|
+
@"MasterCardMasterCard": @(ADYCardSchemeMasterCardMasterCard),
|
|
207
|
+
@"AmericanExpress": @(ADYCardSchemeAmericanExpress),
|
|
208
|
+
@"JCB": @(ADYCardSchemeJCB),
|
|
209
|
+
@"DinersClub": @(ADYCardSchemeDinersClub),
|
|
210
|
+
@"Dankort": @(ADYCardSchemeDankort),
|
|
211
|
+
@"Discover": @(ADYCardSchemeDiscover),
|
|
212
|
+
@"Laser": @(ADYCardSchemeLaser),
|
|
213
|
+
@"BCMC": @(ADYCardSchemeBCMC),
|
|
214
|
+
@"Solo": @(ADYCardSchemeSolo),
|
|
215
|
+
@"Bijenkorf": @(ADYCardSchemeBijenkorf),
|
|
216
|
+
@"CUP": @(ADYCardSchemeCUP),
|
|
217
|
+
}),
|
|
218
|
+
ADYCardSchemeError,
|
|
219
|
+
integerValue
|
|
220
|
+
)
|
|
20
221
|
@end
|
|
21
222
|
|
|
22
223
|
#pragma mark -
|
|
23
224
|
|
|
24
225
|
@implementation AdyenPaymentTerminal
|
|
25
226
|
|
|
227
|
+
+ (void)initialize {
|
|
228
|
+
AdyenEventsDictionary = @{
|
|
229
|
+
@"BoardDevice": @{
|
|
230
|
+
@"WillBeginStep": SCPAdyenDeviceManagerWillBeginStepEvent,
|
|
231
|
+
@"DidCompleteStep": SCPAdyenDeviceManagerDidCompleteStepEvent,
|
|
232
|
+
@"DidFailStep": SCPAdyenDeviceManagerDidFailStepEvent,
|
|
233
|
+
@"DidComplete": SCPAdyenDeviceManagerDidCompleteEvent,
|
|
234
|
+
},
|
|
235
|
+
@"Login": @{
|
|
236
|
+
@"Failure": SCPAdyenLoginFailureEvent,
|
|
237
|
+
@"Success": SCPAdyenLoginSuccessEvent,
|
|
238
|
+
@"Update": SCPAdyenLoginUpdateEvent
|
|
239
|
+
},
|
|
240
|
+
@"RetrieveDevice": SCPAdyenRetrieveDeviceEvent,
|
|
241
|
+
@"Transaction": @{
|
|
242
|
+
@"Complete": SCPAdyenTransactionCompleteEvent,
|
|
243
|
+
@"RequiresSignature": SCPAdyenTransactionRequiresSignatureEvent,
|
|
244
|
+
@"ProvidesAdditionalData": SCPAdyenTransactionProvidesAdditionalDataEvent,
|
|
245
|
+
@"RequiresPrintedReceipt": SCPAdyenTransactionRequiresPrintedReceiptEvent,
|
|
246
|
+
@"RequiresReferral": SCPAdyenTransactionRequiresReferralEvent,
|
|
247
|
+
@"SuggestsDcc": SCPAdyenTransactionSuggestsDccEvent,
|
|
248
|
+
@"GratuityEntered": SCPAdyenTransactionGratuityEnteredEvent,
|
|
249
|
+
@"ApplicationSelected": SCPAdyenTransactionApplicationSelectedEvent,
|
|
250
|
+
@"PinDigitEntered": SCPAdyenTransactionPinDigitEnteredEvent,
|
|
251
|
+
@"CardRemoved": SCPAdyenTransactionCardRemovedEvent,
|
|
252
|
+
@"ConnectionLost": SCPAdyenTransactionConnectionLostEvent,
|
|
253
|
+
@"ConnectionRestored": SCPAdyenTransactionConnectionRestoredEvent,
|
|
254
|
+
@"StateChanged": SCPAdyenTransactionStateChangedEvent,
|
|
255
|
+
@"Started": SCPAdyenTransactionStartedEvent
|
|
256
|
+
}
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
#pragma mark - Dispatch queue declaration for the module.
|
|
261
|
+
|
|
262
|
+
/**
|
|
263
|
+
* All methods of the Adyen class, and all of its returned objects, must be run on the mainthread. Similarly, all
|
|
264
|
+
* methods invoked by an Adyen instance on one of its delegates are guaranteed to be invoked on the mainthread.
|
|
265
|
+
*/
|
|
266
|
+
- (dispatch_queue_t)methodQueue {
|
|
267
|
+
return dispatch_get_main_queue();
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
#pragma mark - Export constants and module
|
|
271
|
+
|
|
26
272
|
RCT_EXPORT_MODULE();
|
|
27
273
|
|
|
28
274
|
// TODO: Refactor and add additional methods as needed. This is a basic example to test component interactions.
|
|
29
275
|
- (NSDictionary *)constantsToExport {
|
|
30
276
|
return @{
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
277
|
+
@"AdyenEvents": AdyenEventsDictionary,
|
|
278
|
+
@"AdyenConstants": @{
|
|
279
|
+
@"Status": @{
|
|
280
|
+
@"Device": @{
|
|
281
|
+
@"Initializing": @(ADYDeviceStatusInitializing),
|
|
282
|
+
@"Initialized": @(ADYDeviceStatusInitialized),
|
|
283
|
+
@"NotBoarded": @(ADYDeviceStatusNotBoarded),
|
|
284
|
+
@"Error": @(ADYDeviceStatusError),
|
|
285
|
+
@"Stopped": @(ADYDeviceStatusStopped),
|
|
286
|
+
@"Gone": @(ADYDeviceStatusGone),
|
|
287
|
+
},
|
|
288
|
+
@"Login": @{
|
|
289
|
+
@"LoggedIn": @(ADYLoginStatusLoggedIn),
|
|
290
|
+
@"LoggedOut": @(ADYLoginStatusLoggedOut),
|
|
291
|
+
@"LoggingIn": @(ADYLoginStatusLoggingIn),
|
|
292
|
+
@"LoggingOut": @(ADYLoginStatusLoggingOut)
|
|
293
|
+
},
|
|
294
|
+
@"RetrieveDevice": @{
|
|
295
|
+
@"Failure" : @(NO),
|
|
296
|
+
@"Success" : @(YES),
|
|
297
|
+
}
|
|
298
|
+
},
|
|
299
|
+
@"TransactionTypes": @{
|
|
300
|
+
@"GoodsServices": @(ADYTransactionTypeGoodsServices),
|
|
301
|
+
@"Refund": @(ADYTransactionTypeRefund),
|
|
302
|
+
@"Cash": @(ADYTransactionTypeCash)
|
|
303
|
+
},
|
|
304
|
+
@"FinalTenderStates": @{
|
|
305
|
+
@"NotFinal": @(ADYFinalTenderStateNotFinal),
|
|
306
|
+
@"Approved": @(ADYFinalTenderStateApproved),
|
|
307
|
+
@"Declined": @(ADYFinalTenderStateDeclined),
|
|
308
|
+
@"Cancelled": @(ADYFinalTenderStateCancelled),
|
|
309
|
+
@"Error": @(ADYFinalTenderStateError),
|
|
310
|
+
@"Unknown": @(ADYFinalTenderStateUnknown)
|
|
311
|
+
},
|
|
312
|
+
@"CardScheme" : @{
|
|
313
|
+
@"Error": @(ADYCardSchemeError),
|
|
314
|
+
@"VisaVisa": @(ADYCardSchemeVisaVisa),
|
|
315
|
+
@"VisaElectron": @(ADYCardSchemeVisaElectron),
|
|
316
|
+
@"VisaVPay": @(ADYCardSchemeVisaVPay),
|
|
317
|
+
@"VisaPlus": @(ADYCardSchemeVisaPlus),
|
|
318
|
+
@"VisaDankort": @(ADYCardSchemeVisaDankort),
|
|
319
|
+
@"MasterCardDebit": @(ADYCardSchemeMasterCardDebit),
|
|
320
|
+
@"MasterCardMaestro": @(ADYCardSchemeMasterCardMaestro),
|
|
321
|
+
@"MasterCardMaestroUK": @(ADYCardSchemeMasterCardMaestroUK),
|
|
322
|
+
@"MasterCardMasterCard": @(ADYCardSchemeMasterCardMasterCard),
|
|
323
|
+
@"AmericanExpress": @(ADYCardSchemeAmericanExpress),
|
|
324
|
+
@"JCB": @(ADYCardSchemeJCB),
|
|
325
|
+
@"DinersClub": @(ADYCardSchemeDinersClub),
|
|
326
|
+
@"Dankort": @(ADYCardSchemeDankort),
|
|
327
|
+
@"Discover": @(ADYCardSchemeDiscover),
|
|
328
|
+
@"Laser": @(ADYCardSchemeLaser),
|
|
329
|
+
@"BCMC": @(ADYCardSchemeBCMC),
|
|
330
|
+
@"Solo": @(ADYCardSchemeSolo),
|
|
331
|
+
@"Bijenkorf": @(ADYCardSchemeBijenkorf),
|
|
332
|
+
@"CUP": @(ADYCardSchemeCUP),
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
};
|
|
34
336
|
}
|
|
35
337
|
|
|
36
338
|
#pragma mark - Exported to JavaScript methods
|
|
37
339
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
340
|
+
RCT_EXPORT_METHOD(initialize:(BOOL*)useTestBackend) {
|
|
341
|
+
if (!self.adyen) {
|
|
342
|
+
RCTLog(@"In AdyenPaymentTerminal.initialize, getting Adyen shared instance.");
|
|
343
|
+
self.adyen = [Adyen sharedInstance];
|
|
344
|
+
self.adyen.useTestBackend = useTestBackend;
|
|
345
|
+
self.loginDelegate = [[AdyenLoginDelegate alloc] initWithEmitter:self];
|
|
346
|
+
self.transactionDelegate = [[AdyenTransactionProcessorDelegate alloc] initWithEmitter:self];
|
|
347
|
+
self.deviceManagerDelegate = [[AdyenDeviceManagerDelegate alloc] initWithEmitter:self];
|
|
348
|
+
} else {
|
|
349
|
+
RCTLog(@"In AdyenPaymentTerminal.initialize, already initialized.");
|
|
350
|
+
}
|
|
42
351
|
}
|
|
43
352
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
353
|
+
RCT_REMAP_METHOD(loginStatus,
|
|
354
|
+
loginStatusWithResolver:(RCTPromiseResolveBlock)resolve
|
|
355
|
+
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
356
|
+
RCTLog(@"In AdyenPaymentTerminal.loginStatus, getting the login status on the adyen tool kit.");
|
|
357
|
+
if (self.adyen) {
|
|
358
|
+
resolve(@(self.adyen.loginStatus));
|
|
359
|
+
} else {
|
|
360
|
+
reject(@"instance_not_set", @"Adyen instance not created.", [NSError errorWithDomain:@"Adyen native error" code:100 userInfo:nil ]);
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
RCT_EXPORT_METHOD(login:(NSString*)merchantCode username:(NSString*)username password:(NSString*)password) {
|
|
365
|
+
RCTLog(@"In AdyenPaymentTerminal.login, sending login request to adyen tool kit.");
|
|
366
|
+
[self.adyen loginWithMerchantCode:merchantCode
|
|
367
|
+
withUsername:username
|
|
368
|
+
withPassword:password
|
|
369
|
+
andDelegate:self.loginDelegate];
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
RCT_EXPORT_METHOD(retrieveDevice) {
|
|
373
|
+
RCTLog(@"In AdyenPaymentTerminal.retrieveDevice, retrieving the first device in the list of devices.");
|
|
374
|
+
self.device = self.adyen.deviceRegistry.devices.firstObject;
|
|
375
|
+
if (self.device) {
|
|
376
|
+
[self retrieveDeviceSuccess:YES];
|
|
377
|
+
} else {
|
|
378
|
+
[self retrieveDeviceSuccess:NO];
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
RCT_REMAP_METHOD(deviceStatus,
|
|
383
|
+
deviceStatusWithResolver:(RCTPromiseResolveBlock)resolve
|
|
384
|
+
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
385
|
+
RCTLog(@"In AdyenPaymentTerminal.deviceStatus, getting the status of retrieved device.");
|
|
386
|
+
if (self.device) {
|
|
387
|
+
resolve(@(self.device.status));
|
|
388
|
+
} else {
|
|
389
|
+
reject(@"device_not_retrieved", @"Adyen device not retrieved.", [NSError errorWithDomain:@"Adyen native error" code:200 userInfo:nil ]);
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
RCT_EXPORT_METHOD(boardDevice) {
|
|
394
|
+
RCTLog(@"In AdyenPaymentTerminal.boardDevice, boarding the retrieved device.");
|
|
395
|
+
[self.device boardDeviceWithDelegate:self.deviceManagerDelegate];
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
RCT_EXPORT_METHOD(createTransactionRequest:(NSString*)reference
|
|
399
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
400
|
+
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
401
|
+
RCTLog(@"In AdyenPaymentTerminal.createTransactionRequestWithReference, creating transaction request.");
|
|
402
|
+
// WARNING
|
|
403
|
+
// When an ADYTransactionRequest is created, the ADYDevice will not keep a reference to it. Therefore, to prevent
|
|
404
|
+
// it from being deallocated, it is important that you keep a reference to it until after the transaction,
|
|
405
|
+
// started with [ADYTransactionRequest startWithDelegate:], has been finished.
|
|
406
|
+
NSError* error = nil;
|
|
407
|
+
self.transactionDelegate.request = [self.device createTransactionRequestWithReference:reference error:&error];
|
|
408
|
+
if(error){
|
|
409
|
+
reject(@"", @"", error);
|
|
410
|
+
} else {
|
|
411
|
+
resolve(nil);
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
RCT_EXPORT_METHOD(startTransactionRequest:(ADYTransactionType)transactionType
|
|
416
|
+
currency:(NSString*)currency
|
|
417
|
+
amount:(NSNumber* _Nonnull)amount
|
|
418
|
+
store:(NSString*)store
|
|
419
|
+
cashRegisterAgent:(NSString*)cashRegisterAgent ) {
|
|
420
|
+
if (self.transactionDelegate.request) {
|
|
421
|
+
RCTLog(@"In AdyenPaymentTerminal.startTransactionRequest, populating transaction request.");
|
|
422
|
+
self.transactionDelegate.request.transactionType = transactionType;
|
|
423
|
+
self.transactionDelegate.request.currency = currency;
|
|
424
|
+
self.transactionDelegate.request.amount = amount;
|
|
425
|
+
self.transactionDelegate.request.store = store;
|
|
426
|
+
self.transactionDelegate.request.cashregisterAgent = cashRegisterAgent;
|
|
427
|
+
// gratuity
|
|
428
|
+
// locale
|
|
429
|
+
// options
|
|
430
|
+
// additionalData
|
|
431
|
+
|
|
432
|
+
RCTLog(@"In AdyenPaymentTerminal.startTransactionRequest, starting request with delegate.");
|
|
433
|
+
NSError* error = nil;
|
|
434
|
+
[self.transactionDelegate.request startWithDelegate:self.transactionDelegate error:&error];
|
|
435
|
+
} else {
|
|
436
|
+
RCTLog(@"In AdyenPaymentTerminal.startTransactionRequest, request is not created before attempting to start.");
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
RCT_EXPORT_METHOD(confirmReceiptPrinted:(BOOL)success) {
|
|
441
|
+
RCTLog(@"In AdyenPaymentTerminal.confirmReceiptPrinted, entering method.");
|
|
442
|
+
if (self.transactionDelegate.printReceiptRequest) {
|
|
443
|
+
// RCTLog(@"%@", [NSString stringWithFormat:@"In AdyenPaymentTerminal.confirmSignature, calling confirmReceiptPrinted:%@", success]);
|
|
444
|
+
[self.transactionDelegate.printReceiptRequest confirmReceiptPrinted:success];
|
|
445
|
+
} else {
|
|
446
|
+
RCTLog(@"In AdyenPaymentTerminal.confirmReceiptPrinted, printReceiptRequest is not created before attempting to confirmReceiptPrinted.");
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
RCT_EXPORT_METHOD(confirmSignature:(BOOL)success) {
|
|
451
|
+
RCTLog(@"In AdyenPaymentTerminal.confirmSignature, entering method.");
|
|
452
|
+
if (self.transactionDelegate.signatureRequest && success) {
|
|
453
|
+
success ? [self.transactionDelegate.signatureRequest submitConfirmedSignature:nil] : [self.transactionDelegate.signatureRequest submitUnconfirmedSignature:nil];
|
|
454
|
+
} else {
|
|
455
|
+
RCTLog(@"In AdyenPaymentTerminal.confirmSignature, signatureRequest is not created before attempting to confirmSignature.");
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
#pragma mark - Retrieve Device Event
|
|
461
|
+
|
|
462
|
+
- (void)retrieveDeviceSuccess:(BOOL)value {
|
|
463
|
+
RCTLog(@"%@", [NSString stringWithFormat:@"In AdyenPaymentTerminal.retrieveDeviceSuccess, calling sendEventWithName:%@ body:%@", SCPAdyenRetrieveDeviceEvent, value ? @"YES" : @"NO" ]);
|
|
464
|
+
[self sendEventWithName:SCPAdyenRetrieveDeviceEvent body:@(value)];
|
|
48
465
|
}
|
|
49
466
|
|
|
50
467
|
#pragma mark - RCTEventEmitter implementation
|
|
51
468
|
|
|
52
|
-
// TODO: Refactor and add additional methods as needed. This is a basic example to test component interactions.
|
|
53
469
|
- (NSArray<NSString *> *)supportedEvents {
|
|
54
470
|
return @[
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
471
|
+
SCPAdyenLoginSuccessEvent,
|
|
472
|
+
SCPAdyenLoginFailureEvent,
|
|
473
|
+
SCPAdyenLoginUpdateEvent,
|
|
474
|
+
SCPAdyenRetrieveDeviceEvent,
|
|
475
|
+
SCPAdyenDeviceManagerWillBeginStepEvent,
|
|
476
|
+
SCPAdyenDeviceManagerDidCompleteStepEvent,
|
|
477
|
+
SCPAdyenDeviceManagerDidFailStepEvent,
|
|
478
|
+
SCPAdyenDeviceManagerDidCompleteEvent,
|
|
479
|
+
SCPAdyenTransactionCompleteEvent,
|
|
480
|
+
SCPAdyenTransactionRequiresSignatureEvent,
|
|
481
|
+
SCPAdyenTransactionProvidesAdditionalDataEvent,
|
|
482
|
+
SCPAdyenTransactionRequiresPrintedReceiptEvent,
|
|
483
|
+
SCPAdyenTransactionRequiresReferralEvent,
|
|
484
|
+
SCPAdyenTransactionSuggestsDccEvent,
|
|
485
|
+
SCPAdyenTransactionGratuityEnteredEvent,
|
|
486
|
+
SCPAdyenTransactionApplicationSelectedEvent,
|
|
487
|
+
SCPAdyenTransactionPinDigitEnteredEvent,
|
|
488
|
+
SCPAdyenTransactionCardRemovedEvent,
|
|
489
|
+
SCPAdyenTransactionConnectionLostEvent,
|
|
490
|
+
SCPAdyenTransactionConnectionRestoredEvent,
|
|
491
|
+
SCPAdyenTransactionStateChangedEvent,
|
|
492
|
+
SCPAdyenTransactionStartedEvent
|
|
493
|
+
];
|
|
58
494
|
}
|
|
59
495
|
|
|
60
496
|
@end
|
|
61
497
|
|
|
62
498
|
//AdyenPaymentTerminal
|
|
63
|
-
|
|
@@ -12,10 +12,16 @@
|
|
|
12
12
|
|
|
13
13
|
NSString* const native_onAESDKResponse = @"onAESDKResponse";
|
|
14
14
|
NSString* const native_onAESDKResponse_name = @"native_onAESDKResponse";
|
|
15
|
+
NSString* const native_onNotificationReceived = @"onNotificationReceived";
|
|
16
|
+
NSString* const native_onNotificationReceived_name = @"native_onNotificationReceived";
|
|
17
|
+
NSString* const native_onAESDKLogResponse = @"onAESDKLogResponse";
|
|
18
|
+
NSString* const native_onAESDKLogResponse_name = @"native_onAESDKLogResponse";
|
|
19
|
+
NSString* const AURUS_NOTIFICATION = @"AURUS_NOTIFICATION";
|
|
20
|
+
NSString* const USER_INFO_CODE = @"CODE";
|
|
15
21
|
|
|
16
22
|
@interface AurusPaymentTerminal ()
|
|
17
23
|
|
|
18
|
-
@property
|
|
24
|
+
@property AurusEnterpriseSDK* aesdk;
|
|
19
25
|
|
|
20
26
|
@end
|
|
21
27
|
|
|
@@ -23,31 +29,93 @@ NSString* const native_onAESDKResponse_name = @"native_onAESDKResponse";
|
|
|
23
29
|
|
|
24
30
|
@implementation AurusPaymentTerminal
|
|
25
31
|
|
|
32
|
+
- (void)dealloc {
|
|
33
|
+
[[NSNotificationCenter defaultCenter] removeObserver:self name:AURUS_NOTIFICATION object:nil];
|
|
34
|
+
observer = nil;
|
|
35
|
+
}
|
|
36
|
+
|
|
26
37
|
RCT_EXPORT_MODULE();
|
|
27
38
|
|
|
28
39
|
- (NSDictionary *)constantsToExport {
|
|
29
40
|
return @{
|
|
30
|
-
native_onAESDKResponse_name: native_onAESDKResponse
|
|
41
|
+
native_onAESDKResponse_name: native_onAESDKResponse,
|
|
42
|
+
native_onNotificationReceived_name: native_onNotificationReceived,
|
|
43
|
+
native_onAESDKLogResponse_name: native_onAESDKLogResponse,
|
|
44
|
+
@"NotificationEvent": @{ @"SwipeOrInsertOrTap" : @(EventSwipeOrInsertOrTap), //501
|
|
45
|
+
@"EnterManualCardEntry" : @(EventEnterManualCardEntry),
|
|
46
|
+
@"Processing" : @(EventProcessing),
|
|
47
|
+
@"EnterPIN" : @(EventEnterPIN),
|
|
48
|
+
@"EnterZIP" : @(EventEnterZIP),
|
|
49
|
+
@"EnterSSN" : @(EventEnterSSN),
|
|
50
|
+
@"EnterDOB" : @(EventEnterDOB),
|
|
51
|
+
@"EnterAnnualIncome" : @(EventEnterAnnualIncome),
|
|
52
|
+
@"EnterExpiryDate" : @(EventEnterExpiryDate),
|
|
53
|
+
@"EnterCVV" : @(EventEnterCVV),
|
|
54
|
+
@"EnterTIP" : @(EventEnterTIP),
|
|
55
|
+
@"Confirmation" : @(EventConfirmation),
|
|
56
|
+
@"ProcessingTransaction" : @(EventProcessingTransaction),
|
|
57
|
+
@"BarcodeInformation" : @(EventBarcodeInformation), //514
|
|
58
|
+
@"DeviceNotConnected" : @(EventDeviceNotConnected), //515
|
|
59
|
+
@"DeviceConnecting" : @(EventDeviceConnecting), //516
|
|
60
|
+
@"DeviceConnected" : @(EventDeviceConnected), //517
|
|
61
|
+
@"DeviceConfigurationStarted" : @(EventDeviceConfigurationStarted), //518
|
|
62
|
+
@"DeviceConfigurationCompleted" : @(EventDeviceConfigurationCompleted), //519
|
|
63
|
+
@"DeviceConfigurationFailed" : @(EventDeviceConfigurationFailed), //520
|
|
64
|
+
@"DeviceAlreadyConfigured" : @(EventDeviceAlreadyConfigured), //521
|
|
65
|
+
@"FileDownloadProgress" : @(EventFileDownloadProgress),
|
|
66
|
+
@"FileDownloadFailed" : @(EventFileDownloadFailed),
|
|
67
|
+
@"FileDownloadRetry" : @(EventFileDownloadRetry),
|
|
68
|
+
@"PEDFileUpgrade" : @(EventPEDFileUpgrade),
|
|
69
|
+
@"PEDFileUpgradeFailed" : @(EventPEDFileUpgradeFailed),
|
|
70
|
+
@"PEDFileUpgradeCompleted" : @(EventPEDFileUpgradeCompleted),
|
|
71
|
+
@"PEDFileTransferInfo" : @(EventPEDFileTransferInfo),
|
|
72
|
+
@"PEDFileTransferProgress" : @(EventPEDFileTransferProgress),
|
|
73
|
+
@"CaptureSignatureOnPOS" : @(EventCaptureSignatureOnPOS),
|
|
74
|
+
@"None" : @(EventNone)
|
|
75
|
+
}
|
|
31
76
|
};
|
|
32
77
|
}
|
|
33
78
|
|
|
34
79
|
#pragma mark - Exported to JavaScript methods
|
|
35
80
|
|
|
81
|
+
static BOOL firstTimeConnectionComplete = NO;
|
|
82
|
+
static id observer;
|
|
83
|
+
|
|
36
84
|
RCT_EXPORT_METHOD(initialize) {
|
|
37
|
-
RCTLog(@"In AurusPaymentTerminal.initialize, creating AurusEnterpriseSDK. This starts the connection and EMV configuration.");
|
|
38
85
|
if (!self.aesdk) {
|
|
86
|
+
RCTLog(@"In AurusPaymentTerminal.initialize, adding %@ observer.", AURUS_NOTIFICATION);
|
|
87
|
+
if (observer) {
|
|
88
|
+
RCTLog(@"In AurusPaymentTerminal.initialize, app was reloaded after adding observers. This should only happen in DEV. Attempting to work-around this scenario.");
|
|
89
|
+
[[NSNotificationCenter defaultCenter] removeObserver:observer name:AURUS_NOTIFICATION object:nil];
|
|
90
|
+
}
|
|
91
|
+
observer = self;
|
|
92
|
+
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onNotificationReceived:) name:AURUS_NOTIFICATION object:nil];
|
|
93
|
+
|
|
94
|
+
RCTLog(@"In AurusPaymentTerminal.initialize, creating AurusEnterpriseSDK.");
|
|
39
95
|
self.aesdk = [[AurusEnterpriseSDK alloc] init];
|
|
40
|
-
}
|
|
41
|
-
if (!self.aesdk.setAESDKDelegateRefference) {
|
|
42
96
|
self.aesdk.setAESDKDelegateRefference = self;
|
|
97
|
+
[self.aesdk OnAESDKLogProcessRequest];
|
|
98
|
+
|
|
99
|
+
if (firstTimeConnectionComplete) {
|
|
100
|
+
// allows payment to function as normal when app is reloaded
|
|
101
|
+
RCTLog(@"In AurusPaymentTerminal.initialize, app was reloaded after being previously connected. This should only happen in DEV. Attempting to work-around this scenario.");
|
|
102
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
103
|
+
[self performSelector:@selector(notifyFakeEventDeviceConnected) withObject:nil afterDelay:10.0];
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
} else {
|
|
107
|
+
RCTLog(@"In AurusPaymentTerminal.initialize, already initialized.");
|
|
43
108
|
}
|
|
44
109
|
}
|
|
45
110
|
|
|
46
|
-
|
|
111
|
+
- (void)notifyFakeEventDeviceConnected {
|
|
112
|
+
RCTLog(@"In AurusPaymentTerminal.notifyFakeEventDeviceConnected, app was reloaded after being previously connected. This should only happen in DEV. Attempting to work-around this scenario.");
|
|
113
|
+
NSDictionary *userInfo = @{ USER_INFO_CODE : @(EventDeviceConnected) };
|
|
114
|
+
[[NSNotificationCenter defaultCenter] postNotificationName:AURUS_NOTIFICATION object:nil userInfo:userInfo];
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
RCT_EXPORT_METHOD(OnAESDKProcessRequest:(NSString *)WithRequest) {
|
|
47
118
|
RCTLog(@"%@", [NSString stringWithFormat:@"In AurusPaymentTerminal.OnAESDKProcessRequest, calling OnAESDKProcessRequest:%@", WithRequest]);
|
|
48
|
-
if (!self.aesdk || !self.aesdk.setAESDKDelegateRefference) {
|
|
49
|
-
[self initialize];
|
|
50
|
-
}
|
|
51
119
|
[self.aesdk OnAESDKProcessRequest:WithRequest];
|
|
52
120
|
}
|
|
53
121
|
|
|
@@ -58,15 +126,32 @@ RCT_EXPORT_METHOD(OnAESDKProcessRequest:(NSString*)WithRequest) {
|
|
|
58
126
|
[self sendEventWithName:native_onAESDKResponse body:withResponse];
|
|
59
127
|
}
|
|
60
128
|
|
|
129
|
+
- (void)onAESDKLogResponse:(NSString *)withResponse {
|
|
130
|
+
// RCTLog(@"AurusLogging: %@", withResponse);
|
|
131
|
+
[self sendEventWithName:native_onAESDKLogResponse body:withResponse];
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
- (void)onNotificationReceived:(NSNotification *)notification {
|
|
135
|
+
RCTLog(@"%@", [NSString stringWithFormat:@"In AurusPaymentTerminal.onNotificationReceived, calling sendEventWithName:%@ body:%@", native_onNotificationReceived, notification.userInfo]);
|
|
136
|
+
if (!firstTimeConnectionComplete && notification && notification.userInfo) {
|
|
137
|
+
int code = [notification.userInfo[USER_INFO_CODE] intValue];
|
|
138
|
+
if (code == EventDeviceConnected) {
|
|
139
|
+
firstTimeConnectionComplete = YES;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
[self sendEventWithName:native_onNotificationReceived body:notification.userInfo];
|
|
143
|
+
}
|
|
144
|
+
|
|
61
145
|
#pragma mark - RCTEventEmitter implementation
|
|
62
146
|
|
|
63
147
|
- (NSArray<NSString *> *)supportedEvents {
|
|
64
148
|
return @[
|
|
65
|
-
native_onAESDKResponse
|
|
149
|
+
native_onAESDKResponse,
|
|
150
|
+
native_onNotificationReceived,
|
|
151
|
+
native_onAESDKLogResponse
|
|
66
152
|
];
|
|
67
153
|
}
|
|
68
154
|
|
|
69
155
|
@end
|
|
70
156
|
|
|
71
157
|
//AurusPaymentTerminal
|
|
72
|
-
|