@lightspeed/online-payments-sdk 1.2.3 → 1.3.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.
@@ -26,7 +26,14 @@ var EventBroadcaster = /** @class */ (function () {
26
26
  };
27
27
  }
28
28
  EventBroadcaster.prototype.convertInternalEventToExternal = function (event) {
29
- return { status: event.status, code: event.code };
29
+ var externalEvent = {
30
+ status: event.status,
31
+ code: event.code,
32
+ };
33
+ if ('paymentMethodType' in event && event.paymentMethodType) {
34
+ externalEvent.paymentMethodType = event.paymentMethodType;
35
+ }
36
+ return externalEvent;
30
37
  };
31
38
  EventBroadcaster.prototype.registerMiddleware = function (middleware) {
32
39
  this.middleware.push(middleware);
@@ -220,24 +220,34 @@ function setupChangeEventHandler(paymentElement, eventBroadcaster, addressElemen
220
220
  var paymentComplete = false;
221
221
  var addressComplete = !addressElement; // If no address element, consider it complete
222
222
  var previousComplete = null;
223
- var emitChangeEventIfNeeded = function () {
223
+ var previousMethodType;
224
+ var emitChangeEvent = function () {
224
225
  var complete = paymentComplete && addressComplete;
225
- if (complete !== previousComplete) {
226
- previousComplete = complete;
227
- eventBroadcaster.publish({
228
- status: 'Change',
229
- code: complete ? 'Complete' : 'Incomplete',
230
- });
231
- }
226
+ previousComplete = complete;
227
+ eventBroadcaster.publish(__assign({ status: 'Change', code: complete ? 'Complete' : 'Incomplete' }, (previousMethodType && {
228
+ paymentMethodType: previousMethodType,
229
+ })));
232
230
  };
233
231
  paymentElement.on('change', function (event) {
232
+ var _a;
234
233
  paymentComplete = event.complete;
235
- emitChangeEventIfNeeded();
234
+ var completenessChanged = (paymentComplete && addressComplete) !== previousComplete;
235
+ var methodType = (_a = event.value) === null || _a === void 0 ? void 0 : _a.type;
236
+ var methodTypeChanged = methodType !== undefined && methodType !== previousMethodType;
237
+ if (methodType !== undefined) {
238
+ previousMethodType = methodType;
239
+ }
240
+ if (completenessChanged || methodTypeChanged) {
241
+ emitChangeEvent();
242
+ }
236
243
  });
237
244
  if (addressElement) {
238
245
  addressElement.on('change', function (event) {
239
246
  addressComplete = event.complete;
240
- emitChangeEventIfNeeded();
247
+ var complete = paymentComplete && addressComplete;
248
+ if (complete !== previousComplete) {
249
+ emitChangeEvent();
250
+ }
241
251
  });
242
252
  }
243
253
  }
@@ -3,4 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SDK_VERSION = void 0;
4
4
  // This file is auto-generated during the build process
5
5
  // DO NOT EDIT MANUALLY - Version is extracted from package.json
6
- exports.SDK_VERSION = '1.2.3';
6
+ exports.SDK_VERSION = '1.3.0';
@@ -22,6 +22,7 @@ export type ReadyEvent = BaseEvent & {
22
22
  export type ChangeEvent = BaseEvent & {
23
23
  status: 'Change';
24
24
  code: 'Complete' | 'Incomplete';
25
+ paymentMethodType?: string;
25
26
  };
26
27
  export type ErrorResultEvent = BaseEvent & {
27
28
  code: SupportedErrorCodes;
@@ -23,7 +23,14 @@ var EventBroadcaster = /** @class */ (function () {
23
23
  };
24
24
  }
25
25
  EventBroadcaster.prototype.convertInternalEventToExternal = function (event) {
26
- return { status: event.status, code: event.code };
26
+ var externalEvent = {
27
+ status: event.status,
28
+ code: event.code,
29
+ };
30
+ if ('paymentMethodType' in event && event.paymentMethodType) {
31
+ externalEvent.paymentMethodType = event.paymentMethodType;
32
+ }
33
+ return externalEvent;
27
34
  };
28
35
  EventBroadcaster.prototype.registerMiddleware = function (middleware) {
29
36
  this.middleware.push(middleware);
@@ -208,24 +208,34 @@ export function setupChangeEventHandler(paymentElement, eventBroadcaster, addres
208
208
  var paymentComplete = false;
209
209
  var addressComplete = !addressElement; // If no address element, consider it complete
210
210
  var previousComplete = null;
211
- var emitChangeEventIfNeeded = function () {
211
+ var previousMethodType;
212
+ var emitChangeEvent = function () {
212
213
  var complete = paymentComplete && addressComplete;
213
- if (complete !== previousComplete) {
214
- previousComplete = complete;
215
- eventBroadcaster.publish({
216
- status: 'Change',
217
- code: complete ? 'Complete' : 'Incomplete',
218
- });
219
- }
214
+ previousComplete = complete;
215
+ eventBroadcaster.publish(__assign({ status: 'Change', code: complete ? 'Complete' : 'Incomplete' }, (previousMethodType && {
216
+ paymentMethodType: previousMethodType,
217
+ })));
220
218
  };
221
219
  paymentElement.on('change', function (event) {
220
+ var _a;
222
221
  paymentComplete = event.complete;
223
- emitChangeEventIfNeeded();
222
+ var completenessChanged = (paymentComplete && addressComplete) !== previousComplete;
223
+ var methodType = (_a = event.value) === null || _a === void 0 ? void 0 : _a.type;
224
+ var methodTypeChanged = methodType !== undefined && methodType !== previousMethodType;
225
+ if (methodType !== undefined) {
226
+ previousMethodType = methodType;
227
+ }
228
+ if (completenessChanged || methodTypeChanged) {
229
+ emitChangeEvent();
230
+ }
224
231
  });
225
232
  if (addressElement) {
226
233
  addressElement.on('change', function (event) {
227
234
  addressComplete = event.complete;
228
- emitChangeEventIfNeeded();
235
+ var complete = paymentComplete && addressComplete;
236
+ if (complete !== previousComplete) {
237
+ emitChangeEvent();
238
+ }
229
239
  });
230
240
  }
231
241
  }
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "1.2.3";
1
+ export declare const SDK_VERSION = "1.3.0";
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // This file is auto-generated during the build process
2
2
  // DO NOT EDIT MANUALLY - Version is extracted from package.json
3
- export var SDK_VERSION = '1.2.3';
3
+ export var SDK_VERSION = '1.3.0';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lightspeed/online-payments-sdk",
3
- "version": "1.2.3",
3
+ "version": "1.3.0",
4
4
  "description": "Process online-payments with Lightspeed Payments",
5
5
  "author": "Lightspeed Commerce Inc.",
6
6
  "license": "SEE LICENSE IN LICENSE.md",