@pega/angular-sdk-components 0.23.9 → 0.23.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/_bridge/angular-pconnect.mjs +14 -2
- package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +4 -2
- package/esm2022/lib/_components/field/check-box/check-box.component.mjs +5 -4
- package/esm2022/lib/_components/field/currency/currency.component.mjs +5 -2
- package/esm2022/lib/_components/field/date/date.component.mjs +5 -2
- package/esm2022/lib/_components/field/date-time/date-time.component.mjs +4 -5
- package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +1 -5
- package/esm2022/lib/_components/field/email/email.component.mjs +5 -3
- package/esm2022/lib/_components/field/integer/integer.component.mjs +5 -3
- package/esm2022/lib/_components/field/percentage/percentage.component.mjs +5 -3
- package/esm2022/lib/_components/field/phone/phone.component.mjs +4 -3
- package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +5 -6
- package/esm2022/lib/_components/field/text-area/text-area.component.mjs +5 -7
- package/esm2022/lib/_components/field/text-input/text-input.component.mjs +5 -3
- package/esm2022/lib/_components/field/time/time.component.mjs +5 -4
- package/esm2022/lib/_components/field/url/url.component.mjs +5 -3
- package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +5 -6
- package/esm2022/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.mjs +2 -8
- package/esm2022/lib/_components/infra/assignment-card/assignment-card.component.mjs +3 -3
- package/esm2022/lib/_components/infra/reference/reference.component.mjs +14 -11
- package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +3 -13
- package/esm2022/lib/_components/template/default-form/default-form.component.mjs +39 -8
- package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +2 -2
- package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +7 -6
- package/fesm2022/pega-angular-sdk-components.mjs +117 -86
- package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
- package/lib/_bridge/angular-pconnect.d.ts +2 -0
- package/lib/_components/field/dropdown/dropdown.component.d.ts +0 -1
- package/lib/_components/field/radio-buttons/radio-buttons.component.d.ts +0 -1
- package/lib/_components/field/text-area/text-area.component.d.ts +0 -1
- package/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.d.ts +1 -2
- package/lib/_components/infra/root-container/root-container.component.d.ts +0 -1
- package/lib/_components/template/default-form/default-form.component.d.ts +9 -3
- package/lib/_components/template/simple-table-manual/helpers.d.ts +1 -0
- package/package.json +1 -1
|
@@ -3,11 +3,25 @@ import { CommonModule } from '@angular/common';
|
|
|
3
3
|
import { ReferenceComponent } from '../../infra/reference/reference.component';
|
|
4
4
|
import { ComponentMapperComponent } from '../../../_bridge/component-mapper/component-mapper.component';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../../
|
|
7
|
-
import * as i2 from "
|
|
6
|
+
import * as i1 from "../../../_bridge/angular-pconnect";
|
|
7
|
+
import * as i2 from "../../../_helpers/template-utils";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
function areViewsChanged(oldViews, newViews) {
|
|
10
|
+
if (oldViews.length !== newViews.length) {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
return !oldViews.every((oldView, index) => {
|
|
14
|
+
const newView = newViews[index];
|
|
15
|
+
return oldView.getPConnect().viewName === newView.getPConnect().viewName;
|
|
16
|
+
});
|
|
17
|
+
}
|
|
8
18
|
export class DefaultFormComponent {
|
|
9
|
-
constructor(templateUtils) {
|
|
19
|
+
constructor(angularPConnect, templateUtils) {
|
|
20
|
+
this.angularPConnect = angularPConnect;
|
|
10
21
|
this.templateUtils = templateUtils;
|
|
22
|
+
// Used with AngularPConnect
|
|
23
|
+
this.angularPConnectData = {};
|
|
24
|
+
this.arChildren$ = [];
|
|
11
25
|
this.NO_HEADER_TEMPLATES = [
|
|
12
26
|
'SubTabs',
|
|
13
27
|
'SimpleTable',
|
|
@@ -20,6 +34,19 @@ export class DefaultFormComponent {
|
|
|
20
34
|
];
|
|
21
35
|
}
|
|
22
36
|
ngOnInit() {
|
|
37
|
+
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
38
|
+
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
39
|
+
this.updateSelf();
|
|
40
|
+
}
|
|
41
|
+
ngOnDestroy() {
|
|
42
|
+
if (this.angularPConnectData.unsubscribeFn) {
|
|
43
|
+
this.angularPConnectData.unsubscribeFn();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
onStateChange() {
|
|
47
|
+
this.updateSelf();
|
|
48
|
+
}
|
|
49
|
+
updateSelf() {
|
|
23
50
|
const configProps = this.pConn$.getConfigProps();
|
|
24
51
|
this.template = configProps?.template;
|
|
25
52
|
const propToUse = { ...this.pConn$.getInheritedProps() };
|
|
@@ -45,17 +72,21 @@ export class DefaultFormComponent {
|
|
|
45
72
|
// repoint children before getting templateArray
|
|
46
73
|
// Children may contain 'reference' component, so we need to
|
|
47
74
|
// normalize them
|
|
48
|
-
|
|
75
|
+
const children = ReferenceComponent.normalizePConnArray(kids[0].getPConnect().getChildren());
|
|
76
|
+
const visibleChildren = children?.filter(child => child !== undefined) || [];
|
|
77
|
+
if (areViewsChanged(this.arChildren$, visibleChildren)) {
|
|
78
|
+
this.arChildren$ = visibleChildren;
|
|
79
|
+
}
|
|
49
80
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DefaultFormComponent, deps: [{ token: i1.TemplateUtils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
51
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DefaultFormComponent, isStandalone: true, selector: "app-default-form", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<!-- When adding a component here, add the same component in 'region' template as well -->\n<div *ngIf=\"!NO_HEADER_TEMPLATES.includes(template) && showLabel\">\n <div class=\"template-title-container\">{{ label }}</div>\n</div>\n<div *ngIf=\"instructions\" class=\"psdk-default-form-instruction-text\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n</div>\n<div [className]=\"divClass$\">\n <div *ngFor=\"let kid of arChildren$\" [ngClass]=\"{ 'grid-column': kid.getPConnect().getComponentName() === 'View' }\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"DefaultForm wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-default-form-one-column{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));column-gap:1rem}.psdk-default-form-two-column{display:grid;grid-template-columns:repeat(2,1fr);column-gap:1rem}.psdk-default-form-three-column{display:grid;grid-template-columns:repeat(3,1fr);column-gap:1rem}.psdk-default-form-three-column .grid-column{grid-column:1/span 3}.psdk-default-form-two-column .grid-column{grid-column:1/span 2}.psdk-default-form-one-column .grid-column{grid-column:1}.template-title-container{font-size:.9375rem;font-weight:600;margin:10px 0}.psdk-default-form-instruction-text{padding-top:.625rem;padding-bottom:.625rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return
|
|
81
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DefaultFormComponent, deps: [{ token: i1.AngularPConnectService }, { token: i2.TemplateUtils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
82
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DefaultFormComponent, isStandalone: true, selector: "app-default-form", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<!-- When adding a component here, add the same component in 'region' template as well -->\n<div *ngIf=\"!NO_HEADER_TEMPLATES.includes(template) && showLabel\">\n <div class=\"template-title-container\">{{ label }}</div>\n</div>\n<div *ngIf=\"instructions\" class=\"psdk-default-form-instruction-text\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n</div>\n<div [className]=\"divClass$\">\n <div *ngFor=\"let kid of arChildren$\" [ngClass]=\"{ 'grid-column': kid.getPConnect().getComponentName() === 'View' }\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"DefaultForm wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-default-form-one-column{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));column-gap:1rem}.psdk-default-form-two-column{display:grid;grid-template-columns:repeat(2,1fr);column-gap:1rem}.psdk-default-form-three-column{display:grid;grid-template-columns:repeat(3,1fr);column-gap:1rem}.psdk-default-form-three-column .grid-column{grid-column:1/span 3}.psdk-default-form-two-column .grid-column{grid-column:1/span 2}.psdk-default-form-one-column .grid-column{grid-column:1}.template-title-container{font-size:.9375rem;font-weight:600;margin:10px 0}.psdk-default-form-instruction-text{padding-top:.625rem;padding-bottom:.625rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
52
83
|
}
|
|
53
84
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DefaultFormComponent, decorators: [{
|
|
54
85
|
type: Component,
|
|
55
86
|
args: [{ selector: 'app-default-form', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<!-- When adding a component here, add the same component in 'region' template as well -->\n<div *ngIf=\"!NO_HEADER_TEMPLATES.includes(template) && showLabel\">\n <div class=\"template-title-container\">{{ label }}</div>\n</div>\n<div *ngIf=\"instructions\" class=\"psdk-default-form-instruction-text\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n</div>\n<div [className]=\"divClass$\">\n <div *ngFor=\"let kid of arChildren$\" [ngClass]=\"{ 'grid-column': kid.getPConnect().getComponentName() === 'View' }\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"DefaultForm wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-default-form-one-column{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));column-gap:1rem}.psdk-default-form-two-column{display:grid;grid-template-columns:repeat(2,1fr);column-gap:1rem}.psdk-default-form-three-column{display:grid;grid-template-columns:repeat(3,1fr);column-gap:1rem}.psdk-default-form-three-column .grid-column{grid-column:1/span 3}.psdk-default-form-two-column .grid-column{grid-column:1/span 2}.psdk-default-form-one-column .grid-column{grid-column:1}.template-title-container{font-size:.9375rem;font-weight:600;margin:10px 0}.psdk-default-form-instruction-text{padding-top:.625rem;padding-bottom:.625rem}\n"] }]
|
|
56
|
-
}], ctorParameters: function () { return [{ type: i1.TemplateUtils }]; }, propDecorators: { pConn$: [{
|
|
87
|
+
}], ctorParameters: function () { return [{ type: i1.AngularPConnectService }, { type: i2.TemplateUtils }]; }, propDecorators: { pConn$: [{
|
|
57
88
|
type: Input
|
|
58
89
|
}], formGroup$: [{
|
|
59
90
|
type: Input
|
|
60
91
|
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZWZhdWx0LWZvcm0vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZWZhdWx0LWZvcm0vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOERBQThELENBQUM7Ozs7QUFpQnhHLE1BQU0sT0FBTyxvQkFBb0I7SUFzQi9CLFlBQW9CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBWGhELHdCQUFtQixHQUFHO1lBQ3BCLFNBQVM7WUFDVCxhQUFhO1lBQ2IsU0FBUztZQUNULGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLG1CQUFtQjtZQUNuQixjQUFjO1NBQ2YsQ0FBQztJQUVpRCxDQUFDO0lBRXBELFFBQVE7UUFDTixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBc0IsQ0FBQztRQUNyRSxJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsRUFBRSxRQUFRLENBQUM7UUFDdEMsTUFBTSxTQUFTLEdBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1FBQzlELElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxFQUFFLFNBQVMsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsRUFBRSxLQUFLLENBQUM7UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQVcsQ0FBQztRQUNoRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRS9GLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUNoRSxRQUFRLE9BQU8sRUFBRTtZQUNmLEtBQUssR0FBRztnQkFDTixJQUFJLENBQUMsU0FBUyxHQUFHLDhCQUE4QixDQUFDO2dCQUNoRCxNQUFNO1lBQ1IsS0FBSyxHQUFHO2dCQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsOEJBQThCLENBQUM7Z0JBQ2hELE1BQU07WUFDUixLQUFLLEdBQUc7Z0JBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxnQ0FBZ0MsQ0FBQztnQkFDbEQsTUFBTTtZQUNSO2dCQUNFLElBQUksQ0FBQyxTQUFTLEdBQUcsOEJBQThCLENBQUM7Z0JBQ2hELE1BQU07U0FDVDtRQUVELGdEQUFnRDtRQUNoRCw0REFBNEQ7UUFDNUQsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQzsrR0FyRFUsb0JBQW9CO21HQUFwQixvQkFBb0Isb0lDckJqQyw0M0JBbUJBLDR0QkRBWSxZQUFZLDBmQUFtQix3QkFBd0I7OzRGQUV0RCxvQkFBb0I7a0JBUGhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQztvR0FHMUQsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGVtcGxhdGVVdGlscyB9IGZyb20gJy4uLy4uLy4uL19oZWxwZXJzL3RlbXBsYXRlLXV0aWxzJztcblxuaW50ZXJmYWNlIERlZmF1bHRGb3JtUHJvcHMge1xuICAvLyBJZiBhbnksIGVudGVyIGFkZGl0aW9uYWwgcHJvcHMgdGhhdCBvbmx5IGV4aXN0IG9uIHRoaXMgY29tcG9uZW50XG4gIE51bUNvbHM6IHN0cmluZztcbiAgdGVtcGxhdGU6IHN0cmluZztcbiAgaW5zdHJ1Y3Rpb25zOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1kZWZhdWx0LWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIGZvcndhcmRSZWYoKCkgPT4gQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50KV1cbn0pXG5leHBvcnQgY2xhc3MgRGVmYXVsdEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwQ29ubiQ6IHR5cGVvZiBQQ29ubmVjdDtcbiAgQElucHV0KCkgZm9ybUdyb3VwJDogRm9ybUdyb3VwO1xuXG4gIGFyQ2hpbGRyZW4kOiBhbnlbXTtcbiAgZGl2Q2xhc3MkOiBzdHJpbmc7XG4gIHRlbXBsYXRlOiBhbnk7XG4gIHNob3dMYWJlbDogYW55O1xuICBsYWJlbDogYW55O1xuICBpbnN0cnVjdGlvbnM6IHN0cmluZztcblxuICBOT19IRUFERVJfVEVNUExBVEVTID0gW1xuICAgICdTdWJUYWJzJyxcbiAgICAnU2ltcGxlVGFibGUnLFxuICAgICdEZXRhaWxzJyxcbiAgICAnRGV0YWlsc1R3b0NvbHVtbicsXG4gICAgJ0RldGFpbHNUaHJlZUNvbHVtbicsXG4gICAgJ05hcnJvd1dpZGVEZXRhaWxzJyxcbiAgICAnV2lkZU5hcnJvd0RldGFpbHMnLFxuICAgICdDb25maXJtYXRpb24nXG4gIF07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0ZW1wbGF0ZVV0aWxzOiBUZW1wbGF0ZVV0aWxzKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZ1Byb3BzID0gdGhpcy5wQ29ubiQuZ2V0Q29uZmlnUHJvcHMoKSBhcyBEZWZhdWx0Rm9ybVByb3BzO1xuICAgIHRoaXMudGVtcGxhdGUgPSBjb25maWdQcm9wcz8udGVtcGxhdGU7XG4gICAgY29uc3QgcHJvcFRvVXNlOiBhbnkgPSB7IC4uLnRoaXMucENvbm4kLmdldEluaGVyaXRlZFByb3BzKCkgfTtcbiAgICB0aGlzLnNob3dMYWJlbCA9IHByb3BUb1VzZT8uc2hvd0xhYmVsO1xuICAgIHRoaXMubGFiZWwgPSBwcm9wVG9Vc2U/LmxhYmVsO1xuICAgIGNvbnN0IGtpZHMgPSB0aGlzLnBDb25uJC5nZXRDaGlsZHJlbigpIGFzIGFueVtdO1xuICAgIHRoaXMuaW5zdHJ1Y3Rpb25zID0gdGhpcy50ZW1wbGF0ZVV0aWxzLmdldEluc3RydWN0aW9ucyh0aGlzLnBDb25uJCwgY29uZmlnUHJvcHM/Lmluc3RydWN0aW9ucyk7XG5cbiAgICBjb25zdCBudW1Db2xzID0gY29uZmlnUHJvcHMuTnVtQ29scyA/IGNvbmZpZ1Byb3BzLk51bUNvbHMgOiAnMSc7XG4gICAgc3dpdGNoIChudW1Db2xzKSB7XG4gICAgICBjYXNlICcxJzpcbiAgICAgICAgdGhpcy5kaXZDbGFzcyQgPSAncHNkay1kZWZhdWx0LWZvcm0tb25lLWNvbHVtbic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnMic6XG4gICAgICAgIHRoaXMuZGl2Q2xhc3MkID0gJ3BzZGstZGVmYXVsdC1mb3JtLXR3by1jb2x1bW4nO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJzMnOlxuICAgICAgICB0aGlzLmRpdkNsYXNzJCA9ICdwc2RrLWRlZmF1bHQtZm9ybS10aHJlZS1jb2x1bW4nO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRoaXMuZGl2Q2xhc3MkID0gJ3BzZGstZGVmYXVsdC1mb3JtLW9uZS1jb2x1bW4nO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICAvLyByZXBvaW50IGNoaWxkcmVuIGJlZm9yZSBnZXR0aW5nIHRlbXBsYXRlQXJyYXlcbiAgICAvLyBDaGlsZHJlbiBtYXkgY29udGFpbiAncmVmZXJlbmNlJyBjb21wb25lbnQsIHNvIHdlIG5lZWQgdG9cbiAgICAvLyAgbm9ybWFsaXplIHRoZW1cbiAgICB0aGlzLmFyQ2hpbGRyZW4kID0gUmVmZXJlbmNlQ29tcG9uZW50Lm5vcm1hbGl6ZVBDb25uQXJyYXkoa2lkc1swXS5nZXRQQ29ubmVjdCgpLmdldENoaWxkcmVuKCkpO1xuICB9XG59XG4iLCI8IS0tIFdoZW4gYWRkaW5nIGEgY29tcG9uZW50IGhlcmUsIGFkZCB0aGUgc2FtZSBjb21wb25lbnQgaW4gJ3JlZ2lvbicgdGVtcGxhdGUgYXMgd2VsbCAtLT5cbjxkaXYgKm5nSWY9XCIhTk9fSEVBREVSX1RFTVBMQVRFUy5pbmNsdWRlcyh0ZW1wbGF0ZSkgJiYgc2hvd0xhYmVsXCI+XG4gIDxkaXYgY2xhc3M9XCJ0ZW1wbGF0ZS10aXRsZS1jb250YWluZXJcIj57eyBsYWJlbCB9fTwvZGl2PlxuPC9kaXY+XG48ZGl2ICpuZ0lmPVwiaW5zdHJ1Y3Rpb25zXCIgY2xhc3M9XCJwc2RrLWRlZmF1bHQtZm9ybS1pbnN0cnVjdGlvbi10ZXh0XCI+XG4gIDxkaXYga2V5PVwiaW5zdHJ1Y3Rpb25zXCIgaWQ9XCJpbnN0cnVjdGlvbi10ZXh0XCIgW2lubmVySFRNTF09XCJpbnN0cnVjdGlvbnNcIj48L2Rpdj5cbjwvZGl2PlxuPGRpdiBbY2xhc3NOYW1lXT1cImRpdkNsYXNzJFwiPlxuICA8ZGl2ICpuZ0Zvcj1cImxldCBraWQgb2YgYXJDaGlsZHJlbiRcIiBbbmdDbGFzc109XCJ7ICdncmlkLWNvbHVtbic6IGtpZC5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKSA9PT0gJ1ZpZXcnIH1cIj5cbiAgICA8Y29tcG9uZW50LW1hcHBlclxuICAgICAgW25hbWVdPVwia2lkLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpXCJcbiAgICAgIFtwcm9wc109XCJ7XG4gICAgICAgIHBDb25uJDoga2lkLmdldFBDb25uZWN0KCksXG4gICAgICAgIGZvcm1Hcm91cCQ6IGZvcm1Hcm91cCRcbiAgICAgIH1cIlxuICAgICAgZXJyb3JNc2c9XCJEZWZhdWx0Rm9ybSB3YW50cyBjb21wb25lbnQgbm90IHlldCBhdmFpbGFibGU6IHt7IGtpZC5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKSB9fVwiXG4gICAgPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZWZhdWx0LWZvcm0vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZWZhdWx0LWZvcm0vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFL0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOERBQThELENBQUM7Ozs7O0FBR3hHLFNBQVMsZUFBZSxDQUFDLFFBQWUsRUFBRSxRQUFlO0lBQ3ZELElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsTUFBTSxFQUFFO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUN4QyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsT0FBTyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxLQUFLLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7SUFDM0UsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBZ0JELE1BQU0sT0FBTyxvQkFB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QSw0dEJEWVksWUFBWSwwZkFBbUIsd0JBQXdCOzs0RkFFdEQsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7eUlBRzFELE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBmb3J3YXJkUmVmLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbmd1bGFyUENvbm5lY3REYXRhLCBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX2JyaWRnZS9hbmd1bGFyLXBjb25uZWN0JztcbmltcG9ydCB7IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvY29tcG9uZW50LW1hcHBlci9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZW1wbGF0ZVV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vX2hlbHBlcnMvdGVtcGxhdGUtdXRpbHMnO1xuXG5mdW5jdGlvbiBhcmVWaWV3c0NoYW5nZWQob2xkVmlld3M6IGFueVtdLCBuZXdWaWV3czogYW55W10pOiBib29sZWFuIHtcbiAgaWYgKG9sZFZpZXdzLmxlbmd0aCAhPT0gbmV3Vmlld3MubGVuZ3RoKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICByZXR1cm4gIW9sZFZpZXdzLmV2ZXJ5KChvbGRWaWV3LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IG5ld1ZpZXcgPSBuZXdWaWV3c1tpbmRleF07XG4gICAgcmV0dXJuIG9sZFZpZXcuZ2V0UENvbm5lY3QoKS52aWV3TmFtZSA9PT0gbmV3Vmlldy5nZXRQQ29ubmVjdCgpLnZpZXdOYW1lO1xuICB9KTtcbn1cblxuaW50ZXJmYWNlIERlZmF1bHRGb3JtUHJvcHMge1xuICAvLyBJZiBhbnksIGVudGVyIGFkZGl0aW9uYWwgcHJvcHMgdGhhdCBvbmx5IGV4aXN0IG9uIHRoaXMgY29tcG9uZW50XG4gIE51bUNvbHM6IHN0cmluZztcbiAgdGVtcGxhdGU6IHN0cmluZztcbiAgaW5zdHJ1Y3Rpb25zOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1kZWZhdWx0LWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGVmYXVsdC1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIGZvcndhcmRSZWYoKCkgPT4gQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50KV1cbn0pXG5leHBvcnQgY2xhc3MgRGVmYXVsdEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHBDb25uJDogdHlwZW9mIFBDb25uZWN0O1xuICBASW5wdXQoKSBmb3JtR3JvdXAkOiBGb3JtR3JvdXA7XG5cbiAgLy8gVXNlZCB3aXRoIEFuZ3VsYXJQQ29ubmVjdFxuICBhbmd1bGFyUENvbm5lY3REYXRhOiBBbmd1bGFyUENvbm5lY3REYXRhID0ge307XG5cbiAgYXJDaGlsZHJlbiQ6IGFueVtdID0gW107XG4gIGRpdkNsYXNzJDogc3RyaW5nO1xuICB0ZW1wbGF0ZTogYW55O1xuICBzaG93TGFiZWw6IGFueTtcbiAgbGFiZWw6IGFueTtcbiAgaW5zdHJ1Y3Rpb25zOiBzdHJpbmc7XG5cbiAgTk9fSEVBREVSX1RFTVBMQVRFUyA9IFtcbiAgICAnU3ViVGFicycsXG4gICAgJ1NpbXBsZVRhYmxlJyxcbiAgICAnRGV0YWlscycsXG4gICAgJ0RldGFpbHNUd29Db2x1bW4nLFxuICAgICdEZXRhaWxzVGhyZWVDb2x1bW4nLFxuICAgICdOYXJyb3dXaWRlRGV0YWlscycsXG4gICAgJ1dpZGVOYXJyb3dEZXRhaWxzJyxcbiAgICAnQ29uZmlybWF0aW9uJ1xuICBdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYW5ndWxhclBDb25uZWN0OiBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGVtcGxhdGVVdGlsczogVGVtcGxhdGVVdGlsc1xuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gRmlyc3QgdGhpbmcgaW4gaW5pdGlhbGl6YXRpb24gaXMgcmVnaXN0ZXJpbmcgYW5kIHN1YnNjcmliaW5nIHRvIHRoZSBBbmd1bGFyUENvbm5lY3Qgc2VydmljZVxuICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YSA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KHRoaXMsIHRoaXMub25TdGF0ZUNoYW5nZSk7XG5cbiAgICB0aGlzLnVwZGF0ZVNlbGYoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEudW5zdWJzY3JpYmVGbikge1xuICAgICAgdGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4oKTtcbiAgICB9XG4gIH1cblxuICBvblN0YXRlQ2hhbmdlKCkge1xuICAgIHRoaXMudXBkYXRlU2VsZigpO1xuICB9XG5cbiAgdXBkYXRlU2VsZigpIHtcbiAgICBjb25zdCBjb25maWdQcm9wcyA9IHRoaXMucENvbm4kLmdldENvbmZpZ1Byb3BzKCkgYXMgRGVmYXVsdEZvcm1Qcm9wcztcbiAgICB0aGlzLnRlbXBsYXRlID0gY29uZmlnUHJvcHM/LnRlbXBsYXRlO1xuICAgIGNvbnN0IHByb3BUb1VzZTogYW55ID0geyAuLi50aGlzLnBDb25uJC5nZXRJbmhlcml0ZWRQcm9wcygpIH07XG4gICAgdGhpcy5zaG93TGFiZWwgPSBwcm9wVG9Vc2U/LnNob3dMYWJlbDtcbiAgICB0aGlzLmxhYmVsID0gcHJvcFRvVXNlPy5sYWJlbDtcbiAgICBjb25zdCBraWRzID0gdGhpcy5wQ29ubiQuZ2V0Q2hpbGRyZW4oKSBhcyBhbnlbXTtcbiAgICB0aGlzLmluc3RydWN0aW9ucyA9IHRoaXMudGVtcGxhdGVVdGlscy5nZXRJbnN0cnVjdGlvbnModGhpcy5wQ29ubiQsIGNvbmZpZ1Byb3BzPy5pbnN0cnVjdGlvbnMpO1xuXG4gICAgY29uc3QgbnVtQ29scyA9IGNvbmZpZ1Byb3BzLk51bUNvbHMgPyBjb25maWdQcm9wcy5OdW1Db2xzIDogJzEnO1xuICAgIHN3aXRjaCAobnVtQ29scykge1xuICAgICAgY2FzZSAnMSc6XG4gICAgICAgIHRoaXMuZGl2Q2xhc3MkID0gJ3BzZGstZGVmYXVsdC1mb3JtLW9uZS1jb2x1bW4nO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJzInOlxuICAgICAgICB0aGlzLmRpdkNsYXNzJCA9ICdwc2RrLWRlZmF1bHQtZm9ybS10d28tY29sdW1uJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICczJzpcbiAgICAgICAgdGhpcy5kaXZDbGFzcyQgPSAncHNkay1kZWZhdWx0LWZvcm0tdGhyZWUtY29sdW1uJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmRpdkNsYXNzJCA9ICdwc2RrLWRlZmF1bHQtZm9ybS1vbmUtY29sdW1uJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgLy8gcmVwb2ludCBjaGlsZHJlbiBiZWZvcmUgZ2V0dGluZyB0ZW1wbGF0ZUFycmF5XG4gICAgLy8gQ2hpbGRyZW4gbWF5IGNvbnRhaW4gJ3JlZmVyZW5jZScgY29tcG9uZW50LCBzbyB3ZSBuZWVkIHRvXG4gICAgLy8gIG5vcm1hbGl6ZSB0aGVtXG4gICAgY29uc3QgY2hpbGRyZW4gPSBSZWZlcmVuY2VDb21wb25lbnQubm9ybWFsaXplUENvbm5BcnJheShraWRzWzBdLmdldFBDb25uZWN0KCkuZ2V0Q2hpbGRyZW4oKSk7XG5cbiAgICBjb25zdCB2aXNpYmxlQ2hpbGRyZW4gPSBjaGlsZHJlbj8uZmlsdGVyKGNoaWxkID0+IGNoaWxkICE9PSB1bmRlZmluZWQpIHx8IFtdO1xuXG4gICAgaWYgKGFyZVZpZXdzQ2hhbmdlZCh0aGlzLmFyQ2hpbGRyZW4kLCB2aXNpYmxlQ2hpbGRyZW4pKSB7XG4gICAgICB0aGlzLmFyQ2hpbGRyZW4kID0gdmlzaWJsZUNoaWxkcmVuO1xuICAgIH1cbiAgfVxufVxuIiwiPCEtLSBXaGVuIGFkZGluZyBhIGNvbXBvbmVudCBoZXJlLCBhZGQgdGhlIHNhbWUgY29tcG9uZW50IGluICdyZWdpb24nIHRlbXBsYXRlIGFzIHdlbGwgLS0+XG48ZGl2ICpuZ0lmPVwiIU5PX0hFQURFUl9URU1QTEFURVMuaW5jbHVkZXModGVtcGxhdGUpICYmIHNob3dMYWJlbFwiPlxuICA8ZGl2IGNsYXNzPVwidGVtcGxhdGUtdGl0bGUtY29udGFpbmVyXCI+e3sgbGFiZWwgfX08L2Rpdj5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cImluc3RydWN0aW9uc1wiIGNsYXNzPVwicHNkay1kZWZhdWx0LWZvcm0taW5zdHJ1Y3Rpb24tdGV4dFwiPlxuICA8ZGl2IGtleT1cImluc3RydWN0aW9uc1wiIGlkPVwiaW5zdHJ1Y3Rpb24tdGV4dFwiIFtpbm5lckhUTUxdPVwiaW5zdHJ1Y3Rpb25zXCI+PC9kaXY+XG48L2Rpdj5cbjxkaXYgW2NsYXNzTmFtZV09XCJkaXZDbGFzcyRcIj5cbiAgPGRpdiAqbmdGb3I9XCJsZXQga2lkIG9mIGFyQ2hpbGRyZW4kXCIgW25nQ2xhc3NdPVwieyAnZ3JpZC1jb2x1bW4nOiBraWQuZ2V0UENvbm5lY3QoKS5nZXRDb21wb25lbnROYW1lKCkgPT09ICdWaWV3JyB9XCI+XG4gICAgPGNvbXBvbmVudC1tYXBwZXJcbiAgICAgIFtuYW1lXT1cImtpZC5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKVwiXG4gICAgICBbcHJvcHNdPVwie1xuICAgICAgICBwQ29ubiQ6IGtpZC5nZXRQQ29ubmVjdCgpLFxuICAgICAgICBmb3JtR3JvdXAkOiBmb3JtR3JvdXAkXG4gICAgICB9XCJcbiAgICAgIGVycm9yTXNnPVwiRGVmYXVsdEZvcm0gd2FudHMgY29tcG9uZW50IG5vdCB5ZXQgYXZhaWxhYmxlOiB7eyBraWQuZ2V0UENvbm5lY3QoKS5nZXRDb21wb25lbnROYW1lKCkgfX1cIlxuICAgID48L2NvbXBvbmVudC1tYXBwZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs
CHANGED
|
@@ -81,7 +81,7 @@ export class FieldGroupTemplateComponent {
|
|
|
81
81
|
this.pConn$.setInheritedProp('displayMode', 'LABELS_LEFT');
|
|
82
82
|
}
|
|
83
83
|
this.referenceList = this.configProps$.referenceList;
|
|
84
|
-
if (this.prevRefLength != this.referenceList
|
|
84
|
+
if (this.prevRefLength != this.referenceList?.length) {
|
|
85
85
|
// eslint-disable-next-line sonarjs/no-collapsible-if
|
|
86
86
|
if (!this.readonlyMode) {
|
|
87
87
|
if (this.referenceList?.length === 0 && this.allowAddEdit !== false) {
|
|
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
131
131
|
}], formGroup$: [{
|
|
132
132
|
type: Input
|
|
133
133
|
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZ3JvdXAtdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL3RlbXBsYXRlL2ZpZWxkLWdyb3VwLXRlbXBsYXRlL2ZpZWxkLWdyb3VwLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9maWVsZC1ncm91cC10ZW1wbGF0ZS9maWVsZC1ncm91cC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxVQUFVLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRWxGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7QUF1QnhHLE1BQU0sT0FBTywyQkFBMkI7SUFvQnRDLFlBQ1UsZUFBdUMsRUFDdkMsS0FBWTtRQURaLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtRQUN2QyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBakJ0Qix3QkFBbUIsR0FBd0IsRUFBRSxDQUFDO1FBRTlDLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFzRzVCLG9CQUFlLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDbkMsT0FBTyxHQUFHLE9BQU8sSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7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O0lBQ0gsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQUs7UUFDeEIsSUFBSSxLQUFLLENBQUMsZUFBZSxFQUFFLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDckU7YUFBTTtZQUNMLDZFQUE2RTtZQUM3RSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNqRDtJQUNILENBQUM7K0dBeElVLDJCQUEyQjttR0FBM0IsMkJBQTJCLCtMQzlCeEMsbStDQWlDQSwwTERMWSxZQUFZLG9YQUFFLGVBQWUsOGhCQUFtQix3QkFBd0I7OzRGQUV2RSwyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBR3hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7aUlBRzNFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIGZvcndhcmRSZWYsIE9uRGVzdHJveSwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IEFuZ3VsYXJQQ29ubmVjdERhdGEsIEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QnO1xuaW1wb3J0IHsgYnVpbGRWaWV3LCBnZXRSZWZlcmVuY2VMaXN0IH0gZnJvbSAnLi4vLi4vLi4vX2hlbHBlcnMvZmllbGQtZ3JvdXAtdXRpbHMnO1xuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9faGVscGVycy91dGlscyc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG5pbnRlcmZhY2UgRmllbGRHcm91cFRlbXBsYXRlUHJvcHMge1xuICAvLyBJZiBhbnksIGVudGVyIGFkZGl0aW9uYWwgcHJvcHMgdGhhdCBvbmx5IGV4aXN0IG9uIHRoaXMgY29tcG9uZW50XG4gIGxhYmVsPzogc3RyaW5nO1xuICBzaG93TGFiZWw/OiBib29sZWFuO1xuICByZWZlcmVuY2VMaXN0PzogYW55W107XG4gIGNvbnRleHRDbGFzczogc3RyaW5nO1xuICByZW5kZXJNb2RlPzogc3RyaW5nO1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICBsb29rRm9yQ2hpbGRJbkNvbmZpZz86IGJvb2xlYW47XG4gIGRpc3BsYXlNb2RlPzogc3RyaW5nO1xuICBmaWVsZEhlYWRlcj86IHN0cmluZztcbiAgYWxsb3dUYWJsZUVkaXQ6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWVsZC1ncm91cC10ZW1wbGF0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC1ncm91cC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLWdyb3VwLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgZm9yd2FyZFJlZigoKSA9PiBDb21wb25lbnRNYXBwZXJDb21wb25lbnQpXVxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZEdyb3VwVGVtcGxhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgY29uZmlnUHJvcHMkOiBGaWVsZEdyb3VwVGVtcGxhdGVQcm9wcztcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCQ6IEZvcm1Hcm91cDtcblxuICBhbmd1bGFyUENvbm5lY3REYXRhOiBBbmd1bGFyUENvbm5lY3REYXRhID0ge307XG4gIGluaGVyaXRlZFByb3BzJDogb2JqZWN0O1xuICBzaG93TGFiZWwkPzogYm9vbGVhbiA9IHRydWU7XG4gIGxhYmVsJD86IHN0cmluZztcbiAgcmVhZG9ubHlNb2RlOiBib29sZWFuO1xuICBjb250ZXh0Q2xhc3M6IGFueTtcbiAgcmVmZXJlbmNlTGlzdDogYW55O1xuICBwYWdlUmVmZXJlbmNlOiBhbnk7XG4gIGhlYWRpbmc6IGFueTtcbiAgY2hpbGRyZW46IGFueTtcbiAgbWVudUljb25PdmVycmlkZSQ6IGFueTtcbiAgcHJldlJlZkxlbmd0aDogbnVtYmVyO1xuICBhbGxvd0FkZEVkaXQ6IGJvb2xlYW47XG4gIGZpZWxkSGVhZGVyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhbmd1bGFyUENvbm5lY3Q6IEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1dGlsczogVXRpbHNcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIEZpcnN0IHRoaW5nIGluIGluaXRpYWxpemF0aW9uIGlzIHJlZ2lzdGVyaW5nIGFuZCBzdWJzY3JpYmluZyB0byB0aGUgQW5ndWxhclBDb25uZWN0IHNlcnZpY2VcbiAgICB0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEgPSB0aGlzLmFuZ3VsYXJQQ29ubmVjdC5yZWdpc3RlckFuZFN1YnNjcmliZUNvbXBvbmVudCh0aGlzLCB0aGlzLm9uU3RhdGVDaGFuZ2UpO1xuICAgIHRoaXMudXBkYXRlU2VsZigpO1xuXG4gICAgY29uc3QgbWVudUljb25PdmVycmlkZSQgPSAndHJhc2gnO1xuICAgIGlmIChtZW51SWNvbk92ZXJyaWRlJCkge1xuICAgICAgdGhpcy5tZW51SWNvbk92ZXJyaWRlJCA9IHRoaXMudXRpbHMuZ2V0SW1hZ2VTcmMobWVudUljb25PdmVycmlkZSQsIHRoaXMudXRpbHMuZ2V0U0RLU3RhdGljQ29udGVudFVybCgpKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4pIHtcbiAgICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YS51bnN1YnNjcmliZUZuKCk7XG4gICAgfVxuICB9XG5cbiAgb25TdGF0ZUNoYW5nZSgpIHtcbiAgICAvLyBTaG91bGQgYWx3YXlzIGNoZWNrIHRoZSBicmlkZ2UgdG8gc2VlIGlmIHRoZSBjb21wb25lbnQgc2hvdWxkXG4gICAgLy8gdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKVxuICAgIGNvbnN0IGJVcGRhdGVTZWxmID0gdGhpcy5hbmd1bGFyUENvbm5lY3Quc2hvdWxkQ29tcG9uZW50VXBkYXRlKHRoaXMpO1xuICAgIC8vIE9OTFkgY2FsbCB1cGRhdGVTZWxmIHdoZW4gdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlXG4gICAgaWYgKGJVcGRhdGVTZWxmKSB7XG4gICAgICB0aGlzLnVwZGF0ZVNlbGYoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMgJiYgY2hhbmdlcy5jb25maWdQcm9wcyQpIHtcbiAgICAgIGNvbnN0IHByb3BzID0gY2hhbmdlcy5jb25maWdQcm9wcyQ7XG4gICAgICBpZiAocHJvcHMuY3VycmVudFZhbHVlICE9PSBwcm9wcy5wcmV2aW91c1ZhbHVlKSB7XG4gICAgICAgIHRoaXMuY29uZmlnUHJvcHMkID0gcHJvcHMuY3VycmVudFZhbHVlO1xuICAgICAgICBpZiAoY2hhbmdlcz8ucENvbm4kPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICB0aGlzLnBDb25uJCA9IGNoYW5nZXM/LnBDb25uJD8uY3VycmVudFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlU2VsZigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVNlbGYoKSB7XG4gICAgdGhpcy5pbmhlcml0ZWRQcm9wcyQgPSB0aGlzLnBDb25uJC5nZXRJbmhlcml0ZWRQcm9wcygpO1xuICAgIHRoaXMubGFiZWwkID0gdGhpcy5jb25maWdQcm9wcyQubGFiZWw7XG4gICAgdGhpcy5zaG93TGFiZWwkID0gdGhpcy5jb25maWdQcm9wcyQuc2hvd0xhYmVsO1xuICAgIC8vIGxhYmVsICYgc2hvd0xhYmVsIHdpdGhpbiBpbmhlcml0ZWRQcm9wcyB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgY29uZmlnUHJvcHNcbiAgICB0aGlzLmxhYmVsJCA9ICh0aGlzLmluaGVyaXRlZFByb3BzJCBhcyBhbnkpLmxhYmVsIHx8IHRoaXMubGFiZWwkO1xuICAgIHRoaXMuc2hvd0xhYmVsJCA9ICh0aGlzLmluaGVyaXRlZFByb3BzJCBhcyBhbnkpLnNob3dMYWJlbCB8fCB0aGlzLnNob3dMYWJlbCQ7XG5cbiAgICB0aGlzLmFsbG93QWRkRWRpdCA9IHRoaXMuY29uZmlnUHJvcHMkLmFsbG93VGFibGVFZGl0O1xuXG4gICAgY29uc3QgcmVuZGVyTW9kZSA9IHRoaXMuY29uZmlnUHJvcHMkLnJlbmRlck1vZGU7XG4gICAgY29uc3QgZGlzcGxheU1vZGUgPSB0aGlzLmNvbmZpZ1Byb3BzJC5kaXNwbGF5TW9kZTtcbiAgICB0aGlzLnJlYWRvbmx5TW9kZSA9IHJlbmRlck1vZGUgPT09ICdSZWFkT25seScgfHwgZGlzcGxheU1vZGUgPT09ICdMQUJFTFNfTEVGVCc7XG4gICAgdGhpcy5jb250ZXh0Q2xhc3MgPSB0aGlzLmNvbmZpZ1Byb3BzJC5jb250ZXh0Q2xhc3M7XG4gICAgY29uc3QgbG9va0ZvckNoaWxkSW5Db25maWcgPSB0aGlzLmNvbmZpZ1Byb3BzJC5sb29rRm9yQ2hpbGRJbkNvbmZpZztcbiAgICB0aGlzLmhlYWRpbmcgPSB0aGlzLmNvbmZpZ1Byb3BzJC5oZWFkaW5nID8/ICdSb3cnO1xuICAgIHRoaXMuZmllbGRIZWFkZXIgPSB0aGlzLmNvbmZpZ1Byb3BzJC5maWVsZEhlYWRlcjtcbiAgICBjb25zdCByZXNvbHZlZExpc3QgPSBnZXRSZWZlcmVuY2VMaXN0KHRoaXMucENvbm4kKTtcbiAgICB0aGlzLnBhZ2VSZWZlcmVuY2UgPSBgJHt0aGlzLnBDb25uJC5nZXRQYWdlUmVmZXJlbmNlKCl9JHtyZXNvbHZlZExpc3R9YDtcbiAgICB0aGlzLnBDb25uJC5zZXRSZWZlcmVuY2VMaXN0KHJlc29sdmVkTGlzdCk7XG4gICAgaWYgKHRoaXMucmVhZG9ubHlNb2RlKSB7XG4gICAgICB0aGlzLnBDb25uJC5zZXRJbmhlcml0ZWRQcm9wKCdkaXNwbGF5TW9kZScsICdMQUJFTFNfTEVGVCcpO1xuICAgIH1cbiAgICB0aGlzLnJlZmVyZW5jZUxpc3QgPSB0aGlzLmNvbmZpZ1Byb3BzJC5yZWZlcmVuY2VMaXN0O1xuICAgIGlmICh0aGlzLnByZXZSZWZMZW5ndGggIT0gdGhpcy5yZWZlcmVuY2VMaXN0Lmxlbmd0aCkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvbm8tY29sbGFwc2libGUtaWZcbiAgICAgIGlmICghdGhpcy5yZWFkb25seU1vZGUpIHtcbiAgICAgICAgaWYgKHRoaXMucmVmZXJlbmNlTGlzdD8ubGVuZ3RoID09PSAwICYmIHRoaXMuYWxsb3dBZGRFZGl0ICE9PSBmYWxzZSkge1xuICAgICAgICAgIHRoaXMuYWRkRmllbGRHcm91cEl0ZW0oKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgY2hpbGRyZW46IGFueSA9IFtdO1xuICAgICAgdGhpcy5yZWZlcmVuY2VMaXN0Py5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHtcbiAgICAgICAgICBpZDogaW5kZXgsXG4gICAgICAgICAgbmFtZTogdGhpcy5maWVsZEhlYWRlciA9PT0gJ3Byb3BlcnR5UmVmJyA/IHRoaXMuZ2V0RHluYW1pY0hlYWRlcihpdGVtLCBpbmRleCkgOiB0aGlzLmdldFN0YXRpY0hlYWRlcih0aGlzLmhlYWRpbmcsIGluZGV4KSxcbiAgICAgICAgICBjaGlsZHJlbjogYnVpbGRWaWV3KHRoaXMucENvbm4kLCBpbmRleCwgbG9va0ZvckNoaWxkSW5Db25maWcpXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmNoaWxkcmVuID0gY2hpbGRyZW47XG4gICAgfVxuICAgIHRoaXMucHJldlJlZkxlbmd0aCA9IHRoaXMucmVmZXJlbmNlTGlzdC5sZW5ndGg7XG4gIH1cblxuICBnZXRTdGF0aWNIZWFkZXIgPSAoaGVhZGluZywgaW5kZXgpID0+IHtcbiAgICByZXR1cm4gYCR7aGVhZGluZ30gJHtpbmRleCArIDF9YDtcbiAgfTtcblxuICBnZXREeW5hbWljSGVhZGVyID0gKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgaWYgKHRoaXMuZmllbGRIZWFkZXIgPT09ICdwcm9wZXJ0eVJlZicgJiYgdGhpcy5oZWFkaW5nICYmIGl0ZW1bdGhpcy5oZWFkaW5nLnN1YnN0cmluZygxKV0pIHtcbiAgICAgIHJldHVybiBpdGVtW3RoaXMuaGVhZGluZy5zdWJzdHJpbmcoMSldO1xuICAgIH1cbiAgICByZXR1cm4gYFJvdyAke2luZGV4ICsgMX1gO1xuICB9O1xuXG4gIGFkZEZpZWxkR3JvdXBJdGVtKCkge1xuICAgIGlmIChQQ29yZS5nZXRQQ29yZVZlcnNpb24oKT8uaW5jbHVkZXMoJzguNycpKSB7XG4gICAgICB0aGlzLnBDb25uJC5nZXRMaXN0QWN0aW9ucygpLmluc2VydCh7IGNsYXNzSUQ6IHRoaXMuY29udGV4dENsYXNzIH0sIHRoaXMucmVmZXJlbmNlTGlzdC5sZW5ndGgsIHRoaXMucGFnZVJlZmVyZW5jZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEB0cy1pZ25vcmUgLSBzZWNvbmQgcGFyYW1ldGVyIFwicGFnZVJlZlwiIGlzIG9wdGlvbmFsIGZvciBpbnNlcnQgbWV0aG9kXG4gICAgICB0aGlzLnBDb25uJC5nZXRMaXN0QWN0aW9ucygpLmluc2VydCh7IGNsYXNzSUQ6IHRoaXMuY29udGV4dENsYXNzIH0sIHRoaXMucmVmZXJlbmNlTGlzdC5sZW5ndGgpO1xuICAgIH1cbiAgfVxuXG4gIGRlbGV0ZUZpZWxkR3JvdXBJdGVtKGluZGV4KSB7XG4gICAgaWYgKFBDb3JlLmdldFBDb3JlVmVyc2lvbigpPy5pbmNsdWRlcygnOC43JykpIHtcbiAgICAgIHRoaXMucENvbm4kLmdldExpc3RBY3Rpb25zKCkuZGVsZXRlRW50cnkoaW5kZXgsIHRoaXMucGFnZVJlZmVyZW5jZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEB0cy1pZ25vcmUgLSBzZWNvbmQgcGFyYW1ldGVyIFwicGFnZVJlZlwiIGlzIG9wdGlvbmFsIGZvciBkZWxldGVFbnRyeSBtZXRob2RcbiAgICAgIHRoaXMucENvbm4kLmdldExpc3RBY3Rpb25zKCkuZGVsZXRlRW50cnkoaW5kZXgpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBpZD1cImZpZWxkLWdyb3VwXCI+XG4gIDxoMyAqbmdJZj1cInNob3dMYWJlbCRcIiBjbGFzc05hbWU9XCJsYWJlbFwiIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGRcIj5cbiAgICB7eyBsYWJlbCQgfX1cbiAgPC9oMz5cbiAgPGRpdiAqbmdJZj1cInJlYWRvbmx5TW9kZTsgZWxzZSBlZGl0YWJsZVwiPlxuICAgIDxkaXYgKm5nSWY9XCJjaGlsZHJlbiAmJiBjaGlsZHJlbi5sZW5ndGggPiAwXCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNoaWxkcmVuOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxjb21wb25lbnQtbWFwcGVyIG5hbWU9XCJGaWVsZEdyb3VwTGlzdFwiIFtwcm9wc109XCJ7IGhlYWRpbmc6IGl0ZW0ubmFtZSwgZm9ybUdyb3VwJCwgaXRlbSB9XCI+PC9jb21wb25lbnQtbWFwcGVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8bmctdGVtcGxhdGUgI2VkaXRhYmxlPlxuICAgIDxkaXYgKm5nSWY9XCJjaGlsZHJlbiAmJiBjaGlsZHJlbi5sZW5ndGggPiAwXCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBraWQgb2YgY2hpbGRyZW47IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1kaXZcIj5cbiAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDgwJVwiPlxuICAgICAgICAgICAgPGI+e3sga2lkLm5hbWUgfX08L2I+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cImFsbG93QWRkRWRpdCAhPT0gZmFsc2VcIiBzdHlsZT1cIndpZHRoOiAyMCU7IHRleHQtYWxpZ246IHJpZ2h0XCI+XG4gICAgICAgICAgICA8YnV0dG9uIGlkPVwiZGVsZXRlLWJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZGVsZXRlRmllbGRHcm91cEl0ZW0oaSlcIj5cbiAgICAgICAgICAgICAgPGltZyBjbGFzcz1cInBzZGstdXRpbGl0eS1jYXJkLWFjdGlvbi1zdmctaWNvblwiIHNyYz1cInt7IG1lbnVJY29uT3ZlcnJpZGUkIH19XCIgLz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwia2lkLmNoaWxkcmVuLmdldFBDb25uZWN0KCkuZ2V0UmF3TWV0YWRhdGEoKS50eXBlLnRvTG93ZXJDYXNlKCkgPT0gJ3JlZ2lvbidcIj5cbiAgICAgICAgICA8Y29tcG9uZW50LW1hcHBlciBuYW1lPVwiUmVnaW9uXCIgW3Byb3BzXT1cInsgcENvbm4kOiBraWQuY2hpbGRyZW4uZ2V0UENvbm5lY3QoKSwgZm9ybUdyb3VwJCB9XCI+PC9jb21wb25lbnQtbWFwcGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvbiAqbmdJZj1cImFsbG93QWRkRWRpdCAhPT0gZmFsc2VcIiBtYXQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIHN0eWxlPVwiZm9udC1zaXplOiAxNnB4XCIgKGNsaWNrKT1cImFkZEZpZWxkR3JvdXBJdGVtKClcIj4rIEFkZDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZ3JvdXAtdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL3RlbXBsYXRlL2ZpZWxkLWdyb3VwLXRlbXBsYXRlL2ZpZWxkLWdyb3VwLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9maWVsZC1ncm91cC10ZW1wbGF0ZS9maWVsZC1ncm91cC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxVQUFVLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRWxGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7QUF1QnhHLE1BQU0sT0FBTywyQkFBMkI7SUFvQnRDLFlBQ1UsZUFBdUMsRUFDdkMsS0FBWTtRQURaLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtRQUN2QyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBakJ0Qix3QkFBbUIsR0FBd0IsRUFBRSxDQUFDO1FBRTlDLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFzRzVCLG9CQUFlLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDbkMsT0FBTyxHQUFHLE9BQU8sSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7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O0lBQ0gsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQUs7UUFDeEIsSUFBSSxLQUFLLENBQUMsZUFBZSxFQUFFLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDckU7YUFBTTtZQUNMLDZFQUE2RTtZQUM3RSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNqRDtJQUNILENBQUM7K0dBeElVLDJCQUEyQjttR0FBM0IsMkJBQTJCLCtMQzlCeEMsbStDQWlDQSwwTERMWSxZQUFZLG9YQUFFLGVBQWUsOGhCQUFtQix3QkFBd0I7OzRGQUV2RSwyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBR3hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7aUlBRzNFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIGZvcndhcmRSZWYsIE9uRGVzdHJveSwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IEFuZ3VsYXJQQ29ubmVjdERhdGEsIEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QnO1xuaW1wb3J0IHsgYnVpbGRWaWV3LCBnZXRSZWZlcmVuY2VMaXN0IH0gZnJvbSAnLi4vLi4vLi4vX2hlbHBlcnMvZmllbGQtZ3JvdXAtdXRpbHMnO1xuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9faGVscGVycy91dGlscyc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG5pbnRlcmZhY2UgRmllbGRHcm91cFRlbXBsYXRlUHJvcHMge1xuICAvLyBJZiBhbnksIGVudGVyIGFkZGl0aW9uYWwgcHJvcHMgdGhhdCBvbmx5IGV4aXN0IG9uIHRoaXMgY29tcG9uZW50XG4gIGxhYmVsPzogc3RyaW5nO1xuICBzaG93TGFiZWw/OiBib29sZWFuO1xuICByZWZlcmVuY2VMaXN0PzogYW55W107XG4gIGNvbnRleHRDbGFzczogc3RyaW5nO1xuICByZW5kZXJNb2RlPzogc3RyaW5nO1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICBsb29rRm9yQ2hpbGRJbkNvbmZpZz86IGJvb2xlYW47XG4gIGRpc3BsYXlNb2RlPzogc3RyaW5nO1xuICBmaWVsZEhlYWRlcj86IHN0cmluZztcbiAgYWxsb3dUYWJsZUVkaXQ6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWVsZC1ncm91cC10ZW1wbGF0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC1ncm91cC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLWdyb3VwLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgZm9yd2FyZFJlZigoKSA9PiBDb21wb25lbnRNYXBwZXJDb21wb25lbnQpXVxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZEdyb3VwVGVtcGxhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgY29uZmlnUHJvcHMkOiBGaWVsZEdyb3VwVGVtcGxhdGVQcm9wcztcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCQ6IEZvcm1Hcm91cDtcblxuICBhbmd1bGFyUENvbm5lY3REYXRhOiBBbmd1bGFyUENvbm5lY3REYXRhID0ge307XG4gIGluaGVyaXRlZFByb3BzJDogb2JqZWN0O1xuICBzaG93TGFiZWwkPzogYm9vbGVhbiA9IHRydWU7XG4gIGxhYmVsJD86IHN0cmluZztcbiAgcmVhZG9ubHlNb2RlOiBib29sZWFuO1xuICBjb250ZXh0Q2xhc3M6IGFueTtcbiAgcmVmZXJlbmNlTGlzdDogYW55O1xuICBwYWdlUmVmZXJlbmNlOiBhbnk7XG4gIGhlYWRpbmc6IGFueTtcbiAgY2hpbGRyZW46IGFueTtcbiAgbWVudUljb25PdmVycmlkZSQ6IGFueTtcbiAgcHJldlJlZkxlbmd0aDogbnVtYmVyO1xuICBhbGxvd0FkZEVkaXQ6IGJvb2xlYW47XG4gIGZpZWxkSGVhZGVyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhbmd1bGFyUENvbm5lY3Q6IEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1dGlsczogVXRpbHNcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIEZpcnN0IHRoaW5nIGluIGluaXRpYWxpemF0aW9uIGlzIHJlZ2lzdGVyaW5nIGFuZCBzdWJzY3JpYmluZyB0byB0aGUgQW5ndWxhclBDb25uZWN0IHNlcnZpY2VcbiAgICB0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEgPSB0aGlzLmFuZ3VsYXJQQ29ubmVjdC5yZWdpc3RlckFuZFN1YnNjcmliZUNvbXBvbmVudCh0aGlzLCB0aGlzLm9uU3RhdGVDaGFuZ2UpO1xuICAgIHRoaXMudXBkYXRlU2VsZigpO1xuXG4gICAgY29uc3QgbWVudUljb25PdmVycmlkZSQgPSAndHJhc2gnO1xuICAgIGlmIChtZW51SWNvbk92ZXJyaWRlJCkge1xuICAgICAgdGhpcy5tZW51SWNvbk92ZXJyaWRlJCA9IHRoaXMudXRpbHMuZ2V0SW1hZ2VTcmMobWVudUljb25PdmVycmlkZSQsIHRoaXMudXRpbHMuZ2V0U0RLU3RhdGljQ29udGVudFVybCgpKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4pIHtcbiAgICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YS51bnN1YnNjcmliZUZuKCk7XG4gICAgfVxuICB9XG5cbiAgb25TdGF0ZUNoYW5nZSgpIHtcbiAgICAvLyBTaG91bGQgYWx3YXlzIGNoZWNrIHRoZSBicmlkZ2UgdG8gc2VlIGlmIHRoZSBjb21wb25lbnQgc2hvdWxkXG4gICAgLy8gdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKVxuICAgIGNvbnN0IGJVcGRhdGVTZWxmID0gdGhpcy5hbmd1bGFyUENvbm5lY3Quc2hvdWxkQ29tcG9uZW50VXBkYXRlKHRoaXMpO1xuICAgIC8vIE9OTFkgY2FsbCB1cGRhdGVTZWxmIHdoZW4gdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlXG4gICAgaWYgKGJVcGRhdGVTZWxmKSB7XG4gICAgICB0aGlzLnVwZGF0ZVNlbGYoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMgJiYgY2hhbmdlcy5jb25maWdQcm9wcyQpIHtcbiAgICAgIGNvbnN0IHByb3BzID0gY2hhbmdlcy5jb25maWdQcm9wcyQ7XG4gICAgICBpZiAocHJvcHMuY3VycmVudFZhbHVlICE9PSBwcm9wcy5wcmV2aW91c1ZhbHVlKSB7XG4gICAgICAgIHRoaXMuY29uZmlnUHJvcHMkID0gcHJvcHMuY3VycmVudFZhbHVlO1xuICAgICAgICBpZiAoY2hhbmdlcz8ucENvbm4kPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICB0aGlzLnBDb25uJCA9IGNoYW5nZXM/LnBDb25uJD8uY3VycmVudFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlU2VsZigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVNlbGYoKSB7XG4gICAgdGhpcy5pbmhlcml0ZWRQcm9wcyQgPSB0aGlzLnBDb25uJC5nZXRJbmhlcml0ZWRQcm9wcygpO1xuICAgIHRoaXMubGFiZWwkID0gdGhpcy5jb25maWdQcm9wcyQubGFiZWw7XG4gICAgdGhpcy5zaG93TGFiZWwkID0gdGhpcy5jb25maWdQcm9wcyQuc2hvd0xhYmVsO1xuICAgIC8vIGxhYmVsICYgc2hvd0xhYmVsIHdpdGhpbiBpbmhlcml0ZWRQcm9wcyB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgY29uZmlnUHJvcHNcbiAgICB0aGlzLmxhYmVsJCA9ICh0aGlzLmluaGVyaXRlZFByb3BzJCBhcyBhbnkpLmxhYmVsIHx8IHRoaXMubGFiZWwkO1xuICAgIHRoaXMuc2hvd0xhYmVsJCA9ICh0aGlzLmluaGVyaXRlZFByb3BzJCBhcyBhbnkpLnNob3dMYWJlbCB8fCB0aGlzLnNob3dMYWJlbCQ7XG5cbiAgICB0aGlzLmFsbG93QWRkRWRpdCA9IHRoaXMuY29uZmlnUHJvcHMkLmFsbG93VGFibGVFZGl0O1xuXG4gICAgY29uc3QgcmVuZGVyTW9kZSA9IHRoaXMuY29uZmlnUHJvcHMkLnJlbmRlck1vZGU7XG4gICAgY29uc3QgZGlzcGxheU1vZGUgPSB0aGlzLmNvbmZpZ1Byb3BzJC5kaXNwbGF5TW9kZTtcbiAgICB0aGlzLnJlYWRvbmx5TW9kZSA9IHJlbmRlck1vZGUgPT09ICdSZWFkT25seScgfHwgZGlzcGxheU1vZGUgPT09ICdMQUJFTFNfTEVGVCc7XG4gICAgdGhpcy5jb250ZXh0Q2xhc3MgPSB0aGlzLmNvbmZpZ1Byb3BzJC5jb250ZXh0Q2xhc3M7XG4gICAgY29uc3QgbG9va0ZvckNoaWxkSW5Db25maWcgPSB0aGlzLmNvbmZpZ1Byb3BzJC5sb29rRm9yQ2hpbGRJbkNvbmZpZztcbiAgICB0aGlzLmhlYWRpbmcgPSB0aGlzLmNvbmZpZ1Byb3BzJC5oZWFkaW5nID8/ICdSb3cnO1xuICAgIHRoaXMuZmllbGRIZWFkZXIgPSB0aGlzLmNvbmZpZ1Byb3BzJC5maWVsZEhlYWRlcjtcbiAgICBjb25zdCByZXNvbHZlZExpc3QgPSBnZXRSZWZlcmVuY2VMaXN0KHRoaXMucENvbm4kKTtcbiAgICB0aGlzLnBhZ2VSZWZlcmVuY2UgPSBgJHt0aGlzLnBDb25uJC5nZXRQYWdlUmVmZXJlbmNlKCl9JHtyZXNvbHZlZExpc3R9YDtcbiAgICB0aGlzLnBDb25uJC5zZXRSZWZlcmVuY2VMaXN0KHJlc29sdmVkTGlzdCk7XG4gICAgaWYgKHRoaXMucmVhZG9ubHlNb2RlKSB7XG4gICAgICB0aGlzLnBDb25uJC5zZXRJbmhlcml0ZWRQcm9wKCdkaXNwbGF5TW9kZScsICdMQUJFTFNfTEVGVCcpO1xuICAgIH1cbiAgICB0aGlzLnJlZmVyZW5jZUxpc3QgPSB0aGlzLmNvbmZpZ1Byb3BzJC5yZWZlcmVuY2VMaXN0O1xuICAgIGlmICh0aGlzLnByZXZSZWZMZW5ndGggIT0gdGhpcy5yZWZlcmVuY2VMaXN0Py5sZW5ndGgpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBzb25hcmpzL25vLWNvbGxhcHNpYmxlLWlmXG4gICAgICBpZiAoIXRoaXMucmVhZG9ubHlNb2RlKSB7XG4gICAgICAgIGlmICh0aGlzLnJlZmVyZW5jZUxpc3Q/Lmxlbmd0aCA9PT0gMCAmJiB0aGlzLmFsbG93QWRkRWRpdCAhPT0gZmFsc2UpIHtcbiAgICAgICAgICB0aGlzLmFkZEZpZWxkR3JvdXBJdGVtKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IGNoaWxkcmVuOiBhbnkgPSBbXTtcbiAgICAgIHRoaXMucmVmZXJlbmNlTGlzdD8uZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgY2hpbGRyZW4ucHVzaCh7XG4gICAgICAgICAgaWQ6IGluZGV4LFxuICAgICAgICAgIG5hbWU6IHRoaXMuZmllbGRIZWFkZXIgPT09ICdwcm9wZXJ0eVJlZicgPyB0aGlzLmdldER5bmFtaWNIZWFkZXIoaXRlbSwgaW5kZXgpIDogdGhpcy5nZXRTdGF0aWNIZWFkZXIodGhpcy5oZWFkaW5nLCBpbmRleCksXG4gICAgICAgICAgY2hpbGRyZW46IGJ1aWxkVmlldyh0aGlzLnBDb25uJCwgaW5kZXgsIGxvb2tGb3JDaGlsZEluQ29uZmlnKVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICAgIH1cbiAgICB0aGlzLnByZXZSZWZMZW5ndGggPSB0aGlzLnJlZmVyZW5jZUxpc3QubGVuZ3RoO1xuICB9XG5cbiAgZ2V0U3RhdGljSGVhZGVyID0gKGhlYWRpbmcsIGluZGV4KSA9PiB7XG4gICAgcmV0dXJuIGAke2hlYWRpbmd9ICR7aW5kZXggKyAxfWA7XG4gIH07XG5cbiAgZ2V0RHluYW1pY0hlYWRlciA9IChpdGVtLCBpbmRleCkgPT4ge1xuICAgIGlmICh0aGlzLmZpZWxkSGVhZGVyID09PSAncHJvcGVydHlSZWYnICYmIHRoaXMuaGVhZGluZyAmJiBpdGVtW3RoaXMuaGVhZGluZy5zdWJzdHJpbmcoMSldKSB7XG4gICAgICByZXR1cm4gaXRlbVt0aGlzLmhlYWRpbmcuc3Vic3RyaW5nKDEpXTtcbiAgICB9XG4gICAgcmV0dXJuIGBSb3cgJHtpbmRleCArIDF9YDtcbiAgfTtcblxuICBhZGRGaWVsZEdyb3VwSXRlbSgpIHtcbiAgICBpZiAoUENvcmUuZ2V0UENvcmVWZXJzaW9uKCk/LmluY2x1ZGVzKCc4LjcnKSkge1xuICAgICAgdGhpcy5wQ29ubiQuZ2V0TGlzdEFjdGlvbnMoKS5pbnNlcnQoeyBjbGFzc0lEOiB0aGlzLmNvbnRleHRDbGFzcyB9LCB0aGlzLnJlZmVyZW5jZUxpc3QubGVuZ3RoLCB0aGlzLnBhZ2VSZWZlcmVuY2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBAdHMtaWdub3JlIC0gc2Vjb25kIHBhcmFtZXRlciBcInBhZ2VSZWZcIiBpcyBvcHRpb25hbCBmb3IgaW5zZXJ0IG1ldGhvZFxuICAgICAgdGhpcy5wQ29ubiQuZ2V0TGlzdEFjdGlvbnMoKS5pbnNlcnQoeyBjbGFzc0lEOiB0aGlzLmNvbnRleHRDbGFzcyB9LCB0aGlzLnJlZmVyZW5jZUxpc3QubGVuZ3RoKTtcbiAgICB9XG4gIH1cblxuICBkZWxldGVGaWVsZEdyb3VwSXRlbShpbmRleCkge1xuICAgIGlmIChQQ29yZS5nZXRQQ29yZVZlcnNpb24oKT8uaW5jbHVkZXMoJzguNycpKSB7XG4gICAgICB0aGlzLnBDb25uJC5nZXRMaXN0QWN0aW9ucygpLmRlbGV0ZUVudHJ5KGluZGV4LCB0aGlzLnBhZ2VSZWZlcmVuY2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBAdHMtaWdub3JlIC0gc2Vjb25kIHBhcmFtZXRlciBcInBhZ2VSZWZcIiBpcyBvcHRpb25hbCBmb3IgZGVsZXRlRW50cnkgbWV0aG9kXG4gICAgICB0aGlzLnBDb25uJC5nZXRMaXN0QWN0aW9ucygpLmRlbGV0ZUVudHJ5KGluZGV4KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgaWQ9XCJmaWVsZC1ncm91cFwiPlxuICA8aDMgKm5nSWY9XCJzaG93TGFiZWwkXCIgY2xhc3NOYW1lPVwibGFiZWxcIiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkXCI+XG4gICAge3sgbGFiZWwkIH19XG4gIDwvaDM+XG4gIDxkaXYgKm5nSWY9XCJyZWFkb25seU1vZGU7IGVsc2UgZWRpdGFibGVcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID4gMFwiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjaGlsZHJlbjsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICA8Y29tcG9uZW50LW1hcHBlciBuYW1lPVwiRmllbGRHcm91cExpc3RcIiBbcHJvcHNdPVwieyBoZWFkaW5nOiBpdGVtLm5hbWUsIGZvcm1Hcm91cCQsIGl0ZW0gfVwiPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPG5nLXRlbXBsYXRlICNlZGl0YWJsZT5cbiAgICA8ZGl2ICpuZ0lmPVwiY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID4gMFwiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQga2lkIG9mIGNoaWxkcmVuOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZGl2XCI+XG4gICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiA4MCVcIj5cbiAgICAgICAgICAgIDxiPnt7IGtpZC5uYW1lIH19PC9iPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJhbGxvd0FkZEVkaXQgIT09IGZhbHNlXCIgc3R5bGU9XCJ3aWR0aDogMjAlOyB0ZXh0LWFsaWduOiByaWdodFwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBpZD1cImRlbGV0ZS1idXR0b25cIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImRlbGV0ZUZpZWxkR3JvdXBJdGVtKGkpXCI+XG4gICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJwc2RrLXV0aWxpdHktY2FyZC1hY3Rpb24tc3ZnLWljb25cIiBzcmM9XCJ7eyBtZW51SWNvbk92ZXJyaWRlJCB9fVwiIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cImtpZC5jaGlsZHJlbi5nZXRQQ29ubmVjdCgpLmdldFJhd01ldGFkYXRhKCkudHlwZS50b0xvd2VyQ2FzZSgpID09ICdyZWdpb24nXCI+XG4gICAgICAgICAgPGNvbXBvbmVudC1tYXBwZXIgbmFtZT1cIlJlZ2lvblwiIFtwcm9wc109XCJ7IHBDb25uJDoga2lkLmNoaWxkcmVuLmdldFBDb25uZWN0KCksIGZvcm1Hcm91cCQgfVwiPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxidXR0b24gKm5nSWY9XCJhbGxvd0FkZEVkaXQgIT09IGZhbHNlXCIgbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTZweFwiIChjbGljayk9XCJhZGRGaWVsZEdyb3VwSXRlbSgpXCI+KyBBZGQ8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
|
|
@@ -41,16 +41,17 @@ function getFieldWidth(field, label) {
|
|
|
41
41
|
export const getContext = thePConn => {
|
|
42
42
|
const contextName = thePConn.getContextName();
|
|
43
43
|
const pageReference = thePConn.getPageReference();
|
|
44
|
-
|
|
45
|
-
// not always in config of state props
|
|
46
|
-
let { referenceList } = thePConn.getStateProps()?.config || thePConn.getStateProps();
|
|
44
|
+
const { readonlyContextList, referenceList = readonlyContextList } = thePConn.getStateProps()?.config || thePConn.getStateProps();
|
|
47
45
|
const pageReferenceForRows = referenceList.startsWith('.') ? `${pageReference}.${referenceList.substring(1)}` : referenceList;
|
|
46
|
+
const viewName = thePConn.viewName;
|
|
48
47
|
// removing "caseInfo.content" prefix to avoid setting it as a target while preparing pageInstructions
|
|
49
|
-
|
|
48
|
+
// skipping the removal as StateMachine itself is removing this case info prefix while preparing pageInstructions
|
|
49
|
+
// referenceList = pageReferenceForRows.replace(PCore.getConstants().CASE_INFO.CASE_INFO_CONTENT, '');
|
|
50
50
|
return {
|
|
51
51
|
contextName,
|
|
52
52
|
referenceListStr: referenceList,
|
|
53
|
-
pageReferenceForRows
|
|
53
|
+
pageReferenceForRows,
|
|
54
|
+
viewName
|
|
54
55
|
};
|
|
55
56
|
};
|
|
56
57
|
export const populateRowKey = rawData => {
|
|
@@ -267,4 +268,4 @@ export const createPConnect = (contextName, referenceList, pageReference) => {
|
|
|
267
268
|
const { getPConnect } = PCore.createPConnect(config);
|
|
268
269
|
return getPConnect();
|
|
269
270
|
};
|
|
270
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zaW1wbGUtdGFibGUtbWFudWFsL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztBQUV4Qyw0RUFBNEU7QUFDNUUsMEJBQTBCO0FBQzFCLFNBQVMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLO0lBQ2pDLElBQUksS0FBSyxDQUFDO0lBQ1YsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO1FBQ2xCLEtBQUssTUFBTTtZQUNULEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxNQUFNO1lBQ1QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixLQUFLLEdBQUcsR0FBRyxDQUFDO1lBQ1osTUFBTTtRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCLEtBQUssVUFBVTtZQUNiLEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxVQUFVLENBQUM7UUFDaEIsS0FBSyxXQUFXO1lBQ2QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixnREFBZ0Q7WUFDaEQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxN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ZXRTZWNvbmRzIH0gZnJvbSAnLi4vLi4vLi4vX2hlbHBlcnMvY29tbW9uJztcblxuZXhwb3J0IGNvbnN0IFRBQkxFX0NFTEwgPSAnU2RrUmVuZGVyZXInO1xuZXhwb3J0IGNvbnN0IERFTEVURV9JQ09OID0gJ0RlbGV0ZUljb24nO1xuXG4vLyBCVUctNjE1MjUzOiBXb3JrYXJvdW5kIGZvciBhdXRvc2l6ZSBpbiB0YWJsZSB3aXRoIGxhenkgbG9hZGluZyBjb21wb25lbnRzXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZnVuY3Rpb24gZ2V0RmllbGRXaWR0aChmaWVsZCwgbGFiZWwpIHtcbiAgbGV0IHdpZHRoO1xuICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICBjYXNlICdUaW1lJzpcbiAgICAgIHdpZHRoID0gMTUwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnRGF0ZSc6XG4gICAgICB3aWR0aCA9IDE2MDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0RhdGVUaW1lJzpcbiAgICAgIHdpZHRoID0gMjA1O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnQXV0b0NvbXBsZXRlJzpcbiAgICBjYXNlICdUZXh0QXJlYSc6XG4gICAgICB3aWR0aCA9IDE5MDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0N1cnJlbmN5JzpcbiAgICBjYXNlICdUZXh0SW5wdXQnOlxuICAgICAgd2lkdGggPSAxODI7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdDaGVja2JveCc6XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY2FzZS1kZWNsYXJhdGlvbnNcbiAgICAgIGNvbnN0IHRleHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRleHQpO1xuICAgICAgdGV4dC5zdHlsZS5mb250U2l6ZSA9ICcxM3B4JztcbiAgICAgIHRleHQuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgICAgdGV4dC5pbm5lckhUTUwgPSBsYWJlbDtcbiAgICAgIHdpZHRoID0gTWF0aC5jZWlsKHRleHQuY2xpZW50V2lkdGgpICsgMzA7XG4gICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRleHQpO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIHdpZHRoID0gMTgwO1xuICB9XG4gIHJldHVybiB3aWR0aDtcbn1cblxuZXhwb3J0IGNvbnN0IGdldENvbnRleHQgPSB0aGVQQ29ubiA9PiB7XG4gIGNvbnN0IGNvbnRleHROYW1lID0gdGhlUENvbm4uZ2V0Q29udGV4dE5hbWUoKTtcbiAgY29uc3QgcGFnZVJlZmVyZW5jZSA9IHRoZVBDb25uLmdldFBhZ2VSZWZlcmVuY2UoKTtcbiAgLy8gOC43IGNoYW5nZSA9IHJlZmVyZW5jZUxpc3QgbWF5IG5vdyBiZSBpbiB0b3AtbGV2ZWwgb2Ygc3RhdGUgcHJvcHMsXG4gIC8vICBub3QgYWx3YXlzIGluIGNvbmZpZyBvZiBzdGF0ZSBwcm9wc1xuICBsZXQgeyByZWZlcmVuY2VMaXN0IH0gPSB0aGVQQ29ubi5nZXRTdGF0ZVByb3BzKCk/LmNvbmZpZyB8fCB0aGVQQ29ubi5nZXRTdGF0ZVByb3BzKCk7XG4gIGNvbnN0IHBhZ2VSZWZlcmVuY2VGb3JSb3dzID0gcmVmZXJlbmNlTGlzdC5zdGFydHNXaXRoKCcuJykgPyBgJHtwYWdlUmVmZXJlbmNlfS4ke3JlZmVyZW5jZUxpc3Quc3Vic3RyaW5nKDEpfWAgOiByZWZlcmVuY2VMaXN0O1xuXG4gIC8vIHJlbW92aW5nIFwiY2FzZUluZm8uY29udGVudFwiIHByZWZpeCB0byBhdm9pZCBzZXR0aW5nIGl0IGFzIGEgdGFyZ2V0IHdoaWxlIHByZXBhcmluZyBwYWdlSW5zdHJ1Y3Rpb25zXG4gIHJlZmVyZW5jZUxpc3QgPSBwYWdlUmVmZXJlbmNlRm9yUm93cy5yZXBsYWNlKFBDb3JlLmdldENvbnN0YW50cygpLkNBU0VfSU5GTy5DQVNFX0lORk9fQ09OVEVOVCwgJycpO1xuXG4gIHJldHVybiB7XG4gICAgY29udGV4dE5hbWUsXG4gICAgcmVmZXJlbmNlTGlzdFN0cjogcmVmZXJlbmNlTGlzdCxcbiAgICBwYWdlUmVmZXJlbmNlRm9yUm93c1xuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVsYXRlUm93S2V5ID0gcmF3RGF0YSA9PiB7XG4gIHJldHVybiByYXdEYXRhLm1hcCgocm93LCBpbmRleCkgPT4ge1xuICAgIHJldHVybiB7IC4uLnJvdywgaW5kZXggfTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QXBpQ29udGV4dCA9IChwcm9jZXNzZWREYXRhLCBwQ29ubmVjdCwgcmVvcmRlckNCKSA9PiB7XG4gIHJldHVybiB7XG4gICAgZmV0Y2hEYXRhOiAoKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgIGRhdGE6IHByb2Nlc3NlZERhdGEsXG4gICAgICAgICAgZmlsdGVyZWRSZWNvcmRDb3VudDogcHJvY2Vzc2VkRGF0YS5sZW5ndGgsXG4gICAgICAgICAgdG90YWxSZWNvcmRDb3VudDogcHJvY2Vzc2VkRGF0YS5sZW5ndGhcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGZldGNoUGVyc29uYWxpemF0aW9uczogKCkgPT4ge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7fSk7XG4gICAgfSxcbiAgICBhcHBseVJvd1Jlb3JkZXI6IChzb3VyY2VLZXksIGRlc3RpbmF0aW9uS2V5KSA9PiB7XG4gICAgICAvLyBpbmRleGVzIGFyZSBrZXlzIGZvciBzaW1wbGUgdGFibGUgc28sIGl0IHNob3VsZCB3b3JrLlxuICAgICAgcmVvcmRlckNCKCk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBDb25uZWN0LmdldExpc3RBY3Rpb25zKCkucmVvcmRlcihwYXJzZUludChzb3VyY2VLZXksIDEwKSwgcGFyc2VJbnQoZGVzdGluYXRpb25LZXksIDEwKSkpO1xuICAgIH1cbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBidWlsZE1ldGFGb3JMaXN0VmlldyA9IChmaWVsZE1ldGFkYXRhLCBmaWVsZHMsIHR5cGUsIHJ1bGVDbGFzcywgbmFtZSwgcHJvcGVydHlMYWJlbCwgaXNEYXRhT2JqZWN0LCBwYXJhbWV0ZXJzKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBjb25maWc6IHtcbiAgICAgIHR5cGUsXG4gICAgICByZWZlcmVuY2VMaXN0OiBmaWVsZE1ldGFkYXRhLmRhdGFzb3VyY2UubmFtZSxcbiAgICAgIHBhcmFtZXRlcnM6IHBhcmFtZXRlcnMgPz8gZmllbGRNZXRhZGF0YS5kYXRhc291cmNlLnBhcmFtZXRlcnMsXG4gICAgICBwZXJzb25hbGl6YXRpb246IGZhbHNlLFxuICAgICAgaXNEYXRhT2JqZWN0LFxuICAgICAgZ3JvdXBpbmc6IHRydWUsXG4gICAgICBnbG9iYWxTZWFyY2g6IHRydWUsXG4gICAgICByZW9yZGVyRmllbGRzOiB0cnVlLFxuICAgICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiB0cnVlLFxuICAgICAgdGl0bGU6IHByb3BlcnR5TGFiZWwsXG4gICAgICBwZXJzb25hbGl6YXRpb25JZDogJycgLyogVE9ETyAqLyxcbiAgICAgIHRlbXBsYXRlOiAnTGlzdFZpZXcnLFxuICAgICAgcHJlc2V0czogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ3ByZXNldHMnLFxuICAgICAgICAgIHRlbXBsYXRlOiAnVGFibGUnLFxuICAgICAgICAgIGNvbmZpZzoge30sXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ0NvbHVtbnMnLFxuICAgICAgICAgICAgICB0eXBlOiAnUmVnaW9uJyxcbiAgICAgICAgICAgICAgY2hpbGRyZW46IGZpZWxkc1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgbGFiZWw6IHByb3BlcnR5TGFiZWwsXG4gICAgICAgICAgaWQ6ICdQXycgLyogVE9ETyAqL1xuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgcnVsZUNsYXNzXG4gICAgfVxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1aWxkRmllbGRzRm9yVGFibGUgPSAoY29uZmlnRmllbGRzLCBmaWVsZHMsIHNob3dEZWxldGVCdXR0b24pID0+IHtcbiAgY29uc3QgZmllbGREZWZzID0gY29uZmlnRmllbGRzPy5tYXAoKGZpZWxkLCBpbmRleCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAndGV4dCcsXG4gICAgICBsYWJlbDogZmllbGRzW2luZGV4XS5jb25maWcubGFiZWwgfHwgZmllbGRzW2luZGV4XS5jb25maWcuY2FwdGlvbixcbiAgICAgIGZpbGxBdmFpbGFibGVTcGFjZTogISFmaWVsZC5jb25maWcuZmlsbEF2YWlsYWJsZVNwYWNlLFxuICAgICAgaWQ6IGAke2luZGV4fWAsXG4gICAgICBuYW1lOiBmaWVsZC5jb25maWcudmFsdWUuc3Vic3RyKDQpLFxuICAgICAgY2VsbFJlbmRlcmVyOiBUQUJMRV9DRUxMLFxuICAgICAgc29ydDogZmFsc2UsXG4gICAgICBub0NvbnRleHRNZW51OiB0cnVlLFxuICAgICAgc2hvd01lbnU6IGZhbHNlLFxuICAgICAgbWV0YToge1xuICAgICAgICAuLi5maWVsZFxuICAgICAgfSxcbiAgICAgIC8vIEJVRy02MTUyNTM6IFdvcmthcm91bmQgZm9yIGF1dG9zaXplIGluIHRhYmxlIHdpdGggbGF6eSBsb2FkaW5nIGNvbXBvbmVudHNcbiAgICAgIHdpZHRoOiBnZXRGaWVsZFdpZHRoKGZpZWxkLCBmaWVsZHNbaW5kZXhdLmNvbmZpZy5sYWJlbClcbiAgICB9O1xuICB9KTtcblxuICAvLyBPTkxZIGFkZCBERUxFVEVfSUNPTiB0byBmaWVsZHMgd2hlbiB0aGUgdGFibGUgaXMgcmVxdWVzdGVkIGFzIEVESVRBQkxFXG4gIGlmIChzaG93RGVsZXRlQnV0dG9uKSB7XG4gICAgZmllbGREZWZzLnB1c2goe1xuICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgbGFiZWw6ICcnLFxuICAgICAgbmFtZTogREVMRVRFX0lDT04sXG4gICAgICBpZDogZmllbGREZWZzLmxlbmd0aCxcbiAgICAgIGNlbGxSZW5kZXJlcjogREVMRVRFX0lDT04sXG4gICAgICBzb3J0OiBmYWxzZSxcbiAgICAgIG5vQ29udGV4dE1lbnU6IHRydWUsXG4gICAgICBzaG93TWVudTogZmFsc2UsXG4gICAgICAvLyBCVUctNjE1MjUzOiBXb3JrYXJvdW5kIGZvciBhdXRvc2l6ZSBpbiB0YWJsZSB3aXRoIGxhenkgbG9hZGluZyBjb21wb25lbnRzXG4gICAgICB3aWR0aDogNDZcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBmaWVsZERlZnM7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWV0YUZvclRhYmxlID0gKGZpZWxkcywgcmVuZGVyTW9kZSkgPT4ge1xuICByZXR1cm4ge1xuICAgIGhlaWdodDoge1xuICAgICAgbWluSGVpZ2h0OiAnYXV0bycsXG4gICAgICBmaXRIZWlnaHRUb0VsZW1lbnQ6ICdmaXRIZWlnaHRUb0VsZW1lbnQnLFxuICAgICAgZGVsdGFBZGp1c3RtZW50OiAnZGVsdGFBZGp1c3RtZW50JyxcbiAgICAgIGF1dG9TaXplOiB0cnVlXG4gICAgfSxcbiAgICBmaWVsZERlZnM6IGZpZWxkcyxcbiAgICBpdGVtS2V5OiAnaW5kZXgnLFxuICAgIGdyb3VwaW5nOiBmYWxzZSxcbiAgICByZW9yZGVyRmllbGRzOiBmYWxzZSxcbiAgICByZW9yZGVySXRlbXM6IHJlbmRlck1vZGUgPT09ICdFZGl0YWJsZScsXG4gICAgZHJhZ0hhbmRsZTogcmVuZGVyTW9kZSA9PT0gJ0VkaXRhYmxlJyxcbiAgICBnbG9iYWxTZWFyY2g6IGZhbHNlLFxuICAgIHBlcnNvbmFsaXphdGlvbjogZmFsc2UsXG4gICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiBmYWxzZSxcbiAgICB0b29sYmFyOiBmYWxzZSxcbiAgICBmb290ZXI6IGZhbHNlLFxuICAgIGZpbHRlckV4cHJlc3Npb246IG51bGwsXG4gICAgZWRpdGluZzogZmFsc2UsXG4gICAgdGltZXpvbmU6IFBDb3JlLmdldEVudmlyb25tZW50SW5mbygpLmdldFRpbWVab25lKClcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJEYXRhQnlEYXRlID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGxldCB2YWx1ZSA9IGl0ZW1bZmlsdGVyT2JqLnJlZl0gIT0gbnVsbCA/PyBpdGVtW2ZpbHRlck9iai5yZWZdICE9ICcnID8gZ2V0U2Vjb25kcyhpdGVtW2ZpbHRlck9iai5yZWZdKSA6IG51bGw7XG4gIGxldCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlICE9IG51bGwgJiYgZmlsdGVyT2JqLmNvbnRhaW5zRmlsdGVyVmFsdWUgIT0gJycgPyBnZXRTZWNvbmRzKGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlKSA6IG51bGw7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdub3RlcXVhbCc6XG4gICAgICAvLyBiZWNhc3VlIGZpbHRlclZhbHVlIGlzIGluIG1pbnV0ZXMsIG5lZWQgdG8gaGF2ZSBhIHJhbmdlIG9mIGxlc3MgdGhhbiA2MCBzZWNvbnNcblxuICAgICAgaWYgKHZhbHVlICE9IG51bGwgJiYgZmlsdGVyVmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAvLyBnZXQgcmlkIG9mIG1pbGxpc2Vjb25zXG4gICAgICAgIHZhbHVlIC89IDEwMDA7XG4gICAgICAgIGZpbHRlclZhbHVlIC89IDEwMDA7XG5cbiAgICAgICAgY29uc3QgZGlmZiA9IHZhbHVlIC0gZmlsdGVyVmFsdWU7XG4gICAgICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IDYwKSB7XG4gICAgICAgICAgYktlZXAgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICBjYXNlICdhZnRlcic6XG4gICAgICBpZiAodmFsdWUgPCBmaWx0ZXJWYWx1ZSkge1xuICAgICAgICBiS2VlcCA9IGZhbHNlO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnYmVmb3JlJzpcbiAgICAgIGlmICh2YWx1ZSA+IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdudWxsJzpcbiAgICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdub3RudWxsJzpcbiAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG5leHBvcnQgY29uc3QgZmlsdGVyRGF0YUJ5Q29tbW9uRmllbGRzID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGNvbnN0IHZhbHVlID0gaXRlbVtmaWx0ZXJPYmoucmVmXS50b0xvd2VyQ2FzZSgpO1xuICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdjb250YWlucyc6XG4gICAgICBpZiAodmFsdWUuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPCAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdlcXVhbHMnOlxuICAgICAgaWYgKHZhbHVlICE9IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdzdGFydHN3aXRoJzpcbiAgICAgIGlmICh2YWx1ZS5pbmRleE9mKGZpbHRlclZhbHVlKSAhPSAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG4vKipcbiAqIFRoaXMgbWV0aG9kIHJldHVybnMgYSBjYWxsQmFjayBmdW5jdGlvbiBmb3IgQWRkIGFjdGlvbi5cbiAqIEBwYXJhbSB7b2JqZWN0fSBwQ29ubmVjdCAtIFBDb25uZWN0IG9iamVjdFxuICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gaW5kZXggb2YgdGhlIHBhZ2UgbGlzdCB0byBhZGRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEFkZFJvd0NhbGxiYWNrID0gKHBDb25uZWN0LCBpbmRleCkgPT4ge1xuICByZXR1cm4gKCkgPT4gcENvbm5lY3QuZ2V0TGlzdEFjdGlvbnMoKS5pbnNlcnQoe30sIGluZGV4KTtcbn07XG5cbi8qKlxuICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIFBDb25uZWN0IG9iamVjdCB3aXRoIHByb3BlciBvcHRpb25zIGZvciBBZGQgYW5kIERlbGV0ZSBhY3Rpb25zXG4gKiBAcGFyYW0ge3N0cmluZ30gY29udGV4dE5hbWUgLSBjb250ZXh0TmFtZVxuICogQHBhcmFtIHtzdHJpbmd9IHJlZmVyZW5jZUxpc3QgLSByZWZlcmVuY2VMaXN0XG4gKiBAcGFyYW0ge3N0cmluZ30gcGFnZVJlZmVyZW5jZSAtIHBhZ2VSZWZlcmVuY2VcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVBDb25uZWN0ID0gKGNvbnRleHROYW1lLCByZWZlcmVuY2VMaXN0LCBwYWdlUmVmZXJlbmNlKSA9PiB7XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgY29udGV4dDogY29udGV4dE5hbWUsXG4gICAgcGFnZVJlZmVyZW5jZSxcbiAgICByZWZlcmVuY2VMaXN0XG4gIH07XG5cbiAgLy8gY3JlYXRlIFBDb25uZWN0IG9iamVjdFxuICBjb25zdCBjb25maWcgPSB7IG1ldGE6IHt9LCBvcHRpb25zIH07XG4gIGNvbnN0IHsgZ2V0UENvbm5lY3QgfSA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KGNvbmZpZyk7XG5cbiAgcmV0dXJuIGdldFBDb25uZWN0KCk7XG59O1xuIl19
|
|
271
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zaW1wbGUtdGFibGUtbWFudWFsL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztBQUV4Qyw0RUFBNEU7QUFDNUUsMEJBQTBCO0FBQzFCLFNBQVMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLO0lBQ2pDLElBQUksS0FBSyxDQUFDO0lBQ1YsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO1FBQ2xCLEtBQUssTUFBTTtZQUNULEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxNQUFNO1lBQ1QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixLQUFLLEdBQUcsR0FBRyxDQUFDO1lBQ1osTUFBTTtRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCLEtBQUssVUFBVTtZQUNiLEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxVQUFVLENBQUM7UUFDaEIsS0FBSyxXQUFXO1lBQ2QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixnREFBZ0Q7WUFDaEQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxN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Li9faGVscGVycy9jb21tb24nO1xuXG5leHBvcnQgY29uc3QgVEFCTEVfQ0VMTCA9ICdTZGtSZW5kZXJlcic7XG5leHBvcnQgY29uc3QgREVMRVRFX0lDT04gPSAnRGVsZXRlSWNvbic7XG5cbi8vIEJVRy02MTUyNTM6IFdvcmthcm91bmQgZm9yIGF1dG9zaXplIGluIHRhYmxlIHdpdGggbGF6eSBsb2FkaW5nIGNvbXBvbmVudHNcbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5mdW5jdGlvbiBnZXRGaWVsZFdpZHRoKGZpZWxkLCBsYWJlbCkge1xuICBsZXQgd2lkdGg7XG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ1RpbWUnOlxuICAgICAgd2lkdGggPSAxNTA7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdEYXRlJzpcbiAgICAgIHdpZHRoID0gMTYwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnRGF0ZVRpbWUnOlxuICAgICAgd2lkdGggPSAyMDU7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdBdXRvQ29tcGxldGUnOlxuICAgIGNhc2UgJ1RleHRBcmVhJzpcbiAgICAgIHdpZHRoID0gMTkwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnQ3VycmVuY3knOlxuICAgIGNhc2UgJ1RleHRJbnB1dCc6XG4gICAgICB3aWR0aCA9IDE4MjtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0NoZWNrYm94JzpcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jYXNlLWRlY2xhcmF0aW9uc1xuICAgICAgY29uc3QgdGV4dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dCk7XG4gICAgICB0ZXh0LnN0eWxlLmZvbnRTaXplID0gJzEzcHgnO1xuICAgICAgdGV4dC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgICB0ZXh0LmlubmVySFRNTCA9IGxhYmVsO1xuICAgICAgd2lkdGggPSBNYXRoLmNlaWwodGV4dC5jbGllbnRXaWR0aCkgKyAzMDtcbiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGV4dCk7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgd2lkdGggPSAxODA7XG4gIH1cbiAgcmV0dXJuIHdpZHRoO1xufVxuXG5leHBvcnQgY29uc3QgZ2V0Q29udGV4dCA9IHRoZVBDb25uID0+IHtcbiAgY29uc3QgY29udGV4dE5hbWUgPSB0aGVQQ29ubi5nZXRDb250ZXh0TmFtZSgpO1xuICBjb25zdCBwYWdlUmVmZXJlbmNlID0gdGhlUENvbm4uZ2V0UGFnZVJlZmVyZW5jZSgpO1xuICBjb25zdCB7IHJlYWRvbmx5Q29udGV4dExpc3QsIHJlZmVyZW5jZUxpc3QgPSByZWFkb25seUNvbnRleHRMaXN0IH0gPSB0aGVQQ29ubi5nZXRTdGF0ZVByb3BzKCk/LmNvbmZpZyB8fCB0aGVQQ29ubi5nZXRTdGF0ZVByb3BzKCk7XG4gIGNvbnN0IHBhZ2VSZWZlcmVuY2VGb3JSb3dzID0gcmVmZXJlbmNlTGlzdC5zdGFydHNXaXRoKCcuJykgPyBgJHtwYWdlUmVmZXJlbmNlfS4ke3JlZmVyZW5jZUxpc3Quc3Vic3RyaW5nKDEpfWAgOiByZWZlcmVuY2VMaXN0O1xuICBjb25zdCB2aWV3TmFtZSA9IHRoZVBDb25uLnZpZXdOYW1lO1xuXG4gIC8vIHJlbW92aW5nIFwiY2FzZUluZm8uY29udGVudFwiIHByZWZpeCB0byBhdm9pZCBzZXR0aW5nIGl0IGFzIGEgdGFyZ2V0IHdoaWxlIHByZXBhcmluZyBwYWdlSW5zdHJ1Y3Rpb25zXG4gIC8vIHNraXBwaW5nIHRoZSByZW1vdmFsIGFzIFN0YXRlTWFjaGluZSBpdHNlbGYgaXMgcmVtb3ZpbmcgdGhpcyBjYXNlIGluZm8gcHJlZml4IHdoaWxlIHByZXBhcmluZyBwYWdlSW5zdHJ1Y3Rpb25zXG4gIC8vIHJlZmVyZW5jZUxpc3QgPSBwYWdlUmVmZXJlbmNlRm9yUm93cy5yZXBsYWNlKFBDb3JlLmdldENvbnN0YW50cygpLkNBU0VfSU5GTy5DQVNFX0lORk9fQ09OVEVOVCwgJycpO1xuXG4gIHJldHVybiB7XG4gICAgY29udGV4dE5hbWUsXG4gICAgcmVmZXJlbmNlTGlzdFN0cjogcmVmZXJlbmNlTGlzdCxcbiAgICBwYWdlUmVmZXJlbmNlRm9yUm93cyxcbiAgICB2aWV3TmFtZVxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVsYXRlUm93S2V5ID0gcmF3RGF0YSA9PiB7XG4gIHJldHVybiByYXdEYXRhLm1hcCgocm93LCBpbmRleCkgPT4ge1xuICAgIHJldHVybiB7IC4uLnJvdywgaW5kZXggfTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QXBpQ29udGV4dCA9IChwcm9jZXNzZWREYXRhLCBwQ29ubmVjdCwgcmVvcmRlckNCKSA9PiB7XG4gIHJldHVybiB7XG4gICAgZmV0Y2hEYXRhOiAoKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgIGRhdGE6IHByb2Nlc3NlZERhdGEsXG4gICAgICAgICAgZmlsdGVyZWRSZWNvcmRDb3VudDogcHJvY2Vzc2VkRGF0YS5sZW5ndGgsXG4gICAgICAgICAgdG90YWxSZWNvcmRDb3VudDogcHJvY2Vzc2VkRGF0YS5sZW5ndGhcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGZldGNoUGVyc29uYWxpemF0aW9uczogKCkgPT4ge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7fSk7XG4gICAgfSxcbiAgICBhcHBseVJvd1Jlb3JkZXI6IChzb3VyY2VLZXksIGRlc3RpbmF0aW9uS2V5KSA9PiB7XG4gICAgICAvLyBpbmRleGVzIGFyZSBrZXlzIGZvciBzaW1wbGUgdGFibGUgc28sIGl0IHNob3VsZCB3b3JrLlxuICAgICAgcmVvcmRlckNCKCk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBDb25uZWN0LmdldExpc3RBY3Rpb25zKCkucmVvcmRlcihwYXJzZUludChzb3VyY2VLZXksIDEwKSwgcGFyc2VJbnQoZGVzdGluYXRpb25LZXksIDEwKSkpO1xuICAgIH1cbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBidWlsZE1ldGFGb3JMaXN0VmlldyA9IChmaWVsZE1ldGFkYXRhLCBmaWVsZHMsIHR5cGUsIHJ1bGVDbGFzcywgbmFtZSwgcHJvcGVydHlMYWJlbCwgaXNEYXRhT2JqZWN0LCBwYXJhbWV0ZXJzKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBjb25maWc6IHtcbiAgICAgIHR5cGUsXG4gICAgICByZWZlcmVuY2VMaXN0OiBmaWVsZE1ldGFkYXRhLmRhdGFzb3VyY2UubmFtZSxcbiAgICAgIHBhcmFtZXRlcnM6IHBhcmFtZXRlcnMgPz8gZmllbGRNZXRhZGF0YS5kYXRhc291cmNlLnBhcmFtZXRlcnMsXG4gICAgICBwZXJzb25hbGl6YXRpb246IGZhbHNlLFxuICAgICAgaXNEYXRhT2JqZWN0LFxuICAgICAgZ3JvdXBpbmc6IHRydWUsXG4gICAgICBnbG9iYWxTZWFyY2g6IHRydWUsXG4gICAgICByZW9yZGVyRmllbGRzOiB0cnVlLFxuICAgICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiB0cnVlLFxuICAgICAgdGl0bGU6IHByb3BlcnR5TGFiZWwsXG4gICAgICBwZXJzb25hbGl6YXRpb25JZDogJycgLyogVE9ETyAqLyxcbiAgICAgIHRlbXBsYXRlOiAnTGlzdFZpZXcnLFxuICAgICAgcHJlc2V0czogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ3ByZXNldHMnLFxuICAgICAgICAgIHRlbXBsYXRlOiAnVGFibGUnLFxuICAgICAgICAgIGNvbmZpZzoge30sXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ0NvbHVtbnMnLFxuICAgICAgICAgICAgICB0eXBlOiAnUmVnaW9uJyxcbiAgICAgICAgICAgICAgY2hpbGRyZW46IGZpZWxkc1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgbGFiZWw6IHByb3BlcnR5TGFiZWwsXG4gICAgICAgICAgaWQ6ICdQXycgLyogVE9ETyAqL1xuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgcnVsZUNsYXNzXG4gICAgfVxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1aWxkRmllbGRzRm9yVGFibGUgPSAoY29uZmlnRmllbGRzLCBmaWVsZHMsIHNob3dEZWxldGVCdXR0b24pID0+IHtcbiAgY29uc3QgZmllbGREZWZzID0gY29uZmlnRmllbGRzPy5tYXAoKGZpZWxkLCBpbmRleCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAndGV4dCcsXG4gICAgICBsYWJlbDogZmllbGRzW2luZGV4XS5jb25maWcubGFiZWwgfHwgZmllbGRzW2luZGV4XS5jb25maWcuY2FwdGlvbixcbiAgICAgIGZpbGxBdmFpbGFibGVTcGFjZTogISFmaWVsZC5jb25maWcuZmlsbEF2YWlsYWJsZVNwYWNlLFxuICAgICAgaWQ6IGAke2luZGV4fWAsXG4gICAgICBuYW1lOiBmaWVsZC5jb25maWcudmFsdWUuc3Vic3RyKDQpLFxuICAgICAgY2VsbFJlbmRlcmVyOiBUQUJMRV9DRUxMLFxuICAgICAgc29ydDogZmFsc2UsXG4gICAgICBub0NvbnRleHRNZW51OiB0cnVlLFxuICAgICAgc2hvd01lbnU6IGZhbHNlLFxuICAgICAgbWV0YToge1xuICAgICAgICAuLi5maWVsZFxuICAgICAgfSxcbiAgICAgIC8vIEJVRy02MTUyNTM6IFdvcmthcm91bmQgZm9yIGF1dG9zaXplIGluIHRhYmxlIHdpdGggbGF6eSBsb2FkaW5nIGNvbXBvbmVudHNcbiAgICAgIHdpZHRoOiBnZXRGaWVsZFdpZHRoKGZpZWxkLCBmaWVsZHNbaW5kZXhdLmNvbmZpZy5sYWJlbClcbiAgICB9O1xuICB9KTtcblxuICAvLyBPTkxZIGFkZCBERUxFVEVfSUNPTiB0byBmaWVsZHMgd2hlbiB0aGUgdGFibGUgaXMgcmVxdWVzdGVkIGFzIEVESVRBQkxFXG4gIGlmIChzaG93RGVsZXRlQnV0dG9uKSB7XG4gICAgZmllbGREZWZzLnB1c2goe1xuICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgbGFiZWw6ICcnLFxuICAgICAgbmFtZTogREVMRVRFX0lDT04sXG4gICAgICBpZDogZmllbGREZWZzLmxlbmd0aCxcbiAgICAgIGNlbGxSZW5kZXJlcjogREVMRVRFX0lDT04sXG4gICAgICBzb3J0OiBmYWxzZSxcbiAgICAgIG5vQ29udGV4dE1lbnU6IHRydWUsXG4gICAgICBzaG93TWVudTogZmFsc2UsXG4gICAgICAvLyBCVUctNjE1MjUzOiBXb3JrYXJvdW5kIGZvciBhdXRvc2l6ZSBpbiB0YWJsZSB3aXRoIGxhenkgbG9hZGluZyBjb21wb25lbnRzXG4gICAgICB3aWR0aDogNDZcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBmaWVsZERlZnM7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWV0YUZvclRhYmxlID0gKGZpZWxkcywgcmVuZGVyTW9kZSkgPT4ge1xuICByZXR1cm4ge1xuICAgIGhlaWdodDoge1xuICAgICAgbWluSGVpZ2h0OiAnYXV0bycsXG4gICAgICBmaXRIZWlnaHRUb0VsZW1lbnQ6ICdmaXRIZWlnaHRUb0VsZW1lbnQnLFxuICAgICAgZGVsdGFBZGp1c3RtZW50OiAnZGVsdGFBZGp1c3RtZW50JyxcbiAgICAgIGF1dG9TaXplOiB0cnVlXG4gICAgfSxcbiAgICBmaWVsZERlZnM6IGZpZWxkcyxcbiAgICBpdGVtS2V5OiAnaW5kZXgnLFxuICAgIGdyb3VwaW5nOiBmYWxzZSxcbiAgICByZW9yZGVyRmllbGRzOiBmYWxzZSxcbiAgICByZW9yZGVySXRlbXM6IHJlbmRlck1vZGUgPT09ICdFZGl0YWJsZScsXG4gICAgZHJhZ0hhbmRsZTogcmVuZGVyTW9kZSA9PT0gJ0VkaXRhYmxlJyxcbiAgICBnbG9iYWxTZWFyY2g6IGZhbHNlLFxuICAgIHBlcnNvbmFsaXphdGlvbjogZmFsc2UsXG4gICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiBmYWxzZSxcbiAgICB0b29sYmFyOiBmYWxzZSxcbiAgICBmb290ZXI6IGZhbHNlLFxuICAgIGZpbHRlckV4cHJlc3Npb246IG51bGwsXG4gICAgZWRpdGluZzogZmFsc2UsXG4gICAgdGltZXpvbmU6IFBDb3JlLmdldEVudmlyb25tZW50SW5mbygpLmdldFRpbWVab25lKClcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJEYXRhQnlEYXRlID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGxldCB2YWx1ZSA9IGl0ZW1bZmlsdGVyT2JqLnJlZl0gIT0gbnVsbCA/PyBpdGVtW2ZpbHRlck9iai5yZWZdICE9ICcnID8gZ2V0U2Vjb25kcyhpdGVtW2ZpbHRlck9iai5yZWZdKSA6IG51bGw7XG4gIGxldCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlICE9IG51bGwgJiYgZmlsdGVyT2JqLmNvbnRhaW5zRmlsdGVyVmFsdWUgIT0gJycgPyBnZXRTZWNvbmRzKGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlKSA6IG51bGw7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdub3RlcXVhbCc6XG4gICAgICAvLyBiZWNhc3VlIGZpbHRlclZhbHVlIGlzIGluIG1pbnV0ZXMsIG5lZWQgdG8gaGF2ZSBhIHJhbmdlIG9mIGxlc3MgdGhhbiA2MCBzZWNvbnNcblxuICAgICAgaWYgKHZhbHVlICE9IG51bGwgJiYgZmlsdGVyVmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAvLyBnZXQgcmlkIG9mIG1pbGxpc2Vjb25zXG4gICAgICAgIHZhbHVlIC89IDEwMDA7XG4gICAgICAgIGZpbHRlclZhbHVlIC89IDEwMDA7XG5cbiAgICAgICAgY29uc3QgZGlmZiA9IHZhbHVlIC0gZmlsdGVyVmFsdWU7XG4gICAgICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IDYwKSB7XG4gICAgICAgICAgYktlZXAgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICBjYXNlICdhZnRlcic6XG4gICAgICBpZiAodmFsdWUgPCBmaWx0ZXJWYWx1ZSkge1xuICAgICAgICBiS2VlcCA9IGZhbHNlO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnYmVmb3JlJzpcbiAgICAgIGlmICh2YWx1ZSA+IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdudWxsJzpcbiAgICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdub3RudWxsJzpcbiAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG5leHBvcnQgY29uc3QgZmlsdGVyRGF0YUJ5Q29tbW9uRmllbGRzID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGNvbnN0IHZhbHVlID0gaXRlbVtmaWx0ZXJPYmoucmVmXS50b0xvd2VyQ2FzZSgpO1xuICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdjb250YWlucyc6XG4gICAgICBpZiAodmFsdWUuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPCAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdlcXVhbHMnOlxuICAgICAgaWYgKHZhbHVlICE9IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdzdGFydHN3aXRoJzpcbiAgICAgIGlmICh2YWx1ZS5pbmRleE9mKGZpbHRlclZhbHVlKSAhPSAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG4vKipcbiAqIFRoaXMgbWV0aG9kIHJldHVybnMgYSBjYWxsQmFjayBmdW5jdGlvbiBmb3IgQWRkIGFjdGlvbi5cbiAqIEBwYXJhbSB7b2JqZWN0fSBwQ29ubmVjdCAtIFBDb25uZWN0IG9iamVjdFxuICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gaW5kZXggb2YgdGhlIHBhZ2UgbGlzdCB0byBhZGRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEFkZFJvd0NhbGxiYWNrID0gKHBDb25uZWN0LCBpbmRleCkgPT4ge1xuICByZXR1cm4gKCkgPT4gcENvbm5lY3QuZ2V0TGlzdEFjdGlvbnMoKS5pbnNlcnQoe30sIGluZGV4KTtcbn07XG5cbi8qKlxuICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIFBDb25uZWN0IG9iamVjdCB3aXRoIHByb3BlciBvcHRpb25zIGZvciBBZGQgYW5kIERlbGV0ZSBhY3Rpb25zXG4gKiBAcGFyYW0ge3N0cmluZ30gY29udGV4dE5hbWUgLSBjb250ZXh0TmFtZVxuICogQHBhcmFtIHtzdHJpbmd9IHJlZmVyZW5jZUxpc3QgLSByZWZlcmVuY2VMaXN0XG4gKiBAcGFyYW0ge3N0cmluZ30gcGFnZVJlZmVyZW5jZSAtIHBhZ2VSZWZlcmVuY2VcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVBDb25uZWN0ID0gKGNvbnRleHROYW1lLCByZWZlcmVuY2VMaXN0LCBwYWdlUmVmZXJlbmNlKSA9PiB7XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgY29udGV4dDogY29udGV4dE5hbWUsXG4gICAgcGFnZVJlZmVyZW5jZSxcbiAgICByZWZlcmVuY2VMaXN0XG4gIH07XG5cbiAgLy8gY3JlYXRlIFBDb25uZWN0IG9iamVjdFxuICBjb25zdCBjb25maWcgPSB7IG1ldGE6IHt9LCBvcHRpb25zIH07XG4gIGNvbnN0IHsgZ2V0UENvbm5lY3QgfSA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KGNvbmZpZyk7XG5cbiAgcmV0dXJuIGdldFBDb25uZWN0KCk7XG59O1xuIl19
|