@valtimo/components 12.7.0 → 12.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/css/formio-carbon.scss +132 -14
- package/esm2022/lib/components/carbon-list/carbon-list.component.mjs +28 -19
- package/esm2022/lib/components/form-io/formio-value-resolver-selector/formio-value-resolver-selector.component.mjs +1 -1
- package/esm2022/lib/components/multi-input/carbon-multi-input.component.mjs +20 -6
- package/esm2022/lib/components/multi-input/components/key-value-path-selector/key-value-path-selector.component.mjs +2 -2
- package/esm2022/lib/components/multi-input/components/value-path-selector-dropdown-value/value-path-selector-dropdown-value.component.mjs +2 -2
- package/esm2022/lib/components/multi-input/components/value-path-selector-value/value-path-selector-value.component.mjs +2 -2
- package/esm2022/lib/components/status-selector/status-selector.component.mjs +3 -3
- package/esm2022/lib/components/value-path-selector/value-path-selector.component.mjs +62 -22
- package/esm2022/lib/models/value-path-selector.model.mjs +7 -2
- package/esm2022/lib/services/value-path-selector.service.mjs +55 -40
- package/fesm2022/valtimo-components.mjs +165 -83
- package/fesm2022/valtimo-components.mjs.map +1 -1
- package/lib/components/carbon-list/carbon-list.component.d.ts.map +1 -1
- package/lib/components/multi-input/carbon-multi-input.component.d.ts +3 -1
- package/lib/components/multi-input/carbon-multi-input.component.d.ts.map +1 -1
- package/lib/components/value-path-selector/value-path-selector.component.d.ts +13 -7
- package/lib/components/value-path-selector/value-path-selector.component.d.ts.map +1 -1
- package/lib/models/value-path-selector.model.d.ts +17 -2
- package/lib/models/value-path-selector.model.d.ts.map +1 -1
- package/lib/services/value-path-selector.service.d.ts +8 -4
- package/lib/services/value-path-selector.service.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -33,6 +33,7 @@ export class CarbonMultiInputComponent {
|
|
|
33
33
|
constructor() {
|
|
34
34
|
this.addRowText = '';
|
|
35
35
|
this.addRowTranslationKey = '';
|
|
36
|
+
this._defaultValues$ = new BehaviorSubject([]);
|
|
36
37
|
this.deleteRowText = '';
|
|
37
38
|
this.deleteRowTranslationKey = '';
|
|
38
39
|
this.disabled = false;
|
|
@@ -73,12 +74,18 @@ export class CarbonMultiInputComponent {
|
|
|
73
74
|
this._amountOfArbitraryValues = value;
|
|
74
75
|
this.amountOfArbitraryValuesArray$.next(this.getArrayOfXLength(value));
|
|
75
76
|
}
|
|
77
|
+
set defaultValues(value) {
|
|
78
|
+
if (!Array.isArray(value))
|
|
79
|
+
return;
|
|
80
|
+
this._defaultValues$.next(value);
|
|
81
|
+
}
|
|
76
82
|
set dropdownItems(value) {
|
|
77
83
|
this.dropdownItems$.next(value);
|
|
78
84
|
}
|
|
79
85
|
ngOnInit() {
|
|
80
86
|
this.values$.next(this.getInitialRows());
|
|
81
87
|
this.openValuesSubscription();
|
|
88
|
+
this.openDefaultValuesSubscription();
|
|
82
89
|
}
|
|
83
90
|
ngOnDestroy() {
|
|
84
91
|
this._subscriptions.unsubscribe();
|
|
@@ -136,10 +143,7 @@ export class CarbonMultiInputComponent {
|
|
|
136
143
|
const minimumRows = this.minimumAmountOfRows;
|
|
137
144
|
const initialRows = this.initialAmountOfRows;
|
|
138
145
|
const amountOfInitialRows = Math.max(minimumRows, initialRows);
|
|
139
|
-
|
|
140
|
-
return new Array(amountOfInitialRows).fill(this.getEmptyValue());
|
|
141
|
-
}
|
|
142
|
-
return this.defaultValues.map(defaultValue => ({ ...defaultValue, uuid: uuidv4() }));
|
|
146
|
+
return new Array(amountOfInitialRows).fill(this.getEmptyValue());
|
|
143
147
|
}
|
|
144
148
|
getEmptyValue() {
|
|
145
149
|
if (this.type === 'arbitraryAmount') {
|
|
@@ -159,7 +163,9 @@ export class CarbonMultiInputComponent {
|
|
|
159
163
|
};
|
|
160
164
|
}
|
|
161
165
|
getMappedValue(valueToMap) {
|
|
162
|
-
if (this.type === 'keyValue' ||
|
|
166
|
+
if (this.type === 'keyValue' ||
|
|
167
|
+
this.type === 'keyValuePathSelector' ||
|
|
168
|
+
this.type === 'valuePathSelectorValue') {
|
|
163
169
|
return { key: valueToMap.key, value: valueToMap.value };
|
|
164
170
|
}
|
|
165
171
|
else if (this.type === 'keyDropdownValue' || this.type === 'valuePathSelectorDropdownValue') {
|
|
@@ -192,6 +198,7 @@ export class CarbonMultiInputComponent {
|
|
|
192
198
|
return !!value;
|
|
193
199
|
case 'keyValue':
|
|
194
200
|
case 'keyValuePathSelector':
|
|
201
|
+
case 'valuePathSelectorValue':
|
|
195
202
|
return !!(value.value || value.key);
|
|
196
203
|
case 'keyDropdownValue':
|
|
197
204
|
case 'valuePathSelectorDropdownValue':
|
|
@@ -206,6 +213,13 @@ export class CarbonMultiInputComponent {
|
|
|
206
213
|
return false;
|
|
207
214
|
}
|
|
208
215
|
}
|
|
216
|
+
openDefaultValuesSubscription() {
|
|
217
|
+
this._subscriptions.add(this._defaultValues$.subscribe(defaultValues => {
|
|
218
|
+
if (defaultValues.length < this.minimumAmountOfRows)
|
|
219
|
+
return;
|
|
220
|
+
this.values$.next(defaultValues.map(defaultValue => ({ ...defaultValue, uuid: uuidv4() })));
|
|
221
|
+
}));
|
|
222
|
+
}
|
|
209
223
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CarbonMultiInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
210
224
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CarbonMultiInputComponent, selector: "valtimo-carbon-multi-input", inputs: { addRowText: "addRowText", addRowTranslationKey: "addRowTranslationKey", arbitraryAmountTitles: "arbitraryAmountTitles", arbitraryValueAmount: "arbitraryValueAmount", defaultValues: "defaultValues", deleteRowText: "deleteRowText", deleteRowTranslationKey: "deleteRowTranslationKey", disabled: "disabled", dropdownColumnTitle: "dropdownColumnTitle", dropdownItems: "dropdownItems", dropdownWidth: "dropdownWidth", fullWidth: "fullWidth", hideAddButton: "hideAddButton", hideDeleteButton: "hideDeleteButton", initialAmountOfRows: "initialAmountOfRows", keyColumnTitle: "keyColumnTitle", margin: "margin", maxRows: "maxRows", minimumAmountOfRows: "minimumAmountOfRows", name: "name", required: "required", title: "title", titleTranslationKey: "titleTranslationKey", tooltip: "tooltip", type: "type", valueColumnTitle: "valueColumnTitle", valuePathSelectorDocumentDefinitionName: "valuePathSelectorDocumentDefinitionName", valuePathSelectorPrefixes: "valuePathSelectorPrefixes", valuePathSelectorShowDocumentDefinitionSelector: "valuePathSelectorShowDocumentDefinitionSelector", valuePathSelectorNotation: "valuePathSelectorNotation", keyColumnFlex: "keyColumnFlex", dropdownColumnFlex: "dropdownColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange", allValuesValidEvent: "allValuesValidEvent" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n *ngIf=\"{\n addRowText:\n addRowText || addRowTranslationKey\n ? addRowTranslationKey\n ? (addRowTranslationKey | translate)\n : addRowText\n : ('interface.addRow' | translate),\n deleteRowText:\n deleteRowText || deleteRowTranslationKey\n ? deleteRowTranslationKey\n ? (deleteRowTranslationKey | translate)\n : deleteRowText\n : ('interface.deleteRow' | translate),\n } as vars\"\n [ngClass]=\"{'v-multi-input--margin': margin, 'v-multi-input--no-delete-button': hideDeleteButton}\"\n class=\"v-multi-input\"\n>\n <v-input-label\n *ngIf=\"title || titleTranslationKey\"\n [name]=\"name\"\n [required]=\"required\"\n [titleTranslationKey]=\"titleTranslationKey\"\n [title]=\"title\"\n [tooltip]=\"tooltip\"\n >\n </v-input-label>\n\n <div class=\"v-multi-input__rows\">\n <div\n *ngFor=\"let value of values$ | async as values; trackBy: trackByFn; index as i\"\n class=\"v-multi-input__row\"\n >\n @switch (type) {\n @case ('value') {\n <valtimo-single-value\n [value]=\"value\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event.value, $event.inputValue, 'value')\"\n ></valtimo-single-value>\n }\n @case ('keyValue') {\n <valtimo-key-value\n [keyColumnTitle]=\"keyColumnTitle\"\n [valueColumnTitle]=\"valueColumnTitle\"\n [index]=\"i\"\n [value]=\"value\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n [keyColumnFlex]=\"keyColumnFlex\"\n [valueColumnFlex]=\"valueColumnFlex\"\n (valueChange)=\"onValueChange($event.value, $event.inputValue, $event.type)\"\n ></valtimo-key-value>\n }\n @case ('keyDropdownValue') {\n <valtimo-key-dropdown-value\n [keyColumnTitle]=\"keyColumnTitle\"\n [valueColumnTitle]=\"valueColumnTitle\"\n [dropdownColumnTitle]=\"dropdownColumnTitle\"\n [index]=\"i\"\n [value]=\"value\"\n [dropdownItems$]=\"getDropdownItemsForRow(i)\"\n [dropdownWidth]=\"dropdownWidth\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n [keyColumnFlex]=\"keyColumnFlex\"\n [dropdownColumnFlex]=\"dropdownColumnFlex\"\n [valueColumnFlex]=\"valueColumnFlex\"\n (valueChange)=\"onValueChange($event.value, $event.inputValue, $event.type)\"\n ></valtimo-key-dropdown-value>\n }\n @case ('arbitraryAmount') {\n <valtimo-arbitrary-amount-value\n [index]=\"i\"\n [value]=\"value\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n [arbitraryAmountTitles]=\"arbitraryAmountTitles\"\n [amountOfArbitraryValuesArray$]=\"amountOfArbitraryValuesArray$\"\n (valueChange)=\"\n onValueChange($event.value, $event.inputValue, $event.type, $event.arbitraryIndex)\n \"\n ></valtimo-arbitrary-amount-value>\n }\n @case ('keyValuePathSelector') {\n <valtimo-key-value-path-selector\n [keyColumnTitle]=\"keyColumnTitle\"\n [valueColumnTitle]=\"valueColumnTitle\"\n [index]=\"i\"\n [value]=\"value\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n [documentDefinitionName]=\"valuePathSelectorDocumentDefinitionName\"\n [prefixes]=\"valuePathSelectorPrefixes\"\n [showDocumentDefinitionSelector]=\"valuePathSelectorShowDocumentDefinitionSelector\"\n [notation]=\"valuePathSelectorNotation\"\n [keyColumnFlex]=\"keyColumnFlex\"\n [valueColumnFlex]=\"valueColumnFlex\"\n (valueChange)=\"onValueChange($event.value, $event.inputValue, $event.type)\"\n ></valtimo-key-value-path-selector>\n }\n @case ('valuePathSelectorValue') {\n <valtimo-value-path-selector-value\n [keyColumnTitle]=\"keyColumnTitle\"\n [valueColumnTitle]=\"valueColumnTitle\"\n [index]=\"i\"\n [value]=\"value\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n [documentDefinitionName]=\"valuePathSelectorDocumentDefinitionName\"\n [prefixes]=\"valuePathSelectorPrefixes\"\n [showDocumentDefinitionSelector]=\"valuePathSelectorShowDocumentDefinitionSelector\"\n [notation]=\"valuePathSelectorNotation\"\n [keyColumnFlex]=\"keyColumnFlex\"\n [valueColumnFlex]=\"valueColumnFlex\"\n (valueChange)=\"onValueChange($event.value, $event.inputValue, $event.type)\"\n ></valtimo-value-path-selector-value>\n }\n @case ('valuePathSelectorDropdownValue') {\n <valtimo-value-path-selector-dropdown-value\n [keyColumnTitle]=\"keyColumnTitle\"\n [dropdownColumnTitle]=\"dropdownColumnTitle\"\n [valueColumnTitle]=\"valueColumnTitle\"\n [index]=\"i\"\n [value]=\"value\"\n [fullWidth]=\"fullWidth\"\n [disabled]=\"disabled\"\n [documentDefinitionName]=\"valuePathSelectorDocumentDefinitionName\"\n [prefixes]=\"valuePathSelectorPrefixes\"\n [dropdownItems$]=\"getDropdownItemsForRow(i)\"\n [dropdownWidth]=\"dropdownWidth\"\n [showDocumentDefinitionSelector]=\"valuePathSelectorShowDocumentDefinitionSelector\"\n [notation]=\"valuePathSelectorNotation\"\n [keyColumnFlex]=\"keyColumnFlex\"\n [dropdownColumnFlex]=\"dropdownColumnFlex\"\n [valueColumnFlex]=\"valueColumnFlex\"\n (valueChange)=\"onValueChange($event.value, $event.inputValue, $event.type)\"\n ></valtimo-value-path-selector-dropdown-value>\n }\n }\n\n <button\n *ngIf=\"!hideDeleteButton\"\n cdsButton=\"danger\"\n [disabled]=\"values?.length <= this.minimumAmountOfRows || disabled\"\n [iconOnly]=\"true\"\n size=\"md\"\n (click)=\"deleteRow(value.uuid)\"\n [title]=\"vars.deleteRowText\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </div>\n\n <div class=\"v-multi-input__add-button\">\n <button\n *ngIf=\"!hideAddButton\"\n cdsButton=\"primary\"\n size=\"md\"\n [disabled]=\"(addRowEnabled$ | async) === false || disabled\"\n (click)=\"addRow()\"\n >\n {{ vars.addRowText }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n </div>\n </div>\n</div>\n", styles: [".v-multi-input--margin{margin-block-end:var(--v-input-margin)}.v-multi-input__row{display:flex;flex-direction:row;align-items:flex-end;margin-block-end:var(--v-multi-input-row-spacing-block)}.v-multi-input__input{margin-inline-end:var(--v-multi-input-input-spacing-inline)}.v-multi-input__input.--full-width{flex:1}.v-multi-input__separator{height:40px;width:12px;display:flex;justify-content:flex-start}.v-multi-input__separator:before{content:\"\";height:100%;width:1px;background-color:var(--cds-border-subtle-selected)}.v-multi-input--no-delete-button .v-multi-input__input:last-child{margin-inline-end:0}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "noMargin", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "directive", type: i3.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i3.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i4.KeyValueComponent, selector: "valtimo-key-value", inputs: ["keyColumnTitle", "valueColumnTitle", "index", "value", "fullWidth", "disabled", "keyColumnFlex", "valueColumnFlex"], outputs: ["valueChange"] }, { kind: "component", type: i5.SingleValueComponent, selector: "valtimo-single-value", inputs: ["value", "fullWidth", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: i6.KeyDropdownValueComponent, selector: "valtimo-key-dropdown-value", inputs: ["keyColumnTitle", "valueColumnTitle", "dropdownColumnTitle", "index", "value", "dropdownItems$", "dropdownWidth", "fullWidth", "disabled", "keyColumnFlex", "dropdownColumnFlex", "valueColumnFlex"], outputs: ["valueChange"] }, { kind: "component", type: i7.ArbitraryAmountValueComponent, selector: "valtimo-arbitrary-amount-value", inputs: ["index", "value", "fullWidth", "disabled", "arbitraryAmountTitles", "amountOfArbitraryValuesArray$"], outputs: ["valueChange"] }, { kind: "component", type: i8.KeyValuePathSelectorComponent, selector: "valtimo-key-value-path-selector", inputs: ["keyColumnTitle", "valueColumnTitle", "index", "value", "fullWidth", "disabled", "documentDefinitionName", "prefixes", "showDocumentDefinitionSelector", "notation", "keyColumnFlex", "valueColumnFlex"], outputs: ["valueChange"] }, { kind: "component", type: i9.ValuePathSelectorValueComponent, selector: "valtimo-value-path-selector-value", inputs: ["keyColumnTitle", "valueColumnTitle", "index", "value", "fullWidth", "disabled", "documentDefinitionName", "prefixes", "showDocumentDefinitionSelector", "notation", "keyColumnFlex", "valueColumnFlex"], outputs: ["valueChange"] }, { kind: "component", type: i10.ValuePathSelectorDropdownValueComponent, selector: "valtimo-value-path-selector-dropdown-value", inputs: ["keyColumnTitle", "valueColumnTitle", "dropdownColumnTitle", "index", "value", "dropdownItems$", "documentDefinitionName", "prefixes", "showDocumentDefinitionSelector", "notation", "dropdownWidth", "fullWidth", "disabled", "keyColumnFlex", "dropdownColumnFlex", "valueColumnFlex"], outputs: ["valueChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
211
225
|
}
|
|
@@ -283,4 +297,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
283
297
|
}], allValuesValidEvent: [{
|
|
284
298
|
type: Output
|
|
285
299
|
}] } });
|
|
286
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyYm9uLW11bHRpLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY2FyYm9uLW11bHRpLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY2FyYm9uLW11bHRpLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFZdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxHQUFHLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLEVBQUUsSUFBSSxNQUFNLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFRbEMsTUFBTSxPQUFPLHlCQUF5QjtJQU50QztRQU9rQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLHlCQUFvQixHQUFHLEVBQUUsQ0FBQztRQU8xQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQiw0QkFBdUIsR0FBRyxFQUFFLENBQUM7UUFDN0IsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQix3QkFBbUIsR0FBRyxFQUFFLENBQUM7UUFJekIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFDcEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixxQkFB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eXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFyYml0cmFyeUlucHV0VGl0bGVzLFxuICBMaXN0SXRlbVdpdGhJZCxcbiAgTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZSxcbiAgTXVsdGlJbnB1dEtleVZhbHVlLFxuICBNdWx0aUlucHV0T3V0cHV0LFxuICBNdWx0aUlucHV0VHlwZSxcbiAgTXVsdGlJbnB1dFZhbHVlcyxcbiAgVmFsdWVQYXRoU2VsZWN0b3JOb3RhdGlvbixcbiAgVmFsdWVQYXRoU2VsZWN0b3JQcmVmaXgsXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge3Y0IGFzIHV1aWR2NH0gZnJvbSAndXVpZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tY2FyYm9uLW11bHRpLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmJvbi1tdWx0aS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmJvbi1tdWx0aS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJib25NdWx0aUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwdWJsaWMgYWRkUm93VGV4dCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYWRkUm93VHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGFyYml0cmFyeUFtb3VudFRpdGxlcyE6IEFyYml0cmFyeUlucHV0VGl0bGVzO1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IGFyYml0cmFyeVZhbHVlQW1vdW50KHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9hbW91bnRPZkFyYml0cmFyeVZhbHVlcyA9IHZhbHVlO1xuICAgIHRoaXMuYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSQubmV4dCh0aGlzLmdldEFycmF5T2ZYTGVuZ3RoKHZhbHVlKSk7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIGRlZmF1bHRWYWx1ZXMhOiBNdWx0aUlucHV0VmFsdWVzO1xuICBASW5wdXQoKSBwdWJsaWMgZGVsZXRlUm93VGV4dCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgZGVsZXRlUm93VHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBkcm9wZG93bkNvbHVtblRpdGxlID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgZHJvcGRvd25JdGVtcyh2YWx1ZTogQXJyYXk8TGlzdEl0ZW1XaXRoSWQ+KSB7XG4gICAgdGhpcy5kcm9wZG93bkl0ZW1zJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgZHJvcGRvd25XaWR0aCA9IDI1MDtcbiAgQElucHV0KCkgcHVibGljIGZ1bGxXaWR0aCA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgaGlkZUFkZEJ1dHRvbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgaGlkZURlbGV0ZUJ1dHRvbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgaW5pdGlhbEFtb3VudE9mUm93cyA9IDE7XG4gIEBJbnB1dCgpIHB1YmxpYyBrZXlDb2x1bW5UaXRsZSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgbWFyZ2luID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhSb3dzID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIG1pbmltdW1BbW91bnRPZlJvd3MgPSAxO1xuICBASW5wdXQoKSBwdWJsaWMgbmFtZSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHRpdGxlID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyB0aXRsZVRyYW5zbGF0aW9uS2V5ID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sdGlwID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlOiBNdWx0aUlucHV0VHlwZSA9ICd2YWx1ZSc7XG4gIEBJbnB1dCgpIHB1YmxpYyB2YWx1ZUNvbHVtblRpdGxlID0gJyc7XG5cbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlczogVmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhbXSA9IFtdO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVQYXRoU2VsZWN0b3JTaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3IgPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb246IFZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb24gPSAnZG90cyc7XG5cbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IGtleUNvbHVtbkZsZXggPSAxO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgZHJvcGRvd25Db2x1bW5GbGV4ID0gMTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHZhbHVlQ29sdW1uRmxleCA9IDE7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPE11bHRpSW5wdXRPdXRwdXQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgcHVibGljIGFsbFZhbHVlc1ZhbGlkRXZlbnQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwcml2YXRlIF9hbW91bnRPZkFyYml0cmFyeVZhbHVlcyE6IG51bWJlcjtcbiAgcHVibGljIHJlYWRvbmx5IGFtb3VudE9mQXJiaXRyYXJ5VmFsdWVzQXJyYXkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTwwPj4oW10pO1xuXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNdWx0aUlucHV0VmFsdWVzPihbXSk7XG4gIHB1YmxpYyByZWFkb25seSBtYXBwZWRWYWx1ZXMkOiBPYnNlcnZhYmxlPE11bHRpSW5wdXRPdXRwdXQ+ID0gdGhpcy52YWx1ZXMkLnBpcGUoXG4gICAgbWFwKHZhbHVlcyA9PiB0aGlzLmZpbHRlckFuZE1hcFZhbHVlcyh2YWx1ZXMpKVxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgYWRkUm93RW5hYmxlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnZhbHVlcyQucGlwZShcbiAgICBtYXAodmFsdWVzID0+ICEhKHRoaXMubWF4Um93cyA9PT0gbnVsbCB8fCB2YWx1ZXMubGVuZ3RoIDwgdGhpcy5tYXhSb3dzKSlcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZHJvcGRvd25JdGVtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFycmF5PExpc3RJdGVtV2l0aElkPj4oW10pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVzJC5uZXh0KHRoaXMuZ2V0SW5pdGlhbFJvd3MoKSk7XG4gICAgdGhpcy5vcGVuVmFsdWVzU3Vic2NyaXB0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGFkZFJvdygpOiB2b2lkIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnZhbHVlcyQsIHRoaXMuYWRkUm93RW5hYmxlZCRdKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKFt2YWx1ZXMsIGFkZFJvd0VuYWJsZWRdKSA9PiB7XG4gICAgICAgIGlmIChhZGRSb3dFbmFibGVkKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZXMkLm5leHQoWy4uLnZhbHVlcywgdGhpcy5nZXRFbXB0eVZhbHVlKCldKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlUm93KHV1aWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSh2YWx1ZXMgPT4ge1xuICAgICAgaWYgKHZhbHVlcy5sZW5ndGggPiB0aGlzLm1pbmltdW1BbW91bnRPZlJvd3MpIHtcbiAgICAgICAgdGhpcy52YWx1ZXMkLm5leHQodmFsdWVzLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZS51dWlkICE9PSB1dWlkKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdHJhY2tCeUZuKF86IG51bWJlciwgdmFsdWU6IE11bHRpSW5wdXRLZXlWYWx1ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnV1aWQgYXMgc3RyaW5nO1xuICB9XG5cbiAgcHVibGljIGdldERyb3Bkb3duSXRlbXNGb3JSb3coaW5kZXg6IG51bWJlcik6IE9ic2VydmFibGU8QXJyYXk8TGlzdEl0ZW1XaXRoSWQ+PiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3RoaXMuZHJvcGRvd25JdGVtcyQsIHRoaXMudmFsdWVzJF0pLnBpcGUoXG4gICAgICBtYXAoKFtkcm9wZG93bkl0ZW1zLCB2YWx1ZXNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IHZhbHVlc1tpbmRleF0gfHwgdGhpcy5kZWZhdWx0VmFsdWVzW2luZGV4XTtcblxuICAgICAgICByZXR1cm4gZHJvcGRvd25JdGVtcy5tYXAoZHJvcGRvd25JdGVtID0+ICh7XG4gICAgICAgICAgLi4uZHJvcGRvd25JdGVtLFxuICAgICAgICAgIHNlbGVjdGVkOiBkZWZhdWx0VmFsdWUgPyBkcm9wZG93bkl0ZW0uaWQgPT09IGRlZmF1bHRWYWx1ZS5kcm9wZG93biA6IGZhbHNlLFxuICAgICAgICB9KSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25WYWx1ZUNoYW5nZShcbiAgICB0ZW1wbGF0ZVZhbHVlOiBNdWx0aUlucHV0S2V5VmFsdWUsXG4gICAgaW5wdXRWYWx1ZTogc3RyaW5nLFxuICAgIGNoYW5nZTogTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZSxcbiAgICBhcmJpdHJhcnlJbmRleD86IG51bWJlclxuICApOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlcyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgIHRoaXMudmFsdWVzJC5uZXh0KFxuICAgICAgICB2YWx1ZXMubWFwKHN0YXRlVmFsdWUgPT4ge1xuICAgICAgICAgIGlmIChzdGF0ZVZhbHVlLnV1aWQgPT09IHRlbXBsYXRlVmFsdWUudXVpZCkge1xuICAgICAgICAgICAgaWYgKGNoYW5nZSA9PT0gJ3ZhbHVlJykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIHZhbHVlOiBpbnB1dFZhbHVlfTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hhbmdlID09PSAna2V5Jykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIGtleTogaW5wdXRWYWx1ZX07XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoYW5nZSA9PT0gJ2Ryb3Bkb3duJykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIGRyb3Bkb3duOiBpbnB1dFZhbHVlfTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hhbmdlID09PSAnYXJiaXRyYXJ5Jykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIFthcmJpdHJhcnlJbmRleF06IGlucHV0VmFsdWV9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc3RhdGVWYWx1ZTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEluaXRpYWxSb3dzKCk6IE11bHRpSW5wdXRWYWx1ZXMge1xuICAgIGNvbnN0IG1pbmltdW1Sb3dzID0gdGhpcy5taW5pbXVtQW1vdW50T2ZSb3dzO1xuICAgIGNvbnN0IGluaXRpYWxSb3dzID0gdGhpcy5pbml0aWFsQW1vdW50T2ZSb3dzO1xuICAgIGNvbnN0IGFtb3VudE9mSW5pdGlhbFJvd3MgPSBNYXRoLm1heChtaW5pbXVtUm93cywgaW5pdGlhbFJvd3MpO1xuXG4gICAgaWYgKCF0aGlzLmRlZmF1bHRWYWx1ZXMpIHtcbiAgICAgIHJldHVybiBuZXcgQXJyYXkoYW1vdW50T2ZJbml0aWFsUm93cykuZmlsbCh0aGlzLmdldEVtcHR5VmFsdWUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFZhbHVlcy5tYXAoZGVmYXVsdFZhbHVlID0+ICh7Li4uZGVmYXVsdFZhbHVlLCB1dWlkOiB1dWlkdjQoKX0pKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RW1wdHlWYWx1ZSgpOiBNdWx0aUlucHV0S2V5VmFsdWUge1xuICAgIGlmICh0aGlzLnR5cGUgPT09ICdhcmJpdHJhcnlBbW91bnQnKSB7XG4gICAgICBjb25zdCBlbXB0eVZhbHVlID0ge1xuICAgICAgICB1dWlkOiB1dWlkdjQoKSxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuZ2V0QXJyYXlPZlhMZW5ndGgodGhpcy5fYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXMpLmZvckVhY2goKF8sIGluZGV4KSA9PiB7XG4gICAgICAgIGVtcHR5VmFsdWVbYCR7aW5kZXh9YF0gPSAnJztcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gZW1wdHlWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAga2V5OiAnJyxcbiAgICAgIHZhbHVlOiAnJyxcbiAgICAgIHV1aWQ6IHV1aWR2NCgpLFxuICAgICAgZHJvcGRvd246ICcnLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldE1hcHBlZFZhbHVlKHZhbHVlVG9NYXA6IE11bHRpSW5wdXRLZXlWYWx1ZSk6IE11bHRpSW5wdXRLZXlWYWx1ZSB8IHN0cmluZyB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ2tleVZhbHVlJyB8fCB0aGlzLnR5cGUgPT09ICdrZXlWYWx1ZVBhdGhTZWxlY3RvcicpIHtcbiAgICAgIHJldHVybiB7a2V5OiB2YWx1ZVRvTWFwLmtleSwgdmFsdWU6IHZhbHVlVG9NYXAudmFsdWV9O1xuICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09PSAna2V5RHJvcGRvd25WYWx1ZScgfHwgdGhpcy50eXBlID09PSAndmFsdWVQYXRoU2VsZWN0b3JEcm9wZG93blZhbHVlJykge1xuICAgICAgcmV0dXJuIHtrZXk6IHZhbHVlVG9NYXAua2V5LCB2YWx1ZTogdmFsdWVUb01hcC52YWx1ZSwgZHJvcGRvd246IHZhbHVlVG9NYXAuZHJvcGRvd259O1xuICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09PSAnYXJiaXRyYXJ5QW1vdW50Jykge1xuICAgICAgY29uc3Qgb2JqQ29weSA9IHsuLi52YWx1ZVRvTWFwfTtcbiAgICAgIGRlbGV0ZSBvYmpDb3B5LnV1aWQ7XG4gICAgICByZXR1cm4gb2JqQ29weTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWVUb01hcC52YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblZhbHVlc1N1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMudmFsdWVzJCwgdGhpcy5tYXBwZWRWYWx1ZXMkXSkuc3Vic2NyaWJlKChbdmFsdWVzLCBtYXBwZWRWYWx1ZXNdKSA9PiB7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChtYXBwZWRWYWx1ZXMpO1xuICAgICAgICB0aGlzLmFsbFZhbHVlc1ZhbGlkRXZlbnQuZW1pdCh2YWx1ZXMubGVuZ3RoID09PSBtYXBwZWRWYWx1ZXMubGVuZ3RoKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QXJyYXlPZlhMZW5ndGgobGVuZ3RoOiBudW1iZXIpOiAwW10ge1xuICAgIHJldHVybiBBcnJheShsZW5ndGgpLmZpbGwoMCk7XG4gIH1cblxuICBwcml2YXRlIGZpbHRlckFuZE1hcFZhbHVlcyh2YWx1ZXM6IE11bHRpSW5wdXRWYWx1ZXMpOiBNdWx0aUlucHV0T3V0cHV0IHtcbiAgICByZXR1cm4gdmFsdWVzXG4gICAgICAubWFwKHZhbHVlID0+IHRoaXMuZ2V0TWFwcGVkVmFsdWUodmFsdWUpKVxuICAgICAgLmZpbHRlcih2YWx1ZSA9PiB0aGlzLmlzVmFsdWVWYWxpZCh2YWx1ZSkpIGFzIE11bHRpSW5wdXRPdXRwdXQ7XG4gIH1cblxuICBwcml2YXRlIGlzVmFsdWVWYWxpZCh2YWx1ZTogTXVsdGlJbnB1dEtleVZhbHVlIHwgc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgIGNhc2UgJ3ZhbHVlJzpcbiAgICAgICAgcmV0dXJuICEhdmFsdWU7XG4gICAgICBjYXNlICdrZXlWYWx1ZSc6XG4gICAgICBjYXNlICdrZXlWYWx1ZVBhdGhTZWxlY3Rvcic6XG4gICAgICAgIHJldHVybiAhISgodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS52YWx1ZSB8fCAodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS5rZXkpO1xuICAgICAgY2FzZSAna2V5RHJvcGRvd25WYWx1ZSc6XG4gICAgICBjYXNlICd2YWx1ZVBhdGhTZWxlY3RvckRyb3Bkb3duVmFsdWUnOlxuICAgICAgICByZXR1cm4gISEoXG4gICAgICAgICAgKHZhbHVlIGFzIE11bHRpSW5wdXRLZXlWYWx1ZSkudmFsdWUgJiZcbiAgICAgICAgICAodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS5rZXkgJiZcbiAgICAgICAgICAodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS5kcm9wZG93blxuICAgICAgICApO1xuICAgICAgY2FzZSAnYXJiaXRyYXJ5QW1vdW50JzpcbiAgICAgICAgY29uc3Qgb2JqZWN0VmFsdWVzID0gT2JqZWN0LnZhbHVlcyh2YWx1ZSBhcyBNdWx0aUlucHV0S2V5VmFsdWUpO1xuICAgICAgICBjb25zdCBwb3NpdGl2ZVZhbHVlc0Ftb3VudCA9IG9iamVjdFZhbHVlcy5maWx0ZXIob2JqZWN0VmFsdWUgPT4gISFvYmplY3RWYWx1ZSk7XG4gICAgICAgIHJldHVybiBvYmplY3RWYWx1ZXMubGVuZ3RoID09PSBwb3NpdGl2ZVZhbHVlc0Ftb3VudC5sZW5ndGg7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXZcbiAgKm5nSWY9XCJ7XG4gICAgYWRkUm93VGV4dDpcbiAgICAgIGFkZFJvd1RleHQgfHwgYWRkUm93VHJhbnNsYXRpb25LZXlcbiAgICAgICAgPyBhZGRSb3dUcmFuc2xhdGlvbktleVxuICAgICAgICAgID8gKGFkZFJvd1RyYW5zbGF0aW9uS2V5IHwgdHJhbnNsYXRlKVxuICAgICAgICAgIDogYWRkUm93VGV4dFxuICAgICAgICA6ICgnaW50ZXJmYWNlLmFkZFJvdycgfCB0cmFuc2xhdGUpLFxuICAgIGRlbGV0ZVJvd1RleHQ6XG4gICAgICBkZWxldGVSb3dUZXh0IHx8IGRlbGV0ZVJvd1RyYW5zbGF0aW9uS2V5XG4gICAgICAgID8gZGVsZXRlUm93VHJhbnNsYXRpb25LZXlcbiAgICAgICAgICA/IChkZWxldGVSb3dUcmFuc2xhdGlvbktleSB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICA6IGRlbGV0ZVJvd1RleHRcbiAgICAgICAgOiAoJ2ludGVyZmFjZS5kZWxldGVSb3cnIHwgdHJhbnNsYXRlKSxcbiAgfSBhcyB2YXJzXCJcbiAgW25nQ2xhc3NdPVwieyd2LW11bHRpLWlucHV0LS1tYXJnaW4nOiBtYXJnaW4sICd2LW11bHRpLWlucHV0LS1uby1kZWxldGUtYnV0dG9uJzogaGlkZURlbGV0ZUJ1dHRvbn1cIlxuICBjbGFzcz1cInYtbXVsdGktaW5wdXRcIlxuPlxuICA8di1pbnB1dC1sYWJlbFxuICAgICpuZ0lmPVwidGl0bGUgfHwgdGl0bGVUcmFuc2xhdGlvbktleVwiXG4gICAgW25hbWVdPVwibmFtZVwiXG4gICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbdGl0bGVUcmFuc2xhdGlvbktleV09XCJ0aXRsZVRyYW5zbGF0aW9uS2V5XCJcbiAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgIFt0b29sdGlwXT1cInRvb2x0aXBcIlxuICA+XG4gIDwvdi1pbnB1dC1sYWJlbD5cblxuICA8ZGl2IGNsYXNzPVwidi1tdWx0aS1pbnB1dF9fcm93c1wiPlxuICAgIDxkaXZcbiAgICAgICpuZ0Zvcj1cImxldCB2YWx1ZSBvZiB2YWx1ZXMkIHwgYXN5bmMgYXMgdmFsdWVzOyB0cmFja0J5OiB0cmFja0J5Rm47IGluZGV4IGFzIGlcIlxuICAgICAgY2xhc3M9XCJ2LW11bHRpLWlucHV0X19yb3dcIlxuICAgID5cbiAgICAgIEBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgQGNhc2UgKCd2YWx1ZScpIHtcbiAgICAgICAgICA8dmFsdGltby1zaW5nbGUtdmFsdWVcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICBbZnVsbFdpZHRoXT1cImZ1bGxXaWR0aFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJ3ZhbHVlJylcIlxuICAgICAgICAgID48L3ZhbHRpbW8tc2luZ2xlLXZhbHVlPlxuICAgICAgICB9XG4gICAgICAgIEBjYXNlICgna2V5VmFsdWUnKSB7XG4gICAgICAgICAgPHZhbHRpbW8ta2V5LXZhbHVlXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtrZXlDb2x1bW5GbGV4XT1cImtleUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uRmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJGV2ZW50LnR5cGUpXCJcbiAgICAgICAgICA+PC92YWx0aW1vLWtleS12YWx1ZT5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoJ2tleURyb3Bkb3duVmFsdWUnKSB7XG4gICAgICAgICAgPHZhbHRpbW8ta2V5LWRyb3Bkb3duLXZhbHVlXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbZHJvcGRvd25Db2x1bW5UaXRsZV09XCJkcm9wZG93bkNvbHVtblRpdGxlXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJpXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICBbZHJvcGRvd25JdGVtcyRdPVwiZ2V0RHJvcGRvd25JdGVtc0ZvclJvdyhpKVwiXG4gICAgICAgICAgICBbZHJvcGRvd25XaWR0aF09XCJkcm9wZG93bldpZHRoXCJcbiAgICAgICAgICAgIFtmdWxsV2lkdGhdPVwiZnVsbFdpZHRoXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICBba2V5Q29sdW1uRmxleF09XCJrZXlDb2x1bW5GbGV4XCJcbiAgICAgICAgICAgIFtkcm9wZG93bkNvbHVtbkZsZXhdPVwiZHJvcGRvd25Db2x1bW5GbGV4XCJcbiAgICAgICAgICAgIFt2YWx1ZUNvbHVtbkZsZXhdPVwidmFsdWVDb2x1bW5GbGV4XCJcbiAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudC52YWx1ZSwgJGV2ZW50LmlucHV0VmFsdWUsICRldmVudC50eXBlKVwiXG4gICAgICAgICAgPjwvdmFsdGltby1rZXktZHJvcGRvd24tdmFsdWU+XG4gICAgICAgIH1cbiAgICAgICAgQGNhc2UgKCdhcmJpdHJhcnlBbW91bnQnKSB7XG4gICAgICAgICAgPHZhbHRpbW8tYXJiaXRyYXJ5LWFtb3VudC12YWx1ZVxuICAgICAgICAgICAgW2luZGV4XT1cImlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgIFtmdWxsV2lkdGhdPVwiZnVsbFdpZHRoXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICBbYXJiaXRyYXJ5QW1vdW50VGl0bGVzXT1cImFyYml0cmFyeUFtb3VudFRpdGxlc1wiXG4gICAgICAgICAgICBbYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSRdPVwiYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSRcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIlxuICAgICAgICAgICAgICBvblZhbHVlQ2hhbmdlKCRldmVudC52YWx1ZSwgJGV2ZW50LmlucHV0VmFsdWUsICRldmVudC50eXBlLCAkZXZlbnQuYXJiaXRyYXJ5SW5kZXgpXG4gICAgICAgICAgICBcIlxuICAgICAgICAgID48L3ZhbHRpbW8tYXJiaXRyYXJ5LWFtb3VudC12YWx1ZT5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoJ2tleVZhbHVlUGF0aFNlbGVjdG9yJykge1xuICAgICAgICAgIDx2YWx0aW1vLWtleS12YWx1ZS1wYXRoLXNlbGVjdG9yXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cInZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgICAgICAgICBbcHJlZml4ZXNdPVwidmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlc1wiXG4gICAgICAgICAgICBbc2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXT1cInZhbHVlUGF0aFNlbGVjdG9yU2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXCJcbiAgICAgICAgICAgIFtub3RhdGlvbl09XCJ2YWx1ZVBhdGhTZWxlY3Rvck5vdGF0aW9uXCJcbiAgICAgICAgICAgIFtrZXlDb2x1bW5GbGV4XT1cImtleUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uRmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJGV2ZW50LnR5cGUpXCJcbiAgICAgICAgICA+PC92YWx0aW1vLWtleS12YWx1ZS1wYXRoLXNlbGVjdG9yPlxuICAgICAgICB9XG4gICAgICAgIEBjYXNlICgndmFsdWVQYXRoU2VsZWN0b3JWYWx1ZScpIHtcbiAgICAgICAgICA8dmFsdGltby12YWx1ZS1wYXRoLXNlbGVjdG9yLXZhbHVlXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cInZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgICAgICAgICBbcHJlZml4ZXNdPVwidmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlc1wiXG4gICAgICAgICAgICBbc2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXT1cInZhbHVlUGF0aFNlbGVjdG9yU2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXCJcbiAgICAgICAgICAgIFtub3RhdGlvbl09XCJ2YWx1ZVBhdGhTZWxlY3Rvck5vdGF0aW9uXCJcbiAgICAgICAgICAgIFtrZXlDb2x1bW5GbGV4XT1cImtleUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uRmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJGV2ZW50LnR5cGUpXCJcbiAgICAgICAgICA+PC92YWx0aW1vLXZhbHVlLXBhdGgtc2VsZWN0b3ItdmFsdWU+XG4gICAgICAgIH1cbiAgICAgICAgQGNhc2UgKCd2YWx1ZVBhdGhTZWxlY3RvckRyb3Bkb3duVmFsdWUnKSB7XG4gICAgICAgICAgPHZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZVxuICAgICAgICAgICAgW2tleUNvbHVtblRpdGxlXT1cImtleUNvbHVtblRpdGxlXCJcbiAgICAgICAgICAgIFtkcm9wZG93bkNvbHVtblRpdGxlXT1cImRyb3Bkb3duQ29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cInZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgICAgICAgICBbcHJlZml4ZXNdPVwidmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlc1wiXG4gICAgICAgICAgICBbZHJvcGRvd25JdGVtcyRdPVwiZ2V0RHJvcGRvd25JdGVtc0ZvclJvdyhpKVwiXG4gICAgICAgICAgICBbZHJvcGRvd25XaWR0aF09XCJkcm9wZG93bldpZHRoXCJcbiAgICAgICAgICAgIFtzaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3JdPVwidmFsdWVQYXRoU2VsZWN0b3JTaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3JcIlxuICAgICAgICAgICAgW25vdGF0aW9uXT1cInZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb25cIlxuICAgICAgICAgICAgW2tleUNvbHVtbkZsZXhdPVwia2V5Q29sdW1uRmxleFwiXG4gICAgICAgICAgICBbZHJvcGRvd25Db2x1bW5GbGV4XT1cImRyb3Bkb3duQ29sdW1uRmxleFwiXG4gICAgICAgICAgICBbdmFsdWVDb2x1bW5GbGV4XT1cInZhbHVlQ29sdW1uRmxleFwiXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQudmFsdWUsICRldmVudC5pbnB1dFZhbHVlLCAkZXZlbnQudHlwZSlcIlxuICAgICAgICAgID48L3ZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZT5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIWhpZGVEZWxldGVCdXR0b25cIlxuICAgICAgICBjZHNCdXR0b249XCJkYW5nZXJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwidmFsdWVzPy5sZW5ndGggPD0gdGhpcy5taW5pbXVtQW1vdW50T2ZSb3dzIHx8IGRpc2FibGVkXCJcbiAgICAgICAgW2ljb25Pbmx5XT1cInRydWVcIlxuICAgICAgICBzaXplPVwibWRcIlxuICAgICAgICAoY2xpY2spPVwiZGVsZXRlUm93KHZhbHVlLnV1aWQpXCJcbiAgICAgICAgW3RpdGxlXT1cInZhcnMuZGVsZXRlUm93VGV4dFwiXG4gICAgICA+XG4gICAgICAgIDxzdmcgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiIGNkc0ljb249XCJ0cmFzaC1jYW5cIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInYtbXVsdGktaW5wdXRfX2FkZC1idXR0b25cIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhaGlkZUFkZEJ1dHRvblwiXG4gICAgICAgIGNkc0J1dHRvbj1cInByaW1hcnlcIlxuICAgICAgICBzaXplPVwibWRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiKGFkZFJvd0VuYWJsZWQkIHwgYXN5bmMpID09PSBmYWxzZSB8fCBkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJhZGRSb3coKVwiXG4gICAgICA+XG4gICAgICAgIHt7IHZhcnMuYWRkUm93VGV4dCB9fVxuXG4gICAgICAgIDxzdmcgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiIGNkc0ljb249XCJhZGRcIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
300
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyYm9uLW11bHRpLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY2FyYm9uLW11bHRpLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY2FyYm9uLW11bHRpLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFZdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxHQUFHLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLEVBQUUsSUFBSSxNQUFNLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFRbEMsTUFBTSxPQUFPLHlCQUF5QjtJQU50QztRQU9rQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLHlCQUFvQixHQUFHLEVBQUUsQ0FBQztRQU96QixvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFtQixFQUFFLENBQUMsQ0FBQztRQU83RCxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQiw0QkFBdUIsR0FBRyxFQUFFLENBQUM7UUFDN0IsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQix3QkFBbUIsR0FBRyxFQUFFLENBQUM7UUFJekIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFDcEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2Ysd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCx3QkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDekIsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLFNBQUksR0FBbUIsT0FBTyxDQUFDO1FBQy9CLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUViLDRDQUF1QyxHQUFHLEVBQUUsQ0FBQztRQUM3Qyw4QkFBeUIsR0FBOEIsRUFBRSxDQUFDO1FBQzFELG9EQUErQyxHQUFHLEtBQUssQ0FBQztRQUN4RCw4QkFBeUIsR0FBOEIsTUFBTSxDQUFDO1FBRTlELGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLHVCQUFrQixHQUFHLENBQUMsQ0FBQztRQUN2QixvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUU1QixnQkFBVyxHQUFtQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pFLHdCQUFtQixHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2pFLGtDQUE2QixHQUFHLElBQUksZUFBZSxDQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRWxFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBbUIsRUFBRSxDQUFDLENBQUM7UUFDcEQsa0JBQWEsR0FBaUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQzdFLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUMvQyxDQUFDO1FBQ2MsbUJBQWMsR0FBd0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ3JFLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQ3pFLENBQUM7UUFFYyxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUF3QixFQUFFLENBQUMsQ0FBQztRQUUvRCxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0EyS3REO0lBeE9DLElBQW9CLG9CQUFvQixDQUFDLEtBQWE7UUFDcEQsSUFBSSxDQUFDLHdCQUF3QixHQUFHLEtBQUssQ0FBQztRQUN0QyxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFJRCxJQUFvQixhQUFhLENBQUMsS0FBdUI7UUFDdkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTztRQUNsQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBTUQsSUFBb0IsYUFBYSxDQUFDLEtBQTRCO1FBQzVELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUE2Q00sUUFBUTtRQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLE1BQU07UUFDWCxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLEVBQUUsRUFBRTtZQUNyQyxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFNBQVMsQ0FBQyxJQUFZO1FBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM1QyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDakUsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFNBQVMsQ0FBQyxDQUFTLEVBQUUsS0FBeUI7UUFDbkQsT0FBTyxLQUFLLENBQUMsSUFBYyxDQUFDO0lBQzlCLENBQUM7SUFFTSxzQkFBc0IsQ0FBQyxLQUFhO1FBQ3pDLE9BQU8sYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzVELEdBQUcsQ0FBQyxDQUFDLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDOUIsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFaEUsT0FBTyxhQUFhLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDeEMsR0FBRyxZQUFZO2dCQUNmLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLEtBQUssWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSzthQUMzRSxDQUFDLENBQUMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sYUFBYSxDQUNsQixhQUFpQyxFQUNqQyxVQUFrQixFQUNsQixNQUFpQyxFQUNqQyxjQUF1QjtRQUV2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ2YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDdEIsSUFBSSxVQUFVLENBQUMsSUFBSSxLQUFLLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDM0MsSUFBSSxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7d0JBQ3ZCLE9BQU8sRUFBQyxHQUFHLFVBQVUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLENBQUM7b0JBQzVDLENBQUM7eUJBQU0sSUFBSSxNQUFNLEtBQUssS0FBSyxFQUFFLENBQUM7d0JBQzVCLE9BQU8sRUFBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFDLENBQUM7b0JBQzFDLENBQUM7eUJBQU0sSUFBSSxNQUFNLEtBQUssVUFBVSxFQUFFLENBQUM7d0JBQ2pDLE9BQU8sRUFBQyxHQUFHLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFDLENBQUM7b0JBQy9DLENBQUM7eUJBQU0sSUFBSSxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7d0JBQ2xDLE9BQU8sRUFBQyxHQUFHLFVBQVUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFLFVBQVUsRUFBQyxDQUFDO29CQUN2RCxDQUFDO2dCQUNILENBQUM7Z0JBQ0QsT0FBTyxVQUFVLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDcEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQzdDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztRQUM3QyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRS9ELE9BQU8sSUFBSSxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLGlCQUFpQixFQUFFLENBQUM7WUFDcEMsTUFBTSxVQUFVLEdBQUc7Z0JBQ2pCLElBQUksRUFBRSxNQUFNLEVBQUU7YUFDZixDQUFDO1lBRUYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDekUsVUFBVSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDOUIsQ0FBQyxDQUFDLENBQUM7WUFFSCxPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBRUQsT0FBTztZQUNMLEdBQUcsRUFBRSxFQUFFO1lBQ1AsS0FBSyxFQUFFLEVBQUU7WUFDVCxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ2QsUUFBUSxFQUFFLEVBQUU7U0FDYixDQUFDO0lBQ0osQ0FBQztJQUVPLGNBQWMsQ0FBQyxVQUE4QjtRQUNuRCxJQUNFLElBQUksQ0FBQyxJQUFJLEtBQUssVUFBVTtZQUN4QixJQUFJLENBQUMsSUFBSSxLQUFLLHNCQUFzQjtZQUNwQyxJQUFJLENBQUMsSUFBSSxLQUFLLHdCQUF3QixFQUN0QyxDQUFDO1lBQ0QsT0FBTyxFQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFDLENBQUM7UUFDeEQsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLGdDQUFnQyxFQUFFLENBQUM7WUFDOUYsT0FBTyxFQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFDLENBQUM7UUFDdkYsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNDLE1BQU0sT0FBTyxHQUFHLEVBQUMsR0FBRyxVQUFVLEVBQUMsQ0FBQztZQUNoQyxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDcEIsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRU8sc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUNyQixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDckYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGlCQUFpQixDQUFDLE1BQWM7UUFDdEMsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxNQUF3QjtRQUNqRCxPQUFPLE1BQU07YUFDVixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3hDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQXFCLENBQUM7SUFDbkUsQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFrQztRQUNyRCxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ2pCLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssc0JBQXNCLENBQUM7WUFDNUIsS0FBSyx3QkFBd0I7Z0JBQzNCLE9BQU8sQ0FBQyxDQUFDLENBQUUsS0FBNEIsQ0FBQyxLQUFLLElBQUssS0FBNEIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0RixLQUFLLGtCQUFrQixDQUFDO1lBQ3hCLEtBQUssZ0NBQWdDO2dCQUNuQyxPQUFPLENBQUMsQ0FBQyxDQUNOLEtBQTRCLENBQUMsS0FBSztvQkFDbEMsS0FBNEIsQ0FBQyxHQUFHO29CQUNoQyxLQUE0QixDQUFDLFFBQVEsQ0FDdkMsQ0FBQztZQUNKLEtBQUssaUJBQWlCO2dCQUNwQixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQTJCLENBQUMsQ0FBQztnQkFDaEUsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUMvRSxPQUFPLFlBQVksQ0FBQyxNQUFNLEtBQUssb0JBQW9CLENBQUMsTUFBTSxDQUFDO1lBQzdEO2dCQUNFLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7SUFDSCxDQUFDO0lBRU8sNkJBQTZCO1FBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM3QyxJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLG1CQUFtQjtnQkFBRSxPQUFPO1lBQzVELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBRyxZQUFZLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUYsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7K0dBM09VLHlCQUF5QjttR0FBekIseUJBQXlCLDIzQ0M5Q3RDLHMzT0EwTEE7OzRGRDVJYSx5QkFBeUI7a0JBTnJDLFNBQVM7K0JBQ0UsNEJBQTRCLGlCQUd2QixpQkFBaUIsQ0FBQyxJQUFJOzhCQUdyQixVQUFVO3NCQUF6QixLQUFLO2dCQUNVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFDVSxxQkFBcUI7c0JBQXBDLEtBQUs7Z0JBQ2Msb0JBQW9CO3NCQUF2QyxLQUFLO2dCQU9jLGFBQWE7c0JBQWhDLEtBQUs7Z0JBS1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSx1QkFBdUI7c0JBQXRDLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBQ2MsYUFBYTtzQkFBaEMsS0FBSztnQkFHVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUNVLGNBQWM7c0JBQTdCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLG1CQUFtQjtzQkFBbEMsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFFbUIsdUNBQXVDO3NCQUEvRCxLQUFLO2dCQUNtQix5QkFBeUI7c0JBQWpELEtBQUs7Z0JBQ21CLCtDQUErQztzQkFBdkUsS0FBSztnQkFDbUIseUJBQXlCO3NCQUFqRCxLQUFLO2dCQUVtQixhQUFhO3NCQUFyQyxLQUFLO2dCQUNtQixrQkFBa0I7c0JBQTFDLEtBQUs7Z0JBQ21CLGVBQWU7c0JBQXZDLEtBQUs7Z0JBRVcsV0FBVztzQkFBM0IsTUFBTTtnQkFDVSxtQkFBbUI7c0JBQW5DLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFyYml0cmFyeUlucHV0VGl0bGVzLFxuICBMaXN0SXRlbVdpdGhJZCxcbiAgTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZSxcbiAgTXVsdGlJbnB1dEtleVZhbHVlLFxuICBNdWx0aUlucHV0T3V0cHV0LFxuICBNdWx0aUlucHV0VHlwZSxcbiAgTXVsdGlJbnB1dFZhbHVlcyxcbiAgVmFsdWVQYXRoU2VsZWN0b3JOb3RhdGlvbixcbiAgVmFsdWVQYXRoU2VsZWN0b3JQcmVmaXgsXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge3Y0IGFzIHV1aWR2NH0gZnJvbSAndXVpZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tY2FyYm9uLW11bHRpLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmJvbi1tdWx0aS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmJvbi1tdWx0aS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJib25NdWx0aUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwdWJsaWMgYWRkUm93VGV4dCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYWRkUm93VHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGFyYml0cmFyeUFtb3VudFRpdGxlcyE6IEFyYml0cmFyeUlucHV0VGl0bGVzO1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IGFyYml0cmFyeVZhbHVlQW1vdW50KHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9hbW91bnRPZkFyYml0cmFyeVZhbHVlcyA9IHZhbHVlO1xuICAgIHRoaXMuYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSQubmV4dCh0aGlzLmdldEFycmF5T2ZYTGVuZ3RoKHZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZWZhdWx0VmFsdWVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TXVsdGlJbnB1dFZhbHVlcz4oW10pO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgZGVmYXVsdFZhbHVlcyh2YWx1ZTogTXVsdGlJbnB1dFZhbHVlcykge1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHJldHVybjtcbiAgICB0aGlzLl9kZWZhdWx0VmFsdWVzJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHB1YmxpYyBkZWxldGVSb3dUZXh0ID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBkZWxldGVSb3dUcmFuc2xhdGlvbktleSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGRyb3Bkb3duQ29sdW1uVGl0bGUgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHNldCBkcm9wZG93bkl0ZW1zKHZhbHVlOiBBcnJheTxMaXN0SXRlbVdpdGhJZD4pIHtcbiAgICB0aGlzLmRyb3Bkb3duSXRlbXMkLm5leHQodmFsdWUpO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBkcm9wZG93bldpZHRoID0gMjUwO1xuICBASW5wdXQoKSBwdWJsaWMgZnVsbFdpZHRoID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlQWRkQnV0dG9uID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlRGVsZXRlQnV0dG9uID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0aWFsQW1vdW50T2ZSb3dzID0gMTtcbiAgQElucHV0KCkgcHVibGljIGtleUNvbHVtblRpdGxlID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBtYXJnaW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIG1heFJvd3MgPSBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgbWluaW11bUFtb3VudE9mUm93cyA9IDE7XG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgdGl0bGUgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHRpdGxlVHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHRvb2x0aXAgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHR5cGU6IE11bHRpSW5wdXRUeXBlID0gJ3ZhbHVlJztcbiAgQElucHV0KCkgcHVibGljIHZhbHVlQ29sdW1uVGl0bGUgPSAnJztcblxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVQYXRoU2VsZWN0b3JEb2N1bWVudERlZmluaXRpb25OYW1lID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZVBhdGhTZWxlY3RvclByZWZpeGVzOiBWYWx1ZVBhdGhTZWxlY3RvclByZWZpeFtdID0gW107XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZVBhdGhTZWxlY3RvclNob3dEb2N1bWVudERlZmluaXRpb25TZWxlY3RvciA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVQYXRoU2VsZWN0b3JOb3RhdGlvbjogVmFsdWVQYXRoU2VsZWN0b3JOb3RhdGlvbiA9ICdkb3RzJztcblxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkga2V5Q29sdW1uRmxleCA9IDE7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBkcm9wZG93bkNvbHVtbkZsZXggPSAxO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVDb2x1bW5GbGV4ID0gMTtcblxuICBAT3V0cHV0KCkgcHVibGljIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8TXVsdGlJbnB1dE91dHB1dD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgYWxsVmFsdWVzVmFsaWRFdmVudDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgX2Ftb3VudE9mQXJiaXRyYXJ5VmFsdWVzITogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFycmF5PDA+PihbXSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHZhbHVlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE11bHRpSW5wdXRWYWx1ZXM+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IG1hcHBlZFZhbHVlcyQ6IE9ic2VydmFibGU8TXVsdGlJbnB1dE91dHB1dD4gPSB0aGlzLnZhbHVlcyQucGlwZShcbiAgICBtYXAodmFsdWVzID0+IHRoaXMuZmlsdGVyQW5kTWFwVmFsdWVzKHZhbHVlcykpXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBhZGRSb3dFbmFibGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMudmFsdWVzJC5waXBlKFxuICAgIG1hcCh2YWx1ZXMgPT4gISEodGhpcy5tYXhSb3dzID09PSBudWxsIHx8IHZhbHVlcy5sZW5ndGggPCB0aGlzLm1heFJvd3MpKVxuICApO1xuXG4gIHB1YmxpYyByZWFkb25seSBkcm9wZG93bkl0ZW1zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8TGlzdEl0ZW1XaXRoSWQ+PihbXSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZXMkLm5leHQodGhpcy5nZXRJbml0aWFsUm93cygpKTtcbiAgICB0aGlzLm9wZW5WYWx1ZXNTdWJzY3JpcHRpb24oKTtcbiAgICB0aGlzLm9wZW5EZWZhdWx0VmFsdWVzU3Vic2NyaXB0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGFkZFJvdygpOiB2b2lkIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnZhbHVlcyQsIHRoaXMuYWRkUm93RW5hYmxlZCRdKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKFt2YWx1ZXMsIGFkZFJvd0VuYWJsZWRdKSA9PiB7XG4gICAgICAgIGlmIChhZGRSb3dFbmFibGVkKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZXMkLm5leHQoWy4uLnZhbHVlcywgdGhpcy5nZXRFbXB0eVZhbHVlKCldKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlUm93KHV1aWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSh2YWx1ZXMgPT4ge1xuICAgICAgaWYgKHZhbHVlcy5sZW5ndGggPiB0aGlzLm1pbmltdW1BbW91bnRPZlJvd3MpIHtcbiAgICAgICAgdGhpcy52YWx1ZXMkLm5leHQodmFsdWVzLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZS51dWlkICE9PSB1dWlkKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdHJhY2tCeUZuKF86IG51bWJlciwgdmFsdWU6IE11bHRpSW5wdXRLZXlWYWx1ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnV1aWQgYXMgc3RyaW5nO1xuICB9XG5cbiAgcHVibGljIGdldERyb3Bkb3duSXRlbXNGb3JSb3coaW5kZXg6IG51bWJlcik6IE9ic2VydmFibGU8QXJyYXk8TGlzdEl0ZW1XaXRoSWQ+PiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3RoaXMuZHJvcGRvd25JdGVtcyQsIHRoaXMudmFsdWVzJF0pLnBpcGUoXG4gICAgICBtYXAoKFtkcm9wZG93bkl0ZW1zLCB2YWx1ZXNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IHZhbHVlc1tpbmRleF0gfHwgdGhpcy5kZWZhdWx0VmFsdWVzW2luZGV4XTtcblxuICAgICAgICByZXR1cm4gZHJvcGRvd25JdGVtcy5tYXAoZHJvcGRvd25JdGVtID0+ICh7XG4gICAgICAgICAgLi4uZHJvcGRvd25JdGVtLFxuICAgICAgICAgIHNlbGVjdGVkOiBkZWZhdWx0VmFsdWUgPyBkcm9wZG93bkl0ZW0uaWQgPT09IGRlZmF1bHRWYWx1ZS5kcm9wZG93biA6IGZhbHNlLFxuICAgICAgICB9KSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25WYWx1ZUNoYW5nZShcbiAgICB0ZW1wbGF0ZVZhbHVlOiBNdWx0aUlucHV0S2V5VmFsdWUsXG4gICAgaW5wdXRWYWx1ZTogc3RyaW5nLFxuICAgIGNoYW5nZTogTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZSxcbiAgICBhcmJpdHJhcnlJbmRleD86IG51bWJlclxuICApOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlcyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgIHRoaXMudmFsdWVzJC5uZXh0KFxuICAgICAgICB2YWx1ZXMubWFwKHN0YXRlVmFsdWUgPT4ge1xuICAgICAgICAgIGlmIChzdGF0ZVZhbHVlLnV1aWQgPT09IHRlbXBsYXRlVmFsdWUudXVpZCkge1xuICAgICAgICAgICAgaWYgKGNoYW5nZSA9PT0gJ3ZhbHVlJykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIHZhbHVlOiBpbnB1dFZhbHVlfTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hhbmdlID09PSAna2V5Jykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIGtleTogaW5wdXRWYWx1ZX07XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoYW5nZSA9PT0gJ2Ryb3Bkb3duJykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIGRyb3Bkb3duOiBpbnB1dFZhbHVlfTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hhbmdlID09PSAnYXJiaXRyYXJ5Jykge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLnN0YXRlVmFsdWUsIFthcmJpdHJhcnlJbmRleF06IGlucHV0VmFsdWV9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc3RhdGVWYWx1ZTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEluaXRpYWxSb3dzKCk6IE11bHRpSW5wdXRWYWx1ZXMge1xuICAgIGNvbnN0IG1pbmltdW1Sb3dzID0gdGhpcy5taW5pbXVtQW1vdW50T2ZSb3dzO1xuICAgIGNvbnN0IGluaXRpYWxSb3dzID0gdGhpcy5pbml0aWFsQW1vdW50T2ZSb3dzO1xuICAgIGNvbnN0IGFtb3VudE9mSW5pdGlhbFJvd3MgPSBNYXRoLm1heChtaW5pbXVtUm93cywgaW5pdGlhbFJvd3MpO1xuXG4gICAgcmV0dXJuIG5ldyBBcnJheShhbW91bnRPZkluaXRpYWxSb3dzKS5maWxsKHRoaXMuZ2V0RW1wdHlWYWx1ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RW1wdHlWYWx1ZSgpOiBNdWx0aUlucHV0S2V5VmFsdWUge1xuICAgIGlmICh0aGlzLnR5cGUgPT09ICdhcmJpdHJhcnlBbW91bnQnKSB7XG4gICAgICBjb25zdCBlbXB0eVZhbHVlID0ge1xuICAgICAgICB1dWlkOiB1dWlkdjQoKSxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuZ2V0QXJyYXlPZlhMZW5ndGgodGhpcy5fYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXMpLmZvckVhY2goKF8sIGluZGV4KSA9PiB7XG4gICAgICAgIGVtcHR5VmFsdWVbYCR7aW5kZXh9YF0gPSAnJztcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gZW1wdHlWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAga2V5OiAnJyxcbiAgICAgIHZhbHVlOiAnJyxcbiAgICAgIHV1aWQ6IHV1aWR2NCgpLFxuICAgICAgZHJvcGRvd246ICcnLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldE1hcHBlZFZhbHVlKHZhbHVlVG9NYXA6IE11bHRpSW5wdXRLZXlWYWx1ZSk6IE11bHRpSW5wdXRLZXlWYWx1ZSB8IHN0cmluZyB7XG4gICAgaWYgKFxuICAgICAgdGhpcy50eXBlID09PSAna2V5VmFsdWUnIHx8XG4gICAgICB0aGlzLnR5cGUgPT09ICdrZXlWYWx1ZVBhdGhTZWxlY3RvcicgfHxcbiAgICAgIHRoaXMudHlwZSA9PT0gJ3ZhbHVlUGF0aFNlbGVjdG9yVmFsdWUnXG4gICAgKSB7XG4gICAgICByZXR1cm4ge2tleTogdmFsdWVUb01hcC5rZXksIHZhbHVlOiB2YWx1ZVRvTWFwLnZhbHVlfTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gJ2tleURyb3Bkb3duVmFsdWUnIHx8IHRoaXMudHlwZSA9PT0gJ3ZhbHVlUGF0aFNlbGVjdG9yRHJvcGRvd25WYWx1ZScpIHtcbiAgICAgIHJldHVybiB7a2V5OiB2YWx1ZVRvTWFwLmtleSwgdmFsdWU6IHZhbHVlVG9NYXAudmFsdWUsIGRyb3Bkb3duOiB2YWx1ZVRvTWFwLmRyb3Bkb3dufTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gJ2FyYml0cmFyeUFtb3VudCcpIHtcbiAgICAgIGNvbnN0IG9iakNvcHkgPSB7Li4udmFsdWVUb01hcH07XG4gICAgICBkZWxldGUgb2JqQ29weS51dWlkO1xuICAgICAgcmV0dXJuIG9iakNvcHk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlVG9NYXAudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIG9wZW5WYWx1ZXNTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnZhbHVlcyQsIHRoaXMubWFwcGVkVmFsdWVzJF0pLnN1YnNjcmliZSgoW3ZhbHVlcywgbWFwcGVkVmFsdWVzXSkgPT4ge1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQobWFwcGVkVmFsdWVzKTtcbiAgICAgICAgdGhpcy5hbGxWYWx1ZXNWYWxpZEV2ZW50LmVtaXQodmFsdWVzLmxlbmd0aCA9PT0gbWFwcGVkVmFsdWVzLmxlbmd0aCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldEFycmF5T2ZYTGVuZ3RoKGxlbmd0aDogbnVtYmVyKTogMFtdIHtcbiAgICByZXR1cm4gQXJyYXkobGVuZ3RoKS5maWxsKDApO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJBbmRNYXBWYWx1ZXModmFsdWVzOiBNdWx0aUlucHV0VmFsdWVzKTogTXVsdGlJbnB1dE91dHB1dCB7XG4gICAgcmV0dXJuIHZhbHVlc1xuICAgICAgLm1hcCh2YWx1ZSA9PiB0aGlzLmdldE1hcHBlZFZhbHVlKHZhbHVlKSlcbiAgICAgIC5maWx0ZXIodmFsdWUgPT4gdGhpcy5pc1ZhbHVlVmFsaWQodmFsdWUpKSBhcyBNdWx0aUlucHV0T3V0cHV0O1xuICB9XG5cbiAgcHJpdmF0ZSBpc1ZhbHVlVmFsaWQodmFsdWU6IE11bHRpSW5wdXRLZXlWYWx1ZSB8IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlICd2YWx1ZSc6XG4gICAgICAgIHJldHVybiAhIXZhbHVlO1xuICAgICAgY2FzZSAna2V5VmFsdWUnOlxuICAgICAgY2FzZSAna2V5VmFsdWVQYXRoU2VsZWN0b3InOlxuICAgICAgY2FzZSAndmFsdWVQYXRoU2VsZWN0b3JWYWx1ZSc6XG4gICAgICAgIHJldHVybiAhISgodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS52YWx1ZSB8fCAodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS5rZXkpO1xuICAgICAgY2FzZSAna2V5RHJvcGRvd25WYWx1ZSc6XG4gICAgICBjYXNlICd2YWx1ZVBhdGhTZWxlY3RvckRyb3Bkb3duVmFsdWUnOlxuICAgICAgICByZXR1cm4gISEoXG4gICAgICAgICAgKHZhbHVlIGFzIE11bHRpSW5wdXRLZXlWYWx1ZSkudmFsdWUgJiZcbiAgICAgICAgICAodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS5rZXkgJiZcbiAgICAgICAgICAodmFsdWUgYXMgTXVsdGlJbnB1dEtleVZhbHVlKS5kcm9wZG93blxuICAgICAgICApO1xuICAgICAgY2FzZSAnYXJiaXRyYXJ5QW1vdW50JzpcbiAgICAgICAgY29uc3Qgb2JqZWN0VmFsdWVzID0gT2JqZWN0LnZhbHVlcyh2YWx1ZSBhcyBNdWx0aUlucHV0S2V5VmFsdWUpO1xuICAgICAgICBjb25zdCBwb3NpdGl2ZVZhbHVlc0Ftb3VudCA9IG9iamVjdFZhbHVlcy5maWx0ZXIob2JqZWN0VmFsdWUgPT4gISFvYmplY3RWYWx1ZSk7XG4gICAgICAgIHJldHVybiBvYmplY3RWYWx1ZXMubGVuZ3RoID09PSBwb3NpdGl2ZVZhbHVlc0Ftb3VudC5sZW5ndGg7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuRGVmYXVsdFZhbHVlc1N1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuX2RlZmF1bHRWYWx1ZXMkLnN1YnNjcmliZShkZWZhdWx0VmFsdWVzID0+IHtcbiAgICAgICAgaWYgKGRlZmF1bHRWYWx1ZXMubGVuZ3RoIDwgdGhpcy5taW5pbXVtQW1vdW50T2ZSb3dzKSByZXR1cm47XG4gICAgICAgIHRoaXMudmFsdWVzJC5uZXh0KGRlZmF1bHRWYWx1ZXMubWFwKGRlZmF1bHRWYWx1ZSA9PiAoey4uLmRlZmF1bHRWYWx1ZSwgdXVpZDogdXVpZHY0KCl9KSkpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXZcbiAgKm5nSWY9XCJ7XG4gICAgYWRkUm93VGV4dDpcbiAgICAgIGFkZFJvd1RleHQgfHwgYWRkUm93VHJhbnNsYXRpb25LZXlcbiAgICAgICAgPyBhZGRSb3dUcmFuc2xhdGlvbktleVxuICAgICAgICAgID8gKGFkZFJvd1RyYW5zbGF0aW9uS2V5IHwgdHJhbnNsYXRlKVxuICAgICAgICAgIDogYWRkUm93VGV4dFxuICAgICAgICA6ICgnaW50ZXJmYWNlLmFkZFJvdycgfCB0cmFuc2xhdGUpLFxuICAgIGRlbGV0ZVJvd1RleHQ6XG4gICAgICBkZWxldGVSb3dUZXh0IHx8IGRlbGV0ZVJvd1RyYW5zbGF0aW9uS2V5XG4gICAgICAgID8gZGVsZXRlUm93VHJhbnNsYXRpb25LZXlcbiAgICAgICAgICA/IChkZWxldGVSb3dUcmFuc2xhdGlvbktleSB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICA6IGRlbGV0ZVJvd1RleHRcbiAgICAgICAgOiAoJ2ludGVyZmFjZS5kZWxldGVSb3cnIHwgdHJhbnNsYXRlKSxcbiAgfSBhcyB2YXJzXCJcbiAgW25nQ2xhc3NdPVwieyd2LW11bHRpLWlucHV0LS1tYXJnaW4nOiBtYXJnaW4sICd2LW11bHRpLWlucHV0LS1uby1kZWxldGUtYnV0dG9uJzogaGlkZURlbGV0ZUJ1dHRvbn1cIlxuICBjbGFzcz1cInYtbXVsdGktaW5wdXRcIlxuPlxuICA8di1pbnB1dC1sYWJlbFxuICAgICpuZ0lmPVwidGl0bGUgfHwgdGl0bGVUcmFuc2xhdGlvbktleVwiXG4gICAgW25hbWVdPVwibmFtZVwiXG4gICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbdGl0bGVUcmFuc2xhdGlvbktleV09XCJ0aXRsZVRyYW5zbGF0aW9uS2V5XCJcbiAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgIFt0b29sdGlwXT1cInRvb2x0aXBcIlxuICA+XG4gIDwvdi1pbnB1dC1sYWJlbD5cblxuICA8ZGl2IGNsYXNzPVwidi1tdWx0aS1pbnB1dF9fcm93c1wiPlxuICAgIDxkaXZcbiAgICAgICpuZ0Zvcj1cImxldCB2YWx1ZSBvZiB2YWx1ZXMkIHwgYXN5bmMgYXMgdmFsdWVzOyB0cmFja0J5OiB0cmFja0J5Rm47IGluZGV4IGFzIGlcIlxuICAgICAgY2xhc3M9XCJ2LW11bHRpLWlucHV0X19yb3dcIlxuICAgID5cbiAgICAgIEBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgQGNhc2UgKCd2YWx1ZScpIHtcbiAgICAgICAgICA8dmFsdGltby1zaW5nbGUtdmFsdWVcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICBbZnVsbFdpZHRoXT1cImZ1bGxXaWR0aFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJ3ZhbHVlJylcIlxuICAgICAgICAgID48L3ZhbHRpbW8tc2luZ2xlLXZhbHVlPlxuICAgICAgICB9XG4gICAgICAgIEBjYXNlICgna2V5VmFsdWUnKSB7XG4gICAgICAgICAgPHZhbHRpbW8ta2V5LXZhbHVlXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtrZXlDb2x1bW5GbGV4XT1cImtleUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uRmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJGV2ZW50LnR5cGUpXCJcbiAgICAgICAgICA+PC92YWx0aW1vLWtleS12YWx1ZT5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoJ2tleURyb3Bkb3duVmFsdWUnKSB7XG4gICAgICAgICAgPHZhbHRpbW8ta2V5LWRyb3Bkb3duLXZhbHVlXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbZHJvcGRvd25Db2x1bW5UaXRsZV09XCJkcm9wZG93bkNvbHVtblRpdGxlXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJpXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICBbZHJvcGRvd25JdGVtcyRdPVwiZ2V0RHJvcGRvd25JdGVtc0ZvclJvdyhpKVwiXG4gICAgICAgICAgICBbZHJvcGRvd25XaWR0aF09XCJkcm9wZG93bldpZHRoXCJcbiAgICAgICAgICAgIFtmdWxsV2lkdGhdPVwiZnVsbFdpZHRoXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICBba2V5Q29sdW1uRmxleF09XCJrZXlDb2x1bW5GbGV4XCJcbiAgICAgICAgICAgIFtkcm9wZG93bkNvbHVtbkZsZXhdPVwiZHJvcGRvd25Db2x1bW5GbGV4XCJcbiAgICAgICAgICAgIFt2YWx1ZUNvbHVtbkZsZXhdPVwidmFsdWVDb2x1bW5GbGV4XCJcbiAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudC52YWx1ZSwgJGV2ZW50LmlucHV0VmFsdWUsICRldmVudC50eXBlKVwiXG4gICAgICAgICAgPjwvdmFsdGltby1rZXktZHJvcGRvd24tdmFsdWU+XG4gICAgICAgIH1cbiAgICAgICAgQGNhc2UgKCdhcmJpdHJhcnlBbW91bnQnKSB7XG4gICAgICAgICAgPHZhbHRpbW8tYXJiaXRyYXJ5LWFtb3VudC12YWx1ZVxuICAgICAgICAgICAgW2luZGV4XT1cImlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgIFtmdWxsV2lkdGhdPVwiZnVsbFdpZHRoXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICBbYXJiaXRyYXJ5QW1vdW50VGl0bGVzXT1cImFyYml0cmFyeUFtb3VudFRpdGxlc1wiXG4gICAgICAgICAgICBbYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSRdPVwiYW1vdW50T2ZBcmJpdHJhcnlWYWx1ZXNBcnJheSRcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIlxuICAgICAgICAgICAgICBvblZhbHVlQ2hhbmdlKCRldmVudC52YWx1ZSwgJGV2ZW50LmlucHV0VmFsdWUsICRldmVudC50eXBlLCAkZXZlbnQuYXJiaXRyYXJ5SW5kZXgpXG4gICAgICAgICAgICBcIlxuICAgICAgICAgID48L3ZhbHRpbW8tYXJiaXRyYXJ5LWFtb3VudC12YWx1ZT5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoJ2tleVZhbHVlUGF0aFNlbGVjdG9yJykge1xuICAgICAgICAgIDx2YWx0aW1vLWtleS12YWx1ZS1wYXRoLXNlbGVjdG9yXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cInZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgICAgICAgICBbcHJlZml4ZXNdPVwidmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlc1wiXG4gICAgICAgICAgICBbc2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXT1cInZhbHVlUGF0aFNlbGVjdG9yU2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXCJcbiAgICAgICAgICAgIFtub3RhdGlvbl09XCJ2YWx1ZVBhdGhTZWxlY3Rvck5vdGF0aW9uXCJcbiAgICAgICAgICAgIFtrZXlDb2x1bW5GbGV4XT1cImtleUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uRmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJGV2ZW50LnR5cGUpXCJcbiAgICAgICAgICA+PC92YWx0aW1vLWtleS12YWx1ZS1wYXRoLXNlbGVjdG9yPlxuICAgICAgICB9XG4gICAgICAgIEBjYXNlICgndmFsdWVQYXRoU2VsZWN0b3JWYWx1ZScpIHtcbiAgICAgICAgICA8dmFsdGltby12YWx1ZS1wYXRoLXNlbGVjdG9yLXZhbHVlXG4gICAgICAgICAgICBba2V5Q29sdW1uVGl0bGVdPVwia2V5Q29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cInZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgICAgICAgICBbcHJlZml4ZXNdPVwidmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlc1wiXG4gICAgICAgICAgICBbc2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXT1cInZhbHVlUGF0aFNlbGVjdG9yU2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXCJcbiAgICAgICAgICAgIFtub3RhdGlvbl09XCJ2YWx1ZVBhdGhTZWxlY3Rvck5vdGF0aW9uXCJcbiAgICAgICAgICAgIFtrZXlDb2x1bW5GbGV4XT1cImtleUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uRmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnZhbHVlLCAkZXZlbnQuaW5wdXRWYWx1ZSwgJGV2ZW50LnR5cGUpXCJcbiAgICAgICAgICA+PC92YWx0aW1vLXZhbHVlLXBhdGgtc2VsZWN0b3ItdmFsdWU+XG4gICAgICAgIH1cbiAgICAgICAgQGNhc2UgKCd2YWx1ZVBhdGhTZWxlY3RvckRyb3Bkb3duVmFsdWUnKSB7XG4gICAgICAgICAgPHZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZVxuICAgICAgICAgICAgW2tleUNvbHVtblRpdGxlXT1cImtleUNvbHVtblRpdGxlXCJcbiAgICAgICAgICAgIFtkcm9wZG93bkNvbHVtblRpdGxlXT1cImRyb3Bkb3duQ29sdW1uVGl0bGVcIlxuICAgICAgICAgICAgW3ZhbHVlQ29sdW1uVGl0bGVdPVwidmFsdWVDb2x1bW5UaXRsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmdWxsV2lkdGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cInZhbHVlUGF0aFNlbGVjdG9yRG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgICAgICAgICBbcHJlZml4ZXNdPVwidmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhlc1wiXG4gICAgICAgICAgICBbZHJvcGRvd25JdGVtcyRdPVwiZ2V0RHJvcGRvd25JdGVtc0ZvclJvdyhpKVwiXG4gICAgICAgICAgICBbZHJvcGRvd25XaWR0aF09XCJkcm9wZG93bldpZHRoXCJcbiAgICAgICAgICAgIFtzaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3JdPVwidmFsdWVQYXRoU2VsZWN0b3JTaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3JcIlxuICAgICAgICAgICAgW25vdGF0aW9uXT1cInZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb25cIlxuICAgICAgICAgICAgW2tleUNvbHVtbkZsZXhdPVwia2V5Q29sdW1uRmxleFwiXG4gICAgICAgICAgICBbZHJvcGRvd25Db2x1bW5GbGV4XT1cImRyb3Bkb3duQ29sdW1uRmxleFwiXG4gICAgICAgICAgICBbdmFsdWVDb2x1bW5GbGV4XT1cInZhbHVlQ29sdW1uRmxleFwiXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQudmFsdWUsICRldmVudC5pbnB1dFZhbHVlLCAkZXZlbnQudHlwZSlcIlxuICAgICAgICAgID48L3ZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZT5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIWhpZGVEZWxldGVCdXR0b25cIlxuICAgICAgICBjZHNCdXR0b249XCJkYW5nZXJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwidmFsdWVzPy5sZW5ndGggPD0gdGhpcy5taW5pbXVtQW1vdW50T2ZSb3dzIHx8IGRpc2FibGVkXCJcbiAgICAgICAgW2ljb25Pbmx5XT1cInRydWVcIlxuICAgICAgICBzaXplPVwibWRcIlxuICAgICAgICAoY2xpY2spPVwiZGVsZXRlUm93KHZhbHVlLnV1aWQpXCJcbiAgICAgICAgW3RpdGxlXT1cInZhcnMuZGVsZXRlUm93VGV4dFwiXG4gICAgICA+XG4gICAgICAgIDxzdmcgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiIGNkc0ljb249XCJ0cmFzaC1jYW5cIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInYtbXVsdGktaW5wdXRfX2FkZC1idXR0b25cIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhaGlkZUFkZEJ1dHRvblwiXG4gICAgICAgIGNkc0J1dHRvbj1cInByaW1hcnlcIlxuICAgICAgICBzaXplPVwibWRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiKGFkZFJvd0VuYWJsZWQkIHwgYXN5bmMpID09PSBmYWxzZSB8fCBkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJhZGRSb3coKVwiXG4gICAgICA+XG4gICAgICAgIHt7IHZhcnMuYWRkUm93VGV4dCB9fVxuXG4gICAgICAgIDxzdmcgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiIGNkc0ljb249XCJhZGRcIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -38,7 +38,7 @@ export class KeyValuePathSelectorComponent {
|
|
|
38
38
|
this.valueChange.emit({ value: this.value, inputValue, type });
|
|
39
39
|
}
|
|
40
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KeyValuePathSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: KeyValuePathSelectorComponent, isStandalone: true, selector: "valtimo-key-value-path-selector", inputs: { keyColumnTitle: "keyColumnTitle", valueColumnTitle: "valueColumnTitle", index: "index", value: "value", fullWidth: "fullWidth", disabled: "disabled", documentDefinitionName: "documentDefinitionName", prefixes: "prefixes", showDocumentDefinitionSelector: "showDocumentDefinitionSelector", notation: "notation", keyColumnFlex: "keyColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.--full-width": "this.fullWidth" } }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"v-multi-input__input key\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"keyColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && keyColumnTitle\">{{ keyColumnTitle }}</cds-label>\n\n <input\n cdsText\n [defaultValue]=\"value.key\"\n [disabled]=\"disabled\"\n (input)=\"onInputChange('key', $event.target.value)\"\n />\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input path-selector\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"valueColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && valueColumnTitle\">{{ valueColumnTitle }}</cds-label>\n\n <valtimo-value-path-selector\n [documentDefinitionName]=\"documentDefinitionName\"\n [prefixes]=\"prefixes\"\n [showDocumentDefinitionSelector]=\"showDocumentDefinitionSelector\"\n [disabled]=\"disabled\"\n [defaultValue]=\"value?.value\"\n [notation]=\"notation\"\n (valueChangeEvent)=\"onInputChange('value', $event)\"\n ></valtimo-value-path-selector>\n</div>\n", styles: [":host{display:flex;flex-direction:row;align-items:flex-end}:host.--full-width{width:100%}:host .path-selector{flex:2}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "component", type: ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "documentDefinitionName", "version", "prefixes", "label", "tooltip", "required", "showDocumentDefinitionSelector", "notation", "defaultValue"], outputs: ["valueChangeEvent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] }); }
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: KeyValuePathSelectorComponent, isStandalone: true, selector: "valtimo-key-value-path-selector", inputs: { keyColumnTitle: "keyColumnTitle", valueColumnTitle: "valueColumnTitle", index: "index", value: "value", fullWidth: "fullWidth", disabled: "disabled", documentDefinitionName: "documentDefinitionName", prefixes: "prefixes", showDocumentDefinitionSelector: "showDocumentDefinitionSelector", notation: "notation", keyColumnFlex: "keyColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.--full-width": "this.fullWidth" } }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"v-multi-input__input key\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"keyColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && keyColumnTitle\">{{ keyColumnTitle }}</cds-label>\n\n <input\n cdsText\n [defaultValue]=\"value.key\"\n [disabled]=\"disabled\"\n (input)=\"onInputChange('key', $event.target.value)\"\n />\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input path-selector\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"valueColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && valueColumnTitle\">{{ valueColumnTitle }}</cds-label>\n\n <valtimo-value-path-selector\n [documentDefinitionName]=\"documentDefinitionName\"\n [prefixes]=\"prefixes\"\n [showDocumentDefinitionSelector]=\"showDocumentDefinitionSelector\"\n [disabled]=\"disabled\"\n [defaultValue]=\"value?.value\"\n [notation]=\"notation\"\n (valueChangeEvent)=\"onInputChange('value', $event)\"\n ></valtimo-value-path-selector>\n</div>\n", styles: [":host{display:flex;flex-direction:row;align-items:flex-end}:host.--full-width{width:100%}:host .path-selector{flex:2}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "component", type: ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "documentDefinitionName", "version", "prefixes", "label", "tooltip", "required", "showDocumentDefinitionSelector", "notation", "defaultValue", "type", "parentItem"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] }); }
|
|
42
42
|
}
|
|
43
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KeyValuePathSelectorComponent, decorators: [{
|
|
44
44
|
type: Component,
|
|
@@ -79,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
79
79
|
}], valueChange: [{
|
|
80
80
|
type: Output
|
|
81
81
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LXZhbHVlLXBhdGgtc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tdWx0aS1pbnB1dC9jb21wb25lbnRzL2tleS12YWx1ZS1wYXRoLXNlbGVjdG9yL2tleS12YWx1ZS1wYXRoLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY29tcG9uZW50cy9rZXktdmFsdWUtcGF0aC1zZWxlY3Rvci9rZXktdmFsdWUtcGF0aC1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQU9sRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQzs7OztBQWV4RSxNQUFNLE9BQU8sNkJBQTZCO0lBYjFDO1FBa0I4RCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3JELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFakIsMkJBQXNCLEdBQUcsRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBOEIsRUFBRSxDQUFDO1FBQ3pDLG1DQUE4QixHQUFHLEtBQUssQ0FBQztRQUN2QyxhQUFRLEdBQThCLE1BQU0sQ0FBQztRQUM3QyxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNsQixvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUVuQixnQkFBVyxHQUloQyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBS3pCO0lBSFEsYUFBYSxDQUFDLElBQStCLEVBQUUsVUFBa0I7UUFDdEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDOytHQXZCVSw2QkFBNkI7bUdBQTdCLDZCQUE2Qiw0a0JDMUMxQyx1cURBa0RBLDh5QkRmSSxZQUFZLGdPQUNaLFdBQVcsMFdBQ1gsMEJBQTBCLGlYQUMxQixXQUFXLDhCQUNYLG1CQUFtQjs7NEZBR1YsNkJBQTZCO2tCQWJ6QyxTQUFTOytCQUNFLGlDQUFpQyxjQUcvQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLDBCQUEwQjt3QkFDMUIsV0FBVzt3QkFDWCxtQkFBbUI7cUJBQ3BCOzhCQUd3QixjQUFjO3NCQUF0QyxLQUFLO2dCQUNtQixnQkFBZ0I7c0JBQXhDLEtBQUs7Z0JBQ21CLEtBQUs7c0JBQTdCLEtBQUs7Z0JBQ21CLEtBQUs7c0JBQTdCLEtBQUs7Z0JBQ3NELFNBQVM7c0JBQXBFLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsb0JBQW9CO2dCQUNqQixRQUFRO3NCQUFoQyxLQUFLO2dCQUVtQixzQkFBc0I7c0JBQTlDLEtBQUs7Z0JBQ21CLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLDhCQUE4QjtzQkFBdEQsS0FBSztnQkFDbUIsUUFBUTtzQkFBaEMsS0FBSztnQkFDbUIsYUFBYTtzQkFBckMsS0FBSztnQkFDbUIsZUFBZTtzQkFBdkMsS0FBSztnQkFFb0IsV0FBVztzQkFBcEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIaW1wb3J0IHsgTGFiZWxNb2R1bGUgfSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbk9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBNdWx0aUlucHV0Q2hhbmdlRXZlbnRUeXBlLFxuICBNdWx0aUlucHV0S2V5VmFsdWUsXG4gIFZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb24sXG4gIFZhbHVlUGF0aFNlbGVjdG9yUHJlZml4LFxufSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0lucHV0TW9kdWxlfSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7VmFsdWVQYXRoU2VsZWN0b3JDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL3ZhbHVlLXBhdGgtc2VsZWN0b3InO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWtleS12YWx1ZS1wYXRoLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tleS12YWx1ZS1wYXRoLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2tleS12YWx1ZS1wYXRoLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW5wdXRNb2R1bGUsXG4gICAgVmFsdWVQYXRoU2VsZWN0b3JDb21wb25lbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgS2V5VmFsdWVQYXRoU2VsZWN0b3JDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkga2V5Q29sdW1uVGl0bGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZUNvbHVtblRpdGxlITogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgaW5kZXghOiBudW1iZXI7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZSE6IE11bHRpSW5wdXRLZXlWYWx1ZTtcbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy4tLWZ1bGwtd2lkdGgnKSBwdWJsaWMgcmVhZG9ubHkgZnVsbFdpZHRoID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBkb2N1bWVudERlZmluaXRpb25OYW1lID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBwcmVmaXhlczogVmFsdWVQYXRoU2VsZWN0b3JQcmVmaXhbXSA9IFtdO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgc2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBub3RhdGlvbjogVmFsdWVQYXRoU2VsZWN0b3JOb3RhdGlvbiA9ICdkb3RzJztcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IGtleUNvbHVtbkZsZXggPSAxO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVDb2x1bW5GbGV4ID0gMTtcblxuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8e1xuICAgIHZhbHVlOiBNdWx0aUlucHV0S2V5VmFsdWU7XG4gICAgaW5wdXRWYWx1ZTogc3RyaW5nO1xuICAgIHR5cGU6IE11bHRpSW5wdXRDaGFuZ2VFdmVudFR5cGU7XG4gIH0+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyBvbklucHV0Q2hhbmdlKHR5cGU6IE11bHRpSW5wdXRDaGFuZ2VFdmVudFR5cGUsIGlucHV0VmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh7dmFsdWU6IHRoaXMudmFsdWUsIGlucHV0VmFsdWUsIHR5cGV9KTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48ZGl2XG4gIGNsYXNzPVwidi1tdWx0aS1pbnB1dF9faW5wdXQga2V5XCJcbiAgW25nQ2xhc3NdPVwieyctLWZ1bGwtd2lkdGgnOiBmdWxsV2lkdGh9XCJcbiAgW3N0eWxlLmZsZXhdPVwia2V5Q29sdW1uRmxleFwiXG4+XG4gIDxjZHMtbGFiZWwgKm5nSWY9XCJpbmRleCA9PT0gMCAmJiBrZXlDb2x1bW5UaXRsZVwiPnt7IGtleUNvbHVtblRpdGxlIH19PC9jZHMtbGFiZWw+XG5cbiAgPGlucHV0XG4gICAgY2RzVGV4dFxuICAgIFtkZWZhdWx0VmFsdWVdPVwidmFsdWUua2V5XCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIChpbnB1dCk9XCJvbklucHV0Q2hhbmdlKCdrZXknLCAkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gIC8+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInYtbXVsdGktaW5wdXRfX3NlcGFyYXRvclwiPjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwidi1tdWx0aS1pbnB1dF9faW5wdXQgcGF0aC1zZWxlY3RvclwiXG4gIFtuZ0NsYXNzXT1cInsnLS1mdWxsLXdpZHRoJzogZnVsbFdpZHRofVwiXG4gIFtzdHlsZS5mbGV4XT1cInZhbHVlQ29sdW1uRmxleFwiXG4+XG4gIDxjZHMtbGFiZWwgKm5nSWY9XCJpbmRleCA9PT0gMCAmJiB2YWx1ZUNvbHVtblRpdGxlXCI+e3sgdmFsdWVDb2x1bW5UaXRsZSB9fTwvY2RzLWxhYmVsPlxuXG4gIDx2YWx0aW1vLXZhbHVlLXBhdGgtc2VsZWN0b3JcbiAgICBbZG9jdW1lbnREZWZpbml0aW9uTmFtZV09XCJkb2N1bWVudERlZmluaXRpb25OYW1lXCJcbiAgICBbcHJlZml4ZXNdPVwicHJlZml4ZXNcIlxuICAgIFtzaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3JdPVwic2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtkZWZhdWx0VmFsdWVdPVwidmFsdWU/LnZhbHVlXCJcbiAgICBbbm90YXRpb25dPVwibm90YXRpb25cIlxuICAgICh2YWx1ZUNoYW5nZUV2ZW50KT1cIm9uSW5wdXRDaGFuZ2UoJ3ZhbHVlJywgJGV2ZW50KVwiXG4gID48L3ZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvcj5cbjwvZGl2PlxuIl19
|
|
@@ -39,7 +39,7 @@ export class ValuePathSelectorDropdownValueComponent {
|
|
|
39
39
|
this.valueChange.emit({ value: this.value, inputValue, type });
|
|
40
40
|
}
|
|
41
41
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ValuePathSelectorDropdownValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ValuePathSelectorDropdownValueComponent, isStandalone: true, selector: "valtimo-value-path-selector-dropdown-value", inputs: { keyColumnTitle: "keyColumnTitle", valueColumnTitle: "valueColumnTitle", dropdownColumnTitle: "dropdownColumnTitle", index: "index", value: "value", dropdownItems$: "dropdownItems$", documentDefinitionName: "documentDefinitionName", prefixes: "prefixes", showDocumentDefinitionSelector: "showDocumentDefinitionSelector", notation: "notation", dropdownWidth: "dropdownWidth", fullWidth: "fullWidth", disabled: "disabled", keyColumnFlex: "keyColumnFlex", dropdownColumnFlex: "dropdownColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.--full-width": "this.fullWidth" } }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"v-multi-input__input path-selector\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"keyColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && keyColumnTitle\">{{ keyColumnTitle }}</cds-label>\n\n <valtimo-value-path-selector\n [documentDefinitionName]=\"documentDefinitionName\"\n [prefixes]=\"prefixes\"\n [showDocumentDefinitionSelector]=\"showDocumentDefinitionSelector\"\n [disabled]=\"disabled\"\n [defaultValue]=\"value?.key\"\n [notation]=\"notation\"\n (valueChangeEvent)=\"onInputChange('key', $event)\"\n ></valtimo-value-path-selector>\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.minWidth.px]=\"dropdownWidth\"\n [style.flex]=\"dropdownColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && dropdownColumnTitle\">{{ dropdownColumnTitle }}</cds-label>\n\n <cds-dropdown (selected)=\"onInputChange('dropdown', $event.item.id)\" [appendInline]=\"true\">\n <cds-dropdown-list [items]=\"dropdownItems$ | async\" type=\"multi\"></cds-dropdown-list>\n </cds-dropdown>\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"valueColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && valueColumnTitle\">{{ valueColumnTitle }}</cds-label>\n\n <input\n cdsText\n [defaultValue]=\"value.value\"\n [disabled]=\"disabled\"\n (input)=\"onInputChange('value', $event.target.value)\"\n />\n</div>\n", styles: [":host{display:flex;align-items:flex-end}:host.--full-width{width:100%}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i2.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i2.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "documentDefinitionName", "version", "prefixes", "label", "tooltip", "required", "showDocumentDefinitionSelector", "notation", "defaultValue"], outputs: ["valueChangeEvent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ValuePathSelectorDropdownValueComponent, isStandalone: true, selector: "valtimo-value-path-selector-dropdown-value", inputs: { keyColumnTitle: "keyColumnTitle", valueColumnTitle: "valueColumnTitle", dropdownColumnTitle: "dropdownColumnTitle", index: "index", value: "value", dropdownItems$: "dropdownItems$", documentDefinitionName: "documentDefinitionName", prefixes: "prefixes", showDocumentDefinitionSelector: "showDocumentDefinitionSelector", notation: "notation", dropdownWidth: "dropdownWidth", fullWidth: "fullWidth", disabled: "disabled", keyColumnFlex: "keyColumnFlex", dropdownColumnFlex: "dropdownColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.--full-width": "this.fullWidth" } }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"v-multi-input__input path-selector\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"keyColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && keyColumnTitle\">{{ keyColumnTitle }}</cds-label>\n\n <valtimo-value-path-selector\n [documentDefinitionName]=\"documentDefinitionName\"\n [prefixes]=\"prefixes\"\n [showDocumentDefinitionSelector]=\"showDocumentDefinitionSelector\"\n [disabled]=\"disabled\"\n [defaultValue]=\"value?.key\"\n [notation]=\"notation\"\n (valueChangeEvent)=\"onInputChange('key', $event)\"\n ></valtimo-value-path-selector>\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.minWidth.px]=\"dropdownWidth\"\n [style.flex]=\"dropdownColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && dropdownColumnTitle\">{{ dropdownColumnTitle }}</cds-label>\n\n <cds-dropdown (selected)=\"onInputChange('dropdown', $event.item.id)\" [appendInline]=\"true\">\n <cds-dropdown-list [items]=\"dropdownItems$ | async\" type=\"multi\"></cds-dropdown-list>\n </cds-dropdown>\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"valueColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && valueColumnTitle\">{{ valueColumnTitle }}</cds-label>\n\n <input\n cdsText\n [defaultValue]=\"value.value\"\n [disabled]=\"disabled\"\n (input)=\"onInputChange('value', $event.target.value)\"\n />\n</div>\n", styles: [":host{display:flex;align-items:flex-end}:host.--full-width{width:100%}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i2.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i2.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "documentDefinitionName", "version", "prefixes", "label", "tooltip", "required", "showDocumentDefinitionSelector", "notation", "defaultValue", "type", "parentItem"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] }); }
|
|
43
43
|
}
|
|
44
44
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ValuePathSelectorDropdownValueComponent, decorators: [{
|
|
45
45
|
type: Component,
|
|
@@ -89,4 +89,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
89
89
|
}], valueChange: [{
|
|
90
90
|
type: Output
|
|
91
91
|
}] } });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL211bHRpLWlucHV0L2NvbXBvbmVudHMvdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZS92YWx1ZS1wYXRoLXNlbGVjdG9yLWRyb3Bkb3duLXZhbHVlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY29tcG9uZW50cy92YWx1ZS1wYXRoLXNlbGVjdG9yLWRyb3Bkb3duLXZhbHVlL3ZhbHVlLXBhdGgtc2VsZWN0b3ItZHJvcGRvd24tdmFsdWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQVFsRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGNBQWMsRUFBRSxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFpQnhFLE1BQU0sT0FBTyx1Q0FBdUM7SUFkcEQ7UUFxQjJCLDJCQUFzQixHQUFHLEVBQUUsQ0FBQztRQUM1QixhQUFRLEdBQThCLEVBQUUsQ0FBQztRQUN6QyxtQ0FBOEIsR0FBRyxLQUFLLENBQUM7UUFDdkMsYUFBUSxHQUE4QixNQUFNLENBQUM7UUFDN0Msa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFDZSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3JELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEIsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBRW5CLGdCQUFXLEdBSWhDLElBQUksWUFBWSxFQUFFLENBQUM7S0FLekI7SUFIUSxhQUFhLENBQUMsSUFBK0IsRUFBRSxVQUFrQjtRQUN0RSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7K0dBMUJVLHVDQUF1QzttR0FBdkMsdUNBQXVDLCt1QkM1Q3BELCtyRUFpRUEsK3ZCRDdCSSxZQUFZLHFSQUNaLFdBQVcseVdBQ1gsY0FBYyxpc0JBQ2QsMEJBQTBCLGlYQUMxQixXQUFXLDhCQUNYLG1CQUFtQjs7NEZBR1YsdUNBQXVDO2tCQWRuRCxTQUFTOytCQUNFLDRDQUE0QyxjQUcxQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsMEJBQTBCO3dCQUMxQixXQUFXO3dCQUNYLG1CQUFtQjtxQkFDcEI7OEJBR3dCLGNBQWM7c0JBQXRDLEtBQUs7Z0JBQ21CLGdCQUFnQjtzQkFBeEMsS0FBSztnQkFDbUIsbUJBQW1CO3NCQUEzQyxLQUFLO2dCQUNtQixLQUFLO3NCQUE3QixLQUFLO2dCQUNtQixLQUFLO3NCQUE3QixLQUFLO2dCQUNtQixjQUFjO3NCQUF0QyxLQUFLO2dCQUNtQixzQkFBc0I7c0JBQTlDLEtBQUs7Z0JBQ21CLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLDhCQUE4QjtzQkFBdEQsS0FBSztnQkFDbUIsUUFBUTtzQkFBaEMsS0FBSztnQkFDbUIsYUFBYTtzQkFBckMsS0FBSztnQkFDc0QsU0FBUztzQkFBcEUsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxvQkFBb0I7Z0JBQ2pCLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLGFBQWE7c0JBQXJDLEtBQUs7Z0JBQ21CLGtCQUFrQjtzQkFBMUMsS0FBSztnQkFDbUIsZUFBZTtzQkFBdkMsS0FBSztnQkFFb0IsV0FBVztzQkFBcEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIExpc3RJdGVtV2l0aElkLFxuICBNdWx0aUlucHV0Q2hhbmdlRXZlbnRUeXBlLFxuICBNdWx0aUlucHV0S2V5VmFsdWUsXG4gIFZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb24sXG4gIFZhbHVlUGF0aFNlbGVjdG9yUHJlZml4LFxufSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0Ryb3Bkb3duTW9kdWxlLCBJbnB1dE1vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1ZhbHVlUGF0aFNlbGVjdG9yQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi92YWx1ZS1wYXRoLXNlbGVjdG9yJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi92YWx1ZS1wYXRoLXNlbGVjdG9yLWRyb3Bkb3duLXZhbHVlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdmFsdWUtcGF0aC1zZWxlY3Rvci1kcm9wZG93bi12YWx1ZS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIElucHV0TW9kdWxlLFxuICAgIERyb3Bkb3duTW9kdWxlLFxuICAgIFZhbHVlUGF0aFNlbGVjdG9yQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFZhbHVlUGF0aFNlbGVjdG9yRHJvcGRvd25WYWx1ZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBrZXlDb2x1bW5UaXRsZSE6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHZhbHVlQ29sdW1uVGl0bGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBkcm9wZG93bkNvbHVtblRpdGxlITogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgaW5kZXghOiBudW1iZXI7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZSE6IE11bHRpSW5wdXRLZXlWYWx1ZTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IGRyb3Bkb3duSXRlbXMkITogT2JzZXJ2YWJsZTxBcnJheTxMaXN0SXRlbVdpdGhJZD4+O1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnREZWZpbml0aW9uTmFtZSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgcHJlZml4ZXM6IFZhbHVlUGF0aFNlbGVjdG9yUHJlZml4W10gPSBbXTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHNob3dEb2N1bWVudERlZmluaXRpb25TZWxlY3RvciA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgbm90YXRpb246IFZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb24gPSAnZG90cyc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBkcm9wZG93bldpZHRoID0gMjUwO1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLi0tZnVsbC13aWR0aCcpIHB1YmxpYyByZWFkb25seSBmdWxsV2lkdGggPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBrZXlDb2x1bW5GbGV4ID0gMTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IGRyb3Bkb3duQ29sdW1uRmxleCA9IDE7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZUNvbHVtbkZsZXggPSAxO1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjx7XG4gICAgdmFsdWU6IE11bHRpSW5wdXRLZXlWYWx1ZTtcbiAgICBpbnB1dFZhbHVlOiBzdHJpbmc7XG4gICAgdHlwZTogTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZTtcbiAgfT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIG9uSW5wdXRDaGFuZ2UodHlwZTogTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZSwgaW5wdXRWYWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHt2YWx1ZTogdGhpcy52YWx1ZSwgaW5wdXRWYWx1ZSwgdHlwZX0pO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXZcbiAgY2xhc3M9XCJ2LW11bHRpLWlucHV0X19pbnB1dCBwYXRoLXNlbGVjdG9yXCJcbiAgW25nQ2xhc3NdPVwieyctLWZ1bGwtd2lkdGgnOiBmdWxsV2lkdGh9XCJcbiAgW3N0eWxlLmZsZXhdPVwia2V5Q29sdW1uRmxleFwiXG4+XG4gIDxjZHMtbGFiZWwgKm5nSWY9XCJpbmRleCA9PT0gMCAmJiBrZXlDb2x1bW5UaXRsZVwiPnt7IGtleUNvbHVtblRpdGxlIH19PC9jZHMtbGFiZWw+XG5cbiAgPHZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3RvclxuICAgIFtkb2N1bWVudERlZmluaXRpb25OYW1lXT1cImRvY3VtZW50RGVmaW5pdGlvbk5hbWVcIlxuICAgIFtwcmVmaXhlc109XCJwcmVmaXhlc1wiXG4gICAgW3Nob3dEb2N1bWVudERlZmluaXRpb25TZWxlY3Rvcl09XCJzaG93RG9jdW1lbnREZWZpbml0aW9uU2VsZWN0b3JcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2RlZmF1bHRWYWx1ZV09XCJ2YWx1ZT8ua2V5XCJcbiAgICBbbm90YXRpb25dPVwibm90YXRpb25cIlxuICAgICh2YWx1ZUNoYW5nZUV2ZW50KT1cIm9uSW5wdXRDaGFuZ2UoJ2tleScsICRldmVudClcIlxuICA+PC92YWx0aW1vLXZhbHVlLXBhdGgtc2VsZWN0b3I+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInYtbXVsdGktaW5wdXRfX3NlcGFyYXRvclwiPjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwidi1tdWx0aS1pbnB1dF9faW5wdXRcIlxuICBbbmdDbGFzc109XCJ7Jy0tZnVsbC13aWR0aCc6IGZ1bGxXaWR0aH1cIlxuICBbc3R5bGUubWluV2lkdGgucHhdPVwiZHJvcGRvd25XaWR0aFwiXG4gIFtzdHlsZS5mbGV4XT1cImRyb3Bkb3duQ29sdW1uRmxleFwiXG4+XG4gIDxjZHMtbGFiZWwgKm5nSWY9XCJpbmRleCA9PT0gMCAmJiBkcm9wZG93bkNvbHVtblRpdGxlXCI+e3sgZHJvcGRvd25Db2x1bW5UaXRsZSB9fTwvY2RzLWxhYmVsPlxuXG4gIDxjZHMtZHJvcGRvd24gKHNlbGVjdGVkKT1cIm9uSW5wdXRDaGFuZ2UoJ2Ryb3Bkb3duJywgJGV2ZW50Lml0ZW0uaWQpXCIgW2FwcGVuZElubGluZV09XCJ0cnVlXCI+XG4gICAgPGNkcy1kcm9wZG93bi1saXN0IFtpdGVtc109XCJkcm9wZG93bkl0ZW1zJCB8IGFzeW5jXCIgdHlwZT1cIm11bHRpXCI+PC9jZHMtZHJvcGRvd24tbGlzdD5cbiAgPC9jZHMtZHJvcGRvd24+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInYtbXVsdGktaW5wdXRfX3NlcGFyYXRvclwiPjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwidi1tdWx0aS1pbnB1dF9faW5wdXRcIlxuICBbbmdDbGFzc109XCJ7Jy0tZnVsbC13aWR0aCc6IGZ1bGxXaWR0aH1cIlxuICBbc3R5bGUuZmxleF09XCJ2YWx1ZUNvbHVtbkZsZXhcIlxuPlxuICA8Y2RzLWxhYmVsICpuZ0lmPVwiaW5kZXggPT09IDAgJiYgdmFsdWVDb2x1bW5UaXRsZVwiPnt7IHZhbHVlQ29sdW1uVGl0bGUgfX08L2Nkcy1sYWJlbD5cblxuICA8aW5wdXRcbiAgICBjZHNUZXh0XG4gICAgW2RlZmF1bHRWYWx1ZV09XCJ2YWx1ZS52YWx1ZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAoaW5wdXQpPVwib25JbnB1dENoYW5nZSgndmFsdWUnLCAkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gIC8+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -38,7 +38,7 @@ export class ValuePathSelectorValueComponent {
|
|
|
38
38
|
this.valueChange.emit({ value: this.value, inputValue, type });
|
|
39
39
|
}
|
|
40
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ValuePathSelectorValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ValuePathSelectorValueComponent, isStandalone: true, selector: "valtimo-value-path-selector-value", inputs: { keyColumnTitle: "keyColumnTitle", valueColumnTitle: "valueColumnTitle", index: "index", value: "value", fullWidth: "fullWidth", disabled: "disabled", documentDefinitionName: "documentDefinitionName", prefixes: "prefixes", showDocumentDefinitionSelector: "showDocumentDefinitionSelector", notation: "notation", keyColumnFlex: "keyColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.--full-width": "this.fullWidth" } }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"v-multi-input__input path-selector\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"keyColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && keyColumnTitle\">{{ keyColumnTitle }}</cds-label>\n\n <valtimo-value-path-selector\n [documentDefinitionName]=\"documentDefinitionName\"\n [prefixes]=\"prefixes\"\n [showDocumentDefinitionSelector]=\"showDocumentDefinitionSelector\"\n [disabled]=\"disabled\"\n [defaultValue]=\"value?.key\"\n [notation]=\"notation\"\n (valueChangeEvent)=\"onInputChange('key', $event)\"\n ></valtimo-value-path-selector>\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"valueColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && valueColumnTitle\">{{ valueColumnTitle }}</cds-label>\n\n <input\n cdsText\n [defaultValue]=\"value.value\"\n [disabled]=\"disabled\"\n (input)=\"onInputChange('value', $event.target.value)\"\n />\n</div>\n", styles: [":host{display:flex;flex-direction:row;align-items:flex-end}:host.--full-width{width:100%}:host .path-selector{flex:2}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "component", type: ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "documentDefinitionName", "version", "prefixes", "label", "tooltip", "required", "showDocumentDefinitionSelector", "notation", "defaultValue"], outputs: ["valueChangeEvent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] }); }
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ValuePathSelectorValueComponent, isStandalone: true, selector: "valtimo-value-path-selector-value", inputs: { keyColumnTitle: "keyColumnTitle", valueColumnTitle: "valueColumnTitle", index: "index", value: "value", fullWidth: "fullWidth", disabled: "disabled", documentDefinitionName: "documentDefinitionName", prefixes: "prefixes", showDocumentDefinitionSelector: "showDocumentDefinitionSelector", notation: "notation", keyColumnFlex: "keyColumnFlex", valueColumnFlex: "valueColumnFlex" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.--full-width": "this.fullWidth" } }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"v-multi-input__input path-selector\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"keyColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && keyColumnTitle\">{{ keyColumnTitle }}</cds-label>\n\n <valtimo-value-path-selector\n [documentDefinitionName]=\"documentDefinitionName\"\n [prefixes]=\"prefixes\"\n [showDocumentDefinitionSelector]=\"showDocumentDefinitionSelector\"\n [disabled]=\"disabled\"\n [defaultValue]=\"value?.key\"\n [notation]=\"notation\"\n (valueChangeEvent)=\"onInputChange('key', $event)\"\n ></valtimo-value-path-selector>\n</div>\n\n<div class=\"v-multi-input__separator\"></div>\n\n<div\n class=\"v-multi-input__input\"\n [ngClass]=\"{'--full-width': fullWidth}\"\n [style.flex]=\"valueColumnFlex\"\n>\n <cds-label *ngIf=\"index === 0 && valueColumnTitle\">{{ valueColumnTitle }}</cds-label>\n\n <input\n cdsText\n [defaultValue]=\"value.value\"\n [disabled]=\"disabled\"\n (input)=\"onInputChange('value', $event.target.value)\"\n />\n</div>\n", styles: [":host{display:flex;flex-direction:row;align-items:flex-end}:host.--full-width{width:100%}:host .path-selector{flex:2}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "component", type: ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "documentDefinitionName", "version", "prefixes", "label", "tooltip", "required", "showDocumentDefinitionSelector", "notation", "defaultValue", "type", "parentItem"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] }); }
|
|
42
42
|
}
|
|
43
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ValuePathSelectorValueComponent, decorators: [{
|
|
44
44
|
type: Component,
|
|
@@ -79,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
79
79
|
}], valueChange: [{
|
|
80
80
|
type: Output
|
|
81
81
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtcGF0aC1zZWxlY3Rvci12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL211bHRpLWlucHV0L2NvbXBvbmVudHMvdmFsdWUtcGF0aC1zZWxlY3Rvci12YWx1ZS92YWx1ZS1wYXRoLXNlbGVjdG9yLXZhbHVlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGktaW5wdXQvY29tcG9uZW50cy92YWx1ZS1wYXRoLXNlbGVjdG9yLXZhbHVlL3ZhbHVlLXBhdGgtc2VsZWN0b3ItdmFsdWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFPbEYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFleEUsTUFBTSxPQUFPLCtCQUErQjtJQWI1QztRQWtCOEQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNyRCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLDJCQUFzQixHQUFHLEVBQUUsQ0FBQztRQUM1QixhQUFRLEdBQThCLEVBQUUsQ0FBQztRQUN6QyxtQ0FBOEIsR0FBRyxLQUFLLENBQUM7UUFDdkMsYUFBUSxHQUE4QixNQUFNLENBQUM7UUFDN0Msa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEIsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFFbkIsZ0JBQVcsR0FJaEMsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQUt6QjtJQUhRLGFBQWEsQ0FBQyxJQUErQixFQUFFLFVBQWtCO1FBQ3RFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQzsrR0F0QlUsK0JBQStCO21HQUEvQiwrQkFBK0IsOGtCQzFDNUMsbXFEQWtEQSw4eUJEZkksWUFBWSxnT0FDWixXQUFXLDBXQUNYLDBCQUEwQixpWEFDMUIsV0FBVyw4QkFDWCxtQkFBbUI7OzRGQUdWLCtCQUErQjtrQkFiM0MsU0FBUzsrQkFDRSxtQ0FBbUMsY0FHakMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCwwQkFBMEI7d0JBQzFCLFdBQVc7d0JBQ1gsbUJBQW1CO3FCQUNwQjs4QkFHd0IsY0FBYztzQkFBdEMsS0FBSztnQkFDbUIsZ0JBQWdCO3NCQUF4QyxLQUFLO2dCQUNtQixLQUFLO3NCQUE3QixLQUFLO2dCQUNtQixLQUFLO3NCQUE3QixLQUFLO2dCQUNzRCxTQUFTO3NCQUFwRSxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLG9CQUFvQjtnQkFDakIsUUFBUTtzQkFBaEMsS0FBSztnQkFDbUIsc0JBQXNCO3NCQUE5QyxLQUFLO2dCQUNtQixRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQiw4QkFBOEI7c0JBQXRELEtBQUs7Z0JBQ21CLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLGFBQWE7c0JBQXJDLEtBQUs7Z0JBQ21CLGVBQWU7c0JBQXZDLEtBQUs7Z0JBRW9CLFdBQVc7c0JBQXBDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSGltcG9ydCB7IExhYmVsTW9kdWxlIH0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5PVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTXVsdGlJbnB1dENoYW5nZUV2ZW50VHlwZSxcbiAgTXVsdGlJbnB1dEtleVZhbHVlLFxuICBWYWx1ZVBhdGhTZWxlY3Rvck5vdGF0aW9uLFxuICBWYWx1ZVBhdGhTZWxlY3RvclByZWZpeCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtJbnB1dE1vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1ZhbHVlUGF0aFNlbGVjdG9yQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi92YWx1ZS1wYXRoLXNlbGVjdG9yJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby12YWx1ZS1wYXRoLXNlbGVjdG9yLXZhbHVlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ZhbHVlLXBhdGgtc2VsZWN0b3ItdmFsdWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsndmFsdWUtcGF0aC1zZWxlY3Rvci12YWx1ZS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIElucHV0TW9kdWxlLFxuICAgIFZhbHVlUGF0aFNlbGVjdG9yQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFZhbHVlUGF0aFNlbGVjdG9yVmFsdWVDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkga2V5Q29sdW1uVGl0bGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZUNvbHVtblRpdGxlITogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgaW5kZXghOiBudW1iZXI7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZSE6IE11bHRpSW5wdXRLZXlWYWx1ZTtcbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy4tLWZ1bGwtd2lkdGgnKSBwdWJsaWMgcmVhZG9ubHkgZnVsbFdpZHRoID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnREZWZpbml0aW9uTmFtZSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgcHJlZml4ZXM6IFZhbHVlUGF0aFNlbGVjdG9yUHJlZml4W10gPSBbXTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHNob3dEb2N1bWVudERlZmluaXRpb25TZWxlY3RvciA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgbm90YXRpb246IFZhbHVlUGF0aFNlbGVjdG9yTm90YXRpb24gPSAnZG90cyc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSBrZXlDb2x1bW5GbGV4ID0gMTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5IHZhbHVlQ29sdW1uRmxleCA9IDE7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPHtcbiAgICB2YWx1ZTogTXVsdGlJbnB1dEtleVZhbHVlO1xuICAgIGlucHV0VmFsdWU6IHN0cmluZztcbiAgICB0eXBlOiBNdWx0aUlucHV0Q2hhbmdlRXZlbnRUeXBlO1xuICB9PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgb25JbnB1dENoYW5nZSh0eXBlOiBNdWx0aUlucHV0Q2hhbmdlRXZlbnRUeXBlLCBpbnB1dFZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoe3ZhbHVlOiB0aGlzLnZhbHVlLCBpbnB1dFZhbHVlLCB0eXBlfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICBjbGFzcz1cInYtbXVsdGktaW5wdXRfX2lucHV0IHBhdGgtc2VsZWN0b3JcIlxuICBbbmdDbGFzc109XCJ7Jy0tZnVsbC13aWR0aCc6IGZ1bGxXaWR0aH1cIlxuICBbc3R5bGUuZmxleF09XCJrZXlDb2x1bW5GbGV4XCJcbj5cbiAgPGNkcy1sYWJlbCAqbmdJZj1cImluZGV4ID09PSAwICYmIGtleUNvbHVtblRpdGxlXCI+e3sga2V5Q29sdW1uVGl0bGUgfX08L2Nkcy1sYWJlbD5cblxuICA8dmFsdGltby12YWx1ZS1wYXRoLXNlbGVjdG9yXG4gICAgW2RvY3VtZW50RGVmaW5pdGlvbk5hbWVdPVwiZG9jdW1lbnREZWZpbml0aW9uTmFtZVwiXG4gICAgW3ByZWZpeGVzXT1cInByZWZpeGVzXCJcbiAgICBbc2hvd0RvY3VtZW50RGVmaW5pdGlvblNlbGVjdG9yXT1cInNob3dEb2N1bWVudERlZmluaXRpb25TZWxlY3RvclwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZGVmYXVsdFZhbHVlXT1cInZhbHVlPy5rZXlcIlxuICAgIFtub3RhdGlvbl09XCJub3RhdGlvblwiXG4gICAgKHZhbHVlQ2hhbmdlRXZlbnQpPVwib25JbnB1dENoYW5nZSgna2V5JywgJGV2ZW50KVwiXG4gID48L3ZhbHRpbW8tdmFsdWUtcGF0aC1zZWxlY3Rvcj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidi1tdWx0aS1pbnB1dF9fc2VwYXJhdG9yXCI+PC9kaXY+XG5cbjxkaXZcbiAgY2xhc3M9XCJ2LW11bHRpLWlucHV0X19pbnB1dFwiXG4gIFtuZ0NsYXNzXT1cInsnLS1mdWxsLXdpZHRoJzogZnVsbFdpZHRofVwiXG4gIFtzdHlsZS5mbGV4XT1cInZhbHVlQ29sdW1uRmxleFwiXG4+XG4gIDxjZHMtbGFiZWwgKm5nSWY9XCJpbmRleCA9PT0gMCAmJiB2YWx1ZUNvbHVtblRpdGxlXCI+e3sgdmFsdWVDb2x1bW5UaXRsZSB9fTwvY2RzLWxhYmVsPlxuXG4gIDxpbnB1dFxuICAgIGNkc1RleHRcbiAgICBbZGVmYXVsdFZhbHVlXT1cInZhbHVlLnZhbHVlXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIChpbnB1dCk9XCJvbklucHV0Q2hhbmdlKCd2YWx1ZScsICRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgLz5cbjwvZGl2PlxuIl19
|