@aptos-scp/scp-component-rn-device-services 0.0.4-hm → 0.1.1

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.
Files changed (147) hide show
  1. package/android/src/main/java/com/aptos/scp/paymentterminal/adyen/AdyenPaymentTerminal.java +0 -69
  2. package/ios/AurusEnterpriseSDK.framework/AurusEnterpriseSDK +0 -0
  3. package/ios/AurusEnterpriseSDK.framework/Headers/AurusEnterpriseSDK.h +95 -97
  4. package/ios/SCPRNDeviceServices/AdyenPaymentTerminal.h +0 -19
  5. package/ios/SCPRNDeviceServices/AdyenPaymentTerminal.m +22 -457
  6. package/ios/SCPRNDeviceServices/AurusPaymentTerminal.m +29 -83
  7. package/ios/SCPRNDeviceServices/VendorPaymentTerminal.m +1 -1
  8. package/ios/SCPRNDeviceServices.xcodeproj/project.pbxproj +0 -56
  9. package/lib/AurusDevice/AurusDevice.d.ts +26 -34
  10. package/lib/AurusDevice/AurusDevice.js +251 -379
  11. package/lib/AurusDevice/AurusDevice.js.map +1 -1
  12. package/lib/AurusDevice/constants.d.ts +33 -84
  13. package/lib/AurusDevice/constants.js +37 -114
  14. package/lib/AurusDevice/constants.js.map +1 -1
  15. package/lib/AurusDevice/sdk-interface/AESDKRegistration.d.ts +9 -10
  16. package/lib/AurusDevice/sdk-interface/AESDKRegistration.js +6 -0
  17. package/lib/AurusDevice/sdk-interface/AESDKRegistration.js.map +1 -1
  18. package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.d.ts +5 -5
  19. package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.js +70 -88
  20. package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.js.map +1 -1
  21. package/lib/AurusDevice/sdk-interface/Barcode.d.ts +4 -5
  22. package/lib/AurusDevice/sdk-interface/Barcode.js +6 -0
  23. package/lib/AurusDevice/sdk-interface/Barcode.js.map +1 -1
  24. package/lib/AurusDevice/sdk-interface/CancelTransaction.d.ts +10 -11
  25. package/lib/AurusDevice/sdk-interface/CancelTransaction.js +6 -0
  26. package/lib/AurusDevice/sdk-interface/CancelTransaction.js.map +1 -1
  27. package/lib/AurusDevice/sdk-interface/GetCardBinRequest.d.ts +12 -14
  28. package/lib/AurusDevice/sdk-interface/PLCCApplication.d.ts +11 -12
  29. package/lib/AurusDevice/sdk-interface/PLCCApplication.js +6 -0
  30. package/lib/AurusDevice/sdk-interface/PLCCApplication.js.map +1 -1
  31. package/lib/AurusDevice/sdk-interface/TransactionRequest.d.ts +46 -42
  32. package/lib/AurusDevice/sdk-interface/TransactionRequest.js +6 -0
  33. package/lib/AurusDevice/sdk-interface/TransactionRequest.js.map +1 -1
  34. package/lib/AurusDevice/sdk-interface/index.d.ts +0 -2
  35. package/lib/PaymentDeviceFactory.d.ts +5 -5
  36. package/lib/PaymentDeviceFactory.js +4 -4
  37. package/lib/PaymentDeviceFactory.js.map +1 -1
  38. package/lib/PaymentDeviceService.d.ts +3 -4
  39. package/lib/PaymentDeviceService.js +33 -47
  40. package/lib/PaymentDeviceService.js.map +1 -1
  41. package/lib/ScannerDeviceFactory.d.ts +5 -5
  42. package/lib/ScannerDeviceFactory.js +5 -5
  43. package/lib/ScannerDeviceFactory.js.map +1 -1
  44. package/lib/ScannerDeviceService.d.ts +2 -2
  45. package/lib/ScannerDeviceService.js +6 -6
  46. package/lib/ScannerDeviceService.js.map +1 -1
  47. package/lib/configs/inversify/inversify.config.js +7 -4
  48. package/lib/configs/inversify/inversify.config.js.map +1 -1
  49. package/lib/constants/constants.d.ts +38 -61
  50. package/lib/constants/constants.js +41 -62
  51. package/lib/constants/constants.js.map +1 -1
  52. package/lib/interfaces/IDeviceStatus.d.ts +0 -1
  53. package/lib/interfaces/payment/IPayment.d.ts +9 -4
  54. package/lib/interfaces/payment/messages/requests.d.ts +3 -2
  55. package/lib/interfaces/payment/messages/responses.d.ts +6 -13
  56. package/lib/interfaces/scanner/IScanner.d.ts +8 -2
  57. package/package.json +9 -11
  58. package/types/es-symbol/index.d.ts +4 -0
  59. package/types/money-works/index.d.ts +49 -0
  60. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit +0 -0
  61. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/Info.plist +0 -0
  62. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/VersionInfo.plist +0 -0
  63. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.2.mom +0 -0
  64. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.3.mom +0 -0
  65. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.4.mom +0 -0
  66. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.4.omo +0 -0
  67. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.10.mom +0 -0
  68. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.8.6.mom +0 -0
  69. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit v1.9.mom +0 -0
  70. package/ios/Frameworks/Adyen/AdyenToolkit.framework/AdyenToolkit.bundle/adyentoolkit.momd/adyentoolkit.mom +0 -0
  71. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAccountData.h +0 -26
  72. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAdditionalDataRequest.h +0 -38
  73. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAmount.h +0 -16
  74. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYAppData.h +0 -26
  75. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYBalance.h +0 -13
  76. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYCashTransactionRequest.h +0 -35
  77. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYConstants.h +0 -688
  78. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYCurrency.h +0 -33
  79. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDevice.h +0 -308
  80. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDeviceData.h +0 -52
  81. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDeviceManagerDelegate.h +0 -66
  82. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDeviceRegistry.h +0 -125
  83. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYDynamicCurrencyConversionData.h +0 -22
  84. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYErrors.h +0 -153
  85. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCard.h +0 -41
  86. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardBalanceRequest.h +0 -50
  87. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardBalanceResponse.h +0 -38
  88. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardLoadRequest.h +0 -78
  89. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardLoadRequestDelegate.h +0 -25
  90. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardLoadResponse.h +0 -31
  91. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardMask.h +0 -31
  92. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYGiftCardRequest.h +0 -13
  93. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYLocationManager.h +0 -14
  94. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYLoginDelegate.h +0 -80
  95. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYPrintReceiptRequest.h +0 -57
  96. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYReceipt.h +0 -33
  97. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYReceiptLine.h +0 -92
  98. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYReferralRequest.h +0 -16
  99. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYRefundData.h +0 -54
  100. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYServerSynchronization.h +0 -18
  101. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYSignatureRequest.h +0 -117
  102. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYSpecialTransactionRequest.h +0 -63
  103. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYToneGenerator.h +0 -45
  104. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionData.h +0 -416
  105. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionDetails.h +0 -45
  106. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionProcessorDelegate.h +0 -279
  107. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYTransactionRequest.h +0 -108
  108. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/ADYUIKit.h +0 -30
  109. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/Adyen.h +0 -591
  110. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/AdyenToolkit-umbrella.h +0 -59
  111. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/AdyenToolkit.h +0 -79
  112. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/NSData+ADY.h +0 -31
  113. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/NSString+ADY.h +0 -19
  114. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Headers/adylog.h +0 -176
  115. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Info.plist +0 -0
  116. package/ios/Frameworks/Adyen/AdyenToolkit.framework/Modules/module.modulemap +0 -6
  117. package/ios/SCPRNDeviceServices/Adyen/AdyenConstants.h +0 -40
  118. package/ios/SCPRNDeviceServices/Adyen/AdyenConstants.m +0 -28
  119. package/ios/SCPRNDeviceServices/Adyen/AdyenDelegate.h +0 -23
  120. package/ios/SCPRNDeviceServices/Adyen/AdyenDelegate.m +0 -15
  121. package/ios/SCPRNDeviceServices/Adyen/AdyenDeviceManagerDelegate.h +0 -19
  122. package/ios/SCPRNDeviceServices/Adyen/AdyenDeviceManagerDelegate.m +0 -31
  123. package/ios/SCPRNDeviceServices/Adyen/AdyenLoginDelegate.h +0 -19
  124. package/ios/SCPRNDeviceServices/Adyen/AdyenLoginDelegate.m +0 -26
  125. package/ios/SCPRNDeviceServices/Adyen/AdyenTransactionProcessorDelegate.h +0 -26
  126. package/ios/SCPRNDeviceServices/Adyen/AdyenTransactionProcessorDelegate.m +0 -148
  127. package/lib/AdyenDevice/AdyenDevice.d.ts +0 -56
  128. package/lib/AdyenDevice/AdyenDevice.js +0 -349
  129. package/lib/AdyenDevice/AdyenDevice.js.map +0 -1
  130. package/lib/AdyenDevice/constants.d.ts +0 -12
  131. package/lib/AdyenDevice/constants.js +0 -228
  132. package/lib/AdyenDevice/constants.js.map +0 -1
  133. package/lib/AdyenDevice/index.d.ts +0 -1
  134. package/lib/AdyenDevice/index.js +0 -7
  135. package/lib/AdyenDevice/index.js.map +0 -1
  136. package/lib/AdyenDevice/interfaces.d.ts +0 -175
  137. package/lib/AdyenDevice/interfaces.js +0 -3
  138. package/lib/AdyenDevice/interfaces.js.map +0 -1
  139. package/lib/AurusDevice/sdk-interface/ByPassScreen.d.ts +0 -25
  140. package/lib/AurusDevice/sdk-interface/ByPassScreen.js +0 -9
  141. package/lib/AurusDevice/sdk-interface/ByPassScreen.js.map +0 -1
  142. package/lib/AurusDevice/sdk-interface/Upgrade.d.ts +0 -23
  143. package/lib/AurusDevice/sdk-interface/Upgrade.js +0 -9
  144. package/lib/AurusDevice/sdk-interface/Upgrade.js.map +0 -1
  145. package/lib/AurusDevice/sdk-interface/XmlElementString.d.ts +0 -3
  146. package/lib/AurusDevice/sdk-interface/XmlElementString.js +0 -3
  147. package/lib/AurusDevice/sdk-interface/XmlElementString.js.map +0 -1
@@ -12,12 +12,8 @@
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
+ NSString* const native_onBarcodeDataReceived = @"onBarcodeDataReceived";
16
+ NSString* const native_onBarcodeDataReceived_name = @"native_onBarcodeDataReceived";
21
17
 
22
18
  @interface AurusPaymentTerminal ()
23
19
 
@@ -29,78 +25,43 @@ NSString* const USER_INFO_CODE = @"CODE";
29
25
 
30
26
  @implementation AurusPaymentTerminal
31
27
 
32
- - (void)dealloc {
33
- [[NSNotificationCenter defaultCenter] removeObserver:self name:AURUS_NOTIFICATION object:nil];
34
- observer = nil;
35
- }
36
-
37
28
  RCT_EXPORT_MODULE();
38
29
 
39
30
  - (NSDictionary *)constantsToExport {
40
31
  return @{
41
32
  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
- }
33
+ native_onBarcodeDataReceived_name: native_onBarcodeDataReceived
76
34
  };
77
35
  }
78
36
 
79
37
  #pragma mark - Exported to JavaScript methods
80
38
 
81
- static BOOL firstTimeConnectionComplete = NO;
82
- static id observer;
39
+ static BOOL configurationComplete = NO;
83
40
 
84
41
  RCT_EXPORT_METHOD(initialize) {
85
42
  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
43
  RCTLog(@"In AurusPaymentTerminal.initialize, creating AurusEnterpriseSDK.");
95
44
  self.aesdk = [[AurusEnterpriseSDK alloc] init];
96
45
  self.aesdk.setAESDKDelegateRefference = self;
97
- [self.aesdk OnAESDKLogProcessRequest];
98
-
99
- if (firstTimeConnectionComplete) {
46
+
47
+ static BOOL observersAdded = NO;
48
+ if (!observersAdded) {
49
+ RCTLog(@"In AurusPaymentTerminal.initialize, adding IPC_BARCODE_DATA observer.");
50
+ [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onBarcodeDataReceived:) name:@"IPC_BARCODE_DATA" object:nil];
51
+ observersAdded = YES;
52
+ } else {
53
+ // prevents multiple observers from being added when the app is reloaded
54
+ RCTLog(@"In AurusPaymentTerminal.initialize, app was reloaded and observers are already added.");
55
+ }
56
+
57
+ if (!configurationComplete) {
58
+ RCTLog(@"In AurusPaymentTerminal.initialize, EMV configuration should be starting.");
59
+ } else {
100
60
  // 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.");
61
+ RCTLog(@"In AurusPaymentTerminal.initialize, app was reloaded and EMV is already configured.");
102
62
  dispatch_async(dispatch_get_main_queue(), ^{
103
- [self performSelector:@selector(notifyFakeEventDeviceConnected) withObject:nil afterDelay:10.0];
63
+ // sending on main thread to prevent UI timing issues
64
+ [self onAESDKResponse:@"DEVICE_ALREADY_CONFIGURED"];
104
65
  });
105
66
  }
106
67
  } else {
@@ -108,13 +69,7 @@ RCT_EXPORT_METHOD(initialize) {
108
69
  }
109
70
  }
110
71
 
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) {
72
+ RCT_EXPORT_METHOD(OnAESDKProcessRequest:(NSString*)WithRequest) {
118
73
  RCTLog(@"%@", [NSString stringWithFormat:@"In AurusPaymentTerminal.OnAESDKProcessRequest, calling OnAESDKProcessRequest:%@", WithRequest]);
119
74
  [self.aesdk OnAESDKProcessRequest:WithRequest];
120
75
  }
@@ -123,23 +78,15 @@ RCT_EXPORT_METHOD(OnAESDKProcessRequest:(NSString *)WithRequest) {
123
78
 
124
79
  - (void)onAESDKResponse:(NSString *)withResponse {
125
80
  RCTLog(@"%@", [NSString stringWithFormat:@"In AurusPaymentTerminal.onAESDKResponse, calling sendEventWithName:%@ body:%@", native_onAESDKResponse, withResponse]);
81
+ if ([withResponse isEqualToString:@"EMV_CONFIGURATION_COMPLETED"] || [withResponse isEqualToString:@"DEVICE_ALREADY_CONFIGURED"]) {
82
+ configurationComplete = YES;
83
+ }
126
84
  [self sendEventWithName:native_onAESDKResponse body:withResponse];
127
85
  }
128
86
 
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];
87
+ - (void)onBarcodeDataReceived:(NSNotification *)notification {
88
+ RCTLog(@"%@", [NSString stringWithFormat:@"In AurusPaymentTerminal.onBarcodeDataReceived, calling sendEventWithName:%@ body:%@", native_onBarcodeDataReceived, notification.object]);
89
+ [self sendEventWithName:native_onBarcodeDataReceived body:notification.object];
143
90
  }
144
91
 
145
92
  #pragma mark - RCTEventEmitter implementation
@@ -147,8 +94,7 @@ RCT_EXPORT_METHOD(OnAESDKProcessRequest:(NSString *)WithRequest) {
147
94
  - (NSArray<NSString *> *)supportedEvents {
148
95
  return @[
149
96
  native_onAESDKResponse,
150
- native_onNotificationReceived,
151
- native_onAESDKLogResponse
97
+ native_onBarcodeDataReceived
152
98
  ];
153
99
  }
154
100
 
@@ -48,7 +48,7 @@
48
48
  - (void)sendEventWithName:(NSString *)eventName body:(id)body {
49
49
  // Only send events if anyone is listening
50
50
  if (self.hasListeners) {
51
- [super sendEventWithName:eventName body:body];
51
+ [super sendEventWithName: eventName body: body];
52
52
  }
53
53
  }
54
54
 
@@ -10,17 +10,6 @@
10
10
  3856B53A1F9FD52F008E4649 /* AurusPaymentTerminal.m in Sources */ = {isa = PBXBuildFile; fileRef = 3856B5391F9FD52F008E4649 /* AurusPaymentTerminal.m */; };
11
11
  38AB31641F99465F006E2214 /* VendorPaymentTerminal.m in Sources */ = {isa = PBXBuildFile; fileRef = 38AB315F1F99465F006E2214 /* VendorPaymentTerminal.m */; };
12
12
  38AB31661F994A34006E2214 /* VendorPaymentTerminal.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 38AB315E1F99465F006E2214 /* VendorPaymentTerminal.h */; };
13
- 797E6427205853AD00C1B784 /* AdyenToolkit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 797E641C205853AD00C1B784 /* AdyenToolkit.framework */; };
14
- 797E64292058569800C1B784 /* ExternalAccessory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BAE345D31FB0F86B00EF7D2B /* ExternalAccessory.framework */; };
15
- 797E642B205856A500C1B784 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 797E642A205856A500C1B784 /* CoreData.framework */; };
16
- 797E642C205856B200C1B784 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BAE345D21FB0F86300EF7D2B /* SystemConfiguration.framework */; };
17
- 797E642D205856BD00C1B784 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BAE345C41FB0F7FE00EF7D2B /* AVFoundation.framework */; };
18
- 797E642E205856C600C1B784 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BAE345D71FB0F88E00EF7D2B /* AudioToolbox.framework */; };
19
- 79B3C7BF2069720C00C38D53 /* AdyenConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 79B3C7B72069720C00C38D53 /* AdyenConstants.m */; };
20
- 79B3C7C02069720C00C38D53 /* AdyenLoginDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 79B3C7B92069720C00C38D53 /* AdyenLoginDelegate.m */; };
21
- 79B3C7C920698F3000C38D53 /* AdyenTransactionProcessorDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 79B3C7C520698F3000C38D53 /* AdyenTransactionProcessorDelegate.m */; };
22
- 79B3C7CA20698F3000C38D53 /* AdyenDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 79B3C7C620698F3000C38D53 /* AdyenDelegate.m */; };
23
- 79B3C7CF2069951F00C38D53 /* AdyenDeviceManagerDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 79B3C7CD2069951F00C38D53 /* AdyenDeviceManagerDelegate.m */; };
24
13
  BA2093D01FB650800062B51D /* AdyenPaymentTerminal.m in Sources */ = {isa = PBXBuildFile; fileRef = BA2093CE1FB650800062B51D /* AdyenPaymentTerminal.m */; };
25
14
  BA55ECD01FBB8BE600C82181 /* AurusEnterpriseSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA55ECCF1FBB8BE500C82181 /* AurusEnterpriseSDK.framework */; };
26
15
  /* End PBXBuildFile section */
@@ -119,18 +108,6 @@
119
108
  38AB315F1F99465F006E2214 /* VendorPaymentTerminal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VendorPaymentTerminal.m; sourceTree = "<group>"; };
120
109
  38AB31681F994ED0006E2214 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = "<group>"; };
121
110
  38AB31711F994F11006E2214 /* RCTLinkingManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RCTLinkingManager.h; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinkingManager.h"; sourceTree = "<group>"; };
122
- 797E641C205853AD00C1B784 /* AdyenToolkit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdyenToolkit.framework; path = Frameworks/Adyen/AdyenToolkit.framework; sourceTree = "<group>"; };
123
- 797E642A205856A500C1B784 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
124
- 79B3C7B62069720C00C38D53 /* AdyenConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdyenConstants.h; sourceTree = "<group>"; };
125
- 79B3C7B72069720C00C38D53 /* AdyenConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdyenConstants.m; sourceTree = "<group>"; };
126
- 79B3C7B82069720C00C38D53 /* AdyenLoginDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdyenLoginDelegate.h; sourceTree = "<group>"; };
127
- 79B3C7B92069720C00C38D53 /* AdyenLoginDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdyenLoginDelegate.m; sourceTree = "<group>"; };
128
- 79B3C7C520698F3000C38D53 /* AdyenTransactionProcessorDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdyenTransactionProcessorDelegate.m; sourceTree = "<group>"; };
129
- 79B3C7C620698F3000C38D53 /* AdyenDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdyenDelegate.m; sourceTree = "<group>"; };
130
- 79B3C7C720698F3000C38D53 /* AdyenTransactionProcessorDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdyenTransactionProcessorDelegate.h; sourceTree = "<group>"; };
131
- 79B3C7C820698F3000C38D53 /* AdyenDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdyenDelegate.h; sourceTree = "<group>"; };
132
- 79B3C7CD2069951F00C38D53 /* AdyenDeviceManagerDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdyenDeviceManagerDelegate.m; sourceTree = "<group>"; };
133
- 79B3C7CE2069951F00C38D53 /* AdyenDeviceManagerDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdyenDeviceManagerDelegate.h; sourceTree = "<group>"; };
134
111
  BA2093B31FB6394F0062B51D /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = "<group>"; };
135
112
  BA2093CE1FB650800062B51D /* AdyenPaymentTerminal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdyenPaymentTerminal.m; sourceTree = "<group>"; };
136
113
  BA2093CF1FB650800062B51D /* AdyenPaymentTerminal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdyenPaymentTerminal.h; sourceTree = "<group>"; };
@@ -167,12 +144,6 @@
167
144
  buildActionMask = 2147483647;
168
145
  files = (
169
146
  BA55ECD01FBB8BE600C82181 /* AurusEnterpriseSDK.framework in Frameworks */,
170
- 797E6427205853AD00C1B784 /* AdyenToolkit.framework in Frameworks */,
171
- 797E64292058569800C1B784 /* ExternalAccessory.framework in Frameworks */,
172
- 797E642B205856A500C1B784 /* CoreData.framework in Frameworks */,
173
- 797E642C205856B200C1B784 /* SystemConfiguration.framework in Frameworks */,
174
- 797E642D205856BD00C1B784 /* AVFoundation.framework in Frameworks */,
175
- 797E642E205856C600C1B784 /* AudioToolbox.framework in Frameworks */,
176
147
  );
177
148
  runOnlyForDeploymentPostprocessing = 0;
178
149
  };
@@ -199,7 +170,6 @@
199
170
  381C10051F9823AD00A849FA /* SCPRNDeviceServices */ = {
200
171
  isa = PBXGroup;
201
172
  children = (
202
- 79B3C7B52069720C00C38D53 /* Adyen */,
203
173
  BA2093CF1FB650800062B51D /* AdyenPaymentTerminal.h */,
204
174
  BA2093CE1FB650800062B51D /* AdyenPaymentTerminal.m */,
205
175
  3856B5361F9FD52F008E4649 /* AurusPaymentTerminal.h */,
@@ -213,8 +183,6 @@
213
183
  38AB31671F994ED0006E2214 /* Frameworks */ = {
214
184
  isa = PBXGroup;
215
185
  children = (
216
- 797E642A205856A500C1B784 /* CoreData.framework */,
217
- 797E641C205853AD00C1B784 /* AdyenToolkit.framework */,
218
186
  BA55ECCF1FBB8BE500C82181 /* AurusEnterpriseSDK.framework */,
219
187
  BA8F979B1FB6073800008C08 /* libsqlite3.0.tbd */,
220
188
  BA8F97991FB6073100008C08 /* libsqlite3.tbd */,
@@ -256,23 +224,6 @@
256
224
  name = Products;
257
225
  sourceTree = "<group>";
258
226
  };
259
- 79B3C7B52069720C00C38D53 /* Adyen */ = {
260
- isa = PBXGroup;
261
- children = (
262
- 79B3C7CE2069951F00C38D53 /* AdyenDeviceManagerDelegate.h */,
263
- 79B3C7CD2069951F00C38D53 /* AdyenDeviceManagerDelegate.m */,
264
- 79B3C7C820698F3000C38D53 /* AdyenDelegate.h */,
265
- 79B3C7C620698F3000C38D53 /* AdyenDelegate.m */,
266
- 79B3C7C720698F3000C38D53 /* AdyenTransactionProcessorDelegate.h */,
267
- 79B3C7C520698F3000C38D53 /* AdyenTransactionProcessorDelegate.m */,
268
- 79B3C7B62069720C00C38D53 /* AdyenConstants.h */,
269
- 79B3C7B72069720C00C38D53 /* AdyenConstants.m */,
270
- 79B3C7B82069720C00C38D53 /* AdyenLoginDelegate.h */,
271
- 79B3C7B92069720C00C38D53 /* AdyenLoginDelegate.m */,
272
- );
273
- path = Adyen;
274
- sourceTree = "<group>";
275
- };
276
227
  BA2093B41FB6394F0062B51D /* Products */ = {
277
228
  isa = PBXGroup;
278
229
  children = (
@@ -428,13 +379,8 @@
428
379
  isa = PBXSourcesBuildPhase;
429
380
  buildActionMask = 2147483647;
430
381
  files = (
431
- 79B3C7C920698F3000C38D53 /* AdyenTransactionProcessorDelegate.m in Sources */,
432
382
  3856B53A1F9FD52F008E4649 /* AurusPaymentTerminal.m in Sources */,
433
- 79B3C7C02069720C00C38D53 /* AdyenLoginDelegate.m in Sources */,
434
- 79B3C7BF2069720C00C38D53 /* AdyenConstants.m in Sources */,
435
383
  38AB31641F99465F006E2214 /* VendorPaymentTerminal.m in Sources */,
436
- 79B3C7CA20698F3000C38D53 /* AdyenDelegate.m in Sources */,
437
- 79B3C7CF2069951F00C38D53 /* AdyenDeviceManagerDelegate.m in Sources */,
438
384
  BA2093D01FB650800062B51D /* AdyenPaymentTerminal.m in Sources */,
439
385
  );
440
386
  runOnlyForDeploymentPostprocessing = 0;
@@ -554,7 +500,6 @@
554
500
  FRAMEWORK_SEARCH_PATHS = (
555
501
  "$(inherited)",
556
502
  "$(PROJECT_DIR)",
557
- "$(PROJECT_DIR)/Frameworks/Adyen",
558
503
  );
559
504
  OTHER_LDFLAGS = "-ObjC";
560
505
  PRODUCT_NAME = "$(TARGET_NAME)";
@@ -571,7 +516,6 @@
571
516
  FRAMEWORK_SEARCH_PATHS = (
572
517
  "$(inherited)",
573
518
  "$(PROJECT_DIR)",
574
- "$(PROJECT_DIR)/Frameworks/Adyen",
575
519
  );
576
520
  OTHER_LDFLAGS = "-ObjC";
577
521
  PRODUCT_NAME = "$(TARGET_NAME)";
@@ -1,42 +1,47 @@
1
1
  import { EventEmitter } from "fbemitter";
2
- import { IBankCardRequest, IGiftCardRequest } from "../";
2
+ import { IBankCardRequest, IGiftCardRequest, IPaymentDeviceConfiguration, IScannerDeviceConfiguration } from "../";
3
3
  import { IVendorPaymentDevice } from "../interfaces/payment/IPayment";
4
4
  import { IVendorScannerDevice } from "../interfaces/scanner/IScanner";
5
+ /**
6
+ * This is the interface that the native (bridge) class implements.
7
+ *
8
+ * Note: any changes to the native API must be reflected here and vice-versa.
9
+ */
10
+ export interface INativeAurusPaymentTerminal {
11
+ initialize(): void;
12
+ OnAESDKProcessRequest(WithRequest: string): void;
13
+ }
5
14
  export declare class AurusDevice implements IVendorPaymentDevice, IVendorScannerDevice {
6
15
  private _paymentConfig;
7
16
  private _scannerConfig;
8
17
  private _devicePaymentTerminal;
9
- private _nativeSubscriptions;
18
+ private _paymentSubscriptions;
19
+ private _scannerSubscriptions;
10
20
  private _paymentEmitter;
11
21
  private _scannerEmitter;
12
- private _initializeCalled;
13
- private _listenersAdded;
22
+ private _initInProgress;
23
+ private _initialized;
14
24
  private _nativeEventEmitter;
15
25
  private _registrationInProgress;
16
- private _waitingForDeviceConnected;
17
26
  private _scannerEnabled;
18
- private _paymentEnvironment;
19
- private _requestInProgress;
20
- private _requestQueue;
21
27
  /**
22
28
  * To avoid pushing native component awareness onto the rest of the app, the native objects
23
29
  * are created in the constructor, which only accepts JavaScript parameters.
24
30
  */
25
31
  constructor();
26
- configurePaymentDevice(emitter: EventEmitter, config: any): Promise<void>;
27
- configureScannerDevice(emitter: EventEmitter, config: any): Promise<void>;
32
+ configurePaymentDevice(emitter: EventEmitter, config: IPaymentDeviceConfiguration): Promise<void>;
33
+ configureScannerDevice(emitter: EventEmitter, config: IScannerDeviceConfiguration): Promise<void>;
28
34
  startPaymentDevice(): Promise<void>;
29
35
  startScannerDevice(): Promise<void>;
30
36
  captureSale(authRequest: IBankCardRequest): Promise<void>;
31
37
  captureRefund(authRequest: IBankCardRequest): Promise<void>;
32
- captureVoid(authRequest: IBankCardRequest): Promise<void>;
33
38
  enableScannerDevice(): Promise<void>;
34
39
  disableScannerDevice(): Promise<void>;
35
40
  giftcardActivate(authRequest: IGiftCardRequest): Promise<void>;
36
41
  giftcardBalance(authRequest: IGiftCardRequest): Promise<void>;
37
42
  giftcardIssue(authRequest: IGiftCardRequest): Promise<void>;
38
43
  giftcardRedeem(authRequest: IGiftCardRequest): Promise<void>;
39
- giftcardVoid(authRequest: IBankCardRequest): Promise<void>;
44
+ void(authRequest: IBankCardRequest): Promise<void>;
40
45
  stopPaymentDevice(): Promise<void>;
41
46
  stopScannerDevice(): Promise<void>;
42
47
  tearDownPaymentDevice(): Promise<void>;
@@ -44,7 +49,6 @@ export declare class AurusDevice implements IVendorPaymentDevice, IVendorScanner
44
49
  processTimeout(): Promise<void>;
45
50
  private authorize(authRequest);
46
51
  private initializeNative();
47
- private tearDownNative();
48
52
  /**
49
53
  * This method handles events published by the native components. This is an adapter between the native and JavaScript
50
54
  * components for asynchronous events from the native layer.
@@ -61,12 +65,12 @@ export declare class AurusDevice implements IVendorPaymentDevice, IVendorScanner
61
65
  private sendGetCardBin(authRequest);
62
66
  /**
63
67
  * Sends an AESDKRegistrationRequest to register the device
68
+ * @param authRequest
64
69
  */
65
- private sendAESDKRegistration();
66
- private sendUpgradeRequest(upgradeType);
67
- private sendByPassScreen(reason);
70
+ private sendAESDKRegistration(authRequest);
68
71
  private handleAESDKResponse(xml);
69
72
  private convertXmlToJs(xml);
73
+ private processResponse(response);
70
74
  private processTrans(response);
71
75
  private processGetCardBin(response);
72
76
  private processCancelTrans(response);
@@ -75,28 +79,16 @@ export declare class AurusDevice implements IVendorPaymentDevice, IVendorScanner
75
79
  private mapAurusResponseCode(responseCode);
76
80
  private mapAurusCardType(aurusCardType);
77
81
  private mapAurusTenderType(aurusCardType);
78
- private mapAurusEntryMethod(entryMethod);
79
- private mapAurusSignatureRequired(signatureReceiptFlag);
80
- private mapAurusPinCaptured(signatureReceiptFlag);
81
82
  private parseEMVData(data);
83
+ private parseEMVField(field, emvData);
82
84
  /**
83
85
  * This method handles events published by the native components. This is an adapter between the native and JavaScript
84
86
  * components for asynchronous events from the native layer.
87
+ *
88
+ * @param args
89
+ * @return {any}
85
90
  */
86
- private onNotificationReceived(...args);
87
- private handleNotificationEvent(userInfo);
88
- private handleBarcodeInformationEvent(xmlBarcodeInfo);
91
+ private onBarcodeDataReceived(...args);
92
+ private handleBarcodeDataReceived(xml);
89
93
  private processBarcodeData(barcode);
90
- private handleDeviceNotConnectedEvent();
91
- private handleDeviceConnectedEvent();
92
- private handleDeviceConfigurationStartedEvent();
93
- private handleDeviceConfigurationCompletedEvent();
94
- private handleDeviceConfigurationFailedEvent();
95
- private handleDeviceAlreadyConfiguredEvent();
96
- private handleDefaultEvent(userInfoCode);
97
- private emitPaymentStatus(deviceAvailable, statusCode);
98
- private emitAuthorizationResponse(responseCode, status);
99
- private onAESDKLogResponse(...args);
100
- private sendRequest(xmlRequest);
101
- private receiveResponse();
102
94
  }