ngx-material-entity 16.0.3 → 16.0.4

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.
Files changed (76) hide show
  1. package/classes/base.builder.d.ts +6 -1
  2. package/components/confirm-dialog/confirm-dialog-data.builder.d.ts +2 -1
  3. package/components/confirm-dialog/confirm-dialog.component.d.ts +3 -1
  4. package/components/edit-page/edit-page.component.d.ts +3 -1
  5. package/components/edit-page/page-edit-data.builder.d.ts +2 -1
  6. package/components/input/array/array-date-input/array-date-input.component.d.ts +7 -1
  7. package/components/input/array/array-date-range-input/array-date-range-input.component.d.ts +6 -1
  8. package/components/input/array/array-date-time-input/array-date-time-input.component.d.ts +6 -1
  9. package/components/input/boolean/boolean-dropdown-input/boolean-dropdown-input.component.d.ts +4 -0
  10. package/components/input/date/date-range-input/date-range-input.component.d.ts +3 -0
  11. package/components/input/date/date-time-input/date-time-input.component.d.ts +3 -0
  12. package/components/input/input.component.d.ts +9 -2
  13. package/components/input/input.module.d.ts +3 -1
  14. package/components/input/relations/references-many-input/references-many-input.component.d.ts +3 -1
  15. package/components/table/create-dialog/create-dialog-data.builder.d.ts +2 -1
  16. package/components/table/create-dialog/create-entity-dialog-data.builder.d.ts +2 -1
  17. package/components/table/create-dialog/create-entity-dialog.component.d.ts +3 -1
  18. package/components/table/edit-dialog/edit-data.builder.d.ts +5 -3
  19. package/components/table/edit-dialog/edit-entity-dialog.component.d.ts +3 -1
  20. package/components/table/edit-dialog/edit-entity.builder.d.ts +2 -1
  21. package/components/table/table-data.builder.d.ts +9 -5
  22. package/components/table/table.component.d.ts +3 -1
  23. package/decorators/array/array-decorator-internal.data.d.ts +8 -7
  24. package/decorators/boolean/boolean-decorator-internal.data.d.ts +2 -1
  25. package/decorators/date/date-decorator-internal.data.d.ts +3 -2
  26. package/decorators/has-many/has-many-decorator-internal.data.d.ts +2 -1
  27. package/decorators/references-many/references-many-decorator-internal.data.d.ts +2 -1
  28. package/default-global-configuration-values.d.ts +6 -0
  29. package/directives/tooltip.directive.d.ts +0 -1
  30. package/esm2022/classes/base.builder.mjs +9 -3
  31. package/esm2022/components/confirm-dialog/confirm-dialog-data.builder.mjs +7 -5
  32. package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +13 -7
  33. package/esm2022/components/edit-page/edit-page.component.mjs +22 -16
  34. package/esm2022/components/edit-page/page-edit-data.builder.mjs +9 -9
  35. package/esm2022/components/input/array/array-date-input/array-date-input.component.mjs +33 -13
  36. package/esm2022/components/input/array/array-date-range-input/array-date-range-input.component.mjs +29 -12
  37. package/esm2022/components/input/array/array-date-time-input/array-date-time-input.component.mjs +32 -15
  38. package/esm2022/components/input/boolean/boolean-dropdown-input/boolean-dropdown-input.component.mjs +18 -4
  39. package/esm2022/components/input/date/date-range-input/date-range-input.component.mjs +16 -4
  40. package/esm2022/components/input/date/date-time-input/date-time-input.component.mjs +17 -5
  41. package/esm2022/components/input/input.component.mjs +89 -60
  42. package/esm2022/components/input/input.module.mjs +11 -4
  43. package/esm2022/components/input/relations/references-many-input/references-many-input.component.mjs +15 -5
  44. package/esm2022/components/table/create-dialog/create-dialog-data.builder.mjs +10 -8
  45. package/esm2022/components/table/create-dialog/create-entity-dialog-data.builder.mjs +5 -4
  46. package/esm2022/components/table/create-dialog/create-entity-dialog.component.mjs +15 -9
  47. package/esm2022/components/table/edit-dialog/edit-data.builder.mjs +35 -21
  48. package/esm2022/components/table/edit-dialog/edit-entity-dialog.component.mjs +21 -13
  49. package/esm2022/components/table/edit-dialog/edit-entity.builder.mjs +4 -4
  50. package/esm2022/components/table/table-data.builder.mjs +54 -30
  51. package/esm2022/components/table/table.component.mjs +18 -12
  52. package/esm2022/decorators/array/array-decorator-internal.data.mjs +42 -43
  53. package/esm2022/decorators/array/array.decorator.mjs +8 -7
  54. package/esm2022/decorators/base/property-decorator-internal.data.mjs +4 -4
  55. package/esm2022/decorators/boolean/boolean-decorator-internal.data.mjs +5 -4
  56. package/esm2022/decorators/boolean/boolean.decorator.mjs +3 -2
  57. package/esm2022/decorators/date/date-decorator-internal.data.mjs +7 -6
  58. package/esm2022/decorators/date/date.decorator.mjs +4 -3
  59. package/esm2022/decorators/has-many/has-many-decorator-internal.data.mjs +4 -4
  60. package/esm2022/decorators/has-many/has-many.decorator.mjs +3 -2
  61. package/esm2022/decorators/references-many/references-many-decorator-internal.data.mjs +7 -6
  62. package/esm2022/decorators/references-many/references-many.decorator.mjs +3 -2
  63. package/esm2022/default-global-configuration-values.mjs +89 -0
  64. package/esm2022/directives/tooltip.directive.mjs +5 -11
  65. package/esm2022/functions/get-config-value.function.mjs +15 -0
  66. package/esm2022/functions/get-validation-errors-tooltip-content.function.ts.mjs +4 -8
  67. package/esm2022/global-configuration-values.mjs +10 -0
  68. package/esm2022/public-api.mjs +3 -1
  69. package/esm2022/utilities/entity.utilities.mjs +1 -23
  70. package/fesm2022/ngx-material-entity.mjs +1380 -1142
  71. package/fesm2022/ngx-material-entity.mjs.map +1 -1
  72. package/functions/get-config-value.function.d.ts +8 -0
  73. package/global-configuration-values.d.ts +216 -0
  74. package/package.json +1 -1
  75. package/public-api.d.ts +1 -0
  76. package/utilities/entity.utilities.d.ts +0 -7
@@ -1,3 +1,5 @@
1
+ import { ConfirmDialogDataBuilder } from '../../components/confirm-dialog/confirm-dialog-data.builder';
2
+ import { getConfigValue } from '../../functions/get-config-value.function';
1
3
  import { DateUtilities } from '../../utilities/date.utilities';
2
4
  import { PropertyDecoratorConfigInternal } from '../base/property-decorator-internal.data';
3
5
  /**
@@ -11,10 +13,10 @@ export class EditArrayItemDialogDataInternal {
11
13
  confirmButtonLabel;
12
14
  // eslint-disable-next-line jsdoc/require-jsdoc
13
15
  cancelButtonLabel;
14
- constructor(data) {
15
- this.title = data?.title ?? (() => 'Edit');
16
- this.confirmButtonLabel = data?.confirmButtonLabel ?? 'Save';
17
- this.cancelButtonLabel = data?.cancelButtonLabel ?? 'Cancel';
16
+ constructor(globalConfig, data) {
17
+ this.title = getConfigValue(globalConfig.editTitle, data?.title);
18
+ this.confirmButtonLabel = getConfigValue(globalConfig.saveLabel, data?.confirmButtonLabel);
19
+ this.cancelButtonLabel = getConfigValue(globalConfig.cancelLabel, data?.cancelButtonLabel);
18
20
  }
19
21
  }
20
22
  /**
@@ -43,20 +45,20 @@ export class EntityArrayDecoratorConfigInternal extends PropertyDecoratorConfigI
43
45
  addButtonLabel;
44
46
  // eslint-disable-next-line jsdoc/require-jsdoc
45
47
  removeButtonLabel;
46
- constructor(data) {
48
+ constructor(data, globalConfig) {
47
49
  super(data);
48
50
  this.createInline = data.createInline ?? true;
49
51
  this.itemType = data.itemType;
50
52
  this.allowDuplicates = data.allowDuplicates ?? false;
51
- this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
53
+ this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
52
54
  this.EntityClass = data.EntityClass;
53
55
  this.displayColumns = data.displayColumns;
54
56
  this.createInline = data.createInline ?? true;
55
- this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
57
+ this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
56
58
  this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
57
- this.addButtonLabel = data.addButtonLabel ?? 'Add';
58
- this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
59
- this.editDialogData = new EditArrayItemDialogDataInternal(data.editDialogData);
59
+ this.addButtonLabel = getConfigValue(globalConfig.addLabel, data.addButtonLabel);
60
+ this.removeButtonLabel = getConfigValue(globalConfig.removeLabel, data.removeButtonLabel);
61
+ this.editDialogData = new EditArrayItemDialogDataInternal(globalConfig, data.editDialogData);
60
62
  }
61
63
  }
62
64
  /**
@@ -83,16 +85,16 @@ export class DateArrayDecoratorConfigInternal extends PropertyDecoratorConfigInt
83
85
  max;
84
86
  // eslint-disable-next-line jsdoc/require-jsdoc
85
87
  filter;
86
- constructor(data) {
88
+ constructor(data, globalConfig) {
87
89
  super(data);
88
90
  this.itemType = data.itemType;
89
91
  this.allowDuplicates = data.allowDuplicates ?? false;
90
- this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
92
+ this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
91
93
  this.displayColumns = data.displayColumns;
92
94
  this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
93
- this.addButtonLabel = data.addButtonLabel ?? 'Add';
94
- this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
95
- this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
95
+ this.addButtonLabel = getConfigValue(globalConfig.addLabel, data.addButtonLabel);
96
+ this.removeButtonLabel = getConfigValue(globalConfig.removeLabel, data.removeButtonLabel);
97
+ this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
96
98
  this.min = data.min;
97
99
  this.max = data.max;
98
100
  this.filter = data.filter;
@@ -132,18 +134,18 @@ export class DateTimeArrayDecoratorConfigInternal extends PropertyDecoratorConfi
132
134
  maxTime;
133
135
  // eslint-disable-next-line jsdoc/require-jsdoc
134
136
  filterTime;
135
- constructor(data) {
137
+ constructor(data, globalConfig) {
136
138
  super(data);
137
139
  this.itemType = data.itemType;
138
140
  this.allowDuplicates = data.allowDuplicates ?? false;
139
- this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
141
+ this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
140
142
  this.displayColumns = data.displayColumns;
141
143
  this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
142
- this.addButtonLabel = data.addButtonLabel ?? 'Add';
143
- this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
144
- this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
144
+ this.addButtonLabel = getConfigValue(globalConfig.addLabel, data.addButtonLabel);
145
+ this.removeButtonLabel = getConfigValue(globalConfig.removeLabel, data.removeButtonLabel);
146
+ this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
145
147
  this.times = data.times ?? DateUtilities.getDefaultTimes();
146
- this.timeDisplayName = data.timeDisplayName ?? 'Time';
148
+ this.timeDisplayName = getConfigValue(globalConfig.timeLabel, data.timeDisplayName);
147
149
  this.minDate = data.minDate;
148
150
  this.maxDate = data.maxDate;
149
151
  this.filterDate = data.filterDate;
@@ -184,18 +186,18 @@ export class DateRangeArrayDecoratorConfigInternal extends PropertyDecoratorConf
184
186
  maxEnd;
185
187
  // eslint-disable-next-line jsdoc/require-jsdoc
186
188
  filter;
187
- constructor(data) {
189
+ constructor(data, globalConfig) {
188
190
  super(data);
189
191
  this.itemType = data.itemType;
190
192
  this.allowDuplicates = data.allowDuplicates ?? false;
191
- this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
193
+ this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
192
194
  this.displayColumns = data.displayColumns;
193
195
  this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
194
- this.addButtonLabel = data.addButtonLabel ?? 'Add';
195
- this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
196
- this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
197
- this.placeholderStart = data.placeholderStart ?? 'Start';
198
- this.placeholderEnd = data.placeholderEnd ?? 'End';
196
+ this.addButtonLabel = getConfigValue(globalConfig.addLabel, data.addButtonLabel);
197
+ this.removeButtonLabel = getConfigValue(globalConfig.removeLabel, data.removeButtonLabel);
198
+ this.missingErrorMessage = getConfigValue(globalConfig.emptyArrayErrorMessage, data.missingErrorMessage);
199
+ this.placeholderStart = getConfigValue(globalConfig.startLabel, data.placeholderStart);
200
+ this.placeholderEnd = getConfigValue(globalConfig.endLabel, data.placeholderEnd);
199
201
  this.minStart = data.minStart;
200
202
  this.maxStart = data.maxStart;
201
203
  this.minEnd = data.minEnd;
@@ -221,12 +223,12 @@ export class StringChipsArrayDecoratorConfigInternal extends PropertyDecoratorCo
221
223
  maxLength;
222
224
  // eslint-disable-next-line jsdoc/require-jsdoc
223
225
  regex;
224
- constructor(data) {
226
+ constructor(data, globalConfig) {
225
227
  super(data);
226
228
  this.deleteIcon = data.deleteIcon ?? 'fas fa-circle-minus';
227
229
  this.itemType = data.itemType;
228
230
  this.allowDuplicates = data.allowDuplicates ?? false;
229
- this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
231
+ this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
230
232
  this.maxLength = data.maxLength;
231
233
  this.minLength = data.minLength;
232
234
  this.regex = data.regex;
@@ -253,13 +255,13 @@ export class AutocompleteStringChipsArrayDecoratorConfigInternal extends Propert
253
255
  maxLength;
254
256
  // eslint-disable-next-line jsdoc/require-jsdoc
255
257
  regex;
256
- constructor(data) {
258
+ constructor(data, globalConfig) {
257
259
  super(data);
258
260
  this.autocompleteValues = data.autocompleteValues;
259
261
  this.deleteIcon = data.deleteIcon ?? 'fas fa-circle-minus';
260
262
  this.itemType = data.itemType;
261
263
  this.allowDuplicates = data.allowDuplicates ?? false;
262
- this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
264
+ this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data, globalConfig);
263
265
  this.maxLength = data.maxLength;
264
266
  this.minLength = data.minLength;
265
267
  this.regex = data.regex;
@@ -270,17 +272,14 @@ export class AutocompleteStringChipsArrayDecoratorConfigInternal extends Propert
270
272
  * Gets the default dialog data for the error dialog to display when the user tries to add a duplicate value.
271
273
  *
272
274
  * @param data - The Array Decorator data.
275
+ * @param globalConfig - The global configuration of default values.
273
276
  * @returns The dialog data with set default values.
274
277
  */
275
- function getDefaultDuplicateErrorDialogData(data) {
276
- return {
277
- type: data.duplicatesErrorDialog?.type ?? 'info-only',
278
- text: data.duplicatesErrorDialog?.text ?? ['Adding duplicate entries to the array is not allowed.'],
279
- title: data.duplicatesErrorDialog?.title ?? 'Error adding duplicate item',
280
- confirmButtonLabel: data.duplicatesErrorDialog?.confirmButtonLabel,
281
- cancelButtonLabel: data.duplicatesErrorDialog?.cancelButtonLabel,
282
- requireConfirmation: data.duplicatesErrorDialog?.requireConfirmation,
283
- confirmationText: data.duplicatesErrorDialog?.confirmationText
284
- };
278
+ function getDefaultDuplicateErrorDialogData(data, globalConfig) {
279
+ return new ConfirmDialogDataBuilder(globalConfig, data.duplicatesErrorDialog)
280
+ .withDefault('type', 'info-only')
281
+ .withDefault('text', globalConfig.duplicateErrorText)
282
+ .withDefault('title', globalConfig.duplicateErrorTitle)
283
+ .getResult();
285
284
  }
286
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUcvRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUkzRjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sK0JBQStCO0lBQ3hDLCtDQUErQztJQUMvQyxLQUFLLENBQWlDO0lBQ3RDLCtDQUErQztJQUMvQyxrQkFBa0IsQ0FBUztJQUMzQiwrQ0FBK0M7SUFDL0MsaUJBQWlCLENBQVM7SUFFMUIsWUFBWSxJQUEwQztRQUNsRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksRUFBRSxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxFQUFFLGtCQUFrQixJQUFJLE1BQU0sQ0FBQztRQUM3RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxFQUFFLGlCQUFpQixJQUFJLFFBQVEsQ0FBQztJQUNqRSxDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxrQ0FDVCxTQUFRLCtCQUE2QztJQUVyRCwrQ0FBK0M7SUFDL0MsUUFBUSxDQUF3QjtJQUNoQywrQ0FBK0M7SUFDL0MsZUFBZSxDQUFVO0lBQ3pCLCtDQUErQztJQUMvQyxxQkFBcUIsQ0FBb0I7SUFDekMsK0NBQStDO0lBQy9DLFdBQVcsQ0FBaUM7SUFDNUMsK0NBQStDO0lBQy9DLGNBQWMsQ0FBOEI7SUFDNUMsK0NBQStDO0lBQy9DLGdCQUFnQixDQUFvQjtJQUNwQywrQ0FBK0M7SUFDL0Ms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QztJQUM3RSxPQUFPO1FBQ0gsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLElBQUksV0FBVztRQUNyRCxJQUFJLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLElBQUksSUFBSSxDQUFDLHVEQUF1RCxDQUFDO1FBQ25HLEtBQUssRUFBRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsS0FBSyxJQUFJLDZCQUE2QjtRQUN6RSxrQkFBa0IsRUFBRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsa0JBQWtCO1FBQ2xFLGlCQUFpQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxpQkFBaUI7UUFDaEUsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLG1CQUFtQjtRQUNwRSxnQkFBZ0IsRUFBRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsZ0JBQWdCO0tBQ2pFLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGltZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRlRmlsdGVyRm4gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IEJhc2VFbnRpdHlUeXBlLCBFbnRpdHlDbGFzc05ld2FibGUgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBDb25maXJtRGlhbG9nRGF0YSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2ctZGF0YSc7XG5pbXBvcnQgeyBDcmVhdGVEaWFsb2dEYXRhLCBEaXNwbGF5Q29sdW1uIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy90YWJsZS90YWJsZS1kYXRhJztcbmltcG9ydCB7IERhdGVVdGlsaXRpZXMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvZGF0ZS51dGlsaXRpZXMnO1xuaW1wb3J0IHsgRGVjb3JhdG9yVHlwZXMgfSBmcm9tICcuLi9iYXNlL2RlY29yYXRvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IERyb3Bkb3duVmFsdWUgfSBmcm9tICcuLi9iYXNlL2Ryb3Bkb3duLXZhbHVlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vYmFzZS9wcm9wZXJ0eS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2UgfSBmcm9tICcuLi9kYXRlL2RhdGUtZGVjb3JhdG9yLmRhdGEnO1xuaW1wb3J0IHsgQXJyYXlEZWNvcmF0b3JDb25maWcsIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhLCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZywgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vYXJyYXktZGVjb3JhdG9yLmRhdGEnO1xuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBkaWFsb2cgZGF0YSBmb3IgdGhlIGVudGl0aWVzIGFycmF5IGVkaXQgZGlhbG9nLlxuICogU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhSW50ZXJuYWw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhPEVudGl0eVR5cGU+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpdGxlOiAoZW50aXR5OiBFbnRpdHlUeXBlKSA9PiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjb25maXJtQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhPzogRWRpdEFycmF5SXRlbURpYWxvZ0RhdGE8RW50aXR5VHlwZT4pIHtcbiAgICAgICAgdGhpcy50aXRsZSA9IGRhdGE/LnRpdGxlID8/ICgoKSA9PiAnRWRpdCcpO1xuICAgICAgICB0aGlzLmNvbmZpcm1CdXR0b25MYWJlbCA9IGRhdGE/LmNvbmZpcm1CdXR0b25MYWJlbCA/PyAnU2F2ZSc7XG4gICAgICAgIHRoaXMuY2FuY2VsQnV0dG9uTGFiZWwgPSBkYXRhPy5jYW5jZWxCdXR0b25MYWJlbCA/PyAnQ2FuY2VsJztcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPEVudGl0eVR5cGVbXT4gaW1wbGVtZW50cyBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPiB7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5PQkpFQ1Q7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgRW50aXR5Q2xhc3M6IEVudGl0eUNsYXNzTmV3YWJsZTxFbnRpdHlUeXBlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjcmVhdGVEaWFsb2dEYXRhPzogQ3JlYXRlRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGVkaXREaWFsb2dEYXRhOiBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YUludGVybmFsPEVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlSW5saW5lOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPikge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5jcmVhdGVJbmxpbmUgPSBkYXRhLmNyZWF0ZUlubGluZSA/PyB0cnVlO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEpO1xuICAgICAgICB0aGlzLkVudGl0eUNsYXNzID0gZGF0YS5FbnRpdHlDbGFzcztcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuY3JlYXRlSW5saW5lID0gZGF0YS5jcmVhdGVJbmxpbmUgPz8gdHJ1ZTtcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICAgICAgdGhpcy5lZGl0RGlhbG9nRGF0YSA9IG5ldyBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YUludGVybmFsKGRhdGEuZWRpdERpYWxvZ0RhdGEpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVbXT4gaW1wbGVtZW50cyBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IERpc3BsYXlDb2x1bW48RGF0ZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVBcnJheURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMubWluID0gZGF0YS5taW47XG4gICAgICAgIHRoaXMubWF4ID0gZGF0YS5tYXg7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gZGF0YS5maWx0ZXI7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxEYXRlW10+IGltcGxlbWVudHMgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuREFURV9USU1FO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPERhdGU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhZGRCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVtb3ZlQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpbWVzOiBEcm9wZG93blZhbHVlPFRpbWU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0aW1lRGlzcGxheU5hbWU6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbkRhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhEYXRlPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyRGF0ZT86IERhdGVGaWx0ZXJGbjxEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZD47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5UaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4VGltZT86IChkYXRlPzogRGF0ZSkgPT4gVGltZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlclRpbWU/OiAoKHRpbWU6IFRpbWUpID0+IGJvb2xlYW4pIHwgKCgpID0+IGJvb2xlYW4pO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMudGltZXMgPSBkYXRhLnRpbWVzID8/IERhdGVVdGlsaXRpZXMuZ2V0RGVmYXVsdFRpbWVzKCk7XG4gICAgICAgIHRoaXMudGltZURpc3BsYXlOYW1lID0gZGF0YS50aW1lRGlzcGxheU5hbWUgPz8gJ1RpbWUnO1xuICAgICAgICB0aGlzLm1pbkRhdGUgPSBkYXRhLm1pbkRhdGU7XG4gICAgICAgIHRoaXMubWF4RGF0ZSA9IGRhdGEubWF4RGF0ZTtcbiAgICAgICAgdGhpcy5maWx0ZXJEYXRlID0gZGF0YS5maWx0ZXJEYXRlO1xuICAgICAgICB0aGlzLm1pblRpbWUgPSBkYXRhLm1pblRpbWU7XG4gICAgICAgIHRoaXMubWF4VGltZSA9IGRhdGEubWF4VGltZTtcbiAgICAgICAgdGhpcy5maWx0ZXJUaW1lID0gZGF0YS5maWx0ZXJUaW1lO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxEYXRlUmFuZ2VbXT5cbiAgICBpbXBsZW1lbnRzIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFX1JBTkdFO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPERhdGVSYW5nZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcGxhY2Vob2xkZXJTdGFydDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcGxhY2Vob2xkZXJFbmQ6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5FbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhFbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXJTdGFydCA9IGRhdGEucGxhY2Vob2xkZXJTdGFydCA/PyAnU3RhcnQnO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyRW5kID0gZGF0YS5wbGFjZWhvbGRlckVuZCA/PyAnRW5kJztcbiAgICAgICAgdGhpcy5taW5TdGFydCA9IGRhdGEubWluU3RhcnQ7XG4gICAgICAgIHRoaXMubWF4U3RhcnQgPSBkYXRhLm1heFN0YXJ0O1xuICAgICAgICB0aGlzLm1pbkVuZCA9IGRhdGEubWluRW5kO1xuICAgICAgICB0aGlzLm1heEVuZCA9IGRhdGEubWF4RW5kO1xuICAgICAgICB0aGlzLmZpbHRlciA9IGRhdGEuZmlsdGVyO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8c3RyaW5nW10+XG4gICAgaW1wbGVtZW50cyBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5TVFJJTkc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGVsZXRlSWNvbjogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVnZXg/OiBSZWdFeHA7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRlbGV0ZUljb24gPSBkYXRhLmRlbGV0ZUljb24gPz8gJ2ZhcyBmYS1jaXJjbGUtbWludXMnO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEpO1xuICAgICAgICB0aGlzLm1heExlbmd0aCA9IGRhdGEubWF4TGVuZ3RoO1xuICAgICAgICB0aGlzLm1pbkxlbmd0aCA9IGRhdGEubWluTGVuZ3RoO1xuICAgICAgICB0aGlzLnJlZ2V4ID0gZGF0YS5yZWdleDtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFs2LCAxMiwgMTJdO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxzdHJpbmdbXT4gaW1wbGVtZW50cyBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGF1dG9jb21wbGV0ZVZhbHVlczogc3RyaW5nW107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuU1RSSU5HX0FVVE9DT01QTEVURTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWxldGVJY29uOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5MZW5ndGg/OiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhMZW5ndGg/OiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZWdleD86IFJlZ0V4cDtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlVmFsdWVzID0gZGF0YS5hdXRvY29tcGxldGVWYWx1ZXM7XG4gICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IGRhdGEuZGVsZXRlSWNvbiA/PyAnZmFzIGZhLWNpcmNsZS1taW51cyc7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSk7XG4gICAgICAgIHRoaXMubWF4TGVuZ3RoID0gZGF0YS5tYXhMZW5ndGg7XG4gICAgICAgIHRoaXMubWluTGVuZ3RoID0gZGF0YS5taW5MZW5ndGg7XG4gICAgICAgIHRoaXMucmVnZXggPSBkYXRhLnJlZ2V4O1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzYsIDEyLCAxMl07XG4gICAgfVxufVxuXG4vKipcbiAqIEdldHMgdGhlIGRlZmF1bHQgZGlhbG9nIGRhdGEgZm9yIHRoZSBlcnJvciBkaWFsb2cgdG8gZGlzcGxheSB3aGVuIHRoZSB1c2VyIHRyaWVzIHRvIGFkZCBhIGR1cGxpY2F0ZSB2YWx1ZS5cbiAqXG4gKiBAcGFyYW0gZGF0YSAtIFRoZSBBcnJheSBEZWNvcmF0b3IgZGF0YS5cbiAqIEByZXR1cm5zIFRoZSBkaWFsb2cgZGF0YSB3aXRoIHNldCBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZnVuY3Rpb24gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhOiBBcnJheURlY29yYXRvckNvbmZpZzx1bmtub3duW10+KTogQ29uZmlybURpYWxvZ0RhdGEge1xuICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6IGRhdGEuZHVwbGljYXRlc0Vycm9yRGlhbG9nPy50eXBlID8/ICdpbmZvLW9ubHknLFxuICAgICAgICB0ZXh0OiBkYXRhLmR1cGxpY2F0ZXNFcnJvckRpYWxvZz8udGV4dCA/PyBbJ0FkZGluZyBkdXBsaWNhdGUgZW50cmllcyB0byB0aGUgYXJyYXkgaXMgbm90IGFsbG93ZWQuJ10sXG4gICAgICAgIHRpdGxlOiBkYXRhLmR1cGxpY2F0ZXNFcnJvckRpYWxvZz8udGl0bGUgPz8gJ0Vycm9yIGFkZGluZyBkdXBsaWNhdGUgaXRlbScsXG4gICAgICAgIGNvbmZpcm1CdXR0b25MYWJlbDogZGF0YS5kdXBsaWNhdGVzRXJyb3JEaWFsb2c/LmNvbmZpcm1CdXR0b25MYWJlbCxcbiAgICAgICAgY2FuY2VsQnV0dG9uTGFiZWw6IGRhdGEuZHVwbGljYXRlc0Vycm9yRGlhbG9nPy5jYW5jZWxCdXR0b25MYWJlbCxcbiAgICAgICAgcmVxdWlyZUNvbmZpcm1hdGlvbjogZGF0YS5kdXBsaWNhdGVzRXJyb3JEaWFsb2c/LnJlcXVpcmVDb25maXJtYXRpb24sXG4gICAgICAgIGNvbmZpcm1hdGlvblRleHQ6IGRhdGEuZHVwbGljYXRlc0Vycm9yRGlhbG9nPy5jb25maXJtYXRpb25UZXh0XG4gICAgfTtcbn0iXX0=
285
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBRXZHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHL0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFJM0Y7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLCtCQUErQjtJQUN4QywrQ0FBK0M7SUFDL0MsS0FBSyxDQUFpQztJQUN0QywrQ0FBK0M7SUFDL0Msa0JBQWtCLENBQVM7SUFDM0IsK0NBQStDO0lBQy9DLGlCQUFpQixDQUFTO0lBRTFCLFlBQVksWUFBb0MsRUFBRSxJQUEwQztRQUN4RixJQUFJLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDM0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQy9GLENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtDQUNULFNBQVEsK0JBQTZDO0lBRXJELCtDQUErQztJQUMvQyxRQUFRLENBQXdCO0lBQ2hDLCtDQUErQztJQUMvQyxlQUFl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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaW1lIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERhdGVGaWx0ZXJGbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUsIEVudGl0eUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy1kYXRhJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhQnVpbGRlciB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2ctZGF0YS5idWlsZGVyJztcbmltcG9ydCB7IENyZWF0ZURpYWxvZ0RhdGEsIERpc3BsYXlDb2x1bW4gfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEnO1xuaW1wb3J0IHsgZ2V0Q29uZmlnVmFsdWUgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvZ2V0LWNvbmZpZy12YWx1ZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzIH0gZnJvbSAnLi4vLi4vZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IERhdGVVdGlsaXRpZXMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvZGF0ZS51dGlsaXRpZXMnO1xuaW1wb3J0IHsgRGVjb3JhdG9yVHlwZXMgfSBmcm9tICcuLi9iYXNlL2RlY29yYXRvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IERyb3Bkb3duVmFsdWUgfSBmcm9tICcuLi9iYXNlL2Ryb3Bkb3duLXZhbHVlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vYmFzZS9wcm9wZXJ0eS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2UgfSBmcm9tICcuLi9kYXRlL2RhdGUtZGVjb3JhdG9yLmRhdGEnO1xuaW1wb3J0IHsgQXJyYXlEZWNvcmF0b3JDb25maWcsIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhLCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZywgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vYXJyYXktZGVjb3JhdG9yLmRhdGEnO1xuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBkaWFsb2cgZGF0YSBmb3IgdGhlIGVudGl0aWVzIGFycmF5IGVkaXQgZGlhbG9nLlxuICogU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhSW50ZXJuYWw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIEVkaXRBcnJheUl0ZW1EaWFsb2dEYXRhPEVudGl0eVR5cGU+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpdGxlOiAoZW50aXR5OiBFbnRpdHlUeXBlKSA9PiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjb25maXJtQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMsIGRhdGE/OiBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlPikge1xuICAgICAgICB0aGlzLnRpdGxlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVkaXRUaXRsZSwgZGF0YT8udGl0bGUpO1xuICAgICAgICB0aGlzLmNvbmZpcm1CdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5zYXZlTGFiZWwsIGRhdGE/LmNvbmZpcm1CdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMuY2FuY2VsQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuY2FuY2VsTGFiZWwsIGRhdGE/LmNhbmNlbEJ1dHRvbkxhYmVsKTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPEVudGl0eVR5cGVbXT4gaW1wbGVtZW50cyBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPiB7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5PQkpFQ1Q7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgRW50aXR5Q2xhc3M6IEVudGl0eUNsYXNzTmV3YWJsZTxFbnRpdHlUeXBlPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlDb2x1bW5zOiBEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGU+W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjcmVhdGVEaWFsb2dEYXRhPzogQ3JlYXRlRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGVkaXREaWFsb2dEYXRhOiBFZGl0QXJyYXlJdGVtRGlhbG9nRGF0YUludGVybmFsPEVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlSW5saW5lOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPiwgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmNyZWF0ZUlubGluZSA9IGRhdGEuY3JlYXRlSW5saW5lID8/IHRydWU7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5FbnRpdHlDbGFzcyA9IGRhdGEuRW50aXR5Q2xhc3M7XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbHVtbnMgPSBkYXRhLmRpc3BsYXlDb2x1bW5zO1xuICAgICAgICB0aGlzLmNyZWF0ZUlubGluZSA9IGRhdGEuY3JlYXRlSW5saW5lID8/IHRydWU7XG4gICAgICAgIHRoaXMubWlzc2luZ0Vycm9yTWVzc2FnZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5lbXB0eUFycmF5RXJyb3JNZXNzYWdlLCBkYXRhLm1pc3NpbmdFcnJvck1lc3NhZ2UpO1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzEyLCAxMiwgMTJdO1xuICAgICAgICB0aGlzLmFkZEJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmFkZExhYmVsLCBkYXRhLmFkZEJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5yZW1vdmVCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5yZW1vdmVMYWJlbCwgZGF0YS5yZW1vdmVCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMuZWRpdERpYWxvZ0RhdGEgPSBuZXcgRWRpdEFycmF5SXRlbURpYWxvZ0RhdGFJbnRlcm5hbChnbG9iYWxDb25maWcsIGRhdGEuZWRpdERpYWxvZ0RhdGEpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVbXT4gaW1wbGVtZW50cyBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IERpc3BsYXlDb2x1bW48RGF0ZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVBcnJheURlY29yYXRvckNvbmZpZywgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEsIGdsb2JhbENvbmZpZyk7XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbHVtbnMgPSBkYXRhLmRpc3BsYXlDb2x1bW5zO1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBkYXRhLmRlZmF1bHRXaWR0aHMgPz8gWzEyLCAxMiwgMTJdO1xuICAgICAgICB0aGlzLmFkZEJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmFkZExhYmVsLCBkYXRhLmFkZEJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5yZW1vdmVCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5yZW1vdmVMYWJlbCwgZGF0YS5yZW1vdmVCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMubWlzc2luZ0Vycm9yTWVzc2FnZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5lbXB0eUFycmF5RXJyb3JNZXNzYWdlLCBkYXRhLm1pc3NpbmdFcnJvck1lc3NhZ2UpO1xuICAgICAgICB0aGlzLm1pbiA9IGRhdGEubWluO1xuICAgICAgICB0aGlzLm1heCA9IGRhdGEubWF4O1xuICAgICAgICB0aGlzLmZpbHRlciA9IGRhdGEuZmlsdGVyO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RGF0ZVtdPiBpbXBsZW1lbnRzIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfVElNRTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5Q29sdW1uczogRGlzcGxheUNvbHVtbjxEYXRlPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0aW1lczogRHJvcGRvd25WYWx1ZTxUaW1lPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGltZURpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5EYXRlPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4RGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlckRhdGU/OiBEYXRlRmlsdGVyRm48RGF0ZSB8IG51bGwgfCB1bmRlZmluZWQ+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluVGltZT86IChkYXRlPzogRGF0ZSkgPT4gVGltZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heFRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXJUaW1lPzogKCh0aW1lOiBUaW1lKSA9PiBib29sZWFuKSB8ICgoKSA9PiBib29sZWFuKTtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhLCBnbG9iYWxDb25maWcpO1xuICAgICAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gZGF0YS5kaXNwbGF5Q29sdW1ucztcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFsxMiwgMTIsIDEyXTtcbiAgICAgICAgdGhpcy5hZGRCdXR0b25MYWJlbCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5hZGRMYWJlbCwgZGF0YS5hZGRCdXR0b25MYWJlbCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcucmVtb3ZlTGFiZWwsIGRhdGEucmVtb3ZlQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLm1pc3NpbmdFcnJvck1lc3NhZ2UgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuZW1wdHlBcnJheUVycm9yTWVzc2FnZSwgZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlKTtcbiAgICAgICAgdGhpcy50aW1lcyA9IGRhdGEudGltZXMgPz8gRGF0ZVV0aWxpdGllcy5nZXREZWZhdWx0VGltZXMoKTtcbiAgICAgICAgdGhpcy50aW1lRGlzcGxheU5hbWUgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcudGltZUxhYmVsLCBkYXRhLnRpbWVEaXNwbGF5TmFtZSk7XG4gICAgICAgIHRoaXMubWluRGF0ZSA9IGRhdGEubWluRGF0ZTtcbiAgICAgICAgdGhpcy5tYXhEYXRlID0gZGF0YS5tYXhEYXRlO1xuICAgICAgICB0aGlzLmZpbHRlckRhdGUgPSBkYXRhLmZpbHRlckRhdGU7XG4gICAgICAgIHRoaXMubWluVGltZSA9IGRhdGEubWluVGltZTtcbiAgICAgICAgdGhpcy5tYXhUaW1lID0gZGF0YS5tYXhUaW1lO1xuICAgICAgICB0aGlzLmZpbHRlclRpbWUgPSBkYXRhLmZpbHRlclRpbWU7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVSYW5nZVtdPlxuICAgIGltcGxlbWVudHMgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfUkFOR0U7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IERpc3BsYXlDb2x1bW48RGF0ZVJhbmdlPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlclN0YXJ0OiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlckVuZDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluU3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhTdGFydD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbkVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heEVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlcj86IERhdGVGaWx0ZXJGbjxEYXRlPjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuYWRkTGFiZWwsIGRhdGEuYWRkQnV0dG9uTGFiZWwpO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLnJlbW92ZUxhYmVsLCBkYXRhLnJlbW92ZUJ1dHRvbkxhYmVsKTtcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVtcHR5QXJyYXlFcnJvck1lc3NhZ2UsIGRhdGEubWlzc2luZ0Vycm9yTWVzc2FnZSk7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXJTdGFydCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5zdGFydExhYmVsLCBkYXRhLnBsYWNlaG9sZGVyU3RhcnQpO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyRW5kID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVuZExhYmVsLCBkYXRhLnBsYWNlaG9sZGVyRW5kKTtcbiAgICAgICAgdGhpcy5taW5TdGFydCA9IGRhdGEubWluU3RhcnQ7XG4gICAgICAgIHRoaXMubWF4U3RhcnQgPSBkYXRhLm1heFN0YXJ0O1xuICAgICAgICB0aGlzLm1pbkVuZCA9IGRhdGEubWluRW5kO1xuICAgICAgICB0aGlzLm1heEVuZCA9IGRhdGEubWF4RW5kO1xuICAgICAgICB0aGlzLmZpbHRlciA9IGRhdGEuZmlsdGVyO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8c3RyaW5nW10+XG4gICAgaW1wbGVtZW50cyBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5TVFJJTkc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGVsZXRlSWNvbjogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVnZXg/OiBSZWdFeHA7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnLCBnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IGRhdGEuZGVsZXRlSWNvbiA/PyAnZmFzIGZhLWNpcmNsZS1taW51cyc7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5tYXhMZW5ndGggPSBkYXRhLm1heExlbmd0aDtcbiAgICAgICAgdGhpcy5taW5MZW5ndGggPSBkYXRhLm1pbkxlbmd0aDtcbiAgICAgICAgdGhpcy5yZWdleCA9IGRhdGEucmVnZXg7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbNiwgMTIsIDEyXTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8c3RyaW5nW10+IGltcGxlbWVudHMgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhdXRvY29tcGxldGVWYWx1ZXM6IHN0cmluZ1tdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLlNUUklOR19BVVRPQ09NUExFVEU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGVsZXRlSWNvbjogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVnZXg/OiBSZWdFeHA7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnLCBnbG9iYWxDb25maWc6IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlVmFsdWVzID0gZGF0YS5hdXRvY29tcGxldGVWYWx1ZXM7XG4gICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IGRhdGEuZGVsZXRlSWNvbiA/PyAnZmFzIGZhLWNpcmNsZS1taW51cyc7XG4gICAgICAgIHRoaXMuaXRlbVR5cGUgPSBkYXRhLml0ZW1UeXBlO1xuICAgICAgICB0aGlzLmFsbG93RHVwbGljYXRlcyA9IGRhdGEuYWxsb3dEdXBsaWNhdGVzID8/IGZhbHNlO1xuICAgICAgICB0aGlzLmR1cGxpY2F0ZXNFcnJvckRpYWxvZyA9IGdldERlZmF1bHREdXBsaWNhdGVFcnJvckRpYWxvZ0RhdGEoZGF0YSwgZ2xvYmFsQ29uZmlnKTtcbiAgICAgICAgdGhpcy5tYXhMZW5ndGggPSBkYXRhLm1heExlbmd0aDtcbiAgICAgICAgdGhpcy5taW5MZW5ndGggPSBkYXRhLm1pbkxlbmd0aDtcbiAgICAgICAgdGhpcy5yZWdleCA9IGRhdGEucmVnZXg7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbNiwgMTIsIDEyXTtcbiAgICB9XG59XG5cbi8qKlxuICogR2V0cyB0aGUgZGVmYXVsdCBkaWFsb2cgZGF0YSBmb3IgdGhlIGVycm9yIGRpYWxvZyB0byBkaXNwbGF5IHdoZW4gdGhlIHVzZXIgdHJpZXMgdG8gYWRkIGEgZHVwbGljYXRlIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBkYXRhIC0gVGhlIEFycmF5IERlY29yYXRvciBkYXRhLlxuICogQHBhcmFtIGdsb2JhbENvbmZpZyAtIFRoZSBnbG9iYWwgY29uZmlndXJhdGlvbiBvZiBkZWZhdWx0IHZhbHVlcy5cbiAqIEByZXR1cm5zIFRoZSBkaWFsb2cgZGF0YSB3aXRoIHNldCBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZnVuY3Rpb24gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShcbiAgICBkYXRhOiBBcnJheURlY29yYXRvckNvbmZpZzx1bmtub3duW10+LFxuICAgIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlc1xuKTogQ29uZmlybURpYWxvZ0RhdGEge1xuICAgIHJldHVybiBuZXcgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyKGdsb2JhbENvbmZpZywgZGF0YS5kdXBsaWNhdGVzRXJyb3JEaWFsb2cpXG4gICAgICAgIC53aXRoRGVmYXVsdCgndHlwZScsICdpbmZvLW9ubHknKVxuICAgICAgICAud2l0aERlZmF1bHQoJ3RleHQnLCBnbG9iYWxDb25maWcuZHVwbGljYXRlRXJyb3JUZXh0KVxuICAgICAgICAud2l0aERlZmF1bHQoJ3RpdGxlJywgZ2xvYmFsQ29uZmlnLmR1cGxpY2F0ZUVycm9yVGl0bGUpXG4gICAgICAgIC5nZXRSZXN1bHQoKTtcbn0iXX0=
@@ -1,3 +1,4 @@
1
+ import { needsUpdateGlobalDefaults } from '../../default-global-configuration-values';
1
2
  import { baseProperty } from '../base/base-property.decorator';
2
3
  import { DecoratorTypes } from '../base/decorator-types.enum';
3
4
  import { AutocompleteStringChipsArrayDecoratorConfigInternal, DateArrayDecoratorConfigInternal, DateRangeArrayDecoratorConfigInternal, DateTimeArrayDecoratorConfigInternal, EntityArrayDecoratorConfigInternal, StringChipsArrayDecoratorConfigInternal } from './array-decorator-internal.data';
@@ -11,20 +12,20 @@ import { AutocompleteStringChipsArrayDecoratorConfigInternal, DateArrayDecorator
11
12
  export function array(metadata) {
12
13
  switch (metadata.itemType) {
13
14
  case DecoratorTypes.OBJECT:
14
- return baseProperty(new EntityArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY);
15
+ return baseProperty(new EntityArrayDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.ARRAY);
15
16
  case DecoratorTypes.DATE:
16
- return baseProperty(new DateArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_DATE);
17
+ return baseProperty(new DateArrayDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.ARRAY_DATE);
17
18
  case DecoratorTypes.DATE_TIME:
18
- return baseProperty(new DateTimeArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_DATE_TIME);
19
+ return baseProperty(new DateTimeArrayDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.ARRAY_DATE_TIME);
19
20
  case DecoratorTypes.DATE_RANGE:
20
- return baseProperty(new DateRangeArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_DATE_RANGE);
21
+ return baseProperty(new DateRangeArrayDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.ARRAY_DATE_RANGE);
21
22
  case DecoratorTypes.STRING:
22
- return baseProperty(new StringChipsArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_STRING_CHIPS);
23
+ return baseProperty(new StringChipsArrayDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.ARRAY_STRING_CHIPS);
23
24
  case DecoratorTypes.STRING_AUTOCOMPLETE:
24
- return baseProperty(new AutocompleteStringChipsArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_STRING_AUTOCOMPLETE_CHIPS);
25
+ return baseProperty(new AutocompleteStringChipsArrayDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.ARRAY_STRING_AUTOCOMPLETE_CHIPS);
25
26
  default:
26
27
  // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
27
28
  throw new Error(`Unknown itemType ${metadata.itemType}`);
28
29
  }
29
30
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvZGVjb3JhdG9ycy9hcnJheS9hcnJheS5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbURBQW1ELEVBQUUsZ0NBQWdDLEVBQUUscUNBQXFDLEVBQUUsb0NBQW9DLEVBQUUsa0NBQWtDLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdsUzs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUNqQixRQUsyQztJQUUzQyxRQUFRLFFBQVEsQ0FBQyxRQUFRLEVBQUU7UUFDdkIsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLFlBQVksQ0FBQyxJQUFJLGtDQUFrQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRyxLQUFLLGNBQWMsQ0FBQyxJQUFJO1lBQ3BCLE9BQU8sWUFBWSxDQUFDLElBQUksZ0NBQWdDLENBQUMsUUFBUSxDQUFDLEVBQUUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25HLEtBQUssY0FBYyxDQUFDLFNBQVM7WUFDekIsT0FBTyxZQUFZLENBQUMsSUFBSSxvQ0FBb0MsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDNUcsS0FBSyxjQUFjLENBQUMsVUFBVTtZQUMxQixPQUFPLFlBQVksQ0FBQyxJQUFJLHFDQUFxQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlHLEtBQUssY0FBYyxDQUFDLE1BQU07WUFDdEIsT0FBTyxZQUFZLENBQUMsSUFBSSx1Q0FBdUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNsSCxLQUFLLGNBQWMsQ0FBQyxtQkFBbUI7WUFDbkMsT0FBTyxZQUFZLENBQ2YsSUFBSSxtREFBbUQsQ0FBQyxRQUFRLENBQUMsRUFDakUsY0FBYyxDQUFDLCtCQUErQixDQUNqRCxDQUFDO1FBQ047WUFDSSwwR0FBMEc7WUFDMUcsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBcUIsUUFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0tBQ3pFO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgYmFzZVByb3BlcnR5IH0gZnJvbSAnLi4vYmFzZS9iYXNlLXByb3BlcnR5LmRlY29yYXRvcic7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uL2Jhc2UvZGVjb3JhdG9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuL2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9hcnJheS1kZWNvcmF0b3IuZGF0YSc7XG5cbi8qKlxuICogRGVjb3JhdG9yIGZvciBzZXR0aW5nIGFuZCBnZXR0aW5nIGFycmF5IHByb3BlcnR5IG1ldGFkYXRhLlxuICpcbiAqIEBwYXJhbSBtZXRhZGF0YSAtIFRoZSBtZXRhZGF0YSBvZiB0aGUgYXJyYXkgcHJvcGVydHkuXG4gKiBAcmV0dXJucyBUaGUgbWV0aG9kIHRoYXQgZGVmaW5lcyB0aGUgbWV0YWRhdGEuXG4gKiBAdGhyb3dzIFdoZW4gdGhlIGdpdmVuIHR5cGUgb2YgdGhlIGFycmF5LWl0ZW1zIGlzIHVua25vd24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcnJheTxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+KFxuICAgIG1ldGFkYXRhOiBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPlxuICAgICAgICAgICAgICAgIHwgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ1xuICAgICAgICAgICAgICAgIHwgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ1xuICAgICAgICAgICAgICAgIHwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnXG4gICAgICAgICAgICAgICAgfCBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnXG4gICAgICAgICAgICAgICAgfCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ1xuKTogKHRhcmdldDogb2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKSA9PiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1ldGFkYXRhLml0ZW1UeXBlKSB7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuT0JKRUNUOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbChtZXRhZGF0YSksIERlY29yYXRvclR5cGVzLkFSUkFZKTtcbiAgICAgICAgY2FzZSBEZWNvcmF0b3JUeXBlcy5EQVRFOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEpLCBEZWNvcmF0b3JUeXBlcy5BUlJBWV9EQVRFKTtcbiAgICAgICAgY2FzZSBEZWNvcmF0b3JUeXBlcy5EQVRFX1RJTUU6XG4gICAgICAgICAgICByZXR1cm4gYmFzZVByb3BlcnR5KG5ldyBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEpLCBEZWNvcmF0b3JUeXBlcy5BUlJBWV9EQVRFX1RJTUUpO1xuICAgICAgICBjYXNlIERlY29yYXRvclR5cGVzLkRBVEVfUkFOR0U6XG4gICAgICAgICAgICByZXR1cm4gYmFzZVByb3BlcnR5KG5ldyBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhKSwgRGVjb3JhdG9yVHlwZXMuQVJSQVlfREFURV9SQU5HRSk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuU1RSSU5HOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhKSwgRGVjb3JhdG9yVHlwZXMuQVJSQVlfU1RSSU5HX0NISVBTKTtcbiAgICAgICAgY2FzZSBEZWNvcmF0b3JUeXBlcy5TVFJJTkdfQVVUT0NPTVBMRVRFOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICBuZXcgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhKSxcbiAgICAgICAgICAgICAgICBEZWNvcmF0b3JUeXBlcy5BUlJBWV9TVFJJTkdfQVVUT0NPTVBMRVRFX0NISVBTXG4gICAgICAgICAgICApO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnksIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2Vzc1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGl0ZW1UeXBlICR7KG1ldGFkYXRhIGFzIGFueSkuaXRlbVR5cGV9YCk7XG4gICAgfVxufSJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvZGVjb3JhdG9ycy9hcnJheS9hcnJheS5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbURBQW1ELEVBQUUsZ0NBQWdDLEVBQUUscUNBQXFDLEVBQUUsb0NBQW9DLEVBQUUsa0NBQWtDLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdsUzs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUNqQixRQUsyQztJQUUzQyxRQUFRLFFBQVEsQ0FBQyxRQUFRLEVBQUU7UUFDdkIsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLFlBQVksQ0FBQyxJQUFJLGtDQUFrQyxDQUFDLFFBQVEsRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzSCxLQUFLLGNBQWMsQ0FBQyxJQUFJO1lBQ3BCLE9BQU8sWUFBWSxDQUFDLElBQUksZ0NBQWdDLENBQUMsUUFBUSxFQUFFLHlCQUF5QixDQUFDLEVBQUUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlILEtBQUssY0FBYyxDQUFDLFNBQVM7WUFDekIsT0FBTyxZQUFZLENBQ2YsSUFBSSxvQ0FBb0MsQ0FBQyxRQUFRLEVBQUUseUJBQXlCLENBQUMsRUFDN0UsY0FBYyxDQUFDLGVBQWUsQ0FDakMsQ0FBQztRQUNOLEtBQUssY0FBYyxDQUFDLFVBQVU7WUFDMUIsT0FBTyxZQUFZLENBQ2YsSUFBSSxxQ0FBcUMsQ0FBQyxRQUFRLEVBQUUseUJBQXlCLENBQUMsRUFDOUUsY0FBYyxDQUFDLGdCQUFnQixDQUNsQyxDQUFDO1FBQ04sS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLFlBQVksQ0FDZixJQUFJLHVDQUF1QyxDQUFDLFFBQVEsRUFBRSx5QkFBeUIsQ0FBQyxFQUNoRixjQUFjLENBQUMsa0JBQWtCLENBQ3BDLENBQUM7UUFDTixLQUFLLGNBQWMsQ0FBQyxtQkFBbUI7WUFDbkMsT0FBTyxZQUFZLENBQ2YsSUFBSSxtREFBbUQsQ0FBQyxRQUFRLEVBQUUseUJBQXlCLENBQUMsRUFDNUYsY0FBYyxDQUFDLCtCQUErQixDQUNqRCxDQUFDO1FBQ047WUFDSSwwR0FBMEc7WUFDMUcsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBcUIsUUFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0tBQ3pFO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgbmVlZHNVcGRhdGVHbG9iYWxEZWZhdWx0cyB9IGZyb20gJy4uLy4uL2RlZmF1bHQtZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IGJhc2VQcm9wZXJ0eSB9IGZyb20gJy4uL2Jhc2UvYmFzZS1wcm9wZXJ0eS5kZWNvcmF0b3InO1xuaW1wb3J0IHsgRGVjb3JhdG9yVHlwZXMgfSBmcm9tICcuLi9iYXNlL2RlY29yYXRvci10eXBlcy5lbnVtJztcbmltcG9ydCB7IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi9hcnJheS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnLCBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnLCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZywgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vYXJyYXktZGVjb3JhdG9yLmRhdGEnO1xuXG4vKipcbiAqIERlY29yYXRvciBmb3Igc2V0dGluZyBhbmQgZ2V0dGluZyBhcnJheSBwcm9wZXJ0eSBtZXRhZGF0YS5cbiAqXG4gKiBAcGFyYW0gbWV0YWRhdGEgLSBUaGUgbWV0YWRhdGEgb2YgdGhlIGFycmF5IHByb3BlcnR5LlxuICogQHJldHVybnMgVGhlIG1ldGhvZCB0aGF0IGRlZmluZXMgdGhlIG1ldGFkYXRhLlxuICogQHRocm93cyBXaGVuIHRoZSBnaXZlbiB0eXBlIG9mIHRoZSBhcnJheS1pdGVtcyBpcyB1bmtub3duLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXJyYXk8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihcbiAgICBtZXRhZGF0YTogRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT5cbiAgICAgICAgICAgICAgICB8IFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdcbiAgICAgICAgICAgICAgICB8IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdcbiAgICAgICAgICAgICAgICB8IERhdGVBcnJheURlY29yYXRvckNvbmZpZ1xuICAgICAgICAgICAgICAgIHwgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ1xuICAgICAgICAgICAgICAgIHwgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWdcbik6ICh0YXJnZXQ6IG9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZykgPT4gdm9pZCB7XG4gICAgc3dpdGNoIChtZXRhZGF0YS5pdGVtVHlwZSkge1xuICAgICAgICBjYXNlIERlY29yYXRvclR5cGVzLk9CSkVDVDpcbiAgICAgICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkobmV3IEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEsIG5lZWRzVXBkYXRlR2xvYmFsRGVmYXVsdHMpLCBEZWNvcmF0b3JUeXBlcy5BUlJBWSk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuREFURTpcbiAgICAgICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkobmV3IERhdGVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhLCBuZWVkc1VwZGF0ZUdsb2JhbERlZmF1bHRzKSwgRGVjb3JhdG9yVHlwZXMuQVJSQVlfREFURSk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuREFURV9USU1FOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICBuZXcgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhLCBuZWVkc1VwZGF0ZUdsb2JhbERlZmF1bHRzKSxcbiAgICAgICAgICAgICAgICBEZWNvcmF0b3JUeXBlcy5BUlJBWV9EQVRFX1RJTUVcbiAgICAgICAgICAgICk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuREFURV9SQU5HRTpcbiAgICAgICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkoXG4gICAgICAgICAgICAgICAgbmV3IERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEsIG5lZWRzVXBkYXRlR2xvYmFsRGVmYXVsdHMpLFxuICAgICAgICAgICAgICAgIERlY29yYXRvclR5cGVzLkFSUkFZX0RBVEVfUkFOR0VcbiAgICAgICAgICAgICk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuU1RSSU5HOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICBuZXcgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhLCBuZWVkc1VwZGF0ZUdsb2JhbERlZmF1bHRzKSxcbiAgICAgICAgICAgICAgICBEZWNvcmF0b3JUeXBlcy5BUlJBWV9TVFJJTkdfQ0hJUFNcbiAgICAgICAgICAgICk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuU1RSSU5HX0FVVE9DT01QTEVURTpcbiAgICAgICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkoXG4gICAgICAgICAgICAgICAgbmV3IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbChtZXRhZGF0YSwgbmVlZHNVcGRhdGVHbG9iYWxEZWZhdWx0cyksXG4gICAgICAgICAgICAgICAgRGVjb3JhdG9yVHlwZXMuQVJSQVlfU1RSSU5HX0FVVE9DT01QTEVURV9DSElQU1xuICAgICAgICAgICAgKTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55LCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLW1lbWJlci1hY2Nlc3NcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBpdGVtVHlwZSAkeyhtZXRhZGF0YSBhcyBhbnkpLml0ZW1UeXBlfWApO1xuICAgIH1cbn0iXX0=
@@ -21,14 +21,14 @@ class PositionInternal {
21
21
  }
22
22
  validateInput(data) {
23
23
  if (data?.order != null) {
24
- if (data.order < 1) {
24
+ if (data.order < 1 && data.order != -1) {
25
25
  throw new Error('order must be at least 1');
26
26
  }
27
27
  if (data.order > 12) {
28
- throw new Error('order cannot be bigger than 12 (the minimum value for a bootstrap column)');
28
+ throw new Error('order cannot be bigger than 12 (the maximum value for a bootstrap column)');
29
29
  }
30
30
  }
31
- if (data?.row != null && data.row < 1) {
31
+ if (data?.row != null && data.row != -1 && data.row < 1) {
32
32
  throw new Error('row must be at least 1');
33
33
  }
34
34
  if (data?.tab != null && data.tab != -1 && data.tab < 2) {
@@ -100,4 +100,4 @@ export class PropertyDecoratorConfigInternal {
100
100
  return value ? defaultTrue : defaultFalse;
101
101
  }
102
102
  }
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2Jhc2UvcHJvcGVydHktZGVjb3JhdG9yLWludGVybmFsLmRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUdwRTs7R0FFRztBQUNILE1BQU0sZ0JBQWdCO0lBQ2xCLCtDQUErQztJQUMvQyxHQUFHLENBQVM7SUFDWiwrQ0FBK0M7SUFDL0MsS0FBSyxDQUFTO0lBQ2QsK0NBQStDO0lBQy9DLEdBQUcsQ0FBUztJQUNaLCtDQUErQztJQUMvQyxPQUFPLENBQVU7SUFFakIsWUFBWSxJQUFlO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxFQUFFLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLEVBQUUsT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBZTtRQUNqQyxJQUFJLElBQUksRUFBRSxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUU7Z0JBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQzthQUMvQztZQUNELElBQUksSUFB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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVmYXVsdEZhbHNlIH0gZnJvbSAnLi4vLi4vZnVuY3Rpb25zL2RlZmF1bHQtZmFsc2UuZnVuY3Rpb24nO1xuaW1wb3J0IHsgZGVmYXVsdFRydWUgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvZGVmYXVsdC10cnVlLmZ1bmN0aW9uJztcbmltcG9ydCB7IENvbCwgUG9zaXRpb24sIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9wcm9wZXJ0eS1kZWNvcmF0b3IuZGF0YSc7XG5cbi8qKlxuICogVGhlIGludGVybmFsIFBvc2l0aW9uLiBTZXRzIGRlZmF1bHQgdmFsdWVzIGFuZCB2YWxpZGF0ZXMgdXNlciBpbnB1dC5cbiAqL1xuY2xhc3MgUG9zaXRpb25JbnRlcm5hbCBpbXBsZW1lbnRzIFBvc2l0aW9uIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJvdzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgb3JkZXI6IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRhYjogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGFiTmFtZT86IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE/OiBQb3NpdGlvbikge1xuICAgICAgICB0aGlzLnZhbGlkYXRlSW5wdXQoZGF0YSk7XG4gICAgICAgIHRoaXMucm93ID0gZGF0YT8ucm93ID8/IC0xO1xuICAgICAgICB0aGlzLm9yZGVyID0gZGF0YT8ub3JkZXIgPz8gLTE7XG4gICAgICAgIHRoaXMudGFiID0gZGF0YT8udGFiID8/IC0xO1xuICAgICAgICB0aGlzLnRhYk5hbWUgPSBkYXRhPy50YWJOYW1lO1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVJbnB1dChkYXRhPzogUG9zaXRpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKGRhdGE/Lm9yZGVyICE9IG51bGwpIHtcbiAgICAgICAgICAgIGlmIChkYXRhLm9yZGVyIDwgMSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignb3JkZXIgbXVzdCBiZSBhdCBsZWFzdCAxJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZGF0YS5vcmRlciA+IDEyKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdvcmRlciBjYW5ub3QgYmUgYmlnZ2VyIHRoYW4gMTIgKHRoZSBtaW5pbXVtIHZhbHVlIGZvciBhIGJvb3RzdHJhcCBjb2x1bW4pJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGE/LnJvdyAhPSBudWxsICYmIGRhdGEucm93IDwgMSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyb3cgbXVzdCBiZSBhdCBsZWFzdCAxJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGE/LnRhYiAhPSBudWxsICYmIGRhdGEudGFiICE9IC0xICYmIGRhdGEudGFiIDwgMikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd0YWIgbXVzdCBiZSBlaXRoZXIgLTEgZm9yIHRoZSBmaXJzdCB0YWIgb3IgYXQgbGVhc3QgMicpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBQcm9wZXJ0eURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8VmFsdWVUeXBlPiBpbXBsZW1lbnRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnPFZhbHVlVHlwZT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheTogKGVudGl0eTogdW5rbm93bikgPT4gYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZXF1aXJlZDogKChlbnRpdHk6IHVua25vd24pID0+IGJvb2xlYW4pO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgb21pdEZvckNyZWF0ZTogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG9taXRGb3JVcGRhdGU6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWZhdWx0V2lkdGhzOiBbQ29sLCBDb2wsIENvbF07XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwb3NpdGlvbjogUG9zaXRpb25JbnRlcm5hbDtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGlzUmVhZE9ubHk6IChlbnRpdHk6IHVua25vd24pID0+IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWZhdWx0PzogKCkgPT4gVmFsdWVUeXBlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY2hhbmdlPzogKGVudGl0eTogdW5rbm93bikgPT4gdm9pZDtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnPFZhbHVlVHlwZT4pIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLmRpc3BsYXkgPz8gdHJ1ZSk7XG4gICAgICAgIHRoaXMuZGlzcGxheU5hbWUgPSBkYXRhLmRpc3BsYXlOYW1lO1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLnJlcXVpcmVkID8/IHRydWUpO1xuICAgICAgICB0aGlzLm9taXRGb3JDcmVhdGUgPSBkYXRhLm9taXRGb3JDcmVhdGUgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMub21pdEZvclVwZGF0ZSA9IGRhdGEub21pdEZvclVwZGF0ZSA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFs2LCA2LCAxMl07XG4gICAgICAgIHRoaXMucG9zaXRpb24gPSBuZXcgUG9zaXRpb25JbnRlcm5hbChkYXRhLnBvc2l0aW9uKTtcbiAgICAgICAgdGhpcy5pc1JlYWRPbmx5ID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLmlzUmVhZE9ubHkgPz8gZmFsc2UpO1xuICAgICAgICB0aGlzLmRlZmF1bHQgPSB0aGlzLmRlZmF1bHRUb0Z1bmN0aW9uKGRhdGEuZGVmYXVsdCk7XG4gICAgICAgIHRoaXMuY2hhbmdlID0gZGF0YS5jaGFuZ2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgdGhlIGRlZmF1bHQgdmFsdWUgdG8gYSBmdW5jdGlvbiBvciB1bmRlZmluZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgZGVmYXVsdCB2YWx1ZSBwcm92aWRlZCBieSB0aGUgbWV0YWRhdGEuXG4gICAgICogQHJldHVybnMgQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBkZWZhdWx0IHZhbHVlIG9yIHVuZGVmaW5lZC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZGVmYXVsdFRvRnVuY3Rpb24odmFsdWU/OiBWYWx1ZVR5cGUgfCAoKCkgPT4gVmFsdWVUeXBlKSk6ICgoKSA9PiBWYWx1ZVR5cGUpIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgYXMgKCgpID0+IFZhbHVlVHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICgoKSA9PiB2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgdGhlIGdpdmVuIGJvb2xlYW4gb3IgYm9vbGVhbiBmdW5jdGlvbiB0byBhIGJvb2xlYW4gZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY29udmVydC5cbiAgICAgKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgcmVzb2x2ZXMgdG8gYSBib29sZWFuLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBib29sZWFuVG9GdW5jdGlvbih2YWx1ZTogYm9vbGVhbiB8ICgoZW50aXR5OiB1bmtub3duKSA9PiBib29sZWFuKSk6IChlbnRpdHk6IHVua25vd24pID0+IGJvb2xlYW4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWUgPyBkZWZhdWx0VHJ1ZSA6IGRlZmF1bHRGYWxzZTtcbiAgICB9XG59Il19
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2Jhc2UvcHJvcGVydHktZGVjb3JhdG9yLWludGVybmFsLmRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUdwRTs7R0FFRztBQUNILE1BQU0sZ0JBQWdCO0lBQ2xCLCtDQUErQztJQUMvQyxHQUFHLENBQVM7SUFDWiwrQ0FBK0M7SUFDL0MsS0FBSyxDQUFTO0lBQ2QsK0NBQStDO0lBQy9DLEdBQUcsQ0FBUztJQUNaLCtDQUErQztJQUMvQyxPQUFPLENBQVU7SUFFakIsWUFBWSxJQUFlO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxFQUFFLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLEVBQUUsT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBZTtRQUNqQyxJQUFJLElBQUksRUFBRSxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsRUFBRTtnQkFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQyww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TyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQzlDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmF1bHRGYWxzZSB9IGZyb20gJy4uLy4uL2Z1bmN0aW9ucy9kZWZhdWx0LWZhbHNlLmZ1bmN0aW9uJztcbmltcG9ydCB7IGRlZmF1bHRUcnVlIH0gZnJvbSAnLi4vLi4vZnVuY3Rpb25zL2RlZmF1bHQtdHJ1ZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBDb2wsIFBvc2l0aW9uLCBQcm9wZXJ0eURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vcHJvcGVydHktZGVjb3JhdG9yLmRhdGEnO1xuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBQb3NpdGlvbi4gU2V0cyBkZWZhdWx0IHZhbHVlcyBhbmQgdmFsaWRhdGVzIHVzZXIgaW5wdXQuXG4gKi9cbmNsYXNzIFBvc2l0aW9uSW50ZXJuYWwgaW1wbGVtZW50cyBQb3NpdGlvbiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByb3c6IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG9yZGVyOiBudW1iZXI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0YWI6IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRhYk5hbWU/OiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhPzogUG9zaXRpb24pIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUlucHV0KGRhdGEpO1xuICAgICAgICB0aGlzLnJvdyA9IGRhdGE/LnJvdyA/PyAtMTtcbiAgICAgICAgdGhpcy5vcmRlciA9IGRhdGE/Lm9yZGVyID8/IC0xO1xuICAgICAgICB0aGlzLnRhYiA9IGRhdGE/LnRhYiA/PyAtMTtcbiAgICAgICAgdGhpcy50YWJOYW1lID0gZGF0YT8udGFiTmFtZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZhbGlkYXRlSW5wdXQoZGF0YT86IFBvc2l0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChkYXRhPy5vcmRlciAhPSBudWxsKSB7XG4gICAgICAgICAgICBpZiAoZGF0YS5vcmRlciA8IDEgJiYgZGF0YS5vcmRlciAhPSAtMSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignb3JkZXIgbXVzdCBiZSBhdCBsZWFzdCAxJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZGF0YS5vcmRlciA+IDEyKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdvcmRlciBjYW5ub3QgYmUgYmlnZ2VyIHRoYW4gMTIgKHRoZSBtYXhpbXVtIHZhbHVlIGZvciBhIGJvb3RzdHJhcCBjb2x1bW4pJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGE/LnJvdyAhPSBudWxsICYmIGRhdGEucm93ICE9IC0xICYmIGRhdGEucm93IDwgMSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyb3cgbXVzdCBiZSBhdCBsZWFzdCAxJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGE/LnRhYiAhPSBudWxsICYmIGRhdGEudGFiICE9IC0xICYmIGRhdGEudGFiIDwgMikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd0YWIgbXVzdCBiZSBlaXRoZXIgLTEgZm9yIHRoZSBmaXJzdCB0YWIgb3IgYXQgbGVhc3QgMicpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBQcm9wZXJ0eURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8VmFsdWVUeXBlPiBpbXBsZW1lbnRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnPFZhbHVlVHlwZT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheTogKGVudGl0eTogdW5rbm93bikgPT4gYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZXF1aXJlZDogKChlbnRpdHk6IHVua25vd24pID0+IGJvb2xlYW4pO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgb21pdEZvckNyZWF0ZTogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG9taXRGb3JVcGRhdGU6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWZhdWx0V2lkdGhzOiBbQ29sLCBDb2wsIENvbF07XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwb3NpdGlvbjogUG9zaXRpb25JbnRlcm5hbDtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGlzUmVhZE9ubHk6IChlbnRpdHk6IHVua25vd24pID0+IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkZWZhdWx0PzogKCkgPT4gVmFsdWVUeXBlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY2hhbmdlPzogKGVudGl0eTogdW5rbm93bikgPT4gdm9pZDtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnPFZhbHVlVHlwZT4pIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLmRpc3BsYXkgPz8gdHJ1ZSk7XG4gICAgICAgIHRoaXMuZGlzcGxheU5hbWUgPSBkYXRhLmRpc3BsYXlOYW1lO1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLnJlcXVpcmVkID8/IHRydWUpO1xuICAgICAgICB0aGlzLm9taXRGb3JDcmVhdGUgPSBkYXRhLm9taXRGb3JDcmVhdGUgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMub21pdEZvclVwZGF0ZSA9IGRhdGEub21pdEZvclVwZGF0ZSA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFs2LCA2LCAxMl07XG4gICAgICAgIHRoaXMucG9zaXRpb24gPSBuZXcgUG9zaXRpb25JbnRlcm5hbChkYXRhLnBvc2l0aW9uKTtcbiAgICAgICAgdGhpcy5pc1JlYWRPbmx5ID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLmlzUmVhZE9ubHkgPz8gZmFsc2UpO1xuICAgICAgICB0aGlzLmRlZmF1bHQgPSB0aGlzLmRlZmF1bHRUb0Z1bmN0aW9uKGRhdGEuZGVmYXVsdCk7XG4gICAgICAgIHRoaXMuY2hhbmdlID0gZGF0YS5jaGFuZ2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgdGhlIGRlZmF1bHQgdmFsdWUgdG8gYSBmdW5jdGlvbiBvciB1bmRlZmluZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgZGVmYXVsdCB2YWx1ZSBwcm92aWRlZCBieSB0aGUgbWV0YWRhdGEuXG4gICAgICogQHJldHVybnMgQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBkZWZhdWx0IHZhbHVlIG9yIHVuZGVmaW5lZC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZGVmYXVsdFRvRnVuY3Rpb24odmFsdWU/OiBWYWx1ZVR5cGUgfCAoKCkgPT4gVmFsdWVUeXBlKSk6ICgoKSA9PiBWYWx1ZVR5cGUpIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgYXMgKCgpID0+IFZhbHVlVHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICgoKSA9PiB2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgdGhlIGdpdmVuIGJvb2xlYW4gb3IgYm9vbGVhbiBmdW5jdGlvbiB0byBhIGJvb2xlYW4gZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY29udmVydC5cbiAgICAgKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgcmVzb2x2ZXMgdG8gYSBib29sZWFuLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBib29sZWFuVG9GdW5jdGlvbih2YWx1ZTogYm9vbGVhbiB8ICgoZW50aXR5OiB1bmtub3duKSA9PiBib29sZWFuKSk6IChlbnRpdHk6IHVua25vd24pID0+IGJvb2xlYW4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWUgPyBkZWZhdWx0VHJ1ZSA6IGRlZmF1bHRGYWxzZTtcbiAgICB9XG59Il19
@@ -1,3 +1,4 @@
1
+ import { getConfigValue } from '../../functions/get-config-value.function';
1
2
  import { PropertyDecoratorConfigInternal } from '../base/property-decorator-internal.data';
2
3
  /**
3
4
  * The internal DropdownBooleanDecoratorConfig. Sets default values.
@@ -9,11 +10,11 @@ export class DropdownBooleanDecoratorConfigInternal extends PropertyDecoratorCon
9
10
  dropdownTrue;
10
11
  // eslint-disable-next-line jsdoc/require-jsdoc
11
12
  dropdownFalse;
12
- constructor(data) {
13
+ constructor(data, globalConfig) {
13
14
  super(data);
14
15
  this.displayStyle = data.displayStyle;
15
- this.dropdownTrue = data.dropdownTrue ?? 'Yes';
16
- this.dropdownFalse = data.dropdownFalse ?? 'No';
16
+ this.dropdownTrue = getConfigValue(globalConfig.dropdownTrue, data.dropdownTrue);
17
+ this.dropdownFalse = getConfigValue(globalConfig.dropdownFalse, data.dropdownFalse);
17
18
  }
18
19
  }
19
20
  /**
@@ -40,4 +41,4 @@ export class ToggleBooleanDecoratorConfigInternal extends PropertyDecoratorConfi
40
41
  this.required = this.booleanToFunction(data.required ?? false);
41
42
  }
42
43
  }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2RlY29yYXRvcnMvYm9vbGVhbi9ib29sZWFuLWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRzNGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHNDQUF1QyxTQUFRLCtCQUF3QztJQUVoRywrQ0FBK0M7SUFDL0MsWUFBWSxDQUFhO0lBQ3pCLCtDQUErQztJQUMvQyxZQUFZLENBQVM7SUFDckIsK0NBQStDO0lBQy9DLGFBQWEsQ0FBUztJQUV0QixZQUFZLElBQW9DO1FBQzVDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDO1FBQy9DLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUM7SUFDcEQsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sc0NBQXVDLFNBQVEsK0JBQXdDO0lBRWhHLCtDQUErQztJQUMvQyxZQUFZLENBQWE7SUFFekIsWUFBWSxJQUFvQztRQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDdEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxvQ0FBcUMsU0FBUSwrQkFBd0M7SUFDOUYsK0NBQStDO0lBQy9DLFlBQVksQ0FBVztJQUV2QixZQUFZLElBQWtDO1FBQzFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IENoZWNrYm94Qm9vbGVhbkRlY29yYXRvckNvbmZpZywgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnLCBUb2dnbGVCb29sZWFuRGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9ib29sZWFuLWRlY29yYXRvci5kYXRhJztcblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPGJvb2xlYW4+XG4gICAgaW1wbGVtZW50cyBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnZHJvcGRvd24nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHJvcGRvd25UcnVlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkcm9wZG93bkZhbHNlOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWcpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuZGlzcGxheVN0eWxlID0gZGF0YS5kaXNwbGF5U3R5bGU7XG4gICAgICAgIHRoaXMuZHJvcGRvd25UcnVlID0gZGF0YS5kcm9wZG93blRydWUgPz8gJ1llcyc7XG4gICAgICAgIHRoaXMuZHJvcGRvd25GYWxzZSA9IGRhdGEuZHJvcGRvd25GYWxzZSA/PyAnTm8nO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPGJvb2xlYW4+XG4gICAgaW1wbGVtZW50cyBDaGVja2JveEJvb2xlYW5EZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnY2hlY2tib3gnO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRpc3BsYXlTdHlsZSA9IGRhdGEuZGlzcGxheVN0eWxlO1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLnJlcXVpcmVkID8/IGZhbHNlKTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBUb2dnbGVCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPGJvb2xlYW4+IGltcGxlbWVudHMgVG9nZ2xlQm9vbGVhbkRlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5U3R5bGU6ICd0b2dnbGUnO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogVG9nZ2xlQm9vbGVhbkRlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5U3R5bGUgPSBkYXRhLmRpc3BsYXlTdHlsZTtcbiAgICAgICAgdGhpcy5yZXF1aXJlZCA9IHRoaXMuYm9vbGVhblRvRnVuY3Rpb24oZGF0YS5yZXF1aXJlZCA/PyBmYWxzZSk7XG4gICAgfVxufSJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2RlY29yYXRvcnMvYm9vbGVhbi9ib29sZWFuLWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUczRjs7R0FFRztBQUNILE1BQU0sT0FBTyxzQ0FBdUMsU0FBUSwrQkFBd0M7SUFFaEcsK0NBQStDO0lBQy9DLFlBQVksQ0FBYTtJQUN6QiwrQ0FBK0M7SUFDL0MsWUFBWSxDQUFTO0lBQ3JCLCtDQUErQztJQUMvQyxhQUFhLENBQVM7SUFFdEIsWUFBWSxJQUFvQyxFQUFFLFlBQW9DO1FBQ2xGLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsYUFBYSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4RixDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxzQ0FBdUMsU0FBUSwrQkFBd0M7SUFFaEcsK0NBQStDO0lBQy9DLFlBQVksQ0FBYTtJQUV6QixZQUFZLElBQW9DO1FBQzVDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLCtCQUF3QztJQUM5RiwrQ0FBK0M7SUFDL0MsWUFBWSxDQUFXO0lBRXZCLFlBQVksSUFBa0M7UUFDMUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ1osSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0Q29uZmlnVmFsdWUgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvZ2V0LWNvbmZpZy12YWx1ZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzIH0gZnJvbSAnLi4vLi4vZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IENoZWNrYm94Qm9vbGVhbkRlY29yYXRvckNvbmZpZywgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnLCBUb2dnbGVCb29sZWFuRGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9ib29sZWFuLWRlY29yYXRvci5kYXRhJztcblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPGJvb2xlYW4+XG4gICAgaW1wbGVtZW50cyBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnZHJvcGRvd24nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHJvcGRvd25UcnVlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkcm9wZG93bkZhbHNlOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWcsIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5U3R5bGUgPSBkYXRhLmRpc3BsYXlTdHlsZTtcbiAgICAgICAgdGhpcy5kcm9wZG93blRydWUgPSBnZXRDb25maWdWYWx1ZShnbG9iYWxDb25maWcuZHJvcGRvd25UcnVlLCBkYXRhLmRyb3Bkb3duVHJ1ZSk7XG4gICAgICAgIHRoaXMuZHJvcGRvd25GYWxzZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5kcm9wZG93bkZhbHNlLCBkYXRhLmRyb3Bkb3duRmFsc2UpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPGJvb2xlYW4+XG4gICAgaW1wbGVtZW50cyBDaGVja2JveEJvb2xlYW5EZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnY2hlY2tib3gnO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRpc3BsYXlTdHlsZSA9IGRhdGEuZGlzcGxheVN0eWxlO1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gdGhpcy5ib29sZWFuVG9GdW5jdGlvbihkYXRhLnJlcXVpcmVkID8/IGZhbHNlKTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBUb2dnbGVCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPGJvb2xlYW4+IGltcGxlbWVudHMgVG9nZ2xlQm9vbGVhbkRlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5U3R5bGU6ICd0b2dnbGUnO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogVG9nZ2xlQm9vbGVhbkRlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5U3R5bGUgPSBkYXRhLmRpc3BsYXlTdHlsZTtcbiAgICAgICAgdGhpcy5yZXF1aXJlZCA9IHRoaXMuYm9vbGVhblRvRnVuY3Rpb24oZGF0YS5yZXF1aXJlZCA/PyBmYWxzZSk7XG4gICAgfVxufSJdfQ==
@@ -1,3 +1,4 @@
1
+ import { needsUpdateGlobalDefaults } from '../../default-global-configuration-values';
1
2
  import { baseProperty } from '../base/base-property.decorator';
2
3
  import { DecoratorTypes } from '../base/decorator-types.enum';
3
4
  import { CheckboxBooleanDecoratorConfigInternal, DropdownBooleanDecoratorConfigInternal, ToggleBooleanDecoratorConfigInternal } from './boolean-decorator-internal.data';
@@ -9,7 +10,7 @@ import { CheckboxBooleanDecoratorConfigInternal, DropdownBooleanDecoratorConfigI
9
10
  */
10
11
  export function boolean(metadata) {
11
12
  if (metadata.displayStyle === 'dropdown') {
12
- return baseProperty(new DropdownBooleanDecoratorConfigInternal(metadata), DecoratorTypes.BOOLEAN_DROPDOWN);
13
+ return baseProperty(new DropdownBooleanDecoratorConfigInternal(metadata, needsUpdateGlobalDefaults), DecoratorTypes.BOOLEAN_DROPDOWN);
13
14
  }
14
15
  else if (metadata.displayStyle === 'checkbox') {
15
16
  return baseProperty(new CheckboxBooleanDecoratorConfigInternal(metadata), DecoratorTypes.BOOLEAN_CHECKBOX);
@@ -18,4 +19,4 @@ export function boolean(metadata) {
18
19
  return baseProperty(new ToggleBooleanDecoratorConfigInternal(metadata), DecoratorTypes.BOOLEAN_TOGGLE);
19
20
  }
20
21
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2Jvb2xlYW4vYm9vbGVhbi5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsc0NBQXNDLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUd6Szs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxPQUFPLENBQ25CLFFBQXdHO0lBRXhHLElBQUksUUFBUSxDQUFDLFlBQVksS0FBSyxVQUFVLEVBQUU7UUFDdEMsT0FBTyxZQUFZLENBQUMsSUFBSSxzQ0FBc0MsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQUM5RztTQUNJLElBQUksUUFBUSxDQUFDLFlBQVksS0FBSyxVQUFVLEVBQUU7UUFDM0MsT0FBTyxZQUFZLENBQUMsSUFBSSxzQ0FBc0MsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQUM5RztTQUNJO1FBQ0QsT0FBTyxZQUFZLENBQUMsSUFBSSxvQ0FBb0MsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDMUc7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmFzZVByb3BlcnR5IH0gZnJvbSAnLi4vYmFzZS9iYXNlLXByb3BlcnR5LmRlY29yYXRvcic7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uL2Jhc2UvZGVjb3JhdG9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIERyb3Bkb3duQm9vbGVhbkRlY29yYXRvckNvbmZpZ0ludGVybmFsLCBUb2dnbGVCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuL2Jvb2xlYW4tZGVjb3JhdG9yLWludGVybmFsLmRhdGEnO1xuaW1wb3J0IHsgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnLCBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWcsIFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWcgfSBmcm9tICcuL2Jvb2xlYW4tZGVjb3JhdG9yLmRhdGEnO1xuXG4vKipcbiAqIERlY29yYXRvciBmb3Igc2V0dGluZyBhbmQgZ2V0dGluZyBib29sZWFuIHByb3BlcnR5IG1ldGFkYXRhLlxuICpcbiAqIEBwYXJhbSBtZXRhZGF0YSAtIFRoZSBtZXRhZGF0YSBvZiB0aGUgYm9vbGVhbiBwcm9wZXJ0eS5cbiAqIEByZXR1cm5zIFRoZSBtZXRob2QgdGhhdCBkZWZpbmVzIHRoZSBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJvb2xlYW4oXG4gICAgbWV0YWRhdGE6IENoZWNrYm94Qm9vbGVhbkRlY29yYXRvckNvbmZpZyB8IFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWcgfCBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWdcbik6ICh0YXJnZXQ6IG9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZykgPT4gdm9pZCB7XG4gICAgaWYgKG1ldGFkYXRhLmRpc3BsYXlTdHlsZSA9PT0gJ2Ryb3Bkb3duJykge1xuICAgICAgICByZXR1cm4gYmFzZVByb3BlcnR5KG5ldyBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbChtZXRhZGF0YSksIERlY29yYXRvclR5cGVzLkJPT0xFQU5fRFJPUERPV04pO1xuICAgIH1cbiAgICBlbHNlIGlmIChtZXRhZGF0YS5kaXNwbGF5U3R5bGUgPT09ICdjaGVja2JveCcpIHtcbiAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEpLCBEZWNvcmF0b3JUeXBlcy5CT09MRUFOX0NIRUNLQk9YKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkobmV3IFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbChtZXRhZGF0YSksIERlY29yYXRvclR5cGVzLkJPT0xFQU5fVE9HR0xFKTtcbiAgICB9XG59Il19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2Jvb2xlYW4vYm9vbGVhbi5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsc0NBQXNDLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUd6Szs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxPQUFPLENBQ25CLFFBQXdHO0lBRXhHLElBQUksUUFBUSxDQUFDLFlBQVksS0FBSyxVQUFVLEVBQUU7UUFDdEMsT0FBTyxZQUFZLENBQ2YsSUFBSSxzQ0FBc0MsQ0FBQyxRQUFRLEVBQUUseUJBQXlCLENBQUMsRUFDL0UsY0FBYyxDQUFDLGdCQUFnQixDQUNsQyxDQUFDO0tBQ0w7U0FDSSxJQUFJLFFBQVEsQ0FBQyxZQUFZLEtBQUssVUFBVSxFQUFFO1FBQzNDLE9BQU8sWUFBWSxDQUFDLElBQUksc0NBQXNDLENBQUMsUUFBUSxDQUFDLEVBQUUsY0FBYyxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0FDOUc7U0FDSTtRQUNELE9BQU8sWUFBWSxDQUFDLElBQUksb0NBQW9DLENBQUMsUUFBUSxDQUFDLEVBQUUsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQzFHO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5lZWRzVXBkYXRlR2xvYmFsRGVmYXVsdHMgfSBmcm9tICcuLi8uLi9kZWZhdWx0LWdsb2JhbC1jb25maWd1cmF0aW9uLXZhbHVlcyc7XG5pbXBvcnQgeyBiYXNlUHJvcGVydHkgfSBmcm9tICcuLi9iYXNlL2Jhc2UtcHJvcGVydHkuZGVjb3JhdG9yJztcbmltcG9ydCB7IERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi4vYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBDaGVja2JveEJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbCB9IGZyb20gJy4vYm9vbGVhbi1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBDaGVja2JveEJvb2xlYW5EZWNvcmF0b3JDb25maWcsIERyb3Bkb3duQm9vbGVhbkRlY29yYXRvckNvbmZpZywgVG9nZ2xlQm9vbGVhbkRlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vYm9vbGVhbi1kZWNvcmF0b3IuZGF0YSc7XG5cbi8qKlxuICogRGVjb3JhdG9yIGZvciBzZXR0aW5nIGFuZCBnZXR0aW5nIGJvb2xlYW4gcHJvcGVydHkgbWV0YWRhdGEuXG4gKlxuICogQHBhcmFtIG1ldGFkYXRhIC0gVGhlIG1ldGFkYXRhIG9mIHRoZSBib29sZWFuIHByb3BlcnR5LlxuICogQHJldHVybnMgVGhlIG1ldGhvZCB0aGF0IGRlZmluZXMgdGhlIG1ldGFkYXRhLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYm9vbGVhbihcbiAgICBtZXRhZGF0YTogQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnIHwgVG9nZ2xlQm9vbGVhbkRlY29yYXRvckNvbmZpZyB8IERyb3Bkb3duQm9vbGVhbkRlY29yYXRvckNvbmZpZ1xuKTogKHRhcmdldDogb2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKSA9PiB2b2lkIHtcbiAgICBpZiAobWV0YWRhdGEuZGlzcGxheVN0eWxlID09PSAnZHJvcGRvd24nKSB7XG4gICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkoXG4gICAgICAgICAgICBuZXcgRHJvcGRvd25Cb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEsIG5lZWRzVXBkYXRlR2xvYmFsRGVmYXVsdHMpLFxuICAgICAgICAgICAgRGVjb3JhdG9yVHlwZXMuQk9PTEVBTl9EUk9QRE9XTlxuICAgICAgICApO1xuICAgIH1cbiAgICBlbHNlIGlmIChtZXRhZGF0YS5kaXNwbGF5U3R5bGUgPT09ICdjaGVja2JveCcpIHtcbiAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEpLCBEZWNvcmF0b3JUeXBlcy5CT09MRUFOX0NIRUNLQk9YKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBiYXNlUHJvcGVydHkobmV3IFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbChtZXRhZGF0YSksIERlY29yYXRvclR5cGVzLkJPT0xFQU5fVE9HR0xFKTtcbiAgICB9XG59Il19
@@ -1,5 +1,6 @@
1
1
  import { DateUtilities } from '../../utilities/date.utilities';
2
2
  import { PropertyDecoratorConfigInternal } from '../base/property-decorator-internal.data';
3
+ import { getConfigValue } from '../../functions/get-config-value.function';
3
4
  /**
4
5
  * The internal DefaultDateDecoratorConfig. Sets default values.
5
6
  */
@@ -40,7 +41,7 @@ export class DateRangeDateDecoratorConfigInternal extends PropertyDecoratorConfi
40
41
  placeholderStart;
41
42
  // eslint-disable-next-line jsdoc/require-jsdoc
42
43
  placeholderEnd;
43
- constructor(data) {
44
+ constructor(data, globalConfig) {
44
45
  super(data);
45
46
  this.displayStyle = data.displayStyle;
46
47
  this.minStart = data.minStart;
@@ -48,8 +49,8 @@ export class DateRangeDateDecoratorConfigInternal extends PropertyDecoratorConfi
48
49
  this.minEnd = data.minEnd;
49
50
  this.maxEnd = data.maxEnd;
50
51
  this.filter = data.filter;
51
- this.placeholderStart = data.placeholderStart ?? 'Start';
52
- this.placeholderEnd = data.placeholderEnd ?? 'End';
52
+ this.placeholderStart = getConfigValue(globalConfig.startLabel, data.placeholderStart);
53
+ this.placeholderEnd = getConfigValue(globalConfig.endLabel, data.placeholderEnd);
53
54
  }
54
55
  }
55
56
  /**
@@ -74,11 +75,11 @@ export class DateTimeDateDecoratorConfigInternal extends PropertyDecoratorConfig
74
75
  maxTime;
75
76
  // eslint-disable-next-line jsdoc/require-jsdoc
76
77
  filterTime;
77
- constructor(data) {
78
+ constructor(data, globalConfig) {
78
79
  super(data);
79
80
  this.displayStyle = data.displayStyle;
80
81
  this.times = data.times ?? DateUtilities.getDefaultTimes();
81
- this.timeDisplayName = data.timeDisplayName ?? 'Time';
82
+ this.timeDisplayName = getConfigValue(globalConfig.timeLabel, data.timeDisplayName);
82
83
  this.minDate = data.minDate;
83
84
  this.maxDate = data.maxDate;
84
85
  this.filterDate = data.filterDate;
@@ -88,4 +89,4 @@ export class DateTimeDateDecoratorConfigInternal extends PropertyDecoratorConfig
88
89
  this.defaultWidths = [6, 12, 12];
89
90
  }
90
91
  }
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2RlY29yYXRvcnMvZGF0ZS9kYXRlLWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUczRjs7R0FFRztBQUNILE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSwrQkFBcUM7SUFDekYsK0NBQStDO0lBQy9DLFlBQVksQ0FBUztJQUNyQiwrQ0FBK0M7SUFDL0MsR0FBRyxDQUF5QjtJQUM1QiwrQ0FBK0M7SUFDL0MsR0FBRyxDQUF5QjtJQUM1QiwrQ0FBK0M7SUFDL0MsTUFBTSxDQUF5QztJQUUvQyxZQUFZLElBQWdDO1FBQ3hDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUM5QixDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxvQ0FBcUMsU0FBUSwrQkFBMEM7SUFFaEcsK0NBQStDO0lBQy9DLFlBQVksQ0FBYztJQUMxQiwrQ0FBK0M7SUFDL0MsUUFBUSxDQUF5QjtJQUNqQywrQ0FBK0M7SUFDL0MsUUFBUSxDQUF5QjtJQUNqQywrQ0FBK0M7SUFDL0MsTUFBTSxDQUF5QjtJQUMvQiwrQ0FBK0M7SUFDL0MsTUFBTSxDQUF5QjtJQUMvQiwrQ0FBK0M7SUFDL0MsTUFBTSxDQUFzQjtJQUM1QiwrQ0FBK0M7SUFDL0MsZ0JBQWdCLENBQVM7SUFDekIsK0NBQStDO0lBQy9DLGNBQWMsQ0FBUztJQUV2QixZQUFZLElBQWtDO1FBQzFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLElBQUksT0FBTyxDQUFDO1FBQ3pELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsSUFBSSxLQUFLLENBQUM7SUFDdkQsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sbUNBQW9DLFNBQVEsK0JBQXFDO0lBQzFGLCtDQUErQztJQUMvQyxZQUFZLENBQWE7SUFDekIsK0NBQStDO0lBQy9DLEtBQUssQ0FBb0M7SUFDekMsK0NBQStDO0lBQy9DLGVBQWUsQ0FBUztJQUN4QiwrQ0FBK0M7SUFDL0MsT0FBTyxDQUF5QjtJQUNoQywrQ0FBK0M7SUFDL0MsT0FBTyxDQUF5QjtJQUNoQywrQ0FBK0M7SUFDL0MsVUFBVSxDQUF5QztJQUNuRCwrQ0FBK0M7SUFDL0MsT0FBTyxDQUF5QjtJQUNoQywrQ0FBK0M7SUFDL0MsT0FBTyxDQUF5QjtJQUNoQywrQ0FBK0M7SUFDL0MsVUFBVSxDQUErQztJQUV6RCxZQUFZLElBQWlDO1FBQ3pDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksYUFBYSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxNQUFNLENBQUM7UUFDdEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDckMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGltZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRlRmlsdGVyRm4gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IERhdGVVdGlsaXRpZXMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvZGF0ZS51dGlsaXRpZXMnO1xuaW1wb3J0IHsgRHJvcGRvd25WYWx1ZSB9IGZyb20gJy4uL2Jhc2UvZHJvcGRvd24tdmFsdWUuaW50ZXJmYWNlJztcbmltcG9ydCB7IFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IERhdGVSYW5nZSwgRGF0ZVJhbmdlRGF0ZURlY29yYXRvckNvbmZpZywgRGF0ZVRpbWVEYXRlRGVjb3JhdG9yQ29uZmlnLCBEZWZhdWx0RGF0ZURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4vZGF0ZS1kZWNvcmF0b3IuZGF0YSc7XG5cbi8qKlxuICogVGhlIGludGVybmFsIERlZmF1bHREYXRlRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGVmYXVsdERhdGVEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RGF0ZT4gaW1wbGVtZW50cyBEZWZhdWx0RGF0ZURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5U3R5bGU6ICdkYXRlJztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbj86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlcj86IERhdGVGaWx0ZXJGbjxEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZD47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEZWZhdWx0RGF0ZURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5U3R5bGUgPSBkYXRhLmRpc3BsYXlTdHlsZTtcbiAgICAgICAgdGhpcy5tYXggPSBkYXRhLm1heDtcbiAgICAgICAgdGhpcy5taW4gPSBkYXRhLm1pbjtcbiAgICAgICAgdGhpcy5maWx0ZXIgPSBkYXRhLmZpbHRlcjtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIERhdGVSYW5nZURhdGVEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlUmFuZ2VEYXRlRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVSYW5nZT5cbiAgICBpbXBsZW1lbnRzIERhdGVSYW5nZURhdGVEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnZGF0ZXJhbmdlJztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5FbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhFbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlclN0YXJ0OiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlckVuZDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogRGF0ZVJhbmdlRGF0ZURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5U3R5bGUgPSBkYXRhLmRpc3BsYXlTdHlsZTtcbiAgICAgICAgdGhpcy5taW5TdGFydCA9IGRhdGEubWluU3RhcnQ7XG4gICAgICAgIHRoaXMubWF4U3RhcnQgPSBkYXRhLm1heFN0YXJ0O1xuICAgICAgICB0aGlzLm1pbkVuZCA9IGRhdGEubWluRW5kO1xuICAgICAgICB0aGlzLm1heEVuZCA9IGRhdGEubWF4RW5kO1xuICAgICAgICB0aGlzLmZpbHRlciA9IGRhdGEuZmlsdGVyO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyU3RhcnQgPSBkYXRhLnBsYWNlaG9sZGVyU3RhcnQgPz8gJ1N0YXJ0JztcbiAgICAgICAgdGhpcy5wbGFjZWhvbGRlckVuZCA9IGRhdGEucGxhY2Vob2xkZXJFbmQgPz8gJ0VuZCc7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEYXRlVGltZURhdGVEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlVGltZURhdGVEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RGF0ZT4gaW1wbGVtZW50cyBEYXRlVGltZURhdGVEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnZGF0ZXRpbWUnO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGltZXM6IERyb3Bkb3duVmFsdWU8VGltZSB8IHVuZGVmaW5lZD5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpbWVEaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluRGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heERhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXJEYXRlPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhUaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyVGltZT86ICgodGltZTogVGltZSkgPT4gYm9vbGVhbikgfCAoKCkgPT4gYm9vbGVhbik7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlVGltZURhdGVEZWNvcmF0b3JDb25maWcpIHtcbiAgICAgICAgc3VwZXIoZGF0YSk7XG4gICAgICAgIHRoaXMuZGlzcGxheVN0eWxlID0gZGF0YS5kaXNwbGF5U3R5bGU7XG4gICAgICAgIHRoaXMudGltZXMgPSBkYXRhLnRpbWVzID8/IERhdGVVdGlsaXRpZXMuZ2V0RGVmYXVsdFRpbWVzKCk7XG4gICAgICAgIHRoaXMudGltZURpc3BsYXlOYW1lID0gZGF0YS50aW1lRGlzcGxheU5hbWUgPz8gJ1RpbWUnO1xuICAgICAgICB0aGlzLm1pbkRhdGUgPSBkYXRhLm1pbkRhdGU7XG4gICAgICAgIHRoaXMubWF4RGF0ZSA9IGRhdGEubWF4RGF0ZTtcbiAgICAgICAgdGhpcy5maWx0ZXJEYXRlID0gZGF0YS5maWx0ZXJEYXRlO1xuICAgICAgICB0aGlzLm1pblRpbWUgPSBkYXRhLm1pblRpbWU7XG4gICAgICAgIHRoaXMubWF4VGltZSA9IGRhdGEubWF4VGltZTtcbiAgICAgICAgdGhpcy5maWx0ZXJUaW1lID0gZGF0YS5maWx0ZXJUaW1lO1xuICAgICAgICB0aGlzLmRlZmF1bHRXaWR0aHMgPSBbNiwgMTIsIDEyXTtcbiAgICB9XG59Il19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2RlY29yYXRvcnMvZGF0ZS9kYXRlLWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUUzRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFM0U7O0dBRUc7QUFDSCxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsK0JBQXFDO0lBQ3pGLCtDQUErQztJQUMvQyxZQUFZLENBQVM7SUFDckIsK0NBQStDO0lBQy9DLEdBQUcsQ0FBeUI7SUFDNUIsK0NBQStDO0lBQy9DLEdBQUcsQ0FBeUI7SUFDNUIsK0NBQStDO0lBQy9DLE1BQU0sQ0FBeUM7SUFFL0MsWUFBWSxJQUFnQztRQUN4QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDdEMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDOUIsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0NBQXFDLFNBQVEsK0JBQTBDO0lBRWhHLCtDQUErQztJQUMvQyxZQUFZLENBQWM7SUFDMUIsK0NBQStDO0lBQy9DLFFBQVEsQ0FBeUI7SUFDakMsK0NBQStDO0lBQy9DLFFBQVEsQ0FBeUI7SUFDakMsK0NBQStDO0lBQy9DLE1BQU0sQ0FBeUI7SUFDL0IsK0NBQStDO0lBQy9DLE1BQU0sQ0FBeUI7SUFDL0IsK0NBQStDO0lBQy9DLE1BQU0sQ0FBc0I7SUFDNUIsK0NBQStDO0lBQy9DLGdCQUFnQixDQUFTO0lBQ3pCLCtDQUErQztJQUMvQyxjQUFjLENBQVM7SUFFdkIsWUFBWSxJQUFrQyxFQUFFLFlBQW9DO1FBQ2hGLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxjQUFjLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNyRixDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxtQ0FBb0MsU0FBUSwrQkFBcUM7SUFDMUYsK0NBQStDO0lBQy9DLFlBQVksQ0FBYTtJQUN6QiwrQ0FBK0M7SUFDL0MsS0FBSyxDQUFvQztJQUN6QywrQ0FBK0M7SUFDL0MsZUFBZSxDQUFTO0lBQ3hCLCtDQUErQztJQUMvQyxPQUFPLENBQXlCO0lBQ2hDLCtDQUErQztJQUMvQyxPQUFPLENBQXlCO0lBQ2hDLCtDQUErQztJQUMvQyxVQUFVLENBQXlDO0lBQ25ELCtDQUErQztJQUMvQyxPQUFPLENBQXlCO0lBQ2hDLCtDQUErQztJQUMvQyxPQUFPLENBQXlCO0lBQ2hDLCtDQUErQztJQUMvQyxVQUFVLENBQStDO0lBRXpELFlBQVksSUFBaUMsRUFBRSxZQUFvQztRQUMvRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLGFBQWEsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzRCxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNsQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNsQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaW1lIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERhdGVGaWx0ZXJGbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgTmd4R2xvYmFsRGVmYXVsdFZhbHVlcyB9IGZyb20gJy4uLy4uL2dsb2JhbC1jb25maWd1cmF0aW9uLXZhbHVlcyc7XG5pbXBvcnQgeyBEYXRlVXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2RhdGUudXRpbGl0aWVzJztcbmltcG9ydCB7IERyb3Bkb3duVmFsdWUgfSBmcm9tICcuLi9iYXNlL2Ryb3Bkb3duLXZhbHVlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vYmFzZS9wcm9wZXJ0eS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2UsIERhdGVSYW5nZURhdGVEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lRGF0ZURlY29yYXRvckNvbmZpZywgRGVmYXVsdERhdGVEZWNvcmF0b3JDb25maWcgfSBmcm9tICcuL2RhdGUtZGVjb3JhdG9yLmRhdGEnO1xuaW1wb3J0IHsgZ2V0Q29uZmlnVmFsdWUgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvZ2V0LWNvbmZpZy12YWx1ZS5mdW5jdGlvbic7XG5cbi8qKlxuICogVGhlIGludGVybmFsIERlZmF1bHREYXRlRGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGVmYXVsdERhdGVEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWw8RGF0ZT4gaW1wbGVtZW50cyBEZWZhdWx0RGF0ZURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5U3R5bGU6ICdkYXRlJztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbj86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlcj86IERhdGVGaWx0ZXJGbjxEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZD47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEZWZhdWx0RGF0ZURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5U3R5bGUgPSBkYXRhLmRpc3BsYXlTdHlsZTtcbiAgICAgICAgdGhpcy5tYXggPSBkYXRhLm1heDtcbiAgICAgICAgdGhpcy5taW4gPSBkYXRhLm1pbjtcbiAgICAgICAgdGhpcy5maWx0ZXIgPSBkYXRhLmZpbHRlcjtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIERhdGVSYW5nZURhdGVEZWNvcmF0b3JDb25maWcuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlUmFuZ2VEYXRlRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsPERhdGVSYW5nZT5cbiAgICBpbXBsZW1lbnRzIERhdGVSYW5nZURhdGVEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnZGF0ZXJhbmdlJztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5FbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhFbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlclN0YXJ0OiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwbGFjZWhvbGRlckVuZDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogRGF0ZVJhbmdlRGF0ZURlY29yYXRvckNvbmZpZywgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRpc3BsYXlTdHlsZSA9IGRhdGEuZGlzcGxheVN0eWxlO1xuICAgICAgICB0aGlzLm1pblN0YXJ0ID0gZGF0YS5taW5TdGFydDtcbiAgICAgICAgdGhpcy5tYXhTdGFydCA9IGRhdGEubWF4U3RhcnQ7XG4gICAgICAgIHRoaXMubWluRW5kID0gZGF0YS5taW5FbmQ7XG4gICAgICAgIHRoaXMubWF4RW5kID0gZGF0YS5tYXhFbmQ7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gZGF0YS5maWx0ZXI7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXJTdGFydCA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy5zdGFydExhYmVsLCBkYXRhLnBsYWNlaG9sZGVyU3RhcnQpO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyRW5kID0gZ2V0Q29uZmlnVmFsdWUoZ2xvYmFsQ29uZmlnLmVuZExhYmVsLCBkYXRhLnBsYWNlaG9sZGVyRW5kKTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIERhdGVUaW1lRGF0ZURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVUaW1lRGF0ZURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxEYXRlPiBpbXBsZW1lbnRzIERhdGVUaW1lRGF0ZURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5U3R5bGU6ICdkYXRldGltZSc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICB0aW1lczogRHJvcGRvd25WYWx1ZTxUaW1lIHwgdW5kZWZpbmVkPltdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGltZURpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5EYXRlPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4RGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZpbHRlckRhdGU/OiBEYXRlRmlsdGVyRm48RGF0ZSB8IG51bGwgfCB1bmRlZmluZWQ+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluVGltZT86IChkYXRlPzogRGF0ZSkgPT4gVGltZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heFRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXJUaW1lPzogKCh0aW1lOiBUaW1lKSA9PiBib29sZWFuKSB8ICgoKSA9PiBib29sZWFuKTtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVUaW1lRGF0ZURlY29yYXRvckNvbmZpZywgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRpc3BsYXlTdHlsZSA9IGRhdGEuZGlzcGxheVN0eWxlO1xuICAgICAgICB0aGlzLnRpbWVzID0gZGF0YS50aW1lcyA/PyBEYXRlVXRpbGl0aWVzLmdldERlZmF1bHRUaW1lcygpO1xuICAgICAgICB0aGlzLnRpbWVEaXNwbGF5TmFtZSA9IGdldENvbmZpZ1ZhbHVlKGdsb2JhbENvbmZpZy50aW1lTGFiZWwsIGRhdGEudGltZURpc3BsYXlOYW1lKTtcbiAgICAgICAgdGhpcy5taW5EYXRlID0gZGF0YS5taW5EYXRlO1xuICAgICAgICB0aGlzLm1heERhdGUgPSBkYXRhLm1heERhdGU7XG4gICAgICAgIHRoaXMuZmlsdGVyRGF0ZSA9IGRhdGEuZmlsdGVyRGF0ZTtcbiAgICAgICAgdGhpcy5taW5UaW1lID0gZGF0YS5taW5UaW1lO1xuICAgICAgICB0aGlzLm1heFRpbWUgPSBkYXRhLm1heFRpbWU7XG4gICAgICAgIHRoaXMuZmlsdGVyVGltZSA9IGRhdGEuZmlsdGVyVGltZTtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gWzYsIDEyLCAxMl07XG4gICAgfVxufSJdfQ==