ngx-material-entity 18.0.0 → 18.1.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/components/custom-table/custom-table-configuration.model.d.ts +65 -0
- package/components/custom-table/custom-table.component.d.ts +111 -0
- package/components/edit-page/edit-page.component.d.ts +5 -1
- package/components/input/array/array-date-input/array-date-input.component.d.ts +2 -2
- package/components/input/array/array-date-range-input/array-date-range-input.component.d.ts +3 -3
- package/components/input/array/array-date-time-input/array-date-time-input.component.d.ts +3 -3
- package/components/input/array/array-table.class.d.ts +25 -19
- package/components/input/input.component.d.ts +99 -80
- package/components/input/relations/references-many-input/references-many-input.component.d.ts +12 -17
- package/components/table/edit-dialog/edit-entity-dialog.component.d.ts +5 -5
- package/components/table/table-data.d.ts +9 -4
- package/components/table/table.component.d.ts +15 -37
- package/decorators/array/array-decorator-internal.data.d.ts +5 -1
- package/decorators/array/array-decorator.data.d.ts +38 -82
- package/decorators/references-many/references-many-decorator-internal.data.d.ts +3 -1
- package/decorators/references-many/references-many-decorator.data.d.ts +13 -1
- package/directives/dynamic-style-class.directive.d.ts +4 -5
- package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +5 -6
- package/esm2022/components/create-page/create-page.component.mjs +6 -7
- package/esm2022/components/custom-table/custom-table-configuration.model.mjs +37 -0
- package/esm2022/components/custom-table/custom-table.component.mjs +213 -0
- package/esm2022/components/edit-page/edit-page.component.mjs +19 -9
- package/esm2022/components/form/form.component.mjs +5 -6
- package/esm2022/components/input/array/array-date-input/array-date-input.component.mjs +16 -20
- package/esm2022/components/input/array/array-date-range-input/array-date-range-input.component.mjs +27 -26
- package/esm2022/components/input/array/array-date-time-input/array-date-time-input.component.mjs +17 -21
- package/esm2022/components/input/array/array-string-autocomplete-chips/array-string-autocomplete-chips.component.mjs +4 -4
- package/esm2022/components/input/array/array-string-chips-input/array-string-chips-input.component.mjs +4 -4
- package/esm2022/components/input/array/array-table.class.mjs +51 -43
- package/esm2022/components/input/date/date-range-input/date-range-input.component.mjs +5 -6
- package/esm2022/components/input/date/date-time-input/date-time-input.component.mjs +4 -4
- package/esm2022/components/input/file/file-image-input/file-image-input.component.mjs +4 -7
- package/esm2022/components/input/file/file-input/file-input.component.mjs +4 -5
- package/esm2022/components/input/input.component.mjs +143 -106
- package/esm2022/components/input/number/number-dropdown-input/number-dropdown-input.component.mjs +4 -5
- package/esm2022/components/input/relations/references-many-input/references-many-input.component.mjs +40 -55
- package/esm2022/components/input/string/string-autocomplete-input/string-autocomplete-input.component.mjs +4 -5
- package/esm2022/components/input/string/string-dropdown-input/string-dropdown-input.component.mjs +4 -5
- package/esm2022/components/input/string/string-password-input/string-password-input.component.mjs +4 -4
- package/esm2022/components/table/create-dialog/create-entity-dialog.component.mjs +9 -8
- package/esm2022/components/table/edit-dialog/edit-entity-dialog.component.mjs +22 -14
- package/esm2022/components/table/table-data.mjs +1 -1
- package/esm2022/components/table/table.component.mjs +40 -107
- package/esm2022/components/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/decorators/array/array-decorator-internal.data.mjs +14 -1
- package/esm2022/decorators/array/array-decorator.data.mjs +33 -2
- package/esm2022/decorators/has-many/has-many-decorator-internal.data.mjs +1 -1
- package/esm2022/decorators/references-many/references-many-decorator-internal.data.mjs +8 -1
- package/esm2022/decorators/references-many/references-many-decorator.data.mjs +1 -1
- package/esm2022/directives/dynamic-style-class.directive.mjs +5 -5
- package/esm2022/directives/tooltip.directive.mjs +4 -1
- package/esm2022/functions/get-changes-tooltip-content.function.mjs +23 -0
- package/esm2022/functions/get-validation-errors-tooltip-content.function.mjs +23 -0
- package/esm2022/functions/table-column-value-to-sort-value.function.mjs +29 -0
- package/esm2022/public-api.mjs +3 -2
- package/esm2022/utilities/date.utilities.mjs +7 -6
- package/esm2022/utilities/entity.utilities.mjs +23 -7
- package/esm2022/utilities/validation.utilities.mjs +2 -2
- package/fesm2022/ngx-material-entity.mjs +2550 -2224
- package/fesm2022/ngx-material-entity.mjs.map +1 -1
- package/functions/get-changes-tooltip-content.function.d.ts +13 -0
- package/functions/table-column-value-to-sort-value.function.d.ts +9 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
- package/utilities/entity.utilities.d.ts +7 -3
- package/esm2022/functions/get-validation-errors-tooltip-content.function.ts.mjs +0 -23
- /package/functions/{get-validation-errors-tooltip-content.function.ts.d.ts → get-validation-errors-tooltip-content.function.d.ts} +0 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ConfirmDialogDataBuilder } from '../../components/confirm-dialog/confirm-dialog-data.builder';
|
|
2
|
+
import { defaultDynamicStyleClasses } from '../../functions/default-style-classes.function';
|
|
2
3
|
import { getConfigValue } from '../../functions/get-config-value.function';
|
|
3
4
|
import { DateUtilities } from '../../utilities/date.utilities';
|
|
4
5
|
import { PropertyDecoratorConfigInternal } from '../base/property-decorator-internal.data';
|
|
@@ -34,6 +35,8 @@ export class EntityArrayDecoratorConfigInternal extends PropertyDecoratorConfigI
|
|
|
34
35
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
35
36
|
displayColumns;
|
|
36
37
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
38
|
+
dynamicRowStyleClasses;
|
|
39
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
37
40
|
createDialogData;
|
|
38
41
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
39
42
|
editDialogData;
|
|
@@ -53,6 +56,7 @@ export class EntityArrayDecoratorConfigInternal extends PropertyDecoratorConfigI
|
|
|
53
56
|
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
|
|
54
57
|
this.EntityClass = data.EntityClass;
|
|
55
58
|
this.displayColumns = data.displayColumns;
|
|
59
|
+
this.dynamicRowStyleClasses = data.dynamicRowStyleClasses ?? defaultDynamicStyleClasses;
|
|
56
60
|
this.createInline = data.createInline ?? true;
|
|
57
61
|
this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
|
|
58
62
|
this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
|
|
@@ -80,6 +84,8 @@ export class DateArrayDecoratorConfigInternal extends PropertyDecoratorConfigInt
|
|
|
80
84
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
81
85
|
missingErrorMessage;
|
|
82
86
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
87
|
+
dynamicRowStyleClasses;
|
|
88
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
83
89
|
min;
|
|
84
90
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
85
91
|
max;
|
|
@@ -95,6 +101,7 @@ export class DateArrayDecoratorConfigInternal extends PropertyDecoratorConfigInt
|
|
|
95
101
|
this.addButtonLabel = getConfigValue(globalConfig.addLabel, data.addButtonLabel);
|
|
96
102
|
this.removeButtonLabel = getConfigValue(globalConfig.removeLabel, data.removeButtonLabel);
|
|
97
103
|
this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
|
|
104
|
+
this.dynamicRowStyleClasses = data.dynamicRowStyleClasses ?? defaultDynamicStyleClasses;
|
|
98
105
|
this.min = data.min;
|
|
99
106
|
this.max = data.max;
|
|
100
107
|
this.filter = data.filter;
|
|
@@ -123,6 +130,8 @@ export class DateTimeArrayDecoratorConfigInternal extends PropertyDecoratorConfi
|
|
|
123
130
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
124
131
|
timeDisplayName;
|
|
125
132
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
133
|
+
dynamicRowStyleClasses;
|
|
134
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
126
135
|
minDate;
|
|
127
136
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
128
137
|
maxDate;
|
|
@@ -146,6 +155,7 @@ export class DateTimeArrayDecoratorConfigInternal extends PropertyDecoratorConfi
|
|
|
146
155
|
this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
|
|
147
156
|
this.times = data.times ?? DateUtilities.getDefaultTimes();
|
|
148
157
|
this.timeDisplayName = getConfigValue(globalConfig.timeLabel, data.timeDisplayName);
|
|
158
|
+
this.dynamicRowStyleClasses = data.dynamicRowStyleClasses ?? defaultDynamicStyleClasses;
|
|
149
159
|
this.minDate = data.minDate;
|
|
150
160
|
this.maxDate = data.maxDate;
|
|
151
161
|
this.filterDate = data.filterDate;
|
|
@@ -177,6 +187,8 @@ export class DateRangeArrayDecoratorConfigInternal extends PropertyDecoratorConf
|
|
|
177
187
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
178
188
|
placeholderEnd;
|
|
179
189
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
190
|
+
dynamicRowStyleClasses;
|
|
191
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
180
192
|
minStart;
|
|
181
193
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
182
194
|
maxStart;
|
|
@@ -198,6 +210,7 @@ export class DateRangeArrayDecoratorConfigInternal extends PropertyDecoratorConf
|
|
|
198
210
|
this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
|
|
199
211
|
this.placeholderStart = getConfigValue(globalConfig.startLabel, data.placeholderStart);
|
|
200
212
|
this.placeholderEnd = getConfigValue(globalConfig.endLabel, data.placeholderEnd);
|
|
213
|
+
this.dynamicRowStyleClasses = data.dynamicRowStyleClasses ?? defaultDynamicStyleClasses;
|
|
201
214
|
this.minStart = data.minStart;
|
|
202
215
|
this.maxStart = data.maxStart;
|
|
203
216
|
this.minEnd = data.minEnd;
|
|
@@ -292,4 +305,4 @@ function getDefaultDuplicateErrorDialogData(data, globalConfig) {
|
|
|
292
305
|
.withDefault('title', globalConfig.duplicateErrorTitle)
|
|
293
306
|
.getResult();
|
|
294
307
|
}
|
|
295
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBRXZHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsYUFBYSxFQUFRLE1BQU0sZ0NBQWdDLENBQUM7QUFHckUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFJM0Y7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLCtCQUErQjtJQUN4QywrQ0FBK0M7SUFDL0MsS0FBSyxDQUFpQztJQUN0QywrQ0FBK0M7SUFDL0Msa0JBQWtCLENBQVM7SUFDM0IsK0NBQStDO0lBQy9DLGlCQUFpQixDQUFTO0lBRTFCLFlBQVksWUFBb0MsRUFBRSxJQUEwQztRQUN4RixJQUFJLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDM0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQy9GLENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtDQUNULFNBQVEsK0JBQTZDO0lBRXJELCtDQUErQztJQUMvQyxRQUFRLENBQXdCO0lBQ2hDLCtDQUErQztJQUMvQyxlQUFl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Q0FBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDSjtBQUVEOzs7OztHQUtHO0FBQ0gsU0FBUyxrQ0FBa0MsQ0FDdkMsSUFBcUMsRUFDckMsWUFBb0M7SUFFcEMsT0FBTyxJQUFJLHdCQUF3QixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUM7U0FDeEUsV0FBVyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUM7U0FDaEMsV0FBVyxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsa0JBQWtCLENBQUM7U0FDcEQsV0FBVyxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsbUJBQW1CLENBQUM7U0FDdEQsU0FBUyxFQUFFLENBQUM7QUFDckIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVGaWx0ZXJGbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuXG5pbXBvcnQgeyBBcnJheURlY29yYXRvckNvbmZpZywgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZywgRWRpdEFycmF5SXRlbURpYWxvZ0RhdGEsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9hcnJheS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSwgRW50aXR5Q2xhc3NOZXdhYmxlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0RhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy1kYXRhLmJ1aWxkZXInO1xuaW1wb3J0IHsgQ3JlYXRlRGF0YSwgRGlzcGxheUNvbHVtbiB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdGFibGUvdGFibGUtZGF0YSc7XG5pbXBvcnQgeyBnZXRDb25maWdWYWx1ZSB9IGZyb20gJy4uLy4uL2Z1bmN0aW9ucy9nZXQtY29uZmlnLXZhbHVlLmZ1bmN0aW9uJztcbmltcG9ydCB7IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMgfSBmcm9tICcuLi8uLi9nbG9iYWwtY29uZmlndXJhdGlvbi12YWx1ZXMnO1xuaW1wb3J0IHsgRGF0ZVV0aWxpdGllcywgVGltZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9kYXRlLnV0aWxpdGllcyc7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uL2Jhc2UvZGVjb3JhdG9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgRHJvcGRvd25WYWx1ZSB9IGZyb20gJy4uL2Jhc2UvZHJvcGRvd24tdmFsdWUuaW50ZXJmYWNlJztcbmltcG9ydCB7IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IERhdGVSYW5nZSB9IGZyb20gJy4uL2RhdGUvZGF0ZS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBTdHJpbmdBdXRvY29tcGxldGVWYWx1ZXMgfSBmcm9tICcuLi9zdHJpbmcvc3RyaW5nLWRlY29yYXRvci5kYXRhJztcblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgZGlhbG9nIGRhdGEgZm9yIHRoZSBlbnRpdGllcyBhcnJheSBlZGl0IGRpYWxvZy5cbiAqIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YUludGVybmFsPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4gaW1wbGVtZW50cyBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlPiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0aXRsZTogKGVudGl0eTogRW50aXR5VHlwZSkgPT4gc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY29uZmlybUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjYW5jZWxCdXR0b25MYWJlbDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzLCBkYXRhPzogRWRpdEFycmF5SXRlbURpYWxvZ0RhdGE8RW50aXR5VHlwZT4pIHtcbiAgICAgICAgdGhpcy50aXRsZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5lZGl0VGl0bGUsIGRhdGE/LnRpdGxlKTtcbiAgICAgICAgdGhpcy5jb25maXJtQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuc2F2ZUxhYmVsLCBkYXRhPy5jb25maXJtQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLmNhbmNlbEJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmNhbmNlbExhYmVsLCBkYXRhPy5jYW5jZWxCdXR0b25MYWJlbCk7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PlxuICAgIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxFbnRpdHlUeXBlW10+IGltcGxlbWVudHMgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT4ge1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuT0JKRUNUO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIEVudGl0eUNsYXNzOiBFbnRpdHlDbGFzc05ld2FibGU8RW50aXR5VHlwZT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxFbnRpdHlUeXBlPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlRGlhbG9nRGF0YT86IENyZWF0ZURhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBlZGl0RGlhbG9nRGF0YTogRWRpdEFycmF5SXRlbURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNyZWF0ZUlubGluZTogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT4sIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5jcmVhdGVJbmxpbmUgPSBkYXRhLmNyZWF0ZUlubGluZSA/PyB0cnVlO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEsIGdsb2JhbENvbmZpZyk7XG4gICAgICAgIHRoaXMuRW50aXR5Q2xhc3MgPSBkYXRhLkVudGl0eUNsYXNzO1xuICAgICAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gZGF0YS5kaXNwbGF5Q29sdW1ucztcbiAgICAgICAgdGhpcy5jcmVhdGVJbmxpbmUgPSBkYXRhLmNyZWF0ZUlubGluZSA/PyB0cnVlO1xuICAgICAgICB0aGlzLm1pc3NpbmdFcnJvck1lc3NhZ2UgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuZW1wdHlBcnJheUVycm9yTWVzc2FnZSwgZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlKTtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFsxMiwgMTIsIDEyXTtcbiAgICAgICAgdGhpcy5hZGRCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5hZGRMYWJlbCwgZGF0YS5hZGRCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcucmVtb3ZlTGFiZWwsIGRhdGEucmVtb3ZlQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLmVkaXREaWFsb2dEYXRhID0gbmV3IEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhSW50ZXJuYWwoZ2xvYmFsQ29uZmlnLCBkYXRhLmVkaXREaWFsb2dEYXRhKTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIERhdGVBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxEYXRlW10+IGltcGxlbWVudHMgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPERhdGU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhZGRCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVtb3ZlQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbj86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlcj86IERhdGVGaWx0ZXJGbjxEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZD47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcsIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhLCBnbG9iYWxDb25maWcpO1xuICAgICAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gZGF0YS5kaXNwbGF5Q29sdW1ucztcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFsxMiwgMTIsIDEyXTtcbiAgICAgICAgdGhpcy5hZGRCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5hZGRMYWJlbCwgZGF0YS5hZGRCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcucmVtb3ZlTGFiZWwsIGRhdGEucmVtb3ZlQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLm1pc3NpbmdFcnJvck1lc3NhZ2UgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuZW1wdHlBcnJheUVycm9yTWVzc2FnZSwgZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlKTtcbiAgICAgICAgdGhpcy5taW4gPSBkYXRhLm1pbjtcbiAgICAgICAgdGhpcy5tYXggPSBkYXRhLm1heDtcbiAgICAgICAgdGhpcy5maWx0ZXIgPSBkYXRhLmZpbHRlcjtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVbXT4gaW1wbGVtZW50cyBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFX1RJTUU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IERpc3BsYXlDb2x1bW48RGF0ZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGltZXM6IERyb3Bkb3duVmFsdWU8VGltZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpbWVEaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluRGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heERhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXJEYXRlPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhUaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyVGltZT86ICgodGltZTogVGltZSkgPT4gYm9vbGVhbikgfCAoKCkgPT4gYm9vbGVhbik7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuYWRkTGFiZWwsIGRhdGEuYWRkQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLnJlbW92ZUxhYmVsLCBkYXRhLnJlbW92ZUJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVtcHR5QXJyYXlFcnJvck1lc3NhZ2UsIGRhdGEubWlzc2luZ0Vycm9yTWVzc2FnZSk7XG4gICAgICAgIHRoaXMudGltZXMgPSBkYXRhLnRpbWVzID8/IERhdGVVdGlsaXRpZXMuZ2V0RGVmYXVsdFRpbWVzKCk7XG4gICAgICAgIHRoaXMudGltZURpc3BsYXlOYW1lID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLnRpbWVMYWJlbCwgZGF0YS50aW1lRGlzcGxheU5hbWUpO1xuICAgICAgICB0aGlzLm1pbkRhdGUgPSBkYXRhLm1pbkRhdGU7XG4gICAgICAgIHRoaXMubWF4RGF0ZSA9IGRhdGEubWF4RGF0ZTtcbiAgICAgICAgdGhpcy5maWx0ZXJEYXRlID0gZGF0YS5maWx0ZXJEYXRlO1xuICAgICAgICB0aGlzLm1pblRpbWUgPSBkYXRhLm1pblRpbWU7XG4gICAgICAgIHRoaXMubWF4VGltZSA9IGRhdGEubWF4VGltZTtcbiAgICAgICAgdGhpcy5maWx0ZXJUaW1lID0gZGF0YS5maWx0ZXJUaW1lO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxEYXRlUmFuZ2VbXT5cbiAgICBpbXBsZW1lbnRzIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFX1JBTkdFO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPERhdGVSYW5nZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcGxhY2Vob2xkZXJTdGFydDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcGxhY2Vob2xkZXJFbmQ6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5FbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhFbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZywgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEsIGdsb2JhbENvbmZpZyk7XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbHVtbnMgPSBkYXRhLmRpc3BsYXlDb2x1bW5zO1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzEyLCAxMiwgMTJdO1xuICAgICAgICB0aGlzLmFkZEJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmFkZExhYmVsLCBkYXRhLmFkZEJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5yZW1vdmVCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5yZW1vdmVMYWJlbCwgZGF0YS5yZW1vdmVCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMubWlzc2luZ0Vycm9yTWVzc2FnZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5lbXB0eUFycmF5RXJyb3JNZXNzYWdlLCBkYXRhLm1pc3NpbmdFcnJvck1lc3NhZ2UpO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyU3RhcnQgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuc3RhcnRMYWJlbCwgZGF0YS5wbGFjZWhvbGRlclN0YXJ0KTtcbiAgICAgICAgdGhpcy5wbGFjZWhvbGRlckVuZCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5lbmRMYWJlbCwgZGF0YS5wbGFjZWhvbGRlckVuZCk7XG4gICAgICAgIHRoaXMubWluU3RhcnQgPSBkYXRhLm1pblN0YXJ0O1xuICAgICAgICB0aGlzLm1heFN0YXJ0ID0gZGF0YS5tYXhTdGFydDtcbiAgICAgICAgdGhpcy5taW5FbmQgPSBkYXRhLm1pbkVuZDtcbiAgICAgICAgdGhpcy5tYXhFbmQgPSBkYXRhLm1heEVuZDtcbiAgICAgICAgdGhpcy5maWx0ZXIgPSBkYXRhLmZpbHRlcjtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPHN0cmluZ1tdPlxuICAgIGltcGxlbWVudHMgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuU1RSSU5HO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRlbGV0ZUljb246IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heExlbmd0aD86IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlZ2V4PzogUmVnRXhwO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZywgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRlbGV0ZUljb24gPSBkYXRhLmRlbGV0ZUljb24gPz8gJ2ZhcyBmYS1jaXJjbGUtbWludXMnO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEsIGdsb2JhbENvbmZpZyk7XG4gICAgICAgIHRoaXMubWF4TGVuZ3RoID0gZGF0YS5tYXhMZW5ndGg7XG4gICAgICAgIHRoaXMubWluTGVuZ3RoID0gZGF0YS5taW5MZW5ndGg7XG4gICAgICAgIHRoaXMucmVnZXggPSBkYXRhLnJlZ2V4O1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzYsIDEyLCAxMl07XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPHN0cmluZ1tdPiBpbXBsZW1lbnRzIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jLCB0eXBlc2NyaXB0L25vLWV4cGxpY2l0LWFueVxuICAgIGF1dG9jb21wbGV0ZVZhbHVlczogKGVudGl0eTogYW55KSA9PiBQcm9taXNlPHN0cmluZ1tdPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5TVFJJTkdfQVVUT0NPTVBMRVRFO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRlbGV0ZUljb246IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heExlbmd0aD86IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlZ2V4PzogUmVnRXhwO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVzdHJpY3RUb09wdGlvbnM/OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZywgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZVZhbHVlcyA9IHRoaXMuYXV0b2NvbXBsZXRlVmFsdWVzVG9GdW5jdGlvbihkYXRhLmF1dG9jb21wbGV0ZVZhbHVlcyk7XG4gICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IGRhdGEuZGVsZXRlSWNvbiA/PyAnZmFzIGZhLWNpcmNsZS1taW51cyc7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5tYXhMZW5ndGggPSBkYXRhLm1heExlbmd0aDtcbiAgICAgICAgdGhpcy5taW5MZW5ndGggPSBkYXRhLm1pbkxlbmd0aDtcbiAgICAgICAgdGhpcy5yZWdleCA9IGRhdGEucmVnZXg7XG4gICAgICAgIHRoaXMucmVzdHJpY3RUb09wdGlvbnMgPSBkYXRhLnJlc3RyaWN0VG9PcHRpb25zO1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzYsIDEyLCAxMl07XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHR5cGVzY3JpcHQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSBhdXRvY29tcGxldGVWYWx1ZXNUb0Z1bmN0aW9uKGF1dG9jb21wbGV0ZVZhbHVlczogU3RyaW5nQXV0b2NvbXBsZXRlVmFsdWVzKTogKGVudGl0eTogYW55KSA9PiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGF1dG9jb21wbGV0ZVZhbHVlcykpIHtcbiAgICAgICAgICAgIHJldHVybiBhc3luYyAoKSA9PiBhdXRvY29tcGxldGVWYWx1ZXM7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHR5cGVzY3JpcHQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHJldHVybiBhc3luYyAoZTogYW55KSA9PiBhd2FpdCBhdXRvY29tcGxldGVWYWx1ZXMoZSk7XG4gICAgfVxufVxuXG4vKipcbiAqIEdldHMgdGhlIGRlZmF1bHQgZGlhbG9nIGRhdGEgZm9yIHRoZSBlcnJvciBkaWFsb2cgdG8gZGlzcGxheSB3aGVuIHRoZSB1c2VyIHRyaWVzIHRvIGFkZCBhIGR1cGxpY2F0ZSB2YWx1ZS5cbiAqIEBwYXJhbSBkYXRhIC0gVGhlIEFycmF5IERlY29yYXRvciBkYXRhLlxuICogQHBhcmFtIGdsb2JhbENvbmZpZyAtIFRoZSBnbG9iYWwgY29uZmlndXJhdGlvbiBvZiBkZWZhdWx0IHZhbHVlcy5cbiAqIEByZXR1cm5zIFRoZSBkaWFsb2cgZGF0YSB3aXRoIHNldCBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZnVuY3Rpb24gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShcbiAgICBkYXRhOiBBcnJheURlY29yYXRvckNvbmZpZzx1bmtub3duW10+LFxuICAgIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlc1xuKTogQ29uZmlybURpYWxvZ0RhdGEge1xuICAgIHJldHVybiBuZXcgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyKGdsb2JhbENvbmZpZywgZGF0YS5kdXBsaWNhdGVzRXJyb3JEaWFsb2cpXG4gICAgICAgIC53aXRoRGVmYXVsdCgndHlwZScsICdpbmZvLW9ubHknKVxuICAgICAgICAud2l0aERlZmF1bHQoJ3RleHQnLCBnbG9iYWxDb25maWcuZHVwbGljYXRlRXJyb3JUZXh0KVxuICAgICAgICAud2l0aERlZmF1bHQoJ3RpdGxlJywgZ2xvYmFsQ29uZmlnLmR1cGxpY2F0ZUVycm9yVGl0bGUpXG4gICAgICAgIC5nZXRSZXN1bHQoKTtcbn0iXX0=
|
|
308
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBRXZHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsYUFBYSxFQUFRLE1BQU0sZ0NBQWdDLENBQUM7QUFHckUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFJM0Y7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLCtCQUErQjtJQUN4QywrQ0FBK0M7SUFDL0MsS0FBSyxDQUFpQztJQUN0QywrQ0FBK0M7SUFDL0Msa0JBQWtCLENBQVM7SUFDM0IsK0NBQStDO0lBQy9DLGlCQUFpQixDQUFTO0lBRTFCLFlBQVksWUFBb0MsRUFBRSxJQUEwQztRQUN4RixJQUFJLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDM0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQy9GLENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtDQUNULFNBQVEsK0JBQTZDO0lBRXJELCtD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Q0FBQztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDaEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsc0RBQXNEO0lBQzlDLDRCQUE0QixDQUFDLGtCQUE0QztRQUM3RSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sS0FBSyxJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztRQUMxQyxDQUFDO1FBQ0Qsc0RBQXNEO1FBQ3RELE9BQU8sS0FBSyxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0o7QUFFRDs7Ozs7R0FLRztBQUNILFNBQVMsa0NBQWtDLENBQ3ZDLElBQW1DLEVBQ25DLFlBQW9DO0lBRXBDLE9BQU8sSUFBSSx3QkFBd0IsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1NBQ3hFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDO1NBQ2hDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLGtCQUFrQixDQUFDO1NBQ3BELFdBQVcsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLG1CQUFtQixDQUFDO1NBQ3RELFNBQVMsRUFBRSxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlRmlsdGVyRm4gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcblxuaW1wb3J0IHsgQXJyYXlEZWNvcmF0b3JDb25maWcsIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhLCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZywgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vYXJyYXktZGVjb3JhdG9yLmRhdGEnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUsIEVudGl0eUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy1kYXRhJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhQnVpbGRlciB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2ctZGF0YS5idWlsZGVyJztcbmltcG9ydCB7IENyZWF0ZURhdGEsIERpc3BsYXlDb2x1bW4sIER5bmFtaWNTdHlsZUNsYXNzZXMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEnO1xuaW1wb3J0IHsgZGVmYXVsdER5bmFtaWNTdHlsZUNsYXNzZXMgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvZGVmYXVsdC1zdHlsZS1jbGFzc2VzLmZ1bmN0aW9uJztcbmltcG9ydCB7IGdldENvbmZpZ1ZhbHVlIH0gZnJvbSAnLi4vLi4vZnVuY3Rpb25zL2dldC1jb25maWctdmFsdWUuZnVuY3Rpb24nO1xuaW1wb3J0IHsgTmd4R2xvYmFsRGVmYXVsdFZhbHVlcyB9IGZyb20gJy4uLy4uL2dsb2JhbC1jb25maWd1cmF0aW9uLXZhbHVlcyc7XG5pbXBvcnQgeyBEYXRlVXRpbGl0aWVzLCBUaW1lIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2RhdGUudXRpbGl0aWVzJztcbmltcG9ydCB7IERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi4vYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBEcm9wZG93blZhbHVlIH0gZnJvbSAnLi4vYmFzZS9kcm9wZG93bi12YWx1ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCB9IGZyb20gJy4uL2Jhc2UvcHJvcGVydHktZGVjb3JhdG9yLWludGVybmFsLmRhdGEnO1xuaW1wb3J0IHsgRGF0ZVJhbmdlIH0gZnJvbSAnLi4vZGF0ZS9kYXRlLWRlY29yYXRvci5kYXRhJztcbmltcG9ydCB7IFN0cmluZ0F1dG9jb21wbGV0ZVZhbHVlcyB9IGZyb20gJy4uL3N0cmluZy9zdHJpbmctZGVjb3JhdG9yLmRhdGEnO1xuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBkaWFsb2cgZGF0YSBmb3IgdGhlIGVudGl0aWVzIGFycmF5IGVkaXQgZGlhbG9nLlxuICogU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhSW50ZXJuYWw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhPEVudGl0eVR5cGU+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpdGxlOiAoZW50aXR5OiBFbnRpdHlUeXBlKSA9PiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjb25maXJtQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMsIGRhdGE/OiBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlPikge1xuICAgICAgICB0aGlzLnRpdGxlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVkaXRUaXRsZSwgZGF0YT8udGl0bGUpO1xuICAgICAgICB0aGlzLmNvbmZpcm1CdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5zYXZlTGFiZWwsIGRhdGE/LmNvbmZpcm1CdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMuY2FuY2VsQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuY2FuY2VsTGFiZWwsIGRhdGE/LmNhbmNlbEJ1dHRvbkxhYmVsKTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPEVudGl0eVR5cGVbXT4gaW1wbGVtZW50cyBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPiB7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5PQkpFQ1Q7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgRW50aXR5Q2xhc3M6IEVudGl0eUNsYXNzTmV3YWJsZTxFbnRpdHlUeXBlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkeW5hbWljUm93U3R5bGVDbGFzc2VzOiBEeW5hbWljU3R5bGVDbGFzc2VzPEVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlRGlhbG9nRGF0YT86IENyZWF0ZURhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBlZGl0RGlhbG9nRGF0YTogRWRpdEFycmF5SXRlbURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNyZWF0ZUlubGluZTogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT4sIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5jcmVhdGVJbmxpbmUgPSBkYXRhLmNyZWF0ZUlubGluZSA/PyB0cnVlO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEsIGdsb2JhbENvbmZpZyk7XG4gICAgICAgIHRoaXMuRW50aXR5Q2xhc3MgPSBkYXRhLkVudGl0eUNsYXNzO1xuICAgICAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gZGF0YS5kaXNwbGF5Q29sdW1ucztcbiAgICAgICAgdGhpcy5keW5hbWljUm93U3R5bGVDbGFzc2VzID0gZGF0YS5keW5hbWljUm93U3R5bGVDbGFzc2VzID8/IGRlZmF1bHREeW5hbWljU3R5bGVDbGFzc2VzO1xuICAgICAgICB0aGlzLmNyZWF0ZUlubGluZSA9IGRhdGEuY3JlYXRlSW5saW5lID8/IHRydWU7XG4gICAgICAgIHRoaXMubWlzc2luZ0Vycm9yTWVzc2FnZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5lbXB0eUFycmF5RXJyb3JNZXNzYWdlLCBkYXRhLm1pc3NpbmdFcnJvck1lc3NhZ2UpO1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzEyLCAxMiwgMTJdO1xuICAgICAgICB0aGlzLmFkZEJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmFkZExhYmVsLCBkYXRhLmFkZEJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5yZW1vdmVCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5yZW1vdmVMYWJlbCwgZGF0YS5yZW1vdmVCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMuZWRpdERpYWxvZ0RhdGEgPSBuZXcgRWRpdEFycmF5SXRlbURpYWxvZ0RhdGFJbnRlcm5hbChnbG9iYWxDb25maWcsIGRhdGEuZWRpdERpYWxvZ0RhdGEpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVbXT4gaW1wbGVtZW50cyBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IERpc3BsYXlDb2x1bW48RGF0ZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHluYW1pY1Jvd1N0eWxlQ2xhc3NlczogRHluYW1pY1N0eWxlQ2xhc3NlczxEYXRlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbj86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlcj86IERhdGVGaWx0ZXJGbjxEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZD47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcsIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhLCBnbG9iYWxDb25maWcpO1xuICAgICAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gZGF0YS5kaXNwbGF5Q29sdW1ucztcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFsxMiwgMTIsIDEyXTtcbiAgICAgICAgdGhpcy5hZGRCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5hZGRMYWJlbCwgZGF0YS5hZGRCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcucmVtb3ZlTGFiZWwsIGRhdGEucmVtb3ZlQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLm1pc3NpbmdFcnJvck1lc3NhZ2UgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuZW1wdHlBcnJheUVycm9yTWVzc2FnZSwgZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlKTtcbiAgICAgICAgdGhpcy5keW5hbWljUm93U3R5bGVDbGFzc2VzID0gZGF0YS5keW5hbWljUm93U3R5bGVDbGFzc2VzID8/IGRlZmF1bHREeW5hbWljU3R5bGVDbGFzc2VzO1xuICAgICAgICB0aGlzLm1pbiA9IGRhdGEubWluO1xuICAgICAgICB0aGlzLm1heCA9IGRhdGEubWF4O1xuICAgICAgICB0aGlzLmZpbHRlciA9IGRhdGEuZmlsdGVyO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RGF0ZVtdPiBpbXBsZW1lbnRzIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfVElNRTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxEYXRlPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0aW1lczogRHJvcGRvd25WYWx1ZTxUaW1lPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGltZURpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkeW5hbWljUm93U3R5bGVDbGFzc2VzOiBEeW5hbWljU3R5bGVDbGFzc2VzPERhdGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluRGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heERhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXJEYXRlPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhUaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyVGltZT86ICgodGltZTogVGltZSkgPT4gYm9vbGVhbikgfCAoKCkgPT4gYm9vbGVhbik7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuYWRkTGFiZWwsIGRhdGEuYWRkQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLnJlbW92ZUxhYmVsLCBkYXRhLnJlbW92ZUJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVtcHR5QXJyYXlFcnJvck1lc3NhZ2UsIGRhdGEubWlzc2luZ0Vycm9yTWVzc2FnZSk7XG4gICAgICAgIHRoaXMudGltZXMgPSBkYXRhLnRpbWVzID8/IERhdGVVdGlsaXRpZXMuZ2V0RGVmYXVsdFRpbWVzKCk7XG4gICAgICAgIHRoaXMudGltZURpc3BsYXlOYW1lID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLnRpbWVMYWJlbCwgZGF0YS50aW1lRGlzcGxheU5hbWUpO1xuICAgICAgICB0aGlzLmR5bmFtaWNSb3dTdHlsZUNsYXNzZXMgPSBkYXRhLmR5bmFtaWNSb3dTdHlsZUNsYXNzZXMgPz8gZGVmYXVsdER5bmFtaWNTdHlsZUNsYXNzZXM7XG4gICAgICAgIHRoaXMubWluRGF0ZSA9IGRhdGEubWluRGF0ZTtcbiAgICAgICAgdGhpcy5tYXhEYXRlID0gZGF0YS5tYXhEYXRlO1xuICAgICAgICB0aGlzLmZpbHRlckRhdGUgPSBkYXRhLmZpbHRlckRhdGU7XG4gICAgICAgIHRoaXMubWluVGltZSA9IGRhdGEubWluVGltZTtcbiAgICAgICAgdGhpcy5tYXhUaW1lID0gZGF0YS5tYXhUaW1lO1xuICAgICAgICB0aGlzLmZpbHRlclRpbWUgPSBkYXRhLmZpbHRlclRpbWU7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVSYW5nZVtdPlxuICAgIGltcGxlbWVudHMgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfUkFOR0U7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IERpc3BsYXlDb2x1bW48RGF0ZVJhbmdlPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlclN0YXJ0OiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlckVuZDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHluYW1pY1Jvd1N0eWxlQ2xhc3NlczogRHluYW1pY1N0eWxlQ2xhc3NlczxEYXRlUmFuZ2U+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluU3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhTdGFydD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbkVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heEVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlcj86IERhdGVGaWx0ZXJGbjxEYXRlPjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuYWRkTGFiZWwsIGRhdGEuYWRkQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLnJlbW92ZUxhYmVsLCBkYXRhLnJlbW92ZUJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVtcHR5QXJyYXlFcnJvck1lc3NhZ2UsIGRhdGEubWlzc2luZ0Vycm9yTWVzc2FnZSk7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXJTdGFydCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5zdGFydExhYmVsLCBkYXRhLnBsYWNlaG9sZGVyU3RhcnQpO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyRW5kID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVuZExhYmVsLCBkYXRhLnBsYWNlaG9sZGVyRW5kKTtcbiAgICAgICAgdGhpcy5keW5hbWljUm93U3R5bGVDbGFzc2VzID0gZGF0YS5keW5hbWljUm93U3R5bGVDbGFzc2VzID8/IGRlZmF1bHREeW5hbWljU3R5bGVDbGFzc2VzO1xuICAgICAgICB0aGlzLm1pblN0YXJ0ID0gZGF0YS5taW5TdGFydDtcbiAgICAgICAgdGhpcy5tYXhTdGFydCA9IGRhdGEubWF4U3RhcnQ7XG4gICAgICAgIHRoaXMubWluRW5kID0gZGF0YS5taW5FbmQ7XG4gICAgICAgIHRoaXMubWF4RW5kID0gZGF0YS5tYXhFbmQ7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gZGF0YS5maWx0ZXI7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxzdHJpbmdbXT5cbiAgICBpbXBsZW1lbnRzIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLlNUUklORztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWxldGVJY29uOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5MZW5ndGg/OiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhMZW5ndGg/OiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZWdleD86IFJlZ0V4cDtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kZWxldGVJY29uID0gZGF0YS5kZWxldGVJY29uID8/ICdmYXMgZmEtY2lyY2xlLW1pbnVzJztcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhLCBnbG9iYWxDb25maWcpO1xuICAgICAgICB0aGlzLm1heExlbmd0aCA9IGRhdGEubWF4TGVuZ3RoO1xuICAgICAgICB0aGlzLm1pbkxlbmd0aCA9IGRhdGEubWluTGVuZ3RoO1xuICAgICAgICB0aGlzLnJlZ2V4ID0gZGF0YS5yZWdleDtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFs2LCAxMiwgMTJdO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxzdHJpbmdbXT4gaW1wbGVtZW50cyBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvYywgdHlwZXNjcmlwdC9uby1leHBsaWNpdC1hbnlcbiAgICBhdXRvY29tcGxldGVWYWx1ZXM6IChlbnRpdHk6IGFueSkgPT4gUHJvbWlzZTxzdHJpbmdbXT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuU1RSSU5HX0FVVE9DT01QTEVURTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWxldGVJY29uOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5MZW5ndGg/OiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhMZW5ndGg/OiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZWdleD86IFJlZ0V4cDtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlc3RyaWN0VG9PcHRpb25zPzogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVWYWx1ZXMgPSB0aGlzLmF1dG9jb21wbGV0ZVZhbHVlc1RvRnVuY3Rpb24oZGF0YS5hdXRvY29tcGxldGVWYWx1ZXMpO1xuICAgICAgICB0aGlzLmRlbGV0ZUljb24gPSBkYXRhLmRlbGV0ZUljb24gPz8gJ2ZhcyBmYS1jaXJjbGUtbWludXMnO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEsIGdsb2JhbENvbmZpZyk7XG4gICAgICAgIHRoaXMubWF4TGVuZ3RoID0gZGF0YS5tYXhMZW5ndGg7XG4gICAgICAgIHRoaXMubWluTGVuZ3RoID0gZGF0YS5taW5MZW5ndGg7XG4gICAgICAgIHRoaXMucmVnZXggPSBkYXRhLnJlZ2V4O1xuICAgICAgICB0aGlzLnJlc3RyaWN0VG9PcHRpb25zID0gZGF0YS5yZXN0cmljdFRvT3B0aW9ucztcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFs2LCAxMiwgMTJdO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB0eXBlc2NyaXB0L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgYXV0b2NvbXBsZXRlVmFsdWVzVG9GdW5jdGlvbihhdXRvY29tcGxldGVWYWx1ZXM6IFN0cmluZ0F1dG9jb21wbGV0ZVZhbHVlcyk6IChlbnRpdHk6IGFueSkgPT4gUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhdXRvY29tcGxldGVWYWx1ZXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gYXN5bmMgKCkgPT4gYXV0b2NvbXBsZXRlVmFsdWVzO1xuICAgICAgICB9XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB0eXBlc2NyaXB0L25vLWV4cGxpY2l0LWFueVxuICAgICAgICByZXR1cm4gYXN5bmMgKGU6IGFueSkgPT4gYXdhaXQgYXV0b2NvbXBsZXRlVmFsdWVzKGUpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBkZWZhdWx0IGRpYWxvZyBkYXRhIGZvciB0aGUgZXJyb3IgZGlhbG9nIHRvIGRpc3BsYXkgd2hlbiB0aGUgdXNlciB0cmllcyB0byBhZGQgYSBkdXBsaWNhdGUgdmFsdWUuXG4gKiBAcGFyYW0gZGF0YSAtIFRoZSBBcnJheSBEZWNvcmF0b3IgZGF0YS5cbiAqIEBwYXJhbSBnbG9iYWxDb25maWcgLSBUaGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb24gb2YgZGVmYXVsdCB2YWx1ZXMuXG4gKiBAcmV0dXJucyBUaGUgZGlhbG9nIGRhdGEgd2l0aCBzZXQgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmZ1bmN0aW9uIGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoXG4gICAgZGF0YTogQXJyYXlEZWNvcmF0b3JDb25maWc8dW5rbm93bj4sXG4gICAgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzXG4pOiBDb25maXJtRGlhbG9nRGF0YSB7XG4gICAgcmV0dXJuIG5ldyBDb25maXJtRGlhbG9nRGF0YUJ1aWxkZXIoZ2xvYmFsQ29uZmlnLCBkYXRhLmR1cGxpY2F0ZXNFcnJvckRpYWxvZylcbiAgICAgICAgLndpdGhEZWZhdWx0KCd0eXBlJywgJ2luZm8tb25seScpXG4gICAgICAgIC53aXRoRGVmYXVsdCgndGV4dCcsIGdsb2JhbENvbmZpZy5kdXBsaWNhdGVFcnJvclRleHQpXG4gICAgICAgIC53aXRoRGVmYXVsdCgndGl0bGUnLCBnbG9iYWxDb25maWcuZHVwbGljYXRlRXJyb3JUaXRsZSlcbiAgICAgICAgLmdldFJlc3VsdCgpO1xufSJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PropertyDecoratorConfig } from '../base/property-decorator.data';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Base definition for the @array metadata.
|
|
4
4
|
*/
|
|
5
5
|
export class ArrayDecoratorConfig extends PropertyDecoratorConfig {
|
|
6
6
|
/**
|
|
@@ -17,4 +17,35 @@ export class ArrayDecoratorConfig extends PropertyDecoratorConfig {
|
|
|
17
17
|
*/
|
|
18
18
|
duplicatesErrorDialog;
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBSTFFOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixvQkFBZ0MsU0FBUSx1QkFBa0M7SUFDNUY7O09BRUc7SUFDSCxRQUFRLENBQWtCO0lBRTFCOzs7T0FHRztJQUNILGVBQWUsQ0FBVztJQUUxQjs7T0FFRztJQUNILHFCQUFxQixDQUFxQjtDQUM3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVGaWx0ZXJGbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuXG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSwgRW50aXR5Q2xhc3NOZXdhYmxlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0RhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEnO1xuaW1wb3J0IHsgQ3JlYXRlRGF0YSwgRGlzcGxheUNvbHVtbiB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdGFibGUvdGFibGUtZGF0YSc7XG5pbXBvcnQgeyBUaW1lIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2RhdGUudXRpbGl0aWVzJztcbmltcG9ydCB7IERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi4vYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBEcm9wZG93blZhbHVlIH0gZnJvbSAnLi4vYmFzZS9kcm9wZG93bi12YWx1ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUHJvcGVydHlEZWNvcmF0b3JDb25maWcgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci5kYXRhJztcbmltcG9ydCB7IERhdGVSYW5nZSB9IGZyb20gJy4uL2RhdGUvZGF0ZS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBTdHJpbmdBdXRvY29tcGxldGVWYWx1ZXMgfSBmcm9tICcuLi9zdHJpbmcvc3RyaW5nLWRlY29yYXRvci5kYXRhJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgZGVmaW5pdGlvbiBmb3IgdGhlIEBhcnJheSBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFycmF5RGVjb3JhdG9yQ29uZmlnPFZhbHVlVHlwZT4gZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZzxWYWx1ZVR5cGU+IHtcbiAgICAvKipcbiAgICAgKiBUaGUgdHlwZSBvZiB0aGUgaXRlbXMgaW5zaWRlIHRoZSBhcnJheS5cbiAgICAgKi9cbiAgICBpdGVtVHlwZSE6IERlY29yYXRvclR5cGVzO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBvciBub3QgZHVwbGljYXRlIHZhbHVlcyBhcmUgYWxsb3dlZCBpbnNpZGUgdGhlIGFycmF5LlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgYWxsb3dEdXBsaWNhdGVzPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBlcnJvciBkaWFsb2cgdG8gZGlzcGxheSB3aGVuIHRoZSB1c2VyIHRyaWVzIHRvIGFkZCBhIGR1cGxpY2F0ZSBlbnRyeS5cbiAgICAgKi9cbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c/OiBDb25maXJtRGlhbG9nRGF0YTtcbn1cblxuLyoqXG4gKiBUaGUgZGlhbG9nIGRhdGEgZm9yIHRoZSBlbnRpdGllcyBhcnJheSBlZGl0IGRpYWxvZy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+IHtcbiAgICAvKipcbiAgICAgKiBUaGUgdGl0bGUgb2YgdGhlIGRlZmF1bHQgZWRpdC1kaWFsb2cuXG4gICAgICovXG4gICAgdGl0bGU/OiAoZW50aXR5OiBFbnRpdHlUeXBlKSA9PiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIG9uIHRoZSBjb25maXJtLWJ1dHRvbiBvZiB0aGUgZGVmYXVsdCBlZGl0LWRpYWxvZyBvciBwYWdlLiBEZWZhdWx0cyB0byBcIlNhdmVcIi5cbiAgICAgKi9cbiAgICBjb25maXJtQnV0dG9uTGFiZWw/OiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIG9uIHRoZSBjYW5jZWwtYnV0dG9uIGZvciB0aGUgZGVmYXVsdCBlZGl0LWRpYWxvZyBvciBwYWdlLiBEZWZhdWx0cyB0byBcIkNhbmNlbFwiLlxuICAgICAqL1xuICAgIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nXG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2YgRW50aXRpZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBleHRlbmRzIEFycmF5RGVjb3JhdG9yQ29uZmlnPEVudGl0eVR5cGVbXT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLk9CSkVDVCxcblxuICAgIC8qKlxuICAgICAqIFRoZSBFbnRpdHlDbGFzcyB1c2VkIGZvciBnZW5lcmF0aW5nIHRoZSBjcmVhdGUgaW5wdXRzLlxuICAgICAqL1xuICAgIEVudGl0eUNsYXNzOiBFbnRpdHlDbGFzc05ld2FibGU8RW50aXR5VHlwZT4sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgY29sdW1ucyB0byBkaXNwbGF5LiBDb25zaXN0cyBvZiB0aGUgZGlzcGxheU5hbWUgdG8gc2hvdyBpbiB0aGUgaGVhZGVyIG9mIHRoZSByb3dcbiAgICAgKiBhbmQgdGhlIHZhbHVlLCB3aGljaCBpcyBhIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHRoZSB2YWx1ZSB0byBkaXNwbGF5IGluc2lkZSBhIGNvbHVtbi5cbiAgICAgKi9cbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxFbnRpdHlUeXBlPltdLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgZm9yIHRoZSBhZGQtaXRlbS1kaWFsb2cuXG4gICAgICogQ2FuIGJlIG9taXR0ZWQgd2hlbiBhZGRpbmcgaXRlbXMgaW5saW5lLlxuICAgICAqL1xuICAgIGNyZWF0ZURpYWxvZ0RhdGE/OiBDcmVhdGVEYXRhLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgZm9yIHRoZSBlZGl0LWl0ZW0tZGlhbG9nLlxuICAgICAqIENhbiBiZSBvbWl0dGVkIHdoZW4gYWRkaW5nIGl0ZW1zIGlubGluZS5cbiAgICAgKi9cbiAgICBlZGl0RGlhbG9nRGF0YT86IEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhPEVudGl0eVR5cGU+LFxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBvciBub3QgdGhlIGZvcm0gZm9yIGFkZGluZyBpdGVtcyB0byB0aGUgYXJyYXlcbiAgICAgKiBzaG91bGQgYmUgZGlzcGxheWVkIGlubGluZS5cbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgY3JlYXRlSW5saW5lPzogYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIFRoZSBsYWJlbCBmb3IgdGhlIGFkZCBidXR0b24gd2hlbiBjcmVhdGVJbmxpbmUgaXMgdHJ1ZS5cbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgcmVtb3ZlIGJ1dHRvbiB3aGVuIGNyZWF0ZUlubGluZSBpcyB0cnVlLlxuICAgICAqIEBkZWZhdWx0ICdSZW1vdmUnXG4gICAgICovXG4gICAgcmVtb3ZlQnV0dG9uTGFiZWw/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXJyb3ItbWVzc2FnZSB0byBkaXNwbGF5IHdoZW4gdGhlIGFycmF5IGlzIHJlcXVpcmVkIGJ1dCBjb250YWlucyBubyB2YWx1ZXMuXG4gICAgICovXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZT86IHN0cmluZ1xufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIERhdGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGVBcnJheURlY29yYXRvckNvbmZpZyBleHRlbmRzIEFycmF5RGVjb3JhdG9yQ29uZmlnPERhdGVbXT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEUsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgY29sdW1ucyB0byBkaXNwbGF5LiBDb25zaXN0cyBvZiB0aGUgZGlzcGxheU5hbWUgdG8gc2hvdyBpbiB0aGUgaGVhZGVyIG9mIHRoZSByb3dcbiAgICAgKiBhbmQgdGhlIHZhbHVlLCB3aGljaCBpcyBhIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHRoZSB2YWx1ZSB0byBkaXNwbGF5IGluc2lkZSBhIGNvbHVtbi5cbiAgICAgKi9cbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxEYXRlPltdLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgYWRkIGJ1dHRvbi5cbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgcmVtb3ZlIGJ1dHRvbi5cbiAgICAgKiBAZGVmYXVsdCAnUmVtb3ZlJ1xuICAgICAqL1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGVycm9yLW1lc3NhZ2UgdG8gZGlzcGxheSB3aGVuIHRoZSBhcnJheSBpcyByZXF1aXJlZCBidXQgY29udGFpbnMgbm8gdmFsdWVzLlxuICAgICAqL1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWluaW11bSB2YWx1ZSBvZiB0aGUgZGF0ZS5cbiAgICAgKi9cbiAgICBtaW4/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgZGF0ZS5cbiAgICAgKi9cbiAgICBtYXg/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG5cbiAgICAvKipcbiAgICAgKiBBIGZpbHRlciBmdW5jdGlvbiB0byBkbyBtb3JlIHNwZWNpZmljIGZpbHRlcmluZy4gVGhpcyBjb3VsZCBiZSB0aGUgcmVtb3ZhbCBvZiBlLmcuIEFsbCB3ZWVrZW5kcy5cbiAgICAgKi9cbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZSB8IG51bGwgfCB1bmRlZmluZWQ+XG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2YgRGF0ZVRpbWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZzxEYXRlW10+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFX1RJTUUsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgY29sdW1ucyB0byBkaXNwbGF5LiBDb25zaXN0cyBvZiB0aGUgZGlzcGxheU5hbWUgdG8gc2hvdyBpbiB0aGUgaGVhZGVyIG9mIHRoZSByb3dcbiAgICAgKiBhbmQgdGhlIHZhbHVlLCB3aGljaCBpcyBhIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHRoZSB2YWx1ZSB0byBkaXNwbGF5IGluc2lkZSBhIGNvbHVtbi5cbiAgICAgKi9cbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxEYXRlPltdLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgYWRkIGJ1dHRvbi5cbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgcmVtb3ZlIGJ1dHRvbi5cbiAgICAgKiBAZGVmYXVsdCAnUmVtb3ZlJ1xuICAgICAqL1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGVycm9yLW1lc3NhZ2UgdG8gZGlzcGxheSB3aGVuIHRoZSBhcnJheSBpcyByZXF1aXJlZCBidXQgY29udGFpbnMgbm8gdmFsdWVzLlxuICAgICAqL1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2VsZWN0YWJsZSB0aW1lcy5cbiAgICAgKi9cbiAgICB0aW1lcz86IERyb3Bkb3duVmFsdWU8VGltZT5bXSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIHRvIHVzZSBhcyBhIGxhYmVsIGZvciB0aGUgdGltZSBmb3JtIGZpZWxkLlxuICAgICAqIEBkZWZhdWx0ICdUaW1lJ1xuICAgICAqL1xuICAgIHRpbWVEaXNwbGF5TmFtZT86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSBkYXRlLlxuICAgICAqL1xuICAgIG1pbkRhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgZGF0ZS5cbiAgICAgKi9cbiAgICBtYXhEYXRlPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuXG4gICAgLyoqXG4gICAgICogQSBmaWx0ZXIgZnVuY3Rpb24gdG8gZG8gbW9yZSBzcGVjaWZpYyBkYXRlIGZpbHRlcmluZy4gVGhpcyBjb3VsZCBiZSB0aGUgcmVtb3ZhbCBvZiBlLmcuIEFsbCB3ZWVrZW5kcy5cbiAgICAgKi9cbiAgICBmaWx0ZXJEYXRlPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPixcblxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSB0aW1lLlxuICAgICAqL1xuICAgIG1pblRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWUsXG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgdGltZS5cbiAgICAgKi9cbiAgICBtYXhUaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lLFxuXG4gICAgLyoqXG4gICAgICogQSBmaWx0ZXIgZnVuY3Rpb24gdG8gZG8gbW9yZSBzcGVjaWZpYyB0aW1lIGZpbHRlcmluZy4gVGhpcyBjb3VsZCBiZSBlLmcuIFRoZSByZW1vdmFsIG9mIGx1bmNoIGJyZWFrcy5cbiAgICAgKi9cbiAgICBmaWx0ZXJUaW1lPzogKCh0aW1lOiBUaW1lKSA9PiBib29sZWFuKSB8ICgoKSA9PiBib29sZWFuKVxufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIERhdGVSYW5nZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZzxEYXRlUmFuZ2VbXT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfUkFOR0UsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgY29sdW1ucyB0byBkaXNwbGF5LiBDb25zaXN0cyBvZiB0aGUgZGlzcGxheU5hbWUgdG8gc2hvdyBpbiB0aGUgaGVhZGVyIG9mIHRoZSByb3dcbiAgICAgKiBhbmQgdGhlIHZhbHVlLCB3aGljaCBpcyBhIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHRoZSB2YWx1ZSB0byBkaXNwbGF5IGluc2lkZSBhIGNvbHVtbi5cbiAgICAgKi9cbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxEYXRlUmFuZ2U+W10sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSBhZGQgYnV0dG9uLlxuICAgICAqIEBkZWZhdWx0ICdBZGQnXG4gICAgICovXG4gICAgYWRkQnV0dG9uTGFiZWw/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSByZW1vdmUgYnV0dG9uLlxuICAgICAqIEBkZWZhdWx0ICdSZW1vdmUnXG4gICAgICovXG4gICAgcmVtb3ZlQnV0dG9uTGFiZWw/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXJyb3ItbWVzc2FnZSB0byBkaXNwbGF5IHdoZW4gdGhlIGFycmF5IGlzIHJlcXVpcmVkIGJ1dCBjb250YWlucyBubyB2YWx1ZXMuXG4gICAgICovXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZT86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSBzdGFydCBkYXRlLlxuICAgICAqL1xuICAgIG1pblN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtYXhpbXVtIHZhbHVlIG9mIHRoZSBzdGFydCBkYXRlLlxuICAgICAqL1xuICAgIG1heFN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSBlbmQgZGF0ZS5cbiAgICAgKi9cbiAgICBtaW5FbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIGVuZCBkYXRlLlxuICAgICAqL1xuICAgIG1heEVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZSxcbiAgICAvKipcbiAgICAgKiBBIGZpbHRlciBmdW5jdGlvbiB0byBkbyBtb3JlIHNwZWNpZmljIGZpbHRlcmluZyBvbiB0aGUgZGlzYWxsb3dlZCBlbmQgZGF0ZSB2YWx1ZXMuIFRoaXMgY291bGQgYmUgdGhlIHJlbW92YWwgb2YgZS5nLiBBbGwgd2Vla2VuZHMuXG4gICAgICovXG4gICAgZmlsdGVyPzogRGF0ZUZpbHRlckZuPERhdGU+LFxuICAgIC8qKlxuICAgICAqIFRoZSBwbGFjZWhvbGRlciBmb3IgdGhlIHN0YXJ0IGRhdGUgb2YgdGhlIGRhdGUgcmFuZ2UgcGlja2VyLlxuICAgICAqIEBkZWZhdWx0IFwiU3RhcnRcIlxuICAgICAqL1xuICAgIHBsYWNlaG9sZGVyU3RhcnQ/OiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIHBsYWNlaG9sZGVyIGZvciB0aGUgZW5kIGRhdGUgb2YgdGhlIGRhdGUgcmFuZ2UgcGlja2VyLlxuICAgICAqIEBkZWZhdWx0IFwiRW5kXCJcbiAgICAgKi9cbiAgICBwbGFjZWhvbGRlckVuZD86IHN0cmluZ1xufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIHN0cmluZ3MgZGlzcGxheWVkIGFzIGEgY2hpcHMgbGlzdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlEZWNvcmF0b3JDb25maWc8c3RyaW5nW10+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5TVFJJTkcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2xhc3MgZm9yIHRoZSA8aT4gdGFnIHVzZWQgdG8gcmVtb3ZlIGFuIGVudHJ5IGZyb20gdGhlIGFycmF5LlxuICAgICAqIEBkZWZhdWx0ICdmYXMgZmEtY2lyY2xlLW1pbnVzJ1xuICAgICAqL1xuICAgIGRlbGV0ZUljb24/OiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIG1pbmltdW0gcmVxdWlyZWQgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuXG4gICAgICovXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyLFxuICAgIC8qKlxuICAgICAqIFRoZSBtYXhpbXVtIHJlcXVpcmVkIGxlbmd0aCBvZiB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIG1heExlbmd0aD86IG51bWJlcixcbiAgICAvKipcbiAgICAgKiBBIHJlZ2V4IHVzZWQgZm9yIHZhbGlkYXRpb24uXG4gICAgICovXG4gICAgcmVnZXg/OiBSZWdFeHBcbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIGZvciBhbiBhcnJheSBvZiBhdXRvY29tcGxldGUgc3RyaW5ncyBkaXNwbGF5ZWQgYXMgYSBjaGlwcyBsaXN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZzxzdHJpbmdbXT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLlNUUklOR19BVVRPQ09NUExFVEUsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2xhc3MgZm9yIHRoZSA8aT4gdGFnIHVzZWQgdG8gcmVtb3ZlIGFuIGVudHJ5IGZyb20gdGhlIGFycmF5LlxuICAgICAqIEBkZWZhdWx0ICdmYXMgZmEtY2lyY2xlLW1pbnVzJ1xuICAgICAqL1xuICAgIGRlbGV0ZUljb24/OiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIGF1dG9jb21wbGV0ZSB2YWx1ZXMuXG4gICAgICovXG4gICAgYXV0b2NvbXBsZXRlVmFsdWVzOiBTdHJpbmdBdXRvY29tcGxldGVWYWx1ZXMsXG4gICAgLyoqXG4gICAgICogVGhlIG1pbmltdW0gcmVxdWlyZWQgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuXG4gICAgICovXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyLFxuICAgIC8qKlxuICAgICAqIFRoZSBtYXhpbXVtIHJlcXVpcmVkIGxlbmd0aCBvZiB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIG1heExlbmd0aD86IG51bWJlcixcbiAgICAvKipcbiAgICAgKiBBIHJlZ2V4IHVzZWQgZm9yIHZhbGlkYXRpb24uXG4gICAgICovXG4gICAgcmVnZXg/OiBSZWdFeHAsXG4gICAgLyoqXG4gICAgICogV2hldGhlciBvciBub3QgdmFsaWQgaW5wdXRzIHNob3VsZCBiZSByZXN0cmljdGVkIHRvIHRoZSBhdXRvY29tcGxldGUgb3B0aW9ucy5cbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIHJlc3RyaWN0VG9PcHRpb25zPzogYm9vbGVhblxufSJdfQ==
|
|
20
|
+
/**
|
|
21
|
+
* Base definition for the @array table metadata.
|
|
22
|
+
*/
|
|
23
|
+
class ArrayTableDecoratorConfig extends ArrayDecoratorConfig {
|
|
24
|
+
/**
|
|
25
|
+
* The definition of the columns to display. Consists of the displayName to show in the header of the row
|
|
26
|
+
* and the value, which is a function that generates the value to display inside a column.
|
|
27
|
+
*/
|
|
28
|
+
displayColumns;
|
|
29
|
+
/**
|
|
30
|
+
* Configuration for css classes that should be applied to table rows based on a condition.
|
|
31
|
+
* This could be used to eg. Set the background color to green when an item has the status completed etc.
|
|
32
|
+
* INFO: You need to use ng-deep or apply the styling in the styles.scss.
|
|
33
|
+
* @default () => []
|
|
34
|
+
*/
|
|
35
|
+
dynamicRowStyleClasses;
|
|
36
|
+
/**
|
|
37
|
+
* The error-message to display when the array is required but contains no values.
|
|
38
|
+
*/
|
|
39
|
+
missingErrorMessage;
|
|
40
|
+
/**
|
|
41
|
+
* The label for the add button.
|
|
42
|
+
* @default 'Add'
|
|
43
|
+
*/
|
|
44
|
+
addButtonLabel;
|
|
45
|
+
/**
|
|
46
|
+
* The label for the remove button.
|
|
47
|
+
* @default 'Remove'
|
|
48
|
+
*/
|
|
49
|
+
removeButtonLabel;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBSTFFOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixvQkFBZ0MsU0FBUSx1QkFBa0M7SUFDNUY7O09BRUc7SUFDSCxRQUFRLENBQWtCO0lBRTFCOzs7T0FHRztJQUNILGVBQWUsQ0FBVztJQUUxQjs7T0FFRztJQUNILHFCQUFxQixDQUFxQjtDQUM3QztBQUVEOztHQUVHO0FBQ0gsTUFBZSx5QkFBcUMsU0FBUSxvQkFBaUM7SUFDekY7OztPQUdHO0lBQ0gsY0FBYyxDQUE4QjtJQUU1Qzs7Ozs7T0FLRztJQUNILHNCQUFzQixDQUFrQztJQUV4RDs7T0FFRztJQUNILG1CQUFtQixDQUFVO0lBRTdCOzs7T0FHRztJQUNILGNBQWMsQ0FBVTtJQUV4Qjs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBVTtDQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVGaWx0ZXJGbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuXG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSwgRW50aXR5Q2xhc3NOZXdhYmxlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0RhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEnO1xuaW1wb3J0IHsgQ3JlYXRlRGF0YSwgRGlzcGxheUNvbHVtbiwgRHluYW1pY1N0eWxlQ2xhc3NlcyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdGFibGUvdGFibGUtZGF0YSc7XG5pbXBvcnQgeyBUaW1lIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2RhdGUudXRpbGl0aWVzJztcbmltcG9ydCB7IERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi4vYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBEcm9wZG93blZhbHVlIH0gZnJvbSAnLi4vYmFzZS9kcm9wZG93bi12YWx1ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUHJvcGVydHlEZWNvcmF0b3JDb25maWcgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci5kYXRhJztcbmltcG9ydCB7IERhdGVSYW5nZSB9IGZyb20gJy4uL2RhdGUvZGF0ZS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBTdHJpbmdBdXRvY29tcGxldGVWYWx1ZXMgfSBmcm9tICcuLi9zdHJpbmcvc3RyaW5nLWRlY29yYXRvci5kYXRhJztcblxuLyoqXG4gKiBCYXNlIGRlZmluaXRpb24gZm9yIHRoZSBAYXJyYXkgbWV0YWRhdGEuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBcnJheURlY29yYXRvckNvbmZpZzxWYWx1ZVR5cGU+IGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWc8VmFsdWVUeXBlPiB7XG4gICAgLyoqXG4gICAgICogVGhlIHR5cGUgb2YgdGhlIGl0ZW1zIGluc2lkZSB0aGUgYXJyYXkuXG4gICAgICovXG4gICAgaXRlbVR5cGUhOiBEZWNvcmF0b3JUeXBlcztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgb3Igbm90IGR1cGxpY2F0ZSB2YWx1ZXMgYXJlIGFsbG93ZWQgaW5zaWRlIHRoZSBhcnJheS5cbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIGFsbG93RHVwbGljYXRlcz86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXJyb3IgZGlhbG9nIHRvIGRpc3BsYXkgd2hlbiB0aGUgdXNlciB0cmllcyB0byBhZGQgYSBkdXBsaWNhdGUgZW50cnkuXG4gICAgICovXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nPzogQ29uZmlybURpYWxvZ0RhdGE7XG59XG5cbi8qKlxuICogQmFzZSBkZWZpbml0aW9uIGZvciB0aGUgQGFycmF5IHRhYmxlIG1ldGFkYXRhLlxuICovXG5hYnN0cmFjdCBjbGFzcyBBcnJheVRhYmxlRGVjb3JhdG9yQ29uZmlnPFZhbHVlVHlwZT4gZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZzxWYWx1ZVR5cGVbXT4ge1xuICAgIC8qKlxuICAgICAqIFRoZSBkZWZpbml0aW9uIG9mIHRoZSBjb2x1bW5zIHRvIGRpc3BsYXkuIENvbnNpc3RzIG9mIHRoZSBkaXNwbGF5TmFtZSB0byBzaG93IGluIHRoZSBoZWFkZXIgb2YgdGhlIHJvd1xuICAgICAqIGFuZCB0aGUgdmFsdWUsIHdoaWNoIGlzIGEgZnVuY3Rpb24gdGhhdCBnZW5lcmF0ZXMgdGhlIHZhbHVlIHRvIGRpc3BsYXkgaW5zaWRlIGEgY29sdW1uLlxuICAgICAqL1xuICAgIGRpc3BsYXlDb2x1bW5zITogRGlzcGxheUNvbHVtbjxWYWx1ZVR5cGU+W107XG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciBjc3MgY2xhc3NlcyB0aGF0IHNob3VsZCBiZSBhcHBsaWVkIHRvIHRhYmxlIHJvd3MgYmFzZWQgb24gYSBjb25kaXRpb24uXG4gICAgICogVGhpcyBjb3VsZCBiZSB1c2VkIHRvIGVnLiBTZXQgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gZ3JlZW4gd2hlbiBhbiBpdGVtIGhhcyB0aGUgc3RhdHVzIGNvbXBsZXRlZCBldGMuXG4gICAgICogSU5GTzogWW91IG5lZWQgdG8gdXNlIG5nLWRlZXAgb3IgYXBwbHkgdGhlIHN0eWxpbmcgaW4gdGhlIHN0eWxlcy5zY3NzLlxuICAgICAqIEBkZWZhdWx0ICgpID0+IFtdXG4gICAgICovXG4gICAgZHluYW1pY1Jvd1N0eWxlQ2xhc3Nlcz86IER5bmFtaWNTdHlsZUNsYXNzZXM8VmFsdWVUeXBlPjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBlcnJvci1tZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0aGUgYXJyYXkgaXMgcmVxdWlyZWQgYnV0IGNvbnRhaW5zIG5vIHZhbHVlcy5cbiAgICAgKi9cbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgYWRkIGJ1dHRvbi5cbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgcmVtb3ZlIGJ1dHRvbi5cbiAgICAgKiBAZGVmYXVsdCAnUmVtb3ZlJ1xuICAgICAqL1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSBkaWFsb2cgZGF0YSBmb3IgdGhlIGVudGl0aWVzIGFycmF5IGVkaXQgZGlhbG9nLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4ge1xuICAgIC8qKlxuICAgICAqIFRoZSB0aXRsZSBvZiB0aGUgZGVmYXVsdCBlZGl0LWRpYWxvZy5cbiAgICAgKi9cbiAgICB0aXRsZT86IChlbnRpdHk6IEVudGl0eVR5cGUpID0+IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgb24gdGhlIGNvbmZpcm0tYnV0dG9uIG9mIHRoZSBkZWZhdWx0IGVkaXQtZGlhbG9nIG9yIHBhZ2UuIERlZmF1bHRzIHRvIFwiU2F2ZVwiLlxuICAgICAqL1xuICAgIGNvbmZpcm1CdXR0b25MYWJlbD86IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgb24gdGhlIGNhbmNlbC1idXR0b24gZm9yIHRoZSBkZWZhdWx0IGVkaXQtZGlhbG9nIG9yIHBhZ2UuIERlZmF1bHRzIHRvIFwiQ2FuY2VsXCIuXG4gICAgICovXG4gICAgY2FuY2VsQnV0dG9uTGFiZWw/OiBzdHJpbmdcbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIGZvciBhbiBhcnJheSBvZiBFbnRpdGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+IGV4dGVuZHMgQXJyYXlUYWJsZURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuT0JKRUNULFxuXG4gICAgLyoqXG4gICAgICogVGhlIEVudGl0eUNsYXNzIHVzZWQgZm9yIGdlbmVyYXRpbmcgdGhlIGNyZWF0ZSBpbnB1dHMuXG4gICAgICovXG4gICAgRW50aXR5Q2xhc3M6IEVudGl0eUNsYXNzTmV3YWJsZTxFbnRpdHlUeXBlPixcblxuICAgIC8qKlxuICAgICAqIFRoZSBkYXRhIGZvciB0aGUgYWRkLWl0ZW0tZGlhbG9nLlxuICAgICAqIENhbiBiZSBvbWl0dGVkIHdoZW4gYWRkaW5nIGl0ZW1zIGlubGluZS5cbiAgICAgKi9cbiAgICBjcmVhdGVEaWFsb2dEYXRhPzogQ3JlYXRlRGF0YSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBkYXRhIGZvciB0aGUgZWRpdC1pdGVtLWRpYWxvZy5cbiAgICAgKiBDYW4gYmUgb21pdHRlZCB3aGVuIGFkZGluZyBpdGVtcyBpbmxpbmUuXG4gICAgICovXG4gICAgZWRpdERpYWxvZ0RhdGE/OiBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlPixcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgb3Igbm90IHRoZSBmb3JtIGZvciBhZGRpbmcgaXRlbXMgdG8gdGhlIGFycmF5XG4gICAgICogc2hvdWxkIGJlIGRpc3BsYXllZCBpbmxpbmUuXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIGNyZWF0ZUlubGluZT86IGJvb2xlYW5cbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIGZvciBhbiBhcnJheSBvZiBEYXRlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheVRhYmxlRGVjb3JhdG9yQ29uZmlnPERhdGU+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIGRhdGUuXG4gICAgICovXG4gICAgbWluPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIGRhdGUuXG4gICAgICovXG4gICAgbWF4PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuXG4gICAgLyoqXG4gICAgICogQSBmaWx0ZXIgZnVuY3Rpb24gdG8gZG8gbW9yZSBzcGVjaWZpYyBmaWx0ZXJpbmcuIFRoaXMgY291bGQgYmUgdGhlIHJlbW92YWwgb2YgZS5nLiBBbGwgd2Vla2VuZHMuXG4gICAgICovXG4gICAgZmlsdGVyPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPlxufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIERhdGVUaW1lcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlUYWJsZURlY29yYXRvckNvbmZpZzxEYXRlPiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuREFURV9USU1FLFxuXG4gICAgLyoqXG4gICAgICogVGhlIHNlbGVjdGFibGUgdGltZXMuXG4gICAgICovXG4gICAgdGltZXM/OiBEcm9wZG93blZhbHVlPFRpbWU+W10sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSB0byB1c2UgYXMgYSBsYWJlbCBmb3IgdGhlIHRpbWUgZm9ybSBmaWVsZC5cbiAgICAgKiBAZGVmYXVsdCAnVGltZSdcbiAgICAgKi9cbiAgICB0aW1lRGlzcGxheU5hbWU/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWluaW11bSB2YWx1ZSBvZiB0aGUgZGF0ZS5cbiAgICAgKi9cbiAgICBtaW5EYXRlPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIGRhdGUuXG4gICAgICovXG4gICAgbWF4RGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZSxcblxuICAgIC8qKlxuICAgICAqIEEgZmlsdGVyIGZ1bmN0aW9uIHRvIGRvIG1vcmUgc3BlY2lmaWMgZGF0ZSBmaWx0ZXJpbmcuIFRoaXMgY291bGQgYmUgdGhlIHJlbW92YWwgb2YgZS5nLiBBbGwgd2Vla2VuZHMuXG4gICAgICovXG4gICAgZmlsdGVyRGF0ZT86IERhdGVGaWx0ZXJGbjxEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZD4sXG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWluaW11bSB2YWx1ZSBvZiB0aGUgdGltZS5cbiAgICAgKi9cbiAgICBtaW5UaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIHRpbWUuXG4gICAgICovXG4gICAgbWF4VGltZT86IChkYXRlPzogRGF0ZSkgPT4gVGltZSxcblxuICAgIC8qKlxuICAgICAqIEEgZmlsdGVyIGZ1bmN0aW9uIHRvIGRvIG1vcmUgc3BlY2lmaWMgdGltZSBmaWx0ZXJpbmcuIFRoaXMgY291bGQgYmUgZS5nLiBUaGUgcmVtb3ZhbCBvZiBsdW5jaCBicmVha3MuXG4gICAgICovXG4gICAgZmlsdGVyVGltZT86ICgodGltZTogVGltZSkgPT4gYm9vbGVhbikgfCAoKCkgPT4gYm9vbGVhbilcbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIGZvciBhbiBhcnJheSBvZiBEYXRlUmFuZ2VzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlUYWJsZURlY29yYXRvckNvbmZpZzxEYXRlUmFuZ2U+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFX1JBTkdFLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIHN0YXJ0IGRhdGUuXG4gICAgICovXG4gICAgbWluU3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIHN0YXJ0IGRhdGUuXG4gICAgICovXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIGVuZCBkYXRlLlxuICAgICAqL1xuICAgIG1pbkVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZSxcbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgZW5kIGRhdGUuXG4gICAgICovXG4gICAgbWF4RW5kPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuICAgIC8qKlxuICAgICAqIEEgZmlsdGVyIGZ1bmN0aW9uIHRvIGRvIG1vcmUgc3BlY2lmaWMgZmlsdGVyaW5nIG9uIHRoZSBkaXNhbGxvd2VkIGVuZCBkYXRlIHZhbHVlcy4gVGhpcyBjb3VsZCBiZSB0aGUgcmVtb3ZhbCBvZiBlLmcuIEFsbCB3ZWVrZW5kcy5cbiAgICAgKi9cbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT4sXG4gICAgLyoqXG4gICAgICogVGhlIHBsYWNlaG9sZGVyIGZvciB0aGUgc3RhcnQgZGF0ZSBvZiB0aGUgZGF0ZSByYW5nZSBwaWNrZXIuXG4gICAgICogQGRlZmF1bHQgXCJTdGFydFwiXG4gICAgICovXG4gICAgcGxhY2Vob2xkZXJTdGFydD86IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUaGUgcGxhY2Vob2xkZXIgZm9yIHRoZSBlbmQgZGF0ZSBvZiB0aGUgZGF0ZSByYW5nZSBwaWNrZXIuXG4gICAgICogQGRlZmF1bHQgXCJFbmRcIlxuICAgICAqL1xuICAgIHBsYWNlaG9sZGVyRW5kPzogc3RyaW5nXG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2Ygc3RyaW5ncyBkaXNwbGF5ZWQgYXMgYSBjaGlwcyBsaXN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZzxzdHJpbmdbXT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLlNUUklORyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBjbGFzcyBmb3IgdGhlIDxpPiB0YWcgdXNlZCB0byByZW1vdmUgYW4gZW50cnkgZnJvbSB0aGUgYXJyYXkuXG4gICAgICogQGRlZmF1bHQgJ2ZhcyBmYS1jaXJjbGUtbWludXMnXG4gICAgICovXG4gICAgZGVsZXRlSWNvbj86IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUaGUgbWluaW11bSByZXF1aXJlZCBsZW5ndGggb2YgdGhlIHN0cmluZy5cbiAgICAgKi9cbiAgICBtaW5MZW5ndGg/OiBudW1iZXIsXG4gICAgLyoqXG4gICAgICogVGhlIG1heGltdW0gcmVxdWlyZWQgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuXG4gICAgICovXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyLFxuICAgIC8qKlxuICAgICAqIEEgcmVnZXggdXNlZCBmb3IgdmFsaWRhdGlvbi5cbiAgICAgKi9cbiAgICByZWdleD86IFJlZ0V4cFxufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIGF1dG9jb21wbGV0ZSBzdHJpbmdzIGRpc3BsYXllZCBhcyBhIGNoaXBzIGxpc3QuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyBleHRlbmRzIEFycmF5RGVjb3JhdG9yQ29uZmlnPHN0cmluZ1tdPiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuU1RSSU5HX0FVVE9DT01QTEVURSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBjbGFzcyBmb3IgdGhlIDxpPiB0YWcgdXNlZCB0byByZW1vdmUgYW4gZW50cnkgZnJvbSB0aGUgYXJyYXkuXG4gICAgICogQGRlZmF1bHQgJ2ZhcyBmYS1jaXJjbGUtbWludXMnXG4gICAgICovXG4gICAgZGVsZXRlSWNvbj86IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUaGUgYXV0b2NvbXBsZXRlIHZhbHVlcy5cbiAgICAgKi9cbiAgICBhdXRvY29tcGxldGVWYWx1ZXM6IFN0cmluZ0F1dG9jb21wbGV0ZVZhbHVlcyxcbiAgICAvKipcbiAgICAgKiBUaGUgbWluaW11bSByZXF1aXJlZCBsZW5ndGggb2YgdGhlIHN0cmluZy5cbiAgICAgKi9cbiAgICBtaW5MZW5ndGg/OiBudW1iZXIsXG4gICAgLyoqXG4gICAgICogVGhlIG1heGltdW0gcmVxdWlyZWQgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuXG4gICAgICovXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyLFxuICAgIC8qKlxuICAgICAqIEEgcmVnZXggdXNlZCBmb3IgdmFsaWRhdGlvbi5cbiAgICAgKi9cbiAgICByZWdleD86IFJlZ0V4cCxcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB2YWxpZCBpbnB1dHMgc2hvdWxkIGJlIHJlc3RyaWN0ZWQgdG8gdGhlIGF1dG9jb21wbGV0ZSBvcHRpb25zLlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgcmVzdHJpY3RUb09wdGlvbnM/OiBib29sZWFuXG59Il19
|
|
@@ -38,4 +38,4 @@ function defaultCreateBaseUrl(baseEntity, metadata) {
|
|
|
38
38
|
const baseUrlSegments = entityService.baseUrl.split('/');
|
|
39
39
|
return `${baseEntityService.baseUrl}/${baseEntity[baseEntityService.idKey]}/${baseUrlSegments[baseUrlSegments.length - 1]}`;
|
|
40
40
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLW1hbnktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2hhcy1tYW55L2hhcy1tYW55LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJdkMsT0FBTyxFQUFFLGVBQWUsRUFBb0IsZ0JBQWdCLEVBQXFCLE1BQU0sMkNBQTJDLENBQUM7QUFHbkksT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFM0Y7O0dBRUc7QUFDSCxNQUFNLE9BQU8sOEJBR1gsU0FBUSwrQkFBMkM7SUFFeEMsYUFBYSxDQUFPO0lBQzdCLCtDQUErQztJQUMvQyxTQUFTLENBQWdDO0lBQ3pDLCtDQUErQztJQUMvQyx5QkFBeUIsQ0FBbUQ7SUFDNUUsK0NBQStDO0lBQy9DLGFBQWEsQ0FBcUg7SUFDbEksK0NBQStDO0lBQy9DLFdBQVcsQ0FBcUg7SUFFaEksWUFBWSxJQUErRCxFQUFFLFlBQW9DO1FBQzdHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLE1BQU0sUUFBUSxHQUFpQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUM7YUFDcEcsV0FBVyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQ3RDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUM5RCxXQUFXLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQzthQUNqQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1FBQ2hFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxvQkFHaEMsQ0FBQztRQUNaLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxvQkFHNUIsQ0FBQztRQUVaLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQztDQUNKO0FBRUQsMEJBQTBCO0FBQzFCLCtDQUErQztBQUMvQyxTQUFTLG9CQUFvQixDQUN6QixVQUFpQyxFQUNqQyxRQUEyRTtJQUUzRSw2Q0FBNkM7SUFDN0MsTUFBTSxpQkFBaUIsR0FBeUMsTUFBTSxDQUF1QyxRQUFRLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUNqSixNQUFNLGFBQWEsR0FBOEIsTUFBTSxDQUE0QixRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ25JLE1BQU0sZUFBZSxHQUFhLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25FLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxJQUFJLGVBQWUsQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDaEksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBIYXNNYW55RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9oYXMtbWFueS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSwgRW50aXR5U2VydmljZUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IEJhc2VEYXRhQnVpbGRlciwgQmFzZURhdGFJbnRlcm5hbCwgVGFibGVEYXRhQnVpbGRlciwgVGFibGVEYXRhSW50ZXJuYWwgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzIH0gZnJvbSAnLi4vLi4vZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IEVudGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnRpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vYmFzZS9wcm9wZXJ0eS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5cbi8qKlxuICogVGhlIGludGVybmFsIEhhc01hbnlEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBIYXNNYW55RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8XG4gICAgRW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+LFxuICAgIFJlbGF0ZWRCYXNlRW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPFJlbGF0ZWRCYXNlRW50aXR5VHlwZT5cbj4gZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPEVudGl0eVR5cGU+IGltcGxlbWVudHMgSGFzTWFueURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlLCBSZWxhdGVkQmFzZUVudGl0eVR5cGU+IHtcblxuICAgIG92ZXJyaWRlIG9taXRGb3JDcmVhdGU6IHRydWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0YWJsZURhdGE6IFRhYmxlRGF0YUludGVybmFsPEVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgUmVsYXRlZEVudGl0eVNlcnZpY2VDbGFzczogRW50aXR5U2VydmljZUNsYXNzTmV3YWJsZTxSZWxhdGVkQmFzZUVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlQmFzZVVybDogKGJhc2VFbnRpdHk6IFJlbGF0ZWRCYXNlRW50aXR5VHlwZSwgbWV0YWRhdGE6IEhhc01hbnlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZSwgUmVsYXRlZEJhc2VFbnRpdHlUeXBlPikgPT4gc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVhZEJhc2VVcmw6IChiYXNlRW50aXR5OiBSZWxhdGVkQmFzZUVudGl0eVR5cGUsIG1ldGFkYXRhOiBIYXNNYW55RGVjb3JhdG9yQ29uZmlnPEVudGl0eVR5cGUsIFJlbGF0ZWRCYXNlRW50aXR5VHlwZT4pID0+IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IEhhc01hbnlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZSwgUmVsYXRlZEJhc2VFbnRpdHlUeXBlPiwgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICBjb25zdCBiYXNlRGF0YTogQmFzZURhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPiA9IG5ldyBCYXNlRGF0YUJ1aWxkZXIoZGF0YS50YWJsZURhdGEuYmFzZURhdGEsIGdsb2JhbENvbmZpZylcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGl0bGUnLCBkYXRhLmRpc3BsYXlOYW1lKVxuICAgICAgICAgICAgLmdldFJlc3VsdCgpO1xuICAgICAgICB0aGlzLnRhYmxlRGF0YSA9IG5ldyBUYWJsZURhdGFCdWlsZGVyKGdsb2JhbENvbmZpZywgZGF0YS50YWJsZURhdGEpXG4gICAgICAgICAgICAud2l0aERlZmF1bHQoJ2Jhc2VEYXRhJywgYmFzZURhdGEpXG4gICAgICAgICAgICAuZ2V0UmVzdWx0KCk7XG4gICAgICAgIHRoaXMuUmVsYXRlZEVudGl0eVNlcnZpY2VDbGFzcyA9IGRhdGEuUmVsYXRlZEVudGl0eVNlcnZpY2VDbGFzcztcbiAgICAgICAgdGhpcy5jcmVhdGVCYXNlVXJsID0gZGF0YS5jcmVhdGVCYXNlVXJsID8/IGRlZmF1bHRDcmVhdGVCYXNlVXJsIGFzIChcbiAgICAgICAgICAgIGJhc2VFbnRpdHk6IFJlbGF0ZWRCYXNlRW50aXR5VHlwZSxcbiAgICAgICAgICAgIG1ldGFkYXRhOiBIYXNNYW55RGVjb3JhdG9yQ29uZmlnPEVudGl0eVR5cGUsIFJlbGF0ZWRCYXNlRW50aXR5VHlwZT5cbiAgICAgICAgKSA9PiBzdHJpbmc7XG4gICAgICAgIHRoaXMucmVhZEJhc2VVcmwgPSBkYXRhLnJlYWRCYXNlVXJsID8/IGRlZmF1bHRDcmVhdGVCYXNlVXJsIGFzIChcbiAgICAgICAgICAgIGJhc2VFbnRpdHk6IFJlbGF0ZWRCYXNlRW50aXR5VHlwZSxcbiAgICAgICAgICAgIG1ldGFkYXRhOiBIYXNNYW55RGVjb3JhdG9yQ29uZmlnPEVudGl0eVR5cGUsIFJlbGF0ZWRCYXNlRW50aXR5VHlwZT5cbiAgICAgICAgKSA9PiBzdHJpbmc7XG5cbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFsxMiwgMTIsIDEyXTtcbiAgICAgICAgdGhpcy5vbWl0Rm9yQ3JlYXRlID0gdHJ1ZTtcbiAgICB9XG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gZGVmYXVsdENyZWF0ZUJhc2VVcmw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+LCBSZWxhdGVkQmFzZUVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4oXG4gICAgYmFzZUVudGl0eTogUmVsYXRlZEJhc2VFbnRpdHlUeXBlLFxuICAgIG1ldGFkYXRhOiBIYXNNYW55RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RW50aXR5VHlwZSwgUmVsYXRlZEJhc2VFbnRpdHlUeXBlPlxuKTogc3RyaW5nIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc3R5bGlzdGljL21heC1sZW5cbiAgICBjb25zdCBiYXNlRW50aXR5U2VydmljZTogRW50aXR5U2VydmljZTxSZWxhdGVkQmFzZUVudGl0eVR5cGU+ID0gaW5qZWN0PEVudGl0eVNlcnZpY2U8UmVsYXRlZEJhc2VFbnRpdHlUeXBlPj4obWV0YWRhdGEuUmVsYXRlZEVudGl0eVNlcnZpY2VDbGFzcyk7XG4gICAgY29uc3QgZW50aXR5U2VydmljZTogRW50aXR5U2VydmljZTxFbnRpdHlUeXBlPiA9IGluamVjdDxFbnRpdHlTZXJ2aWNlPEVudGl0eVR5cGU+PihtZXRhZGF0YS50YWJsZURhdGEuYmFzZURhdGEuRW50aXR5U2VydmljZUNsYXNzKTtcbiAgICBjb25zdCBiYXNlVXJsU2VnbWVudHM6IHN0cmluZ1tdID0gZW50aXR5U2VydmljZS5iYXNlVXJsLnNwbGl0KCcvJyk7XG4gICAgcmV0dXJuIGAke2Jhc2VFbnRpdHlTZXJ2aWNlLmJhc2VVcmx9LyR7YmFzZUVudGl0eVtiYXNlRW50aXR5U2VydmljZS5pZEtleV19LyR7YmFzZVVybFNlZ21lbnRzW2Jhc2VVcmxTZWdtZW50cy5sZW5ndGggLSAxXX1gO1xufSJdfQ==
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { defaultDynamicStyleClasses } from '../../functions/default-style-classes.function';
|
|
1
2
|
import { getConfigValue } from '../../functions/get-config-value.function';
|
|
2
3
|
import { PropertyDecoratorConfigInternal } from '../base/property-decorator-internal.data';
|
|
3
4
|
/**
|
|
@@ -11,6 +12,10 @@ export class ReferencesManyDecoratorConfigInternal extends PropertyDecoratorConf
|
|
|
11
12
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
12
13
|
getEntityForId;
|
|
13
14
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
15
|
+
emptyErrorMessage;
|
|
16
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
17
|
+
dynamicRowStyleClasses;
|
|
18
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
14
19
|
displayColumns;
|
|
15
20
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
16
21
|
addButtonLabel;
|
|
@@ -27,6 +32,8 @@ export class ReferencesManyDecoratorConfigInternal extends PropertyDecoratorConf
|
|
|
27
32
|
this.getReferencedEntities = data.getReferencedEntities;
|
|
28
33
|
this.getDropdownValues = data.getDropdownValues;
|
|
29
34
|
this.getEntityForId = data.getEntityForId ?? defaultGetEntityForId;
|
|
35
|
+
this.emptyErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.emptyErrorMessage);
|
|
36
|
+
this.dynamicRowStyleClasses = data.dynamicRowStyleClasses ?? defaultDynamicStyleClasses;
|
|
30
37
|
this.displayColumns = data.displayColumns;
|
|
31
38
|
this.addButtonLabel = getConfigValue(globalConfig.addLabel, data.addButtonLabel);
|
|
32
39
|
this.removeButtonLabel = getConfigValue(globalConfig.removeLabel, data.removeButtonLabel);
|
|
@@ -45,4 +52,4 @@ export class ReferencesManyDecoratorConfigInternal extends PropertyDecoratorConf
|
|
|
45
52
|
export function defaultGetEntityForId(entityId, allReferencedEntities) {
|
|
46
53
|
return allReferencedEntities.find(e => e['id'] === entityId);
|
|
47
54
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlcy1tYW55LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvZGVjb3JhdG9ycy9yZWZlcmVuY2VzLW1hbnkvcmVmZXJlbmNlcy1tYW55LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUczRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUUzRjs7R0FFRztBQUNILE1BQU0sT0FBTyxxQ0FDVCxTQUFRLCtCQUEyQztJQUNuRCwrQ0FBK0M7SUFDL0MscUJBQXFCLENBQThCO0lBQ25ELCtDQUErQztJQUMvQyxpQkFBaUIsQ0FBZ0U7SUFDakYsK0NBQStDO0lBQy9DLGNBQWMsQ0FBd0U7SUFDdEYsK0NBQStDO0lBQy9DLGlCQUFpQixDQUFTO0lBQzFCLCtDQUErQztJQUMvQyxzQkFBc0IsQ0FBa0M7SUFDeEQsK0NBQStDO0lBQy9DLGNBQWMsQ0FBOEI7SUFDNUMsK0NBQStDO0lBQy9DLGNBQWMsQ0FBUztJQUN2QiwrQ0FBK0M7SUFDL0MsaUJBQWlCLENBQVM7SUFDMUIsK0NBQStDO0lBQy9DLGFBQWEsQ0FBUztJQUN0QiwrQ0FBK0M7SUFDL0MsTUFBTSxDQUFVO0lBQ2hCLCtDQUErQztJQUMvQyxpQkFBaUIsQ0FBUztJQUUxQixZQUFZLElBQStDLEVBQUUsWUFBb0M7UUFDN0YsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ1osSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN4RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsSUFBSSxxQkFBcUIsQ0FBQztRQUNuRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNyRyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixJQUFJLDBCQUEwQixDQUFDO1FBQ3hGLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUMxQyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsYUFBYSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDO1FBQ25DLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxjQUFjLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM5RixDQUFDO0NBQ0o7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxxQkFBcUIsQ0FDakMsUUFBZ0IsRUFDaEIscUJBQW1DO0lBRW5DLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQXdCLENBQUMsS0FBSyxRQUFRLENBQWUsQ0FBQztBQUNuRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVmZXJlbmNlc01hbnlEZWNvcmF0b3JDb25maWcgfSBmcm9tICcuL3JlZmVyZW5jZXMtbWFueS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IERpc3BsYXlDb2x1bW4sIER5bmFtaWNTdHlsZUNsYXNzZXMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEnO1xuaW1wb3J0IHsgZGVmYXVsdER5bmFtaWNTdHlsZUNsYXNzZXMgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvZGVmYXVsdC1zdHlsZS1jbGFzc2VzLmZ1bmN0aW9uJztcbmltcG9ydCB7IGdldENvbmZpZ1ZhbHVlIH0gZnJvbSAnLi4vLi4vZnVuY3Rpb25zL2dldC1jb25maWctdmFsdWUuZnVuY3Rpb24nO1xuaW1wb3J0IHsgTmd4R2xvYmFsRGVmYXVsdFZhbHVlcyB9IGZyb20gJy4uLy4uL2dsb2JhbC1jb25maWd1cmF0aW9uLXZhbHVlcyc7XG5pbXBvcnQgeyBEcm9wZG93blZhbHVlIH0gZnJvbSAnLi4vYmFzZS9kcm9wZG93bi12YWx1ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCB9IGZyb20gJy4uL2Jhc2UvcHJvcGVydHktZGVjb3JhdG9yLWludGVybmFsLmRhdGEnO1xuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEZWZhdWx0TnVtYmVyRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlc01hbnlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPEVudGl0eVR5cGU+IGltcGxlbWVudHMgUmVmZXJlbmNlc01hbnlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZ2V0UmVmZXJlbmNlZEVudGl0aWVzOiAoKSA9PiBQcm9taXNlPEVudGl0eVR5cGVbXT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBnZXREcm9wZG93blZhbHVlczogKHJlZmVyZW5jZWRFbnRpdGllczogRW50aXR5VHlwZVtdKSA9PiBEcm9wZG93blZhbHVlPHN0cmluZz5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGdldEVudGl0eUZvcklkOiAoZW50aXR5SWQ6IHN0cmluZywgYWxsUmVmZXJlbmNlZEVudGl0aWVzOiBFbnRpdHlUeXBlW10pID0+IEVudGl0eVR5cGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBlbXB0eUVycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHluYW1pY1Jvd1N0eWxlQ2xhc3NlczogRHluYW1pY1N0eWxlQ2xhc3NlczxFbnRpdHlUeXBlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhZGRCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVtb3ZlQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRyb3Bkb3duTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEFsbDogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEFsbEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBSZWZlcmVuY2VzTWFueURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPiwgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmdldFJlZmVyZW5jZWRFbnRpdGllcyA9IGRhdGEuZ2V0UmVmZXJlbmNlZEVudGl0aWVzO1xuICAgICAgICB0aGlzLmdldERyb3Bkb3duVmFsdWVzID0gZGF0YS5nZXREcm9wZG93blZhbHVlcztcbiAgICAgICAgdGhpcy5nZXRFbnRpdHlGb3JJZCA9IGRhdGEuZ2V0RW50aXR5Rm9ySWQgPz8gZGVmYXVsdEdldEVudGl0eUZvcklkO1xuICAgICAgICB0aGlzLmVtcHR5RXJyb3JNZXNzYWdlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVtcHR5QXJyYXlFcnJvck1lc3NhZ2UsIGRhdGEuZW1wdHlFcnJvck1lc3NhZ2UpO1xuICAgICAgICB0aGlzLmR5bmFtaWNSb3dTdHlsZUNsYXNzZXMgPSBkYXRhLmR5bmFtaWNSb3dTdHlsZUNsYXNzZXMgPz8gZGVmYXVsdER5bmFtaWNTdHlsZUNsYXNzZXM7XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbHVtbnMgPSBkYXRhLmRpc3BsYXlDb2x1bW5zO1xuICAgICAgICB0aGlzLmFkZEJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmFkZExhYmVsLCBkYXRhLmFkZEJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5yZW1vdmVCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5yZW1vdmVMYWJlbCwgZGF0YS5yZW1vdmVCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuZHJvcGRvd25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5zZWxlY3RMYWJlbCwgZGF0YS5kcm9wZG93bkxhYmVsKTtcbiAgICAgICAgdGhpcy5hZGRBbGwgPSBkYXRhLmFkZEFsbCA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5hZGRBbGxCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5hZGRBbGxMYWJlbCwgZGF0YS5hZGRBbGxCdXR0b25MYWJlbCk7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBkZWZhdWx0IGZ1bmN0aW9uIHRvIHVzZSB3aGVuIHRyeWluZyB0byBnZXQgdGhlIHJlZmVyZW5jZWQgZW50aXR5IGZvciB0aGUgZ2l2ZW4gaWQuXG4gKiBAcGFyYW0gZW50aXR5SWQgLSBUaGUgaWQgb2YgdGhlIHJlZmVyZW5jZWQgZW50aXR5LlxuICogQHBhcmFtIGFsbFJlZmVyZW5jZWRFbnRpdGllcyAtIEFsbCByZWZlcmVuY2VkIGVudGl0aWVzLlxuICogQHJldHVybnMgVGhlIGVudGl0eSB0aGF0IGhhcyB0aGUgZ2l2ZW4gaWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0R2V0RW50aXR5Rm9ySWQ8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihcbiAgICBlbnRpdHlJZDogc3RyaW5nLFxuICAgIGFsbFJlZmVyZW5jZWRFbnRpdGllczogRW50aXR5VHlwZVtdXG4pOiBFbnRpdHlUeXBlIHtcbiAgICByZXR1cm4gYWxsUmVmZXJlbmNlZEVudGl0aWVzLmZpbmQoZSA9PiBlWydpZCcgYXMga2V5b2YgRW50aXR5VHlwZV0gPT09IGVudGl0eUlkKSBhcyBFbnRpdHlUeXBlO1xufSJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlcy1tYW55LWRlY29yYXRvci5kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvZGVjb3JhdG9ycy9yZWZlcmVuY2VzLW1hbnkvcmVmZXJlbmNlcy1tYW55LWRlY29yYXRvci5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IERpc3BsYXlDb2x1bW4sIER5bmFtaWNTdHlsZUNsYXNzZXMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEnO1xuaW1wb3J0IHsgRHJvcGRvd25WYWx1ZSB9IGZyb20gJy4uL2Jhc2UvZHJvcGRvd24tdmFsdWUuaW50ZXJmYWNlJztcbmltcG9ydCB7IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi4vYmFzZS9wcm9wZXJ0eS1kZWNvcmF0b3IuZGF0YSc7XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgdGhlIEByZWZlcmVuY2VzTWFueSBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWZlcmVuY2VzTWFueURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+IGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT4ge1xuICAgIC8qKlxuICAgICAqIFRoZSBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIHZhbHVlcyB0aGF0IGNhbiBiZSByZWZlcmVuY2VkLlxuICAgICAqL1xuICAgIGdldFJlZmVyZW5jZWRFbnRpdGllczogKCkgPT4gUHJvbWlzZTxFbnRpdHlUeXBlW10+LFxuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIHRvIGdldCB0aGUgcmVmZXJlbmNlZCBkcm9wZG93biB2YWx1ZXMuXG4gICAgICovXG4gICAgZ2V0RHJvcGRvd25WYWx1ZXM6IChyZWZlcmVuY2VkRW50aXRpZXM6IEVudGl0eVR5cGVbXSkgPT4gRHJvcGRvd25WYWx1ZTxzdHJpbmc+W10sXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSByZWZlcmVuY2VkIGVudGl0eSBmb3IgdGhlIGdpdmVuIGlkLlxuICAgICAqL1xuICAgIGdldEVudGl0eUZvcklkPzogKGVudGl0eUlkOiBzdHJpbmcsIGFsbFJlZmVyZW5jZWRFbnRpdGllczogRW50aXR5VHlwZVtdKSA9PiBFbnRpdHlUeXBlLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGVycm9yIG1lc3NhZ2UgdG8gZGlzcGxheSB3aGVuIGFuIGFycmF5IHByb3BlcnR5IGlzIHJlcXVpcmVkIGFuZCBlbXB0eS5cbiAgICAgKiBAZGVmYXVsdCAnTmVlZHMgdG8gY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUnXG4gICAgICovXG4gICAgZW1wdHlFcnJvck1lc3NhZ2U/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciBjc3MgY2xhc3NlcyB0aGF0IHNob3VsZCBiZSBhcHBsaWVkIHRvIHRhYmxlIHJvd3MgYmFzZWQgb24gYSBjb25kaXRpb24uXG4gICAgICogVGhpcyBjb3VsZCBiZSB1c2VkIHRvIGVnLiBTZXQgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gZ3JlZW4gd2hlbiBhbiBpdGVtIGhhcyB0aGUgc3RhdHVzIGNvbXBsZXRlZCBldGMuXG4gICAgICogSU5GTzogWW91IG5lZWQgdG8gdXNlIG5nLWRlZXAgb3IgYXBwbHkgdGhlIHN0eWxpbmcgaW4gdGhlIHN0eWxlcy5zY3NzLlxuICAgICAqIEBkZWZhdWx0ICgpID0+IFtdXG4gICAgICovXG4gICAgZHluYW1pY1Jvd1N0eWxlQ2xhc3Nlcz86IER5bmFtaWNTdHlsZUNsYXNzZXM8RW50aXR5VHlwZT4sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgY29sdW1ucyB0byBkaXNwbGF5LiBDb25zaXN0cyBvZiB0aGUgZGlzcGxheU5hbWUgdG8gc2hvdyBpbiB0aGUgaGVhZGVyIG9mIHRoZSByb3dcbiAgICAgKiBhbmQgdGhlIHZhbHVlLCB3aGljaCBpcyBhIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHRoZSB2YWx1ZSB0byBkaXNwbGF5IGluc2lkZSBhIGNvbHVtbi5cbiAgICAgKi9cbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxFbnRpdHlUeXBlPltdLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgZHJvcGRvd24gaW5wdXQuXG4gICAgICogQGRlZmF1bHQgJ1NlbGVjdCdcbiAgICAgKi9cbiAgICBkcm9wZG93bkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBvciBub3QgYSBidXR0b24gdGhhdCBhZGRzIGFsbCB2YWx1ZXMgZXhpc3RzLlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgYWRkQWxsPzogYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIFRoZSBsYWJlbCBmb3IgdGhlIGFkZCBhbGwgYnV0dG9uLlxuICAgICAqIEBkZWZhdWx0ICdBZGQgYWxsJ1xuICAgICAqL1xuICAgIGFkZEFsbEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgYWRkIGJ1dHRvbiB3aGVuIGNyZWF0ZUlubGluZSBpcyB0cnVlLlxuICAgICAqIEBkZWZhdWx0ICdBZGQnXG4gICAgICovXG4gICAgYWRkQnV0dG9uTGFiZWw/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSByZW1vdmUgYnV0dG9uIHdoZW4gY3JlYXRlSW5saW5lIGlzIHRydWUuXG4gICAgICogQGRlZmF1bHQgJ1JlbW92ZSdcbiAgICAgKi9cbiAgICByZW1vdmVCdXR0b25MYWJlbD86IHN0cmluZ1xufSJdfQ==
|
|
@@ -14,7 +14,7 @@ export class DynamicStyleClassDirective {
|
|
|
14
14
|
/**
|
|
15
15
|
* The input for the dynamic style classes function.
|
|
16
16
|
*/
|
|
17
|
-
|
|
17
|
+
value;
|
|
18
18
|
constructor(element, renderer) {
|
|
19
19
|
this.element = element;
|
|
20
20
|
this.renderer = renderer;
|
|
@@ -23,7 +23,7 @@ export class DynamicStyleClassDirective {
|
|
|
23
23
|
this.applyDynamicClasses();
|
|
24
24
|
}
|
|
25
25
|
applyDynamicClasses() {
|
|
26
|
-
const classes = this.dynamicStyleClasses(this.
|
|
26
|
+
const classes = this.dynamicStyleClasses(this.value);
|
|
27
27
|
for (const styleClass of this.styleClassesApplied) {
|
|
28
28
|
this.renderer.removeClass(this.element.nativeElement, styleClass);
|
|
29
29
|
}
|
|
@@ -36,7 +36,7 @@ export class DynamicStyleClassDirective {
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: DynamicStyleClassDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: DynamicStyleClassDirective, isStandalone: true, selector: "[dynamicStyleClasses]", inputs: { dynamicStyleClasses: "dynamicStyleClasses",
|
|
39
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: DynamicStyleClassDirective, isStandalone: true, selector: "[dynamicStyleClasses]", inputs: { dynamicStyleClasses: "dynamicStyleClasses", value: "value" }, usesOnChanges: true, ngImport: i0 });
|
|
40
40
|
}
|
|
41
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: DynamicStyleClassDirective, decorators: [{
|
|
42
42
|
type: Directive,
|
|
@@ -44,8 +44,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
44
44
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { dynamicStyleClasses: [{
|
|
45
45
|
type: Input,
|
|
46
46
|
args: [{ required: true }]
|
|
47
|
-
}],
|
|
47
|
+
}], value: [{
|
|
48
48
|
type: Input,
|
|
49
49
|
args: [{ required: true }]
|
|
50
50
|
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zdHlsZS1jbGFzcy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kaXJlY3RpdmVzL2R5bmFtaWMtc3R5bGUtY2xhc3MuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBYSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSW5GOztHQUVHO0FBRUgsTUFBTSxPQUFPLDBCQUEwQjtJQWdCTjtJQUFzQztJQWQzRCxtQkFBbUIsR0FBYSxFQUFFLENBQUM7SUFFM0M7O09BRUc7SUFFSCxtQkFBbUIsQ0FBMEI7SUFFN0M7O09BRUc7SUFFSCxLQUFLLENBQUs7SUFFVixZQUE2QixPQUFtQixFQUFtQixRQUFtQjtRQUF6RCxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQW1CLGFBQVEsR0FBUixRQUFRLENBQVc7SUFBRyxDQUFDO0lBRTFGLFdBQVc7UUFDUCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU8sbUJBQW1CO1FBQ3ZCLE1BQU0sT0FBTyxHQUFvQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXRFLEtBQUssTUFBTSxVQUFVLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDdEUsQ0FBQztRQUNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDOUIsSUFBSSxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDbEIsS0FBSyxNQUFNLFVBQVUsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQy9ELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDOUMsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO3VHQW5DUSwwQkFBMEI7MkZBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFEdEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFO3VHQVM5RCxtQkFBbUI7c0JBRGxCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU96QixLQUFLO3NCQURKLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRHluYW1pY1N0eWxlQ2xhc3NlcyB9IGZyb20gJy4uL2NvbXBvbmVudHMvdGFibGUvdGFibGUtZGF0YSc7XG5cbi8qKlxuICogRHluYW1pY2FsbHkgYXBwbGllcyBjc3MgY2xhc3NlcyBiYXNlZCBvbiBhIHByb3ZpZGVkIGZ1bmN0aW9uLlxuICovXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbZHluYW1pY1N0eWxlQ2xhc3Nlc10nLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgRHluYW1pY1N0eWxlQ2xhc3NEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gICAgcHJpdmF0ZSBzdHlsZUNsYXNzZXNBcHBsaWVkOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGZ1bmN0aW9uIHRoYXQgZ2V0cyB0aGUgY3NzIGNsYXNzZXMgdG8gZHluYW1pY2FsbHkgYXBwbHkuXG4gICAgICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBkeW5hbWljU3R5bGVDbGFzc2VzITogRHluYW1pY1N0eWxlQ2xhc3NlczxUPjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBpbnB1dCBmb3IgdGhlIGR5bmFtaWMgc3R5bGUgY2xhc3NlcyBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICAgIHZhbHVlITogVDtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxuXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYXBwbHlEeW5hbWljQ2xhc3NlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBwbHlEeW5hbWljQ2xhc3NlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2xhc3Nlczogc3RyaW5nW10gfCB2b2lkID0gdGhpcy5keW5hbWljU3R5bGVDbGFzc2VzKHRoaXMudmFsdWUpO1xuXG4gICAgICAgIGZvciAoY29uc3Qgc3R5bGVDbGFzcyBvZiB0aGlzLnN0eWxlQ2xhc3Nlc0FwcGxpZWQpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHN0eWxlQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc3R5bGVDbGFzc2VzQXBwbGllZCA9IFtdO1xuICAgICAgICBpZiAoY2xhc3Nlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHN0eWxlQ2xhc3Mgb2YgY2xhc3Nlcykge1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHN0eWxlQ2xhc3MpO1xuICAgICAgICAgICAgICAgIHRoaXMuc3R5bGVDbGFzc2VzQXBwbGllZC5wdXNoKHN0eWxlQ2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSJdfQ==
|
|
@@ -79,10 +79,13 @@ export class TooltipDirective {
|
|
|
79
79
|
this.renderer.setStyle(this.tooltipElement, 'background-color', '#616161');
|
|
80
80
|
this.renderer.setStyle(this.tooltipElement, 'color', 'white');
|
|
81
81
|
this.renderer.setStyle(this.tooltipElement, 'max-height', '30vh');
|
|
82
|
+
this.renderer.setStyle(this.tooltipElement, 'max-width', '30vw');
|
|
82
83
|
this.renderer.setStyle(this.tooltipElement, 'overflow-y', 'scroll');
|
|
83
84
|
this.renderer.appendChild(this.el.nativeElement, this.tooltipElement);
|
|
84
85
|
const marginBottom = this.tooltipElement.clientHeight + this.el.nativeElement.clientHeight + 15;
|
|
85
86
|
this.renderer.setStyle(this.tooltipElement, 'margin-bottom', `${marginBottom}px`);
|
|
87
|
+
const marginLeft = this.tooltipElement.clientWidth + this.el.nativeElement.clientWidth - 50;
|
|
88
|
+
this.renderer.setStyle(this.tooltipElement, 'margin-left', `${marginLeft}px`);
|
|
86
89
|
}
|
|
87
90
|
registerCloseListeners() {
|
|
88
91
|
setTimeout(() => {
|
|
@@ -136,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
136
139
|
type: HostListener,
|
|
137
140
|
args: ['window:resize']
|
|
138
141
|
}] } });
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kaXJlY3RpdmVzL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU9qRzs7R0FFRztBQUtILE1BQU0sT0FBTyxnQkFBZ0I7SUFlSjtJQUNBO0lBZHJCOztPQUVHO0lBRUgsT0FBTyxDQUFVO0lBRVQsY0FBYyxDQUFlO0lBRTdCLGNBQWMsR0FBZSxFQUFFLENBQUM7SUFFaEMsYUFBYSxHQUFZLEtBQUssQ0FBQztJQUV2QyxZQUNxQixFQUFjLEVBQ2QsUUFBbUI7UUFEbkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVc7SUFDckMsQ0FBQztJQUVKOzs7T0FHRztJQUVILE9BQU8sQ0FBQyxLQUFZO1FBQ2hCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixPQUFPO1FBQ1gsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7WUFDMUIsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBRUgsWUFBWTtR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QUMsWUFBWTtnQkFhMUIsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogVGhlIHR5cGUgb2YgYSBnbG9iYWwgbGlzdGVuZXIuIElzIGEgZnVuY3Rpb24gdGhhdCBzaW1wbHkgdW5zdWJzY3JpYmVzIHRoZSBsaXN0ZW5lci5cbiAqL1xudHlwZSBMaXN0ZW5lciA9ICgpID0+IHZvaWQ7XG5cbi8qKlxuICogQSBkaXJlY3RpdmUgdGhhdCBkaXNwbGF5cyBhIHRvb2x0aXAgb24gaG92ZXIuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3Rvb2x0aXBdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNvbnRlbnQgdG8gZGlzcGxheSBpbnNpZGUgdGhlIHRvb2x0aXAuXG4gICAgICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICB0b29sdGlwITogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSB0b29sdGlwRWxlbWVudD86IEhUTUxFbGVtZW50O1xuXG4gICAgcHJpdmF0ZSBjbG9zZUxpc3RlbmVyczogTGlzdGVuZXJbXSA9IFtdO1xuXG4gICAgcHJpdmF0ZSBvcGVuZWRCeUNsaWNrOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICogVG9nZ2xlcyB0aGUgdG9vbHRpcC5cbiAgICAgKiBAcGFyYW0gZXZlbnQgLSBUaGUgY2xpY2sgZXZlbnQsIGlzIHVzZWQgdG8gc3RvcCB0aGUgcHJvcGFnYXRpb24gdGhhdCB3b3VsZCB0cmlnZ2VyIHRoZSBnbG9iYWwgY2xpY2sgbGlzdGVuZXIuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIG9uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBpZiAoIXRoaXMudG9vbHRpcEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd1Rvb2x0aXAoKTtcbiAgICAgICAgICAgIHRoaXMucmVnaXN0ZXJDbG9zZUxpc3RlbmVycygpO1xuICAgICAgICAgICAgdGhpcy5vcGVuZWRCeUNsaWNrID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMub3BlbmVkQnlDbGljaykge1xuICAgICAgICAgICAgdGhpcy5vcGVuZWRCeUNsaWNrID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhpZGVUb29sdGlwKCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQ2xvc2VMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93cyB0aGUgdG9vbHRpcC5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJylcbiAgICBvbk1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy50b29sdGlwRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5zaG93VG9vbHRpcCgpO1xuICAgICAgICAgICAgdGhpcy5yZWdpc3RlckNsb3NlTGlzdGVuZXJzKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMub3BlbmVkQnlDbGljaykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGlkZXMgdGhlIHRvb2x0aXAuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScpXG4gICAgb25Nb3VzZUxlYXZlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5vcGVuZWRCeUNsaWNrKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xuICAgICAgICB0aGlzLnJlbW92ZUNsb3NlTGlzdGVuZXJzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGlkZXMgdGhlIHRvb2x0aXAuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXG4gICAgb25SZXNpemUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGlkZVRvb2x0aXAoKTtcbiAgICAgICAgdGhpcy5yZW1vdmVDbG9zZUxpc3RlbmVycygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hvd1Rvb2x0aXAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50b29sdGlwRWxlbWVudCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2JykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIHRoaXMudG9vbHRpcEVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy50b29sdGlwO1xuXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbWVudCwgJ3otaW5kZXgnLCAnMTAwMCcpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdwb3NpdGlvbicsICdhYnNvbHV0ZScpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdwYWRkaW5nJywgJzRweCA4cHggNHB4IDhweCcpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdib3JkZXItcmFkaXVzJywgJzVweCcpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdiYWNrZ3JvdW5kLWNvbG9yJywgJyM2MTYxNjEnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtZW50LCAnY29sb3InLCAnd2hpdGUnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtZW50LCAnbWF4LWhlaWdodCcsICczMHZoJyk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbWVudCwgJ292ZXJmbG93LXknLCAnc2Nyb2xsJyk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLnRvb2x0aXBFbGVtZW50KTtcblxuICAgICAgICBjb25zdCBtYXJnaW5Cb3R0b206IG51bWJlciA9IHRoaXMudG9vbHRpcEVsZW1lbnQuY2xpZW50SGVpZ2h0ICsgKHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuY2xpZW50SGVpZ2h0ICsgMTU7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbWVudCwgJ21hcmdpbi1ib3R0b20nLCBgJHttYXJnaW5Cb3R0b219cHhgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyQ2xvc2VMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jbG9zZUxpc3RlbmVycy5wdXNoKFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q2xvc2VMaXN0ZW5lcignY2xpY2snKSxcbiAgICAgICAgICAgICAgICB0aGlzLmdldENsb3NlTGlzdGVuZXIoJ3RvdWNobW92ZScpLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q2xvc2VMaXN0ZW5lcigncmVzaXplJylcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sIDEwMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDbG9zZUxpc3RlbmVyKGV2ZW50OiBzdHJpbmcpOiBMaXN0ZW5lciB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCBldmVudCwgKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVDbG9zZUxpc3RlbmVycygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhpZGVUb29sdGlwKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50b29sdGlwRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMudG9vbHRpcEVsZW1lbnQpO1xuICAgICAgICAgICAgdGhpcy50b29sdGlwRWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVtb3ZlQ2xvc2VMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgbGlzdGVuZXIgb2YgdGhpcy5jbG9zZUxpc3RlbmVycykge1xuICAgICAgICAgICAgbGlzdGVuZXIoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNsb3NlTGlzdGVuZXJzID0gW107XG4gICAgICAgIHRoaXMub3BlbmVkQnlDbGljayA9IGZhbHNlO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZUNsb3NlTGlzdGVuZXJzKCk7XG4gICAgfVxufSJdfQ==
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kaXJlY3RpdmVzL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU9qRzs7R0FFRztBQUtILE1BQU0sT0FBTyxnQkFBZ0I7SUFlSjtJQUNBO0lBZHJCOztPQUVHO0lBRUgsT0FBTyxDQUFVO0lBRVQsY0FBYyxDQUFlO0lBRTdCLGNBQWMsR0FBZSxFQUFFLENBQUM7SUFFaEMsYUFBYSxHQUFZLEtBQUssQ0FBQztJQUV2QyxZQUNxQixFQUFjLEVBQ2QsUUFBbUI7UUFEbkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVc7SUFDckMsQ0FBQztJQUVKOzs7T0FHRztJQUVILE9BQU8sQ0FBQyxLQUFZO1FBQ2hCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixPQUFPO1FBQ1gsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7WUFDMUIsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBRUgsWUFBWTtR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Z0JBQWdCOzJGQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBSjVCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjt1R0FPRyxPQUFPO3NCQUROLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQW1CekIsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFxQmpDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZO2dCQWdCMUIsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLFlBQVk7Z0JBYTFCLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIFRoZSB0eXBlIG9mIGEgZ2xvYmFsIGxpc3RlbmVyLiBJcyBhIGZ1bmN0aW9uIHRoYXQgc2ltcGx5IHVuc3Vic2NyaWJlcyB0aGUgbGlzdGVuZXIuXG4gKi9cbnR5cGUgTGlzdGVuZXIgPSAoKSA9PiB2b2lkO1xuXG4vKipcbiAqIEEgZGlyZWN0aXZlIHRoYXQgZGlzcGxheXMgYSB0b29sdGlwIG9uIGhvdmVyLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0b29sdGlwXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAgIC8qKlxuICAgICAqIFRoZSBjb250ZW50IHRvIGRpc3BsYXkgaW5zaWRlIHRoZSB0b29sdGlwLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gICAgdG9vbHRpcCE6IHN0cmluZztcblxuICAgIHByaXZhdGUgdG9vbHRpcEVsZW1lbnQ/OiBIVE1MRWxlbWVudDtcblxuICAgIHByaXZhdGUgY2xvc2VMaXN0ZW5lcnM6IExpc3RlbmVyW10gPSBbXTtcblxuICAgIHByaXZhdGUgb3BlbmVkQnlDbGljazogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIFRvZ2dsZXMgdGhlIHRvb2x0aXAuXG4gICAgICogQHBhcmFtIGV2ZW50IC0gVGhlIGNsaWNrIGV2ZW50LCBpcyB1c2VkIHRvIHN0b3AgdGhlIHByb3BhZ2F0aW9uIHRoYXQgd291bGQgdHJpZ2dlciB0aGUgZ2xvYmFsIGNsaWNrIGxpc3RlbmVyLlxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBvbkNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgaWYgKCF0aGlzLnRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLnNob3dUb29sdGlwKCk7XG4gICAgICAgICAgICB0aGlzLnJlZ2lzdGVyQ2xvc2VMaXN0ZW5lcnMoKTtcbiAgICAgICAgICAgIHRoaXMub3BlbmVkQnlDbGljayA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLm9wZW5lZEJ5Q2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMub3BlbmVkQnlDbGljayA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xuICAgICAgICB0aGlzLnJlbW92ZUNsb3NlTGlzdGVuZXJzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvd3MgdGhlIHRvb2x0aXAuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gICAgb25Nb3VzZUVudGVyKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMudG9vbHRpcEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd1Rvb2x0aXAoKTtcbiAgICAgICAgICAgIHRoaXMucmVnaXN0ZXJDbG9zZUxpc3RlbmVycygpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm9wZW5lZEJ5Q2xpY2spIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGVzIHRoZSB0b29sdGlwLlxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICAgIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMub3BlbmVkQnlDbGljaykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaGlkZVRvb2x0aXAoKTtcbiAgICAgICAgdGhpcy5yZW1vdmVDbG9zZUxpc3RlbmVycygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGVzIHRoZSB0b29sdGlwLlxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICAgIG9uUmVzaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVUb29sdGlwKCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQ2xvc2VMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNob3dUb29sdGlwKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50b29sdGlwRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudG9vbHRpcEVsZW1lbnQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICB0aGlzLnRvb2x0aXBFbGVtZW50LmlubmVySFRNTCA9IHRoaXMudG9vbHRpcDtcblxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICd6LWluZGV4JywgJzEwMDAnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtZW50LCAncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtZW50LCAncGFkZGluZycsICc0cHggOHB4IDRweCA4cHgnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtZW50LCAnYm9yZGVyLXJhZGl1cycsICc1cHgnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtZW50LCAnYmFja2dyb3VuZC1jb2xvcicsICcjNjE2MTYxJyk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbWVudCwgJ2NvbG9yJywgJ3doaXRlJyk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbWVudCwgJ21heC1oZWlnaHQnLCAnMzB2aCcpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdtYXgtd2lkdGgnLCAnMzB2dycpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdvdmVyZmxvdy15JywgJ3Njcm9sbCcpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy50b29sdGlwRWxlbWVudCk7XG5cbiAgICAgICAgY29uc3QgbWFyZ2luQm90dG9tOiBudW1iZXIgPSB0aGlzLnRvb2x0aXBFbGVtZW50LmNsaWVudEhlaWdodCArICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmNsaWVudEhlaWdodCArIDE1O1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdtYXJnaW4tYm90dG9tJywgYCR7bWFyZ2luQm90dG9tfXB4YCk7XG4gICAgICAgIGNvbnN0IG1hcmdpbkxlZnQ6IG51bWJlciA9IHRoaXMudG9vbHRpcEVsZW1lbnQuY2xpZW50V2lkdGggKyAodGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5jbGllbnRXaWR0aCAtIDUwO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW1lbnQsICdtYXJnaW4tbGVmdCcsIGAke21hcmdpbkxlZnR9cHhgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyQ2xvc2VMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jbG9zZUxpc3RlbmVycy5wdXNoKFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q2xvc2VMaXN0ZW5lcignY2xpY2snKSxcbiAgICAgICAgICAgICAgICB0aGlzLmdldENsb3NlTGlzdGVuZXIoJ3RvdWNobW92ZScpLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q2xvc2VMaXN0ZW5lcigncmVzaXplJylcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sIDEwMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDbG9zZUxpc3RlbmVyKGV2ZW50OiBzdHJpbmcpOiBMaXN0ZW5lciB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCBldmVudCwgKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVDbG9zZUxpc3RlbmVycygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhpZGVUb29sdGlwKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50b29sdGlwRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMudG9vbHRpcEVsZW1lbnQpO1xuICAgICAgICAgICAgdGhpcy50b29sdGlwRWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVtb3ZlQ2xvc2VMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgbGlzdGVuZXIgb2YgdGhpcy5jbG9zZUxpc3RlbmVycykge1xuICAgICAgICAgICAgbGlzdGVuZXIoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNsb3NlTGlzdGVuZXJzID0gW107XG4gICAgICAgIHRoaXMub3BlbmVkQnlDbGljayA9IGZhbHNlO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZUNsb3NlTGlzdGVuZXJzKCk7XG4gICAgfVxufSJdfQ==
|