@veloceapps/sdk 8.0.0-98 → 8.0.0-99
Sign up to get free protection for your applications and to get access to all the features.
- package/cms/cms.actions.d.ts +4 -0
- package/cms/types/integration.types.d.ts +1 -0
- package/cms/vendor-map.d.ts +4 -2
- package/esm2020/cms/cms.actions.mjs +11 -1
- package/esm2020/cms/modules/runtime/services/compilation.service.mjs +5 -1
- package/esm2020/cms/types/integration.types.mjs +1 -1
- package/esm2020/cms/vendor-map.mjs +5 -3
- package/esm2020/src/components/doc-gen/doc-gen.component.mjs +25 -21
- package/esm2020/src/components/flow-header/flow-header.component.mjs +119 -0
- package/esm2020/src/components/flow-header/flow-header.module.mjs +19 -0
- package/esm2020/src/components/flow-header/index.mjs +2 -0
- package/esm2020/src/components/guided-selling/guided-selling.component.mjs +24 -21
- package/esm2020/src/configure-primeng.mjs +33 -0
- package/esm2020/src/flow.component.mjs +4 -4
- package/esm2020/src/flow.module.mjs +7 -5
- package/esm2020/src/services/flow-dialog.service.mjs +5 -1
- package/esm2020/src/services/flow-router.service.mjs +15 -1
- package/esm2020/src/services/flow.service.mjs +18 -5
- package/esm2020/src/services/index.mjs +3 -1
- package/esm2020/src/types/flow-customization.types.mjs +1 -1
- package/fesm2015/veloceapps-sdk-cms.mjs +18 -3
- package/fesm2015/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk.mjs +455 -1059
- package/fesm2015/veloceapps-sdk.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-cms.mjs +18 -3
- package/fesm2020/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk.mjs +455 -1059
- package/fesm2020/veloceapps-sdk.mjs.map +1 -1
- package/package.json +1 -1
- package/src/components/flow-header/flow-header.component.d.ts +28 -0
- package/src/components/flow-header/flow-header.module.d.ts +9 -0
- package/src/components/flow-header/index.d.ts +1 -0
- package/src/configure-primeng.d.ts +1 -0
- package/src/flow.module.d.ts +2 -2
- package/src/services/flow-dialog.service.d.ts +1 -0
- package/src/services/flow-router.service.d.ts +1 -0
- package/src/services/flow.service.d.ts +3 -1
- package/src/services/index.d.ts +2 -0
- package/src/types/flow-customization.types.d.ts +1 -1
- package/esm2020/src/components/header/cart-overlay/cart-preview.component.mjs +0 -119
- package/esm2020/src/components/header/cart-overlay/cart-preview.module.mjs +0 -47
- package/esm2020/src/components/header/header.component.mjs +0 -355
- package/esm2020/src/components/header/header.module.mjs +0 -52
- package/esm2020/src/components/header/header.types.mjs +0 -2
- package/esm2020/src/components/header/metrics/index.mjs +0 -2
- package/esm2020/src/components/header/metrics/metrics.component.mjs +0 -255
- package/esm2020/src/components/header/metrics/metrics.definitions.mjs +0 -2
- package/esm2020/src/components/header/metrics/metrics.module.mjs +0 -69
- package/src/components/header/cart-overlay/cart-preview.component.d.ts +0 -36
- package/src/components/header/cart-overlay/cart-preview.module.d.ts +0 -14
- package/src/components/header/header.component.d.ts +0 -70
- package/src/components/header/header.module.d.ts +0 -16
- package/src/components/header/header.types.d.ts +0 -20
- package/src/components/header/metrics/index.d.ts +0 -1
- package/src/components/header/metrics/metrics.component.d.ts +0 -67
- package/src/components/header/metrics/metrics.definitions.d.ts +0 -1
- package/src/components/header/metrics/metrics.module.d.ts +0 -18
@@ -0,0 +1,19 @@
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
2
|
+
import { NgModule } from '@angular/core';
|
3
|
+
import { PreviewModule } from '@veloceapps/sdk/cms';
|
4
|
+
import { FlowHeaderComponent } from './flow-header.component';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class FlowNewHeaderModule {
|
7
|
+
}
|
8
|
+
FlowNewHeaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowNewHeaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
9
|
+
FlowNewHeaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FlowNewHeaderModule, declarations: [FlowHeaderComponent], imports: [CommonModule, PreviewModule], exports: [FlowHeaderComponent] });
|
10
|
+
FlowNewHeaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowNewHeaderModule, imports: [CommonModule, PreviewModule] });
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowNewHeaderModule, decorators: [{
|
12
|
+
type: NgModule,
|
13
|
+
args: [{
|
14
|
+
declarations: [FlowHeaderComponent],
|
15
|
+
imports: [CommonModule, PreviewModule],
|
16
|
+
exports: [FlowHeaderComponent],
|
17
|
+
}]
|
18
|
+
}] });
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1oZWFkZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL2NvbXBvbmVudHMvZmxvdy1oZWFkZXIvZmxvdy1oZWFkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLG1CQUFtQjs7Z0hBQW5CLG1CQUFtQjtpSEFBbkIsbUJBQW1CLGlCQUpmLG1CQUFtQixhQUN4QixZQUFZLEVBQUUsYUFBYSxhQUMzQixtQkFBbUI7aUhBRWxCLG1CQUFtQixZQUhwQixZQUFZLEVBQUUsYUFBYTsyRkFHMUIsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByZXZpZXdNb2R1bGUgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY21zJztcbmltcG9ydCB7IEZsb3dIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2Zsb3ctaGVhZGVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0Zsb3dIZWFkZXJDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQcmV2aWV3TW9kdWxlXSxcbiAgZXhwb3J0czogW0Zsb3dIZWFkZXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBGbG93TmV3SGVhZGVyTW9kdWxlIHt9XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './flow-header.module';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvY29tcG9uZW50cy9mbG93LWhlYWRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mbG93LWhlYWRlci5tb2R1bGUnO1xuIl19
|
@@ -1,11 +1,12 @@
|
|
1
1
|
import { ChangeDetectionStrategy, Component, Inject, Optional } from '@angular/core';
|
2
2
|
import { UITemplatesApiService } from '@veloceapps/api';
|
3
3
|
import { ToastService, ToastType } from '@veloceapps/components';
|
4
|
-
import {
|
4
|
+
import { UITemplateType } from '@veloceapps/core';
|
5
5
|
import { QuoteDraftService } from '@veloceapps/sdk/core';
|
6
|
-
import { BehaviorSubject, catchError, first, map, of, Subject, switchMap, takeUntil, tap } from 'rxjs';
|
6
|
+
import { BehaviorSubject, catchError, first, forkJoin, map, of, Subject, switchMap, takeUntil, tap, } from 'rxjs';
|
7
7
|
import { FlowService } from '../../services';
|
8
8
|
import { FLOW_CUSTOMIZATION } from '../../types';
|
9
|
+
import { btoaSafe } from '../../../cms/utils/encoding.utils';
|
9
10
|
import * as i0 from "@angular/core";
|
10
11
|
import * as i1 from "@veloceapps/sdk/core";
|
11
12
|
import * as i2 from "@veloceapps/api";
|
@@ -48,39 +49,43 @@ export class GuidedSellingComponent {
|
|
48
49
|
.subscribe();
|
49
50
|
}
|
50
51
|
getTemplateRootComponent$(template) {
|
51
|
-
return this.templatesApi
|
52
|
-
.fetchComponents$(template.id)
|
53
|
-
.pipe(map(components => components.find(c => c.type === UITemplateComponentType.ROOT) ?? undefined));
|
52
|
+
return this.templatesApi.fetchComponents$(template.id);
|
54
53
|
}
|
55
54
|
getLocalTemplateComponentMeta$() {
|
56
55
|
if (!this.customizationService?.getTemplateComponent) {
|
57
56
|
return of(undefined);
|
58
57
|
}
|
59
|
-
return this.customizationService?.getTemplateComponent(this.templateApiName).pipe(map(
|
60
|
-
if (!
|
58
|
+
return this.customizationService?.getTemplateComponent(this.templateApiName).pipe(map(components => {
|
59
|
+
if (!components) {
|
61
60
|
return;
|
62
61
|
}
|
63
|
-
return {
|
62
|
+
return components.map(component => ({
|
64
63
|
html: component.html,
|
65
64
|
css: component.css,
|
66
65
|
js: component.js,
|
67
66
|
json: component.json,
|
68
|
-
};
|
67
|
+
}));
|
69
68
|
}));
|
70
69
|
}
|
71
70
|
getGuidedSellingComponentMeta$() {
|
72
71
|
return this.templatesApi.fetchTemplates$().pipe(map(templates => {
|
73
72
|
const template = templates.find(template => template.type === UITemplateType.GUIDED_SELLING && template.name === this.templateApiName);
|
74
73
|
return template ?? templates[0];
|
75
|
-
}), switchMap(template => (template ? this.getTemplateRootComponent$(template) : of(undefined))), switchMap(
|
74
|
+
}), switchMap(template => (template ? this.getTemplateRootComponent$(template) : of(undefined))), switchMap(components => components
|
75
|
+
? forkJoin([
|
76
|
+
...components.map(component => {
|
77
|
+
return this.templatesApi.fetchComponentAttachments$(component.uiTemplateId, component);
|
78
|
+
}),
|
79
|
+
])
|
80
|
+
: of(undefined)));
|
76
81
|
}
|
77
82
|
generateUIDefinition$() {
|
78
83
|
return of(undefined).pipe(tap(() => {
|
79
84
|
if (!this.templateApiName) {
|
80
85
|
throw new Error("Flow Query parameter 'guidedSellingTemplateApiName' is missing.");
|
81
86
|
}
|
82
|
-
}), switchMap(() => this.getLocalTemplateComponentMeta$()), switchMap(
|
83
|
-
if (!
|
87
|
+
}), switchMap(() => this.getLocalTemplateComponentMeta$()), switchMap(children => (children ? of(children) : this.getGuidedSellingComponentMeta$())), map(children => {
|
88
|
+
if (!children) {
|
84
89
|
return;
|
85
90
|
}
|
86
91
|
const uiDef = {
|
@@ -89,14 +94,12 @@ export class GuidedSellingComponent {
|
|
89
94
|
primary: true,
|
90
95
|
type: 'DEFAULT',
|
91
96
|
version: 2,
|
92
|
-
children:
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
},
|
99
|
-
],
|
97
|
+
children: children.map(child => ({
|
98
|
+
children: [],
|
99
|
+
template: child.html && btoaSafe(child.html),
|
100
|
+
script: child.js && btoaSafe(child.js),
|
101
|
+
styles: child.css && btoaSafe(child.css),
|
102
|
+
})),
|
100
103
|
};
|
101
104
|
return uiDef;
|
102
105
|
}));
|
@@ -113,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
113
116
|
type: Inject,
|
114
117
|
args: [FLOW_CUSTOMIZATION]
|
115
118
|
}] }]; } });
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL2NvbXBvbmVudHMvZ3VpZGVkLXNlbGxpbmcvZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL2NvbXBvbmVudHMvZ3VpZGVkLXNlbGxpbmcvZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakUsT0FBTyxFQUtMLHVCQUF1QixFQUN2QixjQUFjLEdBQ2YsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBcUIsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7O0FBUXBFLE1BQU0sT0FBTyxzQkFBc0I7SUFNakMsWUFDVSxpQkFBb0MsRUFDcEMsWUFBbUMsRUFDbkMsWUFBMEIsRUFDMUIsV0FBd0IsRUFDZ0Isb0JBQXdDO1FBSmhGLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsaUJB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bmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVSVRlbXBsYXRlc0FwaVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9hcGknO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlLCBUb2FzdFR5cGUgfSBmcm9tICdAdmVsb2NlYXBwcy9jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIENvbXBvbmVudEF0dGFjaG1lbnRzLFxuICBUZW1wbGF0ZUNvbXBvbmVudCxcbiAgVUlEZWZpbml0aW9uLFxuICBVSVRlbXBsYXRlLFxuICBVSVRlbXBsYXRlQ29tcG9uZW50VHlwZSxcbiAgVUlUZW1wbGF0ZVR5cGUsXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgUXVvdGVEcmFmdFNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNhdGNoRXJyb3IsIGZpcnN0LCBtYXAsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEZsb3dDdXN0b21pemF0aW9uLCBGTE9XX0NVU1RPTUlaQVRJT04gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctZ3VpZGVkLXNlbGxpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ndWlkZWQtc2VsbGluZy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3VpZGVkU2VsbGluZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHB1YmxpYyB1aURlZmluaXRpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxVSURlZmluaXRpb24gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIHRlbXBsYXRlQXBpTmFtZSA9ICcnO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHF1b3RlRHJhZnRTZXJ2aWNlOiBRdW90ZURyYWZ0U2VydmljZSxcbiAgICBwcml2YXRlIHRlbXBsYXRlc0FwaTogVUlUZW1wbGF0ZXNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmbG93U2VydmljZTogRmxvd1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChGTE9XX0NVU1RPTUlaQVRJT04pIHByaXZhdGUgY3VzdG9taXphdGlvblNlcnZpY2U/OiBGbG93Q3VzdG9taXphdGlvbixcbiAgKSB7XG4gICAgLy8gaW5pdGlhbGl6ZSB3aGVuIHF1b3RlIGRyYWZ0IHJlcXVlc3RlZFxuICAgIHRoaXMucXVvdGVEcmFmdFNlcnZpY2UucXVvdGVEcmFmdCRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5pbml0aWFsaXplKCkpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMudGVtcGxhdGVBcGlOYW1lID0gdGhpcy5mbG93U2VydmljZS5mbG93Py5wcm9wZXJ0aWVzLnRlbXBsYXRlcy5ndWlkZWRTZWxsaW5nID8/ICcnO1xuXG4gICAgdGhpcy5nZW5lcmF0ZVVJRGVmaW5pdGlvbiQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCh1aURlZiA9PiB7XG4gICAgICAgICAgaWYgKCF1aURlZikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb21wb25lbnQgd2l0aCBuYW1lICcke3RoaXMudGVtcGxhdGVBcGlOYW1lfScgbm90IGZvdW5kLmApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMudWlEZWZpbml0aW9uJC5uZXh0KHVpRGVmKTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gJ0ZhaWxlZCB0byByZXNvbHZlIEd1aWRlZCBTZWxsaW5nIGNvbXBvbmVudC4gJyArIChlcnIubWVzc2FnZSA/PyAnJyk7XG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6IFRvYXN0VHlwZS5lcnJvciwgc3VtbWFyeTogbWVzc2FnZSwgc3RpY2t5OiB0cnVlIH0pO1xuICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZW1wbGF0ZVJvb3RDb21wb25lbnQkKHRlbXBsYXRlOiBVSVRlbXBsYXRlKTogT2JzZXJ2YWJsZTxUZW1wbGF0ZUNvbXBvbmVudCB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLnRlbXBsYXRlc0FwaVxuICAgICAgLmZldGNoQ29tcG9uZW50cyQodGVtcGxhdGUuaWQpXG4gICAgICAucGlwZShtYXAoY29tcG9uZW50cyA9PiBjb21wb25lbnRzLmZpbmQoYyA9PiBjLnR5cGUgPT09IFVJVGVtcGxhdGVDb21wb25lbnRUeXBlLlJPT1QpID8/IHVuZGVmaW5lZCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2NhbFRlbXBsYXRlQ29tcG9uZW50TWV0YSQoKTogT2JzZXJ2YWJsZTxDb21wb25lbnRBdHRhY2htZW50cyB8IHVuZGVmaW5lZD4ge1xuICAgIGlmICghdGhpcy5jdXN0b21pemF0aW9uU2VydmljZT8uZ2V0VGVtcGxhdGVDb21wb25lbnQpIHtcbiAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlPy5nZXRUZW1wbGF0ZUNvbXBvbmVudCh0aGlzLnRlbXBsYXRlQXBpTmFtZSkucGlwZShcbiAgICAgIG1hcChjb21wb25lbnQgPT4ge1xuICAgICAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiA8Q29tcG9uZW50QXR0YWNobWVudHM+e1xuICAgICAgICAgIGh0bWw6IGNvbXBvbmVudC5odG1sLFxuICAgICAgICAgIGNzczogY29tcG9uZW50LmNzcyxcbiAgICAgICAgICBqczogY29tcG9uZW50LmpzLFxuICAgICAgICAgIGpzb246IGNvbXBvbmVudC5qc29uLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0R3VpZGVkU2VsbGluZ0NvbXBvbmVudE1ldGEkKCk6IE9ic2VydmFibGU8Q29tcG9uZW50QXR0YWNobWVudHMgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy50ZW1wbGF0ZXNBcGkuZmV0Y2hUZW1wbGF0ZXMkKCkucGlwZShcbiAgICAgIG1hcDxVSVRlbXBsYXRlW10sIFVJVGVtcGxhdGUgfCB1bmRlZmluZWQ+KHRlbXBsYXRlcyA9PiB7XG4gICAgICAgIGNvbnN0IHRlbXBsYXRlID0gdGVtcGxhdGVzLmZpbmQoXG4gICAgICAgICAgdGVtcGxhdGUgPT4gdGVtcGxhdGUudHlwZSA9PT0gVUlUZW1wbGF0ZVR5cGUuR1VJREVEX1NFTExJTkcgJiYgdGVtcGxhdGUubmFtZSA9PT0gdGhpcy50ZW1wbGF0ZUFwaU5hbWUsXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB0ZW1wbGF0ZSA/PyB0ZW1wbGF0ZXNbMF07XG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCh0ZW1wbGF0ZSA9PiAodGVtcGxhdGUgPyB0aGlzLmdldFRlbXBsYXRlUm9vdENvbXBvbmVudCQodGVtcGxhdGUpIDogb2YodW5kZWZpbmVkKSkpLFxuICAgICAgc3dpdGNoTWFwKGNvbXBvbmVudCA9PlxuICAgICAgICBjb21wb25lbnQgPyB0aGlzLnRlbXBsYXRlc0FwaS5mZXRjaENvbXBvbmVudEF0dGFjaG1lbnRzJChjb21wb25lbnQudWlUZW1wbGF0ZUlkLCBjb21wb25lbnQpIDogb2YodW5kZWZpbmVkKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVVSURlZmluaXRpb24kKCk6IE9ic2VydmFibGU8VUlEZWZpbml0aW9uIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIG9mKHVuZGVmaW5lZCkucGlwZShcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZUFwaU5hbWUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJGbG93IFF1ZXJ5IHBhcmFtZXRlciAnZ3VpZGVkU2VsbGluZ1RlbXBsYXRlQXBpTmFtZScgaXMgbWlzc2luZy5cIik7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuZ2V0TG9jYWxUZW1wbGF0ZUNvbXBvbmVudE1ldGEkKCkpLFxuICAgICAgc3dpdGNoTWFwKG1ldGEgPT4gKG1ldGEgPyBvZihtZXRhKSA6IHRoaXMuZ2V0R3VpZGVkU2VsbGluZ0NvbXBvbmVudE1ldGEkKCkpKSxcbiAgICAgIG1hcChtZXRhID0+IHtcbiAgICAgICAgaWYgKCFtZXRhKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdWlEZWY6IFVJRGVmaW5pdGlvbiA9IHtcbiAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICBjcmVhdGVkVGltZXN0YW1wOiAwLFxuICAgICAgICAgIHByaW1hcnk6IHRydWUsXG4gICAgICAgICAgdHlwZTogJ0RFRkFVTFQnLFxuICAgICAgICAgIHZlcnNpb246IDIsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY2hpbGRyZW46IFtdLFxuICAgICAgICAgICAgICB0ZW1wbGF0ZTogbWV0YS5odG1sICYmIGJ0b2EobWV0YS5odG1sKSxcbiAgICAgICAgICAgICAgc2NyaXB0OiBtZXRhLmpzICYmIGJ0b2EobWV0YS5qcyksXG4gICAgICAgICAgICAgIHN0eWxlczogbWV0YS5jc3MgJiYgYnRvYShtZXRhLmNzcyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHVpRGVmO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInVpRGVmaW5pdGlvbiQgfCBhc3luYyBhcyB1aURlZmluaXRpb25cIj5cbiAgPHZsLWNtcy1wcmV2aWV3IFt1aURlZmluaXRpb25dPVwidWlEZWZpbml0aW9uXCI+PC92bC1jbXMtcHJldmlldz5cbjwvbmctY29udGFpbmVyPlxuIl19
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL2NvbXBvbmVudHMvZ3VpZGVkLXNlbGxpbmcvZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL2NvbXBvbmVudHMvZ3VpZGVkLXNlbGxpbmcvZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakUsT0FBTyxFQUFxRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNySCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsZUFBZSxFQUNmLFVBQVUsRUFDVixLQUFLLEVBQ0wsUUFBUSxFQUNSLEdBQUcsRUFFSCxFQUFFLEVBQ0YsT0FBTyxFQUNQLFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBcUIsTUFBTSxhQUFhLENBQUM7QUFDcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7OztBQVE3RCxNQUFNLE9BQU8sc0JBQXNCO0lBTWpDLFlBQ1UsaUJBQW9DLEVBQ3BDLFlBQW1DLEVBQ25DLFlBQTBCLEVBQzFCLFdBQXdCLEVBQ2dCLG9CQUF3QztR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LFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVSVRlbXBsYXRlc0FwaVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9hcGknO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlLCBUb2FzdFR5cGUgfSBmcm9tICdAdmVsb2NlYXBwcy9jb21wb25lbnRzJztcbmltcG9ydCB7IENvbXBvbmVudEF0dGFjaG1lbnRzLCBUZW1wbGF0ZUNvbXBvbmVudCwgVUlEZWZpbml0aW9uLCBVSVRlbXBsYXRlLCBVSVRlbXBsYXRlVHlwZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgUXVvdGVEcmFmdFNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNhdGNoRXJyb3IsXG4gIGZpcnN0LFxuICBmb3JrSm9pbixcbiAgbWFwLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgU3ViamVjdCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEZMT1dfQ1VTVE9NSVpBVElPTiwgRmxvd0N1c3RvbWl6YXRpb24gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBidG9hU2FmZSB9IGZyb20gJy4uLy4uLy4uL2Ntcy91dGlscy9lbmNvZGluZy51dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctZ3VpZGVkLXNlbGxpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3VpZGVkLXNlbGxpbmcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ndWlkZWQtc2VsbGluZy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3VpZGVkU2VsbGluZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHB1YmxpYyB1aURlZmluaXRpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxVSURlZmluaXRpb24gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIHRlbXBsYXRlQXBpTmFtZSA9ICcnO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHF1b3RlRHJhZnRTZXJ2aWNlOiBRdW90ZURyYWZ0U2VydmljZSxcbiAgICBwcml2YXRlIHRlbXBsYXRlc0FwaTogVUlUZW1wbGF0ZXNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmbG93U2VydmljZTogRmxvd1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChGTE9XX0NVU1RPTUlaQVRJT04pIHByaXZhdGUgY3VzdG9taXphdGlvblNlcnZpY2U/OiBGbG93Q3VzdG9taXphdGlvbixcbiAgKSB7XG4gICAgLy8gaW5pdGlhbGl6ZSB3aGVuIHF1b3RlIGRyYWZ0IHJlcXVlc3RlZFxuICAgIHRoaXMucXVvdGVEcmFmdFNlcnZpY2UucXVvdGVEcmFmdCRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5pbml0aWFsaXplKCkpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMudGVtcGxhdGVBcGlOYW1lID0gdGhpcy5mbG93U2VydmljZS5mbG93Py5wcm9wZXJ0aWVzLnRlbXBsYXRlcy5ndWlkZWRTZWxsaW5nID8/ICcnO1xuXG4gICAgdGhpcy5nZW5lcmF0ZVVJRGVmaW5pdGlvbiQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCh1aURlZiA9PiB7XG4gICAgICAgICAgaWYgKCF1aURlZikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb21wb25lbnQgd2l0aCBuYW1lICcke3RoaXMudGVtcGxhdGVBcGlOYW1lfScgbm90IGZvdW5kLmApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMudWlEZWZpbml0aW9uJC5uZXh0KHVpRGVmKTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gJ0ZhaWxlZCB0byByZXNvbHZlIEd1aWRlZCBTZWxsaW5nIGNvbXBvbmVudC4gJyArIChlcnIubWVzc2FnZSA/PyAnJyk7XG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6IFRvYXN0VHlwZS5lcnJvciwgc3VtbWFyeTogbWVzc2FnZSwgc3RpY2t5OiB0cnVlIH0pO1xuICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZW1wbGF0ZVJvb3RDb21wb25lbnQkKHRlbXBsYXRlOiBVSVRlbXBsYXRlKTogT2JzZXJ2YWJsZTxUZW1wbGF0ZUNvbXBvbmVudFtdIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMudGVtcGxhdGVzQXBpLmZldGNoQ29tcG9uZW50cyQodGVtcGxhdGUuaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2NhbFRlbXBsYXRlQ29tcG9uZW50TWV0YSQoKTogT2JzZXJ2YWJsZTxDb21wb25lbnRBdHRhY2htZW50c1tdIHwgdW5kZWZpbmVkPiB7XG4gICAgaWYgKCF0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlPy5nZXRUZW1wbGF0ZUNvbXBvbmVudCkge1xuICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2U/LmdldFRlbXBsYXRlQ29tcG9uZW50KHRoaXMudGVtcGxhdGVBcGlOYW1lKS5waXBlKFxuICAgICAgbWFwKGNvbXBvbmVudHMgPT4ge1xuICAgICAgICBpZiAoIWNvbXBvbmVudHMpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gPENvbXBvbmVudEF0dGFjaG1lbnRzW10+Y29tcG9uZW50cy5tYXAoY29tcG9uZW50ID0+ICh7XG4gICAgICAgICAgaHRtbDogY29tcG9uZW50Lmh0bWwsXG4gICAgICAgICAgY3NzOiBjb21wb25lbnQuY3NzLFxuICAgICAgICAgIGpzOiBjb21wb25lbnQuanMsXG4gICAgICAgICAganNvbjogY29tcG9uZW50Lmpzb24sXG4gICAgICAgIH0pKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldEd1aWRlZFNlbGxpbmdDb21wb25lbnRNZXRhJCgpOiBPYnNlcnZhYmxlPENvbXBvbmVudEF0dGFjaG1lbnRzW10gfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy50ZW1wbGF0ZXNBcGkuZmV0Y2hUZW1wbGF0ZXMkKCkucGlwZShcbiAgICAgIG1hcDxVSVRlbXBsYXRlW10sIFVJVGVtcGxhdGUgfCB1bmRlZmluZWQ+KHRlbXBsYXRlcyA9PiB7XG4gICAgICAgIGNvbnN0IHRlbXBsYXRlID0gdGVtcGxhdGVzLmZpbmQoXG4gICAgICAgICAgdGVtcGxhdGUgPT4gdGVtcGxhdGUudHlwZSA9PT0gVUlUZW1wbGF0ZVR5cGUuR1VJREVEX1NFTExJTkcgJiYgdGVtcGxhdGUubmFtZSA9PT0gdGhpcy50ZW1wbGF0ZUFwaU5hbWUsXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB0ZW1wbGF0ZSA/PyB0ZW1wbGF0ZXNbMF07XG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCh0ZW1wbGF0ZSA9PiAodGVtcGxhdGUgPyB0aGlzLmdldFRlbXBsYXRlUm9vdENvbXBvbmVudCQodGVtcGxhdGUpIDogb2YodW5kZWZpbmVkKSkpLFxuICAgICAgc3dpdGNoTWFwKGNvbXBvbmVudHMgPT5cbiAgICAgICAgY29tcG9uZW50c1xuICAgICAgICAgID8gZm9ya0pvaW4oW1xuICAgICAgICAgICAgICAuLi5jb21wb25lbnRzLm1hcChjb21wb25lbnQgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnRlbXBsYXRlc0FwaS5mZXRjaENvbXBvbmVudEF0dGFjaG1lbnRzJChjb21wb25lbnQudWlUZW1wbGF0ZUlkLCBjb21wb25lbnQpO1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgOiBvZih1bmRlZmluZWQpLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZVVJRGVmaW5pdGlvbiQoKTogT2JzZXJ2YWJsZTxVSURlZmluaXRpb24gfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gb2YodW5kZWZpbmVkKS5waXBlKFxuICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnRlbXBsYXRlQXBpTmFtZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkZsb3cgUXVlcnkgcGFyYW1ldGVyICdndWlkZWRTZWxsaW5nVGVtcGxhdGVBcGlOYW1lJyBpcyBtaXNzaW5nLlwiKTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5nZXRMb2NhbFRlbXBsYXRlQ29tcG9uZW50TWV0YSQoKSksXG4gICAgICBzd2l0Y2hNYXAoY2hpbGRyZW4gPT4gKGNoaWxkcmVuID8gb2YoY2hpbGRyZW4pIDogdGhpcy5nZXRHdWlkZWRTZWxsaW5nQ29tcG9uZW50TWV0YSQoKSkpLFxuICAgICAgbWFwKGNoaWxkcmVuID0+IHtcbiAgICAgICAgaWYgKCFjaGlsZHJlbikge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHVpRGVmOiBVSURlZmluaXRpb24gPSB7XG4gICAgICAgICAgbmFtZTogJycsXG4gICAgICAgICAgY3JlYXRlZFRpbWVzdGFtcDogMCxcbiAgICAgICAgICBwcmltYXJ5OiB0cnVlLFxuICAgICAgICAgIHR5cGU6ICdERUZBVUxUJyxcbiAgICAgICAgICB2ZXJzaW9uOiAyLFxuICAgICAgICAgIGNoaWxkcmVuOiBjaGlsZHJlbi5tYXAoY2hpbGQgPT4gKHtcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIHRlbXBsYXRlOiBjaGlsZC5odG1sICYmIGJ0b2FTYWZlKGNoaWxkLmh0bWwpLFxuICAgICAgICAgICAgc2NyaXB0OiBjaGlsZC5qcyAmJiBidG9hU2FmZShjaGlsZC5qcyksXG4gICAgICAgICAgICBzdHlsZXM6IGNoaWxkLmNzcyAmJiBidG9hU2FmZShjaGlsZC5jc3MpLFxuICAgICAgICAgIH0pKSxcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdWlEZWY7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidWlEZWZpbml0aW9uJCB8IGFzeW5jIGFzIHVpRGVmaW5pdGlvblwiPlxuICA8dmwtY21zLXByZXZpZXcgW3VpRGVmaW5pdGlvbl09XCJ1aURlZmluaXRpb25cIj48L3ZsLWNtcy1wcmV2aWV3PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import { DomHandler } from 'primeng/dom';
|
2
|
+
export const configurePrimengShadowDOM = () => {
|
3
|
+
DomHandler.getScrollableParents = (element) => {
|
4
|
+
const scrollableParents = [];
|
5
|
+
if (element) {
|
6
|
+
const parents = DomHandler.getParents(element).filter((item) => !(item instanceof ShadowRoot));
|
7
|
+
const overflowRegex = /(auto|scroll)/;
|
8
|
+
const overflowCheck = (node) => {
|
9
|
+
const styleDeclaration = window['getComputedStyle'](node, null);
|
10
|
+
return (overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) ||
|
11
|
+
overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) ||
|
12
|
+
overflowRegex.test(styleDeclaration.getPropertyValue('overflowY')));
|
13
|
+
};
|
14
|
+
for (const parent of parents) {
|
15
|
+
const scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors'];
|
16
|
+
if (scrollSelectors) {
|
17
|
+
const selectors = scrollSelectors.split(',');
|
18
|
+
for (const selector of selectors) {
|
19
|
+
const el = DomHandler.findSingle(parent, selector);
|
20
|
+
if (el && overflowCheck(el)) {
|
21
|
+
scrollableParents.push(el);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
if (parent.nodeType !== 9 && overflowCheck(parent)) {
|
26
|
+
scrollableParents.push(parent);
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}
|
30
|
+
return scrollableParents;
|
31
|
+
};
|
32
|
+
};
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlLXByaW1lbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvY29uZmlndXJlLXByaW1lbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV6QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxHQUFHLEVBQUU7SUFDNUMsVUFBVSxDQUFDLG9CQUFvQixHQUFHLENBQUMsT0FBWSxFQUFFLEVBQUU7UUFDakQsTUFBTSxpQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFFN0IsSUFBSSxPQUFPLEVBQUU7WUFDWCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQ3BHLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQztZQUN0QyxNQUFNLGFBQWEsR0FBRyxDQUFDLElBQVMsRUFBRSxFQUFFO2dCQUNsQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDaEUsT0FBTyxDQUNMLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQ2pFLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQ2xFLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FDbkUsQ0FBQztZQUNKLENBQUMsQ0FBQztZQUVGLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUM1QixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsUUFBUSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7Z0JBQ25GLElBQUksZUFBZSxFQUFFO29CQUNuQixNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUM3QyxLQUFLLE1BQU0sUUFBUSxJQUFJLFNBQVMsRUFBRTt3QkFDaEMsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7d0JBQ25ELElBQUksRUFBRSxJQUFJLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFBRTs0QkFDM0IsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3lCQUM1QjtxQkFDRjtpQkFDRjtnQkFFRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssQ0FBQyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRTtvQkFDbEQsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUNoQzthQUNGO1NBQ0Y7UUFFRCxPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvbUhhbmRsZXIgfSBmcm9tICdwcmltZW5nL2RvbSc7XG5cbmV4cG9ydCBjb25zdCBjb25maWd1cmVQcmltZW5nU2hhZG93RE9NID0gKCkgPT4ge1xuICBEb21IYW5kbGVyLmdldFNjcm9sbGFibGVQYXJlbnRzID0gKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgIGNvbnN0IHNjcm9sbGFibGVQYXJlbnRzID0gW107XG5cbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgY29uc3QgcGFyZW50cyA9IERvbUhhbmRsZXIuZ2V0UGFyZW50cyhlbGVtZW50KS5maWx0ZXIoKGl0ZW06IGFueSkgPT4gIShpdGVtIGluc3RhbmNlb2YgU2hhZG93Um9vdCkpO1xuICAgICAgY29uc3Qgb3ZlcmZsb3dSZWdleCA9IC8oYXV0b3xzY3JvbGwpLztcbiAgICAgIGNvbnN0IG92ZXJmbG93Q2hlY2sgPSAobm9kZTogYW55KSA9PiB7XG4gICAgICAgIGNvbnN0IHN0eWxlRGVjbGFyYXRpb24gPSB3aW5kb3dbJ2dldENvbXB1dGVkU3R5bGUnXShub2RlLCBudWxsKTtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBvdmVyZmxvd1JlZ2V4LnRlc3Qoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdvdmVyZmxvdycpKSB8fFxuICAgICAgICAgIG92ZXJmbG93UmVnZXgudGVzdChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ292ZXJmbG93WCcpKSB8fFxuICAgICAgICAgIG92ZXJmbG93UmVnZXgudGVzdChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ292ZXJmbG93WScpKVxuICAgICAgICApO1xuICAgICAgfTtcblxuICAgICAgZm9yIChjb25zdCBwYXJlbnQgb2YgcGFyZW50cykge1xuICAgICAgICBjb25zdCBzY3JvbGxTZWxlY3RvcnMgPSBwYXJlbnQubm9kZVR5cGUgPT09IDEgJiYgcGFyZW50LmRhdGFzZXRbJ3Njcm9sbHNlbGVjdG9ycyddO1xuICAgICAgICBpZiAoc2Nyb2xsU2VsZWN0b3JzKSB7XG4gICAgICAgICAgY29uc3Qgc2VsZWN0b3JzID0gc2Nyb2xsU2VsZWN0b3JzLnNwbGl0KCcsJyk7XG4gICAgICAgICAgZm9yIChjb25zdCBzZWxlY3RvciBvZiBzZWxlY3RvcnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGVsID0gRG9tSGFuZGxlci5maW5kU2luZ2xlKHBhcmVudCwgc2VsZWN0b3IpO1xuICAgICAgICAgICAgaWYgKGVsICYmIG92ZXJmbG93Q2hlY2soZWwpKSB7XG4gICAgICAgICAgICAgIHNjcm9sbGFibGVQYXJlbnRzLnB1c2goZWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwYXJlbnQubm9kZVR5cGUgIT09IDkgJiYgb3ZlcmZsb3dDaGVjayhwYXJlbnQpKSB7XG4gICAgICAgICAgc2Nyb2xsYWJsZVBhcmVudHMucHVzaChwYXJlbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHNjcm9sbGFibGVQYXJlbnRzO1xuICB9O1xufTtcbiJdfQ==
|
@@ -14,7 +14,7 @@ import * as i5 from "@veloceapps/sdk/cms";
|
|
14
14
|
import * as i6 from "@angular/common";
|
15
15
|
import * as i7 from "@angular/router";
|
16
16
|
import * as i8 from "@veloceapps/components";
|
17
|
-
import * as i9 from "./components/header/header.component";
|
17
|
+
import * as i9 from "./components/flow-header/flow-header.component";
|
18
18
|
import * as i10 from "./components/doc-gen/doc-gen.component";
|
19
19
|
import * as i11 from "./components/guided-selling/guided-selling.component";
|
20
20
|
export class FlowComponent {
|
@@ -44,9 +44,9 @@ export class FlowComponent {
|
|
44
44
|
}
|
45
45
|
}
|
46
46
|
FlowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowComponent, deps: [{ token: i1.FlowRouterService }, { token: i2.QuoteDraftService }, { token: i3.FlowService }, { token: i4.FlowDocGenService }, { token: i5.IntegrationState }, { token: i2.ContextService }], target: i0.ɵɵFactoryTarget.Component });
|
47
|
-
FlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FlowComponent, selector: "vl-flow", ngImport: i0, template: "<vl-flow-header *ngIf=\"showHeader$ | async\"></vl-flow-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i8.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { kind: "component", type: i9.FlowHeaderComponent, selector: "vl-flow-header" }, { kind: "component", type: i10.DocGenComponent, selector: "vl-flow-doc-gen" }, { kind: "component", type: i11.GuidedSellingComponent, selector: "vl-flow-guided-selling" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
47
|
+
FlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FlowComponent, selector: "vl-flow", ngImport: i0, template: "<vl-flow-new-header *ngIf=\"showHeader$ | async\"></vl-flow-new-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i8.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { kind: "component", type: i9.FlowHeaderComponent, selector: "vl-flow-new-header" }, { kind: "component", type: i10.DocGenComponent, selector: "vl-flow-doc-gen" }, { kind: "component", type: i11.GuidedSellingComponent, selector: "vl-flow-guided-selling" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
48
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowComponent, decorators: [{
|
49
49
|
type: Component,
|
50
|
-
args: [{ selector: 'vl-flow', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vl-flow-header *ngIf=\"showHeader$ | async\"></vl-flow-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#fff;z-index:999}\n"] }]
|
50
|
+
args: [{ selector: 'vl-flow', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vl-flow-new-header *ngIf=\"showHeader$ | async\"></vl-flow-new-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#fff;z-index:999}\n"] }]
|
51
51
|
}], ctorParameters: function () { return [{ type: i1.FlowRouterService }, { type: i2.QuoteDraftService }, { type: i3.FlowService }, { type: i4.FlowDocGenService }, { type: i5.IntegrationState }, { type: i2.ContextService }]; } });
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZmxvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZmxvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekUsT0FBTyxFQUFjLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVFuRSxNQUFNLE9BQU8sYUFBYTtJQUt4QixZQUNVLGFBQWdDLEVBQ2hDLGlCQUFvQyxFQUNwQyxXQUF3QixFQUN4QixhQUFnQyxFQUNoQyxnQkFBa0MsRUFDbEMsY0FBOEI7UUFMOUIsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBQ2hDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBQ2hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRXRDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7UUFFOUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUM7WUFDL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNO1lBQ3pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhO1lBQ3BDLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYztTQUNuQyxDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FDRCxDQUFDLENBQUMsS0FBSyxFQUFFLFlBQVksRUFBRSxlQUFlLENBQUMsRUFBRSxFQUFFLENBQ3pDLENBQUMsQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUN6RyxDQUNGLENBQUM7UUFFRixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUM7UUFFMUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQy9CLENBQUM7OzBHQXZDVSxhQUFhOzhGQUFiLGFBQWEsK0NDZDFCLHdlQWVBOzJGRERhLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0UsU0FBUyxtQkFHRix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEludGVncmF0aW9uU3RhdGUgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY21zJztcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlLCBRdW90ZURyYWZ0U2VydmljZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL3Nkay9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmxvd1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IEZsb3dEb2NHZW5TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kb2MtZ2VuLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd1JvdXRlclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2Zsb3ctcm91dGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2bC1mbG93JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mbG93LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGbG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgaXNMb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHVibGljIHNob3dIZWFkZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBwdWJsaWMgaXNTdGFuZGFsb25lJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlclNlcnZpY2U6IEZsb3dSb3V0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcXVvdGVEcmFmdFNlcnZpY2U6IFF1b3RlRHJhZnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmxvd1NlcnZpY2U6IEZsb3dTZXJ2aWNlLFxuICAgIHByaXZhdGUgZG9jR2VuU2VydmljZTogRmxvd0RvY0dlblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbnRlZ3JhdGlvblN0YXRlOiBJbnRlZ3JhdGlvblN0YXRlLFxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmlzTG9hZGluZyQgPSB0aGlzLnJvdXRlclNlcnZpY2UubG9hZGluZyQ7XG5cbiAgICB0aGlzLnNob3dIZWFkZXIkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLnJvdXRlclNlcnZpY2Uucm91dGUkLFxuICAgICAgdGhpcy5xdW90ZURyYWZ0U2VydmljZS5pc1N0YW5kYWxvbmUkLFxuICAgICAgdGhpcy5jb250ZXh0U2VydmljZS5pc0luaXRpYWxpemVkJCxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW3JvdXRlLCBpc1N0YW5kYWxvbmUsIGlzQ29udGV4dEluaXRlZF0pID0+XG4gICAgICAgICAgISFpc0NvbnRleHRJbml0ZWQgJiYgdGhpcy5xdW90ZURyYWZ0U2VydmljZS5pc0luaXRpYWxpemVkICYmIHJvdXRlLmRhdGFbJ3Nob3dIZWFkZXInXSAmJiAhaXNTdGFuZGFsb25lLFxuICAgICAgKSxcbiAgICApO1xuXG4gICAgdGhpcy5pc1N0YW5kYWxvbmUkID0gdGhpcy5xdW90ZURyYWZ0U2VydmljZS5pc1N0YW5kYWxvbmUkO1xuXG4gICAgdGhpcy5mbG93U2VydmljZS5pbml0U3Vic2NyaXB0aW9ucygpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW50ZWdyYXRpb25TdGF0ZS5jbGVhcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZmxvd1NlcnZpY2UuY2xlYW51cCgpO1xuICAgIHRoaXMuZG9jR2VuU2VydmljZS5jbGVhbnVwKCk7XG4gICAgdGhpcy5jb250ZXh0U2VydmljZS5kZWxldGUoKTtcbiAgfVxufVxuIiwiPHZsLWZsb3ctbmV3LWhlYWRlciAqbmdJZj1cInNob3dIZWFkZXIkIHwgYXN5bmNcIj48L3ZsLWZsb3ctbmV3LWhlYWRlcj5cblxuPGRpdiBjbGFzcz1cImZsb3ctY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwibG9hZGluZy1vdmVybGF5XCIgKm5nSWY9XCJpc0xvYWRpbmckIHwgYXN5bmNcIj5cbiAgICA8dmwtbG9hZGVyIGxhYmVsPVwiTE9BRElOR1wiPjwvdmwtbG9hZGVyPlxuICA8L2Rpdj5cblxuICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG5cbiAgPHZsLWZsb3ctZ3VpZGVkLXNlbGxpbmcgKm5nSWY9XCIoaXNTdGFuZGFsb25lJCB8IGFzeW5jKSAhPT0gdHJ1ZVwiPjwvdmwtZmxvdy1ndWlkZWQtc2VsbGluZz5cbjwvZGl2PlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiKGlzU3RhbmRhbG9uZSQgfCBhc3luYykgIT09IHRydWVcIj5cbiAgPHZsLWZsb3ctZG9jLWdlbj48L3ZsLWZsb3ctZG9jLWdlbj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
@@ -7,14 +7,16 @@ import { SdkCoreModule } from '@veloceapps/sdk/core';
|
|
7
7
|
import { FlowDialogModule } from './components/dialog/dialog.module';
|
8
8
|
import { DocGenModule } from './components/doc-gen/doc-gen.module';
|
9
9
|
import { GuidedSellingModule } from './components/guided-selling/guided-selling.module';
|
10
|
-
import {
|
10
|
+
import { FlowNewHeaderModule } from './components/flow-header';
|
11
11
|
import { FlowRoutingModule } from './flow-routing.module';
|
12
12
|
import { FlowComponent } from './flow.component';
|
13
13
|
import { FlowService } from './services';
|
14
14
|
import { FlowDocGenService } from './services/doc-gen.service';
|
15
15
|
import { FlowDialogService } from './services/flow-dialog.service';
|
16
16
|
import { FlowGuidedSellingService } from './services/guided-selling.service';
|
17
|
+
import { configurePrimengShadowDOM } from './configure-primeng';
|
17
18
|
import * as i0 from "@angular/core";
|
19
|
+
configurePrimengShadowDOM();
|
18
20
|
export class FlowModule {
|
19
21
|
}
|
20
22
|
FlowModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
@@ -24,7 +26,7 @@ FlowModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15
|
|
24
26
|
ApiModule,
|
25
27
|
LauncherModule,
|
26
28
|
LoaderModule,
|
27
|
-
|
29
|
+
FlowNewHeaderModule,
|
28
30
|
FlowDialogModule,
|
29
31
|
SdkCoreModule,
|
30
32
|
DocGenModule,
|
@@ -35,7 +37,7 @@ FlowModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15
|
|
35
37
|
ApiModule,
|
36
38
|
LauncherModule,
|
37
39
|
LoaderModule,
|
38
|
-
|
40
|
+
FlowNewHeaderModule,
|
39
41
|
FlowDialogModule,
|
40
42
|
SdkCoreModule,
|
41
43
|
DocGenModule,
|
@@ -51,7 +53,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
51
53
|
ApiModule,
|
52
54
|
LauncherModule,
|
53
55
|
LoaderModule,
|
54
|
-
|
56
|
+
FlowNewHeaderModule,
|
55
57
|
FlowDialogModule,
|
56
58
|
SdkCoreModule,
|
57
59
|
DocGenModule,
|
@@ -60,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
60
62
|
providers: [FlowService, FlowDialogService, FlowDocGenService, FlowGuidedSellingService],
|
61
63
|
}]
|
62
64
|
}] });
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZmxvdy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFaEUseUJBQXlCLEVBQUUsQ0FBQztBQW1CNUIsTUFBTSxPQUFPLFVBQVU7O3VHQUFWLFVBQVU7d0dBQVYsVUFBVSxpQkFoQk4sYUFBYSxhQUUxQixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGlCQUFpQjtRQUNqQixTQUFTO1FBQ1QsY0FBYztRQUNkLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osbUJBQW1CO3dHQUlWLFVBQVUsYUFGVixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxZQVp0RixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGlCQUFpQjtRQUNqQixTQUFTO1FBQ1QsY0FBYztRQUNkLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osbUJBQW1COzJGQUlWLFVBQVU7a0JBakJ0QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDN0IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLFNBQVM7d0JBQ1QsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLFlBQVk7d0JBQ1osbUJBQW1CO3FCQUNwQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUM7aUJBQ3pGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGlNb2R1bGUgfSBmcm9tICdAdmVsb2NlYXBwcy9hcGknO1xuaW1wb3J0IHsgTGV0RGlyZWN0aXZlTW9kdWxlLCBMb2FkZXJNb2R1bGUgfSBmcm9tICdAdmVsb2NlYXBwcy9jb21wb25lbnRzJztcbmltcG9ydCB7IExhdW5jaGVyTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2Ntcyc7XG5pbXBvcnQgeyBTZGtDb3JlTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0RpYWxvZ01vZHVsZSB9IGZyb20gJy4vY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLm1vZHVsZSc7XG5pbXBvcnQgeyBEb2NHZW5Nb2R1bGUgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLWdlbi9kb2MtZ2VuLm1vZHVsZSc7XG5pbXBvcnQgeyBHdWlkZWRTZWxsaW5nTW9kdWxlIH0gZnJvbSAnLi9jb21wb25lbnRzL2d1aWRlZC1zZWxsaW5nL2d1aWRlZC1zZWxsaW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBGbG93TmV3SGVhZGVyTW9kdWxlIH0gZnJvbSAnLi9jb21wb25lbnRzL2Zsb3ctaGVhZGVyJztcbmltcG9ydCB7IEZsb3dSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9mbG93LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IEZsb3dDb21wb25lbnQgfSBmcm9tICcuL2Zsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEZsb3dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBGbG93RG9jR2VuU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZG9jLWdlbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9mbG93LWRpYWxvZy5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dHdWlkZWRTZWxsaW5nU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ3VpZGVkLXNlbGxpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBjb25maWd1cmVQcmltZW5nU2hhZG93RE9NIH0gZnJvbSAnLi9jb25maWd1cmUtcHJpbWVuZyc7XG5cbmNvbmZpZ3VyZVByaW1lbmdTaGFkb3dET00oKTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRmxvd0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTGV0RGlyZWN0aXZlTW9kdWxlLFxuICAgIEZsb3dSb3V0aW5nTW9kdWxlLFxuICAgIEFwaU1vZHVsZSxcbiAgICBMYXVuY2hlck1vZHVsZSxcbiAgICBMb2FkZXJNb2R1bGUsXG4gICAgRmxvd05ld0hlYWRlck1vZHVsZSxcbiAgICBGbG93RGlhbG9nTW9kdWxlLFxuICAgIFNka0NvcmVNb2R1bGUsXG4gICAgRG9jR2VuTW9kdWxlLFxuICAgIEd1aWRlZFNlbGxpbmdNb2R1bGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW0Zsb3dTZXJ2aWNlLCBGbG93RGlhbG9nU2VydmljZSwgRmxvd0RvY0dlblNlcnZpY2UsIEZsb3dHdWlkZWRTZWxsaW5nU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEZsb3dNb2R1bGUge31cbiJdfQ==
|
@@ -117,10 +117,14 @@ export class FlowDialogService {
|
|
117
117
|
secondaryButton: 'Cancel',
|
118
118
|
});
|
119
119
|
}
|
120
|
+
showDialog(dialog) {
|
121
|
+
const dialogFunction = this[dialog].bind(this);
|
122
|
+
return dialogFunction(dialog);
|
123
|
+
}
|
120
124
|
}
|
121
125
|
FlowDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowDialogService, deps: [{ token: i1.DialogService }, { token: i2.ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
|
122
126
|
FlowDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowDialogService });
|
123
127
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowDialogService, decorators: [{
|
124
128
|
type: Injectable
|
125
129
|
}], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.ContextService }]; } });
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1kaWFsb2cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9zZXJ2aWNlcy9mbG93LWRpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7OztBQUk1RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLGFBQTRCLEVBQVUsY0FBOEI7UUFBcEUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBRyxDQUFDO0lBRXJGLElBQUksQ0FBQyxNQUF3QjtRQUNsQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQ2xELGVBQWUsRUFBRSxJQUFJO1lBQ3JCLGFBQWEsRUFBRSxJQUFJO1lBQ25CLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLEtBQUs7WUFDakIsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUU7WUFDaEIsVUFBVSxFQUFFLGFBQWE7U0FDMUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNiLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2YsS0FBSyxFQUFFLHNCQUFzQjtZQUM3QixXQUFXLEVBQUUsaUZBQWlGO1lBQzlGLGFBQWEsRUFBRSxJQUFJO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMs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QUFFLCtDQUErQztZQUM1RCxhQUFhLEVBQUUsa0JBQWtCO1lBQ2pDLGVBQWUsRUFBRSxRQUFRO1NBQzFCLENBQUMsQ0FBQztJQUNMLENBQUM7OzhHQWxJVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZsb3dEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IEZsb3dEaWFsb2dDb25maWcgfSBmcm9tICcuLi9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2cudHlwZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmxvd0RpYWxvZ1NlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBzaG93KGNvbmZpZzogRmxvd0RpYWxvZ0NvbmZpZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbihGbG93RGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICBkaXNtaXNzYWJsZU1hc2s6IHRydWUsXG4gICAgICBjbG9zZU9uRXNjYXBlOiB0cnVlLFxuICAgICAgY2xvc2FibGU6IHRydWUsXG4gICAgICBzaG93SGVhZGVyOiBmYWxzZSxcbiAgICAgIHdpZHRoOiAnMzIwcHgnLFxuICAgICAgZGF0YTogeyBjb25maWcgfSxcbiAgICAgIHN0eWxlQ2xhc3M6ICdmbG93LWRpYWxvZycsXG4gICAgfSkub25DbG9zZTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RW1wdHlDYXJ0RGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdObyBQcm9kdWN0cyBpbiBRdW90ZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ1RoZXJlIGFyZSBubyBwcm9kdWN0cyBpbiB5b3VyIFF1b3RlLiBUbyBzYXZlIGEgUXVvdGUsIGFkZCBhdCBsZWFzdCBvbmUgcHJvZHVjdC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93UmVhZG9ubHlNb2RlRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGN0eCA9IHRoaXMuY29udGV4dFNlcnZpY2UucmVzb2x2ZSgpO1xuICAgIGNvbnN0IG9iamVjdE5hbWUgPSBjdHgubW9kZSA/IGN0eC5tb2RlWzBdLnRvVXBwZXJDYXNlKCkgKyBjdHgubW9kZS5zdWJzdHJpbmcoMSkudG9Mb3dlckNhc2UoKSA6ICdPYmplY3QnO1xuXG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ0Vycm9yJyxcbiAgICAgIGRlc2NyaXB0aW9uOiBgJHtvYmplY3ROYW1lfSBDYW5ub3QgYmUgU2F2ZWRgLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93UXVvdGVSZWFkb25seU1vZGVEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ1F1b3RlIENhbm5vdCBiZSBTYXZlZCcsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0l0IGlzIG9ubHkgcG9zc2libGUgdG8gc2F2ZSBxdW90ZXMgd2l0aCB0aGUg4oCcRHJhZnTigJ0gc3RhdHVzLiBQbGVhc2UgY3JlYXRlIGEgbmV3IHF1b3RlIHRvIG1ha2UgYW5kIHNhdmUgY2hhbmdlcy4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93UXVvdGVPdXRzaWRlU2hvcHBpbmdDYXJ0RGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdRdW90ZSBDYW5ub3QgYmUgU2F2ZWQnLFxuICAgICAgZGVzY3JpcHRpb246ICdJdCBpcyBvbmx5IHBvc3NpYmxlIHRvIHNhdmUgcXVvdGVzIGZyb20gdGhlIFNob3BwaW5nIENhcnQuIFRvIHByb2NlZWQsIGdvIHRvIHRoZSBTaG9wcGluZyBDYXJ0LicsXG4gICAgICBwcmltYXJ5QnV0dG9uOiAnT2snLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNob3dBY2NvdW50Tm9DaGFuZ2VzRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdObyBDaGFuZ2VzIHRvIFNhdmUnLFxuICAgICAgZGVzY3JpcHRpb246ICdUaGVyZSBhcmUgbm8gY2hhbmdlcyBzaW5jZSB0aGUgbGFzdCB1cGRhdGUuIFBsZWFzZSBtYWtlIGNoYW5nZXMgdG8gcHJvY2VlZC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93VW5zYXZlZENoYW5nZXNEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ1Vuc2F2ZWQgQ2hhbmdlcycsXG4gICAgICBkZXNjcmlwdGlvbjogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBsZWF2ZSB0aGlzIHBhZ2UgYW5kIGRpc2NhcmQgeW91ciB1bnNhdmVkIGNoYW5nZXM/JyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdLZWVwIEVkaXRpbmcnLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uOiAnRGlzY2FyZCBDaGFuZ2VzJyxcbiAgICAgIG9wcG9zaXRlQnV0dG9uQWN0aW9uczogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93UmVhZG9ubHlRdW90ZVN1Ym1pdEZhaWx1cmVEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ0Nhbm5vdCBTdWJtaXQgZm9yIEFwcHJvdmFsJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnSXQgaXMgb25seSBwb3NzaWJsZSB0byBzdWJtaXQgZm9yIGFwcHJvdmFsIHF1b3RlcyB3aXRoIHRoZSDigJxEcmFmdOKAnCBzdGF0dXMuIFBsZWFzZSBjcmVhdGUgYSBuZXcgcXVvdGUgdG8gcHJvY2VlZC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93T3V0c2lkZVNob3BwaW5nQ2FydFF1b3RlU3VibWl0RmFpbHVyZURpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnQ2Fubm90IFN1Ym1pdCBmb3IgQXBwcm92YWwnLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdJdCBpcyBvbmx5IHBvc3NpYmxlIHRvIHN1Ym1pdCBxdW90ZXMgZm9yIGFwcHJvdmFsIGZyb20gdGhlIFNob3BwaW5nIENhcnQuIFRvIHByb2NlZWQsIGdvIHRvIHRoZSBTaG9wcGluZyBDYXJ0LicsXG4gICAgICBwcmltYXJ5QnV0dG9uOiAnT2snLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNob3dBY2NvdW50U3VibWl0RmFpbHVyZURpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnU2F2ZSBDaGFuZ2VzJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnVG8gc3VibWl0IGZvciBhcHByb3ZhbCwgc2F2ZSB0aGUgcXVvdGUgZmlyc3QsIGFuZCB0aGVuIHN1Ym1pdCBpdCBmb3IgYXBwcm92YWwgZnJvbSB0aGUgU2hvcHBpbmcgQ2FydC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RG9jZ2VuQWNjb3VudFVuc2F2ZWRDaGFuZ2VzRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdTYXZlIFF1b3RlJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnVG8gZ2VuZXJhdGUgYSBkb2N1bWVudCwgc2F2ZSB0aGUgcXVvdGUgZmlyc3QsIGFuZCB0aGVuIGdlbmVyYXRlIHRoZSBkb2N1bWVudCBmcm9tIHRoZSBTaG9wcGluZyBDYXJ0LicsXG4gICAgICBwcmltYXJ5QnV0dG9uOiAnT2snLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNob3dEb2NnZW5SZWFkb25seURpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnRG9jdW1lbnQgR2VuZXJhdGlvbiBpcyBub3QgQXZhaWxhYmxlJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnSXQgaXMgb25seSBwb3NzaWJsZSB0byBnZW5lcmF0ZSBkb2N1bWVudHMgZm9yIHF1b3RlcyB3aXRoIHRoZSDigJxEcmFmdOKAnSBzdGF0dXMuIFBsZWFzZSBjcmVhdGUgYSBuZXcgcXVvdGUgdG8gZ2VuZXJhdGUgYSBkb2N1bWVudC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RG9jZ2VuT3V0c2lkZVNob3BwaW5nQ2FydERpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnRG9jdW1lbnQgR2VuZXJhdGlvbiBpcyBub3QgQXZhaWxhYmxlJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnSXQgaXMgb25seSBwb3NzaWJsZSB0byBnZW5lcmF0ZSBkb2N1bWVudHMgZm9yIHF1b3RlcyBmcm9tIHRoZSBTaG9wcGluZyBDYXJ0LiBUbyBwcm9jZWVkLCBnbyB0byB0aGUgU2hvcHBpbmcgQ2FydC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RG9jZ2VuVW5zYXZlZENoYW5nZXNEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ1Vuc2F2ZWQgQ2hhbmdlcycsXG4gICAgICBkZXNjcmlwdGlvbjogJ1RvIGdlbmVyYXRlIGEgZG9jdW1lbnQsIHNhdmUgdGhlIHF1b3RlIGZpcnN0LicsXG4gICAgICBwcmltYXJ5QnV0dG9uOiAnU2F2ZSBhbmQgcHJvY2VlZCcsXG4gICAgICBzZWNvbmRhcnlCdXR0b246ICdDYW5jZWwnLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1kaWFsb2cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9zZXJ2aWNlcy9mbG93LWRpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7OztBQUk1RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLGFBQTRCLEVBQVUsY0FBOEI7UUFBcEUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBRyxDQUFDO0lBRXJGLElBQUksQ0FBQyxNQUF3QjtRQUNsQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQ2xELGVBQWUsRUFBRSxJQUFJO1lBQ3JCLGFBQWEsRUFBRSxJQUFJO1lBQ25CLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLEtBQUs7WUFDakIsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUU7WUFDaEIsVUFBVSxFQUFFLGFBQWE7U0FDMUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNiLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2YsS0FBSyxFQUFFLHNCQUFzQjtZQUM3QixXQUFXLEVBQUUsaUZBQWlGO1lBQzlGLGFBQWEsRUFBRSxJQUFJO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMs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QUFFLCtDQUErQztZQUM1RCxhQUFhLEVBQUUsa0JBQWtCO1lBQ2pDLGVBQWUsRUFBRSxRQUFRO1NBQzFCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxVQUFVLENBQUMsTUFBNkQ7UUFDN0UsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQyxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs4R0F2SVUsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93RGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGbG93RGlhbG9nQ29uZmlnIH0gZnJvbSAnLi4vY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnR5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZsb3dEaWFsb2dTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLCBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSkge31cblxuICBwdWJsaWMgc2hvdyhjb25maWc6IEZsb3dEaWFsb2dDb25maWcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW4oRmxvd0RpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgZGlzbWlzc2FibGVNYXNrOiB0cnVlLFxuICAgICAgY2xvc2VPbkVzY2FwZTogdHJ1ZSxcbiAgICAgIGNsb3NhYmxlOiB0cnVlLFxuICAgICAgc2hvd0hlYWRlcjogZmFsc2UsXG4gICAgICB3aWR0aDogJzMyMHB4JyxcbiAgICAgIGRhdGE6IHsgY29uZmlnIH0sXG4gICAgICBzdHlsZUNsYXNzOiAnZmxvdy1kaWFsb2cnLFxuICAgIH0pLm9uQ2xvc2U7XG4gIH1cblxuICBwdWJsaWMgc2hvd0VtcHR5Q2FydERpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnTm8gUHJvZHVjdHMgaW4gUXVvdGUnLFxuICAgICAgZGVzY3JpcHRpb246ICdUaGVyZSBhcmUgbm8gcHJvZHVjdHMgaW4geW91ciBRdW90ZS4gVG8gc2F2ZSBhIFF1b3RlLCBhZGQgYXQgbGVhc3Qgb25lIHByb2R1Y3QuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1JlYWRvbmx5TW9kZURpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBjdHggPSB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlc29sdmUoKTtcbiAgICBjb25zdCBvYmplY3ROYW1lID0gY3R4Lm1vZGUgPyBjdHgubW9kZVswXS50b1VwcGVyQ2FzZSgpICsgY3R4Lm1vZGUuc3Vic3RyaW5nKDEpLnRvTG93ZXJDYXNlKCkgOiAnT2JqZWN0JztcblxuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdFcnJvcicsXG4gICAgICBkZXNjcmlwdGlvbjogYCR7b2JqZWN0TmFtZX0gQ2Fubm90IGJlIFNhdmVkYCxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1F1b3RlUmVhZG9ubHlNb2RlRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdRdW90ZSBDYW5ub3QgYmUgU2F2ZWQnLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdJdCBpcyBvbmx5IHBvc3NpYmxlIHRvIHNhdmUgcXVvdGVzIHdpdGggdGhlIOKAnERyYWZ04oCdIHN0YXR1cy4gUGxlYXNlIGNyZWF0ZSBhIG5ldyBxdW90ZSB0byBtYWtlIGFuZCBzYXZlIGNoYW5nZXMuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1F1b3RlT3V0c2lkZVNob3BwaW5nQ2FydERpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnUXVvdGUgQ2Fubm90IGJlIFNhdmVkJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnSXQgaXMgb25seSBwb3NzaWJsZSB0byBzYXZlIHF1b3RlcyBmcm9tIHRoZSBTaG9wcGluZyBDYXJ0LiBUbyBwcm9jZWVkLCBnbyB0byB0aGUgU2hvcHBpbmcgQ2FydC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93QWNjb3VudE5vQ2hhbmdlc0RpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnTm8gQ2hhbmdlcyB0byBTYXZlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVGhlcmUgYXJlIG5vIGNoYW5nZXMgc2luY2UgdGhlIGxhc3QgdXBkYXRlLiBQbGVhc2UgbWFrZSBjaGFuZ2VzIHRvIHByb2NlZWQuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1Vuc2F2ZWRDaGFuZ2VzRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdVbnNhdmVkIENoYW5nZXMnLFxuICAgICAgZGVzY3JpcHRpb246ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gbGVhdmUgdGhpcyBwYWdlIGFuZCBkaXNjYXJkIHlvdXIgdW5zYXZlZCBjaGFuZ2VzPycsXG4gICAgICBwcmltYXJ5QnV0dG9uOiAnS2VlcCBFZGl0aW5nJyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvbjogJ0Rpc2NhcmQgQ2hhbmdlcycsXG4gICAgICBvcHBvc2l0ZUJ1dHRvbkFjdGlvbnM6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1JlYWRvbmx5UXVvdGVTdWJtaXRGYWlsdXJlRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdDYW5ub3QgU3VibWl0IGZvciBBcHByb3ZhbCcsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0l0IGlzIG9ubHkgcG9zc2libGUgdG8gc3VibWl0IGZvciBhcHByb3ZhbCBxdW90ZXMgd2l0aCB0aGUg4oCcRHJhZnTigJwgc3RhdHVzLiBQbGVhc2UgY3JlYXRlIGEgbmV3IHF1b3RlIHRvIHByb2NlZWQuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd091dHNpZGVTaG9wcGluZ0NhcnRRdW90ZVN1Ym1pdEZhaWx1cmVEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ0Nhbm5vdCBTdWJtaXQgZm9yIEFwcHJvdmFsJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnSXQgaXMgb25seSBwb3NzaWJsZSB0byBzdWJtaXQgcXVvdGVzIGZvciBhcHByb3ZhbCBmcm9tIHRoZSBTaG9wcGluZyBDYXJ0LiBUbyBwcm9jZWVkLCBnbyB0byB0aGUgU2hvcHBpbmcgQ2FydC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93QWNjb3VudFN1Ym1pdEZhaWx1cmVEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ1NhdmUgQ2hhbmdlcycsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ1RvIHN1Ym1pdCBmb3IgYXBwcm92YWwsIHNhdmUgdGhlIHF1b3RlIGZpcnN0LCBhbmQgdGhlbiBzdWJtaXQgaXQgZm9yIGFwcHJvdmFsIGZyb20gdGhlIFNob3BwaW5nIENhcnQuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd0RvY2dlbkFjY291bnRVbnNhdmVkQ2hhbmdlc0RpYWxvZygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KHtcbiAgICAgIHRpdGxlOiAnU2F2ZSBRdW90ZScsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ1RvIGdlbmVyYXRlIGEgZG9jdW1lbnQsIHNhdmUgdGhlIHF1b3RlIGZpcnN0LCBhbmQgdGhlbiBnZW5lcmF0ZSB0aGUgZG9jdW1lbnQgZnJvbSB0aGUgU2hvcHBpbmcgQ2FydC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ09rJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RG9jZ2VuUmVhZG9ubHlEaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ0RvY3VtZW50IEdlbmVyYXRpb24gaXMgbm90IEF2YWlsYWJsZScsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0l0IGlzIG9ubHkgcG9zc2libGUgdG8gZ2VuZXJhdGUgZG9jdW1lbnRzIGZvciBxdW90ZXMgd2l0aCB0aGUg4oCcRHJhZnTigJ0gc3RhdHVzLiBQbGVhc2UgY3JlYXRlIGEgbmV3IHF1b3RlIHRvIGdlbmVyYXRlIGEgZG9jdW1lbnQuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd0RvY2dlbk91dHNpZGVTaG9wcGluZ0NhcnREaWFsb2coKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyh7XG4gICAgICB0aXRsZTogJ0RvY3VtZW50IEdlbmVyYXRpb24gaXMgbm90IEF2YWlsYWJsZScsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0l0IGlzIG9ubHkgcG9zc2libGUgdG8gZ2VuZXJhdGUgZG9jdW1lbnRzIGZvciBxdW90ZXMgZnJvbSB0aGUgU2hvcHBpbmcgQ2FydC4gVG8gcHJvY2VlZCwgZ28gdG8gdGhlIFNob3BwaW5nIENhcnQuJyxcbiAgICAgIHByaW1hcnlCdXR0b246ICdPaycsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2hvd0RvY2dlblVuc2F2ZWRDaGFuZ2VzRGlhbG9nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnNob3coe1xuICAgICAgdGl0bGU6ICdVbnNhdmVkIENoYW5nZXMnLFxuICAgICAgZGVzY3JpcHRpb246ICdUbyBnZW5lcmF0ZSBhIGRvY3VtZW50LCBzYXZlIHRoZSBxdW90ZSBmaXJzdC4nLFxuICAgICAgcHJpbWFyeUJ1dHRvbjogJ1NhdmUgYW5kIHByb2NlZWQnLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uOiAnQ2FuY2VsJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RGlhbG9nKGRpYWxvZzoga2V5b2YgT21pdDxGbG93RGlhbG9nU2VydmljZSwgJ3Nob3cnIHwgJ2NvbnN0cnVjdG9yJz4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBkaWFsb2dGdW5jdGlvbiA9IHRoaXNbZGlhbG9nXS5iaW5kKHRoaXMpO1xuICAgIHJldHVybiBkaWFsb2dGdW5jdGlvbihkaWFsb2cpO1xuICB9XG59XG4iXX0=
|
@@ -105,6 +105,20 @@ export class FlowRouterService {
|
|
105
105
|
this.router.navigateByUrl(prevUrl);
|
106
106
|
}
|
107
107
|
}
|
108
|
+
navigateTo(path, productId, lineItemId) {
|
109
|
+
if (path === 'shopping-cart') {
|
110
|
+
this.navigateToShoppingCart();
|
111
|
+
}
|
112
|
+
else if (path === 'catalog') {
|
113
|
+
this.navigateToCatalog();
|
114
|
+
}
|
115
|
+
else if (path === 'assets') {
|
116
|
+
this.navigateToAssets();
|
117
|
+
}
|
118
|
+
else if (path === 'product' && productId) {
|
119
|
+
this.navigateToProductConfiguration(productId, lineItemId);
|
120
|
+
}
|
121
|
+
}
|
108
122
|
navigateToProductConfiguration(productId, lineItemId) {
|
109
123
|
this.contextService.update({ properties: { productId, lineItemId } });
|
110
124
|
const routeSnapshot = this.getLastChildRouteSnapshot(this.route.snapshot);
|
@@ -146,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
146
160
|
type: Injectable,
|
147
161
|
args: [{ providedIn: 'root' }]
|
148
162
|
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.ContextService }, { type: i3.IntegrationState }]; } });
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1yb3V0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9zZXJ2aWNlcy9mbG93LXJvdXRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNMLGNBQWMsRUFHZCxnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLGVBQWUsRUFDZixlQUFlLEVBRWYsTUFBTSxHQUNQLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQWMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUFJdEQsTUFBTSxPQUFPLGlCQUFpQjtJQVE1QixZQUNVLE1BQWMsRUFDZCxLQUFxQixFQUNyQixjQUE4QixFQUM5QixnQkFBa0M7UUFIbEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBUnBDLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFxRjNCLHNCQUFpQixHQUFHLENBQUMsS0FBcUIsRUFBa0IsRUFBRTtZQUNuRSxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUM3RSxDQUFDLENBQUM7UUFFSyxxQkFBZ0IsR0FBRyxDQUFDLEtBQXFCLEVBQUUsS0FBYSxFQUFrQixFQUFFO1lBQ2pGLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtnQkFDZCxPQUFPLEtBQUssQ0FBQzthQUNkO1lBRUQsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUN2RixDQUFDLENBQUM7UUFFSyw4QkFBeUIsR0FBRyxDQUFDLEtBQTZCLEVBQTBCLEVBQUU7WUFDM0YsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckYsQ0FBQyxDQUFDO1FBRUsseUJBQW9CLEdBQUcsQ0FBQyxLQUFxQixFQUFzQyxFQUFFO1lBQzFGLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNGLENBQUMsQ0FBQztRQUVLLHVCQUFrQixHQUFHLENBQUMsS0FBNkIsRUFBVSxFQUFFO1lBQ3BFLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUNyRixDQUFDLENBQUM7UUFFSywwQkFBcUIsR0FBRyxDQUFDLEtBQXFCLEVBQXNCLEVBQUU7WUFDM0UsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEYsQ0FBQyxDQUFDO1FBRUssb0JBQWUsR0FBRyxHQUF1QixFQUFFO1lBQ2hELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3JCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDVixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDaEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDaEQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN0QyxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBL0dBLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN6QyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFlBQVksYUFBYSxDQUFDLEVBQ3ZDLFdBQVcsRUFBRSxDQUNkLENBQUM7UUFFRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ2pFLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUN2RCxXQUFXLEVBQUUsQ0FDZCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDL0QsU0FBUyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQzlELFdBQVcsRUFBRSxDQUNkLENBQUM7UUFFRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDckMsTUFBTSxDQUNKLENBQUMsQ0FBQyxFQUFFLENBQ0YsQ0FBQyxZQUFZLGVBQWU7WUFDNUIsQ0FBQyxZQUFZLGdCQUFnQjtZQUM3QixDQUFDLFlBQVksYUFBYTtZQUMxQixDQUFDLFlBQVksZUFBZSxDQUMvQixFQUNELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxlQUFlLENBQUMsRUFDdEMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUNoQixvQkFBb0IsRUFBRSxDQUN2QixDQUFDO1FBRUYsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFdEMsZ0VBQWdFO1lBQ2hFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyRixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxLQUE2QjtRQUNuRCxNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXJDLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFFMUIsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDWCxNQUFNO2FBQ1A7WUFFRCxJQUFLLE1BQU0sQ0FBQyxXQUEyQixFQUFFLEVBQUUsS0FBSyxzQkFBc0IsRUFBRTtnQkFDdEUsT0FBTyxNQUFNLENBQUM7YUFDZjtTQUNGO1FBRUQsT0FBTztJQUNULENBQUM7SUFFTSxlQUFlLENBQUMsS0FBNkI7UUFDbEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLFlBQVk7YUFDaEMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsQixNQUFNLENBQUMsT0FBTyxDQUFDO2FBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWIsT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBd0NNLHFCQUFxQjtRQUMxQixPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVNLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVNLFlBQVk7UUFDakIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUU1RCxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLDhCQUE4QixDQUFDLFNBQWlCLEVBQUUsVUFBbUI7UUFDMUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXRFLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLEVBQUU7WUFDOUMsV0FBVyxFQUFFLEVBQUUsR0FBRyxhQUFhLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRTtTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sc0JBQXNCO1FBQzNCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxRSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXpELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV6RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRU0sWUFBWSxDQUFDLEVBQVU7UUFDNUIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVqRCxNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUUxRCxNQUFNLFdBQVcsR0FBRztZQUNsQixPQUFPLEVBQUUsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQzdDLFNBQVMsRUFBRSxPQUFPLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDakQsT0FBTyxFQUFFLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUM5QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsRUFBRSxHQUFHLGFBQWEsQ0FBQyxXQUFXLEVBQUUsR0FBRyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDakgsQ0FBQzs7OEdBbk1VLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREosTUFBTTsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlLFxuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBFdmVudCxcbiAgTmF2aWdhdGlvbkNhbmNlbCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgTmF2aWdhdGlvbkVycm9yLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIFBhcmFtcyxcbiAgUm91dGVyLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2FsZXNmb3JjZUlkVXRpbHMgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IEZsb3dBY3Rpb24sIEludGVncmF0aW9uU3RhdGUgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY21zJztcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBzaGFyZVJlcGxheSwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWRUxPQ0VfRkxPV19ST09UX1JPVVRFIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IFJvdXRlV2l0aElkIH0gZnJvbSAnLi4vdHlwZXMvcm91dGUudHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEZsb3dSb3V0ZXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByb3V0ZUNoYW5nZSQ6IE9ic2VydmFibGU8RXZlbnQ+O1xuICBwcml2YXRlIGxhc3RDaGlsZFBhcmFtcyQ6IE9ic2VydmFibGU8UGFyYW1zPjtcbiAgcHJpdmF0ZSBsYXN0Q2hpbGRSb3V0ZSQ6IE9ic2VydmFibGU8QWN0aXZhdGVkUm91dGVTbmFwc2hvdD47XG4gIHByaXZhdGUgdXJsSGlzdG9yeTogc3RyaW5nW10gPSBbXTtcblxuICBwdWJsaWMgbG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIGludGVncmF0aW9uU3RhdGU6IEludGVncmF0aW9uU3RhdGUsXG4gICkge1xuICAgIHRoaXMucm91dGVDaGFuZ2UkID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgICBmaWx0ZXIoZSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICBzaGFyZVJlcGxheSgpLFxuICAgICk7XG5cbiAgICB0aGlzLmxhc3RDaGlsZFBhcmFtcyQgPSB0aGlzLndhdGNoTGFzdENoaWxkUGFyYW1zJCh0aGlzLnJvdXRlKS5waXBlKFxuICAgICAgc3RhcnRXaXRoKHRoaXMuZ2V0TGFzdENoaWxkUGFyYW1zKHRoaXMucm91dGUuc25hcHNob3QpKSxcbiAgICAgIHNoYXJlUmVwbGF5KCksXG4gICAgKTtcbiAgICB0aGlzLmxhc3RDaGlsZFJvdXRlJCA9IHRoaXMud2F0Y2hMYXN0Q2hpbGRSb3V0ZSQodGhpcy5yb3V0ZSkucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3QodGhpcy5yb3V0ZS5zbmFwc2hvdCkpLFxuICAgICAgc2hhcmVSZXBsYXkoKSxcbiAgICApO1xuXG4gICAgdGhpcy5sb2FkaW5nJCA9IHRoaXMucm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgZmlsdGVyKFxuICAgICAgICBlID0+XG4gICAgICAgICAgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCB8fFxuICAgICAgICAgIGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsIHx8XG4gICAgICAgICAgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHxcbiAgICAgICAgICBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yLFxuICAgICAgKSxcbiAgICAgIG1hcChlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpLFxuICAgICAgc3RhcnRXaXRoKGZhbHNlKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIHRoaXMucm91dGVDaGFuZ2UkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVybEhpc3RvcnkucHVzaCh0aGlzLnJvdXRlci51cmwpO1xuXG4gICAgICAvLyBDbG9zZSBHdWlkZWQgU2VsbGluZyB3aGVuIHVzZXIgbmF2aWdhdGVzIHRvIGFub3RoZXIgZmxvdyBwYWdlXG4gICAgICB0aGlzLmludGVncmF0aW9uU3RhdGUuZGlzcGF0Y2goRmxvd0FjdGlvbi5DbG9zZUd1aWRlZFNlbGxpbmcoeyBrZWVwU3RhdGU6IHRydWUgfSkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldEZsb3dSb290Um91dGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBwYXRoID0gWy4uLnJvdXRlLnBhdGhGcm9tUm9vdF07XG5cbiAgICB3aGlsZSAocGF0aC5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHBhcmVudCA9IHBhdGgucG9wKCk7XG5cbiAgICAgIGlmICghcGFyZW50KSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBpZiAoKHBhcmVudC5yb3V0ZUNvbmZpZyBhcyBSb3V0ZVdpdGhJZCk/LmlkID09PSBWRUxPQ0VfRkxPV19ST09UX1JPVVRFKSB7XG4gICAgICAgIHJldHVybiBwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcHVibGljIGdldEZsb3dSb290UGF0aChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IHN0cmluZyB7XG4gICAgY29uc3Qgcm9vdFJvdXRlID0gdGhpcy5nZXRGbG93Um9vdFJvdXRlKHJvdXRlKTtcbiAgICBpZiAoIXJvb3RSb3V0ZSkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGggPSByb290Um91dGUucGF0aEZyb21Sb290XG4gICAgICAubWFwKHIgPT4gci51cmxbMF0pXG4gICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAuam9pbignLycpO1xuXG4gICAgcmV0dXJuICcvJyArIHBhdGg7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJvdXRlJCgpOiBPYnNlcnZhYmxlPEFjdGl2YXRlZFJvdXRlU25hcHNob3Q+IHtcbiAgICByZXR1cm4gdGhpcy5sYXN0Q2hpbGRSb3V0ZSQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhcmFtcyQoKTogT2JzZXJ2YWJsZTxQYXJhbXM+IHtcbiAgICByZXR1cm4gdGhpcy5sYXN0Q2hpbGRQYXJhbXMkO1xuICB9XG5cbiAgcHVibGljIGdldExhc3RDaGlsZFJvdXRlID0gKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSk6IEFjdGl2YXRlZFJvdXRlID0+IHtcbiAgICByZXR1cm4gcm91dGUuZmlyc3RDaGlsZCA/IHRoaXMuZ2V0TGFzdENoaWxkUm91dGUocm91dGUuZmlyc3RDaGlsZCkgOiByb3V0ZTtcbiAgfTtcblxuICBwdWJsaWMgZ2V0TnRoQ2hpbGRSb3V0ZSA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGUsIGluZGV4OiBudW1iZXIpOiBBY3RpdmF0ZWRSb3V0ZSA9PiB7XG4gICAgaWYgKGluZGV4IDw9IDApIHtcbiAgICAgIHJldHVybiByb3V0ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm91dGUuZmlyc3RDaGlsZCA/IHRoaXMuZ2V0TnRoQ2hpbGRSb3V0ZShyb3V0ZS5maXJzdENoaWxkLCBpbmRleCAtIDEpIDogcm91dGU7XG4gIH07XG5cbiAgcHVibGljIGdldExhc3RDaGlsZFJvdXRlU25hcHNob3QgPSAocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90ID0+IHtcbiAgICByZXR1cm4gcm91dGUuZmlyc3RDaGlsZCA/IHRoaXMuZ2V0TGFzdENoaWxkUm91dGVTbmFwc2hvdChyb3V0ZS5maXJzdENoaWxkKSA6IHJvdXRlO1xuICB9O1xuXG4gIHB1YmxpYyB3YXRjaExhc3RDaGlsZFJvdXRlJCA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGUpOiBPYnNlcnZhYmxlPEFjdGl2YXRlZFJvdXRlU25hcHNob3Q+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZUNoYW5nZSQucGlwZShtYXAoKCkgPT4gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZVNuYXBzaG90KHJvdXRlLnNuYXBzaG90KSkpO1xuICB9O1xuXG4gIHB1YmxpYyBnZXRMYXN0Q2hpbGRQYXJhbXMgPSAocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBQYXJhbXMgPT4ge1xuICAgIHJldHVybiByb3V0ZS5maXJzdENoaWxkID8gdGhpcy5nZXRMYXN0Q2hpbGRQYXJhbXMocm91dGUuZmlyc3RDaGlsZCkgOiByb3V0ZS5wYXJhbXM7XG4gIH07XG5cbiAgcHVibGljIHdhdGNoTGFzdENoaWxkUGFyYW1zJCA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGUpOiBPYnNlcnZhYmxlPFBhcmFtcz4gPT4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlQ2hhbmdlJC5waXBlKG1hcCgoKSA9PiB0aGlzLmdldExhc3RDaGlsZFBhcmFtcyhyb3V0ZS5zbmFwc2hvdCkpKTtcbiAgfTtcblxuICBwdWJsaWMgZ2V0Rmxvd1N1YnBhdGgkID0gKCk6IE9ic2VydmFibGU8c3RyaW5nPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMucm91dGUkLnBpcGUoXG4gICAgICBtYXAocm91dGUgPT4ge1xuICAgICAgICBjb25zdCB1cmwgPSByb3V0ZS51cmwuam9pbignLycpO1xuICAgICAgICBjb25zdCBmbG93Um9vdFVybCA9IHRoaXMuZ2V0Rmxvd1Jvb3RQYXRoKHJvdXRlKTtcbiAgICAgICAgcmV0dXJuIHVybC5yZXBsYWNlKGZsb3dSb290VXJsLCAnJyk7XG4gICAgICB9KSxcbiAgICApO1xuICB9O1xuXG4gIHB1YmxpYyBpc0NvbmZpZ3VyYXRpb25Sb3V0ZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Rmxvd1N1YnBhdGgkKCkucGlwZShtYXAodXJsID0+IHVybC5zdGFydHNXaXRoKCdwcm9kdWN0JykpKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0NhcnRSb3V0ZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Rmxvd1N1YnBhdGgkKCkucGlwZShtYXAodXJsID0+IHVybC5zdGFydHNXaXRoKCdjYXJ0JykpKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0NhdGFsb2dSb3V0ZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Rmxvd1N1YnBhdGgkKCkucGlwZShtYXAodXJsID0+IHVybC5zdGFydHNXaXRoKCdjYXRhbG9nJykpKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0Fzc2V0c1JvdXRlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRGbG93U3VicGF0aCQoKS5waXBlKG1hcCh1cmwgPT4gdXJsLnN0YXJ0c1dpdGgoJ2Fzc2V0cycpKSk7XG4gIH1cblxuICBwdWJsaWMgbmF2aWdhdGVCYWNrKCk6IHZvaWQge1xuICAgIGNvbnN0IHByZXZVcmwgPSB0aGlzLnVybEhpc3RvcnlbdGhpcy51cmxIaXN0b3J5Lmxlbmd0aCAtIDJdO1xuXG4gICAgaWYgKHByZXZVcmwpIHtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwocHJldlVybCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5hdmlnYXRlVG9Qcm9kdWN0Q29uZmlndXJhdGlvbihwcm9kdWN0SWQ6IHN0cmluZywgbGluZUl0ZW1JZD86IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dFNlcnZpY2UudXBkYXRlKHsgcHJvcGVydGllczogeyBwcm9kdWN0SWQsIGxpbmVJdGVtSWQgfSB9KTtcblxuICAgIGNvbnN0IHJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3QodGhpcy5yb3V0ZS5zbmFwc2hvdCk7XG4gICAgY29uc3QgZmxvd1JvdXRlVXJsID0gdGhpcy5nZXRGbG93Um9vdFBhdGgocm91dGVTbmFwc2hvdCk7XG5cbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZmxvd1JvdXRlVXJsLCAncHJvZHVjdCddLCB7XG4gICAgICBxdWVyeVBhcmFtczogeyAuLi5yb3V0ZVNuYXBzaG90LnF1ZXJ5UGFyYW1zLCBwcm9kdWN0SWQgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuYXZpZ2F0ZVRvU2hvcHBpbmdDYXJ0KCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3QodGhpcy5yb3V0ZS5zbmFwc2hvdCk7XG4gICAgY29uc3QgZmxvd1JvdXRlVXJsID0gdGhpcy5nZXRGbG93Um9vdFBhdGgocm91dGVTbmFwc2hvdCk7XG5cbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZmxvd1JvdXRlVXJsLCAnY2FydCddLCB7IHF1ZXJ5UGFyYW1zOiByb3V0ZVNuYXBzaG90LnF1ZXJ5UGFyYW1zIH0pO1xuICB9XG5cbiAgcHVibGljIG5hdmlnYXRlVG9DYXRhbG9nKCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3QodGhpcy5yb3V0ZS5zbmFwc2hvdCk7XG4gICAgY29uc3QgZmxvd1JvdXRlVXJsID0gdGhpcy5nZXRGbG93Um9vdFBhdGgocm91dGVTbmFwc2hvdCk7XG5cbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZmxvd1JvdXRlVXJsLCAnY2F0YWxvZyddLCB7IHF1ZXJ5UGFyYW1zOiByb3V0ZVNuYXBzaG90LnF1ZXJ5UGFyYW1zIH0pO1xuICB9XG5cbiAgcHVibGljIG5hdmlnYXRlVG9Bc3NldHMoKTogdm9pZCB7XG4gICAgY29uc3Qgcm91dGVTbmFwc2hvdCA9IHRoaXMuZ2V0TGFzdENoaWxkUm91dGVTbmFwc2hvdCh0aGlzLnJvdXRlLnNuYXBzaG90KTtcbiAgICBjb25zdCBmbG93Um91dGVVcmwgPSB0aGlzLmdldEZsb3dSb290UGF0aChyb3V0ZVNuYXBzaG90KTtcblxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtmbG93Um91dGVVcmwsICdhc3NldHMnXSwgeyBxdWVyeVBhcmFtczogcm91dGVTbmFwc2hvdC5xdWVyeVBhcmFtcyB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzd2l0Y2hPYmplY3QoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3QodGhpcy5yb3V0ZS5zbmFwc2hvdCk7XG4gICAgY29uc3Qgcm91dGUgPSB0aGlzLmdldExhc3RDaGlsZFJvdXRlKHRoaXMucm91dGUpO1xuXG4gICAgY29uc3Qgb2JqTmFtZSA9IFNhbGVzZm9yY2VJZFV0aWxzLmdldFNmT2JqZWN0TmFtZUJ5SWQoaWQpO1xuXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB7XG4gICAgICBxdW90ZUlkOiBvYmpOYW1lID09PSAnUXVvdGUnID8gaWQgOiB1bmRlZmluZWQsXG4gICAgICBhY2NvdW50SWQ6IG9iak5hbWUgPT09ICdBY2NvdW50JyA/IGlkIDogdW5kZWZpbmVkLFxuICAgICAgb3JkZXJJZDogb2JqTmFtZSA9PT0gJ09yZGVyJyA/IGlkIDogdW5kZWZpbmVkLFxuICAgIH07XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHsgcmVsYXRpdmVUbzogcm91dGUsIHF1ZXJ5UGFyYW1zOiB7IC4uLnJvdXRlU25hcHNob3QucXVlcnlQYXJhbXMsIC4uLnF1ZXJ5UGFyYW1zIH0gfSk7XG4gIH1cbn1cbiJdfQ==
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1yb3V0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9zZXJ2aWNlcy9mbG93LXJvdXRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNMLGNBQWMsRUFHZCxnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLGVBQWUsRUFDZixlQUFlLEVBRWYsTUFBTSxHQUNQLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQWMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUFJdEQsTUFBTSxPQUFPLGlCQUFpQjtJQVE1QixZQUNVLE1BQWMsRUFDZCxLQUFxQixFQUNyQixjQUE4QixFQUM5QixnQkFBa0M7UUFIbEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBUnBDLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFxRjNCLHNCQUFpQixHQUFHLENBQUMsS0FBcUIsRUFBa0IsRUFBRTtZQUNuRSxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsVUFB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LEVBQUUsQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFFTSxZQUFZLENBQUMsRUFBVTtRQUM1QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWpELE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRTFELE1BQU0sV0FBVyxHQUFHO1lBQ2xCLE9BQU8sRUFBRSxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDN0MsU0FBUyxFQUFFLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNqRCxPQUFPLEVBQUUsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQzlDLENBQUM7UUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxFQUFFLEdBQUcsYUFBYSxDQUFDLFdBQVcsRUFBRSxHQUFHLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqSCxDQUFDOzs4R0EvTVUsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FESixNQUFNOzJGQUNuQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWN0aXZhdGVkUm91dGUsXG4gIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gIEV2ZW50LFxuICBOYXZpZ2F0aW9uQ2FuY2VsLFxuICBOYXZpZ2F0aW9uRW5kLFxuICBOYXZpZ2F0aW9uRXJyb3IsXG4gIE5hdmlnYXRpb25TdGFydCxcbiAgUGFyYW1zLFxuICBSb3V0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTYWxlc2ZvcmNlSWRVdGlscyB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0FjdGlvbiwgSW50ZWdyYXRpb25TdGF0ZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL3Nkay9jbXMnO1xuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFZFTE9DRV9GTE9XX1JPT1RfUk9VVEUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgUm91dGVXaXRoSWQgfSBmcm9tICcuLi90eXBlcy9yb3V0ZS50eXBlcyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRmxvd1JvdXRlclNlcnZpY2Uge1xuICBwcml2YXRlIHJvdXRlQ2hhbmdlJDogT2JzZXJ2YWJsZTxFdmVudD47XG4gIHByaXZhdGUgbGFzdENoaWxkUGFyYW1zJDogT2JzZXJ2YWJsZTxQYXJhbXM+O1xuICBwcml2YXRlIGxhc3RDaGlsZFJvdXRlJDogT2JzZXJ2YWJsZTxBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90PjtcbiAgcHJpdmF0ZSB1cmxIaXN0b3J5OiBzdHJpbmdbXSA9IFtdO1xuXG4gIHB1YmxpYyBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW50ZWdyYXRpb25TdGF0ZTogSW50ZWdyYXRpb25TdGF0ZSxcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZUNoYW5nZSQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICAgIHNoYXJlUmVwbGF5KCksXG4gICAgKTtcblxuICAgIHRoaXMubGFzdENoaWxkUGFyYW1zJCA9IHRoaXMud2F0Y2hMYXN0Q2hpbGRQYXJhbXMkKHRoaXMucm91dGUpLnBpcGUoXG4gICAgICBzdGFydFdpdGgodGhpcy5nZXRMYXN0Q2hpbGRQYXJhbXModGhpcy5yb3V0ZS5zbmFwc2hvdCkpLFxuICAgICAgc2hhcmVSZXBsYXkoKSxcbiAgICApO1xuICAgIHRoaXMubGFzdENoaWxkUm91dGUkID0gdGhpcy53YXRjaExhc3RDaGlsZFJvdXRlJCh0aGlzLnJvdXRlKS5waXBlKFxuICAgICAgc3RhcnRXaXRoKHRoaXMuZ2V0TGFzdENoaWxkUm91dGVTbmFwc2hvdCh0aGlzLnJvdXRlLnNuYXBzaG90KSksXG4gICAgICBzaGFyZVJlcGxheSgpLFxuICAgICk7XG5cbiAgICB0aGlzLmxvYWRpbmckID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgICBmaWx0ZXIoXG4gICAgICAgIGUgPT5cbiAgICAgICAgICBlIGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0IHx8XG4gICAgICAgICAgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25DYW5jZWwgfHxcbiAgICAgICAgICBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCB8fFxuICAgICAgICAgIGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IsXG4gICAgICApLFxuICAgICAgbWFwKGUgPT4gZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCksXG4gICAgICBzdGFydFdpdGgoZmFsc2UpLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICApO1xuXG4gICAgdGhpcy5yb3V0ZUNoYW5nZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXJsSGlzdG9yeS5wdXNoKHRoaXMucm91dGVyLnVybCk7XG5cbiAgICAgIC8vIENsb3NlIEd1aWRlZCBTZWxsaW5nIHdoZW4gdXNlciBuYXZpZ2F0ZXMgdG8gYW5vdGhlciBmbG93IHBhZ2VcbiAgICAgIHRoaXMuaW50ZWdyYXRpb25TdGF0ZS5kaXNwYXRjaChGbG93QWN0aW9uLkNsb3NlR3VpZGVkU2VsbGluZyh7IGtlZXBTdGF0ZTogdHJ1ZSB9KSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Rmxvd1Jvb3RSb3V0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IHBhdGggPSBbLi4ucm91dGUucGF0aEZyb21Sb290XTtcblxuICAgIHdoaWxlIChwYXRoLmxlbmd0aCkge1xuICAgICAgY29uc3QgcGFyZW50ID0gcGF0aC5wb3AoKTtcblxuICAgICAgaWYgKCFwYXJlbnQpIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGlmICgocGFyZW50LnJvdXRlQ29uZmlnIGFzIFJvdXRlV2l0aElkKT8uaWQgPT09IFZFTE9DRV9GTE9XX1JPT1RfUk9VVEUpIHtcbiAgICAgICAgcmV0dXJuIHBhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBwdWJsaWMgZ2V0Rmxvd1Jvb3RQYXRoKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogc3RyaW5nIHtcbiAgICBjb25zdCByb290Um91dGUgPSB0aGlzLmdldEZsb3dSb290Um91dGUocm91dGUpO1xuICAgIGlmICghcm9vdFJvdXRlKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3QgcGF0aCA9IHJvb3RSb3V0ZS5wYXRoRnJvbVJvb3RcbiAgICAgIC5tYXAociA9PiByLnVybFswXSlcbiAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgIC5qb2luKCcvJyk7XG5cbiAgICByZXR1cm4gJy8nICsgcGF0aDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcm91dGUkKCk6IE9ic2VydmFibGU8QWN0aXZhdGVkUm91dGVTbmFwc2hvdD4ge1xuICAgIHJldHVybiB0aGlzLmxhc3RDaGlsZFJvdXRlJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFyYW1zJCgpOiBPYnNlcnZhYmxlPFBhcmFtcz4ge1xuICAgIHJldHVybiB0aGlzLmxhc3RDaGlsZFBhcmFtcyQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGFzdENoaWxkUm91dGUgPSAocm91dGU6IEFjdGl2YXRlZFJvdXRlKTogQWN0aXZhdGVkUm91dGUgPT4ge1xuICAgIHJldHVybiByb3V0ZS5maXJzdENoaWxkID8gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZShyb3V0ZS5maXJzdENoaWxkKSA6IHJvdXRlO1xuICB9O1xuXG4gIHB1YmxpYyBnZXROdGhDaGlsZFJvdXRlID0gKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgaW5kZXg6IG51bWJlcik6IEFjdGl2YXRlZFJvdXRlID0+IHtcbiAgICBpZiAoaW5kZXggPD0gMCkge1xuICAgICAgcmV0dXJuIHJvdXRlO1xuICAgIH1cblxuICAgIHJldHVybiByb3V0ZS5maXJzdENoaWxkID8gdGhpcy5nZXROdGhDaGlsZFJvdXRlKHJvdXRlLmZpcnN0Q2hpbGQsIGluZGV4IC0gMSkgOiByb3V0ZTtcbiAgfTtcblxuICBwdWJsaWMgZ2V0TGFzdENoaWxkUm91dGVTbmFwc2hvdCA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgPT4ge1xuICAgIHJldHVybiByb3V0ZS5maXJzdENoaWxkID8gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZVNuYXBzaG90KHJvdXRlLmZpcnN0Q2hpbGQpIDogcm91dGU7XG4gIH07XG5cbiAgcHVibGljIHdhdGNoTGFzdENoaWxkUm91dGUkID0gKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSk6IE9ic2VydmFibGU8QWN0aXZhdGVkUm91dGVTbmFwc2hvdD4gPT4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlQ2hhbmdlJC5waXBlKG1hcCgoKSA9PiB0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3Qocm91dGUuc25hcHNob3QpKSk7XG4gIH07XG5cbiAgcHVibGljIGdldExhc3RDaGlsZFBhcmFtcyA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IFBhcmFtcyA9PiB7XG4gICAgcmV0dXJuIHJvdXRlLmZpcnN0Q2hpbGQgPyB0aGlzLmdldExhc3RDaGlsZFBhcmFtcyhyb3V0ZS5maXJzdENoaWxkKSA6IHJvdXRlLnBhcmFtcztcbiAgfTtcblxuICBwdWJsaWMgd2F0Y2hMYXN0Q2hpbGRQYXJhbXMkID0gKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSk6IE9ic2VydmFibGU8UGFyYW1zPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVDaGFuZ2UkLnBpcGUobWFwKCgpID0+IHRoaXMuZ2V0TGFzdENoaWxkUGFyYW1zKHJvdXRlLnNuYXBzaG90KSkpO1xuICB9O1xuXG4gIHB1YmxpYyBnZXRGbG93U3VicGF0aCQgPSAoKTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZSQucGlwZShcbiAgICAgIG1hcChyb3V0ZSA9PiB7XG4gICAgICAgIGNvbnN0IHVybCA9IHJvdXRlLnVybC5qb2luKCcvJyk7XG4gICAgICAgIGNvbnN0IGZsb3dSb290VXJsID0gdGhpcy5nZXRGbG93Um9vdFBhdGgocm91dGUpO1xuICAgICAgICByZXR1cm4gdXJsLnJlcGxhY2UoZmxvd1Jvb3RVcmwsICcnKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH07XG5cbiAgcHVibGljIGlzQ29uZmlndXJhdGlvblJvdXRlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRGbG93U3VicGF0aCQoKS5waXBlKG1hcCh1cmwgPT4gdXJsLnN0YXJ0c1dpdGgoJ3Byb2R1Y3QnKSkpO1xuICB9XG5cbiAgcHVibGljIGlzQ2FydFJvdXRlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRGbG93U3VicGF0aCQoKS5waXBlKG1hcCh1cmwgPT4gdXJsLnN0YXJ0c1dpdGgoJ2NhcnQnKSkpO1xuICB9XG5cbiAgcHVibGljIGlzQ2F0YWxvZ1JvdXRlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRGbG93U3VicGF0aCQoKS5waXBlKG1hcCh1cmwgPT4gdXJsLnN0YXJ0c1dpdGgoJ2NhdGFsb2cnKSkpO1xuICB9XG5cbiAgcHVibGljIGlzQXNzZXRzUm91dGUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmdldEZsb3dTdWJwYXRoJCgpLnBpcGUobWFwKHVybCA9PiB1cmwuc3RhcnRzV2l0aCgnYXNzZXRzJykpKTtcbiAgfVxuXG4gIHB1YmxpYyBuYXZpZ2F0ZUJhY2soKTogdm9pZCB7XG4gICAgY29uc3QgcHJldlVybCA9IHRoaXMudXJsSGlzdG9yeVt0aGlzLnVybEhpc3RvcnkubGVuZ3RoIC0gMl07XG5cbiAgICBpZiAocHJldlVybCkge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChwcmV2VXJsKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmF2aWdhdGVUbyhwYXRoOiBzdHJpbmcsIHByb2R1Y3RJZD86IHN0cmluZywgbGluZUl0ZW1JZD86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChwYXRoID09PSAnc2hvcHBpbmctY2FydCcpIHtcbiAgICAgIHRoaXMubmF2aWdhdGVUb1Nob3BwaW5nQ2FydCgpO1xuICAgIH0gZWxzZSBpZiAocGF0aCA9PT0gJ2NhdGFsb2cnKSB7XG4gICAgICB0aGlzLm5hdmlnYXRlVG9DYXRhbG9nKCk7XG4gICAgfSBlbHNlIGlmIChwYXRoID09PSAnYXNzZXRzJykge1xuICAgICAgdGhpcy5uYXZpZ2F0ZVRvQXNzZXRzKCk7XG4gICAgfSBlbHNlIGlmIChwYXRoID09PSAncHJvZHVjdCcgJiYgcHJvZHVjdElkKSB7XG4gICAgICB0aGlzLm5hdmlnYXRlVG9Qcm9kdWN0Q29uZmlndXJhdGlvbihwcm9kdWN0SWQsIGxpbmVJdGVtSWQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuYXZpZ2F0ZVRvUHJvZHVjdENvbmZpZ3VyYXRpb24ocHJvZHVjdElkOiBzdHJpbmcsIGxpbmVJdGVtSWQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnVwZGF0ZSh7IHByb3BlcnRpZXM6IHsgcHJvZHVjdElkLCBsaW5lSXRlbUlkIH0gfSk7XG5cbiAgICBjb25zdCByb3V0ZVNuYXBzaG90ID0gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZVNuYXBzaG90KHRoaXMucm91dGUuc25hcHNob3QpO1xuICAgIGNvbnN0IGZsb3dSb3V0ZVVybCA9IHRoaXMuZ2V0Rmxvd1Jvb3RQYXRoKHJvdXRlU25hcHNob3QpO1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Zsb3dSb3V0ZVVybCwgJ3Byb2R1Y3QnXSwge1xuICAgICAgcXVlcnlQYXJhbXM6IHsgLi4ucm91dGVTbmFwc2hvdC5xdWVyeVBhcmFtcywgcHJvZHVjdElkIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmF2aWdhdGVUb1Nob3BwaW5nQ2FydCgpOiB2b2lkIHtcbiAgICBjb25zdCByb3V0ZVNuYXBzaG90ID0gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZVNuYXBzaG90KHRoaXMucm91dGUuc25hcHNob3QpO1xuICAgIGNvbnN0IGZsb3dSb3V0ZVVybCA9IHRoaXMuZ2V0Rmxvd1Jvb3RQYXRoKHJvdXRlU25hcHNob3QpO1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Zsb3dSb3V0ZVVybCwgJ2NhcnQnXSwgeyBxdWVyeVBhcmFtczogcm91dGVTbmFwc2hvdC5xdWVyeVBhcmFtcyB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuYXZpZ2F0ZVRvQ2F0YWxvZygpOiB2b2lkIHtcbiAgICBjb25zdCByb3V0ZVNuYXBzaG90ID0gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZVNuYXBzaG90KHRoaXMucm91dGUuc25hcHNob3QpO1xuICAgIGNvbnN0IGZsb3dSb3V0ZVVybCA9IHRoaXMuZ2V0Rmxvd1Jvb3RQYXRoKHJvdXRlU25hcHNob3QpO1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Zsb3dSb3V0ZVVybCwgJ2NhdGFsb2cnXSwgeyBxdWVyeVBhcmFtczogcm91dGVTbmFwc2hvdC5xdWVyeVBhcmFtcyB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuYXZpZ2F0ZVRvQXNzZXRzKCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZFJvdXRlU25hcHNob3QodGhpcy5yb3V0ZS5zbmFwc2hvdCk7XG4gICAgY29uc3QgZmxvd1JvdXRlVXJsID0gdGhpcy5nZXRGbG93Um9vdFBhdGgocm91dGVTbmFwc2hvdCk7XG5cbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZmxvd1JvdXRlVXJsLCAnYXNzZXRzJ10sIHsgcXVlcnlQYXJhbXM6IHJvdXRlU25hcHNob3QucXVlcnlQYXJhbXMgfSk7XG4gIH1cblxuICBwdWJsaWMgc3dpdGNoT2JqZWN0KGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCByb3V0ZVNuYXBzaG90ID0gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZVNuYXBzaG90KHRoaXMucm91dGUuc25hcHNob3QpO1xuICAgIGNvbnN0IHJvdXRlID0gdGhpcy5nZXRMYXN0Q2hpbGRSb3V0ZSh0aGlzLnJvdXRlKTtcblxuICAgIGNvbnN0IG9iak5hbWUgPSBTYWxlc2ZvcmNlSWRVdGlscy5nZXRTZk9iamVjdE5hbWVCeUlkKGlkKTtcblxuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0ge1xuICAgICAgcXVvdGVJZDogb2JqTmFtZSA9PT0gJ1F1b3RlJyA/IGlkIDogdW5kZWZpbmVkLFxuICAgICAgYWNjb3VudElkOiBvYmpOYW1lID09PSAnQWNjb3VudCcgPyBpZCA6IHVuZGVmaW5lZCxcbiAgICAgIG9yZGVySWQ6IG9iak5hbWUgPT09ICdPcmRlcicgPyBpZCA6IHVuZGVmaW5lZCxcbiAgICB9O1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtdLCB7IHJlbGF0aXZlVG86IHJvdXRlLCBxdWVyeVBhcmFtczogeyAuLi5yb3V0ZVNuYXBzaG90LnF1ZXJ5UGFyYW1zLCAuLi5xdWVyeVBhcmFtcyB9IH0pO1xuICB9XG59XG4iXX0=
|