@aptos-scp/scp-component-rn-device-services 0.0.2 → 0.1.0

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 (50) hide show
  1. package/ios/SCPRNDeviceServices/AurusPaymentTerminal.m +41 -10
  2. package/lib/AurusDevice/AurusDevice.d.ts +94 -0
  3. package/lib/AurusDevice/{AurusPaymentDevice.js → AurusDevice.js} +226 -97
  4. package/lib/AurusDevice/AurusDevice.js.map +1 -0
  5. package/lib/AurusDevice/constants.d.ts +1 -0
  6. package/lib/AurusDevice/constants.js +1 -0
  7. package/lib/AurusDevice/constants.js.map +1 -1
  8. package/lib/AurusDevice/index.d.ts +1 -1
  9. package/lib/AurusDevice/index.js +1 -1
  10. package/lib/AurusDevice/index.js.map +1 -1
  11. package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.js +59 -41
  12. package/lib/AurusDevice/sdk-interface/AurusPaymentSupport.js.map +1 -1
  13. package/lib/AurusDevice/sdk-interface/Barcode.d.ts +15 -0
  14. package/lib/AurusDevice/sdk-interface/Barcode.js +9 -0
  15. package/lib/AurusDevice/sdk-interface/Barcode.js.map +1 -0
  16. package/lib/AurusDevice/sdk-interface/index.d.ts +1 -0
  17. package/lib/PaymentDeviceFactory.d.ts +3 -3
  18. package/lib/PaymentDeviceFactory.js +14 -20
  19. package/lib/PaymentDeviceFactory.js.map +1 -1
  20. package/lib/PaymentDeviceService.d.ts +12 -12
  21. package/lib/PaymentDeviceService.js +99 -70
  22. package/lib/PaymentDeviceService.js.map +1 -1
  23. package/lib/ScannerDeviceFactory.d.ts +11 -0
  24. package/lib/ScannerDeviceFactory.js +27 -0
  25. package/lib/ScannerDeviceFactory.js.map +1 -0
  26. package/lib/ScannerDeviceService.d.ts +13 -0
  27. package/lib/ScannerDeviceService.js +110 -0
  28. package/lib/ScannerDeviceService.js.map +1 -0
  29. package/lib/configs/inversify/inversify.config.d.ts +3 -0
  30. package/lib/configs/inversify/inversify.config.js +18 -0
  31. package/lib/configs/inversify/inversify.config.js.map +1 -0
  32. package/lib/constants/constants.d.ts +4 -3
  33. package/lib/constants/constants.js +5 -4
  34. package/lib/constants/constants.js.map +1 -1
  35. package/lib/index.d.ts +1 -0
  36. package/lib/index.js +1 -0
  37. package/lib/index.js.map +1 -1
  38. package/lib/interfaces/index.d.ts +1 -0
  39. package/lib/interfaces/payment/IPayment.d.ts +20 -16
  40. package/lib/interfaces/scanner/IScanner.d.ts +29 -0
  41. package/lib/interfaces/scanner/IScanner.js +3 -0
  42. package/lib/interfaces/scanner/IScanner.js.map +1 -0
  43. package/lib/interfaces/scanner/index.d.ts +1 -0
  44. package/lib/interfaces/scanner/index.js +3 -0
  45. package/lib/interfaces/scanner/index.js.map +1 -0
  46. package/package.json +1 -1
  47. package/types/es-symbol/index.d.ts +4 -0
  48. package/types/react-native-xml2js/index.d.ts +5 -0
  49. package/lib/AurusDevice/AurusPaymentDevice.d.ts +0 -77
  50. package/lib/AurusDevice/AurusPaymentDevice.js.map +0 -1
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
12
  return new (P || (P = Promise))(function (resolve, reject) {
4
13
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -9,111 +18,179 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
18
  };
10
19
  Object.defineProperty(exports, "__esModule", { value: true });
11
20
  const scp_component_logging_1 = require("@aptos-scp/scp-component-logging");
21
+ const inversify_1 = require("inversify");
12
22
  const react_native_1 = require("react-native");
13
- //look into: does this need to be more explicit?
14
23
  const _1 = require("../");
15
- const sdk_interface_1 = require("./sdk-interface");
16
24
  const constants_1 = require("./constants");
25
+ const sdk_interface_1 = require("./sdk-interface");
17
26
  const xml2js = require("react-native-xml2js");
18
- const logger = scp_component_logging_1.LogManager.getLogger("com.aptos.deviceservices.AurusPaymentService");
27
+ const logger = scp_component_logging_1.LogManager.getLogger("com.aptos.deviceservices.AurusDevice");
19
28
  const native_onAESDKResponse = react_native_1.NativeModules.AurusPaymentTerminal.native_onAESDKResponse;
20
- class AurusPaymentDevice {
29
+ const native_onBarcodeDataReceived = react_native_1.NativeModules.AurusPaymentTerminal.native_onBarcodeDataReceived;
30
+ let AurusDevice = class AurusDevice {
21
31
  /**
22
32
  * To avoid pushing native component awareness onto the rest of the app, the native objects
23
33
  * are created in the constructor, which only accepts JavaScript parameters.
24
- *
25
- * @param {EventEmitter} deviceNotificationEmitter
26
34
  */
27
- constructor(paymentConfig, deviceNotificationEmitter) {
35
+ constructor() {
36
+ this._initialized = false;
37
+ this._scannerEnabled = true; //todo: once enable/disable is implemented in client, defaulting to false.
38
+ const entryMessage = logger.traceEntry("constructor");
28
39
  this._devicePaymentTerminal = react_native_1.NativeModules.AurusPaymentTerminal;
29
40
  this._nativeEventEmitter = new react_native_1.NativeEventEmitter(react_native_1.NativeModules.AurusPaymentTerminal);
30
- this._deviceNotificationEmitter = deviceNotificationEmitter;
31
- sdk_interface_1.AurusSupport.authRequest = Object.assign({}, paymentConfig);
32
- sdk_interface_1.AurusSupport.productionEnv = paymentConfig.productionEnv;
41
+ logger.traceExit(entryMessage);
33
42
  }
34
- // See doc comments on interface.
35
- initialize() {
43
+ configurePaymentDevice(emitter, config) {
36
44
  return __awaiter(this, void 0, void 0, function* () {
37
- logger.traceEntry("initialize");
38
- this._devicePaymentTerminal.initialize();
45
+ const entryMessage = logger.traceEntry("configurePaymentDevice", emitter, config);
46
+ this._paymentEmitter = emitter;
47
+ this._paymentConfig = config;
48
+ sdk_interface_1.AurusSupport.authRequest = Object.assign({}, this._paymentConfig);
49
+ sdk_interface_1.AurusSupport.productionEnv = this._paymentConfig.productionEnv;
50
+ logger.traceExit(entryMessage);
39
51
  });
40
52
  }
41
- // See doc comments on interface.
42
- start() {
53
+ configureScannerDevice(emitter, config) {
43
54
  return __awaiter(this, void 0, void 0, function* () {
44
- logger.traceEntry("start");
55
+ const entryMessage = logger.traceEntry("configureScannerDevice", emitter, config);
56
+ this._scannerEmitter = emitter;
57
+ this._scannerConfig = config;
58
+ logger.traceExit(entryMessage);
59
+ });
60
+ }
61
+ startPaymentDevice() {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ const entryMessage = logger.traceEntry("startPaymentDevice");
45
64
  let context = {};
46
- this._deviceSubscriptions = [
65
+ this._paymentSubscriptions = [
47
66
  this._nativeEventEmitter.addListener(native_onAESDKResponse, this.onAESDKResponse.bind(this), context)
48
67
  ];
68
+ this.initializeNative();
69
+ logger.traceExit(entryMessage);
70
+ });
71
+ }
72
+ startScannerDevice() {
73
+ return __awaiter(this, void 0, void 0, function* () {
74
+ const entryMessage = logger.traceEntry("startScannerDevice");
75
+ let context = {};
76
+ this._scannerSubscriptions = [
77
+ this._nativeEventEmitter.addListener(native_onBarcodeDataReceived, this.onBarcodeDataReceived.bind(this), context)
78
+ ];
79
+ this.initializeNative();
80
+ logger.traceExit(entryMessage);
49
81
  });
50
82
  }
51
83
  captureSale(authRequest) {
52
84
  return __awaiter(this, void 0, void 0, function* () {
53
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.Sale }));
85
+ const entryMessage = logger.traceEntry("captureSale", authRequest);
86
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.Sale }));
87
+ logger.traceExit(entryMessage);
54
88
  });
55
89
  }
56
90
  captureRefund(authRequest) {
57
91
  return __awaiter(this, void 0, void 0, function* () {
58
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.Refund }));
92
+ const entryMessage = logger.traceEntry("captureRefund", authRequest);
93
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.Refund }));
94
+ logger.traceExit(entryMessage);
95
+ });
96
+ }
97
+ enableScannerDevice() {
98
+ return __awaiter(this, void 0, void 0, function* () {
99
+ const entryMessage = logger.traceEntry("enableScannerDevice");
100
+ this._scannerEnabled = true;
101
+ logger.traceExit(entryMessage);
102
+ });
103
+ }
104
+ disableScannerDevice() {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ const entryMessage = logger.traceEntry("disableScannerDevice");
107
+ this._scannerEnabled = false;
108
+ logger.traceExit(entryMessage);
59
109
  });
60
110
  }
61
111
  giftcardActivate(authRequest) {
62
112
  return __awaiter(this, void 0, void 0, function* () {
63
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardActivate }));
113
+ const entryMessage = logger.traceEntry("giftcardActivate", authRequest);
114
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardActivate }));
115
+ logger.traceExit(entryMessage);
64
116
  });
65
117
  }
66
118
  giftcardBalance(authRequest) {
67
119
  return __awaiter(this, void 0, void 0, function* () {
68
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardBalanceInquiry }));
120
+ const entryMessage = logger.traceEntry("giftcardBalance", authRequest);
121
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardBalanceInquiry }));
122
+ logger.traceExit(entryMessage);
69
123
  });
70
124
  }
71
125
  giftcardIssue(authRequest) {
72
126
  return __awaiter(this, void 0, void 0, function* () {
73
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardIssue }));
127
+ const entryMessage = logger.traceEntry("giftcardIssue", authRequest);
128
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardIssue }));
129
+ logger.traceExit(entryMessage);
74
130
  });
75
131
  }
76
132
  giftcardRedeem(authRequest) {
77
133
  return __awaiter(this, void 0, void 0, function* () {
78
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardRedeem }));
134
+ const entryMessage = logger.traceEntry("giftcardRedeem", authRequest);
135
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.GiftCardRedeem }));
136
+ logger.traceExit(entryMessage);
79
137
  });
80
138
  }
81
139
  void(authRequest) {
82
140
  return __awaiter(this, void 0, void 0, function* () {
83
- return this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.Void }));
141
+ const entryMessage = logger.traceEntry("void", authRequest);
142
+ this.authorize(Object.assign({}, authRequest, { requestType: _1.PaymentRequestType.Void }));
143
+ logger.traceExit(entryMessage);
144
+ });
145
+ }
146
+ stopPaymentDevice() {
147
+ return __awaiter(this, void 0, void 0, function* () {
148
+ const entryMessage = logger.traceEntry("stopPaymentDevice");
149
+ if (this._paymentSubscriptions) {
150
+ while (this._paymentSubscriptions.length > 0) {
151
+ this._paymentSubscriptions.pop().remove();
152
+ }
153
+ }
154
+ logger.traceExit(entryMessage);
84
155
  });
85
156
  }
86
- // See doc comments on interface.
87
- stop() {
157
+ stopScannerDevice() {
88
158
  return __awaiter(this, void 0, void 0, function* () {
89
- logger.traceEntry("stop");
90
- if (this._deviceSubscriptions) {
91
- while (this._deviceSubscriptions.length > 0) {
92
- this._deviceSubscriptions.pop().remove();
159
+ const entryMessage = logger.traceEntry("stopScannerDevice");
160
+ if (this._scannerSubscriptions) {
161
+ while (this._scannerSubscriptions.length > 0) {
162
+ this._scannerSubscriptions.pop().remove();
93
163
  }
94
164
  }
165
+ logger.traceExit(entryMessage);
166
+ });
167
+ }
168
+ tearDownPaymentDevice() {
169
+ return __awaiter(this, void 0, void 0, function* () {
170
+ const entryMessage = logger.traceEntry("tearDownPaymentDevice");
171
+ logger.traceExit(entryMessage);
95
172
  });
96
173
  }
97
- // See doc comments on interface.
98
- tearDown() {
174
+ tearDownScannerDevice() {
99
175
  return __awaiter(this, void 0, void 0, function* () {
100
- logger.traceEntry("tearDown");
176
+ const entryMessage = logger.traceEntry("tearDownScannerDevice");
177
+ logger.traceExit(entryMessage);
101
178
  });
102
179
  }
103
180
  processTimeout() {
104
181
  return __awaiter(this, void 0, void 0, function* () {
105
- logger.traceEntry("processTimeout: " + sdk_interface_1.AurusSupport.authRequest.timeout);
182
+ const entryMessage = logger.traceEntry("processTimeout");
106
183
  sdk_interface_1.AurusSupport.authResponse.responseCode = _1.ResponseCodes.Timeout;
107
184
  sdk_interface_1.AurusSupport.authResponse.status = "TIMEOUT WAITING FOR RESPONSE";
108
- this._deviceNotificationEmitter.emit(_1.EventResponseTypes.Authorization, sdk_interface_1.AurusSupport.authResponse);
185
+ this._paymentEmitter.emit(_1.EventResponseTypes.Authorization, sdk_interface_1.AurusSupport.authResponse);
109
186
  //Send cancel to aurus
110
187
  this.sendCancelTranRequest();
188
+ logger.traceExit(entryMessage);
111
189
  });
112
190
  }
113
- // Private methods
114
191
  authorize(authRequest) {
115
192
  return __awaiter(this, void 0, void 0, function* () {
116
- logger.traceEntry("authorize", authRequest);
193
+ const entryMessage = logger.traceEntry("authorize", authRequest);
117
194
  sdk_interface_1.AurusSupport.authRequest = authRequest;
118
195
  sdk_interface_1.AurusSupport.authResponse = Object.assign({}, authRequest);
119
196
  if (!this._initInProgress && !this._registrationInProgress) {
@@ -133,40 +210,24 @@ class AurusPaymentDevice {
133
210
  sdk_interface_1.AurusSupport.authResponse.status = "DEVICE REGISTRATION IN PROGRESS";
134
211
  }
135
212
  logger.debug(() => `Payment not initialized. Sending response: ${JSON.stringify(sdk_interface_1.AurusSupport.authResponse)}`);
136
- this.sendResponse(sdk_interface_1.AurusSupport.authResponse, _1.EventResponseTypes.Authorization);
213
+ this._paymentEmitter.emit(_1.EventResponseTypes.Authorization, sdk_interface_1.AurusSupport.authResponse);
137
214
  }
138
- return;
215
+ logger.traceExit(entryMessage);
139
216
  });
140
217
  }
141
- sendResponse(authResponse, event) {
142
- //TODO: look into cleaning up.
143
- if (event) {
144
- switch (authResponse.requestType) {
145
- case (_1.PaymentRequestType.GiftCardBalanceInquiry, _1.PaymentRequestType.GiftCardIssue,
146
- _1.PaymentRequestType.GiftCardRedeem):
147
- logger.trace("SENDING GIFT CARD RESPONSE");
148
- let giftCardResponse;
149
- giftCardResponse = Object.assign({}, authResponse);
150
- this._deviceNotificationEmitter.emit(event, giftCardResponse);
151
- break;
152
- default:
153
- logger.trace("SENDING BANK CARD RESPONSE");
154
- let bankCardResponse;
155
- bankCardResponse = Object.assign({}, authResponse);
156
- this._deviceNotificationEmitter.emit(event, bankCardResponse);
157
- break;
218
+ initializeNative() {
219
+ return __awaiter(this, void 0, void 0, function* () {
220
+ const entryMessage = logger.traceEntry("initializeNative");
221
+ if (!this._initialized) {
222
+ this._devicePaymentTerminal.initialize();
223
+ this._initialized = true;
158
224
  }
159
- }
160
- else {
161
- this._deviceNotificationEmitter.emit(event, authResponse);
162
- }
225
+ logger.traceExit(entryMessage);
226
+ });
163
227
  }
164
228
  /**
165
229
  * This method handles events published by the native components. This is an adapter between the native and JavaScript
166
230
  * components for asynchronous events from the native layer.
167
- *
168
- * @param args
169
- * @return {any}
170
231
  */
171
232
  onAESDKResponse(...args) {
172
233
  const entryMessage = logger.traceEntry("onAESDKResponse", args);
@@ -180,98 +241,106 @@ class AurusPaymentDevice {
180
241
  if (returnServer & constants_1.ResponseType.PaymentStatus) {
181
242
  // If returnServer has PaymentStatus, send IPaymentStatus to POS.
182
243
  logger.debug(() => `In onAESDKResponse, publishing paymentStatus: ${JSON.stringify(sdk_interface_1.AurusSupport.paymentStatus)}`);
183
- this.sendResponse(sdk_interface_1.AurusSupport.paymentStatus, _1.EventResponseTypes.PaymentDeviceStatus);
244
+ this._paymentEmitter.emit(_1.EventResponseTypes.PaymentDeviceStatus, sdk_interface_1.AurusSupport.paymentStatus);
184
245
  sdk_interface_1.AurusSupport.paymentStatus = { deviceAvailable: false };
185
246
  }
186
247
  if (returnServer & constants_1.ResponseType.AuthResponse) {
187
248
  // If returnServer has AuthResponse, send IAuthorizationResponse to POS.
188
249
  logger.debug(() => `In onAESDKResponse, publishing authResponse: ${JSON.stringify(sdk_interface_1.AurusSupport.authResponse)}`);
189
- this.sendResponse(sdk_interface_1.AurusSupport.authResponse, _1.EventResponseTypes.Authorization);
250
+ this._paymentEmitter.emit(_1.EventResponseTypes.Authorization, sdk_interface_1.AurusSupport.authResponse);
190
251
  }
191
252
  });
192
253
  }
193
254
  else {
194
255
  throw logger.throwing(new Error("Empty event received. withResponse data is missing"), entryMessage);
195
256
  }
257
+ logger.traceExit(entryMessage);
196
258
  }
197
259
  sendCancelTranRequest() {
198
- logger.traceEntry("sendCancelTranRequest");
260
+ const entryMessage = logger.traceEntry("sendCancelTranRequest");
199
261
  sdk_interface_1.AurusSupport.requestType = constants_1.RequestTypes.CancelTransaction;
200
262
  let xmlreq = sdk_interface_1.AurusSupport.createCancelTranRequest();
201
263
  this._devicePaymentTerminal.OnAESDKProcessRequest(xmlreq);
264
+ logger.traceExit(entryMessage);
202
265
  }
203
266
  sendCancelLastTranRequest() {
204
- logger.traceEntry("sendCancelTranRequest");
267
+ const entryMessage = logger.traceEntry("sendCancelLastTranRequest");
205
268
  sdk_interface_1.AurusSupport.requestType = constants_1.RequestTypes.CancelTransaction;
206
269
  let xmlreq = sdk_interface_1.AurusSupport.createCancelLastTranRequest();
207
270
  this._devicePaymentTerminal.OnAESDKProcessRequest(xmlreq);
271
+ logger.traceExit(entryMessage);
208
272
  }
209
273
  sendTransRequest(getCardBinResp) {
210
- logger.traceEntry("sendTransRequest", getCardBinResp);
274
+ const entryMessage = logger.traceEntry("sendTransRequest", getCardBinResp);
211
275
  sdk_interface_1.AurusSupport.requestType = constants_1.RequestTypes.Transaction;
212
276
  let xmlreq = sdk_interface_1.AurusSupport.createCardTranRequest(getCardBinResp);
213
277
  this._devicePaymentTerminal.OnAESDKProcessRequest(xmlreq);
278
+ logger.traceExit(entryMessage);
214
279
  }
215
280
  sendCardTransRequest() {
216
- logger.traceEntry("sendCardTransRequest");
281
+ const entryMessage = logger.traceEntry("sendCardTransRequest");
217
282
  sdk_interface_1.AurusSupport.requestType = constants_1.RequestTypes.Transaction;
218
283
  let xmlreq = sdk_interface_1.AurusSupport.createCardTranRequest();
219
284
  this._devicePaymentTerminal.OnAESDKProcessRequest(xmlreq);
285
+ logger.traceExit(entryMessage);
220
286
  }
221
287
  /**
222
288
  * Sends a GetCardBinRequest to request card data from teh device
223
289
  * @param authRequest
224
290
  */
225
291
  sendGetCardBin(authRequest) {
226
- logger.traceEntry("sendGetCardBin", authRequest);
292
+ const entryMessage = logger.traceEntry("sendGetCardBin", authRequest);
227
293
  sdk_interface_1.AurusSupport.requestType = constants_1.RequestTypes.GetCardBin;
228
294
  let xmlreq = sdk_interface_1.AurusSupport.createGetCardBinRequest();
229
295
  this._devicePaymentTerminal.OnAESDKProcessRequest(xmlreq);
296
+ logger.traceExit(entryMessage);
230
297
  }
231
298
  /**
232
299
  * Sends an AESDKRegistrationRequest to register the device
233
300
  * @param authRequest
234
301
  */
235
302
  sendAESDKRegistration(authRequest) {
236
- logger.traceEntry("sendAESDKRegistration", authRequest);
303
+ const entryMessage = logger.traceEntry("sendAESDKRegistration", authRequest);
237
304
  sdk_interface_1.AurusSupport.requestType = constants_1.RequestTypes.Registration;
238
305
  let xmlreq = sdk_interface_1.AurusSupport.createAESDKRegistrationRequest();
239
306
  this._registrationInProgress = true;
240
307
  this._devicePaymentTerminal.OnAESDKProcessRequest(xmlreq);
308
+ logger.traceExit(entryMessage);
241
309
  }
242
310
  handleAESDKResponse(xml) {
243
311
  return __awaiter(this, void 0, void 0, function* () {
244
312
  const entryMessage = logger.traceEntry("handleAESDKResponse", xml);
245
313
  let returnServer = constants_1.ResponseType.None;
246
314
  let xmlResponse = yield this.convertXmlToJs(xml);
247
- if (xmlResponse === xml) {
248
- returnServer = this.processResponse(xmlResponse);
315
+ if (!xmlResponse) {
316
+ returnServer = this.processResponse(xml);
249
317
  }
250
318
  else if (constants_1.AesdkResponseTypes.Registration in xmlResponse) {
251
- returnServer = this.processAESDKRegistration(xmlResponse.AESDKRegistrationResponse);
319
+ returnServer = this.processAESDKRegistration(xmlResponse[constants_1.AesdkResponseTypes.Registration]);
252
320
  }
253
321
  else if (constants_1.AesdkResponseTypes.GetCardBin in xmlResponse) {
254
- returnServer = this.processGetCardBin(xmlResponse.GetCardBINResponse);
322
+ returnServer = this.processGetCardBin(xmlResponse[constants_1.AesdkResponseTypes.GetCardBin]);
255
323
  }
256
324
  else if (constants_1.AesdkResponseTypes.Transaction in xmlResponse) {
257
- returnServer = this.processTrans(xmlResponse.TransResponse);
325
+ returnServer = this.processTrans(xmlResponse[constants_1.AesdkResponseTypes.Transaction]);
258
326
  }
259
327
  else if (constants_1.AesdkResponseTypes.AESDK in xmlResponse) {
260
- returnServer = this.processAESDK(xmlResponse.AESDKResponse);
328
+ returnServer = this.processAESDK(xmlResponse[constants_1.AesdkResponseTypes.AESDK]);
261
329
  }
262
330
  else if (constants_1.AesdkResponseTypes.CancelTransaction in xmlResponse) {
263
- returnServer = this.processCancelTrans(xmlResponse.CancelTransResponse);
331
+ returnServer = this.processCancelTrans(xmlResponse[constants_1.AesdkResponseTypes.CancelTransaction]);
264
332
  }
265
333
  return logger.traceExit(entryMessage, returnServer);
266
334
  });
267
335
  }
268
336
  convertXmlToJs(xml) {
269
- return new Promise(resolve => {
337
+ const entryMessage = logger.traceEntry("convertXmlToJs", xml);
338
+ return logger.traceExit(entryMessage, new Promise(resolve => {
270
339
  let parser = new xml2js.Parser();
271
340
  parser.parseString(xml, (err, results) => {
272
- resolve(results || xml);
341
+ resolve(results);
273
342
  });
274
- });
343
+ }));
275
344
  }
276
345
  processResponse(response) {
277
346
  const entryMessage = logger.traceEntry("processResponse", response);
@@ -293,7 +362,7 @@ class AurusPaymentDevice {
293
362
  return logger.traceExit(entryMessage, responseType);
294
363
  }
295
364
  processTrans(response) {
296
- const entryMessage = logger.traceEntry("processTrans", JSON.stringify(response));
365
+ const entryMessage = logger.traceEntry("processTrans", response);
297
366
  let responseType = constants_1.ResponseType.AuthResponse;
298
367
  let tranDetails = response.TransDetailsData[0].TransDetailData[0];
299
368
  sdk_interface_1.AurusSupport.authResponse.responseCode = this.mapAurusResponseCode(tranDetails.ResponseCode.toString());
@@ -310,7 +379,7 @@ class AurusPaymentDevice {
310
379
  return logger.traceExit(entryMessage, responseType);
311
380
  }
312
381
  processGetCardBin(response) {
313
- const entryMessage = logger.traceEntry("processGetCardBin", JSON.stringify(response));
382
+ const entryMessage = logger.traceEntry("processGetCardBin", response);
314
383
  let responseType = constants_1.ResponseType.None;
315
384
  if (sdk_interface_1.AurusSupport.requestType === constants_1.RequestTypes.GetCardBin) {
316
385
  if (response.ResponseCode.toString() === constants_1.ResponseValues.Approved) {
@@ -331,7 +400,7 @@ class AurusPaymentDevice {
331
400
  return logger.traceExit(entryMessage, responseType);
332
401
  }
333
402
  processCancelTrans(response) {
334
- const entryMessage = logger.traceEntry("processCancelTrans", JSON.stringify(response));
403
+ const entryMessage = logger.traceEntry("processCancelTrans", response);
335
404
  let responseType = constants_1.ResponseType.None;
336
405
  if (response.ResponseCode.toString() === constants_1.ResponseValues.Approved) {
337
406
  logger.debug(() => `processCancelTrans success: ${sdk_interface_1.AurusSupport.authResponse.posReference}`);
@@ -344,7 +413,7 @@ class AurusPaymentDevice {
344
413
  return logger.traceExit(entryMessage, responseType);
345
414
  }
346
415
  processAESDKRegistration(response) {
347
- const entryMessage = logger.traceEntry("processAESDKRegistration", JSON.stringify(response));
416
+ const entryMessage = logger.traceEntry("processAESDKRegistration", response);
348
417
  let responseType = constants_1.ResponseType.None;
349
418
  if (sdk_interface_1.AurusSupport.requestType === constants_1.RequestTypes.GetCardBin) {
350
419
  responseType |= constants_1.ResponseType.AuthResponse;
@@ -364,7 +433,7 @@ class AurusPaymentDevice {
364
433
  return logger.traceExit(entryMessage, responseType);
365
434
  }
366
435
  processAESDK(response) {
367
- const entryMessage = logger.traceEntry("processAESDK", JSON.stringify(response));
436
+ const entryMessage = logger.traceEntry("processAESDK", response);
368
437
  let responseType = constants_1.ResponseType.None;
369
438
  if (sdk_interface_1.AurusSupport.requestType === constants_1.RequestTypes.GetCardBin) {
370
439
  responseType |= constants_1.ResponseType.AuthResponse;
@@ -381,6 +450,7 @@ class AurusPaymentDevice {
381
450
  return logger.traceExit(entryMessage, responseType);
382
451
  }
383
452
  mapAurusResponseCode(responseCode) {
453
+ const entryMessage = logger.traceEntry("mapAurusResponseCode", responseCode);
384
454
  let retVal = _1.ResponseCodes.Error;
385
455
  switch (responseCode) {
386
456
  case constants_1.ResponseValues.Approved:
@@ -393,26 +463,28 @@ class AurusPaymentDevice {
393
463
  retVal = _1.ResponseCodes.Decline;
394
464
  break;
395
465
  }
396
- return retVal;
466
+ return logger.traceExit(entryMessage, retVal);
397
467
  }
398
468
  mapAurusCardType(aurusCardType) {
469
+ const entryMessage = logger.traceEntry("mapAurusCardType", aurusCardType);
399
470
  let retVal = constants_1.cardTypeMap[aurusCardType];
400
471
  if (!retVal) {
401
472
  logger.debug(`mapAurusCardType: Unknown cardType: ${aurusCardType}`);
402
473
  retVal = _1.CardType.Unknown;
403
474
  }
404
- return retVal;
475
+ return logger.traceExit(entryMessage, retVal);
405
476
  }
406
477
  mapAurusTenderType(aurusCardType) {
478
+ const entryMessage = logger.traceEntry("mapAurusTenderType", aurusCardType);
407
479
  let retVal = constants_1.tenderTypeMap[aurusCardType];
408
480
  if (!retVal) {
409
481
  logger.debug(`mapAurusTenderType: Unknown cardType: ${aurusCardType}`);
410
482
  retVal = _1.TenderType.Unknown;
411
483
  }
412
- return retVal;
484
+ return logger.traceExit(entryMessage, retVal);
413
485
  }
414
486
  parseEMVData(data) {
415
- logger.traceEntry("parseEMVData", data);
487
+ const entryMessage = logger.traceEntry("parseEMVData", data);
416
488
  let emvData = {};
417
489
  try {
418
490
  //we have data in emvData field - parse into response.emvData format "key1~value1[FS]key2~value2"
@@ -428,10 +500,10 @@ class AurusPaymentDevice {
428
500
  logger.error(e);
429
501
  }
430
502
  ;
431
- return emvData;
503
+ return logger.traceExit(entryMessage, emvData);
432
504
  }
433
505
  parseEMVField(field, emvData) {
434
- //logger.traceEntry("parseEMVField", field);
506
+ const entryMessage = logger.traceEntry("parseEMVField", field, emvData);
435
507
  try {
436
508
  switch (field[0].toString().toUpperCase()) {
437
509
  case "AID":
@@ -466,8 +538,65 @@ class AurusPaymentDevice {
466
538
  logger.error(e);
467
539
  }
468
540
  ;
469
- return emvData;
541
+ return logger.traceExit(entryMessage, emvData);
542
+ }
543
+ /**
544
+ * This method handles events published by the native components. This is an adapter between the native and JavaScript
545
+ * components for asynchronous events from the native layer.
546
+ *
547
+ * @param args
548
+ * @return {any}
549
+ */
550
+ onBarcodeDataReceived(...args) {
551
+ const entryMessage = logger.traceEntry("onBarcodeDataReceived", args);
552
+ if (args.length >= 1 && args[0]) {
553
+ let notificationObject = args[0];
554
+ logger.debug(() => `In onBarcodeDataReceived, notificationObject: ${JSON.stringify(notificationObject)}`);
555
+ if (!this._scannerEnabled) {
556
+ logger.debug(() => "Scanning is not enabled, not processing the scan.");
557
+ // todo: make a sound to indicate the scan failed due to not being enabled.
558
+ }
559
+ else {
560
+ this.handleBarcodeDataReceived(notificationObject).then((scanData) => {
561
+ if (scanData) {
562
+ this._scannerEmitter.emit(_1.EventResponseTypes.Scan, scanData);
563
+ }
564
+ });
565
+ }
566
+ }
567
+ else {
568
+ throw logger.throwing(new Error("Empty event received. notificationObject data is missing"), entryMessage);
569
+ }
570
+ logger.traceExit(entryMessage);
571
+ }
572
+ handleBarcodeDataReceived(xml) {
573
+ return __awaiter(this, void 0, void 0, function* () {
574
+ const entryMessage = logger.traceEntry("handleBarcodeDataReceived", xml);
575
+ let scanDataNotification;
576
+ let xmlResponse = yield this.convertXmlToJs(xml);
577
+ if (!xmlResponse) {
578
+ logger.warn(() => `In handleBarcodeDataReceived, unable to convert to JSON: ${xml}`);
579
+ }
580
+ else if (constants_1.AesdkResponseTypes.Barcode in xmlResponse) {
581
+ scanDataNotification = this.processBarcodeData(xmlResponse[constants_1.AesdkResponseTypes.Barcode]);
582
+ }
583
+ else {
584
+ logger.warn(() => `In handleBarcodeDataReceived, unexpected root element received, ignoring xml: ${xml}`);
585
+ }
586
+ return logger.traceExit(entryMessage, scanDataNotification);
587
+ });
588
+ }
589
+ processBarcodeData(barcode) {
590
+ const entryMessage = logger.traceEntry("processBarcodeData", barcode);
591
+ return logger.traceExit(entryMessage, {
592
+ data: barcode.Barcode,
593
+ encoding: barcode.BarcodeType
594
+ });
470
595
  }
471
- }
472
- exports.AurusPaymentDevice = AurusPaymentDevice;
473
- //# sourceMappingURL=AurusPaymentDevice.js.map
596
+ };
597
+ AurusDevice = __decorate([
598
+ inversify_1.injectable(),
599
+ __metadata("design:paramtypes", [])
600
+ ], AurusDevice);
601
+ exports.AurusDevice = AurusDevice;
602
+ //# sourceMappingURL=AurusDevice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AurusDevice.js","sourceRoot":"","sources":["../../src/AurusDevice/AurusDevice.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ export declare const InitializationResponses: {
31
31
  };
32
32
  export declare const AesdkResponseTypes: {
33
33
  AESDK: string;
34
+ Barcode: string;
34
35
  CancelTransaction: string;
35
36
  GetCardBin: string;
36
37
  Registration: string;
@@ -34,6 +34,7 @@ exports.InitializationResponses = {
34
34
  };
35
35
  exports.AesdkResponseTypes = {
36
36
  AESDK: "AESDKResponse",
37
+ Barcode: "BarcodeData",
37
38
  CancelTransaction: "CancelTransactionResponse",
38
39
  GetCardBin: "GetCardBINResponse",
39
40
  Registration: "AESDKRegistrationResponse",