@xsolla/payment-client-core 0.2.48 → 0.2.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/core/extended-window.interface.mjs +1 -1
- package/esm2022/lib/core/http/secure-api/secure-api.service.mjs +1 -1
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/apple-pay-params.interface.mjs +1 -1
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/apple-pay.service.mjs +4 -5
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/params-builder/apple-pay-params-builder.service.mjs +90 -0
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/session-handlers/apple-pay-session.interface.mjs +2 -0
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/session-handlers/braintree.handler.mjs +5 -7
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/session-handlers/checkout.handler.mjs +5 -7
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/session-handlers/session-handler.abstract.mjs +1 -1
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/session-handlers/start-session-params.interface.mjs +2 -0
- package/esm2022/lib/core/sdk-payment-systems/google-pay/google-pay.service.mjs +11 -1
- package/esm2022/lib/core/settings/configuration.interface.mjs +1 -1
- package/esm2022/lib/core/settings/settings.service.mjs +12 -1
- package/esm2022/lib/core-library.service.mjs +6 -3
- package/fesm2022/xsolla-payment-client-core.mjs +36 -17
- package/fesm2022/xsolla-payment-client-core.mjs.map +1 -1
- package/lib/core/extended-window.interface.d.ts +1 -1
- package/lib/core/http/secure-api/secure-api.service.d.ts +3 -1
- package/lib/core/sdk-payment-systems/apple-pay/apple-pay-params.interface.d.ts +18 -1
- package/lib/core/sdk-payment-systems/apple-pay/apple-pay.service.d.ts +3 -2
- package/lib/core/sdk-payment-systems/apple-pay/{apple-pay-params-builder.service.d.ts → params-builder/apple-pay-params-builder.service.d.ts} +3 -3
- package/lib/core/sdk-payment-systems/apple-pay/session-handlers/braintree.handler.d.ts +2 -1
- package/lib/core/sdk-payment-systems/apple-pay/session-handlers/checkout.handler.d.ts +2 -1
- package/lib/core/sdk-payment-systems/apple-pay/session-handlers/session-handler.abstract.d.ts +3 -2
- package/lib/core/sdk-payment-systems/apple-pay/session-handlers/start-session-params.interface.d.ts +4 -0
- package/lib/core/sdk-payment-systems/google-pay/google-pay.service.d.ts +2 -0
- package/lib/core/settings/configuration.interface.d.ts +2 -0
- package/lib/core/settings/settings.service.d.ts +4 -0
- package/lib/core-library.service.d.ts +2 -3
- package/package.json +1 -1
- package/xsolla-payment-client-core-0.2.50.tgz +0 -0
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/apple-pay-params-builder.service.mjs +0 -90
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/apple-pay-session.interface.mjs +0 -2
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/checkout-params.interface.mjs +0 -2
- package/lib/core/sdk-payment-systems/apple-pay/checkout-params.interface.d.ts +0 -17
- package/xsolla-payment-client-core-0.2.48.tgz +0 -0
- /package/lib/core/sdk-payment-systems/apple-pay/{apple-pay-session.interface.d.ts → session-handlers/apple-pay-session.interface.d.ts} +0 -0
|
@@ -118,6 +118,10 @@ export class GooglePayService {
|
|
|
118
118
|
}
|
|
119
119
|
catch (error) {
|
|
120
120
|
this.paymentService.handleFailedPayment?.(error);
|
|
121
|
+
const isClosedByUser = this.isClosedByUser(error?.message ?? '');
|
|
122
|
+
const isCanceledStatus = this.isCanceledStatus(error.statusCode ?? '');
|
|
123
|
+
if (isClosedByUser || isCanceledStatus)
|
|
124
|
+
return null;
|
|
121
125
|
return checkStatusAction;
|
|
122
126
|
}
|
|
123
127
|
}
|
|
@@ -173,6 +177,12 @@ export class GooglePayService {
|
|
|
173
177
|
return this.googlePayInstantPaymentService;
|
|
174
178
|
return this.googlePayCheckoutPaymentService;
|
|
175
179
|
}
|
|
180
|
+
isClosedByUser(message) {
|
|
181
|
+
return message.toLowerCase().includes('user closed the payment request ui');
|
|
182
|
+
}
|
|
183
|
+
isCanceledStatus(statusCode) {
|
|
184
|
+
return statusCode.toLowerCase() === 'canceled';
|
|
185
|
+
}
|
|
176
186
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, deps: [{ token: windowToken }, { token: i1.ElkLoggerService }, { token: i2.PaymentSystemProcessingService }, { token: i3.GooglePayCheckoutPaymentService }, { token: i4.GooglePayInstantPaymentService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
177
187
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, providedIn: 'root' }); }
|
|
178
188
|
}
|
|
@@ -185,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
185
195
|
type: Inject,
|
|
186
196
|
args: [windowToken]
|
|
187
197
|
}] }, { type: i1.ElkLoggerService }, { type: i2.PaymentSystemProcessingService }, { type: i3.GooglePayCheckoutPaymentService }, { type: i4.GooglePayInstantPaymentService }, { type: i0.Injector }] });
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLXBheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9nb29nbGUtcGF5L2dvb2dsZS1wYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUd4RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQWtCakQsTUFBTSxPQUFPLGdCQUFnQjtJQVkzQixJQUFZLHFCQUFxQjtRQUMvQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBWSxpQ0FBaUM7UUFDM0MsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BDLENBQUM7SUFFRCxZQUVtQixNQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsOEJBQThELEVBQzlELCtCQUFnRSxFQUNoRSw4QkFBOEQsRUFDOUQsUUFBa0I7UUFMbEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBQzlELG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBaUM7UUFDaEUsbUNBQThCLEdBQTlC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LE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUM7WUFFMUIsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxNQUFNLHVCQUF1QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFFckQsSUFBSSx1QkFBdUIsRUFBRSxDQUFDO29CQUM1QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztvQkFFNUIsSUFBSSxDQUFDLDhCQUE4QixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDM0QsQ0FBQztZQUNILENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUVqQixNQUFNLElBQUksUUFBUSxDQUFDLDZDQUE2QyxDQUFDLENBQUM7UUFDcEUsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUU1QixJQUFJLENBQUMsOEJBQThCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNELENBQUM7SUFDSCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0I7WUFDbEMsT0FBTyxJQUFJLENBQUMsOEJBQThCLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUMsK0JBQStCLENBQUM7SUFDOUMsQ0FBQzs4R0FuUFUsZ0JBQWdCLGtCQXFCakIsV0FBVztrSEFyQlYsZ0JBQWdCLGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBc0JJLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyLCBPYnNlcnZhYmxlLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFbGtMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lbGsvZWxrLWxvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcEVycm9yIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lcnJvcnMvYXBwLWVycm9yLmNsYXNzJztcbmltcG9ydCB7IEVycm9yVGFncyB9IGZyb20gJy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL2Vsay1lcnJvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IEV4dGVuZGVkV2luZG93IH0gZnJvbSAnLi4vLi4vZXh0ZW5kZWQtd2luZG93LmludGVyZmFjZSc7XG5pbXBvcnQgeyBDaGVja1N0YXR1c0FjdGlvbkNyZWF0b3IgfSBmcm9tICcuLi8uLi9wYXltZW50L2FjdGlvbnMvY2hlY2stc3RhdHVzL2NoZWNrLXN0YXR1cy5hY3Rpb24uY2xhc3MnO1xuaW1wb3J0IHsgQ2hlY2tTdGF0dXNBY3Rpb24gfSBmcm9tICcuLi8uLi9wYXltZW50L2FjdGlvbnMvY2hlY2stc3RhdHVzL2NoZWNrLXN0YXR1cy5hY3Rpb24udHlwZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9hY3Rpb25zL25leHQtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyB3aW5kb3dUb2tlbiB9IGZyb20gJy4uLy4uL3dpbmRvdy50b2tlbic7XG5pbXBvcnQgeyBQYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UgfSBmcm9tICcuLi9wYXltZW50LXN5c3RlbXMvcGF5bWVudC1zeXN0ZW0tcHJvY2Vzc2luZy5zZXJ2aWNlJztcbmltcG9ydCB7IENoZWNrUGF5bWVudERldmljZURhdGEgfSBmcm9tICcuL2NoZWNrLXBheW1lbnQtZGV2aWNlLWRhdGEuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdvb2dsZVBheUJ1dHRvbkNvbG9yVHlwZSB9IGZyb20gJy4vZ29vZ2xlLXBheS1idXR0b24tY29sb3IudHlwZSc7XG5pbXBvcnQgeyBHb29nbGVQYXlJbml0UGFyYW1zIH0gZnJvbSAnLi9nb29nbGUtcGF5LWluaXQtcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBHb29nbGVQYXlDbGllbnQsXG4gIEdvb2dsZVBheUNsaWVudEluaXREYXRhLFxuICBQYXltZW50QXV0aG9yaXplZEhhbmRsZXIsXG4gIFBheW1lbnREYXRhQ2hhbmdlZEhhbmRsZXIsXG59IGZyb20gJy4vZ29vZ2xlLXBheS1saWJyYXJ5LmludGVyZmFjZSc7XG5pbXBvcnQgeyBHb29nbGVQYXlDaGVja291dFBheW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9wYXltZW50L2dvb2dsZS1wYXktY2hlY2tvdXQtcGF5bWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEdvb2dsZVBheUluc3RhbnRQYXltZW50U2VydmljZSB9IGZyb20gJy4vcGF5bWVudC9nb29nbGUtcGF5LWluc3RhbnQtcGF5bWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEdvb2dsZVBheVBheW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9wYXltZW50L2dvb2dsZS1wYXktcGF5bWVudC1zZXJ2aWNlLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBHb29nbGVQYXlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBnb29nbGVQYXlTY3JpcHRVcmwgPSAnaHR0cHM6Ly9wYXkuZ29vZ2xlLmNvbS9ncC9wL2pzL3BheS5qcyc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSByZWFkeVRvUGF5ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuIHwgbnVsbD4obnVsbCk7XG5cbiAgcHJpdmF0ZSBnb29nbGVQYXltZW50Q2xpZW50OiBHb29nbGVQYXlDbGllbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBpbml0UGFyYW1zITogR29vZ2xlUGF5SW5pdFBhcmFtcztcbiAgcHJpdmF0ZSBwYXltZW50U2VydmljZTogR29vZ2xlUGF5UGF5bWVudFNlcnZpY2UgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIG9uUGF5bWVudERhdGFDaGFuZ2VkITogUGF5bWVudERhdGFDaGFuZ2VkSGFuZGxlcjtcbiAgcHJpdmF0ZSBvblBheW1lbnRBdXRob3JpemVkITogUGF5bWVudEF1dGhvcml6ZWRIYW5kbGVyO1xuXG4gIHByaXZhdGUgZ2V0IGxpYnJhcnlXYXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLndpbmRvdy5nb29nbGU7XG4gIH1cblxuICBwcml2YXRlIGdldCBnb29nbGVQYXltZW50Q2xpZW50V2FzSW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5nb29nbGVQYXltZW50Q2xpZW50O1xuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IEV4dGVuZGVkV2luZG93LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxrTG9nZ2VyU2VydmljZTogRWxrTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBheW1lbnRTeXN0ZW1Qcm9jZXNzaW5nU2VydmljZTogUGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZ29vZ2xlUGF5Q2hlY2tvdXRQYXltZW50U2VydmljZTogR29vZ2xlUGF5Q2hlY2tvdXRQYXltZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGdvb2dsZVBheUluc3RhbnRQYXltZW50U2VydmljZTogR29vZ2xlUGF5SW5zdGFudFBheW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yXG4gICkge31cblxuICBwdWJsaWMgZ2V0IHJlYWR5VG9QYXkkKCk6IE9ic2VydmFibGU8Ym9vbGVhbiB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5yZWFkeVRvUGF5LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGlzUmVhZHlUb1BheSgpOiBib29sZWFuIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMucmVhZHlUb1BheS5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIGluaXRHb29nbGVQYXlMaWJyYXJ5KGRhdGE6IEdvb2dsZVBheUluaXRQYXJhbXMpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRQYXJhbXMgPSBkYXRhO1xuICAgIHRoaXMub25QYXltZW50RGF0YUNoYW5nZWQgPSBkYXRhLm9uUGF5bWVudERhdGFDaGFuZ2VkO1xuICAgIHRoaXMub25QYXltZW50QXV0aG9yaXplZCA9IGRhdGEub25QYXltZW50QXV0aG9yaXplZDtcblxuICAgIGlmICh0aGlzLmxpYnJhcnlXYXNJbml0aWFsaXplZCAmJiB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnRXYXNJbml0aWFsaXplZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxpYnJhcnlXYXNJbml0aWFsaXplZCAmJiAhdGhpcy5nb29nbGVQYXltZW50Q2xpZW50V2FzSW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuc2V0dXBHb29nbGVQYXlDbGllbnQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnBheW1lbnRTeXN0ZW1Qcm9jZXNzaW5nU2VydmljZS5sb2FkU2NyaXB0KFxuICAgICAgdGhpcy5nb29nbGVQYXlTY3JpcHRVcmwsXG4gICAgICB0aGlzLm9uTG9hZFNjcmlwdC5iaW5kKHRoaXMpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjaGVja1BheW1lbnREZXZpY2UoZGF0YTogQ2hlY2tQYXltZW50RGV2aWNlRGF0YSk6IHZvaWQge1xuICAgIHRoaXMucGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLmluaXRpYWxpemUkXG4gICAgICAucGlwZShmaWx0ZXIoQm9vbGVhbiksIHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQpIHtcbiAgICAgICAgICB0aGlzLmVsa0xvZ2dlclNlcnZpY2UubG9nKFxuICAgICAgICAgICAgJ0dvb2dsZSBwYXltZW50IGNsaWVudCBpcyBub3QgaW5pdGlhbGl6ZWQnLFxuICAgICAgICAgICAgW0Vycm9yVGFncy5HT09HTEVQQVldXG4gICAgICAgICAgKTtcbiAgICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgICAgICBgR29vZ2xlIFBheTogR29vZ2xlIHBheW1lbnQgY2xpZW50IGlzIG5vdCBpbml0aWFsaXplZGBcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wYXltZW50U2VydmljZSA9IHRoaXMuZ2V0UGF5bWVudFNlcnZpY2UoKTtcbiAgICAgICAgY29uc3QgaW5pdERhdGEgPSB0aGlzLnBheW1lbnRTZXJ2aWNlLnByZXBhcmVQYXltZW50KHtcbiAgICAgICAgICBpbml0UGFyYW1zOiB0aGlzLmluaXRQYXJhbXMsXG4gICAgICAgICAgY2hlY2tEZXZpY2VEYXRhOiBkYXRhLFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoIWluaXREYXRhKSB7XG4gICAgICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZygnTm8gaW5pdGlhbGl6YXRpb24gZGF0YScsIFtcbiAgICAgICAgICAgIEVycm9yVGFncy5HT09HTEVQQVksXG4gICAgICAgICAgXSk7XG4gICAgICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKCdHb29nbGUgUGF5OiBubyBpbml0aWFsaXphdGlvbiBkYXRhJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnRcbiAgICAgICAgICAuaXNSZWFkeVRvUGF5KGluaXREYXRhLmlzUmVhZHlUb1BheVJlcXVlc3QpXG4gICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2UucmVzdWx0ICYmIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCkge1xuICAgICAgICAgICAgICB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQucHJlZmV0Y2hQYXltZW50RGF0YShcbiAgICAgICAgICAgICAgICBpbml0RGF0YS5wYXltZW50RGF0YVJlcXVlc3RcbiAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkeVRvUGF5Lm5leHQodHJ1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMucmVhZHlUb1BheS5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHJlc3BvbnNlLnJlc3VsdD8udG9TdHJpbmcoKSA/PyAnJztcbiAgICAgICAgICAgIGNvbnN0IGlzSGF2ZVBheW1lbnRDbGllbnQgPSBCb29sZWFuKFxuICAgICAgICAgICAgICB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnRcbiAgICAgICAgICAgICkudG9TdHJpbmcoKTtcblxuICAgICAgICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKFxuICAgICAgICAgICAgICBgR29vZ2xlIFBheTogcG9zc2libHkgbm8gcmVzcG9uc2UucmVzdWx0IG9yIGdvb2dsZVBheW1lbnRDbGllbnQgaXMgbWlzc2luZywgcmVzdWx0IC0gJHtyZXN1bHR9LCBpc0hhdmVQYXltZW50Q2xpZW50IC0gJHtpc0hhdmVQYXltZW50Q2xpZW50fWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlYWR5VG9QYXkubmV4dChmYWxzZSk7XG5cbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gKGVycm9yIGFzIHN0cmluZykgPz8gJyc7XG5cbiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgIG1lc3NhZ2UgPSBlcnJvci5tZXNzYWdlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgICAgICAgIGBHb29nbGUgUGF5OiBkZXZpY2UgaXMgbm90IHJlYWR5IHRvIHBheSwgJHttZXNzYWdlfWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBwcm9jZWVkQ2hlY2tvdXQoKTogUHJvbWlzZTxDaGVja1N0YXR1c0FjdGlvbiB8IG51bGw+IHtcbiAgICBpZiAoIXRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCkge1xuICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZyhcbiAgICAgICAgJ0dvb2dsZSBwYXltZW50IGNsaWVudCBpcyBub3QgaW5pdGlhbGl6ZWQgdG8gcHJvY2VlZCBjaGVja291dCcsXG4gICAgICAgIFtFcnJvclRhZ3MuR09PR0xFUEFZXVxuICAgICAgKTtcbiAgICAgIHRocm93IG5ldyBBcHBFcnJvcihcbiAgICAgICAgYEdvb2dsZSBQYXkuIHByb2NlZWRDaGVja291dDogbm8gZ29vZ2xlIHBheW1lbnQgY2xpZW50YFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucGF5bWVudFNlcnZpY2UpIHtcbiAgICAgIHRoaXMuZWxrTG9nZ2VyU2VydmljZS5sb2coXG4gICAgICAgICdHb29nbGUgcGF5bWVudCBzZXJ2aWNlIGlzIG5vdCBpbml0aWFsaXplZCB0byBwcm9jZWVkIGNoZWNrb3V0JyxcbiAgICAgICAgW0Vycm9yVGFncy5HT09HTEVQQVldXG4gICAgICApO1xuICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKFxuICAgICAgICBgR29vZ2xlIFBheS4gcHJvY2VlZENoZWNrb3V0OiBubyBnb29nbGUgcGF5bWVudCBzZXJ2aWNlYFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXltZW50RGF0YVJlcXVlc3QgPSB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldFBheW1lbnRSZXF1ZXN0KCk7XG5cbiAgICBpZiAoIXBheW1lbnREYXRhUmVxdWVzdCkge1xuICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZygnTm8gZGF0YSBmb3IgcGF5bWVudCBkYXRhIHJlcXVlc3QnLCBbXG4gICAgICAgIEVycm9yVGFncy5HT09HTEVQQVksXG4gICAgICBdKTtcbiAgICAgIHRocm93IG5ldyBBcHBFcnJvcihgR29vZ2xlIFBheTogTm8gZGF0YSBmb3IgcGF5bWVudCBkYXRhIHJlcXVlc3RgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjaGVja1N0YXR1c0FjdGlvbjogTmV4dEFjdGlvbiA9IHRoaXMuaW5qZWN0b3JcbiAgICAgIC5nZXQ8Q2hlY2tTdGF0dXNBY3Rpb25DcmVhdG9yPihDaGVja1N0YXR1c0FjdGlvbkNyZWF0b3IpXG4gICAgICAuZ2V0QWN0aW9uRGF0YSgpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBheW1lbnREYXRhID0gYXdhaXQgdGhpcy5nb29nbGVQYXltZW50Q2xpZW50LmxvYWRQYXltZW50RGF0YShcbiAgICAgICAgcGF5bWVudERhdGFSZXF1ZXN0XG4gICAgICApO1xuXG4gICAgICBpZiAoIXBheW1lbnREYXRhPy5wYXltZW50TWV0aG9kRGF0YT8udG9rZW5pemF0aW9uRGF0YT8udG9rZW4pIHtcbiAgICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZygnVG9rZW4gaXMgbWlzc2luZycsIFtFcnJvclRhZ3MuR09PR0xFUEFZXSk7XG4gICAgICAgIHRocm93IG5ldyBBcHBFcnJvcignR29vZ2xlIFBheTogdG9rZW4gaXMgbWlzc2luZycpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmhhbmRsZVN1Y2Nlc3NmdWxQYXltZW50Py4ocGF5bWVudERhdGEpO1xuICAgICAgcmV0dXJuIGNoZWNrU3RhdHVzQWN0aW9uO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmhhbmRsZUZhaWxlZFBheW1lbnQ/LihlcnJvcik7XG4gICAgICByZXR1cm4gY2hlY2tTdGF0dXNBY3Rpb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNyZWF0ZUJ1dHRvbihcbiAgICBvbkNsaWNrSGFuZGxlcjogKCkgPT4gdm9pZCxcbiAgICBidXR0b25Db2xvcjogR29vZ2xlUGF5QnV0dG9uQ29sb3JUeXBlID0gJ2RlZmF1bHQnXG4gICk6IEhUTUxCdXR0b25FbGVtZW50IHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGFsbG93ZWRQYXltZW50TWV0aG9kcyA9XG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlPy5nZXRBbGxvd2VkUGF5bWVudE1ldGhvZHMoKSB8fCBbXTtcblxuICAgIHJldHVybiB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQuY3JlYXRlQnV0dG9uKHtcbiAgICAgIG9uQ2xpY2s6IG9uQ2xpY2tIYW5kbGVyLFxuICAgICAgYWxsb3dlZFBheW1lbnRNZXRob2RzOiBhbGxvd2VkUGF5bWVudE1ldGhvZHMsXG4gICAgICBidXR0b25TaXplTW9kZTogJ2ZpbGwnLFxuICAgICAgYnV0dG9uVHlwZTogJ2J1eScsXG4gICAgICBidXR0b25Db2xvcixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBHb29nbGVQYXlDbGllbnQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLndpbmRvdy5nb29nbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBlbnZpcm9ubWVudCA9IHRoaXMuaW5pdFBhcmFtcy5pc1NhbmRib3ggPyAnVEVTVCcgOiAnUFJPRFVDVElPTic7XG4gICAgY29uc3QgZ29vZ2xlUGF5bWVudENsaWVudERhdGE6IEdvb2dsZVBheUNsaWVudEluaXREYXRhID0ge1xuICAgICAgZW52aXJvbm1lbnQsXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmluaXRQYXJhbXMuaXNJbnN0YW50UGF5Rmxvdykge1xuICAgICAgZ29vZ2xlUGF5bWVudENsaWVudERhdGEucGF5bWVudERhdGFDYWxsYmFja3MgPSB7XG4gICAgICAgIG9uUGF5bWVudERhdGFDaGFuZ2VkOiB0aGlzLm9uUGF5bWVudERhdGFDaGFuZ2VkLFxuICAgICAgICBvblBheW1lbnRBdXRob3JpemVkOiB0aGlzLm9uUGF5bWVudEF1dGhvcml6ZWQsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCA9XG4gICAgICBuZXcgdGhpcy53aW5kb3cuZ29vZ2xlLnBheW1lbnRzLmFwaS5QYXltZW50c0NsaWVudChcbiAgICAgICAgZ29vZ2xlUGF5bWVudENsaWVudERhdGFcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIG9uTG9hZFNjcmlwdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMud2luZG93Lmdvb2dsZSkge1xuICAgICAgY29uc3QgcmV0cnlUaW1lb3V0ID0gMTAwMDtcblxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGlzQXZhaWxhYmxlR29vZ2xlQ2xpZW50ID0gISF0aGlzLndpbmRvdy5nb29nbGU7XG5cbiAgICAgICAgaWYgKGlzQXZhaWxhYmxlR29vZ2xlQ2xpZW50KSB7XG4gICAgICAgICAgdGhpcy5zZXR1cEdvb2dsZVBheUNsaWVudCgpO1xuXG4gICAgICAgICAgdGhpcy5wYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UuZW1pdEluaXRpYWxpemUodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0sIHJldHJ5VGltZW91dCk7XG5cbiAgICAgIHRocm93IG5ldyBBcHBFcnJvcignR29vZ2xlIFBheTogZ29vZ2xlIGxpYnJhcnkgbm93IGlzIGF2YWlsYWJsZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldHVwR29vZ2xlUGF5Q2xpZW50KCk7XG5cbiAgICAgIHRoaXMucGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLmVtaXRJbml0aWFsaXplKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF5bWVudFNlcnZpY2UoKTogR29vZ2xlUGF5UGF5bWVudFNlcnZpY2Uge1xuICAgIGlmICh0aGlzLmluaXRQYXJhbXMuaXNJbnN0YW50UGF5RmxvdylcbiAgICAgIHJldHVybiB0aGlzLmdvb2dsZVBheUluc3RhbnRQYXltZW50U2VydmljZTtcbiAgICByZXR1cm4gdGhpcy5nb29nbGVQYXlDaGVja291dFBheW1lbnRTZXJ2aWNlO1xuICB9XG59XG4iXX0=
|
|
198
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLXBheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9nb29nbGUtcGF5L2dvb2dsZS1wYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUd4RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQWtCakQsTUFBTSxPQUFPLGdCQUFnQjtJQVkzQixJQUFZLHFCQUFxQjtRQUMvQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBWSxpQ0FBaUM7UUFDM0MsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BDLENBQUM7SUFFRCxZQUVtQixNQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsOEJBQThELEVBQzlELCtCQUFnRSxFQUNoRSw4QkFBOEQsRUFDOUQsUUFBa0I7UUFMbEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBQzlELG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBaUM7UUFDaEUsbUNBQThCLEdBQTlC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Q0FBQztJQUVPLGdCQUFnQixDQUFDLFVBQWtCO1FBQ3pDLE9BQU8sVUFBVSxDQUFDLFdBQVcsRUFBRSxLQUFLLFVBQVUsQ0FBQztJQUNqRCxDQUFDOzhHQXJRVSxnQkFBZ0Isa0JBcUJqQixXQUFXO2tIQXJCVixnQkFBZ0IsY0FGZixNQUFNOzsyRkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFzQkksTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIsIE9ic2VydmFibGUsIHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVsa0xvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vsay9lbGstbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwRXJyb3IgfSBmcm9tICcuLi8uLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vycm9ycy9hcHAtZXJyb3IuY2xhc3MnO1xuaW1wb3J0IHsgRXJyb3JUYWdzIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lcnJvcnMvZWxrLWVycm9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgRXh0ZW5kZWRXaW5kb3cgfSBmcm9tICcuLi8uLi9leHRlbmRlZC13aW5kb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IENoZWNrU3RhdHVzQWN0aW9uQ3JlYXRvciB9IGZyb20gJy4uLy4uL3BheW1lbnQvYWN0aW9ucy9jaGVjay1zdGF0dXMvY2hlY2stc3RhdHVzLmFjdGlvbi5jbGFzcyc7XG5pbXBvcnQgeyBDaGVja1N0YXR1c0FjdGlvbiB9IGZyb20gJy4uLy4uL3BheW1lbnQvYWN0aW9ucy9jaGVjay1zdGF0dXMvY2hlY2stc3RhdHVzLmFjdGlvbi50eXBlJztcbmltcG9ydCB7IE5leHRBY3Rpb24gfSBmcm9tICcuLi8uLi9wYXltZW50L2FjdGlvbnMvbmV4dC1hY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vd2luZG93LnRva2VuJztcbmltcG9ydCB7IFBheW1lbnRTeXN0ZW1Qcm9jZXNzaW5nU2VydmljZSB9IGZyb20gJy4uL3BheW1lbnQtc3lzdGVtcy9wYXltZW50LXN5c3RlbS1wcm9jZXNzaW5nLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2hlY2tQYXltZW50RGV2aWNlRGF0YSB9IGZyb20gJy4vY2hlY2stcGF5bWVudC1kZXZpY2UtZGF0YS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgR29vZ2xlUGF5QnV0dG9uQ29sb3JUeXBlIH0gZnJvbSAnLi9nb29nbGUtcGF5LWJ1dHRvbi1jb2xvci50eXBlJztcbmltcG9ydCB7IEdvb2dsZVBheUluaXRQYXJhbXMgfSBmcm9tICcuL2dvb2dsZS1wYXktaW5pdC1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIEdvb2dsZVBheUNsaWVudCxcbiAgR29vZ2xlUGF5Q2xpZW50SW5pdERhdGEsXG4gIFBheW1lbnRBdXRob3JpemVkSGFuZGxlcixcbiAgUGF5bWVudERhdGFDaGFuZ2VkSGFuZGxlcixcbn0gZnJvbSAnLi9nb29nbGUtcGF5LWxpYnJhcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdvb2dsZVBheUNoZWNrb3V0UGF5bWVudFNlcnZpY2UgfSBmcm9tICcuL3BheW1lbnQvZ29vZ2xlLXBheS1jaGVja291dC1wYXltZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgR29vZ2xlUGF5SW5zdGFudFBheW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9wYXltZW50L2dvb2dsZS1wYXktaW5zdGFudC1wYXltZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgR29vZ2xlUGF5UGF5bWVudFNlcnZpY2UgfSBmcm9tICcuL3BheW1lbnQvZ29vZ2xlLXBheS1wYXltZW50LXNlcnZpY2UuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEdvb2dsZVBheVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGdvb2dsZVBheVNjcmlwdFVybCA9ICdodHRwczovL3BheS5nb29nbGUuY29tL2dwL3AvanMvcGF5LmpzJztcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlYWR5VG9QYXkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIGdvb2dsZVBheW1lbnRDbGllbnQ6IEdvb2dsZVBheUNsaWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGluaXRQYXJhbXMhOiBHb29nbGVQYXlJbml0UGFyYW1zO1xuICBwcml2YXRlIHBheW1lbnRTZXJ2aWNlOiBHb29nbGVQYXlQYXltZW50U2VydmljZSB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgb25QYXltZW50RGF0YUNoYW5nZWQhOiBQYXltZW50RGF0YUNoYW5nZWRIYW5kbGVyO1xuICBwcml2YXRlIG9uUGF5bWVudEF1dGhvcml6ZWQhOiBQYXltZW50QXV0aG9yaXplZEhhbmRsZXI7XG5cbiAgcHJpdmF0ZSBnZXQgbGlicmFyeVdhc0luaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMud2luZG93Lmdvb2dsZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGdvb2dsZVBheW1lbnRDbGllbnRXYXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQ7XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCh3aW5kb3dUb2tlbilcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogRXh0ZW5kZWRXaW5kb3csXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGtMb2dnZXJTZXJ2aWNlOiBFbGtMb2dnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlOiBQYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBnb29nbGVQYXlDaGVja291dFBheW1lbnRTZXJ2aWNlOiBHb29nbGVQYXlDaGVja291dFBheW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZ29vZ2xlUGF5SW5zdGFudFBheW1lbnRTZXJ2aWNlOiBHb29nbGVQYXlJbnN0YW50UGF5bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7fVxuXG4gIHB1YmxpYyBnZXQgcmVhZHlUb1BheSQoKTogT2JzZXJ2YWJsZTxib29sZWFuIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnJlYWR5VG9QYXkuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgaXNSZWFkeVRvUGF5KCk6IGJvb2xlYW4gfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5yZWFkeVRvUGF5LmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgaW5pdEdvb2dsZVBheUxpYnJhcnkoZGF0YTogR29vZ2xlUGF5SW5pdFBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMuaW5pdFBhcmFtcyA9IGRhdGE7XG4gICAgdGhpcy5vblBheW1lbnREYXRhQ2hhbmdlZCA9IGRhdGEub25QYXltZW50RGF0YUNoYW5nZWQ7XG4gICAgdGhpcy5vblBheW1lbnRBdXRob3JpemVkID0gZGF0YS5vblBheW1lbnRBdXRob3JpemVkO1xuXG4gICAgaWYgKHRoaXMubGlicmFyeVdhc0luaXRpYWxpemVkICYmIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudFdhc0luaXRpYWxpemVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGlicmFyeVdhc0luaXRpYWxpemVkICYmICF0aGlzLmdvb2dsZVBheW1lbnRDbGllbnRXYXNJbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5zZXR1cEdvb2dsZVBheUNsaWVudCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLmxvYWRTY3JpcHQoXG4gICAgICB0aGlzLmdvb2dsZVBheVNjcmlwdFVybCxcbiAgICAgIHRoaXMub25Mb2FkU2NyaXB0LmJpbmQodGhpcylcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGNoZWNrUGF5bWVudERldmljZShkYXRhOiBDaGVja1BheW1lbnREZXZpY2VEYXRhKTogdm9pZCB7XG4gICAgdGhpcy5wYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UuaW5pdGlhbGl6ZSRcbiAgICAgIC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCkge1xuICAgICAgICAgIHRoaXMuZWxrTG9nZ2VyU2VydmljZS5sb2coXG4gICAgICAgICAgICAnR29vZ2xlIHBheW1lbnQgY2xpZW50IGlzIG5vdCBpbml0aWFsaXplZCcsXG4gICAgICAgICAgICBbRXJyb3JUYWdzLkdPT0dMRVBBWV1cbiAgICAgICAgICApO1xuICAgICAgICAgIHRocm93IG5ldyBBcHBFcnJvcihcbiAgICAgICAgICAgIGBHb29nbGUgUGF5OiBHb29nbGUgcGF5bWVudCBjbGllbnQgaXMgbm90IGluaXRpYWxpemVkYFxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlID0gdGhpcy5nZXRQYXltZW50U2VydmljZSgpO1xuICAgICAgICBjb25zdCBpbml0RGF0YSA9IHRoaXMucGF5bWVudFNlcnZpY2UucHJlcGFyZVBheW1lbnQoe1xuICAgICAgICAgIGluaXRQYXJhbXM6IHRoaXMuaW5pdFBhcmFtcyxcbiAgICAgICAgICBjaGVja0RldmljZURhdGE6IGRhdGEsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghaW5pdERhdGEpIHtcbiAgICAgICAgICB0aGlzLmVsa0xvZ2dlclNlcnZpY2UubG9nKCdObyBpbml0aWFsaXphdGlvbiBkYXRhJywgW1xuICAgICAgICAgICAgRXJyb3JUYWdzLkdPT0dMRVBBWSxcbiAgICAgICAgICBdKTtcbiAgICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoJ0dvb2dsZSBQYXk6IG5vIGluaXRpYWxpemF0aW9uIGRhdGEnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudFxuICAgICAgICAgIC5pc1JlYWR5VG9QYXkoaW5pdERhdGEuaXNSZWFkeVRvUGF5UmVxdWVzdClcbiAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZXN1bHQgJiYgdGhpcy5nb29nbGVQYXltZW50Q2xpZW50KSB7XG4gICAgICAgICAgICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudC5wcmVmZXRjaFBheW1lbnREYXRhKFxuICAgICAgICAgICAgICAgIGluaXREYXRhLnBheW1lbnREYXRhUmVxdWVzdFxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlYWR5VG9QYXkubmV4dCh0cnVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5yZWFkeVRvUGF5Lm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gcmVzcG9uc2UucmVzdWx0Py50b1N0cmluZygpID8/ICcnO1xuICAgICAgICAgICAgY29uc3QgaXNIYXZlUGF5bWVudENsaWVudCA9IEJvb2xlYW4oXG4gICAgICAgICAgICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudFxuICAgICAgICAgICAgKS50b1N0cmluZygpO1xuXG4gICAgICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgICAgICAgIGBHb29nbGUgUGF5OiBwb3NzaWJseSBubyByZXNwb25zZS5yZXN1bHQgb3IgZ29vZ2xlUGF5bWVudENsaWVudCBpcyBtaXNzaW5nLCByZXN1bHQgLSAke3Jlc3VsdH0sIGlzSGF2ZVBheW1lbnRDbGllbnQgLSAke2lzSGF2ZVBheW1lbnRDbGllbnR9YFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVhZHlUb1BheS5uZXh0KGZhbHNlKTtcblxuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSAoZXJyb3IgYXMgc3RyaW5nKSA/PyAnJztcblxuICAgICAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgICAgbWVzc2FnZSA9IGVycm9yLm1lc3NhZ2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRocm93IG5ldyBBcHBFcnJvcihcbiAgICAgICAgICAgICAgYEdvb2dsZSBQYXk6IGRldmljZSBpcyBub3QgcmVhZHkgdG8gcGF5LCAke21lc3NhZ2V9YFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHByb2NlZWRDaGVja291dCgpOiBQcm9taXNlPENoZWNrU3RhdHVzQWN0aW9uIHwgbnVsbD4ge1xuICAgIGlmICghdGhpcy5nb29nbGVQYXltZW50Q2xpZW50KSB7XG4gICAgICB0aGlzLmVsa0xvZ2dlclNlcnZpY2UubG9nKFxuICAgICAgICAnR29vZ2xlIHBheW1lbnQgY2xpZW50IGlzIG5vdCBpbml0aWFsaXplZCB0byBwcm9jZWVkIGNoZWNrb3V0JyxcbiAgICAgICAgW0Vycm9yVGFncy5HT09HTEVQQVldXG4gICAgICApO1xuICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKFxuICAgICAgICBgR29vZ2xlIFBheS4gcHJvY2VlZENoZWNrb3V0OiBubyBnb29nbGUgcGF5bWVudCBjbGllbnRgXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wYXltZW50U2VydmljZSkge1xuICAgICAgdGhpcy5lbGtMb2dnZXJTZXJ2aWNlLmxvZyhcbiAgICAgICAgJ0dvb2dsZSBwYXltZW50IHNlcnZpY2UgaXMgbm90IGluaXRpYWxpemVkIHRvIHByb2NlZWQgY2hlY2tvdXQnLFxuICAgICAgICBbRXJyb3JUYWdzLkdPT0dMRVBBWV1cbiAgICAgICk7XG4gICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgIGBHb29nbGUgUGF5LiBwcm9jZWVkQ2hlY2tvdXQ6IG5vIGdvb2dsZSBwYXltZW50IHNlcnZpY2VgXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHBheW1lbnREYXRhUmVxdWVzdCA9IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0UGF5bWVudFJlcXVlc3QoKTtcblxuICAgIGlmICghcGF5bWVudERhdGFSZXF1ZXN0KSB7XG4gICAgICB0aGlzLmVsa0xvZ2dlclNlcnZpY2UubG9nKCdObyBkYXRhIGZvciBwYXltZW50IGRhdGEgcmVxdWVzdCcsIFtcbiAgICAgICAgRXJyb3JUYWdzLkdPT0dMRVBBWSxcbiAgICAgIF0pO1xuICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKGBHb29nbGUgUGF5OiBObyBkYXRhIGZvciBwYXltZW50IGRhdGEgcmVxdWVzdGApO1xuICAgIH1cblxuICAgIGNvbnN0IGNoZWNrU3RhdHVzQWN0aW9uOiBOZXh0QWN0aW9uID0gdGhpcy5pbmplY3RvclxuICAgICAgLmdldDxDaGVja1N0YXR1c0FjdGlvbkNyZWF0b3I+KENoZWNrU3RhdHVzQWN0aW9uQ3JlYXRvcilcbiAgICAgIC5nZXRBY3Rpb25EYXRhKCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcGF5bWVudERhdGEgPSBhd2FpdCB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQubG9hZFBheW1lbnREYXRhKFxuICAgICAgICBwYXltZW50RGF0YVJlcXVlc3RcbiAgICAgICk7XG5cbiAgICAgIGlmICghcGF5bWVudERhdGE/LnBheW1lbnRNZXRob2REYXRhPy50b2tlbml6YXRpb25EYXRhPy50b2tlbikge1xuICAgICAgICB0aGlzLmVsa0xvZ2dlclNlcnZpY2UubG9nKCdUb2tlbiBpcyBtaXNzaW5nJywgW0Vycm9yVGFncy5HT09HTEVQQVldKTtcbiAgICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKCdHb29nbGUgUGF5OiB0b2tlbiBpcyBtaXNzaW5nJyk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuaGFuZGxlU3VjY2Vzc2Z1bFBheW1lbnQ/LihwYXltZW50RGF0YSk7XG4gICAgICByZXR1cm4gY2hlY2tTdGF0dXNBY3Rpb247XG4gICAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuaGFuZGxlRmFpbGVkUGF5bWVudD8uKGVycm9yKTtcblxuICAgICAgY29uc3QgaXNDbG9zZWRCeVVzZXIgPSB0aGlzLmlzQ2xvc2VkQnlVc2VyKFxuICAgICAgICAoZXJyb3IgYXMgeyBtZXNzYWdlOiBzdHJpbmcgfSk/Lm1lc3NhZ2UgPz8gJydcbiAgICAgICk7XG4gICAgICBjb25zdCBpc0NhbmNlbGVkU3RhdHVzID0gdGhpcy5pc0NhbmNlbGVkU3RhdHVzKFxuICAgICAgICAoZXJyb3IgYXMgeyBzdGF0dXNDb2RlOiBzdHJpbmcgfSkuc3RhdHVzQ29kZSA/PyAnJ1xuICAgICAgKTtcblxuICAgICAgaWYgKGlzQ2xvc2VkQnlVc2VyIHx8IGlzQ2FuY2VsZWRTdGF0dXMpIHJldHVybiBudWxsO1xuXG4gICAgICByZXR1cm4gY2hlY2tTdGF0dXNBY3Rpb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNyZWF0ZUJ1dHRvbihcbiAgICBvbkNsaWNrSGFuZGxlcjogKCkgPT4gdm9pZCxcbiAgICBidXR0b25Db2xvcjogR29vZ2xlUGF5QnV0dG9uQ29sb3JUeXBlID0gJ2RlZmF1bHQnXG4gICk6IEhUTUxCdXR0b25FbGVtZW50IHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGFsbG93ZWRQYXltZW50TWV0aG9kcyA9XG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlPy5nZXRBbGxvd2VkUGF5bWVudE1ldGhvZHMoKSB8fCBbXTtcblxuICAgIHJldHVybiB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQuY3JlYXRlQnV0dG9uKHtcbiAgICAgIG9uQ2xpY2s6IG9uQ2xpY2tIYW5kbGVyLFxuICAgICAgYWxsb3dlZFBheW1lbnRNZXRob2RzOiBhbGxvd2VkUGF5bWVudE1ldGhvZHMsXG4gICAgICBidXR0b25TaXplTW9kZTogJ2ZpbGwnLFxuICAgICAgYnV0dG9uVHlwZTogJ2J1eScsXG4gICAgICBidXR0b25Db2xvcixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBHb29nbGVQYXlDbGllbnQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLndpbmRvdy5nb29nbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBlbnZpcm9ubWVudCA9IHRoaXMuaW5pdFBhcmFtcy5pc1NhbmRib3ggPyAnVEVTVCcgOiAnUFJPRFVDVElPTic7XG4gICAgY29uc3QgZ29vZ2xlUGF5bWVudENsaWVudERhdGE6IEdvb2dsZVBheUNsaWVudEluaXREYXRhID0ge1xuICAgICAgZW52aXJvbm1lbnQsXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmluaXRQYXJhbXMuaXNJbnN0YW50UGF5Rmxvdykge1xuICAgICAgZ29vZ2xlUGF5bWVudENsaWVudERhdGEucGF5bWVudERhdGFDYWxsYmFja3MgPSB7XG4gICAgICAgIG9uUGF5bWVudERhdGFDaGFuZ2VkOiB0aGlzLm9uUGF5bWVudERhdGFDaGFuZ2VkLFxuICAgICAgICBvblBheW1lbnRBdXRob3JpemVkOiB0aGlzLm9uUGF5bWVudEF1dGhvcml6ZWQsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCA9XG4gICAgICBuZXcgdGhpcy53aW5kb3cuZ29vZ2xlLnBheW1lbnRzLmFwaS5QYXltZW50c0NsaWVudChcbiAgICAgICAgZ29vZ2xlUGF5bWVudENsaWVudERhdGFcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIG9uTG9hZFNjcmlwdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMud2luZG93Lmdvb2dsZSkge1xuICAgICAgY29uc3QgcmV0cnlUaW1lb3V0ID0gMTAwMDtcblxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGlzQXZhaWxhYmxlR29vZ2xlQ2xpZW50ID0gISF0aGlzLndpbmRvdy5nb29nbGU7XG5cbiAgICAgICAgaWYgKGlzQXZhaWxhYmxlR29vZ2xlQ2xpZW50KSB7XG4gICAgICAgICAgdGhpcy5zZXR1cEdvb2dsZVBheUNsaWVudCgpO1xuXG4gICAgICAgICAgdGhpcy5wYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UuZW1pdEluaXRpYWxpemUodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0sIHJldHJ5VGltZW91dCk7XG5cbiAgICAgIHRocm93IG5ldyBBcHBFcnJvcignR29vZ2xlIFBheTogZ29vZ2xlIGxpYnJhcnkgbm93IGlzIGF2YWlsYWJsZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldHVwR29vZ2xlUGF5Q2xpZW50KCk7XG5cbiAgICAgIHRoaXMucGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLmVtaXRJbml0aWFsaXplKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF5bWVudFNlcnZpY2UoKTogR29vZ2xlUGF5UGF5bWVudFNlcnZpY2Uge1xuICAgIGlmICh0aGlzLmluaXRQYXJhbXMuaXNJbnN0YW50UGF5RmxvdylcbiAgICAgIHJldHVybiB0aGlzLmdvb2dsZVBheUluc3RhbnRQYXltZW50U2VydmljZTtcbiAgICByZXR1cm4gdGhpcy5nb29nbGVQYXlDaGVja291dFBheW1lbnRTZXJ2aWNlO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0Nsb3NlZEJ5VXNlcihtZXNzYWdlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gbWVzc2FnZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCd1c2VyIGNsb3NlZCB0aGUgcGF5bWVudCByZXF1ZXN0IHVpJyk7XG4gIH1cblxuICBwcml2YXRlIGlzQ2FuY2VsZWRTdGF0dXMoc3RhdHVzQ29kZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN0YXR1c0NvZGUudG9Mb3dlckNhc2UoKSA9PT0gJ2NhbmNlbGVkJztcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9zZXR0aW5ncy9jb25maWd1cmF0aW9uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnQgfSBmcm9tICcuLi9lbnZpcm9ubWVudC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRDb25maWd1cmF0aW9uIHtcbiAgdG9rZW46IHN0cmluZztcbiAgcmVmZXI6IG51bWJlcjtcbiAgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50O1xuICBpc1dlYnZpZXc/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9zZXR0aW5ncy9jb25maWd1cmF0aW9uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnQgfSBmcm9tICcuLi9lbnZpcm9ubWVudC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRDb25maWd1cmF0aW9uIHtcbiAgdG9rZW46IHN0cmluZztcbiAgcmVmZXI6IG51bWJlcjtcbiAgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50O1xuICBpc1dlYnZpZXc/OiBib29sZWFuO1xuICBzYW5kYm94PzogYm9vbGVhbjtcbiAgdG9wTGV2ZWxEb21haW4/OiBzdHJpbmc7XG4gIGlzQXBwbGVQYXlJbnN0YW50Rmxvd0VuYWJsZWQ/OiBib29sZWFuO1xufVxuIl19
|
|
@@ -57,6 +57,7 @@ export class SettingsService {
|
|
|
57
57
|
this.secureApi = secureApi;
|
|
58
58
|
this.isInitialized = false;
|
|
59
59
|
this._token = '';
|
|
60
|
+
this._isApplePayInstantFlowEnabled = false;
|
|
60
61
|
this.sandboxMode = false;
|
|
61
62
|
}
|
|
62
63
|
async init(configuration) {
|
|
@@ -66,9 +67,19 @@ export class SettingsService {
|
|
|
66
67
|
this._token = configuration.token;
|
|
67
68
|
this.sandboxMode = !!configuration.sandbox;
|
|
68
69
|
this._refer = configuration.refer;
|
|
70
|
+
this._topLevelDomain = configuration.topLevelDomain;
|
|
71
|
+
this._isApplePayInstantFlowEnabled =
|
|
72
|
+
!!configuration.isApplePayInstantFlowEnabled;
|
|
69
73
|
await this.sendRequest(this.token);
|
|
70
74
|
this.isInitialized = true;
|
|
71
75
|
}
|
|
76
|
+
get topLevelDomain() {
|
|
77
|
+
return this._topLevelDomain;
|
|
78
|
+
}
|
|
79
|
+
get isApplePayInstantFlowEnabled() {
|
|
80
|
+
return (this._isApplePayInstantFlowEnabled &&
|
|
81
|
+
!!this.project.isApplePayIframeIntegrationTurnedOn);
|
|
82
|
+
}
|
|
72
83
|
isSandboxMode() {
|
|
73
84
|
return this.sandboxMode;
|
|
74
85
|
}
|
|
@@ -89,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
89
100
|
providedIn: 'root',
|
|
90
101
|
}]
|
|
91
102
|
}], ctorParameters: () => [{ type: i1.SecureApiClient }] });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBVXZFLE1BQU0sT0FBTyxlQUFlO0lBQzFCLElBQVcsT0FBTztRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSx1QkFBdUIsRUFBRSxDQUFDO1FBQ3RDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksdUJBQXVCLEVBQUUsQ0FBQztRQUN0QyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsTUFBTSxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDdEMsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO1lBQ3hDLE9BQU87Z0JBQ0wsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVE7Z0JBQ3pCLG9CQUFvQixFQUFFLElBQUksQ0FB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R0FBRyxDQUFnQixPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUN2RCxDQUFDO0lBQ0osQ0FBQzs4R0F6SFUsZUFBZTtrSEFBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFNlY3VyZUFwaUNsaWVudCB9IGZyb20gJy4uL2h0dHAvc2VjdXJlLWFwaS9zZWN1cmUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVlcFJlYWRvbmx5IH0gZnJvbSAnLi4vZGVlcC1yZWFkb25seS50eXBlJztcbmltcG9ydCB7IEluaXRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9jb25maWd1cmF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFbXB0eVV0aWxzUmVzcG9uc2VFcnJvciB9IGZyb20gJy4vZW1wdHktdXRpbHMtcmVzcG9uc2UuZXJyb3InO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3MgfSBmcm9tICcuL3NldHRpbmdzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQdXJjaGFzZSB9IGZyb20gJy4vcHVyY2hhc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tICcuL3Byb2plY3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFV0aWxzUmVzcG9uc2UgfSBmcm9tICcuL3V0aWxzLXJlc3BvbnNlLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTZXR0aW5nc1NlcnZpY2Uge1xuICBwdWJsaWMgZ2V0IHByb2plY3QoKTogRGVlcFJlYWRvbmx5PFByb2plY3Q+IHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2UpIHtcbiAgICAgIHRocm93IG5ldyBFbXB0eVV0aWxzUmVzcG9uc2VFcnJvcigpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJlc3BvbnNlLnByb2plY3Q7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHB1cmNoYXNlKCk6IERlZXBSZWFkb25seTxQdXJjaGFzZT4ge1xuICAgIGlmICghdGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhyb3cgbmV3IEVtcHR5VXRpbHNSZXNwb25zZUVycm9yKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVzcG9uc2UucHVyY2hhc2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNldHRpbmdzKCk6IERlZXBSZWFkb25seTxTZXR0aW5ncz4ge1xuICAgIGlmICghdGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhyb3cgbmV3IEVtcHR5VXRpbHNSZXNwb25zZUVycm9yKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVzcG9uc2U/LnB1cmNoYXNlX2V4dGVybmFsX2lkKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi50aGlzLnJlc3BvbnNlLnNldHRpbmdzLFxuICAgICAgICBwdXJjaGFzZV9leHRlcm5hbF9pZDogdGhpcy5yZXNwb25zZS5wdXJjaGFzZV9leHRlcm5hbF9pZCxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVzcG9uc2U/LnNldHRpbmdzO1xuICB9XG5cbiAgcHVibGljIGdldCB1c2VyKCk6IERlZXBSZWFkb25seTxVc2VyPiB7XG4gICAgaWYgKCF0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aHJvdyBuZXcgRW1wdHlVdGlsc1Jlc3BvbnNlRXJyb3IoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZS51c2VyO1xuICB9XG5cbiAgcHVibGljIGdldCB1dGlsc1Jlc3BvbnNlKCk6IERlZXBSZWFkb25seTxVdGlsc1Jlc3BvbnNlPiB7XG4gICAgaWYgKCF0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aHJvdyBuZXcgRW1wdHlVdGlsc1Jlc3BvbnNlRXJyb3IoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdW5zYWZlVXRpbHNSZXNwb25zZSgpOiBEZWVwUmVhZG9ubHk8VXRpbHNSZXNwb25zZSB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZSA/PyBudWxsO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5yZXNwb25zZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9rZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdG9rZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1Jlc3BvbnNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMucmVzcG9uc2U7XG4gIH1cblxuICBwdWJsaWMgaXNJbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgcmVzcG9uc2UhOiBEZWVwUmVhZG9ubHk8VXRpbHNSZXNwb25zZT4gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfdG9rZW4gPSAnJztcblxuICBwcml2YXRlIF90b3BMZXZlbERvbWFpbj86IHN0cmluZztcbiAgcHJpdmF0ZSBfaXNBcHBsZVBheUluc3RhbnRGbG93RW5hYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIHNhbmRib3hNb2RlID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlZmVyITogbnVtYmVyO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHNlY3VyZUFwaTogU2VjdXJlQXBpQ2xpZW50KSB7fVxuXG4gIHB1YmxpYyBhc3luYyBpbml0KGNvbmZpZ3VyYXRpb246IEluaXRDb25maWd1cmF0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCFjb25maWd1cmF0aW9uLnRva2VuKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoJ3Rva2VuIGlzIG1pc3NpbmcnKTtcbiAgICB9XG5cbiAgICB0aGlzLl90b2tlbiA9IGNvbmZpZ3VyYXRpb24udG9rZW47XG4gICAgdGhpcy5zYW5kYm94TW9kZSA9ICEhY29uZmlndXJhdGlvbi5zYW5kYm94O1xuICAgIHRoaXMuX3JlZmVyID0gY29uZmlndXJhdGlvbi5yZWZlcjtcbiAgICB0aGlzLl90b3BMZXZlbERvbWFpbiA9IGNvbmZpZ3VyYXRpb24udG9wTGV2ZWxEb21haW47XG4gICAgdGhpcy5faXNBcHBsZVBheUluc3RhbnRGbG93RW5hYmxlZCA9XG4gICAgICAhIWNvbmZpZ3VyYXRpb24uaXNBcHBsZVBheUluc3RhbnRGbG93RW5hYmxlZDtcblxuICAgIGF3YWl0IHRoaXMuc2VuZFJlcXVlc3QodGhpcy50b2tlbik7XG5cbiAgICB0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldCB0b3BMZXZlbERvbWFpbigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl90b3BMZXZlbERvbWFpbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNBcHBsZVBheUluc3RhbnRGbG93RW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5faXNBcHBsZVBheUluc3RhbnRGbG93RW5hYmxlZCAmJlxuICAgICAgISF0aGlzLnByb2plY3QuaXNBcHBsZVBheUlmcmFtZUludGVncmF0aW9uVHVybmVkT25cbiAgICApO1xuICB9XG5cbiAgcHVibGljIGlzU2FuZGJveE1vZGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2FuZGJveE1vZGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlZmVyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZmVyO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZW5kUmVxdWVzdCh0b2tlbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FjY2Vzc190b2tlbicsIHRva2VuKTtcblxuICAgIHRoaXMuc2VjdXJlQXBpLnNldFNhbmRib3hNb2RlKHRoaXMuaXNTYW5kYm94TW9kZSgpKTtcblxuICAgIHRoaXMucmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc2VjdXJlQXBpLmdldDxVdGlsc1Jlc3BvbnNlPigndXRpbHMnLCB7IHBhcmFtcyB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -165,8 +165,11 @@ export class CoreLibraryService {
|
|
|
165
165
|
get formResponseValue() {
|
|
166
166
|
return this.paymentService.formResponseValue;
|
|
167
167
|
}
|
|
168
|
-
get
|
|
169
|
-
return this.settingsService.
|
|
168
|
+
get topLevelDomain() {
|
|
169
|
+
return this.settingsService.topLevelDomain;
|
|
170
|
+
}
|
|
171
|
+
get isApplePayInstantFlowEnabled() {
|
|
172
|
+
return this.settingsService.isApplePayInstantFlowEnabled;
|
|
170
173
|
}
|
|
171
174
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CoreLibraryService, deps: [{ token: i1.SettingsService }, { token: i2.CountryService }, { token: i3.PaymentMethodsService }, { token: i4.SavedMethodsService }, { token: i5.UserBalanceService }, { token: i6.PaymentConfigService }, { token: i7.PaymentService }, { token: i8.DeviceFingerPrintService }, { token: i9.FinanceDetailsService }, { token: i10.LegalService }, { token: i11.StatusService }, { token: i12.NextActionService }, { token: i13.CreditCardService }, { token: i14.CreditCardStateService }, { token: i15.FormMessagesService }, { token: i16.EditSavedMethodsService }, { token: i17.UserBehaviourAnalyticsService }, { token: i18.PerformanceService }, { token: i19.CombinedPaymentMethodsService }, { token: i20.CountriesApiService }, { token: i21.SendInstructionService }, { token: i22.ScriptTrackerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
172
175
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CoreLibraryService, providedIn: 'root' }); }
|
|
@@ -177,4 +180,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
177
180
|
providedIn: 'root',
|
|
178
181
|
}]
|
|
179
182
|
}], ctorParameters: () => [{ type: i1.SettingsService }, { type: i2.CountryService }, { type: i3.PaymentMethodsService }, { type: i4.SavedMethodsService }, { type: i5.UserBalanceService }, { type: i6.PaymentConfigService }, { type: i7.PaymentService }, { type: i8.DeviceFingerPrintService }, { type: i9.FinanceDetailsService }, { type: i10.LegalService }, { type: i11.StatusService }, { type: i12.NextActionService }, { type: i13.CreditCardService }, { type: i14.CreditCardStateService }, { type: i15.FormMessagesService }, { type: i16.EditSavedMethodsService }, { type: i17.UserBehaviourAnalyticsService }, { type: i18.PerformanceService }, { type: i19.CombinedPaymentMethodsService }, { type: i20.CountriesApiService }, { type: i21.SendInstructionService }, { type: i22.ScriptTrackerService }] });
|
|
180
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1saWJyYXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS1saWJyYXJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNkQzQyxNQUFNLE9BQU8sa0JBQWtCO0lBNEI3QixZQUNtQixlQUFnQyxFQUNoQyxjQUE4QixFQUM5QixxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLGtCQUFzQyxFQUN0QyxvQkFBMEMsRUFDMUMsY0FBOEIsRUFDOUIsd0JBQWtELEVBQ2xELHFCQUE0QyxFQUM1QyxZQUEwQixFQUMxQixhQUE0QixFQUM1QixpQkFBb0MsRUFDcEMsaUJBQW9DLEVBQ3BDLHNCQUE4QyxFQUM5QyxtQkFBd0MsRUFDeEMsdUJBQWdELEVBQ2hELDZCQUE0RCxFQUM1RCxrQkFBc0MsRUFDdEMsNkJBQTRELEVBQzVELG1CQUF3QyxFQUN4QyxzQkFBOEMsRUFDOUMsb0JBQTBDO1FBckIxQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixzQkFBaUIsR0FBakIsaUJB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SUFDN0MsQ0FBQztJQUVELElBQVcsc0JBQXNCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxHQUFZO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQztJQUN0QyxDQUFDOzhHQTNNVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5pdENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvcmUvc2V0dGluZ3MvY29uZmlndXJhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ291bnRyeVNlcnZpY2UgfSBmcm9tICcuL2NvcmUvY291bnRyeS9jb3VudHJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZHNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQtbWV0aG9kcy9wYXltZW50LW1ldGhvZHMuc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQtbWV0aG9kcy9wYXltZW50LW1ldGhvZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2F2ZWRNZXRob2RzU2VydmljZSB9IGZyb20gJy4vY29yZS9zYXZlZC1tZXRob2RzL3NhdmVkLW1ldGhvZHMuc2VydmljZSc7XG5pbXBvcnQgeyBTYXZlZE1ldGhvZCB9IGZyb20gJy4vY29yZS9zYXZlZC1tZXRob2RzL3NhdmVkLW1ldGhvZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVXNlckJhbGFuY2VSZXNwb25zZSB9IGZyb20gJy4vY29yZS91c2VyLWJhbGFuY2UvdXNlci1iYWxhbmNlLXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7IFVzZXJCYWxhbmNlU2VydmljZSB9IGZyb20gJy4vY29yZS91c2VyLWJhbGFuY2UvdXNlci1iYWxhbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvcmUvcGF5bWVudC9wYXltZW50LWNvbmZpZ3VyYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBheW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvcGF5bWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IFBheW1lbnQgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9wYXltZW50LmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vY29yZS9wYXltZW50L2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEZXZpY2VGaW5nZXJQcmludFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvZGV2aWNlLWZpbmdlci1wcmludC9kZXZpY2UtZmluZ2VyLXByaW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgTGVnYWxTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2xlZ2FsL2xlZ2FsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGVnYWxDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2NvcmUvbGVnYWwvbGVnYWwuY29tcG9uZW50LmNvbmZpZyc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2FjdGlvbnMvbmV4dC1hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBGaW5hbmNlRGV0YWlsc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9maW5hbmNlLWRldGFpbHMvZmluYW5jZS1kZXRhaWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvc3RhdHVzL3N0YXR1cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L3N0YXR1cy9zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBDcmVkaXRDYXJkU2VydmljZSB9IGZyb20gJy4vY29yZS9jcmVkaXQtY2FyZC9jcmVkaXQtY2FyZC5zZXJ2aWNlJztcbmltcG9ydCB7IENyZWRpdENhcmRUeXBlcyB9IGZyb20gJy4vY29yZS9jcmVkaXQtY2FyZC9jcmVkaXQtY2FyZC10eXBlcy5lbnVtJztcbmltcG9ydCB7IENyZWRpdENhcmQgfSBmcm9tICcuL2NvcmUvY3JlZGl0LWNhcmQvY3JlZGl0LWNhcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IElucHV0RXZlbnROYW1lIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZm9ybS9pbnB1dC1ldmVudC5lbnVtJztcbmltcG9ydCB7IENyZWRpdENhcmRTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9jcmVkaXQtY2FyZC1zdGF0ZS9jcmVkaXQtY2FyZC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENyZWRpdENhcmRTdGF0ZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2NyZWRpdC1jYXJkLXN0YXRlL2NyZWRpdC1jYXJkLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGb3JtU3RhdGUgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9mb3JtL2Zvcm0tc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpbmFuY2VEZXRhaWxzIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZmluYW5jZS1kZXRhaWxzL2ZpbmFuY2UtZGV0YWlscy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4vY29yZS9wYXltZW50L2FjdGlvbnMvbmV4dC1hY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhbGFuY2UgfSBmcm9tICcuL2NvcmUvc2V0dGluZ3MvYmFsYW5jZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRm9ybU1lc3NhZ2VzU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2Zvcm0tbWVzc2FnZXMvZm9ybS1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEVkaXRTYXZlZE1ldGhvZHNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2VkaXQtc2F2ZWQtbWV0aG9kcy9lZGl0LXNhdmVkLW1ldGhvZHMuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbFN0YXR1cyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNka1BheW1lbnRTeXN0ZW1zIH0gZnJvbSAnLi9jb3JlL3Nkay1wYXltZW50LXN5c3RlbXMvc2RrLXBheW1lbnQtc3lzdGVtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRm9ybVJlc3BvbnNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZm9ybS1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvdXNlci1iZWhhdmlvdXItYW5hbHl0aWNzL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy5zZXJ2aWNlJztcbmltcG9ydCB7IHVzZXJCZWhhdmlvdXJFdmVudFR5cGVzIH0gZnJvbSAnLi9jb3JlL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy91c2VyLWJlaGF2aW91ci1ldmVudC91c2VyLWJlaGF2aW91ci1ldmVudC10eXBlcyc7XG5pbXBvcnQgeyBTZW5kRXZlbnRNZXRob2RPcHRpb25zSW50ZXJmYWNlIH0gZnJvbSAnLi9jb3JlL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy91c2VyLWJlaGF2aW91ci1hbmFseXRpY3MuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBlcmZvcm1hbmNlU2VydmljZSB9IGZyb20gJy4vY29yZS9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS5zZXJ2aWNlJztcbmltcG9ydCB7IEZpZWxkTmFtZXMgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9maWVsZC1uYW1lcy5lbnVtJztcbmltcG9ydCB7IENvbWJpbmVkUGF5bWVudE1ldGhvZHMgfSBmcm9tICcuL2NvcmUvY29tYmluZWQtcGF5bWVudC1tZXRob2RzL2NvbWJpbmVkLXBheW1lbnQtbWV0aG9kcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tYmluZWRQYXltZW50TWV0aG9kc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvY29tYmluZWQtcGF5bWVudC1tZXRob2RzL2NvbWJpbmVkLXBheW1lbnQtbWV0aG9kcy5zZXJ2aWNlJztcbmltcG9ydCB7IENvdW50cmllc0FwaVNlcnZpY2UgfSBmcm9tICcuL2NvcmUvY291bnRyaWVzLWFwaS9jb3VudHJpZXMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ291bnRyeVJlc3BvbnNlIH0gZnJvbSAnLi9jb3JlL2NvdW50cmllcy1hcGkvY291bnRyeS1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ2FzaFBheW1lbnREYXRhIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvY2FzaC1wYXltZW50LWRhdGEuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNlbmRJbnN0cnVjdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvcmUveHNvbGxhLW51bWJlci9hcGkvc2VuZC1pbnN0cnVjdGlvbi9zZW5kLWluc3RydWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2VuZEluc3RydWN0aW9uUmVzcG9uc2VJbnRlcmZhY2UgfSBmcm9tICcuL2NvcmUveHNvbGxhLW51bWJlci9hcGkvc2VuZC1pbnN0cnVjdGlvbi9yZXNwb25zZS9zZW5kLWluc3RydWN0aW9uLXJlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTZW5kSW5zdHJ1Y3Rpb25QYXJhbWV0ZXJzSW50ZXJmYWNlIH0gZnJvbSAnLi9jb3JlL3hzb2xsYS1udW1iZXIvYXBpL3NlbmQtaW5zdHJ1Y3Rpb24vc2VuZC1pbnN0cnVjdGlvbi1wYXJhbWV0ZXJzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTY3JpcHRUcmFja2VyU2VydmljZSB9IGZyb20gJy4vY29yZS9zY3JpcHQtdHJhY2tlci9zY3JpcHQtdHJhY2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IFN5bmNSZXNwb25zZSB9IGZyb20gJy4vY29yZS9wYXltZW50L3N5bmMvcmVzcG9uc2Uvc3luYy1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQgeyBYcHNTdW1tYXJ5IH0gZnJvbSAnLi9jb3JlL3BheW1lbnQveHBzLXN1bW1hcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN1Ym1pdFJlc3BvbnNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvc3VibWl0L3Jlc3BvbnNlL3N1Ym1pdC1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQgeyBEZWVwUmVhZG9ubHkgfSBmcm9tICcuL2NvcmUvZGVlcC1yZWFkb25seS50eXBlJztcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tICcuL2NvcmUvc2V0dGluZ3MvcHJvamVjdC5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ29yZUxpYnJhcnlTZXJ2aWNlIHtcbiAgcHVibGljIHBheW1lbnRNZXRob2RzID0ge1xuICAgIGdldExpc3Q6IGFzeW5jIChpc1NhdmVNZXRob2RNb2RlPzogYm9vbGVhbik6IFByb21pc2U8UGF5bWVudE1ldGhvZFtdPiA9PlxuICAgICAgdGhpcy5wYXltZW50TWV0aG9kc1NlcnZpY2UuZ2V0TGlzdChpc1NhdmVNZXRob2RNb2RlKSxcblxuICAgIGdldFF1aWNrTWV0aG9kczogYXN5bmMgKCk6IFByb21pc2U8UGF5bWVudE1ldGhvZFtdPiA9PlxuICAgICAgdGhpcy5wYXltZW50TWV0aG9kc1NlcnZpY2UuZ2V0UXVpY2tNZXRob2RzKCksXG4gICAgZ2V0U2F2ZWRNZXRob2RzOiBhc3luYyAoKTogUHJvbWlzZTxTYXZlZE1ldGhvZFtdPiA9PlxuICAgICAgdGhpcy5zYXZlZE1ldGhvZHNTZXJ2aWNlLmdldExpc3QoKSxcbiAgICBnZXRDb21iaW5lZFBheW1lbnRNZXRob2RzOiBhc3luYyAoKTogUHJvbWlzZTxDb21iaW5lZFBheW1lbnRNZXRob2RzPiA9PlxuICAgICAgdGhpcy5jb21iaW5lZFBheW1lbnRNZXRob2RzU2VydmljZS5nZXRDb21iaW5lZFBheW1lbnRNZXRob2RzKCksXG4gICAgZ2V0VXNlckJhbGFuY2U6IGFzeW5jICgpOiBQcm9taXNlPFVzZXJCYWxhbmNlUmVzcG9uc2U+ID0+XG4gICAgICB0aGlzLnVzZXJCYWxhbmNlU2VydmljZS5nZXRVc2VyQmFsYW5jZSgpLFxuICAgIGRlbGV0ZVNhdmVkTWV0aG9kOiBhc3luYyAoaWQ6IG51bWJlciwgdHlwZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiA9PlxuICAgICAgdGhpcy5lZGl0U2F2ZWRNZXRob2RzU2VydmljZS5kZWxldGVTYXZlZE1ldGhvZFJlcXVlc3QoaWQsIHR5cGUpLFxuICB9O1xuXG4gIHB1YmxpYyBzZGtQYXltZW50U3lzdGVtczogU2RrUGF5bWVudFN5c3RlbXMgPSB7XG4gICAgZ2V0SW5pdGlhbERhdGE6IGFzeW5jICgpID0+XG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldEluaXRpYWxEYXRhRm9yU2RrUGF5bWVudFN5c3RlbXMoKSxcbiAgfTtcblxuICBwdWJsaWMgZmluYW5jZSA9IHtcbiAgICBnZXREZXRhaWxzRnJvbVN1bW1hcnk6IChzdW1tYXJ5OiBYcHNTdW1tYXJ5KTogRmluYW5jZURldGFpbHMgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuZmluYW5jZURldGFpbHNTZXJ2aWNlLmdldERldGFpbHNGcm9tU3VtbWFyeShzdW1tYXJ5KTtcbiAgICB9LFxuICB9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY291bnRyeVNlcnZpY2U6IENvdW50cnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGF5bWVudE1ldGhvZHNTZXJ2aWNlOiBQYXltZW50TWV0aG9kc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYXZlZE1ldGhvZHNTZXJ2aWNlOiBTYXZlZE1ldGhvZHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlckJhbGFuY2VTZXJ2aWNlOiBVc2VyQmFsYW5jZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50Q29uZmlnU2VydmljZTogUGF5bWVudENvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50U2VydmljZTogUGF5bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXZpY2VGaW5nZXJQcmludFNlcnZpY2U6IERldmljZUZpbmdlclByaW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbmFuY2VEZXRhaWxzU2VydmljZTogRmluYW5jZURldGFpbHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGVnYWxTZXJ2aWNlOiBMZWdhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdGF0dXNTZXJ2aWNlOiBTdGF0dXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3JlZGl0Q2FyZFNlcnZpY2U6IENyZWRpdENhcmRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3JlZGl0Q2FyZFN0YXRlU2VydmljZTogQ3JlZGl0Q2FyZFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1NZXNzYWdlc1NlcnZpY2U6IEZvcm1NZXNzYWdlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlZGl0U2F2ZWRNZXRob2RzU2VydmljZTogRWRpdFNhdmVkTWV0aG9kc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZTogVXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwZXJmb3JtYW5jZVNlcnZpY2U6IFBlcmZvcm1hbmNlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbWJpbmVkUGF5bWVudE1ldGhvZHNTZXJ2aWNlOiBDb21iaW5lZFBheW1lbnRNZXRob2RzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvdW50cmllc0FwaVNlcnZpY2U6IENvdW50cmllc0FwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZW5kSW5zdHJ1Y3Rpb25TZXJ2aWNlOiBTZW5kSW5zdHJ1Y3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2NyaXB0VHJhY2tlclNlcnZpY2U6IFNjcmlwdFRyYWNrZXJTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgYXN5bmMgaW5pdChjb25maWd1cmF0aW9uOiBJbml0Q29uZmlndXJhdGlvbik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLmluaXQoY29uZmlndXJhdGlvbik7XG4gICAgdGhpcy5wZXJmb3JtYW5jZVNlcnZpY2UuaW5pdCgpO1xuICAgIHRoaXMudXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2UuaW5pdCgpO1xuICAgIHRoaXMuZGV2aWNlRmluZ2VyUHJpbnRTZXJ2aWNlLmluaXQoKTtcbiAgICB0aGlzLnNjcmlwdFRyYWNrZXJTZXJ2aWNlLmluaXRTY3JpcHRUcmFja2luZyhjb25maWd1cmF0aW9uLmVudmlyb25tZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTdGF0dXModXJsPzogc3RyaW5nKTogUHJvbWlzZTxTdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXNTZXJ2aWNlLmdldFN0YXR1c1dpdGhVcmxTZWFyY2hQYXJhbXModXJsKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjYWxjdWxhdGVGaWVsZChcbiAgICBjaGFuZ2VkRmllbGQ6IEZpZWxkLFxuICAgIGZpZWxkczogRmllbGRbXVxuICApOiBQcm9taXNlPFN5bmNSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLmNhbGN1bGF0ZUZpZWxkKGNoYW5nZWRGaWVsZCwgZmllbGRzKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzdWJtaXQoZmllbGRzOiBGaWVsZFtdKTogUHJvbWlzZTxTdWJtaXRSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLnN1Ym1pdFdpdGhGaWVsZHMoZmllbGRzKTtcbiAgfVxuXG4gIHB1YmxpYyBzZW5kQW5hbHl0aWNzKFxuICAgIGFjdGlvbjogc3RyaW5nLFxuICAgIHR5cGU6IGtleW9mIHR5cGVvZiB1c2VyQmVoYXZpb3VyRXZlbnRUeXBlcyxcbiAgICBvcHRpb25zPzogU2VuZEV2ZW50TWV0aG9kT3B0aW9uc0ludGVyZmFjZVxuICApOiB2b2lkIHtcbiAgICB0aGlzLnVzZXJCZWhhdmlvdXJBbmFseXRpY3NTZXJ2aWNlLnNlbmQoYWN0aW9uLCB0eXBlLCBvcHRpb25zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRRckNvZGVJbml0aWFsRGF0YSgpOiB7XG4gICAgcXJDb2RlOiBzdHJpbmc7XG4gICAgcGlkOiBudW1iZXIgfCBudWxsO1xuICB9IHtcbiAgICByZXR1cm4ge1xuICAgICAgcXJDb2RlOiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldFFyQ29kZSgpLFxuICAgICAgcGlkOiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldFBpZCgpLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0Q2FzaFBheW1lbnREYXRhKCk6IENhc2hQYXltZW50RGF0YSB7XG4gICAgcmV0dXJuIHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0Q2FzaFBheW1lbnREYXRhKCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2VuZFhzb2xsYU51bWJlcldpdGhFbWFpbChcbiAgICBwYXJhbXM6IFNlbmRJbnN0cnVjdGlvblBhcmFtZXRlcnNJbnRlcmZhY2VcbiAgKTogUHJvbWlzZTxTZW5kSW5zdHJ1Y3Rpb25SZXNwb25zZUludGVyZmFjZT4ge1xuICAgIHJldHVybiB0aGlzLnNlbmRJbnN0cnVjdGlvblNlcnZpY2Uuc2VuZEluc3RydWN0aW9uV2l0aEVtYWlsKHBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2VuZFhzb2xsYU51bWJlcldpdGhTbXMoXG4gICAgcGFyYW1zOiBTZW5kSW5zdHJ1Y3Rpb25QYXJhbWV0ZXJzSW50ZXJmYWNlXG4gICk6IFByb21pc2U8U2VuZEluc3RydWN0aW9uUmVzcG9uc2VJbnRlcmZhY2U+IHtcbiAgICByZXR1cm4gdGhpcy5zZW5kSW5zdHJ1Y3Rpb25TZXJ2aWNlLnNlbmRJbnN0cnVjdGlvbldpdGhTbXMocGFyYW1zKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRDb3VudHJpZXMoKTogUHJvbWlzZTxDb3VudHJ5UmVzcG9uc2VbJ2NvdW50cnlMaXN0J10+IHtcbiAgICByZXR1cm4gdGhpcy5jb3VudHJpZXNBcGlTZXJ2aWNlLnJlcXVlc3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRDb3VudHJ5KGNvdW50cnk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY291bnRyeVNlcnZpY2Uuc2V0Q291bnRyeShjb3VudHJ5KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb3VudHJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY291bnRyeVNlcnZpY2UuZ2V0Q291bnRyeSgpO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZVBheW1lbnQoY29uZmlnOiBQYXltZW50Q29uZmlndXJhdGlvbik6IFBheW1lbnQge1xuICAgIGNvbnN0IGVucmljaGVkQ29uZmlnID0gdGhpcy5wYXltZW50Q29uZmlnU2VydmljZS5lbnJpY2goY29uZmlnKTtcblxuICAgIHJldHVybiB7XG4gICAgICBpbml0aWFsaXplOiBhc3luYyAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmluaXRpYWxpemUoZW5yaWNoZWRDb25maWcpLFxuICAgICAgc3VibWl0OiBhc3luYyAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLnN1Ym1pdCgpLFxuICAgICAgZ2V0RmllbGRzOiAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldEZpZWxkcygpLFxuICAgICAgZ2V0UGlkOiAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldFBpZCgpLFxuICAgICAgZ2V0U3VibWl0QnV0dG9uVGV4dDogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5nZXRTdWJtaXRCdXR0b25UZXh0KCksXG4gICAgICB2YWxpZGF0ZTogYXN5bmMgKGZpZWxkOiBGaWVsZCkgPT4gdGhpcy5wYXltZW50U2VydmljZS52YWxpZGF0ZShmaWVsZCksXG4gICAgICBnZXRGaW5hbmNlRGV0YWlsczogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5nZXRGaW5hbmNlRGV0YWlscygpLFxuICAgICAgcnVuVGhyZWVEczogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5ydW5UaHJlZURzKCksXG4gICAgICBnZXRTdGF0dXM6IGFzeW5jICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0U3RhdHVzKCksXG4gICAgICBsaXN0ZW5GaW5hbFN0YXR1czogYXN5bmMgKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5saXN0ZW5GaW5hbFN0YXR1cygpLFxuICAgICAgZmluYW5jZURldGFpbHNVcGRhdGVzJDogdGhpcy5maW5hbmNlRGV0YWlsc1NlcnZpY2UuZGF0YSQsXG4gICAgICBmb3JtOiB7XG4gICAgICAgIGZpZWxkc1N0YXR1cyQ6IHRoaXMucGF5bWVudFNlcnZpY2UuZm9ybUZpZWxkc1N0YXR1cyQsXG4gICAgICAgIGdldENvbnRyb2xDb25maWc6IChmaWVsZDogRmllbGQpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5nZXRGaWVsZENvbmZpZyhmaWVsZCksXG4gICAgICAgIGNoYW5nZUZpZWxkVmFsdWU6IChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5jaGFuZ2VGaWVsZFZhbHVlKG5hbWUsIHZhbHVlKSxcbiAgICAgICAgY2hhbmdlRmllbGRTdGF0ZTogKG5hbWU6IHN0cmluZywgc3RhdGU6IElucHV0RXZlbnROYW1lKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY2hhbmdlRmllbGRTdGF0ZShuYW1lLCBzdGF0ZSksXG4gICAgICAgIHVwZGF0ZUZpZWxkRm9ybVN0YXRlOiAoZmllbGROYW1lOiBzdHJpbmcsIGZvcm1TdGF0ZTogRm9ybVN0YXRlKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UudXBkYXRlRmllbGRGb3JtU3RhdGUoZmllbGROYW1lLCBmb3JtU3RhdGUpLFxuICAgICAgICBnZXRGaWVsZEZvcm1TdGF0ZTogKGZpZWxkTmFtZTogRmllbGROYW1lcykgPT5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldEZpZWxkRm9ybVN0YXRlKGZpZWxkTmFtZSksXG4gICAgICAgIGZvcm1NZXNzYWdlcyQ6IHRoaXMuZm9ybU1lc3NhZ2VzU2VydmljZS5kYXRhJCxcbiAgICAgICAgZ2V0Rm9ybVN0YXR1czogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5mb3JtPy5zdGF0dXMsXG4gICAgICAgIGdldENvbnRyb2xTdGF0dXM6IChuYW1lOiBGaWVsZE5hbWVzKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0Q29udHJvbFN0YXR1cyhuYW1lKSxcbiAgICAgIH0sXG4gICAgICBhZGRFeHRyYUZpZWxkOiAobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCA9PlxuICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmFkZEV4dHJhRmllbGQobmFtZSwgdmFsdWUpLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0Q3JlZGl0Q2FyZFNlcnZpY2UoKTogQ3JlZGl0Q2FyZCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldFR5cGVCeU51bWJlcjogKGNhcmROdW1iZXI6IHN0cmluZykgPT5cbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkU2VydmljZS5nZXRUeXBlQnlOdW1iZXIoY2FyZE51bWJlciksXG4gICAgICBnZXRDcmVkaXRDYXJkU2V0dGluZ3M6IChjYXJkVHlwZTogQ3JlZGl0Q2FyZFR5cGVzKSA9PlxuICAgICAgICB0aGlzLmNyZWRpdENhcmRTZXJ2aWNlLmdldENyZWRpdENhcmRTZXR0aW5ncyhjYXJkVHlwZSksXG4gICAgICBjYXJkVHlwZVVwZGF0ZXMkOiB0aGlzLmNyZWRpdENhcmRTdGF0ZVNlcnZpY2UuZGF0YSQsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmxvd1VwZGF0ZXMkKCk6IE9ic2VydmFibGU8TmV4dEFjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmZsb3dVcGRhdGVzJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmluYW5jZURldGFpbHNVcGRhdGVzJCgpOiBPYnNlcnZhYmxlPEZpbmFuY2VEZXRhaWxzPiB7XG4gICAgcmV0dXJuIHRoaXMuZmluYW5jZURldGFpbHNTZXJ2aWNlLmRhdGEkO1xuICB9XG5cbiAgcHVibGljIGdldCBjYXJkVHlwZVVwZGF0ZXMkKCk6IE9ic2VydmFibGU8Q3JlZGl0Q2FyZFN0YXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlZGl0Q2FyZFN0YXRlU2VydmljZS5kYXRhJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMZWdhbENvbXBvbmVudENvbmZpZyhwaWQ/OiBudW1iZXIpOiBMZWdhbENvbXBvbmVudENvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMubGVnYWxTZXJ2aWNlLmdldExlZ2FsQ29tcG9uZW50Q29uZmlnKHBpZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VXNlckJhbGFuY2VWYWx1ZSgpOiBCYWxhbmNlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMudXNlckJhbGFuY2VTZXJ2aWNlLmdldFVzZXJCYWxhbmNlVmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGF5bWVudEZvcm0kKCk6IE9ic2VydmFibGU8Rm9ybUNvbnRyb2xTdGF0dXMgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMucGF5bWVudFNlcnZpY2UucGF5bWVudEZvcm0kO1xuICB9XG5cbiAgcHVibGljIGdldCBmb3JtUmVzcG9uc2UkKCk6IE9ic2VydmFibGU8Rm9ybVJlc3BvbnNlIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLmZvcm1SZXNwb25zZSQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZvcm1SZXNwb25zZVZhbHVlKCk6IEZvcm1SZXNwb25zZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLmZvcm1SZXNwb25zZVZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBwcm9qZWN0U2V0dGluZ3MoKTogRGVlcFJlYWRvbmx5PFByb2plY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5zZXR0aW5nc1NlcnZpY2UucHJvamVjdDtcbiAgfVxufVxuIl19
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1saWJyYXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS1saWJyYXJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMkQzQyxNQUFNLE9BQU8sa0JBQWtCO0lBNEI3QixZQUNtQixlQUFnQyxFQUNoQyxjQUE4QixFQUM5QixxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLGtCQUFzQyxFQUN0QyxvQkFBMEMsRUFDMUMsY0FBOEIsRUFDOUIsd0JBQWtELEVBQ2xELHFCQUE0QyxFQUM1QyxZQUEwQixFQUMxQixhQUE0QixFQUM1QixpQkFBb0MsRUFDcEMsaUJBQW9DLEVBQ3BDLHNCQUE4QyxFQUM5QyxtQkFBd0MsRUFDeEMsdUJBQWdELEVBQ2hELDZCQUE0RCxFQUM1RCxrQkFBc0MsRUFDdEMsNkJBQTRELEVBQzVELG1CQUF3QyxFQUN4QyxzQkFBOEMsRUFDOUMsb0JBQTBDO1FBckIxQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixzQkFBaUIsR0FBakIsaUJB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SUFDN0MsQ0FBQztJQUVELElBQVcsc0JBQXNCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxHQUFZO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBVyw0QkFBNEI7UUFDckMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLDRCQUE0QixDQUFDO0lBQzNELENBQUM7OEdBL01VLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBRmpCLE1BQU07OzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbml0Q29uZmlndXJhdGlvbiB9IGZyb20gJy4vY29yZS9zZXR0aW5ncy9jb25maWd1cmF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBDb3VudHJ5U2VydmljZSB9IGZyb20gJy4vY29yZS9jb3VudHJ5L2NvdW50cnkuc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC1tZXRob2RzL3BheW1lbnQtbWV0aG9kcy5zZXJ2aWNlJztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL2NvcmUvcGF5bWVudC1tZXRob2RzL3BheW1lbnQtbWV0aG9kLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTYXZlZE1ldGhvZHNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3NhdmVkLW1ldGhvZHMvc2F2ZWQtbWV0aG9kcy5zZXJ2aWNlJztcbmltcG9ydCB7IFNhdmVkTWV0aG9kIH0gZnJvbSAnLi9jb3JlL3NhdmVkLW1ldGhvZHMvc2F2ZWQtbWV0aG9kLmludGVyZmFjZSc7XG5pbXBvcnQgeyBVc2VyQmFsYW5jZVJlc3BvbnNlIH0gZnJvbSAnLi9jb3JlL3VzZXItYmFsYW5jZS91c2VyLWJhbGFuY2UtcmVzcG9uc2UuY2xhc3MnO1xuaW1wb3J0IHsgVXNlckJhbGFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3VzZXItYmFsYW5jZS91c2VyLWJhbGFuY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50Q29uZmlndXJhdGlvbiB9IGZyb20gJy4vY29yZS9wYXltZW50L3BheW1lbnQtY29uZmlndXJhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGF5bWVudFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9wYXltZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudCB9IGZyb20gJy4vY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IERldmljZUZpbmdlclByaW50U2VydmljZSB9IGZyb20gJy4vY29yZS9kZXZpY2UtZmluZ2VyLXByaW50L2RldmljZS1maW5nZXItcHJpbnQuc2VydmljZSc7XG5pbXBvcnQgeyBMZWdhbFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvbGVnYWwvbGVnYWwuc2VydmljZSc7XG5pbXBvcnQgeyBMZWdhbENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4vY29yZS9sZWdhbC9sZWdhbC5jb21wb25lbnQuY29uZmlnJztcbmltcG9ydCB7IE5leHRBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZpbmFuY2VEZXRhaWxzU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50Q29uZmlnU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvc3RhdHVzL3N0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IENyZWRpdENhcmRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2NyZWRpdC1jYXJkL2NyZWRpdC1jYXJkLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFR5cGVzIH0gZnJvbSAnLi9jb3JlL2NyZWRpdC1jYXJkL2NyZWRpdC1jYXJkLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZCB9IGZyb20gJy4vY29yZS9jcmVkaXQtY2FyZC9jcmVkaXQtY2FyZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSW5wdXRFdmVudE5hbWUgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9mb3JtL2lucHV0LWV2ZW50LmVudW0nO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFN0YXRlU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2NyZWRpdC1jYXJkLXN0YXRlL2NyZWRpdC1jYXJkLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFN0YXRlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvY3JlZGl0LWNhcmQtc3RhdGUvY3JlZGl0LWNhcmQtc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcm1TdGF0ZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2Zvcm0vZm9ybS1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHMgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9maW5hbmNlLWRldGFpbHMvZmluYW5jZS1kZXRhaWxzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFsYW5jZSB9IGZyb20gJy4vY29yZS9zZXR0aW5ncy9iYWxhbmNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGb3JtTWVzc2FnZXNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZm9ybS1tZXNzYWdlcy9mb3JtLW1lc3NhZ2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRWRpdFNhdmVkTWV0aG9kc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvZWRpdC1zYXZlZC1tZXRob2RzL2VkaXQtc2F2ZWQtbWV0aG9kcy5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1Db250cm9sU3RhdHVzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2RrUGF5bWVudFN5c3RlbXMgfSBmcm9tICcuL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9zZGstcGF5bWVudC1zeXN0ZW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGb3JtUmVzcG9uc2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9mb3JtLXJlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBVc2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZSB9IGZyb20gJy4vY29yZS91c2VyLWJlaGF2aW91ci1hbmFseXRpY3MvdXNlci1iZWhhdmlvdXItYW5hbHl0aWNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgdXNlckJlaGF2aW91ckV2ZW50VHlwZXMgfSBmcm9tICcuL2NvcmUvdXNlci1iZWhhdmlvdXItYW5hbHl0aWNzL3VzZXItYmVoYXZpb3VyLWV2ZW50L3VzZXItYmVoYXZpb3VyLWV2ZW50LXR5cGVzJztcbmltcG9ydCB7IFNlbmRFdmVudE1ldGhvZE9wdGlvbnNJbnRlcmZhY2UgfSBmcm9tICcuL2NvcmUvdXNlci1iZWhhdmlvdXItYW5hbHl0aWNzL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGVyZm9ybWFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmllbGROYW1lcyB9IGZyb20gJy4vY29yZS9wYXltZW50L2ZpZWxkLW5hbWVzLmVudW0nO1xuaW1wb3J0IHsgQ29tYmluZWRQYXltZW50TWV0aG9kcyB9IGZyb20gJy4vY29yZS9jb21iaW5lZC1wYXltZW50LW1ldGhvZHMvY29tYmluZWQtcGF5bWVudC1tZXRob2RzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb21iaW5lZFBheW1lbnRNZXRob2RzU2VydmljZSB9IGZyb20gJy4vY29yZS9jb21iaW5lZC1wYXltZW50LW1ldGhvZHMvY29tYmluZWQtcGF5bWVudC1tZXRob2RzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ291bnRyaWVzQXBpU2VydmljZSB9IGZyb20gJy4vY29yZS9jb3VudHJpZXMtYXBpL2NvdW50cmllcy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBDb3VudHJ5UmVzcG9uc2UgfSBmcm9tICcuL2NvcmUvY291bnRyaWVzLWFwaS9jb3VudHJ5LXJlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDYXNoUGF5bWVudERhdGEgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9jYXNoLXBheW1lbnQtZGF0YS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2VuZEluc3RydWN0aW9uU2VydmljZSB9IGZyb20gJy4vY29yZS94c29sbGEtbnVtYmVyL2FwaS9zZW5kLWluc3RydWN0aW9uL3NlbmQtaW5zdHJ1Y3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTZW5kSW5zdHJ1Y3Rpb25SZXNwb25zZUludGVyZmFjZSB9IGZyb20gJy4vY29yZS94c29sbGEtbnVtYmVyL2FwaS9zZW5kLWluc3RydWN0aW9uL3Jlc3BvbnNlL3NlbmQtaW5zdHJ1Y3Rpb24tcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNlbmRJbnN0cnVjdGlvblBhcmFtZXRlcnNJbnRlcmZhY2UgfSBmcm9tICcuL2NvcmUveHNvbGxhLW51bWJlci9hcGkvc2VuZC1pbnN0cnVjdGlvbi9zZW5kLWluc3RydWN0aW9uLXBhcmFtZXRlcnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNjcmlwdFRyYWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3NjcmlwdC10cmFja2VyL3NjcmlwdC10cmFja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3luY1Jlc3BvbnNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvc3luYy9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7IFhwc1N1bW1hcnkgfSBmcm9tICcuL2NvcmUvcGF5bWVudC94cHMtc3VtbWFyeS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3VibWl0UmVzcG9uc2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9zdWJtaXQvcmVzcG9uc2Uvc3VibWl0LXJlc3BvbnNlLmNsYXNzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENvcmVMaWJyYXJ5U2VydmljZSB7XG4gIHB1YmxpYyBwYXltZW50TWV0aG9kcyA9IHtcbiAgICBnZXRMaXN0OiBhc3luYyAoaXNTYXZlTWV0aG9kTW9kZT86IGJvb2xlYW4pOiBQcm9taXNlPFBheW1lbnRNZXRob2RbXT4gPT5cbiAgICAgIHRoaXMucGF5bWVudE1ldGhvZHNTZXJ2aWNlLmdldExpc3QoaXNTYXZlTWV0aG9kTW9kZSksXG5cbiAgICBnZXRRdWlja01ldGhvZHM6IGFzeW5jICgpOiBQcm9taXNlPFBheW1lbnRNZXRob2RbXT4gPT5cbiAgICAgIHRoaXMucGF5bWVudE1ldGhvZHNTZXJ2aWNlLmdldFF1aWNrTWV0aG9kcygpLFxuICAgIGdldFNhdmVkTWV0aG9kczogYXN5bmMgKCk6IFByb21pc2U8U2F2ZWRNZXRob2RbXT4gPT5cbiAgICAgIHRoaXMuc2F2ZWRNZXRob2RzU2VydmljZS5nZXRMaXN0KCksXG4gICAgZ2V0Q29tYmluZWRQYXltZW50TWV0aG9kczogYXN5bmMgKCk6IFByb21pc2U8Q29tYmluZWRQYXltZW50TWV0aG9kcz4gPT5cbiAgICAgIHRoaXMuY29tYmluZWRQYXltZW50TWV0aG9kc1NlcnZpY2UuZ2V0Q29tYmluZWRQYXltZW50TWV0aG9kcygpLFxuICAgIGdldFVzZXJCYWxhbmNlOiBhc3luYyAoKTogUHJvbWlzZTxVc2VyQmFsYW5jZVJlc3BvbnNlPiA9PlxuICAgICAgdGhpcy51c2VyQmFsYW5jZVNlcnZpY2UuZ2V0VXNlckJhbGFuY2UoKSxcbiAgICBkZWxldGVTYXZlZE1ldGhvZDogYXN5bmMgKGlkOiBudW1iZXIsIHR5cGU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4gPT5cbiAgICAgIHRoaXMuZWRpdFNhdmVkTWV0aG9kc1NlcnZpY2UuZGVsZXRlU2F2ZWRNZXRob2RSZXF1ZXN0KGlkLCB0eXBlKSxcbiAgfTtcblxuICBwdWJsaWMgc2RrUGF5bWVudFN5c3RlbXM6IFNka1BheW1lbnRTeXN0ZW1zID0ge1xuICAgIGdldEluaXRpYWxEYXRhOiBhc3luYyAoKSA9PlxuICAgICAgdGhpcy5wYXltZW50U2VydmljZS5nZXRJbml0aWFsRGF0YUZvclNka1BheW1lbnRTeXN0ZW1zKCksXG4gIH07XG5cbiAgcHVibGljIGZpbmFuY2UgPSB7XG4gICAgZ2V0RGV0YWlsc0Zyb21TdW1tYXJ5OiAoc3VtbWFyeTogWHBzU3VtbWFyeSk6IEZpbmFuY2VEZXRhaWxzID0+IHtcbiAgICAgIHJldHVybiB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5nZXREZXRhaWxzRnJvbVN1bW1hcnkoc3VtbWFyeSk7XG4gICAgfSxcbiAgfTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXR0aW5nc1NlcnZpY2U6IFNldHRpbmdzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvdW50cnlTZXJ2aWNlOiBDb3VudHJ5U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBheW1lbnRNZXRob2RzU2VydmljZTogUGF5bWVudE1ldGhvZHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2F2ZWRNZXRob2RzU2VydmljZTogU2F2ZWRNZXRob2RzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJCYWxhbmNlU2VydmljZTogVXNlckJhbGFuY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGF5bWVudENvbmZpZ1NlcnZpY2U6IFBheW1lbnRDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGF5bWVudFNlcnZpY2U6IFBheW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGV2aWNlRmluZ2VyUHJpbnRTZXJ2aWNlOiBEZXZpY2VGaW5nZXJQcmludFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaW5hbmNlRGV0YWlsc1NlcnZpY2U6IEZpbmFuY2VEZXRhaWxzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxlZ2FsU2VydmljZTogTGVnYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdHVzU2VydmljZTogU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5leHRBY3Rpb25TZXJ2aWNlOiBOZXh0QWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWRpdENhcmRTZXJ2aWNlOiBDcmVkaXRDYXJkU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWRpdENhcmRTdGF0ZVNlcnZpY2U6IENyZWRpdENhcmRTdGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtTWVzc2FnZXNTZXJ2aWNlOiBGb3JtTWVzc2FnZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWRpdFNhdmVkTWV0aG9kc1NlcnZpY2U6IEVkaXRTYXZlZE1ldGhvZHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2U6IFVzZXJCZWhhdmlvdXJBbmFseXRpY3NTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGVyZm9ybWFuY2VTZXJ2aWNlOiBQZXJmb3JtYW5jZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb21iaW5lZFBheW1lbnRNZXRob2RzU2VydmljZTogQ29tYmluZWRQYXltZW50TWV0aG9kc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3VudHJpZXNBcGlTZXJ2aWNlOiBDb3VudHJpZXNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2VuZEluc3RydWN0aW9uU2VydmljZTogU2VuZEluc3RydWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNjcmlwdFRyYWNrZXJTZXJ2aWNlOiBTY3JpcHRUcmFja2VyU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIGFzeW5jIGluaXQoY29uZmlndXJhdGlvbjogSW5pdENvbmZpZ3VyYXRpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnNldHRpbmdzU2VydmljZS5pbml0KGNvbmZpZ3VyYXRpb24pO1xuICAgIHRoaXMucGVyZm9ybWFuY2VTZXJ2aWNlLmluaXQoKTtcbiAgICB0aGlzLnVzZXJCZWhhdmlvdXJBbmFseXRpY3NTZXJ2aWNlLmluaXQoKTtcbiAgICB0aGlzLmRldmljZUZpbmdlclByaW50U2VydmljZS5pbml0KCk7XG4gICAgdGhpcy5zY3JpcHRUcmFja2VyU2VydmljZS5pbml0U2NyaXB0VHJhY2tpbmcoY29uZmlndXJhdGlvbi5lbnZpcm9ubWVudCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKHVybD86IHN0cmluZyk6IFByb21pc2U8U3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzU2VydmljZS5nZXRTdGF0dXNXaXRoVXJsU2VhcmNoUGFyYW1zKHVybCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgY2FsY3VsYXRlRmllbGQoXG4gICAgY2hhbmdlZEZpZWxkOiBGaWVsZCxcbiAgICBmaWVsZHM6IEZpZWxkW11cbiAgKTogUHJvbWlzZTxTeW5jUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5wYXltZW50U2VydmljZS5jYWxjdWxhdGVGaWVsZChjaGFuZ2VkRmllbGQsIGZpZWxkcyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc3VibWl0KGZpZWxkczogRmllbGRbXSk6IFByb21pc2U8U3VibWl0UmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5wYXltZW50U2VydmljZS5zdWJtaXRXaXRoRmllbGRzKGZpZWxkcyk7XG4gIH1cblxuICBwdWJsaWMgc2VuZEFuYWx5dGljcyhcbiAgICBhY3Rpb246IHN0cmluZyxcbiAgICB0eXBlOiBrZXlvZiB0eXBlb2YgdXNlckJlaGF2aW91ckV2ZW50VHlwZXMsXG4gICAgb3B0aW9ucz86IFNlbmRFdmVudE1ldGhvZE9wdGlvbnNJbnRlcmZhY2VcbiAgKTogdm9pZCB7XG4gICAgdGhpcy51c2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZS5zZW5kKGFjdGlvbiwgdHlwZSwgb3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0UXJDb2RlSW5pdGlhbERhdGEoKToge1xuICAgIHFyQ29kZTogc3RyaW5nO1xuICAgIHBpZDogbnVtYmVyIHwgbnVsbDtcbiAgfSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHFyQ29kZTogdGhpcy5wYXltZW50U2VydmljZS5nZXRRckNvZGUoKSxcbiAgICAgIHBpZDogdGhpcy5wYXltZW50U2VydmljZS5nZXRQaWQoKSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldENhc2hQYXltZW50RGF0YSgpOiBDYXNoUGF5bWVudERhdGEge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldENhc2hQYXltZW50RGF0YSgpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbmRYc29sbGFOdW1iZXJXaXRoRW1haWwoXG4gICAgcGFyYW1zOiBTZW5kSW5zdHJ1Y3Rpb25QYXJhbWV0ZXJzSW50ZXJmYWNlXG4gICk6IFByb21pc2U8U2VuZEluc3RydWN0aW9uUmVzcG9uc2VJbnRlcmZhY2U+IHtcbiAgICByZXR1cm4gdGhpcy5zZW5kSW5zdHJ1Y3Rpb25TZXJ2aWNlLnNlbmRJbnN0cnVjdGlvbldpdGhFbWFpbChwYXJhbXMpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbmRYc29sbGFOdW1iZXJXaXRoU21zKFxuICAgIHBhcmFtczogU2VuZEluc3RydWN0aW9uUGFyYW1ldGVyc0ludGVyZmFjZVxuICApOiBQcm9taXNlPFNlbmRJbnN0cnVjdGlvblJlc3BvbnNlSW50ZXJmYWNlPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VuZEluc3RydWN0aW9uU2VydmljZS5zZW5kSW5zdHJ1Y3Rpb25XaXRoU21zKHBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0Q291bnRyaWVzKCk6IFByb21pc2U8Q291bnRyeVJlc3BvbnNlWydjb3VudHJ5TGlzdCddPiB7XG4gICAgcmV0dXJuIHRoaXMuY291bnRyaWVzQXBpU2VydmljZS5yZXF1ZXN0KCk7XG4gIH1cblxuICBwdWJsaWMgc2V0Q291bnRyeShjb3VudHJ5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvdW50cnlTZXJ2aWNlLnNldENvdW50cnkoY291bnRyeSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q291bnRyeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvdW50cnlTZXJ2aWNlLmdldENvdW50cnkoKTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVQYXltZW50KGNvbmZpZzogUGF5bWVudENvbmZpZ3VyYXRpb24pOiBQYXltZW50IHtcbiAgICBjb25zdCBlbnJpY2hlZENvbmZpZyA9IHRoaXMucGF5bWVudENvbmZpZ1NlcnZpY2UuZW5yaWNoKGNvbmZpZyk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaW5pdGlhbGl6ZTogYXN5bmMgKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5pbml0aWFsaXplKGVucmljaGVkQ29uZmlnKSxcbiAgICAgIHN1Ym1pdDogYXN5bmMgKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5zdWJtaXQoKSxcbiAgICAgIGdldEZpZWxkczogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5nZXRGaWVsZHMoKSxcbiAgICAgIGdldFBpZDogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5nZXRQaWQoKSxcbiAgICAgIGdldFN1Ym1pdEJ1dHRvblRleHQ6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0U3VibWl0QnV0dG9uVGV4dCgpLFxuICAgICAgdmFsaWRhdGU6IGFzeW5jIChmaWVsZDogRmllbGQpID0+IHRoaXMucGF5bWVudFNlcnZpY2UudmFsaWRhdGUoZmllbGQpLFxuICAgICAgZ2V0RmluYW5jZURldGFpbHM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0RmluYW5jZURldGFpbHMoKSxcbiAgICAgIHJ1blRocmVlRHM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UucnVuVGhyZWVEcygpLFxuICAgICAgZ2V0U3RhdHVzOiBhc3luYyAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldFN0YXR1cygpLFxuICAgICAgbGlzdGVuRmluYWxTdGF0dXM6IGFzeW5jICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UubGlzdGVuRmluYWxTdGF0dXMoKSxcbiAgICAgIGZpbmFuY2VEZXRhaWxzVXBkYXRlcyQ6IHRoaXMuZmluYW5jZURldGFpbHNTZXJ2aWNlLmRhdGEkLFxuICAgICAgZm9ybToge1xuICAgICAgICBmaWVsZHNTdGF0dXMkOiB0aGlzLnBheW1lbnRTZXJ2aWNlLmZvcm1GaWVsZHNTdGF0dXMkLFxuICAgICAgICBnZXRDb250cm9sQ29uZmlnOiAoZmllbGQ6IEZpZWxkKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0RmllbGRDb25maWcoZmllbGQpLFxuICAgICAgICBjaGFuZ2VGaWVsZFZhbHVlOiAobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY2hhbmdlRmllbGRWYWx1ZShuYW1lLCB2YWx1ZSksXG4gICAgICAgIGNoYW5nZUZpZWxkU3RhdGU6IChuYW1lOiBzdHJpbmcsIHN0YXRlOiBJbnB1dEV2ZW50TmFtZSkgPT5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNoYW5nZUZpZWxkU3RhdGUobmFtZSwgc3RhdGUpLFxuICAgICAgICB1cGRhdGVGaWVsZEZvcm1TdGF0ZTogKGZpZWxkTmFtZTogc3RyaW5nLCBmb3JtU3RhdGU6IEZvcm1TdGF0ZSkgPT5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnVwZGF0ZUZpZWxkRm9ybVN0YXRlKGZpZWxkTmFtZSwgZm9ybVN0YXRlKSxcbiAgICAgICAgZ2V0RmllbGRGb3JtU3RhdGU6IChmaWVsZE5hbWU6IEZpZWxkTmFtZXMpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5nZXRGaWVsZEZvcm1TdGF0ZShmaWVsZE5hbWUpLFxuICAgICAgICBmb3JtTWVzc2FnZXMkOiB0aGlzLmZvcm1NZXNzYWdlc1NlcnZpY2UuZGF0YSQsXG4gICAgICAgIGdldEZvcm1TdGF0dXM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZm9ybT8uc3RhdHVzLFxuICAgICAgICBnZXRDb250cm9sU3RhdHVzOiAobmFtZTogRmllbGROYW1lcykgPT5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldENvbnRyb2xTdGF0dXMobmFtZSksXG4gICAgICB9LFxuICAgICAgYWRkRXh0cmFGaWVsZDogKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQgPT5cbiAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5hZGRFeHRyYUZpZWxkKG5hbWUsIHZhbHVlKSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldENyZWRpdENhcmRTZXJ2aWNlKCk6IENyZWRpdENhcmQge1xuICAgIHJldHVybiB7XG4gICAgICBnZXRUeXBlQnlOdW1iZXI6IChjYXJkTnVtYmVyOiBzdHJpbmcpID0+XG4gICAgICAgIHRoaXMuY3JlZGl0Q2FyZFNlcnZpY2UuZ2V0VHlwZUJ5TnVtYmVyKGNhcmROdW1iZXIpLFxuICAgICAgZ2V0Q3JlZGl0Q2FyZFNldHRpbmdzOiAoY2FyZFR5cGU6IENyZWRpdENhcmRUeXBlcykgPT5cbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkU2VydmljZS5nZXRDcmVkaXRDYXJkU2V0dGluZ3MoY2FyZFR5cGUpLFxuICAgICAgY2FyZFR5cGVVcGRhdGVzJDogdGhpcy5jcmVkaXRDYXJkU3RhdGVTZXJ2aWNlLmRhdGEkLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZsb3dVcGRhdGVzJCgpOiBPYnNlcnZhYmxlPE5leHRBY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5uZXh0QWN0aW9uU2VydmljZS5mbG93VXBkYXRlcyQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpbmFuY2VEZXRhaWxzVXBkYXRlcyQoKTogT2JzZXJ2YWJsZTxGaW5hbmNlRGV0YWlscz4ge1xuICAgIHJldHVybiB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5kYXRhJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2FyZFR5cGVVcGRhdGVzJCgpOiBPYnNlcnZhYmxlPENyZWRpdENhcmRTdGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLmNyZWRpdENhcmRTdGF0ZVNlcnZpY2UuZGF0YSQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGVnYWxDb21wb25lbnRDb25maWcocGlkPzogbnVtYmVyKTogTGVnYWxDb21wb25lbnRDb25maWcge1xuICAgIHJldHVybiB0aGlzLmxlZ2FsU2VydmljZS5nZXRMZWdhbENvbXBvbmVudENvbmZpZyhwaWQpO1xuICB9XG5cbiAgcHVibGljIGdldFVzZXJCYWxhbmNlVmFsdWUoKTogQmFsYW5jZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnVzZXJCYWxhbmNlU2VydmljZS5nZXRVc2VyQmFsYW5jZVZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBheW1lbnRGb3JtJCgpOiBPYnNlcnZhYmxlPEZvcm1Db250cm9sU3RhdHVzIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLnBheW1lbnRGb3JtJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZm9ybVJlc3BvbnNlJCgpOiBPYnNlcnZhYmxlPEZvcm1SZXNwb25zZSB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5wYXltZW50U2VydmljZS5mb3JtUmVzcG9uc2UkO1xuICB9XG5cbiAgcHVibGljIGdldCBmb3JtUmVzcG9uc2VWYWx1ZSgpOiBGb3JtUmVzcG9uc2UgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5wYXltZW50U2VydmljZS5mb3JtUmVzcG9uc2VWYWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9wTGV2ZWxEb21haW4oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5zZXR0aW5nc1NlcnZpY2UudG9wTGV2ZWxEb21haW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzQXBwbGVQYXlJbnN0YW50Rmxvd0VuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2V0dGluZ3NTZXJ2aWNlLmlzQXBwbGVQYXlJbnN0YW50Rmxvd0VuYWJsZWQ7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -129,6 +129,7 @@ class SettingsService {
|
|
|
129
129
|
this.secureApi = secureApi;
|
|
130
130
|
this.isInitialized = false;
|
|
131
131
|
this._token = '';
|
|
132
|
+
this._isApplePayInstantFlowEnabled = false;
|
|
132
133
|
this.sandboxMode = false;
|
|
133
134
|
}
|
|
134
135
|
async init(configuration) {
|
|
@@ -138,9 +139,19 @@ class SettingsService {
|
|
|
138
139
|
this._token = configuration.token;
|
|
139
140
|
this.sandboxMode = !!configuration.sandbox;
|
|
140
141
|
this._refer = configuration.refer;
|
|
142
|
+
this._topLevelDomain = configuration.topLevelDomain;
|
|
143
|
+
this._isApplePayInstantFlowEnabled =
|
|
144
|
+
!!configuration.isApplePayInstantFlowEnabled;
|
|
141
145
|
await this.sendRequest(this.token);
|
|
142
146
|
this.isInitialized = true;
|
|
143
147
|
}
|
|
148
|
+
get topLevelDomain() {
|
|
149
|
+
return this._topLevelDomain;
|
|
150
|
+
}
|
|
151
|
+
get isApplePayInstantFlowEnabled() {
|
|
152
|
+
return (this._isApplePayInstantFlowEnabled &&
|
|
153
|
+
!!this.project.isApplePayIframeIntegrationTurnedOn);
|
|
154
|
+
}
|
|
144
155
|
isSandboxMode() {
|
|
145
156
|
return this.sandboxMode;
|
|
146
157
|
}
|
|
@@ -7900,8 +7911,11 @@ class CoreLibraryService {
|
|
|
7900
7911
|
get formResponseValue() {
|
|
7901
7912
|
return this.paymentService.formResponseValue;
|
|
7902
7913
|
}
|
|
7903
|
-
get
|
|
7904
|
-
return this.settingsService.
|
|
7914
|
+
get topLevelDomain() {
|
|
7915
|
+
return this.settingsService.topLevelDomain;
|
|
7916
|
+
}
|
|
7917
|
+
get isApplePayInstantFlowEnabled() {
|
|
7918
|
+
return this.settingsService.isApplePayInstantFlowEnabled;
|
|
7905
7919
|
}
|
|
7906
7920
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CoreLibraryService, deps: [{ token: SettingsService }, { token: CountryService }, { token: PaymentMethodsService }, { token: SavedMethodsService }, { token: UserBalanceService }, { token: PaymentConfigService }, { token: PaymentService }, { token: DeviceFingerPrintService }, { token: FinanceDetailsService }, { token: LegalService }, { token: StatusService }, { token: NextActionService }, { token: CreditCardService }, { token: CreditCardStateService }, { token: FormMessagesService }, { token: EditSavedMethodsService }, { token: UserBehaviourAnalyticsService }, { token: PerformanceService }, { token: CombinedPaymentMethodsService }, { token: CountriesApiService }, { token: SendInstructionService }, { token: ScriptTrackerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
7907
7921
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CoreLibraryService, providedIn: 'root' }); }
|
|
@@ -8118,7 +8132,7 @@ class BraintreeHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8118
8132
|
setClient(client) {
|
|
8119
8133
|
this.paymentClient = client;
|
|
8120
8134
|
}
|
|
8121
|
-
startSession(params,
|
|
8135
|
+
startSession(params, additionalParams) {
|
|
8122
8136
|
if (!this.paymentClient) {
|
|
8123
8137
|
console.error(ApplePayErrors.braintreeInitializeError);
|
|
8124
8138
|
this.elkLoggerService.log(ApplePayErrors.braintreeInitializeError, [
|
|
@@ -8129,15 +8143,15 @@ class BraintreeHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8129
8143
|
const request = this.buildPaymentRequest(params);
|
|
8130
8144
|
const applePayRequest = this.paymentClient.createPaymentRequest(request);
|
|
8131
8145
|
const session = new this.window.ApplePaySession(applePayVersion, applePayRequest);
|
|
8146
|
+
const { isApplePayInstantFlowEnabled, topLevelDomain } = additionalParams;
|
|
8132
8147
|
session.onvalidatemerchant = (event) => {
|
|
8133
8148
|
const validationParams = {
|
|
8134
8149
|
validationURL: event.validationURL,
|
|
8135
8150
|
displayName: params.totalLabel,
|
|
8136
8151
|
};
|
|
8137
|
-
|
|
8138
|
-
if (iframeIntegrationEnabled && params.topLevelDomain) {
|
|
8152
|
+
if (isApplePayInstantFlowEnabled && topLevelDomain) {
|
|
8139
8153
|
// @ts-expect-error unknown property
|
|
8140
|
-
validationParams.domainName =
|
|
8154
|
+
validationParams.domainName = topLevelDomain;
|
|
8141
8155
|
}
|
|
8142
8156
|
this.paymentClient
|
|
8143
8157
|
?.performValidation(validationParams)
|
|
@@ -8153,7 +8167,6 @@ class BraintreeHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8153
8167
|
this.paymentClient
|
|
8154
8168
|
?.tokenize({ token: event.payment.token })
|
|
8155
8169
|
.then((response) => {
|
|
8156
|
-
console.log('🟡[LOG] braintree response :>>', response);
|
|
8157
8170
|
this.payment.next(JSON.stringify({
|
|
8158
8171
|
token: response?.nonce ?? '',
|
|
8159
8172
|
email: event.payment.billingContact?.emailAddress ?? null,
|
|
@@ -8162,7 +8175,6 @@ class BraintreeHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8162
8175
|
session.completePayment(this.window.ApplePaySession.STATUS_SUCCESS);
|
|
8163
8176
|
})
|
|
8164
8177
|
.catch((error) => {
|
|
8165
|
-
console.log('🟡[LOG] braintree error :>>', error);
|
|
8166
8178
|
console.error('Apple Pay: Tokenization error', error);
|
|
8167
8179
|
session.completePayment(this.window.ApplePaySession.STATUS_FAILURE);
|
|
8168
8180
|
});
|
|
@@ -8189,7 +8201,7 @@ class CheckoutHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8189
8201
|
this.window = window;
|
|
8190
8202
|
this.http = http;
|
|
8191
8203
|
}
|
|
8192
|
-
startSession(params,
|
|
8204
|
+
startSession(params, additionalParams) {
|
|
8193
8205
|
const request = this.buildPaymentRequest(params);
|
|
8194
8206
|
const session = new this.window.ApplePaySession(applePayVersion, request);
|
|
8195
8207
|
session.onvalidatemerchant = (event) => {
|
|
@@ -8198,10 +8210,10 @@ class CheckoutHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8198
8210
|
accountId: params.payInstanceAccountId,
|
|
8199
8211
|
isSandbox: params.isSandbox,
|
|
8200
8212
|
};
|
|
8201
|
-
|
|
8202
|
-
if (
|
|
8213
|
+
const { isApplePayInstantFlowEnabled, topLevelDomain } = additionalParams;
|
|
8214
|
+
if (isApplePayInstantFlowEnabled && topLevelDomain) {
|
|
8203
8215
|
// @ts-expect-error unknown property
|
|
8204
|
-
validationParams.domainName =
|
|
8216
|
+
validationParams.domainName = topLevelDomain;
|
|
8205
8217
|
}
|
|
8206
8218
|
this.http
|
|
8207
8219
|
.post(params.getApplePaySessionUrl, JSON.stringify(validationParams), {
|
|
@@ -8209,7 +8221,6 @@ class CheckoutHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8209
8221
|
})
|
|
8210
8222
|
.subscribe({
|
|
8211
8223
|
next: (response) => {
|
|
8212
|
-
console.log('🟡[LOG] checkout http response :>>', response);
|
|
8213
8224
|
session.completeMerchantValidation(response.merchantSession);
|
|
8214
8225
|
},
|
|
8215
8226
|
error: (error) => {
|
|
@@ -8219,7 +8230,6 @@ class CheckoutHandler extends ApplePaySessionHandlerAbstract {
|
|
|
8219
8230
|
});
|
|
8220
8231
|
};
|
|
8221
8232
|
session.onpaymentauthorized = (event) => {
|
|
8222
|
-
console.log('🟡[LOG] checkout onpaymentauthorized :>>', event);
|
|
8223
8233
|
this.payment.next(JSON.stringify({
|
|
8224
8234
|
token: event.payment.token ?? '',
|
|
8225
8235
|
email: event.payment.billingContact?.emailAddress ?? null,
|
|
@@ -8708,6 +8718,10 @@ class GooglePayService {
|
|
|
8708
8718
|
}
|
|
8709
8719
|
catch (error) {
|
|
8710
8720
|
this.paymentService.handleFailedPayment?.(error);
|
|
8721
|
+
const isClosedByUser = this.isClosedByUser(error?.message ?? '');
|
|
8722
|
+
const isCanceledStatus = this.isCanceledStatus(error.statusCode ?? '');
|
|
8723
|
+
if (isClosedByUser || isCanceledStatus)
|
|
8724
|
+
return null;
|
|
8711
8725
|
return checkStatusAction;
|
|
8712
8726
|
}
|
|
8713
8727
|
}
|
|
@@ -8763,6 +8777,12 @@ class GooglePayService {
|
|
|
8763
8777
|
return this.googlePayInstantPaymentService;
|
|
8764
8778
|
return this.googlePayCheckoutPaymentService;
|
|
8765
8779
|
}
|
|
8780
|
+
isClosedByUser(message) {
|
|
8781
|
+
return message.toLowerCase().includes('user closed the payment request ui');
|
|
8782
|
+
}
|
|
8783
|
+
isCanceledStatus(statusCode) {
|
|
8784
|
+
return statusCode.toLowerCase() === 'canceled';
|
|
8785
|
+
}
|
|
8766
8786
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, deps: [{ token: windowToken }, { token: ElkLoggerService }, { token: PaymentSystemProcessingService }, { token: GooglePayCheckoutPaymentService }, { token: GooglePayInstantPaymentService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8767
8787
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, providedIn: 'root' }); }
|
|
8768
8788
|
}
|
|
@@ -9006,13 +9026,13 @@ class ApplePayService {
|
|
|
9006
9026
|
}
|
|
9007
9027
|
this.applePayParams = this.appleParamsBuilder.updateParams(this.applePayParams, summary);
|
|
9008
9028
|
}
|
|
9009
|
-
proceedCheckout(parameters,
|
|
9029
|
+
proceedCheckout(parameters, additionalParams) {
|
|
9010
9030
|
const sessionHandler = this.getSessionHandler(parameters.acquirer);
|
|
9011
9031
|
if (!sessionHandler) {
|
|
9012
9032
|
console.error('Apple Pay: Unsupported acquirer:', parameters.acquirer);
|
|
9013
9033
|
return;
|
|
9014
9034
|
}
|
|
9015
|
-
sessionHandler.startSession(parameters,
|
|
9035
|
+
sessionHandler.startSession(parameters, additionalParams);
|
|
9016
9036
|
}
|
|
9017
9037
|
getSessionHandler(acquirer) {
|
|
9018
9038
|
switch (acquirer) {
|
|
@@ -9044,7 +9064,6 @@ class ApplePayService {
|
|
|
9044
9064
|
handlers.forEach((handler) => {
|
|
9045
9065
|
handler.error$.subscribe((error) => this.emitError(error));
|
|
9046
9066
|
handler.payment$.subscribe((token) => {
|
|
9047
|
-
console.log('🟡[LOG] payment token :>>', token);
|
|
9048
9067
|
this.payment.next(token);
|
|
9049
9068
|
});
|
|
9050
9069
|
});
|