@xsolla/payment-client-core 0.2.53 → 0.2.54

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.
@@ -0,0 +1,95 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { windowToken } from '../../window.token';
3
+ import { ErrorTags } from '../../exceptions-handling/errors/elk-error-types.enum';
4
+ import { Subject } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../exceptions-handling/elk/elk-logger.service";
7
+ export class ApplePaySdkService {
8
+ constructor(window, loggerService) {
9
+ this.window = window;
10
+ this.loggerService = loggerService;
11
+ this.sdkLoaded = false;
12
+ this.jsSdk = 'https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js';
13
+ this.sdkSuccessfulPayment = new Subject();
14
+ this.windowClosing = new Subject();
15
+ this.successPaymentType = 'successClose';
16
+ this.windowClosingType = 'windowclosing';
17
+ this.needToAddApplePayJs = !this.window.ApplePaySession;
18
+ }
19
+ get windowClosing$() {
20
+ return this.windowClosing.asObservable();
21
+ }
22
+ emitWindowClosing() {
23
+ return this.windowClosing.next();
24
+ }
25
+ addApplePaySdkJs() {
26
+ const isApplePayJsAdded = this.isAppleSdkExist();
27
+ if (!this.needToAddApplePayJs) {
28
+ if (isApplePayJsAdded) {
29
+ this.sdkLoaded = true;
30
+ }
31
+ return;
32
+ }
33
+ const listenApplePayPostMessages = () => {
34
+ this.applePaySdkPostMessagesListener = (event) => {
35
+ /* istanbul ignore if */
36
+ if (!event.origin.includes('apple')) {
37
+ return;
38
+ }
39
+ /* istanbul ignore if */
40
+ if (event.data.messageType === this.windowClosingType) {
41
+ this.emitWindowClosing();
42
+ }
43
+ /* istanbul ignore if */
44
+ if (event.data.messageType === this.successPaymentType) {
45
+ this.sdkSuccessfulPayment.next();
46
+ }
47
+ };
48
+ this.window.addEventListener('message', this.applePaySdkPostMessagesListener);
49
+ };
50
+ if (isApplePayJsAdded && this.window.ApplePaySession) {
51
+ this.sdkLoaded = true;
52
+ listenApplePayPostMessages();
53
+ return;
54
+ }
55
+ const firstScriptElement = this.window.document.getElementsByTagName('script')[0];
56
+ const script = this.window.document.createElement('script');
57
+ script.async = true;
58
+ script.crossOrigin = 'anonymous';
59
+ script.src = `${this.jsSdk}`;
60
+ firstScriptElement?.parentNode?.insertBefore(script, firstScriptElement);
61
+ script.onload = () => {
62
+ this.sdkLoaded = true;
63
+ listenApplePayPostMessages();
64
+ };
65
+ script.onerror = (error) => {
66
+ this.loggerService.log('Apple pay: script sdk loading error', [ErrorTags.APPLEPAY],
67
+ // @ts-expect-error error type
68
+ { error: error?.message ? error.toString() : JSON.stringify(error) });
69
+ console.error('Apple pay: script sdk loading error', error);
70
+ };
71
+ }
72
+ /* istanbul ignore next */
73
+ removeListeners() {
74
+ if (!this.applePaySdkPostMessagesListener) {
75
+ return;
76
+ }
77
+ this.window.removeEventListener('message', this.applePaySdkPostMessagesListener);
78
+ }
79
+ isAppleSdkExist() {
80
+ const scriptsElements = this.window.document.querySelectorAll('script');
81
+ return Array.from(scriptsElements).some((element) => element.src === this.jsSdk);
82
+ }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePaySdkService, deps: [{ token: windowToken }, { token: i1.ElkLoggerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
84
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePaySdkService, providedIn: 'root' }); }
85
+ }
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePaySdkService, decorators: [{
87
+ type: Injectable,
88
+ args: [{
89
+ providedIn: 'root',
90
+ }]
91
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
92
+ type: Inject,
93
+ args: [windowToken]
94
+ }] }, { type: i1.ElkLoggerService }] });
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGUtcGF5LXNkay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9hcHBsZS1wYXkvYXBwbGUtcGF5LXNkay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDbEYsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBSzNDLE1BQU0sT0FBTyxrQkFBa0I7SUFhN0IsWUFDd0MsTUFBc0IsRUFDM0MsYUFBK0I7UUFEVixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUMzQyxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFiM0MsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVSLFVBQUssR0FDcEIsZ0VBQWdFLENBQUM7UUFDbEQseUJBQW9CLEdBQWtCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDcEQsa0JBQWEsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3Qyx1QkFBa0IsR0FBRyxjQUFjLENBQUM7UUFDcEMsc0JBQWlCLEdBQUcsZUFBZSxDQUFDO1FBUW5ELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25D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Q0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQzdCLFNBQVMsRUFDVCxJQUFJLENBQUMsK0JBQStCLENBQ3JDLENBQUM7SUFDSixDQUFDO0lBRU8sZUFBZTtRQUNyQixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUNyQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUN4QyxDQUFDO0lBQ0osQ0FBQzs4R0E5R1Usa0JBQWtCLGtCQWNuQixXQUFXO2tIQWRWLGtCQUFrQixjQUZqQixNQUFNOzsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFlSSxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7IEV4dGVuZGVkV2luZG93IH0gZnJvbSAnLi4vLi4vZXh0ZW5kZWQtd2luZG93LmludGVyZmFjZSc7XG5pbXBvcnQgeyBFbGtMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lbGsvZWxrLWxvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEVycm9yVGFncyB9IGZyb20gJy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL2Vsay1lcnJvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFwcGxlUGF5U2RrU2VydmljZSB7XG4gIHB1YmxpYyByZWFkb25seSBuZWVkVG9BZGRBcHBsZVBheUpzOiBib29sZWFuO1xuICBwdWJsaWMgc2RrTG9hZGVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBqc1NkayA9XG4gICAgJ2h0dHBzOi8vYXBwbGVwYXkuY2RuLWFwcGxlLmNvbS9qc2FwaS8xLmxhdGVzdC9hcHBsZS1wYXktc2RrLmpzJztcbiAgcHJpdmF0ZSByZWFkb25seSBzZGtTdWNjZXNzZnVsUGF5bWVudDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgd2luZG93Q2xvc2luZzogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgc3VjY2Vzc1BheW1lbnRUeXBlID0gJ3N1Y2Nlc3NDbG9zZSc7XG4gIHByaXZhdGUgcmVhZG9ubHkgd2luZG93Q2xvc2luZ1R5cGUgPSAnd2luZG93Y2xvc2luZyc7XG5cbiAgcHJpdmF0ZSBhcHBsZVBheVNka1Bvc3RNZXNzYWdlc0xpc3RlbmVyITogKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHZvaWQ7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pIHByaXZhdGUgcmVhZG9ubHkgd2luZG93OiBFeHRlbmRlZFdpbmRvdyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlclNlcnZpY2U6IEVsa0xvZ2dlclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5uZWVkVG9BZGRBcHBsZVBheUpzID0gIXRoaXMud2luZG93LkFwcGxlUGF5U2Vzc2lvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgd2luZG93Q2xvc2luZyQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMud2luZG93Q2xvc2luZy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBlbWl0V2luZG93Q2xvc2luZygpOiB2b2lkIHtcbiAgICByZXR1cm4gdGhpcy53aW5kb3dDbG9zaW5nLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRBcHBsZVBheVNka0pzKCk6IHZvaWQge1xuICAgIGNvbnN0IGlzQXBwbGVQYXlKc0FkZGVkID0gdGhpcy5pc0FwcGxlU2RrRXhpc3QoKTtcblxuICAgIGlmICghdGhpcy5uZWVkVG9BZGRBcHBsZVBheUpzKSB7XG4gICAgICBpZiAoaXNBcHBsZVBheUpzQWRkZWQpIHtcbiAgICAgICAgdGhpcy5zZGtMb2FkZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbGlzdGVuQXBwbGVQYXlQb3N0TWVzc2FnZXMgPSAoKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLmFwcGxlUGF5U2RrUG9zdE1lc3NhZ2VzTGlzdGVuZXIgPSAoXG4gICAgICAgIGV2ZW50OiBNZXNzYWdlRXZlbnQ8eyBtZXNzYWdlVHlwZTogc3RyaW5nIH0+XG4gICAgICApID0+IHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmICghZXZlbnQub3JpZ2luLmluY2x1ZGVzKCdhcHBsZScpKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChldmVudC5kYXRhLm1lc3NhZ2VUeXBlID09PSB0aGlzLndpbmRvd0Nsb3NpbmdUeXBlKSB7XG4gICAgICAgICAgdGhpcy5lbWl0V2luZG93Q2xvc2luZygpO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChldmVudC5kYXRhLm1lc3NhZ2VUeXBlID09PSB0aGlzLnN1Y2Nlc3NQYXltZW50VHlwZSkge1xuICAgICAgICAgIHRoaXMuc2RrU3VjY2Vzc2Z1bFBheW1lbnQubmV4dCgpO1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICB0aGlzLndpbmRvdy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgICAnbWVzc2FnZScsXG4gICAgICAgIHRoaXMuYXBwbGVQYXlTZGtQb3N0TWVzc2FnZXNMaXN0ZW5lclxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgaWYgKGlzQXBwbGVQYXlKc0FkZGVkICYmIHRoaXMud2luZG93LkFwcGxlUGF5U2Vzc2lvbikge1xuICAgICAgdGhpcy5zZGtMb2FkZWQgPSB0cnVlO1xuICAgICAgbGlzdGVuQXBwbGVQYXlQb3N0TWVzc2FnZXMoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmaXJzdFNjcmlwdEVsZW1lbnQgPVxuICAgICAgdGhpcy53aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdO1xuICAgIGNvbnN0IHNjcmlwdCA9IHRoaXMud2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgIHNjcmlwdC5hc3luYyA9IHRydWU7XG4gICAgc2NyaXB0LmNyb3NzT3JpZ2luID0gJ2Fub255bW91cyc7XG4gICAgc2NyaXB0LnNyYyA9IGAke3RoaXMuanNTZGt9YDtcbiAgICBmaXJzdFNjcmlwdEVsZW1lbnQ/LnBhcmVudE5vZGU/Lmluc2VydEJlZm9yZShzY3JpcHQsIGZpcnN0U2NyaXB0RWxlbWVudCk7XG4gICAgc2NyaXB0Lm9ubG9hZCA9ICgpID0+IHtcbiAgICAgIHRoaXMuc2RrTG9hZGVkID0gdHJ1ZTtcbiAgICAgIGxpc3RlbkFwcGxlUGF5UG9zdE1lc3NhZ2VzKCk7XG4gICAgfTtcbiAgICBzY3JpcHQub25lcnJvciA9IChlcnJvcjogdW5rbm93bikgPT4ge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZyhcbiAgICAgICAgJ0FwcGxlIHBheTogc2NyaXB0IHNkayBsb2FkaW5nIGVycm9yJyxcbiAgICAgICAgW0Vycm9yVGFncy5BUFBMRVBBWV0sXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgZXJyb3IgdHlwZVxuICAgICAgICB7IGVycm9yOiBlcnJvcj8ubWVzc2FnZSA/IGVycm9yLnRvU3RyaW5nKCkgOiBKU09OLnN0cmluZ2lmeShlcnJvcikgfVxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0FwcGxlIHBheTogc2NyaXB0IHNkayBsb2FkaW5nIGVycm9yJywgZXJyb3IpO1xuICAgIH07XG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwdWJsaWMgcmVtb3ZlTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5hcHBsZVBheVNka1Bvc3RNZXNzYWdlc0xpc3RlbmVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMud2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXG4gICAgICAnbWVzc2FnZScsXG4gICAgICB0aGlzLmFwcGxlUGF5U2RrUG9zdE1lc3NhZ2VzTGlzdGVuZXJcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0FwcGxlU2RrRXhpc3QoKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc2NyaXB0c0VsZW1lbnRzID0gdGhpcy53aW5kb3cuZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnc2NyaXB0Jyk7XG5cbiAgICByZXR1cm4gQXJyYXkuZnJvbShzY3JpcHRzRWxlbWVudHMpLnNvbWUoXG4gICAgICAoZWxlbWVudCkgPT4gZWxlbWVudC5zcmMgPT09IHRoaXMuanNTZGtcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -10,12 +10,12 @@ import { applePayVersion } from './apple-pay.const';
10
10
  import { ApplePayErrors } from './apple-pay.errors.enum';
11
11
  import { ErrorTags } from '../../exceptions-handling/errors/elk-error-types.enum';
12
12
  import * as i0 from "@angular/core";
13
- import * as i1 from "../../user-agent/user-agent.service";
14
- import * as i2 from "../../payment/finance-details/summary/summary-finance-details-adapter.service";
15
- import * as i3 from "./session-handlers/braintree.handler";
16
- import * as i4 from "./session-handlers/checkout.handler";
17
- import * as i5 from "./params-builder/apple-pay-params-builder.service";
18
- import * as i6 from "../../exceptions-handling/elk/elk-logger.service";
13
+ import * as i1 from "../../payment/finance-details/summary/summary-finance-details-adapter.service";
14
+ import * as i2 from "./session-handlers/braintree.handler";
15
+ import * as i3 from "./session-handlers/checkout.handler";
16
+ import * as i4 from "./params-builder/apple-pay-params-builder.service";
17
+ import * as i5 from "../../exceptions-handling/elk/elk-logger.service";
18
+ import * as i6 from "./apple-pay-sdk.service";
19
19
  export class ApplePayService {
20
20
  get paymentParameters() {
21
21
  return this.applePayParams;
@@ -26,26 +26,43 @@ export class ApplePayService {
26
26
  get error$() {
27
27
  return this.error.asObservable();
28
28
  }
29
+ /* istanbul ignore next */
30
+ get applePayQrOpened$() {
31
+ return this.applePayQrOpened.asObservable();
32
+ }
33
+ /* istanbul ignore next */
34
+ get windowClosing$() {
35
+ return this.applePaySdkService.windowClosing$;
36
+ }
29
37
  get integrationType$() {
30
38
  return this.integrationType.asObservable();
31
39
  }
32
- constructor(window, userAgentService, summaryFinanceDetailsAdapterService, braintreeHandler, checkoutHandler, appleParamsBuilder, elkLoggerService) {
40
+ constructor(window, summaryFinanceDetailsAdapterService, braintreeHandler, checkoutHandler, appleParamsBuilder, elkLoggerService, applePaySdkService) {
33
41
  this.window = window;
34
- this.userAgentService = userAgentService;
35
42
  this.summaryFinanceDetailsAdapterService = summaryFinanceDetailsAdapterService;
36
43
  this.braintreeHandler = braintreeHandler;
37
44
  this.checkoutHandler = checkoutHandler;
38
45
  this.appleParamsBuilder = appleParamsBuilder;
39
46
  this.elkLoggerService = elkLoggerService;
47
+ this.applePaySdkService = applePaySdkService;
40
48
  this.payment = new Subject();
41
49
  this.error = new Subject();
42
50
  this.integrationType = new Subject();
51
+ this.applePayQrOpened = new Subject();
43
52
  this.paymentClient = null;
44
53
  this.applePayParams = null;
45
54
  this.order = null;
46
55
  this.api = this.loadBraintree();
47
56
  this.subscribeToHandlers();
48
57
  }
58
+ /* istanbul ignore next */
59
+ addApplePaySdkJs() {
60
+ this.applePaySdkService.addApplePaySdkJs();
61
+ }
62
+ /* istanbul ignore next */
63
+ removeListeners() {
64
+ this.applePaySdkService.removeListeners();
65
+ }
49
66
  setApplePayParams(data) {
50
67
  const paymentForm = data?.paymentForm;
51
68
  const formFields = paymentForm?.fields;
@@ -119,8 +136,9 @@ export class ApplePayService {
119
136
  }
120
137
  }
121
138
  get isDeviceCapable() {
122
- if (!this.userAgentService.isSafari)
123
- return false;
139
+ if (this.applePaySdkService.needToAddApplePayJs) {
140
+ return true;
141
+ }
124
142
  try {
125
143
  return Boolean(this.window.ApplePaySession?.supportsVersion(applePayVersion) &&
126
144
  this.window.ApplePaySession?.canMakePayments());
@@ -147,7 +165,8 @@ export class ApplePayService {
147
165
  console.error('Apple Pay: Unsupported acquirer:', parameters.acquirer);
148
166
  return;
149
167
  }
150
- sessionHandler.startSession(parameters, additionalParams);
168
+ sessionHandler.startSession(parameters, additionalParams, () => this.applePaySdkService.emitWindowClosing());
169
+ this.emitApplePayOpened();
151
170
  }
152
171
  getSessionHandler(acquirer) {
153
172
  switch (acquirer) {
@@ -167,10 +186,7 @@ export class ApplePayService {
167
186
  this.error.next(error);
168
187
  }
169
188
  emitIntegrationType() {
170
- const integration = this.isDeviceCapable
171
- ? ApplePayIntegrationType.native
172
- : ApplePayIntegrationType.redirect;
173
- this.integrationType.next(integration);
189
+ this.integrationType.next(this.getIntegrationType());
174
190
  }
175
191
  subscribeToHandlers() {
176
192
  const handlers = [this.braintreeHandler, this.checkoutHandler];
@@ -181,7 +197,19 @@ export class ApplePayService {
181
197
  });
182
198
  });
183
199
  }
184
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePayService, deps: [{ token: windowToken }, { token: i1.UserAgentService }, { token: i2.SummaryFinanceDetailsAdapterService }, { token: i3.BraintreeHandler }, { token: i4.CheckoutHandler }, { token: i5.ApplePayParamsBuilderService }, { token: i6.ElkLoggerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
200
+ getIntegrationType() {
201
+ /* istanbul ignore next */
202
+ return this.isDeviceCapable
203
+ ? ApplePayIntegrationType.native
204
+ : ApplePayIntegrationType.redirect;
205
+ }
206
+ emitApplePayOpened() {
207
+ if (this.getIntegrationType() === ApplePayIntegrationType.native &&
208
+ this.applePaySdkService.needToAddApplePayJs) {
209
+ this.applePayQrOpened.next();
210
+ }
211
+ }
212
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePayService, deps: [{ token: windowToken }, { token: i1.SummaryFinanceDetailsAdapterService }, { token: i2.BraintreeHandler }, { token: i3.CheckoutHandler }, { token: i4.ApplePayParamsBuilderService }, { token: i5.ElkLoggerService }, { token: i6.ApplePaySdkService }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
213
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePayService, providedIn: 'root' }); }
186
214
  }
187
215
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ApplePayService, decorators: [{
@@ -192,5 +220,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
192
220
  }], ctorParameters: () => [{ type: undefined, decorators: [{
193
221
  type: Inject,
194
222
  args: [windowToken]
195
- }] }, { type: i1.UserAgentService }, { type: i2.SummaryFinanceDetailsAdapterService }, { type: i3.BraintreeHandler }, { type: i4.CheckoutHandler }, { type: i5.ApplePayParamsBuilderService }, { type: i6.ElkLoggerService }] });
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGUtcGF5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9zZGstcGF5bWVudC1zeXN0ZW1zL2FwcGxlLXBheS9hcHBsZS1wYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzNDLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsb0JBQW9CLEdBQ3JCLE1BQU0sdURBQXVELENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUMxRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFJNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSw4QkFBOEIsQ0FBQztBQUV0QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBT3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7Ozs7Ozs7QUFNbEYsTUFBTSxPQUFPLGVBQWU7SUFlMUIsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxL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QUVPLFNBQVMsQ0FBQyxLQUFxQjtRQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlO1lBQ3RDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNO1lBQ2hDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUM7UUFFckMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixNQUFNLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFL0QsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzNCLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDM0QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBeE9VLGVBQWUsa0JBZ0NoQixXQUFXO2tIQWhDVixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQWlDSSxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcGxlUGF5LCBhcHBsZVBheSwgY2xpZW50IH0gZnJvbSAnYnJhaW50cmVlLXdlYic7XG5pbXBvcnQgeyBFeHRlbmRlZFdpbmRvdyB9IGZyb20gJy4uLy4uL2V4dGVuZGVkLXdpbmRvdy5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgcGF5U3RhdGlvbjRVcmwsXG4gIHNhbmRib3hQYXlTdGF0aW9uVXJsLFxufSBmcm9tICcuLi8uLi9wYXltZW50L2FjdGlvbnMvcmVkaXJlY3QvcGF5LXN0YXRpb240LXVybC5jb25zdCc7XG5pbXBvcnQgeyBhcHBsZVBheUlkIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9hY3Rpb25zL3JlZGlyZWN0L3BzNC1wYWdlcy9wYWdlcy1wYXltZW50LW1ldGhvZHMtaWQuY29uc3QnO1xuaW1wb3J0IHsgcGFnZXNSb3V0ZXMgfSBmcm9tICcuLi8uLi9wYXltZW50L2FjdGlvbnMvcmVkaXJlY3QvcHM0LXBhZ2VzL3BhZ2VzLXJvdXRlcy5jb25zdCc7XG5pbXBvcnQgeyBGaWVsZE5hbWVzIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9maWVsZC1uYW1lcy5lbnVtJztcbmltcG9ydCB7IFN1bW1hcnlGaW5hbmNlRGV0YWlsc0FkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9maW5hbmNlLWRldGFpbHMvc3VtbWFyeS9zdW1tYXJ5LWZpbmFuY2UtZGV0YWlscy1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9wYXltZW50L3hwcy1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVXNlckFnZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3VzZXItYWdlbnQvdXNlci1hZ2VudC5zZXJ2aWNlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7XG4gIEFwcGxlUGF5SW50ZWdyYXRpb24sXG4gIEFwcGxlUGF5SW50ZWdyYXRpb25UeXBlLFxufSBmcm9tICcuL2FwcGxlLXBheS1pbnRlZ3JhdGlvbi50eXBlJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi9hcHBsZS1wYXktcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBhcHBsZVBheVZlcnNpb24gfSBmcm9tICcuL2FwcGxlLXBheS5jb25zdCc7XG5pbXBvcnQgeyBBcHBsZVBheUVycm9ycyB9IGZyb20gJy4vYXBwbGUtcGF5LmVycm9ycy5lbnVtJztcbmltcG9ydCB7IEJyYWludHJlZUhhbmRsZXIgfSBmcm9tICcuL3Nlc3Npb24taGFuZGxlcnMvYnJhaW50cmVlLmhhbmRsZXInO1xuaW1wb3J0IHsgQ2hlY2tvdXRIYW5kbGVyIH0gZnJvbSAnLi9zZXNzaW9uLWhhbmRsZXJzL2NoZWNrb3V0LmhhbmRsZXInO1xuaW1wb3J0IHsgQXBwbGVQYXlTZXNzaW9uSGFuZGxlciB9IGZyb20gJy4vc2Vzc2lvbi1oYW5kbGVycy9zZXNzaW9uLWhhbmRsZXIudHlwZSc7XG5pbXBvcnQgeyBQYXltZW50Rm9ybSB9IGZyb20gJy4uLy4uL3BheW1lbnQvcGF5bWVudC1mb3JtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcHBsZVBheVBhcmFtc0J1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9wYXJhbXMtYnVpbGRlci9hcHBsZS1wYXktcGFyYW1zLWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGtMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lbGsvZWxrLWxvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEVycm9yVGFncyB9IGZyb20gJy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL2Vsay1lcnJvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IFN0YXJ0U2Vzc2lvblBhcmFtcyB9IGZyb20gJy4vc2Vzc2lvbi1oYW5kbGVycy9zdGFydC1zZXNzaW9uLXBhcmFtcy5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQXBwbGVQYXlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50OiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IGVycm9yOiBTdWJqZWN0PEFwcGxlUGF5RXJyb3JzPiA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW50ZWdyYXRpb25UeXBlOiBTdWJqZWN0PEFwcGxlUGF5SW50ZWdyYXRpb24+ID1cbiAgICBuZXcgU3ViamVjdCgpO1xuXG4gIHByaXZhdGUgcGF5bWVudENsaWVudDogQXBwbGVQYXkgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFwaTogUHJvbWlzZTx7XG4gICAgYXBwbGVQYXk6IHR5cGVvZiBhcHBsZVBheTtcbiAgICBjbGllbnQ6IHR5cGVvZiBjbGllbnQ7XG4gIH0+O1xuICBwcml2YXRlIGFwcGxlUGF5UGFyYW1zOiBBcHBsZVBheVBhcmFtcyB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIG9yZGVyPzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGdldCBwYXltZW50UGFyYW1ldGVycygpOiBBcHBsZVBheVBhcmFtcyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmFwcGxlUGF5UGFyYW1zO1xuICB9XG5cbiAgcHVibGljIGdldCBwYXltZW50JCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVycm9yJCgpOiBPYnNlcnZhYmxlPEFwcGxlUGF5RXJyb3JzPiB7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3IuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGludGVncmF0aW9uVHlwZSQoKTogT2JzZXJ2YWJsZTxBcHBsZVBheUludGVncmF0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuaW50ZWdyYXRpb25UeXBlLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pIHByaXZhdGUgcmVhZG9ubHkgd2luZG93OiBFeHRlbmRlZFdpbmRvdyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJBZ2VudFNlcnZpY2U6IFVzZXJBZ2VudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdW1tYXJ5RmluYW5jZURldGFpbHNBZGFwdGVyU2VydmljZTogU3VtbWFyeUZpbmFuY2VEZXRhaWxzQWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBicmFpbnRyZWVIYW5kbGVyOiBCcmFpbnRyZWVIYW5kbGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hlY2tvdXRIYW5kbGVyOiBDaGVja291dEhhbmRsZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcHBsZVBhcmFtc0J1aWxkZXI6IEFwcGxlUGF5UGFyYW1zQnVpbGRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGtMb2dnZXJTZXJ2aWNlOiBFbGtMb2dnZXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuYXBpID0gdGhpcy5sb2FkQnJhaW50cmVlKCk7XG5cbiAgICB0aGlzLnN1YnNjcmliZVRvSGFuZGxlcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBcHBsZVBheVBhcmFtcyhkYXRhOiB7IHBheW1lbnRGb3JtOiBQYXltZW50Rm9ybSB9KTogdm9pZCB7XG4gICAgY29uc3QgcGF5bWVudEZvcm0gPSBkYXRhPy5wYXltZW50Rm9ybTtcbiAgICBjb25zdCBmb3JtRmllbGRzID0gcGF5bWVudEZvcm0/LmZpZWxkcztcbiAgICBjb25zdCBzdW1tYXJ5ID0gcGF5bWVudEZvcm0/LnN1bW1hcnk7XG5cbiAgICBpZiAoIWZvcm1GaWVsZHMgfHwgIXN1bW1hcnkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmFwcGxlUGF5UGFyYW1zID0gdGhpcy5hcHBsZVBhcmFtc0J1aWxkZXIuYnVpbGRQYXJhbXMocGF5bWVudEZvcm0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGluaXRCcmFpbnRyZWVMaWJyYXJ5KHRva2VuS2V5OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYXBpID0gYXdhaXQgdGhpcy5hcGk7XG4gICAgICBjb25zdCBjbGllbnRJbnN0YW5jZSA9IGF3YWl0IGFwaS5jbGllbnQuY3JlYXRlKHtcbiAgICAgICAgYXV0aG9yaXphdGlvbjogdG9rZW5LZXksXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5wYXltZW50Q2xpZW50ID0gYXdhaXQgYXBpLmFwcGxlUGF5LmNyZWF0ZSh7XG4gICAgICAgIGNsaWVudDogY2xpZW50SW5zdGFuY2UsXG4gICAgICB9KTtcbiAgICAgIHRoaXMuYnJhaW50cmVlSGFuZGxlci5zZXRDbGllbnQodGhpcy5wYXltZW50Q2xpZW50KTtcbiAgICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuICAgICAgY29uc29sZS5lcnJvcihBcHBsZVBheUVycm9ycy5icmFpbnRyZWVJbml0aWFsaXplRXJyb3IsIGVycm9yKTtcbiAgICAgIHRoaXMuZWxrTG9nZ2VyU2VydmljZS5sb2coQXBwbGVQYXlFcnJvcnMuYnJhaW50cmVlSW5pdGlhbGl6ZUVycm9yLCBbXG4gICAgICAgIEVycm9yVGFncy5BUFBMRVBBWSxcbiAgICAgIF0pO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wYXltZW50Q2xpZW50IHx8ICF0aGlzLmlzRGV2aWNlQ2FwYWJsZSkge1xuICAgICAgdGhpcy5lbWl0RXJyb3IoQXBwbGVQYXlFcnJvcnMuZGV2aWNlSXNOb3RDYXBhYmxlRXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBpbml0QXBwbGVQYXkodG9rZW5LZXk6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmFwcGxlUGF5UGFyYW1zPy5hY3F1aXJlciA9PT0gJ2JyYWludHJlZScpIHtcbiAgICAgIGF3YWl0IHRoaXMuaW5pdEJyYWludHJlZUxpYnJhcnkodG9rZW5LZXkpO1xuICAgIH1cblxuICAgIHRoaXMuZW1pdEludGVncmF0aW9uVHlwZSgpO1xuICB9XG5cbiAgcHVibGljIHJlZGlyZWN0VG9QYXltZW50UGFnZShcbiAgICBwYXJhbWV0ZXJzOiBBcHBsZVBheVBhcmFtcyxcbiAgICB0b2tlbjogc3RyaW5nLFxuICAgIGlzU2FuZGJveD86IGJvb2xlYW5cbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCByb3V0ZSA9IHBhZ2VzUm91dGVzLmdldChhcHBsZVBheUlkKTtcbiAgICBpZiAoIXJvdXRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcXVlcnkgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHtcbiAgICAgIC4uLnBhcmFtZXRlcnMsXG4gICAgICBtZXJjaGFudENhcGFiaWxpdGllczogSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycy5tZXJjaGFudENhcGFiaWxpdGllcyksXG4gICAgICBzdXBwb3J0ZWROZXR3b3JrczogSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycy5zdXBwb3J0ZWROZXR3b3JrcyksXG4gICAgICByZXF1aXJlZEJpbGxpbmdDb250YWN0RmllbGRzOiBKU09OLnN0cmluZ2lmeShcbiAgICAgICAgcGFyYW1ldGVycz8ucmVxdWlyZWRCaWxsaW5nQ29udGFjdEZpZWxkc1xuICAgICAgKSxcbiAgICAgIHJlcXVpcmVkU2hpcHBpbmdDb250YWN0RmllbGRzOiBKU09OLnN0cmluZ2lmeShcbiAgICAgICAgcGFyYW1ldGVycz8ucmVxdWlyZWRTaGlwcGluZ0NvbnRhY3RGaWVsZHNcbiAgICAgICksXG4gICAgICBhZ3JlZW1lbnRzOiBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzLmFncmVlbWVudHMpLFxuICAgICAgdG9rZW4sXG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5vcmRlcikge1xuICAgICAgcXVlcnkuYXBwZW5kKCdvcmRlcicsIHRoaXMub3JkZXIpO1xuICAgIH1cblxuICAgIGNvbnN0IHBheVN0YXRpb25VcmwgPSBpc1NhbmRib3ggPyBzYW5kYm94UGF5U3RhdGlvblVybCA6IHBheVN0YXRpb240VXJsO1xuICAgIHJldHVybiBgJHtwYXlTdGF0aW9uVXJsfS9lbiR7cm91dGV9PyR7cXVlcnkudG9TdHJpbmcoKX1gO1xuICB9XG5cbiAgcHVibGljIHNldE9yZGVyKGRhdGE6IHsgcGF5bWVudEZvcm06IFBheW1lbnRGb3JtIH0pOiB2b2lkIHtcbiAgICBjb25zdCBzdW1tYXJ5ID0gZGF0YT8ucGF5bWVudEZvcm0/LnN1bW1hcnk7XG4gICAgaWYgKCFzdW1tYXJ5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZmluYW5jZURldGFpbHMgPVxuICAgICAgdGhpcy5zdW1tYXJ5RmluYW5jZURldGFpbHNBZGFwdGVyU2VydmljZS5nZXRGaW5hbmNlRGV0YWlscyhzdW1tYXJ5KTtcblxuICAgIGlmIChmaW5hbmNlRGV0YWlscz8ucHVyY2hhc2UgJiYgZmluYW5jZURldGFpbHM/LmZpbmFuY2UpIHtcbiAgICAgIGNvbnN0IGNhcnRJdGVtcyA9IGZpbmFuY2VEZXRhaWxzLmNhcnRJdGVtcztcbiAgICAgIHRoaXMub3JkZXIgPSBjYXJ0SXRlbXM/LnJlZHVjZSgoY3VyciwgaXRlbSkgPT4ge1xuICAgICAgICBpZiAoY3Vycikge1xuICAgICAgICAgIHJldHVybiBjdXJyICsgYDsgJHtpdGVtLnRpdGxlfWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY3VyciArIGl0ZW0udGl0bGU7XG4gICAgICB9LCAnJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpc0RldmljZUNhcGFibGUoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnVzZXJBZ2VudFNlcnZpY2UuaXNTYWZhcmkpIHJldHVybiBmYWxzZTtcblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gQm9vbGVhbihcbiAgICAgICAgdGhpcy53aW5kb3cuQXBwbGVQYXlTZXNzaW9uPy5zdXBwb3J0c1ZlcnNpb24oYXBwbGVQYXlWZXJzaW9uKSAmJlxuICAgICAgICAgIHRoaXMud2luZG93LkFwcGxlUGF5U2Vzc2lvbj8uY2FuTWFrZVBheW1lbnRzKClcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VG9rZW5Ob25jZUZpZWxkRGF0YSh0b2tlbk5vbmNlOiBzdHJpbmcpOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gIH0ge1xuICAgIGNvbnN0IG5hbWUgPSBGaWVsZE5hbWVzLnRva2VuQXBwbGVQYXk7XG4gICAgY29uc3QgdmFsdWUgPSBidG9hKHRva2VuTm9uY2UpO1xuICAgIHJldHVybiB7IG5hbWUsIHZhbHVlIH07XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQXBwbGVQYXlQYXJhbXMoZGF0YTogdW5rbm93bik6IHZvaWQge1xuICAgIGNvbnN0IHN1bW1hcnkgPSAoZGF0YSBhcyBYcHNSZXNwb25zZSk/LnN1bW1hcnk7XG4gICAgaWYgKCF0aGlzLmFwcGxlUGF5UGFyYW1zIHx8ICFzdW1tYXJ5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5hcHBsZVBheVBhcmFtcyA9IHRoaXMuYXBwbGVQYXJhbXNCdWlsZGVyLnVwZGF0ZVBhcmFtcyhcbiAgICAgIHRoaXMuYXBwbGVQYXlQYXJhbXMsXG4gICAgICBzdW1tYXJ5XG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBwcm9jZWVkQ2hlY2tvdXQoXG4gICAgcGFyYW1ldGVyczogQXBwbGVQYXlQYXJhbXMsXG4gICAgYWRkaXRpb25hbFBhcmFtczogU3RhcnRTZXNzaW9uUGFyYW1zXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHNlc3Npb25IYW5kbGVyID0gdGhpcy5nZXRTZXNzaW9uSGFuZGxlcihwYXJhbWV0ZXJzLmFjcXVpcmVyKTtcblxuICAgIGlmICghc2Vzc2lvbkhhbmRsZXIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0FwcGxlIFBheTogVW5zdXBwb3J0ZWQgYWNxdWlyZXI6JywgcGFyYW1ldGVycy5hY3F1aXJlcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2Vzc2lvbkhhbmRsZXIuc3RhcnRTZXNzaW9uKHBhcmFtZXRlcnMsIGFkZGl0aW9uYWxQYXJhbXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTZXNzaW9uSGFuZGxlcihcbiAgICBhY3F1aXJlcjogc3RyaW5nXG4gICk6IEFwcGxlUGF5U2Vzc2lvbkhhbmRsZXIgfCB1bmRlZmluZWQge1xuICAgIHN3aXRjaCAoYWNxdWlyZXIpIHtcbiAgICAgIGNhc2UgJ2JyYWludHJlZSc6XG4gICAgICAgIHJldHVybiB0aGlzLmJyYWludHJlZUhhbmRsZXI7XG4gICAgICBjYXNlICdjaGVja291dCc6XG4gICAgICAgIHJldHVybiB0aGlzLmNoZWNrb3V0SGFuZGxlcjtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkQnJhaW50cmVlKCk6IFByb21pc2U8e1xuICAgIGFwcGxlUGF5OiB0eXBlb2YgYXBwbGVQYXk7XG4gICAgY2xpZW50OiB0eXBlb2YgY2xpZW50O1xuICB9PiB7XG4gICAgY29uc3QgYXBpID0gYXdhaXQgaW1wb3J0KCdicmFpbnRyZWUtd2ViJyk7XG5cbiAgICByZXR1cm4gYXBpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0RXJyb3IoZXJyb3I6IEFwcGxlUGF5RXJyb3JzKTogdm9pZCB7XG4gICAgdGhpcy5lcnJvci5uZXh0KGVycm9yKTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEludGVncmF0aW9uVHlwZSgpOiB2b2lkIHtcbiAgICBjb25zdCBpbnRlZ3JhdGlvbiA9IHRoaXMuaXNEZXZpY2VDYXBhYmxlXG4gICAgICA/IEFwcGxlUGF5SW50ZWdyYXRpb25UeXBlLm5hdGl2ZVxuICAgICAgOiBBcHBsZVBheUludGVncmF0aW9uVHlwZS5yZWRpcmVjdDtcblxuICAgIHRoaXMuaW50ZWdyYXRpb25UeXBlLm5leHQoaW50ZWdyYXRpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb0hhbmRsZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IGhhbmRsZXJzID0gW3RoaXMuYnJhaW50cmVlSGFuZGxlciwgdGhpcy5jaGVja291dEhhbmRsZXJdO1xuXG4gICAgaGFuZGxlcnMuZm9yRWFjaCgoaGFuZGxlcikgPT4ge1xuICAgICAgaGFuZGxlci5lcnJvciQuc3Vic2NyaWJlKChlcnJvcikgPT4gdGhpcy5lbWl0RXJyb3IoZXJyb3IpKTtcbiAgICAgIGhhbmRsZXIucGF5bWVudCQuc3Vic2NyaWJlKCh0b2tlbikgPT4ge1xuICAgICAgICB0aGlzLnBheW1lbnQubmV4dCh0b2tlbik7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIl19
223
+ }] }, { type: i1.SummaryFinanceDetailsAdapterService }, { type: i2.BraintreeHandler }, { type: i3.CheckoutHandler }, { type: i4.ApplePayParamsBuilderService }, { type: i5.ElkLoggerService }, { type: i6.ApplePaySdkService }] });
224
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGUtcGF5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9zZGstcGF5bWVudC1zeXN0ZW1zL2FwcGxlLXBheS9hcHBsZS1wYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzNDLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsb0JBQW9CLEdBQ3JCLE1BQU0sdURBQXVELENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUMxRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSw4QkFBOEIsQ0FBQztBQUV0QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBT3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7Ozs7Ozs7QUFPbEYsTUFBTSxPQUFPLGVBQWU7SUFnQjFCLElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMs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LENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLDBCQUEwQjtRQUMxQixPQUFPLElBQUksQ0FBQyxlQUFlO1lBQ3pCLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNO1lBQ2hDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUM7SUFDdkMsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixJQUNFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLHVCQUF1QixDQUFDLE1BQU07WUFDNUQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixFQUMzQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDOzhHQTdRVSxlQUFlLGtCQTJDaEIsV0FBVztrSEEzQ1YsZUFBZSxjQUZkLE1BQU07OzJGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkE0Q0ksTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBcHBsZVBheSwgYXBwbGVQYXksIGNsaWVudCB9IGZyb20gJ2JyYWludHJlZS13ZWInO1xuaW1wb3J0IHsgRXh0ZW5kZWRXaW5kb3cgfSBmcm9tICcuLi8uLi9leHRlbmRlZC13aW5kb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIHBheVN0YXRpb240VXJsLFxuICBzYW5kYm94UGF5U3RhdGlvblVybCxcbn0gZnJvbSAnLi4vLi4vcGF5bWVudC9hY3Rpb25zL3JlZGlyZWN0L3BheS1zdGF0aW9uNC11cmwuY29uc3QnO1xuaW1wb3J0IHsgYXBwbGVQYXlJZCB9IGZyb20gJy4uLy4uL3BheW1lbnQvYWN0aW9ucy9yZWRpcmVjdC9wczQtcGFnZXMvcGFnZXMtcGF5bWVudC1tZXRob2RzLWlkLmNvbnN0JztcbmltcG9ydCB7IHBhZ2VzUm91dGVzIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9hY3Rpb25zL3JlZGlyZWN0L3BzNC1wYWdlcy9wYWdlcy1yb3V0ZXMuY29uc3QnO1xuaW1wb3J0IHsgRmllbGROYW1lcyB9IGZyb20gJy4uLy4uL3BheW1lbnQvZmllbGQtbmFtZXMuZW51bSc7XG5pbXBvcnQgeyBTdW1tYXJ5RmluYW5jZURldGFpbHNBZGFwdGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3BheW1lbnQvZmluYW5jZS1kZXRhaWxzL3N1bW1hcnkvc3VtbWFyeS1maW5hbmNlLWRldGFpbHMtYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFhwc1Jlc3BvbnNlIH0gZnJvbSAnLi4vLi4vcGF5bWVudC94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7XG4gIEFwcGxlUGF5SW50ZWdyYXRpb24sXG4gIEFwcGxlUGF5SW50ZWdyYXRpb25UeXBlLFxufSBmcm9tICcuL2FwcGxlLXBheS1pbnRlZ3JhdGlvbi50eXBlJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi9hcHBsZS1wYXktcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBhcHBsZVBheVZlcnNpb24gfSBmcm9tICcuL2FwcGxlLXBheS5jb25zdCc7XG5pbXBvcnQgeyBBcHBsZVBheUVycm9ycyB9IGZyb20gJy4vYXBwbGUtcGF5LmVycm9ycy5lbnVtJztcbmltcG9ydCB7IEJyYWludHJlZUhhbmRsZXIgfSBmcm9tICcuL3Nlc3Npb24taGFuZGxlcnMvYnJhaW50cmVlLmhhbmRsZXInO1xuaW1wb3J0IHsgQ2hlY2tvdXRIYW5kbGVyIH0gZnJvbSAnLi9zZXNzaW9uLWhhbmRsZXJzL2NoZWNrb3V0LmhhbmRsZXInO1xuaW1wb3J0IHsgQXBwbGVQYXlTZXNzaW9uSGFuZGxlciB9IGZyb20gJy4vc2Vzc2lvbi1oYW5kbGVycy9zZXNzaW9uLWhhbmRsZXIudHlwZSc7XG5pbXBvcnQgeyBQYXltZW50Rm9ybSB9IGZyb20gJy4uLy4uL3BheW1lbnQvcGF5bWVudC1mb3JtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcHBsZVBheVBhcmFtc0J1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9wYXJhbXMtYnVpbGRlci9hcHBsZS1wYXktcGFyYW1zLWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGtMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lbGsvZWxrLWxvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEVycm9yVGFncyB9IGZyb20gJy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL2Vsay1lcnJvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IFN0YXJ0U2Vzc2lvblBhcmFtcyB9IGZyb20gJy4vc2Vzc2lvbi1oYW5kbGVycy9zdGFydC1zZXNzaW9uLXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXBwbGVQYXlTZGtTZXJ2aWNlIH0gZnJvbSAnLi9hcHBsZS1wYXktc2RrLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQXBwbGVQYXlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50OiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IGVycm9yOiBTdWJqZWN0PEFwcGxlUGF5RXJyb3JzPiA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW50ZWdyYXRpb25UeXBlOiBTdWJqZWN0PEFwcGxlUGF5SW50ZWdyYXRpb24+ID1cbiAgICBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IGFwcGxlUGF5UXJPcGVuZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xuXG4gIHByaXZhdGUgcGF5bWVudENsaWVudDogQXBwbGVQYXkgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFwaTogUHJvbWlzZTx7XG4gICAgYXBwbGVQYXk6IHR5cGVvZiBhcHBsZVBheTtcbiAgICBjbGllbnQ6IHR5cGVvZiBjbGllbnQ7XG4gIH0+O1xuICBwcml2YXRlIGFwcGxlUGF5UGFyYW1zOiBBcHBsZVBheVBhcmFtcyB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIG9yZGVyPzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGdldCBwYXltZW50UGFyYW1ldGVycygpOiBBcHBsZVBheVBhcmFtcyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmFwcGxlUGF5UGFyYW1zO1xuICB9XG5cbiAgcHVibGljIGdldCBwYXltZW50JCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVycm9yJCgpOiBPYnNlcnZhYmxlPEFwcGxlUGF5RXJyb3JzPiB7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3IuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwdWJsaWMgZ2V0IGFwcGxlUGF5UXJPcGVuZWQkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmFwcGxlUGF5UXJPcGVuZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwdWJsaWMgZ2V0IHdpbmRvd0Nsb3NpbmckKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmFwcGxlUGF5U2RrU2VydmljZS53aW5kb3dDbG9zaW5nJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaW50ZWdyYXRpb25UeXBlJCgpOiBPYnNlcnZhYmxlPEFwcGxlUGF5SW50ZWdyYXRpb24+IHtcbiAgICByZXR1cm4gdGhpcy5pbnRlZ3JhdGlvblR5cGUuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCh3aW5kb3dUb2tlbikgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IEV4dGVuZGVkV2luZG93LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3VtbWFyeUZpbmFuY2VEZXRhaWxzQWRhcHRlclNlcnZpY2U6IFN1bW1hcnlGaW5hbmNlRGV0YWlsc0FkYXB0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYnJhaW50cmVlSGFuZGxlcjogQnJhaW50cmVlSGFuZGxlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrb3V0SGFuZGxlcjogQ2hlY2tvdXRIYW5kbGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwbGVQYXJhbXNCdWlsZGVyOiBBcHBsZVBheVBhcmFtc0J1aWxkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxrTG9nZ2VyU2VydmljZTogRWxrTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFwcGxlUGF5U2RrU2VydmljZTogQXBwbGVQYXlTZGtTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuYXBpID0gdGhpcy5sb2FkQnJhaW50cmVlKCk7XG5cbiAgICB0aGlzLnN1YnNjcmliZVRvSGFuZGxlcnMoKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHB1YmxpYyBhZGRBcHBsZVBheVNka0pzKCk6IHZvaWQge1xuICAgIHRoaXMuYXBwbGVQYXlTZGtTZXJ2aWNlLmFkZEFwcGxlUGF5U2RrSnMoKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHB1YmxpYyByZW1vdmVMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy5hcHBsZVBheVNka1NlcnZpY2UucmVtb3ZlTGlzdGVuZXJzKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0QXBwbGVQYXlQYXJhbXMoZGF0YTogeyBwYXltZW50Rm9ybTogUGF5bWVudEZvcm0gfSk6IHZvaWQge1xuICAgIGNvbnN0IHBheW1lbnRGb3JtID0gZGF0YT8ucGF5bWVudEZvcm07XG4gICAgY29uc3QgZm9ybUZpZWxkcyA9IHBheW1lbnRGb3JtPy5maWVsZHM7XG4gICAgY29uc3Qgc3VtbWFyeSA9IHBheW1lbnRGb3JtPy5zdW1tYXJ5O1xuXG4gICAgaWYgKCFmb3JtRmllbGRzIHx8ICFzdW1tYXJ5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5hcHBsZVBheVBhcmFtcyA9IHRoaXMuYXBwbGVQYXJhbXNCdWlsZGVyLmJ1aWxkUGFyYW1zKHBheW1lbnRGb3JtKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBpbml0QnJhaW50cmVlTGlicmFyeSh0b2tlbktleTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGFwaSA9IGF3YWl0IHRoaXMuYXBpO1xuICAgICAgY29uc3QgY2xpZW50SW5zdGFuY2UgPSBhd2FpdCBhcGkuY2xpZW50LmNyZWF0ZSh7XG4gICAgICAgIGF1dGhvcml6YXRpb246IHRva2VuS2V5LFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMucGF5bWVudENsaWVudCA9IGF3YWl0IGFwaS5hcHBsZVBheS5jcmVhdGUoe1xuICAgICAgICBjbGllbnQ6IGNsaWVudEluc3RhbmNlLFxuICAgICAgfSk7XG4gICAgICB0aGlzLmJyYWludHJlZUhhbmRsZXIuc2V0Q2xpZW50KHRoaXMucGF5bWVudENsaWVudCk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMuYnJhaW50cmVlSW5pdGlhbGl6ZUVycm9yLCBlcnJvcik7XG4gICAgICB0aGlzLmVsa0xvZ2dlclNlcnZpY2UubG9nKEFwcGxlUGF5RXJyb3JzLmJyYWludHJlZUluaXRpYWxpemVFcnJvciwgW1xuICAgICAgICBFcnJvclRhZ3MuQVBQTEVQQVksXG4gICAgICBdKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucGF5bWVudENsaWVudCB8fCAhdGhpcy5pc0RldmljZUNhcGFibGUpIHtcbiAgICAgIHRoaXMuZW1pdEVycm9yKEFwcGxlUGF5RXJyb3JzLmRldmljZUlzTm90Q2FwYWJsZUVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaW5pdEFwcGxlUGF5KHRva2VuS2V5OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5hcHBsZVBheVBhcmFtcz8uYWNxdWlyZXIgPT09ICdicmFpbnRyZWUnKSB7XG4gICAgICBhd2FpdCB0aGlzLmluaXRCcmFpbnRyZWVMaWJyYXJ5KHRva2VuS2V5KTtcbiAgICB9XG5cbiAgICB0aGlzLmVtaXRJbnRlZ3JhdGlvblR5cGUoKTtcbiAgfVxuXG4gIHB1YmxpYyByZWRpcmVjdFRvUGF5bWVudFBhZ2UoXG4gICAgcGFyYW1ldGVyczogQXBwbGVQYXlQYXJhbXMsXG4gICAgdG9rZW46IHN0cmluZyxcbiAgICBpc1NhbmRib3g/OiBib29sZWFuXG4gICk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3Qgcm91dGUgPSBwYWdlc1JvdXRlcy5nZXQoYXBwbGVQYXlJZCk7XG4gICAgaWYgKCFyb3V0ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHF1ZXJ5ID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7XG4gICAgICAuLi5wYXJhbWV0ZXJzLFxuICAgICAgbWVyY2hhbnRDYXBhYmlsaXRpZXM6IEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMubWVyY2hhbnRDYXBhYmlsaXRpZXMpLFxuICAgICAgc3VwcG9ydGVkTmV0d29ya3M6IEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMuc3VwcG9ydGVkTmV0d29ya3MpLFxuICAgICAgcmVxdWlyZWRCaWxsaW5nQ29udGFjdEZpZWxkczogSlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIHBhcmFtZXRlcnM/LnJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHNcbiAgICAgICksXG4gICAgICByZXF1aXJlZFNoaXBwaW5nQ29udGFjdEZpZWxkczogSlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIHBhcmFtZXRlcnM/LnJlcXVpcmVkU2hpcHBpbmdDb250YWN0RmllbGRzXG4gICAgICApLFxuICAgICAgYWdyZWVtZW50czogSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycy5hZ3JlZW1lbnRzKSxcbiAgICAgIHRva2VuLFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMub3JkZXIpIHtcbiAgICAgIHF1ZXJ5LmFwcGVuZCgnb3JkZXInLCB0aGlzLm9yZGVyKTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXlTdGF0aW9uVXJsID0gaXNTYW5kYm94ID8gc2FuZGJveFBheVN0YXRpb25VcmwgOiBwYXlTdGF0aW9uNFVybDtcbiAgICByZXR1cm4gYCR7cGF5U3RhdGlvblVybH0vZW4ke3JvdXRlfT8ke3F1ZXJ5LnRvU3RyaW5nKCl9YDtcbiAgfVxuXG4gIHB1YmxpYyBzZXRPcmRlcihkYXRhOiB7IHBheW1lbnRGb3JtOiBQYXltZW50Rm9ybSB9KTogdm9pZCB7XG4gICAgY29uc3Qgc3VtbWFyeSA9IGRhdGE/LnBheW1lbnRGb3JtPy5zdW1tYXJ5O1xuICAgIGlmICghc3VtbWFyeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbmFuY2VEZXRhaWxzID1cbiAgICAgIHRoaXMuc3VtbWFyeUZpbmFuY2VEZXRhaWxzQWRhcHRlclNlcnZpY2UuZ2V0RmluYW5jZURldGFpbHMoc3VtbWFyeSk7XG5cbiAgICBpZiAoZmluYW5jZURldGFpbHM/LnB1cmNoYXNlICYmIGZpbmFuY2VEZXRhaWxzPy5maW5hbmNlKSB7XG4gICAgICBjb25zdCBjYXJ0SXRlbXMgPSBmaW5hbmNlRGV0YWlscy5jYXJ0SXRlbXM7XG4gICAgICB0aGlzLm9yZGVyID0gY2FydEl0ZW1zPy5yZWR1Y2UoKGN1cnIsIGl0ZW0pID0+IHtcbiAgICAgICAgaWYgKGN1cnIpIHtcbiAgICAgICAgICByZXR1cm4gY3VyciArIGA7ICR7aXRlbS50aXRsZX1gO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGN1cnIgKyBpdGVtLnRpdGxlO1xuICAgICAgfSwgJycpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNEZXZpY2VDYXBhYmxlKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmFwcGxlUGF5U2RrU2VydmljZS5uZWVkVG9BZGRBcHBsZVBheUpzKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIEJvb2xlYW4oXG4gICAgICAgIHRoaXMud2luZG93LkFwcGxlUGF5U2Vzc2lvbj8uc3VwcG9ydHNWZXJzaW9uKGFwcGxlUGF5VmVyc2lvbikgJiZcbiAgICAgICAgICB0aGlzLndpbmRvdy5BcHBsZVBheVNlc3Npb24/LmNhbk1ha2VQYXltZW50cygpXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFRva2VuTm9uY2VGaWVsZERhdGEodG9rZW5Ob25jZTogc3RyaW5nKToge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuICB9IHtcbiAgICBjb25zdCBuYW1lID0gRmllbGROYW1lcy50b2tlbkFwcGxlUGF5O1xuICAgIGNvbnN0IHZhbHVlID0gYnRvYSh0b2tlbk5vbmNlKTtcbiAgICByZXR1cm4geyBuYW1lLCB2YWx1ZSB9O1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUFwcGxlUGF5UGFyYW1zKGRhdGE6IHVua25vd24pOiB2b2lkIHtcbiAgICBjb25zdCBzdW1tYXJ5ID0gKGRhdGEgYXMgWHBzUmVzcG9uc2UpPy5zdW1tYXJ5O1xuICAgIGlmICghdGhpcy5hcHBsZVBheVBhcmFtcyB8fCAhc3VtbWFyeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuYXBwbGVQYXlQYXJhbXMgPSB0aGlzLmFwcGxlUGFyYW1zQnVpbGRlci51cGRhdGVQYXJhbXMoXG4gICAgICB0aGlzLmFwcGxlUGF5UGFyYW1zLFxuICAgICAgc3VtbWFyeVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgcHJvY2VlZENoZWNrb3V0KFxuICAgIHBhcmFtZXRlcnM6IEFwcGxlUGF5UGFyYW1zLFxuICAgIGFkZGl0aW9uYWxQYXJhbXM6IFN0YXJ0U2Vzc2lvblBhcmFtc1xuICApOiB2b2lkIHtcbiAgICBjb25zdCBzZXNzaW9uSGFuZGxlciA9IHRoaXMuZ2V0U2Vzc2lvbkhhbmRsZXIocGFyYW1ldGVycy5hY3F1aXJlcik7XG5cbiAgICBpZiAoIXNlc3Npb25IYW5kbGVyKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdBcHBsZSBQYXk6IFVuc3VwcG9ydGVkIGFjcXVpcmVyOicsIHBhcmFtZXRlcnMuYWNxdWlyZXIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNlc3Npb25IYW5kbGVyLnN0YXJ0U2Vzc2lvbihwYXJhbWV0ZXJzLCBhZGRpdGlvbmFsUGFyYW1zLCAoKSA9PlxuICAgICAgdGhpcy5hcHBsZVBheVNka1NlcnZpY2UuZW1pdFdpbmRvd0Nsb3NpbmcoKVxuICAgICk7XG4gICAgdGhpcy5lbWl0QXBwbGVQYXlPcGVuZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2Vzc2lvbkhhbmRsZXIoXG4gICAgYWNxdWlyZXI6IHN0cmluZ1xuICApOiBBcHBsZVBheVNlc3Npb25IYW5kbGVyIHwgdW5kZWZpbmVkIHtcbiAgICBzd2l0Y2ggKGFjcXVpcmVyKSB7XG4gICAgICBjYXNlICdicmFpbnRyZWUnOlxuICAgICAgICByZXR1cm4gdGhpcy5icmFpbnRyZWVIYW5kbGVyO1xuICAgICAgY2FzZSAnY2hlY2tvdXQnOlxuICAgICAgICByZXR1cm4gdGhpcy5jaGVja291dEhhbmRsZXI7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZEJyYWludHJlZSgpOiBQcm9taXNlPHtcbiAgICBhcHBsZVBheTogdHlwZW9mIGFwcGxlUGF5O1xuICAgIGNsaWVudDogdHlwZW9mIGNsaWVudDtcbiAgfT4ge1xuICAgIGNvbnN0IGFwaSA9IGF3YWl0IGltcG9ydCgnYnJhaW50cmVlLXdlYicpO1xuICAgIHJldHVybiBhcGk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRFcnJvcihlcnJvcjogQXBwbGVQYXlFcnJvcnMpOiB2b2lkIHtcbiAgICB0aGlzLmVycm9yLm5leHQoZXJyb3IpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0SW50ZWdyYXRpb25UeXBlKCk6IHZvaWQge1xuICAgIHRoaXMuaW50ZWdyYXRpb25UeXBlLm5leHQodGhpcy5nZXRJbnRlZ3JhdGlvblR5cGUoKSk7XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZVRvSGFuZGxlcnMoKTogdm9pZCB7XG4gICAgY29uc3QgaGFuZGxlcnMgPSBbdGhpcy5icmFpbnRyZWVIYW5kbGVyLCB0aGlzLmNoZWNrb3V0SGFuZGxlcl07XG5cbiAgICBoYW5kbGVycy5mb3JFYWNoKChoYW5kbGVyKSA9PiB7XG4gICAgICBoYW5kbGVyLmVycm9yJC5zdWJzY3JpYmUoKGVycm9yKSA9PiB0aGlzLmVtaXRFcnJvcihlcnJvcikpO1xuICAgICAgaGFuZGxlci5wYXltZW50JC5zdWJzY3JpYmUoKHRva2VuKSA9PiB7XG4gICAgICAgIHRoaXMucGF5bWVudC5uZXh0KHRva2VuKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJbnRlZ3JhdGlvblR5cGUoKTogQXBwbGVQYXlJbnRlZ3JhdGlvblR5cGUge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIHRoaXMuaXNEZXZpY2VDYXBhYmxlXG4gICAgICA/IEFwcGxlUGF5SW50ZWdyYXRpb25UeXBlLm5hdGl2ZVxuICAgICAgOiBBcHBsZVBheUludGVncmF0aW9uVHlwZS5yZWRpcmVjdDtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEFwcGxlUGF5T3BlbmVkKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuZ2V0SW50ZWdyYXRpb25UeXBlKCkgPT09IEFwcGxlUGF5SW50ZWdyYXRpb25UeXBlLm5hdGl2ZSAmJlxuICAgICAgdGhpcy5hcHBsZVBheVNka1NlcnZpY2UubmVlZFRvQWRkQXBwbGVQYXlKc1xuICAgICkge1xuICAgICAgdGhpcy5hcHBsZVBheVFyT3BlbmVkLm5leHQoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -19,7 +19,7 @@ export class BraintreeHandler extends ApplePaySessionHandlerAbstract {
19
19
  setClient(client) {
20
20
  this.paymentClient = client;
21
21
  }
22
- startSession(params, additionalParams) {
22
+ startSession(params, additionalParams, applePayFinallyCallback) {
23
23
  if (!this.paymentClient) {
24
24
  console.error(ApplePayErrors.braintreeInitializeError);
25
25
  this.elkLoggerService.log(ApplePayErrors.braintreeInitializeError, [
@@ -67,6 +67,7 @@ export class BraintreeHandler extends ApplePaySessionHandlerAbstract {
67
67
  .catch((error) => {
68
68
  console.error(ApplePayErrors.merchantValidationError, error);
69
69
  session.abort();
70
+ applePayFinallyCallback();
70
71
  });
71
72
  };
72
73
  session.onpaymentauthorized = (event) => {
@@ -80,15 +81,18 @@ export class BraintreeHandler extends ApplePaySessionHandlerAbstract {
80
81
  shippingEmail: event.payment.shippingContact?.emailAddress ?? null,
81
82
  }));
82
83
  session.completePayment(this.window.ApplePaySession.STATUS_SUCCESS);
84
+ applePayFinallyCallback();
83
85
  })
84
86
  .catch((error) => {
85
87
  console.error('Apple Pay: Tokenization error', error);
86
88
  session.completePayment(this.window.ApplePaySession.STATUS_FAILURE);
89
+ applePayFinallyCallback();
87
90
  });
88
91
  };
89
92
  session.oncancel = (event) => {
90
93
  console.error(ApplePayErrors.cancelled, event);
91
94
  this.emitError(ApplePayErrors.cancelled);
95
+ applePayFinallyCallback();
92
96
  };
93
97
  session.begin();
94
98
  }
@@ -101,4 +105,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
101
105
  type: Inject,
102
106
  args: [windowToken]
103
107
  }] }, { type: i1.ElkLoggerService }, { type: i2.ApplePayCartService }] });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJhaW50cmVlLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9zZGstcGF5bWVudC1zeXN0ZW1zL2FwcGxlLXBheS9zZXNzaW9uLWhhbmRsZXJzL2JyYWludHJlZS5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUVyRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUc1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBSTVCLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSw4QkFBOEI7SUFHbEUsWUFDd0MsTUFBc0IsRUFDM0MsZ0JBQWtDLEVBQ2xDLG1CQUF3QztRQUV6RCxLQUFLLEVBQUUsQ0FBQztRQUo4QixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUMzQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFMbkQsa0JBQWEsR0FBb0IsSUFBSSxDQUFDO0lBUTlDLENBQUM7SUFFTSxTQUFTLENBQUMsTUFBZ0I7UUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVNLFlBQVksQ0FDakIsTUFBc0IsRUFDdEIsZ0JBQW9DO1FBRXBDLElBQUksQ0FBQyxJQUFJLENBQUMs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VztrSEFKVixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7OzBCQUtOLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXBwbGVQYXkgfSBmcm9tICdicmFpbnRyZWUtd2ViJztcbmltcG9ydCB7IEVsa0xvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vsay9lbGstbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JUYWdzIH0gZnJvbSAnLi4vLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lcnJvcnMvZWxrLWVycm9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgRXh0ZW5kZWRXaW5kb3cgfSBmcm9tICcuLi8uLi8uLi9leHRlbmRlZC13aW5kb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi4vYXBwbGUtcGF5LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgYXBwbGVQYXlWZXJzaW9uIH0gZnJvbSAnLi4vYXBwbGUtcGF5LmNvbnN0JztcbmltcG9ydCB7IEFwcGxlUGF5RXJyb3JzIH0gZnJvbSAnLi4vYXBwbGUtcGF5LmVycm9ycy5lbnVtJztcbmltcG9ydCB7IEFwcGxlUGF5U2Vzc2lvbkhhbmRsZXJBYnN0cmFjdCB9IGZyb20gJy4vc2Vzc2lvbi1oYW5kbGVyLmFic3RyYWN0JztcbmltcG9ydCB7IFN0YXJ0U2Vzc2lvblBhcmFtcyB9IGZyb20gJy4vc3RhcnQtc2Vzc2lvbi1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcGxlUGF5Q2FydFNlcnZpY2UgfSBmcm9tICcuLi9hcHBsZS1wYXktY2FydC9hcHBsZS1wYXktY2FydC5zZXJ2aWNlJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcGxlUGF5RXJyb3IgfSBmcm9tICcuL2FwcGxlLXBheS1zZXNzaW9uLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCcmFpbnRyZWVIYW5kbGVyIGV4dGVuZHMgQXBwbGVQYXlTZXNzaW9uSGFuZGxlckFic3RyYWN0IHtcbiAgcHJpdmF0ZSBwYXltZW50Q2xpZW50OiBBcHBsZVBheSB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogRXh0ZW5kZWRXaW5kb3csXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGtMb2dnZXJTZXJ2aWNlOiBFbGtMb2dnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwbGVQYXlDYXJ0U2VydmljZTogQXBwbGVQYXlDYXJ0U2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIHNldENsaWVudChjbGllbnQ6IEFwcGxlUGF5KTogdm9pZCB7XG4gICAgdGhpcy5wYXltZW50Q2xpZW50ID0gY2xpZW50O1xuICB9XG5cbiAgcHVibGljIHN0YXJ0U2Vzc2lvbihcbiAgICBwYXJhbXM6IEFwcGxlUGF5UGFyYW1zLFxuICAgIGFkZGl0aW9uYWxQYXJhbXM6IFN0YXJ0U2Vzc2lvblBhcmFtc1xuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucGF5bWVudENsaWVudCkge1xuICAgICAgY29uc29sZS5lcnJvcihBcHBsZVBheUVycm9ycy5icmFpbnRyZWVJbml0aWFsaXplRXJyb3IpO1xuICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZyhBcHBsZVBheUVycm9ycy5icmFpbnRyZWVJbml0aWFsaXplRXJyb3IsIFtcbiAgICAgICAgRXJyb3JUYWdzLkFQUExFUEFZLFxuICAgICAgXSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IHRoaXMuYnVpbGRQYXltZW50UmVxdWVzdChwYXJhbXMpO1xuXG4gICAgY29uc3QgYXBwbGVQYXlSZXF1ZXN0ID0gdGhpcy5wYXltZW50Q2xpZW50LmNyZWF0ZVBheW1lbnRSZXF1ZXN0KHJlcXVlc3QpO1xuXG4gICAgY29uc3Qgc2Vzc2lvbiA9IG5ldyB0aGlzLndpbmRvdy5BcHBsZVBheVNlc3Npb24oXG4gICAgICBhcHBsZVBheVZlcnNpb24sXG4gICAgICBhcHBsZVBheVJlcXVlc3RcbiAgICApO1xuXG4gICAgY29uc3QgeyBpc0FwcGxlUGF5SW5zdGFudEZsb3dFbmFibGVkLCB0b3BMZXZlbERvbWFpbiB9ID0gYWRkaXRpb25hbFBhcmFtcztcblxuICAgIHNlc3Npb24ub25zaGlwcGluZ2NvbnRhY3RzZWxlY3RlZCA9IChldmVudCkgPT4ge1xuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLmNhcnRTdWNjZXNzZnVsUmVjYWxjdWxhdGVkJFxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKCh1cGRhdGVkUHJpY2UpID0+IHtcbiAgICAgICAgICBjb25zdCBjb250YWN0VXBkYXRlID1cbiAgICAgICAgICAgIHRoaXMuYXBwbGVQYXlDYXJ0U2VydmljZS5idWlsZFNoaXBwaW5nQ29udGFjdFVwZGF0ZShcbiAgICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgICB1cGRhdGVkUHJpY2VcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKGNvbnRhY3RVcGRhdGUpO1xuICAgICAgICB9KTtcblxuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLmNhcnRFcnJvclJlY2FsY3VsYXRlZCQuc3Vic2NyaWJlKFxuICAgICAgICAoZXJyb3I6IEFwcGxlUGF5RXJyb3IpID0+IHtcbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKHtcbiAgICAgICAgICAgIGVycm9yczogW2Vycm9yXSxcbiAgICAgICAgICAgIG5ld1RvdGFsOiB7XG4gICAgICAgICAgICAgIGxhYmVsOiBwYXJhbXMudG90YWxMYWJlbCxcbiAgICAgICAgICAgICAgYW1vdW50OiBwYXJhbXMudG90YWxBbW91bnQ/LnRvU3RyaW5nKCksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3RhdHVzOiAnU1RBVFVTX0ZBSUxVUkUnLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICB0aGlzLmFwcGxlUGF5Q2FydFNlcnZpY2UucmVjYWxjdWxhdGVDYXJ0VGF4ZXMoZXZlbnQuc2hpcHBpbmdDb250YWN0KTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5vbnZhbGlkYXRlbWVyY2hhbnQgPSAoZXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHZhbGlkYXRpb25QYXJhbXMgPSB7XG4gICAgICAgIHZhbGlkYXRpb25VUkw6IGV2ZW50LnZhbGlkYXRpb25VUkwsXG4gICAgICAgIGRpc3BsYXlOYW1lOiBwYXJhbXMudG90YWxMYWJlbCxcbiAgICAgIH07XG5cbiAgICAgIGlmIChpc0FwcGxlUGF5SW5zdGFudEZsb3dFbmFibGVkICYmIHRvcExldmVsRG9tYWluKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdW5rbm93biBwcm9wZXJ0eVxuICAgICAgICB2YWxpZGF0aW9uUGFyYW1zLmRvbWFpbk5hbWUgPSB0b3BMZXZlbERvbWFpbjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5wYXltZW50Q2xpZW50XG4gICAgICAgID8ucGVyZm9ybVZhbGlkYXRpb24odmFsaWRhdGlvblBhcmFtcylcbiAgICAgICAgLnRoZW4oKG1lcmNoYW50U2Vzc2lvbikgPT4ge1xuICAgICAgICAgIHNlc3Npb24uY29tcGxldGVNZXJjaGFudFZhbGlkYXRpb24obWVyY2hhbnRTZXNzaW9uKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMubWVyY2hhbnRWYWxpZGF0aW9uRXJyb3IsIGVycm9yKTtcbiAgICAgICAgICBzZXNzaW9uLmFib3J0KCk7XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICBzZXNzaW9uLm9ucGF5bWVudGF1dGhvcml6ZWQgPSAoZXZlbnQpID0+IHtcbiAgICAgIHRoaXMucGF5bWVudENsaWVudFxuICAgICAgICA/LnRva2VuaXplKHsgdG9rZW46IGV2ZW50LnBheW1lbnQudG9rZW4gfSlcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5wYXltZW50Lm5leHQoXG4gICAgICAgICAgICBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgIHRva2VuOiByZXNwb25zZT8ubm9uY2UgPz8gJycsXG4gICAgICAgICAgICAgIGVtYWlsOiBldmVudC5wYXltZW50LmJpbGxpbmdDb250YWN0Py5lbWFpbEFkZHJlc3MgPz8gbnVsbCxcbiAgICAgICAgICAgICAgcG9zdGFsQ29kZTogZXZlbnQucGF5bWVudC5iaWxsaW5nQ29udGFjdD8ucG9zdGFsQ29kZSA/PyBudWxsLFxuICAgICAgICAgICAgICBzaGlwcGluZ0VtYWlsOlxuICAgICAgICAgICAgICAgIGV2ZW50LnBheW1lbnQuc2hpcHBpbmdDb250YWN0Py5lbWFpbEFkZHJlc3MgPz8gbnVsbCxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlUGF5bWVudCh0aGlzLndpbmRvdy5BcHBsZVBheVNlc3Npb24uU1RBVFVTX1NVQ0NFU1MpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignQXBwbGUgUGF5OiBUb2tlbml6YXRpb24gZXJyb3InLCBlcnJvcik7XG4gICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZVBheW1lbnQodGhpcy53aW5kb3cuQXBwbGVQYXlTZXNzaW9uLlNUQVRVU19GQUlMVVJFKTtcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIHNlc3Npb24ub25jYW5jZWwgPSAoZXZlbnQpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMuY2FuY2VsbGVkLCBldmVudCk7XG4gICAgICB0aGlzLmVtaXRFcnJvcihBcHBsZVBheUVycm9ycy5jYW5jZWxsZWQpO1xuICAgIH07XG5cbiAgICBzZXNzaW9uLmJlZ2luKCk7XG4gIH1cbn1cbiJdfQ==
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJhaW50cmVlLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9zZGstcGF5bWVudC1zeXN0ZW1zL2FwcGxlLXBheS9zZXNzaW9uLWhhbmRsZXJzL2JyYWludHJlZS5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUVyRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUc1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBSTVCLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSw4QkFBOEI7SUFHbEUsWUFDd0MsTUFBc0IsRUFDM0MsZ0JBQWtDLEVBQ2xDLG1CQUF3QztRQUV6RCxLQUFLLEVBQUUsQ0FBQztRQUo4QixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUMzQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFMbkQsa0JBQWEsR0FBb0IsSUFBSSxDQUFDO0lBUTlDLENBQUM7SUFFTSxTQUFTLENBQUMsTUFBZ0I7UUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVNLFlBQVksQ0FDakIsTUFBc0IsRUFDdEIsZ0JBQW9DLEVBQ3BDLHVCQUFtQztRQUVuQyxJQUFJLENB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QUFDO1lBQ3pDLHVCQUF1QixFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBRUYsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xCLENBQUM7OEdBekhVLGdCQUFnQixrQkFJakIsV0FBVztrSEFKVixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7OzBCQUtOLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXBwbGVQYXkgfSBmcm9tICdicmFpbnRyZWUtd2ViJztcbmltcG9ydCB7IEVsa0xvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vsay9lbGstbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JUYWdzIH0gZnJvbSAnLi4vLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lcnJvcnMvZWxrLWVycm9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgRXh0ZW5kZWRXaW5kb3cgfSBmcm9tICcuLi8uLi8uLi9leHRlbmRlZC13aW5kb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi4vYXBwbGUtcGF5LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgYXBwbGVQYXlWZXJzaW9uIH0gZnJvbSAnLi4vYXBwbGUtcGF5LmNvbnN0JztcbmltcG9ydCB7IEFwcGxlUGF5RXJyb3JzIH0gZnJvbSAnLi4vYXBwbGUtcGF5LmVycm9ycy5lbnVtJztcbmltcG9ydCB7IEFwcGxlUGF5U2Vzc2lvbkhhbmRsZXJBYnN0cmFjdCB9IGZyb20gJy4vc2Vzc2lvbi1oYW5kbGVyLmFic3RyYWN0JztcbmltcG9ydCB7IFN0YXJ0U2Vzc2lvblBhcmFtcyB9IGZyb20gJy4vc3RhcnQtc2Vzc2lvbi1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcGxlUGF5Q2FydFNlcnZpY2UgfSBmcm9tICcuLi9hcHBsZS1wYXktY2FydC9hcHBsZS1wYXktY2FydC5zZXJ2aWNlJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcGxlUGF5RXJyb3IgfSBmcm9tICcuL2FwcGxlLXBheS1zZXNzaW9uLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCcmFpbnRyZWVIYW5kbGVyIGV4dGVuZHMgQXBwbGVQYXlTZXNzaW9uSGFuZGxlckFic3RyYWN0IHtcbiAgcHJpdmF0ZSBwYXltZW50Q2xpZW50OiBBcHBsZVBheSB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogRXh0ZW5kZWRXaW5kb3csXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGtMb2dnZXJTZXJ2aWNlOiBFbGtMb2dnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwbGVQYXlDYXJ0U2VydmljZTogQXBwbGVQYXlDYXJ0U2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIHNldENsaWVudChjbGllbnQ6IEFwcGxlUGF5KTogdm9pZCB7XG4gICAgdGhpcy5wYXltZW50Q2xpZW50ID0gY2xpZW50O1xuICB9XG5cbiAgcHVibGljIHN0YXJ0U2Vzc2lvbihcbiAgICBwYXJhbXM6IEFwcGxlUGF5UGFyYW1zLFxuICAgIGFkZGl0aW9uYWxQYXJhbXM6IFN0YXJ0U2Vzc2lvblBhcmFtcyxcbiAgICBhcHBsZVBheUZpbmFsbHlDYWxsYmFjazogKCkgPT4gdm9pZFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucGF5bWVudENsaWVudCkge1xuICAgICAgY29uc29sZS5lcnJvcihBcHBsZVBheUVycm9ycy5icmFpbnRyZWVJbml0aWFsaXplRXJyb3IpO1xuICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZyhBcHBsZVBheUVycm9ycy5icmFpbnRyZWVJbml0aWFsaXplRXJyb3IsIFtcbiAgICAgICAgRXJyb3JUYWdzLkFQUExFUEFZLFxuICAgICAgXSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IHRoaXMuYnVpbGRQYXltZW50UmVxdWVzdChwYXJhbXMpO1xuXG4gICAgY29uc3QgYXBwbGVQYXlSZXF1ZXN0ID0gdGhpcy5wYXltZW50Q2xpZW50LmNyZWF0ZVBheW1lbnRSZXF1ZXN0KHJlcXVlc3QpO1xuXG4gICAgY29uc3Qgc2Vzc2lvbiA9IG5ldyB0aGlzLndpbmRvdy5BcHBsZVBheVNlc3Npb24oXG4gICAgICBhcHBsZVBheVZlcnNpb24sXG4gICAgICBhcHBsZVBheVJlcXVlc3RcbiAgICApO1xuXG4gICAgY29uc3QgeyBpc0FwcGxlUGF5SW5zdGFudEZsb3dFbmFibGVkLCB0b3BMZXZlbERvbWFpbiB9ID0gYWRkaXRpb25hbFBhcmFtcztcblxuICAgIHNlc3Npb24ub25zaGlwcGluZ2NvbnRhY3RzZWxlY3RlZCA9IChldmVudCkgPT4ge1xuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLmNhcnRTdWNjZXNzZnVsUmVjYWxjdWxhdGVkJFxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKCh1cGRhdGVkUHJpY2UpID0+IHtcbiAgICAgICAgICBjb25zdCBjb250YWN0VXBkYXRlID1cbiAgICAgICAgICAgIHRoaXMuYXBwbGVQYXlDYXJ0U2VydmljZS5idWlsZFNoaXBwaW5nQ29udGFjdFVwZGF0ZShcbiAgICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgICB1cGRhdGVkUHJpY2VcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKGNvbnRhY3RVcGRhdGUpO1xuICAgICAgICB9KTtcblxuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLmNhcnRFcnJvclJlY2FsY3VsYXRlZCQuc3Vic2NyaWJlKFxuICAgICAgICAoZXJyb3I6IEFwcGxlUGF5RXJyb3IpID0+IHtcbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKHtcbiAgICAgICAgICAgIGVycm9yczogW2Vycm9yXSxcbiAgICAgICAgICAgIG5ld1RvdGFsOiB7XG4gICAgICAgICAgICAgIGxhYmVsOiBwYXJhbXMudG90YWxMYWJlbCxcbiAgICAgICAgICAgICAgYW1vdW50OiBwYXJhbXMudG90YWxBbW91bnQ/LnRvU3RyaW5nKCksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3RhdHVzOiAnU1RBVFVTX0ZBSUxVUkUnLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICB0aGlzLmFwcGxlUGF5Q2FydFNlcnZpY2UucmVjYWxjdWxhdGVDYXJ0VGF4ZXMoZXZlbnQuc2hpcHBpbmdDb250YWN0KTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5vbnZhbGlkYXRlbWVyY2hhbnQgPSAoZXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHZhbGlkYXRpb25QYXJhbXMgPSB7XG4gICAgICAgIHZhbGlkYXRpb25VUkw6IGV2ZW50LnZhbGlkYXRpb25VUkwsXG4gICAgICAgIGRpc3BsYXlOYW1lOiBwYXJhbXMudG90YWxMYWJlbCxcbiAgICAgIH07XG5cbiAgICAgIGlmIChpc0FwcGxlUGF5SW5zdGFudEZsb3dFbmFibGVkICYmIHRvcExldmVsRG9tYWluKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdW5rbm93biBwcm9wZXJ0eVxuICAgICAgICB2YWxpZGF0aW9uUGFyYW1zLmRvbWFpbk5hbWUgPSB0b3BMZXZlbERvbWFpbjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5wYXltZW50Q2xpZW50XG4gICAgICAgID8ucGVyZm9ybVZhbGlkYXRpb24odmFsaWRhdGlvblBhcmFtcylcbiAgICAgICAgLnRoZW4oKG1lcmNoYW50U2Vzc2lvbikgPT4ge1xuICAgICAgICAgIHNlc3Npb24uY29tcGxldGVNZXJjaGFudFZhbGlkYXRpb24obWVyY2hhbnRTZXNzaW9uKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMubWVyY2hhbnRWYWxpZGF0aW9uRXJyb3IsIGVycm9yKTtcbiAgICAgICAgICBzZXNzaW9uLmFib3J0KCk7XG4gICAgICAgICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2soKTtcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIHNlc3Npb24ub25wYXltZW50YXV0aG9yaXplZCA9IChldmVudCkgPT4ge1xuICAgICAgdGhpcy5wYXltZW50Q2xpZW50XG4gICAgICAgID8udG9rZW5pemUoeyB0b2tlbjogZXZlbnQucGF5bWVudC50b2tlbiB9KVxuICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB0aGlzLnBheW1lbnQubmV4dChcbiAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgdG9rZW46IHJlc3BvbnNlPy5ub25jZSA/PyAnJyxcbiAgICAgICAgICAgICAgZW1haWw6IGV2ZW50LnBheW1lbnQuYmlsbGluZ0NvbnRhY3Q/LmVtYWlsQWRkcmVzcyA/PyBudWxsLFxuICAgICAgICAgICAgICBwb3N0YWxDb2RlOiBldmVudC5wYXltZW50LmJpbGxpbmdDb250YWN0Py5wb3N0YWxDb2RlID8/IG51bGwsXG4gICAgICAgICAgICAgIHNoaXBwaW5nRW1haWw6XG4gICAgICAgICAgICAgICAgZXZlbnQucGF5bWVudC5zaGlwcGluZ0NvbnRhY3Q/LmVtYWlsQWRkcmVzcyA/PyBudWxsLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICAgIHNlc3Npb24uY29tcGxldGVQYXltZW50KHRoaXMud2luZG93LkFwcGxlUGF5U2Vzc2lvbi5TVEFUVVNfU1VDQ0VTUyk7XG4gICAgICAgICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2soKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0FwcGxlIFBheTogVG9rZW5pemF0aW9uIGVycm9yJywgZXJyb3IpO1xuICAgICAgICAgIHNlc3Npb24uY29tcGxldGVQYXltZW50KHRoaXMud2luZG93LkFwcGxlUGF5U2Vzc2lvbi5TVEFUVVNfRkFJTFVSRSk7XG4gICAgICAgICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2soKTtcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIHNlc3Npb24ub25jYW5jZWwgPSAoZXZlbnQpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMuY2FuY2VsbGVkLCBldmVudCk7XG4gICAgICB0aGlzLmVtaXRFcnJvcihBcHBsZVBheUVycm9ycy5jYW5jZWxsZWQpO1xuICAgICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2soKTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5iZWdpbigpO1xuICB9XG59XG4iXX0=
@@ -15,7 +15,7 @@ export class CheckoutHandler extends ApplePaySessionHandlerAbstract {
15
15
  this.http = http;
16
16
  this.applePayCartService = applePayCartService;
17
17
  }
18
- startSession(params, additionalParams) {
18
+ startSession(params, additionalParams, applePayFinallyCallback) {
19
19
  const request = this.buildPaymentRequest(params);
20
20
  const session = new this.window.ApplePaySession(applePayVersion, request);
21
21
  session.onshippingcontactselected = (event) => {
@@ -59,6 +59,7 @@ export class CheckoutHandler extends ApplePaySessionHandlerAbstract {
59
59
  error: (error) => {
60
60
  console.error(ApplePayErrors.merchantValidationError, error);
61
61
  session.abort();
62
+ applePayFinallyCallback();
62
63
  },
63
64
  });
64
65
  };
@@ -70,10 +71,12 @@ export class CheckoutHandler extends ApplePaySessionHandlerAbstract {
70
71
  shippingEmail: event.payment.shippingContact?.emailAddress ?? null,
71
72
  }));
72
73
  session.completePayment(this.window.ApplePaySession.STATUS_SUCCESS);
74
+ applePayFinallyCallback();
73
75
  };
74
76
  session.oncancel = (event) => {
75
77
  console.error(ApplePayErrors.cancelled, event);
76
78
  this.emitError(ApplePayErrors.cancelled);
79
+ applePayFinallyCallback();
77
80
  };
78
81
  session.begin();
79
82
  }
@@ -86,4 +89,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
86
89
  type: Inject,
87
90
  args: [windowToken]
88
91
  }] }, { type: i1.HttpClient }, { type: i2.ApplePayCartService }] });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tvdXQuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3Nkay1wYXltZW50LXN5c3RlbXMvYXBwbGUtcGF5L3Nlc3Npb24taGFuZGxlcnMvY2hlY2tvdXQuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTXBELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUk1QixNQUFNLE9BQU8sZUFBZ0IsU0FBUSw4QkFBOEI7SUFDakUsWUFDd0MsTUFBc0IsRUFDM0MsSUFBZ0IsRUFDaEIsbUJBQXdDO1FBRXpELEtBQUssRUFBRSxDQUFDO1FBSjhCLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQzNDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUczRCxDQUFDO0lBRU0sWUFBWSxDQUNqQixNQUFzQixFQUN0QixnQkFBb0M7UUFFcEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWpELE1BQU0sT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsZUFBZSxFQUFFLE9BQU8sQ0FB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Q0FBQyxlQUFlLEVBQUUsWUFBWSxJQUFJLElBQUk7YUFDbkUsQ0FBQyxDQUNILENBQUM7WUFFRixPQUFPLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RFLENBQUMsQ0FBQztRQUVGLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMzQixPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0MsQ0FBQyxDQUFDO1FBRUYsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xCLENBQUM7OEdBbEdVLGVBQWUsa0JBRWhCLFdBQVc7a0hBRlYsZUFBZTs7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVTs7MEJBR04sTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVuZGVkV2luZG93IH0gZnJvbSAnLi4vLi4vLi4vZXh0ZW5kZWQtd2luZG93LmludGVyZmFjZSc7XG5pbXBvcnQgeyB3aW5kb3dUb2tlbiB9IGZyb20gJy4uLy4uLy4uL3dpbmRvdy50b2tlbic7XG5pbXBvcnQgeyBBcHBsZVBheVBhcmFtcyB9IGZyb20gJy4uL2FwcGxlLXBheS1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIEFwcGxlUGF5RXJyb3IsXG4gIEdldE1lcmNoYW50U2Vzc2lvblJlc3BvbnNlLFxufSBmcm9tICcuL2FwcGxlLXBheS1zZXNzaW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBhcHBsZVBheVZlcnNpb24gfSBmcm9tICcuLi9hcHBsZS1wYXkuY29uc3QnO1xuaW1wb3J0IHsgQXBwbGVQYXlFcnJvcnMgfSBmcm9tICcuLi9hcHBsZS1wYXkuZXJyb3JzLmVudW0nO1xuaW1wb3J0IHsgQXBwbGVQYXlTZXNzaW9uSGFuZGxlckFic3RyYWN0IH0gZnJvbSAnLi9zZXNzaW9uLWhhbmRsZXIuYWJzdHJhY3QnO1xuaW1wb3J0IHsgU3RhcnRTZXNzaW9uUGFyYW1zIH0gZnJvbSAnLi9zdGFydC1zZXNzaW9uLXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXBwbGVQYXlDYXJ0U2VydmljZSB9IGZyb20gJy4uL2FwcGxlLXBheS1jYXJ0L2FwcGxlLXBheS1jYXJ0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2hlY2tvdXRIYW5kbGVyIGV4dGVuZHMgQXBwbGVQYXlTZXNzaW9uSGFuZGxlckFic3RyYWN0IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pIHByaXZhdGUgcmVhZG9ubHkgd2luZG93OiBFeHRlbmRlZFdpbmRvdyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcHBsZVBheUNhcnRTZXJ2aWNlOiBBcHBsZVBheUNhcnRTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgc3RhcnRTZXNzaW9uKFxuICAgIHBhcmFtczogQXBwbGVQYXlQYXJhbXMsXG4gICAgYWRkaXRpb25hbFBhcmFtczogU3RhcnRTZXNzaW9uUGFyYW1zXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLmJ1aWxkUGF5bWVudFJlcXVlc3QocGFyYW1zKTtcblxuICAgIGNvbnN0IHNlc3Npb24gPSBuZXcgdGhpcy53aW5kb3cuQXBwbGVQYXlTZXNzaW9uKGFwcGxlUGF5VmVyc2lvbiwgcmVxdWVzdCk7XG5cbiAgICBzZXNzaW9uLm9uc2hpcHBpbmdjb250YWN0c2VsZWN0ZWQgPSAoZXZlbnQpID0+IHtcbiAgICAgIHRoaXMuYXBwbGVQYXlDYXJ0U2VydmljZS5jYXJ0U3VjY2Vzc2Z1bFJlY2FsY3VsYXRlZCRcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZSgodXBkYXRlZFByaWNlKSA9PiB7XG4gICAgICAgICAgY29uc3QgY29udGFjdFVwZGF0ZSA9XG4gICAgICAgICAgICB0aGlzLmFwcGxlUGF5Q2FydFNlcnZpY2UuYnVpbGRTaGlwcGluZ0NvbnRhY3RVcGRhdGUoXG4gICAgICAgICAgICAgIHBhcmFtcyxcbiAgICAgICAgICAgICAgdXBkYXRlZFByaWNlXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZVNoaXBwaW5nQ29udGFjdFNlbGVjdGlvbihjb250YWN0VXBkYXRlKTtcbiAgICAgICAgfSk7XG5cbiAgICAgIHRoaXMuYXBwbGVQYXlDYXJ0U2VydmljZS5jYXJ0RXJyb3JSZWNhbGN1bGF0ZWQkLnN1YnNjcmliZShcbiAgICAgICAgKGVycm9yOiBBcHBsZVBheUVycm9yKSA9PiB7XG4gICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZVNoaXBwaW5nQ29udGFjdFNlbGVjdGlvbih7XG4gICAgICAgICAgICBlcnJvcnM6IFtlcnJvcl0sXG4gICAgICAgICAgICBuZXdUb3RhbDoge1xuICAgICAgICAgICAgICBsYWJlbDogcGFyYW1zLnRvdGFsTGFiZWwsXG4gICAgICAgICAgICAgIGFtb3VudDogcGFyYW1zLnRvdGFsQW1vdW50Py50b1N0cmluZygpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHN0YXR1czogJ1NUQVRVU19GQUlMVVJFJyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLnJlY2FsY3VsYXRlQ2FydFRheGVzKGV2ZW50LnNoaXBwaW5nQ29udGFjdCk7XG4gICAgfTtcblxuICAgIHNlc3Npb24ub252YWxpZGF0ZW1lcmNoYW50ID0gKGV2ZW50KSA9PiB7XG4gICAgICBjb25zdCB2YWxpZGF0aW9uUGFyYW1zID0ge1xuICAgICAgICB2YWxpZGF0aW9uVVJMOiBldmVudC52YWxpZGF0aW9uVVJMLFxuICAgICAgICBhY2NvdW50SWQ6IHBhcmFtcy5wYXlJbnN0YW5jZUFjY291bnRJZCxcbiAgICAgICAgaXNTYW5kYm94OiBwYXJhbXMuaXNTYW5kYm94LFxuICAgICAgfTtcblxuICAgICAgY29uc3QgeyBpc0FwcGxlUGF5SW5zdGFudEZsb3dFbmFibGVkLCB0b3BMZXZlbERvbWFpbiB9ID0gYWRkaXRpb25hbFBhcmFtcztcblxuICAgICAgaWYgKGlzQXBwbGVQYXlJbnN0YW50Rmxvd0VuYWJsZWQgJiYgdG9wTGV2ZWxEb21haW4pIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciB1bmtub3duIHByb3BlcnR5XG4gICAgICAgIHZhbGlkYXRpb25QYXJhbXMuZG9tYWluTmFtZSA9IHRvcExldmVsRG9tYWluO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmh0dHBcbiAgICAgICAgLnBvc3Q8R2V0TWVyY2hhbnRTZXNzaW9uUmVzcG9uc2U+KFxuICAgICAgICAgIHBhcmFtcy5nZXRBcHBsZVBheVNlc3Npb25VcmwsXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkodmFsaWRhdGlvblBhcmFtcyksXG4gICAgICAgICAge1xuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCdDb250ZW50LVR5cGUnLCAnYXBwbGljYXRpb24vanNvbicpLFxuICAgICAgICAgIH1cbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgICBuZXh0OiAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHNlc3Npb24uY29tcGxldGVNZXJjaGFudFZhbGlkYXRpb24ocmVzcG9uc2UubWVyY2hhbnRTZXNzaW9uKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMubWVyY2hhbnRWYWxpZGF0aW9uRXJyb3IsIGVycm9yKTtcbiAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5vbnBheW1lbnRhdXRob3JpemVkID0gKGV2ZW50KSA9PiB7XG4gICAgICB0aGlzLnBheW1lbnQubmV4dChcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIHRva2VuOiBldmVudC5wYXltZW50LnRva2VuID8/ICcnLFxuICAgICAgICAgIGVtYWlsOiBldmVudC5wYXltZW50LmJpbGxpbmdDb250YWN0Py5lbWFpbEFkZHJlc3MgPz8gbnVsbCxcbiAgICAgICAgICBwb3N0YWxDb2RlOiBldmVudC5wYXltZW50LmJpbGxpbmdDb250YWN0Py5wb3N0YWxDb2RlID8/IG51bGwsXG4gICAgICAgICAgc2hpcHBpbmdFbWFpbDogZXZlbnQucGF5bWVudC5zaGlwcGluZ0NvbnRhY3Q/LmVtYWlsQWRkcmVzcyA/PyBudWxsLFxuICAgICAgICB9KVxuICAgICAgKTtcblxuICAgICAgc2Vzc2lvbi5jb21wbGV0ZVBheW1lbnQodGhpcy53aW5kb3cuQXBwbGVQYXlTZXNzaW9uLlNUQVRVU19TVUNDRVNTKTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5vbmNhbmNlbCA9IChldmVudCkgPT4ge1xuICAgICAgY29uc29sZS5lcnJvcihBcHBsZVBheUVycm9ycy5jYW5jZWxsZWQsIGV2ZW50KTtcbiAgICAgIHRoaXMuZW1pdEVycm9yKEFwcGxlUGF5RXJyb3JzLmNhbmNlbGxlZCk7XG4gICAgfTtcblxuICAgIHNlc3Npb24uYmVnaW4oKTtcbiAgfVxufVxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tvdXQuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3Nkay1wYXltZW50LXN5c3RlbXMvYXBwbGUtcGF5L3Nlc3Npb24taGFuZGxlcnMvY2hlY2tvdXQuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTXBELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUk1QixNQUFNLE9BQU8sZUFBZ0IsU0FBUSw4QkFBOEI7SUFDakUsWUFDd0MsTUFBc0IsRUFDM0MsSUFBZ0IsRUFDaEIsbUJBQXdDO1FBRXpELEtBQUssRUFBRSxDQUFDO1FBSjhCLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQzNDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUczRCxDQUFDO0lBRU0sWUFBWSxDQUNqQixNQUFzQixFQUN0QixnQkFBb0MsRUFDcEMsdUJBQW1DO1FBRW5DLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVqRCxNQUFNLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLGVBQWUs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SUFBSTtnQkFDNUQsYUFBYSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLFlBQVksSUFBSSxJQUFJO2FBQ25FLENBQUMsQ0FDSCxDQUFDO1lBRUYsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNwRSx1QkFBdUIsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQztRQUVGLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMzQixPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDekMsdUJBQXVCLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUM7UUFFRixPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDbEIsQ0FBQzs4R0F0R1UsZUFBZSxrQkFFaEIsV0FBVztrSEFGVixlQUFlOzsyRkFBZixlQUFlO2tCQUQzQixVQUFVOzswQkFHTixNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXh0ZW5kZWRXaW5kb3cgfSBmcm9tICcuLi8uLi8uLi9leHRlbmRlZC13aW5kb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi4vYXBwbGUtcGF5LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgQXBwbGVQYXlFcnJvcixcbiAgR2V0TWVyY2hhbnRTZXNzaW9uUmVzcG9uc2UsXG59IGZyb20gJy4vYXBwbGUtcGF5LXNlc3Npb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IGFwcGxlUGF5VmVyc2lvbiB9IGZyb20gJy4uL2FwcGxlLXBheS5jb25zdCc7XG5pbXBvcnQgeyBBcHBsZVBheUVycm9ycyB9IGZyb20gJy4uL2FwcGxlLXBheS5lcnJvcnMuZW51bSc7XG5pbXBvcnQgeyBBcHBsZVBheVNlc3Npb25IYW5kbGVyQWJzdHJhY3QgfSBmcm9tICcuL3Nlc3Npb24taGFuZGxlci5hYnN0cmFjdCc7XG5pbXBvcnQgeyBTdGFydFNlc3Npb25QYXJhbXMgfSBmcm9tICcuL3N0YXJ0LXNlc3Npb24tcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBcHBsZVBheUNhcnRTZXJ2aWNlIH0gZnJvbSAnLi4vYXBwbGUtcGF5LWNhcnQvYXBwbGUtcGF5LWNhcnQuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDaGVja291dEhhbmRsZXIgZXh0ZW5kcyBBcHBsZVBheVNlc3Npb25IYW5kbGVyQWJzdHJhY3Qge1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCh3aW5kb3dUb2tlbikgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IEV4dGVuZGVkV2luZG93LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFwcGxlUGF5Q2FydFNlcnZpY2U6IEFwcGxlUGF5Q2FydFNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGFydFNlc3Npb24oXG4gICAgcGFyYW1zOiBBcHBsZVBheVBhcmFtcyxcbiAgICBhZGRpdGlvbmFsUGFyYW1zOiBTdGFydFNlc3Npb25QYXJhbXMsXG4gICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2s6ICgpID0+IHZvaWRcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgcmVxdWVzdCA9IHRoaXMuYnVpbGRQYXltZW50UmVxdWVzdChwYXJhbXMpO1xuXG4gICAgY29uc3Qgc2Vzc2lvbiA9IG5ldyB0aGlzLndpbmRvdy5BcHBsZVBheVNlc3Npb24oYXBwbGVQYXlWZXJzaW9uLCByZXF1ZXN0KTtcblxuICAgIHNlc3Npb24ub25zaGlwcGluZ2NvbnRhY3RzZWxlY3RlZCA9IChldmVudCkgPT4ge1xuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLmNhcnRTdWNjZXNzZnVsUmVjYWxjdWxhdGVkJFxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKCh1cGRhdGVkUHJpY2UpID0+IHtcbiAgICAgICAgICBjb25zdCBjb250YWN0VXBkYXRlID1cbiAgICAgICAgICAgIHRoaXMuYXBwbGVQYXlDYXJ0U2VydmljZS5idWlsZFNoaXBwaW5nQ29udGFjdFVwZGF0ZShcbiAgICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgICB1cGRhdGVkUHJpY2VcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKGNvbnRhY3RVcGRhdGUpO1xuICAgICAgICB9KTtcblxuICAgICAgdGhpcy5hcHBsZVBheUNhcnRTZXJ2aWNlLmNhcnRFcnJvclJlY2FsY3VsYXRlZCQuc3Vic2NyaWJlKFxuICAgICAgICAoZXJyb3I6IEFwcGxlUGF5RXJyb3IpID0+IHtcbiAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKHtcbiAgICAgICAgICAgIGVycm9yczogW2Vycm9yXSxcbiAgICAgICAgICAgIG5ld1RvdGFsOiB7XG4gICAgICAgICAgICAgIGxhYmVsOiBwYXJhbXMudG90YWxMYWJlbCxcbiAgICAgICAgICAgICAgYW1vdW50OiBwYXJhbXMudG90YWxBbW91bnQ/LnRvU3RyaW5nKCksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3RhdHVzOiAnU1RBVFVTX0ZBSUxVUkUnLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICB0aGlzLmFwcGxlUGF5Q2FydFNlcnZpY2UucmVjYWxjdWxhdGVDYXJ0VGF4ZXMoZXZlbnQuc2hpcHBpbmdDb250YWN0KTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5vbnZhbGlkYXRlbWVyY2hhbnQgPSAoZXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHZhbGlkYXRpb25QYXJhbXMgPSB7XG4gICAgICAgIHZhbGlkYXRpb25VUkw6IGV2ZW50LnZhbGlkYXRpb25VUkwsXG4gICAgICAgIGFjY291bnRJZDogcGFyYW1zLnBheUluc3RhbmNlQWNjb3VudElkLFxuICAgICAgICBpc1NhbmRib3g6IHBhcmFtcy5pc1NhbmRib3gsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCB7IGlzQXBwbGVQYXlJbnN0YW50Rmxvd0VuYWJsZWQsIHRvcExldmVsRG9tYWluIH0gPSBhZGRpdGlvbmFsUGFyYW1zO1xuXG4gICAgICBpZiAoaXNBcHBsZVBheUluc3RhbnRGbG93RW5hYmxlZCAmJiB0b3BMZXZlbERvbWFpbikge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHVua25vd24gcHJvcGVydHlcbiAgICAgICAgdmFsaWRhdGlvblBhcmFtcy5kb21haW5OYW1lID0gdG9wTGV2ZWxEb21haW47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaHR0cFxuICAgICAgICAucG9zdDxHZXRNZXJjaGFudFNlc3Npb25SZXNwb25zZT4oXG4gICAgICAgICAgcGFyYW1zLmdldEFwcGxlUGF5U2Vzc2lvblVybCxcbiAgICAgICAgICBKU09OLnN0cmluZ2lmeSh2YWxpZGF0aW9uUGFyYW1zKSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJyksXG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6IChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZU1lcmNoYW50VmFsaWRhdGlvbihyZXNwb25zZS5tZXJjaGFudFNlc3Npb24pO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihBcHBsZVBheUVycm9ycy5tZXJjaGFudFZhbGlkYXRpb25FcnJvciwgZXJyb3IpO1xuICAgICAgICAgICAgc2Vzc2lvbi5hYm9ydCgpO1xuICAgICAgICAgICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2soKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5vbnBheW1lbnRhdXRob3JpemVkID0gKGV2ZW50KSA9PiB7XG4gICAgICB0aGlzLnBheW1lbnQubmV4dChcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIHRva2VuOiBldmVudC5wYXltZW50LnRva2VuID8/ICcnLFxuICAgICAgICAgIGVtYWlsOiBldmVudC5wYXltZW50LmJpbGxpbmdDb250YWN0Py5lbWFpbEFkZHJlc3MgPz8gbnVsbCxcbiAgICAgICAgICBwb3N0YWxDb2RlOiBldmVudC5wYXltZW50LmJpbGxpbmdDb250YWN0Py5wb3N0YWxDb2RlID8/IG51bGwsXG4gICAgICAgICAgc2hpcHBpbmdFbWFpbDogZXZlbnQucGF5bWVudC5zaGlwcGluZ0NvbnRhY3Q/LmVtYWlsQWRkcmVzcyA/PyBudWxsLFxuICAgICAgICB9KVxuICAgICAgKTtcblxuICAgICAgc2Vzc2lvbi5jb21wbGV0ZVBheW1lbnQodGhpcy53aW5kb3cuQXBwbGVQYXlTZXNzaW9uLlNUQVRVU19TVUNDRVNTKTtcbiAgICAgIGFwcGxlUGF5RmluYWxseUNhbGxiYWNrKCk7XG4gICAgfTtcblxuICAgIHNlc3Npb24ub25jYW5jZWwgPSAoZXZlbnQpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoQXBwbGVQYXlFcnJvcnMuY2FuY2VsbGVkLCBldmVudCk7XG4gICAgICB0aGlzLmVtaXRFcnJvcihBcHBsZVBheUVycm9ycy5jYW5jZWxsZWQpO1xuICAgICAgYXBwbGVQYXlGaW5hbGx5Q2FsbGJhY2soKTtcbiAgICB9O1xuXG4gICAgc2Vzc2lvbi5iZWdpbigpO1xuICB9XG59XG4iXX0=
@@ -28,4 +28,4 @@ export class ApplePaySessionHandlerAbstract {
28
28
  };
29
29
  }
30
30
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1oYW5kbGVyLmFic3RyYWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9hcHBsZS1wYXkvc2Vzc2lvbi1oYW5kbGVycy9zZXNzaW9uLWhhbmRsZXIuYWJzdHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU0zQyxNQUFNLE9BQWdCLDhCQUE4QjtJQUFwRDtRQUNxQixZQUFPLEdBQW9CLElBQUksT0FBTyxFQUFFLENBQUM7UUFDM0Msa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBa0IsQ0FBQztJQW1DakUsQ0FBQztJQWpDQyxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQU9TLFNBQVMsQ0FBQyxLQUFxQjtRQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRVMsbUJBQW1CLENBQzNCLE1BQXNCO1FBRXRCLE9BQU87WUFDTCxLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFLE1BQU0sQ0FBQyxVQUFVO2dCQUN4QixNQUFNLEVBQUUsTUFBTSxDQUFDLFdBQVc7YUFDM0I7WUFDRCxZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7WUFDakMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLG9CQUFvQixFQUFFLE1BQU0sQ0FBQyxvQkFBb0I7WUFDakQsNEJBQTRCLEVBQUUsTUFBTSxDQUFDLDRCQUE0QjtZQUNqRSw2QkFBNkIsRUFBRSxNQUFNLENBQUMsNkJBQTZCO1lBQ25FLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxpQkFBaUI7U0FDNUMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi4vYXBwbGUtcGF5LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXBwbGVQYXlFcnJvcnMgfSBmcm9tICcuLi9hcHBsZS1wYXkuZXJyb3JzLmVudW0nO1xuaW1wb3J0IHsgQXBwbGVQYXlQYXltZW50UmVxdWVzdCB9IGZyb20gJy4vYXBwbGUtcGF5LXNlc3Npb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFN0YXJ0U2Vzc2lvblBhcmFtcyB9IGZyb20gJy4vc3RhcnQtc2Vzc2lvbi1wYXJhbXMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFwcGxlUGF5U2Vzc2lvbkhhbmRsZXJBYnN0cmFjdCB7XG4gIHByb3RlY3RlZCByZWFkb25seSBwYXltZW50OiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lcnJvclN1YmplY3QgPSBuZXcgU3ViamVjdDxBcHBsZVBheUVycm9ycz4oKTtcblxuICBwdWJsaWMgZ2V0IGVycm9yJCgpOiBPYnNlcnZhYmxlPEFwcGxlUGF5RXJyb3JzPiB7XG4gICAgcmV0dXJuIHRoaXMuX2Vycm9yU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGF5bWVudCQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wYXltZW50LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IHN0YXJ0U2Vzc2lvbihcbiAgICBwYXJhbXM6IEFwcGxlUGF5UGFyYW1zLFxuICAgIGFkZGl0aW9uYWxQYXJhbXM6IFN0YXJ0U2Vzc2lvblBhcmFtc1xuICApOiB2b2lkO1xuXG4gIHByb3RlY3RlZCBlbWl0RXJyb3IoZXJyb3I6IEFwcGxlUGF5RXJyb3JzKTogdm9pZCB7XG4gICAgdGhpcy5fZXJyb3JTdWJqZWN0Lm5leHQoZXJyb3IpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJ1aWxkUGF5bWVudFJlcXVlc3QoXG4gICAgcGFyYW1zOiBBcHBsZVBheVBhcmFtc1xuICApOiBBcHBsZVBheVBheW1lbnRSZXF1ZXN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgdG90YWw6IHtcbiAgICAgICAgbGFiZWw6IHBhcmFtcy50b3RhbExhYmVsLFxuICAgICAgICBhbW91bnQ6IHBhcmFtcy50b3RhbEFtb3VudCxcbiAgICAgIH0sXG4gICAgICBjdXJyZW5jeUNvZGU6IHBhcmFtcy5jdXJyZW5jeUNvZGUsXG4gICAgICBjb3VudHJ5Q29kZTogcGFyYW1zLmNvdW50cnlDb2RlLFxuICAgICAgbWVyY2hhbnRDYXBhYmlsaXRpZXM6IHBhcmFtcy5tZXJjaGFudENhcGFiaWxpdGllcyxcbiAgICAgIHJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHM6IHBhcmFtcy5yZXF1aXJlZEJpbGxpbmdDb250YWN0RmllbGRzLFxuICAgICAgcmVxdWlyZWRTaGlwcGluZ0NvbnRhY3RGaWVsZHM6IHBhcmFtcy5yZXF1aXJlZFNoaXBwaW5nQ29udGFjdEZpZWxkcyxcbiAgICAgIHN1cHBvcnRlZE5ldHdvcmtzOiBwYXJhbXMuc3VwcG9ydGVkTmV0d29ya3MsXG4gICAgfTtcbiAgfVxufVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1oYW5kbGVyLmFic3RyYWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9hcHBsZS1wYXkvc2Vzc2lvbi1oYW5kbGVycy9zZXNzaW9uLWhhbmRsZXIuYWJzdHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU0zQyxNQUFNLE9BQWdCLDhCQUE4QjtJQUFwRDtRQUNxQixZQUFPLEdBQW9CLElBQUksT0FBTyxFQUFFLENBQUM7UUFDM0Msa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBa0IsQ0FBQztJQW9DakUsQ0FBQztJQWxDQyxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQVFTLFNBQVMsQ0FBQyxLQUFxQjtRQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRVMsbUJBQW1CLENBQzNCLE1BQXNCO1FBRXRCLE9BQU87WUFDTCxLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFLE1BQU0sQ0FBQyxVQUFVO2dCQUN4QixNQUFNLEVBQUUsTUFBTSxDQUFDLFdBQVc7YUFDM0I7WUFDRCxZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7WUFDakMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLG9CQUFvQixFQUFFLE1BQU0sQ0FBQyxvQkFBb0I7WUFDakQsNEJBQTRCLEVBQUUsTUFBTSxDQUFDLDRCQUE0QjtZQUNqRSw2QkFBNkIsRUFBRSxNQUFNLENBQUMsNkJBQTZCO1lBQ25FLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxpQkFBaUI7U0FDNUMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcGxlUGF5UGFyYW1zIH0gZnJvbSAnLi4vYXBwbGUtcGF5LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXBwbGVQYXlFcnJvcnMgfSBmcm9tICcuLi9hcHBsZS1wYXkuZXJyb3JzLmVudW0nO1xuaW1wb3J0IHsgQXBwbGVQYXlQYXltZW50UmVxdWVzdCB9IGZyb20gJy4vYXBwbGUtcGF5LXNlc3Npb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFN0YXJ0U2Vzc2lvblBhcmFtcyB9IGZyb20gJy4vc3RhcnQtc2Vzc2lvbi1wYXJhbXMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFwcGxlUGF5U2Vzc2lvbkhhbmRsZXJBYnN0cmFjdCB7XG4gIHByb3RlY3RlZCByZWFkb25seSBwYXltZW50OiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lcnJvclN1YmplY3QgPSBuZXcgU3ViamVjdDxBcHBsZVBheUVycm9ycz4oKTtcblxuICBwdWJsaWMgZ2V0IGVycm9yJCgpOiBPYnNlcnZhYmxlPEFwcGxlUGF5RXJyb3JzPiB7XG4gICAgcmV0dXJuIHRoaXMuX2Vycm9yU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGF5bWVudCQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wYXltZW50LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IHN0YXJ0U2Vzc2lvbihcbiAgICBwYXJhbXM6IEFwcGxlUGF5UGFyYW1zLFxuICAgIGFkZGl0aW9uYWxQYXJhbXM6IFN0YXJ0U2Vzc2lvblBhcmFtcyxcbiAgICBhcHBsZVBheUZpbmFsbHlDYWxsYmFjazogKCkgPT4gdm9pZFxuICApOiB2b2lkO1xuXG4gIHByb3RlY3RlZCBlbWl0RXJyb3IoZXJyb3I6IEFwcGxlUGF5RXJyb3JzKTogdm9pZCB7XG4gICAgdGhpcy5fZXJyb3JTdWJqZWN0Lm5leHQoZXJyb3IpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJ1aWxkUGF5bWVudFJlcXVlc3QoXG4gICAgcGFyYW1zOiBBcHBsZVBheVBhcmFtc1xuICApOiBBcHBsZVBheVBheW1lbnRSZXF1ZXN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgdG90YWw6IHtcbiAgICAgICAgbGFiZWw6IHBhcmFtcy50b3RhbExhYmVsLFxuICAgICAgICBhbW91bnQ6IHBhcmFtcy50b3RhbEFtb3VudCxcbiAgICAgIH0sXG4gICAgICBjdXJyZW5jeUNvZGU6IHBhcmFtcy5jdXJyZW5jeUNvZGUsXG4gICAgICBjb3VudHJ5Q29kZTogcGFyYW1zLmNvdW50cnlDb2RlLFxuICAgICAgbWVyY2hhbnRDYXBhYmlsaXRpZXM6IHBhcmFtcy5tZXJjaGFudENhcGFiaWxpdGllcyxcbiAgICAgIHJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHM6IHBhcmFtcy5yZXF1aXJlZEJpbGxpbmdDb250YWN0RmllbGRzLFxuICAgICAgcmVxdWlyZWRTaGlwcGluZ0NvbnRhY3RGaWVsZHM6IHBhcmFtcy5yZXF1aXJlZFNoaXBwaW5nQ29udGFjdEZpZWxkcyxcbiAgICAgIHN1cHBvcnRlZE5ldHdvcmtzOiBwYXJhbXMuc3VwcG9ydGVkTmV0d29ya3MsXG4gICAgfTtcbiAgfVxufVxuIl19