ngx-material-entity 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/capsulation/lodash.utilities.d.ts +62 -0
- package/capsulation/reflect.utilities.d.ts +56 -0
- package/classes/base.builder.d.ts +2 -1
- package/classes/date.utilities.d.ts +16 -4
- package/classes/entity.model.d.ts +7 -1
- package/classes/entity.service.d.ts +38 -1
- package/classes/entity.utilities.d.ts +43 -16
- package/classes/file.utilities.d.ts +52 -0
- package/components/input/add-array-item-dialog-data.builder.d.ts +3 -2
- package/components/input/add-array-item-dialog-data.d.ts +2 -1
- package/components/input/array/array-date-input/array-date-input.component.d.ts +22 -0
- package/components/input/array/array-date-range-input/array-date-range-input.component.d.ts +30 -0
- package/components/input/array/array-date-time-input/array-date-time-input.component.d.ts +32 -0
- package/components/input/array/array-string-autocomplete-chips/array-string-autocomplete-chips.component.d.ts +58 -0
- package/components/input/array/array-string-chips-input/array-string-chips-input.component.d.ts +51 -0
- package/components/input/array/array-table.class.d.ts +48 -0
- package/components/input/boolean/boolean-checkbox-input/boolean-checkbox-input.component.d.ts +17 -0
- package/components/input/boolean/boolean-dropdown-input/boolean-dropdown-input.component.d.ts +17 -0
- package/components/input/boolean/boolean-toggle-input/boolean-toggle-input.component.d.ts +17 -0
- package/components/input/date/date-input/date-input.component.d.ts +21 -0
- package/components/input/date/date-range-input/date-range-input.component.d.ts +27 -0
- package/components/input/date/date-time-input/date-time-input.component.d.ts +38 -0
- package/components/input/file/file-default-input/file-default-input.component.d.ts +21 -0
- package/components/input/file/file-image-input/file-image-input.component.d.ts +30 -0
- package/components/input/file/file-input/dragDrop.directive.d.ts +32 -0
- package/components/input/file/file-input/file-input.component.d.ts +32 -0
- package/components/input/input.component.d.ts +37 -92
- package/components/input/input.module.d.ts +37 -16
- package/components/input/number/number-dropdown-input/number-dropdown-input.component.d.ts +17 -0
- package/components/input/number/number-input/number-input.component.d.ts +17 -0
- package/components/input/string/string-autocomplete-input/string-autocomplete-input.component.d.ts +25 -0
- package/components/input/string/string-dropdown-input/string-dropdown-input.component.d.ts +17 -0
- package/components/input/string/string-input/string-input.component.d.ts +17 -0
- package/components/input/string/string-textbox-input/string-textbox-input.component.d.ts +17 -0
- package/components/table/create-dialog/create-entity-dialog-data.builder.d.ts +3 -2
- package/components/table/create-dialog/create-entity-dialog-data.d.ts +2 -1
- package/components/table/create-dialog/create-entity-dialog.component.d.ts +7 -2
- package/components/table/edit-dialog/edit-dialog-data.builder.d.ts +3 -2
- package/components/table/edit-dialog/edit-entity-dialog-data.d.ts +2 -1
- package/components/table/edit-dialog/edit-entity-dialog.builder.d.ts +3 -2
- package/components/table/edit-dialog/edit-entity-dialog.component.d.ts +5 -2
- package/components/table/table-data.builder.d.ts +5 -5
- package/components/table/table-data.d.ts +6 -6
- package/components/table/table.component.d.ts +2 -1
- package/decorators/array/array-decorator-internal.data.d.ts +71 -6
- package/decorators/array/array-decorator.data.d.ts +178 -12
- package/decorators/array/array.decorator.d.ts +3 -2
- package/decorators/base/base-property.decorator.d.ts +2 -3
- package/decorators/base/decorator-types.enum.d.ts +9 -3
- package/decorators/date/date-decorator-internal.data.d.ts +2 -2
- package/decorators/date/date.decorator.d.ts +8 -0
- package/decorators/file/file-decorator-internal.data.d.ts +92 -0
- package/decorators/file/file-decorator.data.d.ts +92 -0
- package/decorators/file/file.decorator.d.ts +9 -0
- package/decorators/object/object-decorator-internal.data.d.ts +2 -2
- package/decorators/object/object-decorator.data.d.ts +3 -3
- package/decorators/object/object.decorator.d.ts +2 -1
- package/esm2020/capsulation/lodash.utilities.mjs +75 -0
- package/esm2020/capsulation/reflect.utilities.mjs +69 -0
- package/esm2020/classes/base.builder.mjs +2 -3
- package/esm2020/classes/date.utilities.mjs +33 -13
- package/esm2020/classes/entity.model.mjs +1 -1
- package/esm2020/classes/entity.service.mjs +103 -6
- package/esm2020/classes/entity.utilities.mjs +202 -71
- package/esm2020/classes/file.utilities.mjs +123 -0
- package/esm2020/components/confirm-dialog/confirm-dialog-data.builder.mjs +4 -4
- package/esm2020/components/confirm-dialog/confirm-dialog.component.mjs +3 -3
- package/esm2020/components/input/add-array-item-dialog-data.builder.mjs +2 -2
- package/esm2020/components/input/add-array-item-dialog-data.mjs +1 -1
- package/esm2020/components/input/array/array-date-input/array-date-input.component.mjs +44 -0
- package/esm2020/components/input/array/array-date-range-input/array-date-range-input.component.mjs +68 -0
- package/esm2020/components/input/array/array-date-time-input/array-date-time-input.component.mjs +65 -0
- package/esm2020/components/input/array/array-string-autocomplete-chips/array-string-autocomplete-chips.component.mjs +131 -0
- package/esm2020/components/input/array/array-string-chips-input/array-string-chips-input.component.mjs +116 -0
- package/esm2020/components/input/array/array-table.class.mjs +92 -0
- package/esm2020/components/input/boolean/boolean-checkbox-input/boolean-checkbox-input.component.mjs +38 -0
- package/esm2020/components/input/boolean/boolean-dropdown-input/boolean-dropdown-input.component.mjs +35 -0
- package/esm2020/components/input/boolean/boolean-toggle-input/boolean-toggle-input.component.mjs +38 -0
- package/esm2020/components/input/date/date-input/date-input.component.mjs +38 -0
- package/esm2020/components/input/date/date-range-input/date-range-input.component.mjs +63 -0
- package/esm2020/components/input/date/date-time-input/date-time-input.component.mjs +74 -0
- package/esm2020/components/input/file/file-default-input/file-default-input.component.mjs +39 -0
- package/esm2020/components/input/file/file-image-input/file-image-input.component.mjs +95 -0
- package/esm2020/components/input/file/file-input/dragDrop.directive.mjs +64 -0
- package/esm2020/components/input/file/file-input/file-input.component.mjs +152 -0
- package/esm2020/components/input/input.component.mjs +124 -234
- package/esm2020/components/input/input.module.mjs +66 -3
- package/esm2020/components/input/number/number-dropdown-input/number-dropdown-input.component.mjs +36 -0
- package/esm2020/components/input/number/number-input/number-input.component.mjs +34 -0
- package/esm2020/components/input/string/string-autocomplete-input/string-autocomplete-input.component.mjs +52 -0
- package/esm2020/components/input/string/string-dropdown-input/string-dropdown-input.component.mjs +36 -0
- package/esm2020/components/input/string/string-input/string-input.component.mjs +34 -0
- package/esm2020/components/input/string/string-textbox-input/string-textbox-input.component.mjs +35 -0
- package/esm2020/components/table/create-dialog/create-dialog-data.builder.mjs +2 -2
- package/esm2020/components/table/create-dialog/create-entity-dialog-data.builder.mjs +1 -1
- package/esm2020/components/table/create-dialog/create-entity-dialog-data.mjs +1 -1
- package/esm2020/components/table/create-dialog/create-entity-dialog.component.mjs +15 -8
- package/esm2020/components/table/edit-dialog/edit-dialog-data.builder.mjs +2 -2
- package/esm2020/components/table/edit-dialog/edit-entity-dialog-data.mjs +1 -1
- package/esm2020/components/table/edit-dialog/edit-entity-dialog.builder.mjs +2 -2
- package/esm2020/components/table/edit-dialog/edit-entity-dialog.component.mjs +18 -10
- package/esm2020/components/table/table-data.builder.mjs +3 -3
- package/esm2020/components/table/table-data.mjs +1 -1
- package/esm2020/components/table/table.component.mjs +21 -23
- package/esm2020/decorators/array/array-decorator-internal.data.mjs +102 -14
- package/esm2020/decorators/array/array-decorator.data.mjs +2 -2
- package/esm2020/decorators/array/array.decorator.mjs +8 -2
- package/esm2020/decorators/base/base-property.decorator.mjs +4 -3
- package/esm2020/decorators/base/decorator-types.enum.mjs +6 -1
- package/esm2020/decorators/base/property-decorator-internal.data.mjs +10 -10
- package/esm2020/decorators/base/property-decorator.data.mjs +1 -1
- package/esm2020/decorators/boolean/boolean-decorator-internal.data.mjs +3 -3
- package/esm2020/decorators/date/date-decorator-internal.data.mjs +5 -5
- package/esm2020/decorators/date/date.decorator.mjs +21 -0
- package/esm2020/decorators/file/file-decorator-internal.data.mjs +98 -0
- package/esm2020/decorators/file/file-decorator.data.mjs +7 -0
- package/esm2020/decorators/file/file.decorator.mjs +22 -0
- package/esm2020/decorators/object/object-decorator-internal.data.mjs +1 -1
- package/esm2020/decorators/object/object-decorator.data.mjs +1 -1
- package/esm2020/decorators/object/object.decorator.mjs +1 -1
- package/esm2020/decorators/string/string.decorator.mjs +1 -1
- package/esm2020/mocks/placeholder-data.png.mjs +3 -0
- package/esm2020/public-api.mjs +6 -1
- package/fesm2015/ngx-material-entity.mjs +2452 -459
- package/fesm2015/ngx-material-entity.mjs.map +1 -1
- package/fesm2020/ngx-material-entity.mjs +2370 -464
- package/fesm2020/ngx-material-entity.mjs.map +1 -1
- package/mocks/placeholder-data.png.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +5 -0
|
@@ -53,21 +53,19 @@ export class NgxMatEntityTableComponent {
|
|
|
53
53
|
return this.data.baseData.displayColumns.find((dp) => dp.displayName === header)?.value(entity);
|
|
54
54
|
};
|
|
55
55
|
this.dataSource.sort = this.sort;
|
|
56
|
-
|
|
57
|
-
this.
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
};
|
|
63
|
-
}
|
|
56
|
+
this.dataSource.filterPredicate = (entity, filter) => {
|
|
57
|
+
const searchStr = this.data.baseData.searchString(entity);
|
|
58
|
+
const formattedSearchString = searchStr.toLowerCase();
|
|
59
|
+
const formattedFilterString = filter.toLowerCase();
|
|
60
|
+
return formattedSearchString.includes(formattedFilterString);
|
|
61
|
+
};
|
|
64
62
|
this.dataSource.filter = this.filter;
|
|
65
63
|
this.dataSource.paginator = this.paginator;
|
|
66
64
|
this.entityService.entitiesSubject.pipe(takeUntil(this.onDestroy)).subscribe((entities) => {
|
|
67
65
|
this.dataSource.data = entities;
|
|
68
66
|
this.selection.clear();
|
|
69
67
|
});
|
|
70
|
-
this.entityService.read();
|
|
68
|
+
void this.entityService.read();
|
|
71
69
|
}
|
|
72
70
|
/**
|
|
73
71
|
* Edits an entity. This either calls the edit-Method provided by the user or uses a default edit-dialog.
|
|
@@ -84,11 +82,11 @@ export class NgxMatEntityTableComponent {
|
|
|
84
82
|
this.data.baseData.edit(new this.data.baseData.EntityClass(entity));
|
|
85
83
|
}
|
|
86
84
|
else {
|
|
87
|
-
this.editDefault(new this.data.baseData.EntityClass(entity));
|
|
85
|
+
void this.editDefault(new this.data.baseData.EntityClass(entity));
|
|
88
86
|
}
|
|
89
87
|
}
|
|
90
88
|
}
|
|
91
|
-
editDefault(entity) {
|
|
89
|
+
async editDefault(entity) {
|
|
92
90
|
const inputDialogData = {
|
|
93
91
|
entity: entity,
|
|
94
92
|
EntityServiceClass: this.data.baseData.EntityServiceClass,
|
|
@@ -96,19 +94,18 @@ export class NgxMatEntityTableComponent {
|
|
|
96
94
|
editDialogData: this.data.editDialogData
|
|
97
95
|
};
|
|
98
96
|
const dialogData = new EditEntityDialogDataBuilder(inputDialogData).getResult();
|
|
99
|
-
firstValueFrom(this.dialog.open(NgxMatEntityEditDialogComponent, {
|
|
97
|
+
const res = await firstValueFrom(this.dialog.open(NgxMatEntityEditDialogComponent, {
|
|
100
98
|
data: dialogData,
|
|
101
99
|
minWidth: '60%',
|
|
102
100
|
autoFocus: false,
|
|
103
101
|
restoreFocus: false
|
|
104
|
-
}).afterClosed())
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
});
|
|
102
|
+
}).afterClosed());
|
|
103
|
+
if (res === 0) {
|
|
104
|
+
const data = this.dataSource.data;
|
|
105
|
+
data[this.dataSource.data.findIndex((e) => e[this.entityService.idKey] === entity[this.entityService.idKey])] = entity;
|
|
106
|
+
this.dataSource.data = data;
|
|
107
|
+
this.selection.clear();
|
|
108
|
+
}
|
|
112
109
|
}
|
|
113
110
|
/**
|
|
114
111
|
* Creates a new Entity. This either calls the create-Method provided by the user or uses a default create-dialog.
|
|
@@ -149,7 +146,8 @@ export class NgxMatEntityTableComponent {
|
|
|
149
146
|
*/
|
|
150
147
|
runMultiAction(action) {
|
|
151
148
|
if (!action.requireConfirmDialog || !action.requireConfirmDialog(this.selection.selected)) {
|
|
152
|
-
|
|
149
|
+
this.confirmRunMultiAction(action);
|
|
150
|
+
return;
|
|
153
151
|
}
|
|
154
152
|
const dialogData = new ConfirmDialogDataBuilder(action.confirmDialogData)
|
|
155
153
|
.withDefault('text', [`Do you really want to run this action on ${this.selection.selected.length} entries?`])
|
|
@@ -192,7 +190,7 @@ export class NgxMatEntityTableComponent {
|
|
|
192
190
|
this.selection.clear();
|
|
193
191
|
}
|
|
194
192
|
else {
|
|
195
|
-
this.dataSource.data.forEach(
|
|
193
|
+
this.dataSource.data.forEach(row => this.selection.select(row));
|
|
196
194
|
}
|
|
197
195
|
}
|
|
198
196
|
/**
|
|
@@ -237,4 +235,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
237
235
|
type: ViewChild,
|
|
238
236
|
args: ['filter', { static: true }]
|
|
239
237
|
}] } });
|
|
240
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbkcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFHN0YsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEcsT0FBTyxFQUFFLHdCQUF3QixFQUE2QixNQUFNLCtDQUErQyxDQUFDO0FBQ3BILE9BQU8sRUFBRSw2QkFBNkIsRUFBa0MsTUFBTSxtREFBbUQsQ0FBQztBQUNsSSxPQUFPLEVBQUUsZ0JBQWdCLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxF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QWE7UUFDVCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVDLE9BQU8sV0FBVyxLQUFLLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsS0FBWTtRQUNwQixNQUFNLFdBQVcsR0FBSSxLQUFLLENBQUMsTUFBMkIsQ0FBQyxLQUFLLENBQUM7UUFDN0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlELENBQUM7O3dIQTlOUSwwQkFBMEI7NEdBQTFCLDBCQUEwQiwySUFZeEIsWUFBWSxxRkFDWixPQUFPLCtKQzFDdEIsODNHQW9FQTs0RkR2Q2EsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLHNCQUFzQjt1SEFVaEMsU0FBUztzQkFEUixLQUFLO2dCQU9xQyxTQUFTO3NCQUFuRCxTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0gsSUFBSTtzQkFBekMsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNHLE1BQU07c0JBQTVDLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgTWF0U29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHsgTWF0VGFibGVEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgRW50aXR5U2VydmljZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20sIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE5neE1hdEVudGl0eUNyZWF0ZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY3JlYXRlLWRpYWxvZy9jcmVhdGUtZW50aXR5LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4TWF0RW50aXR5RWRpdERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vZWRpdC1kaWFsb2cvZWRpdC1lbnRpdHktZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFZGl0RW50aXR5RGlhbG9nRGF0YSB9IGZyb20gJy4vZWRpdC1kaWFsb2cvZWRpdC1lbnRpdHktZGlhbG9nLWRhdGEnO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3RBY3Rpb24sIFRhYmxlRGF0YSB9IGZyb20gJy4vdGFibGUtZGF0YSc7XG5pbXBvcnQgeyBOZ3hNYXRFbnRpdHlDb25maXJtRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhQnVpbGRlciwgQ29uZmlybURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4uL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhQnVpbGRlciwgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUludGVybmFsIH0gZnJvbSAnLi9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1lbnRpdHktZGlhbG9nLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBUYWJsZURhdGFCdWlsZGVyLCBUYWJsZURhdGFJbnRlcm5hbCB9IGZyb20gJy4vdGFibGUtZGF0YS5idWlsZGVyJztcbmltcG9ydCB7IEVkaXRFbnRpdHlEaWFsb2dEYXRhQnVpbGRlciwgRWRpdEVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4uL3RhYmxlL2VkaXQtZGlhbG9nL2VkaXQtZW50aXR5LWRpYWxvZy5idWlsZGVyJztcblxuLyoqXG4gKiBHZW5lcmF0ZXMgYSBmdWxseSBmdW5jdGlvbmFsIHRhYmxlIGZvciBkaXNwbGF5aW5nLCBjcmVhdGluZywgdXBkYXRpbmcgYW5kIGRlbGV0aW5nIGVudGl0aWVzXG4gKiBiYXNlZCBvbiB0aGUgY29uZmlndXJhdGlvbiBwYXNzZWQgaW4gdGhlIEBJbnB1dCBcInRhYmxlRGF0YVwiLlxuICpcbiAqIEl0IG9mZmVycyBhIGxvdCBvZiBjdXN0b21pemF0aW9uIG9wdGlvbnMgd2hpY2ggY2FuIGJlIGZvdW5kIGluIFwiVGFibGVEYXRhXCIuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd4LW1hdC1lbnRpdHktdGFibGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hNYXRFbnRpdHlUYWJsZUNvbXBvbmVudDxFbnRpdHlUeXBlIGV4dGVuZHMgb2JqZWN0PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIC8qKlxuICAgICAqIFRoZSBjb25maWd1cmF0aW9uIGZvciB0aGUgY29tcG9uZW50LlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFibGVEYXRhITogVGFibGVEYXRhPEVudGl0eVR5cGU+O1xuXG4gICAgZGF0YSE6IFRhYmxlRGF0YUludGVybmFsPEVudGl0eVR5cGU+O1xuXG4gICAgcHJpdmF0ZSBlbnRpdHlTZXJ2aWNlITogRW50aXR5U2VydmljZTxFbnRpdHlUeXBlPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9uRGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IsIHsgc3RhdGljOiB0cnVlIH0pIHBhZ2luYXRvciE6IE1hdFBhZ2luYXRvcjtcbiAgICBAVmlld0NoaWxkKE1hdFNvcnQsIHsgc3RhdGljOiB0cnVlIH0pIHNvcnQhOiBNYXRTb3J0O1xuICAgIEBWaWV3Q2hpbGQoJ2ZpbHRlcicsIHsgc3RhdGljOiB0cnVlIH0pIGZpbHRlciE6IHN0cmluZztcbiAgICBkaXNwbGF5ZWRDb2x1bW5zITogc3RyaW5nW107XG4gICAgZGF0YVNvdXJjZTogTWF0VGFibGVEYXRhU291cmNlPEVudGl0eVR5cGU+ID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZSgpO1xuICAgIHNlbGVjdGlvbjogU2VsZWN0aW9uTW9kZWw8RW50aXR5VHlwZT4gPSBuZXcgU2VsZWN0aW9uTW9kZWw8RW50aXR5VHlwZT4odHJ1ZSwgW10pO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZywgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHVwIGFsbCB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIHRhYmxlIGFuZCB0aGUgRW50aXR5U2VydmljZS5cbiAgICAgKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhID0gbmV3IFRhYmxlRGF0YUJ1aWxkZXIodGhpcy50YWJsZURhdGEpLmdldFJlc3VsdCgpO1xuXG4gICAgICAgIHRoaXMuZW50aXR5U2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KHRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlTZXJ2aWNlQ2xhc3MpIGFzIEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT47XG5cbiAgICAgICAgY29uc3QgZ2l2ZW5EaXNwbGF5Q29sdW1ucyA9IHRoaXMuZGF0YS5iYXNlRGF0YS5kaXNwbGF5Q29sdW1ucy5tYXAoKHYpID0+IHYuZGlzcGxheU5hbWUpO1xuICAgICAgICBpZiAodGhpcy5kYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyA9IFsnc2VsZWN0J10uY29uY2F0KGdpdmVuRGlzcGxheUNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zID0gZ2l2ZW5EaXNwbGF5Q29sdW1ucztcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5zb3J0aW5nRGF0YUFjY2Vzc29yID0gKGVudGl0eTogRW50aXR5VHlwZSwgaGVhZGVyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRhdGEuYmFzZURhdGEuZGlzcGxheUNvbHVtbnMuZmluZCgoZHApID0+IGRwLmRpc3BsYXlOYW1lID09PSBoZWFkZXIpPy52YWx1ZShlbnRpdHkpIGFzIHN0cmluZztcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlLnNvcnQgPSB0aGlzLnNvcnQ7XG4gICAgICAgIGlmICh0aGlzLmRhdGEuYmFzZURhdGEuc2VhcmNoU3RyaW5nKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyUHJlZGljYXRlID0gKGVudGl0eTogRW50aXR5VHlwZSwgZmlsdGVyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzZWFyY2hTdHIgPSB0aGlzLmRhdGEuYmFzZURhdGEuc2VhcmNoU3RyaW5nKGVudGl0eSkgO1xuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZFNlYXJjaFN0cmluZyA9IHNlYXJjaFN0ci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZEZpbHRlclN0cmluZyA9IGZpbHRlci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgICAgIHJldHVybiBmb3JtYXR0ZWRTZWFyY2hTdHJpbmcuaW5jbHVkZXMoZm9ybWF0dGVkRmlsdGVyU3RyaW5nKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kYXRhU291cmNlLmZpbHRlciA9IHRoaXMuZmlsdGVyO1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UucGFnaW5hdG9yID0gdGhpcy5wYWdpbmF0b3I7XG5cbiAgICAgICAgdGhpcy5lbnRpdHlTZXJ2aWNlLmVudGl0aWVzU3ViamVjdC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSkpLnN1YnNjcmliZSgoZW50aXRpZXMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gZW50aXRpZXM7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5jbGVhcigpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5lbnRpdHlTZXJ2aWNlLnJlYWQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFZGl0cyBhbiBlbnRpdHkuIFRoaXMgZWl0aGVyIGNhbGxzIHRoZSBlZGl0LU1ldGhvZCBwcm92aWRlZCBieSB0aGUgdXNlciBvciB1c2VzIGEgZGVmYXVsdCBlZGl0LWRpYWxvZy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBlbnRpdHkgLSBUaGUgZW50aXR5IHRoYXQgc2hvdWxkIGJlIHVwZGF0ZWQuXG4gICAgICogQHRocm93cyBXaGVuIG5vIEVudGl0eUNsYXNzIHdhcyBwcm92aWRlZCwgYXMgYSBuZXcgY2FsbCBpcyBuZWVkZWQgdG8gaW5pdGlhbGl6ZSBtZXRhZGF0YS5cbiAgICAgKi9cbiAgICBlZGl0RW50aXR5KGVudGl0eTogRW50aXR5VHlwZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kYXRhLmJhc2VEYXRhLmFsbG93RWRpdChlbnRpdHkpKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlDbGFzcykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gXCJFbnRpdHlDbGFzc1wiIHNwZWNpZmllZCBmb3IgdGhpcyB0YWJsZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuZGF0YS5iYXNlRGF0YS5lZGl0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLmJhc2VEYXRhLmVkaXQobmV3IHRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlDbGFzcyhlbnRpdHkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZWRpdERlZmF1bHQobmV3IHRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlDbGFzcyhlbnRpdHkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZWRpdERlZmF1bHQoZW50aXR5OiBFbnRpdHlUeXBlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlucHV0RGlhbG9nRGF0YTogRWRpdEVudGl0eURpYWxvZ0RhdGE8RW50aXR5VHlwZT4gPSB7XG4gICAgICAgICAgICBlbnRpdHk6IGVudGl0eSxcbiAgICAgICAgICAgIEVudGl0eVNlcnZpY2VDbGFzczogdGhpcy5kYXRhLmJhc2VEYXRhLkVudGl0eVNlcnZpY2VDbGFzcyxcbiAgICAgICAgICAgIGFsbG93RGVsZXRlOiB0aGlzLmRhdGEuYmFzZURhdGEuYWxsb3dEZWxldGUsXG4gICAgICAgICAgICBlZGl0RGlhbG9nRGF0YTogdGhpcy5kYXRhLmVkaXREaWFsb2dEYXRhXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZGlhbG9nRGF0YTogRWRpdEVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPiA9IG5ldyBFZGl0RW50aXR5RGlhbG9nRGF0YUJ1aWxkZXIoaW5wdXREaWFsb2dEYXRhKS5nZXRSZXN1bHQoKTtcbiAgICAgICAgZmlyc3RWYWx1ZUZyb20oXG4gICAgICAgICAgICB0aGlzLmRpYWxvZy5vcGVuKE5neE1hdEVudGl0eUVkaXREaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICBkYXRhOiBkaWFsb2dEYXRhLFxuICAgICAgICAgICAgICAgIG1pbldpZHRoOiAnNjAlJyxcbiAgICAgICAgICAgICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RvcmVGb2N1czogZmFsc2VcbiAgICAgICAgICAgIH0pLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgKS50aGVuKChyZXM6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgaWYgKHJlcyA9PT0gMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YTtcbiAgICAgICAgICAgICAgICBkYXRhW3RoaXMuZGF0YVNvdXJjZS5kYXRhLmZpbmRJbmRleCgoZSkgPT4gZVt0aGlzLmVudGl0eVNlcnZpY2UuaWRLZXldID09PSBlbnRpdHlbdGhpcy5lbnRpdHlTZXJ2aWNlLmlkS2V5XSldID0gZW50aXR5O1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gZGF0YTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5jbGVhcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgbmV3IEVudGl0eS4gVGhpcyBlaXRoZXIgY2FsbHMgdGhlIGNyZWF0ZS1NZXRob2QgcHJvdmlkZWQgYnkgdGhlIHVzZXIgb3IgdXNlcyBhIGRlZmF1bHQgY3JlYXRlLWRpYWxvZy5cbiAgICAgKlxuICAgICAqIEB0aHJvd3MgV2hlbiBubyBFbnRpdHlDbGFzcyB3YXMgcHJvdmlkZWQsIGFzIGEgbmV3IGNhbGwgaXMgbmVlZGVkIHRvIGluaXRpYWxpemUgbWV0YWRhdGEuXG4gICAgICovXG4gICAgY3JlYXRlRW50aXR5KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kYXRhLmJhc2VEYXRhLmFsbG93Q3JlYXRlKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlDbGFzcykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gXCJFbnRpdHlDbGFzc1wiIHNwZWNpZmllZCBmb3IgdGhpcyB0YWJsZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuZGF0YS5iYXNlRGF0YS5jcmVhdGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGEuYmFzZURhdGEuY3JlYXRlKG5ldyB0aGlzLmRhdGEuYmFzZURhdGEuRW50aXR5Q2xhc3MoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZURlZmF1bHQobmV3IHRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlDbGFzcygpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlRGVmYXVsdChlbnRpdHk6IEVudGl0eVR5cGUpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGlhbG9nRGF0YTogQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUludGVybmFsPEVudGl0eVR5cGU+ID0gbmV3IENyZWF0ZUVudGl0eURpYWxvZ0RhdGFCdWlsZGVyKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGVudGl0eTogZW50aXR5LFxuICAgICAgICAgICAgICAgIEVudGl0eVNlcnZpY2VDbGFzczogdGhpcy5kYXRhLmJhc2VEYXRhLkVudGl0eVNlcnZpY2VDbGFzcyxcbiAgICAgICAgICAgICAgICBjcmVhdGVEaWFsb2dEYXRhOiB0aGlzLmRhdGEuY3JlYXRlRGlhbG9nRGF0YVxuICAgICAgICAgICAgfVxuICAgICAgICApLmdldFJlc3VsdCgpO1xuICAgICAgICB0aGlzLmRpYWxvZy5vcGVuKE5neE1hdEVudGl0eUNyZWF0ZURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgZGF0YTogZGlhbG9nRGF0YSxcbiAgICAgICAgICAgIG1pbldpZHRoOiAnNjAlJyxcbiAgICAgICAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgICAgICAgICByZXN0b3JlRm9jdXM6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJ1bnMgdGhlIE11bHRpQWN0aW9uIGZvciBhbGwgc2VsZWN0ZWQgZW50cmllcy5cbiAgICAgKiBBbHNvIGhhbmRsZXMgY29uZmlybWF0aW9uIHdpdGggYW4gYWRkaXRpb25hbCBkaWFsb2cgaWYgY29uZmlndXJlZC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBhY3Rpb24gLSBUaGUgTXVsdGlBY3Rpb24gdG8gcnVuLlxuICAgICAqL1xuICAgIHJ1bk11bHRpQWN0aW9uKGFjdGlvbjogTXVsdGlTZWxlY3RBY3Rpb248RW50aXR5VHlwZT4pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFhY3Rpb24ucmVxdWlyZUNvbmZpcm1EaWFsb2cgfHwgIWFjdGlvbi5yZXF1aXJlQ29uZmlybURpYWxvZyh0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbmZpcm1SdW5NdWx0aUFjdGlvbihhY3Rpb24pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGRpYWxvZ0RhdGE6IENvbmZpcm1EaWFsb2dEYXRhSW50ZXJuYWwgPSBuZXcgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyKGFjdGlvbi5jb25maXJtRGlhbG9nRGF0YSlcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGV4dCcsIFtgRG8geW91IHJlYWxseSB3YW50IHRvIHJ1biB0aGlzIGFjdGlvbiBvbiAke3RoaXMuc2VsZWN0aW9uLnNlbGVjdGVkLmxlbmd0aH0gZW50cmllcz9gXSlcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGl0bGUnLCBhY3Rpb24uZGlzcGxheU5hbWUpXG4gICAgICAgICAgICAuZ2V0UmVzdWx0KCk7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oTmd4TWF0RW50aXR5Q29uZmlybURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgZGF0YTogZGlhbG9nRGF0YSxcbiAgICAgICAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgICAgICAgICByZXN0b3JlRm9jdXM6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlczogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVzID09PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maXJtUnVuTXVsdGlBY3Rpb24oYWN0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb25maXJtUnVuTXVsdGlBY3Rpb24oYWN0aW9uOiBNdWx0aVNlbGVjdEFjdGlvbjxFbnRpdHlUeXBlPik6IHZvaWQge1xuICAgICAgICBhY3Rpb24uYWN0aW9uKHRoaXMuc2VsZWN0aW9uLnNlbGVjdGVkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgYW4gTXVsdGlBY3Rpb24gaXMgZGlzYWJsZWQgKGUuZy4gQmVjYXVzZSBubyBlbnRyaWVzIGhhdmUgYmVlbiBzZWxlY3RlZCkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYWN0aW9uIC0gVGhlIE11bHRpQWN0aW9uIHRvIGNoZWNrLlxuICAgICAqIEByZXR1cm5zIFdoZXRoZXIgb3Igbm90IHRoZSBBY3Rpb24gY2FuIGJlIHVzZWQuXG4gICAgICovXG4gICAgbXVsdGlBY3Rpb25EaXNhYmxlZChhY3Rpb246IE11bHRpU2VsZWN0QWN0aW9uPEVudGl0eVR5cGU+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYWN0aW9uLmVuYWJsZWQ/Lih0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZCkgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVG9nZ2xlcyBhbGwgZW50cmllcyBpbiB0aGUgdGFibGUuXG4gICAgICovXG4gICAgbWFzdGVyVG9nZ2xlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0FsbFNlbGVjdGVkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YS5mb3JFYWNoKChyb3cpID0+IHRoaXMuc2VsZWN0aW9uLnNlbGVjdChyb3cpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiBhbGwgZW50cmllcyBpbiB0aGUgdGFibGUgaGF2ZSBiZWVuIHNlbGVjdGVkLlxuICAgICAqIFRoaXMgaXMgbmVlZGVkIHRvIGRpc3BsYXkgdGhlIFwibWFzdGVyVG9nZ2xlXCItY2hlY2tib3ggY29ycmVjdGx5LlxuICAgICAqXG4gICAgICogQHJldHVybnMgV2hldGhlciBvciBub3QgYWxsIGVudHJpZXMgaW4gdGhlIHRhYmxlIGhhdmUgYmVlbiBzZWxlY3RlZC5cbiAgICAgKi9cbiAgICBpc0FsbFNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBudW1TZWxlY3RlZCA9IHRoaXMuc2VsZWN0aW9uLnNlbGVjdGVkLmxlbmd0aDtcbiAgICAgICAgY29uc3QgbnVtUm93cyA9IHRoaXMuZGF0YVNvdXJjZS5kYXRhLmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIG51bVNlbGVjdGVkID09PSBudW1Sb3dzO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uRGVzdHJveS5uZXh0KHVuZGVmaW5lZCk7XG4gICAgICAgIHRoaXMub25EZXN0cm95LmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQXBwbGllcyB0aGUgc2VhcmNoIGlucHV0IHRvIGZpbHRlciB0aGUgdGFibGUgZW50cmllcy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBldmVudCAtIFRoZSBrZXl1cC1ldmVudCB3aGljaCBjb250YWlucyB0aGUgc2VhcmNoLXN0cmluZyBvZiB0aGUgdXNlci5cbiAgICAgKi9cbiAgICBhcHBseUZpbHRlcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmlsdGVyVmFsdWUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlO1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyID0gZmlsdGVyVmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gICAgfVxufSIsIjxoMSBjbGFzcz1cInRpdGxlXCI+e3tkYXRhLmJhc2VEYXRhLnRpdGxlfX08L2gxPlxuXG48ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiY29sLWxnLTggY29sLW1kLTYgY29sLXNtLTEyXCI+XG4gICAgICAgIDxtYXQtbGFiZWw+e3tkYXRhLmJhc2VEYXRhLnNlYXJjaExhYmVsfX08L21hdC1sYWJlbD5cbiAgICAgICAgPGlucHV0IG1hdElucHV0IChrZXl1cCk9XCJhcHBseUZpbHRlcigkZXZlbnQpXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9ucy5sZW5ndGhcIlxuICAgICAgICBbY2xhc3MuY29sLWxnLTJdPVwiZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZVwiXG4gICAgICAgIFtjbGFzcy5jb2wtbGctNF09XCIhZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZVwiXG4gICAgICAgIFtjbGFzcy5jb2wtbWQtM109XCJkYXRhLmJhc2VEYXRhLmFsbG93Q3JlYXRlXCJcbiAgICAgICAgW2NsYXNzLmNvbC1tZC02XT1cIiFkYXRhLmJhc2VEYXRhLmFsbG93Q3JlYXRlXCJcbiAgICAgICAgW2NsYXNzLmNvbC1zbS02XT1cImRhdGEuYmFzZURhdGEuYWxsb3dDcmVhdGVcIlxuICAgICAgICBbY2xhc3MuY29sLXNtLTEyXT1cIiFkYXRhLmJhc2VEYXRhLmFsbG93Q3JlYXRlXCJcbiAgICA+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhY3Rpb25zLWJ1dHRvblwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCIgbWF0LXJhaXNlZC1idXR0b24+XG4gICAgICAgICAgICB7e2RhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RMYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIj5cbiAgICAgICAgPGJ1dHRvbiAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zXCIgW2Rpc2FibGVkXT1cIm11bHRpQWN0aW9uRGlzYWJsZWQoYWN0aW9uKVwiIChjbGljayk9XCJydW5NdWx0aUFjdGlvbihhY3Rpb24pXCIgbWF0LW1lbnUtaXRlbT5cbiAgICAgICAgICAgIHt7YWN0aW9uLmRpc3BsYXlOYW1lfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9tYXQtbWVudT5cblxuICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJkYXRhLmJhc2VEYXRhLmFsbG93Q3JlYXRlXCJcbiAgICAgICAgW2NsYXNzLmNvbC1sZy0yXT1cImRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zLmxlbmd0aFwiXG4gICAgICAgIFtjbGFzcy5jb2wtbGctNF09XCIhZGF0YS5iYXNlRGF0YS5tdWx0aVNlbGVjdEFjdGlvbnMubGVuZ3RoXCJcbiAgICAgICAgW2NsYXNzLmNvbC1tZC0zXT1cImRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zLmxlbmd0aFwiXG4gICAgICAgIFtjbGFzcy5jb2wtbWQtNl09XCIhZGF0YS5iYXNlRGF0YS5tdWx0aVNlbGVjdEFjdGlvbnMubGVuZ3RoXCJcbiAgICAgICAgW2NsYXNzLmNvbC1zbS02XT1cImRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zLmxlbmd0aFwiXG4gICAgICAgIFtjbGFzcy5jb2wtc20tMTJdPVwiIWRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zLmxlbmd0aFwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY3JlYXRlLWJ1dHRvblwiIChjbGljayk9XCJjcmVhdGVFbnRpdHkoKVwiIG1hdC1yYWlzZWQtYnV0dG9uPlxuICAgICAgICAgICAge3tkYXRhLmJhc2VEYXRhLmNyZWF0ZUJ1dHRvbkxhYmVsfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejhcIj5cbiAgICA8bWF0LXRhYmxlICpuZ0lmPVwiZGF0YVNvdXJjZVwiIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIiBtYXRTb3J0PlxuICAgICAgICA8IS0tIHNlbGVjdCBDb2x1bW4gLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwic2VsZWN0XCI+XG4gICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPlxuICAgICAgICAgICAgICAgIDxtYXQtY2hlY2tib3ggKGNoYW5nZSk9XCIkZXZlbnQgPyBtYXN0ZXJUb2dnbGUoKSA6IG51bGxcIiBbY2hlY2tlZF09XCJzZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiBpc0FsbFNlbGVjdGVkKClcIiBbaW5kZXRlcm1pbmF0ZV09XCJzZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiAhaXNBbGxTZWxlY3RlZCgpXCI+IDwvbWF0LWNoZWNrYm94PlxuICAgICAgICAgICAgPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgbW9kdWxlXCIgY2xhc3M9XCJtb2R1bGVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWNoZWNrYm94IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiAoY2hhbmdlKT1cIiRldmVudCA/IHNlbGVjdGlvbi50b2dnbGUobW9kdWxlKSA6IG51bGxcIiBbY2hlY2tlZF09XCJzZWxlY3Rpb24uaXNTZWxlY3RlZChtb2R1bGUpXCI+IDwvbWF0LWNoZWNrYm94PlxuICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZENvbCBvZiBkYXRhLmJhc2VEYXRhLmRpc3BsYXlDb2x1bW5zXCIgW21hdENvbHVtbkRlZl09XCJkQ29sLmRpc3BsYXlOYW1lXCI+XG4gICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlcj5cbiAgICAgICAgICAgICAgICB7e2RDb2wuZGlzcGxheU5hbWV9fVxuICAgICAgICAgICAgPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICA8bWF0LWNlbGwgY2xhc3M9XCJlbnRpdHlcIiBbY2xhc3MuZW5hYmxlZF09XCJkYXRhLmJhc2VEYXRhLmFsbG93RWRpdChlbnRpdHkpXCIgKGNsaWNrKT1cImVkaXRFbnRpdHkoZW50aXR5KVwiICptYXRDZWxsRGVmPVwibGV0IGVudGl0eVwiPlxuICAgICAgICAgICAgICAgIHt7ZENvbC52YWx1ZShlbnRpdHkpfX1cbiAgICAgICAgICAgIDwvbWF0LWNlbGw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiPjwvbWF0LWhlYWRlci1yb3c+XG4gICAgICAgIDxtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zXCI+PC9tYXQtcm93PlxuICAgIDwvbWF0LXRhYmxlPlxuXG4gICAgPG1hdC1wYWdpbmF0b3IgKm5nSWY9XCJkYXRhU291cmNlXCIgaWQ9XCJwYWdpbmF0b3JcIiBbbGVuZ3RoXT1cImRhdGFTb3VyY2UuZmlsdGVyZWREYXRhLmxlbmd0aFwiIFtwYWdlSW5kZXhdPVwiMFwiIFtwYWdlU2l6ZV09XCIxMFwiIFtwYWdlU2l6ZU9wdGlvbnNdPVwiWzUsIDEwLCAyNSwgNTBdXCI+IDwvbWF0LXBhZ2luYXRvcj5cbjwvZGl2PlxuIl19
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbkcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFHN0YsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEcsT0FBTyxFQUFFLHdCQUF3QixFQUE2QixNQUFNLCtDQUErQyxDQUFDO0FBQ3BILE9BQU8sRUFBRSw2QkFBNkIsRUFBa0MsTUFBTSxtREFBbUQsQ0FBQztBQUNsSSxPQUFPLEVBQUUsZ0JBQWdCLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxF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QUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVDLE9BQU8sV0FBVyxLQUFLLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsS0FBWTtRQUNwQixNQUFNLFdBQVcsR0FBSSxLQUFLLENBQUMsTUFBMkIsQ0FBQyxLQUFLLENBQUM7UUFDN0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlELENBQUM7O3dIQTVOUSwwQkFBMEI7NEdBQTFCLDBCQUEwQiwySUFZeEIsWUFBWSxxRkFDWixPQUFPLCtKQzNDdEIsODNHQW9FQTs0RkR0Q2EsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLHNCQUFzQjt1SEFVaEMsU0FBUztzQkFEUixLQUFLO2dCQU9xQyxTQUFTO3NCQUFuRCxTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0gsSUFBSTtzQkFBekMsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNHLE1BQU07c0JBQTVDLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgTWF0U29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHsgTWF0VGFibGVEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgRW50aXR5U2VydmljZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20sIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE5neE1hdEVudGl0eUNyZWF0ZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY3JlYXRlLWRpYWxvZy9jcmVhdGUtZW50aXR5LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4TWF0RW50aXR5RWRpdERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vZWRpdC1kaWFsb2cvZWRpdC1lbnRpdHktZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFZGl0RW50aXR5RGlhbG9nRGF0YSB9IGZyb20gJy4vZWRpdC1kaWFsb2cvZWRpdC1lbnRpdHktZGlhbG9nLWRhdGEnO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3RBY3Rpb24sIFRhYmxlRGF0YSB9IGZyb20gJy4vdGFibGUtZGF0YSc7XG5pbXBvcnQgeyBOZ3hNYXRFbnRpdHlDb25maXJtRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhQnVpbGRlciwgQ29uZmlybURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4uL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhQnVpbGRlciwgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUludGVybmFsIH0gZnJvbSAnLi9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1lbnRpdHktZGlhbG9nLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBUYWJsZURhdGFCdWlsZGVyLCBUYWJsZURhdGFJbnRlcm5hbCB9IGZyb20gJy4vdGFibGUtZGF0YS5idWlsZGVyJztcbmltcG9ydCB7IEVkaXRFbnRpdHlEaWFsb2dEYXRhQnVpbGRlciwgRWRpdEVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4uL3RhYmxlL2VkaXQtZGlhbG9nL2VkaXQtZW50aXR5LWRpYWxvZy5idWlsZGVyJztcbmltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuXG4vKipcbiAqIEdlbmVyYXRlcyBhIGZ1bGx5IGZ1bmN0aW9uYWwgdGFibGUgZm9yIGRpc3BsYXlpbmcsIGNyZWF0aW5nLCB1cGRhdGluZyBhbmQgZGVsZXRpbmcgZW50aXRpZXNcbiAqIGJhc2VkIG9uIHRoZSBjb25maWd1cmF0aW9uIHBhc3NlZCBpbiB0aGUgQElucHV0IFwidGFibGVEYXRhXCIuXG4gKlxuICogSXQgb2ZmZXJzIGEgbG90IG9mIGN1c3RvbWl6YXRpb24gb3B0aW9ucyB3aGljaCBjYW4gYmUgZm91bmQgaW4gXCJUYWJsZURhdGFcIi5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3gtbWF0LWVudGl0eS10YWJsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE5neE1hdEVudGl0eVRhYmxlQ29tcG9uZW50PEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHRhYmxlRGF0YSE6IFRhYmxlRGF0YTxFbnRpdHlUeXBlPjtcblxuICAgIGRhdGEhOiBUYWJsZURhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPjtcblxuICAgIHByaXZhdGUgZW50aXR5U2VydmljZSE6IEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT47XG4gICAgcHJpdmF0ZSByZWFkb25seSBvbkRlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIEBWaWV3Q2hpbGQoTWF0UGFnaW5hdG9yLCB7IHN0YXRpYzogdHJ1ZSB9KSBwYWdpbmF0b3IhOiBNYXRQYWdpbmF0b3I7XG4gICAgQFZpZXdDaGlsZChNYXRTb3J0LCB7IHN0YXRpYzogdHJ1ZSB9KSBzb3J0ITogTWF0U29ydDtcbiAgICBAVmlld0NoaWxkKCdmaWx0ZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBmaWx0ZXIhOiBzdHJpbmc7XG4gICAgZGlzcGxheWVkQ29sdW1ucyE6IHN0cmluZ1tdO1xuICAgIGRhdGFTb3VyY2U6IE1hdFRhYmxlRGF0YVNvdXJjZTxFbnRpdHlUeXBlPiA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoKTtcbiAgICBzZWxlY3Rpb246IFNlbGVjdGlvbk1vZGVsPEVudGl0eVR5cGU+ID0gbmV3IFNlbGVjdGlvbk1vZGVsPEVudGl0eVR5cGU+KHRydWUsIFtdKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB1cCBhbGwgdGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSB0YWJsZSBhbmQgdGhlIEVudGl0eVNlcnZpY2UuXG4gICAgICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YSA9IG5ldyBUYWJsZURhdGFCdWlsZGVyKHRoaXMudGFibGVEYXRhKS5nZXRSZXN1bHQoKTtcblxuICAgICAgICB0aGlzLmVudGl0eVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldCh0aGlzLmRhdGEuYmFzZURhdGEuRW50aXR5U2VydmljZUNsYXNzKSBhcyBFbnRpdHlTZXJ2aWNlPEVudGl0eVR5cGU+O1xuXG4gICAgICAgIGNvbnN0IGdpdmVuRGlzcGxheUNvbHVtbnMgPSB0aGlzLmRhdGEuYmFzZURhdGEuZGlzcGxheUNvbHVtbnMubWFwKCh2KSA9PiB2LmRpc3BsYXlOYW1lKTtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5iYXNlRGF0YS5tdWx0aVNlbGVjdEFjdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMgPSBbJ3NlbGVjdCddLmNvbmNhdChnaXZlbkRpc3BsYXlDb2x1bW5zKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyA9IGdpdmVuRGlzcGxheUNvbHVtbnM7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRhdGFTb3VyY2Uuc29ydGluZ0RhdGFBY2Nlc3NvciA9IChlbnRpdHk6IEVudGl0eVR5cGUsIGhlYWRlcjogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmJhc2VEYXRhLmRpc3BsYXlDb2x1bW5zLmZpbmQoKGRwKSA9PiBkcC5kaXNwbGF5TmFtZSA9PT0gaGVhZGVyKT8udmFsdWUoZW50aXR5KSBhcyBzdHJpbmc7XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5zb3J0ID0gdGhpcy5zb3J0O1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyUHJlZGljYXRlID0gKGVudGl0eTogRW50aXR5VHlwZSwgZmlsdGVyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNlYXJjaFN0ciA9IHRoaXMuZGF0YS5iYXNlRGF0YS5zZWFyY2hTdHJpbmcoZW50aXR5KSA7XG4gICAgICAgICAgICBjb25zdCBmb3JtYXR0ZWRTZWFyY2hTdHJpbmcgPSBzZWFyY2hTdHIudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZEZpbHRlclN0cmluZyA9IGZpbHRlci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdHRlZFNlYXJjaFN0cmluZy5pbmNsdWRlcyhmb3JtYXR0ZWRGaWx0ZXJTdHJpbmcpO1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyID0gdGhpcy5maWx0ZXI7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLnBhZ2luYXRvcjtcblxuICAgICAgICB0aGlzLmVudGl0eVNlcnZpY2UuZW50aXRpZXNTdWJqZWN0LnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95KSkuc3Vic2NyaWJlKChlbnRpdGllcykgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhU291cmNlLmRhdGEgPSBlbnRpdGllcztcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XG4gICAgICAgIH0pO1xuICAgICAgICB2b2lkIHRoaXMuZW50aXR5U2VydmljZS5yZWFkKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRWRpdHMgYW4gZW50aXR5LiBUaGlzIGVpdGhlciBjYWxscyB0aGUgZWRpdC1NZXRob2QgcHJvdmlkZWQgYnkgdGhlIHVzZXIgb3IgdXNlcyBhIGRlZmF1bHQgZWRpdC1kaWFsb2cuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZW50aXR5IC0gVGhlIGVudGl0eSB0aGF0IHNob3VsZCBiZSB1cGRhdGVkLlxuICAgICAqIEB0aHJvd3MgV2hlbiBubyBFbnRpdHlDbGFzcyB3YXMgcHJvdmlkZWQsIGFzIGEgbmV3IGNhbGwgaXMgbmVlZGVkIHRvIGluaXRpYWxpemUgbWV0YWRhdGEuXG4gICAgICovXG4gICAgZWRpdEVudGl0eShlbnRpdHk6IEVudGl0eVR5cGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5iYXNlRGF0YS5hbGxvd0VkaXQoZW50aXR5KSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRhdGEuYmFzZURhdGEuRW50aXR5Q2xhc3MpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIFwiRW50aXR5Q2xhc3NcIiBzcGVjaWZpZWQgZm9yIHRoaXMgdGFibGUnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEuYmFzZURhdGEuZWRpdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5iYXNlRGF0YS5lZGl0KG5ldyB0aGlzLmRhdGEuYmFzZURhdGEuRW50aXR5Q2xhc3MoZW50aXR5KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB2b2lkIHRoaXMuZWRpdERlZmF1bHQobmV3IHRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlDbGFzcyhlbnRpdHkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgZWRpdERlZmF1bHQoZW50aXR5OiBFbnRpdHlUeXBlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IGlucHV0RGlhbG9nRGF0YTogRWRpdEVudGl0eURpYWxvZ0RhdGE8RW50aXR5VHlwZT4gPSB7XG4gICAgICAgICAgICBlbnRpdHk6IGVudGl0eSxcbiAgICAgICAgICAgIEVudGl0eVNlcnZpY2VDbGFzczogdGhpcy5kYXRhLmJhc2VEYXRhLkVudGl0eVNlcnZpY2VDbGFzcyxcbiAgICAgICAgICAgIGFsbG93RGVsZXRlOiB0aGlzLmRhdGEuYmFzZURhdGEuYWxsb3dEZWxldGUsXG4gICAgICAgICAgICBlZGl0RGlhbG9nRGF0YTogdGhpcy5kYXRhLmVkaXREaWFsb2dEYXRhXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGRpYWxvZ0RhdGE6IEVkaXRFbnRpdHlEaWFsb2dEYXRhSW50ZXJuYWw8RW50aXR5VHlwZT4gPSBuZXcgRWRpdEVudGl0eURpYWxvZ0RhdGFCdWlsZGVyKGlucHV0RGlhbG9nRGF0YSkuZ2V0UmVzdWx0KCk7XG4gICAgICAgIGNvbnN0IHJlczogbnVtYmVyID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICAgICAgICB0aGlzLmRpYWxvZy5vcGVuKE5neE1hdEVudGl0eUVkaXREaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICBkYXRhOiBkaWFsb2dEYXRhLFxuICAgICAgICAgICAgICAgIG1pbldpZHRoOiAnNjAlJyxcbiAgICAgICAgICAgICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RvcmVGb2N1czogZmFsc2VcbiAgICAgICAgICAgIH0pLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgKSBhcyBudW1iZXI7XG4gICAgICAgIGlmIChyZXMgPT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YTtcbiAgICAgICAgICAgIGRhdGFbdGhpcy5kYXRhU291cmNlLmRhdGEuZmluZEluZGV4KChlKSA9PiBlW3RoaXMuZW50aXR5U2VydmljZS5pZEtleV0gPT09IGVudGl0eVt0aGlzLmVudGl0eVNlcnZpY2UuaWRLZXldKV0gPSBlbnRpdHk7XG4gICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IGRhdGE7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5jbGVhcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIG5ldyBFbnRpdHkuIFRoaXMgZWl0aGVyIGNhbGxzIHRoZSBjcmVhdGUtTWV0aG9kIHByb3ZpZGVkIGJ5IHRoZSB1c2VyIG9yIHVzZXMgYSBkZWZhdWx0IGNyZWF0ZS1kaWFsb2cuXG4gICAgICpcbiAgICAgKiBAdGhyb3dzIFdoZW4gbm8gRW50aXR5Q2xhc3Mgd2FzIHByb3ZpZGVkLCBhcyBhIG5ldyBjYWxsIGlzIG5lZWRlZCB0byBpbml0aWFsaXplIG1ldGFkYXRhLlxuICAgICAqL1xuICAgIGNyZWF0ZUVudGl0eSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRhdGEuYmFzZURhdGEuRW50aXR5Q2xhc3MpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIFwiRW50aXR5Q2xhc3NcIiBzcGVjaWZpZWQgZm9yIHRoaXMgdGFibGUnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEuYmFzZURhdGEuY3JlYXRlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLmJhc2VEYXRhLmNyZWF0ZShuZXcgdGhpcy5kYXRhLmJhc2VEYXRhLkVudGl0eUNsYXNzKCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVEZWZhdWx0KG5ldyB0aGlzLmRhdGEuYmFzZURhdGEuRW50aXR5Q2xhc3MoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZURlZmF1bHQoZW50aXR5OiBFbnRpdHlUeXBlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ0RhdGE6IENyZWF0ZUVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPiA9IG5ldyBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhQnVpbGRlcihcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBlbnRpdHk6IGVudGl0eSxcbiAgICAgICAgICAgICAgICBFbnRpdHlTZXJ2aWNlQ2xhc3M6IHRoaXMuZGF0YS5iYXNlRGF0YS5FbnRpdHlTZXJ2aWNlQ2xhc3MsXG4gICAgICAgICAgICAgICAgY3JlYXRlRGlhbG9nRGF0YTogdGhpcy5kYXRhLmNyZWF0ZURpYWxvZ0RhdGFcbiAgICAgICAgICAgIH1cbiAgICAgICAgKS5nZXRSZXN1bHQoKTtcbiAgICAgICAgdGhpcy5kaWFsb2cub3BlbihOZ3hNYXRFbnRpdHlDcmVhdGVEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGRhdGE6IGRpYWxvZ0RhdGEsXG4gICAgICAgICAgICBtaW5XaWR0aDogJzYwJScsXG4gICAgICAgICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgICAgICAgICAgcmVzdG9yZUZvY3VzOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSdW5zIHRoZSBNdWx0aUFjdGlvbiBmb3IgYWxsIHNlbGVjdGVkIGVudHJpZXMuXG4gICAgICogQWxzbyBoYW5kbGVzIGNvbmZpcm1hdGlvbiB3aXRoIGFuIGFkZGl0aW9uYWwgZGlhbG9nIGlmIGNvbmZpZ3VyZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYWN0aW9uIC0gVGhlIE11bHRpQWN0aW9uIHRvIHJ1bi5cbiAgICAgKi9cbiAgICBydW5NdWx0aUFjdGlvbihhY3Rpb246IE11bHRpU2VsZWN0QWN0aW9uPEVudGl0eVR5cGU+KTogdm9pZCB7XG4gICAgICAgIGlmICghYWN0aW9uLnJlcXVpcmVDb25maXJtRGlhbG9nIHx8ICFhY3Rpb24ucmVxdWlyZUNvbmZpcm1EaWFsb2codGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpcm1SdW5NdWx0aUFjdGlvbihhY3Rpb24pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGRpYWxvZ0RhdGE6IENvbmZpcm1EaWFsb2dEYXRhSW50ZXJuYWwgPSBuZXcgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyKGFjdGlvbi5jb25maXJtRGlhbG9nRGF0YSlcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGV4dCcsIFtgRG8geW91IHJlYWxseSB3YW50IHRvIHJ1biB0aGlzIGFjdGlvbiBvbiAke3RoaXMuc2VsZWN0aW9uLnNlbGVjdGVkLmxlbmd0aH0gZW50cmllcz9gXSlcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGl0bGUnLCBhY3Rpb24uZGlzcGxheU5hbWUpXG4gICAgICAgICAgICAuZ2V0UmVzdWx0KCk7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oTmd4TWF0RW50aXR5Q29uZmlybURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgZGF0YTogZGlhbG9nRGF0YSxcbiAgICAgICAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgICAgICAgICByZXN0b3JlRm9jdXM6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlczogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVzID09PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maXJtUnVuTXVsdGlBY3Rpb24oYWN0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb25maXJtUnVuTXVsdGlBY3Rpb24oYWN0aW9uOiBNdWx0aVNlbGVjdEFjdGlvbjxFbnRpdHlUeXBlPik6IHZvaWQge1xuICAgICAgICBhY3Rpb24uYWN0aW9uKHRoaXMuc2VsZWN0aW9uLnNlbGVjdGVkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgYW4gTXVsdGlBY3Rpb24gaXMgZGlzYWJsZWQgKGUuZy4gQmVjYXVzZSBubyBlbnRyaWVzIGhhdmUgYmVlbiBzZWxlY3RlZCkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYWN0aW9uIC0gVGhlIE11bHRpQWN0aW9uIHRvIGNoZWNrLlxuICAgICAqIEByZXR1cm5zIFdoZXRoZXIgb3Igbm90IHRoZSBBY3Rpb24gY2FuIGJlIHVzZWQuXG4gICAgICovXG4gICAgbXVsdGlBY3Rpb25EaXNhYmxlZChhY3Rpb246IE11bHRpU2VsZWN0QWN0aW9uPEVudGl0eVR5cGU+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYWN0aW9uLmVuYWJsZWQ/Lih0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZCkgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVG9nZ2xlcyBhbGwgZW50cmllcyBpbiB0aGUgdGFibGUuXG4gICAgICovXG4gICAgbWFzdGVyVG9nZ2xlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0FsbFNlbGVjdGVkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YS5mb3JFYWNoKHJvdyA9PiB0aGlzLnNlbGVjdGlvbi5zZWxlY3Qocm93KSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgYWxsIGVudHJpZXMgaW4gdGhlIHRhYmxlIGhhdmUgYmVlbiBzZWxlY3RlZC5cbiAgICAgKiBUaGlzIGlzIG5lZWRlZCB0byBkaXNwbGF5IHRoZSBcIm1hc3RlclRvZ2dsZVwiLWNoZWNrYm94IGNvcnJlY3RseS5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIFdoZXRoZXIgb3Igbm90IGFsbCBlbnRyaWVzIGluIHRoZSB0YWJsZSBoYXZlIGJlZW4gc2VsZWN0ZWQuXG4gICAgICovXG4gICAgaXNBbGxTZWxlY3RlZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgbnVtU2VsZWN0ZWQgPSB0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZC5sZW5ndGg7XG4gICAgICAgIGNvbnN0IG51bVJvd3MgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YS5sZW5ndGg7XG4gICAgICAgIHJldHVybiBudW1TZWxlY3RlZCA9PT0gbnVtUm93cztcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkRlc3Ryb3kubmV4dCh1bmRlZmluZWQpO1xuICAgICAgICB0aGlzLm9uRGVzdHJveS5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFwcGxpZXMgdGhlIHNlYXJjaCBpbnB1dCB0byBmaWx0ZXIgdGhlIHRhYmxlIGVudHJpZXMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZXZlbnQgLSBUaGUga2V5dXAtZXZlbnQgd2hpY2ggY29udGFpbnMgdGhlIHNlYXJjaC1zdHJpbmcgb2YgdGhlIHVzZXIuXG4gICAgICovXG4gICAgYXBwbHlGaWx0ZXIoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZpbHRlclZhbHVlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlLmZpbHRlciA9IGZpbHRlclZhbHVlLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuICAgIH1cbn0iLCI8aDEgY2xhc3M9XCJ0aXRsZVwiPnt7ZGF0YS5iYXNlRGF0YS50aXRsZX19PC9oMT5cblxuPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImNvbC1sZy04IGNvbC1tZC02IGNvbC1zbS0xMlwiPlxuICAgICAgICA8bWF0LWxhYmVsPnt7ZGF0YS5iYXNlRGF0YS5zZWFyY2hMYWJlbH19PC9tYXQtbGFiZWw+XG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCAoa2V5dXApPVwiYXBwbHlGaWx0ZXIoJGV2ZW50KVwiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiZGF0YS5iYXNlRGF0YS5tdWx0aVNlbGVjdEFjdGlvbnMubGVuZ3RoXCJcbiAgICAgICAgW2NsYXNzLmNvbC1sZy0yXT1cImRhdGEuYmFzZURhdGEuYWxsb3dDcmVhdGVcIlxuICAgICAgICBbY2xhc3MuY29sLWxnLTRdPVwiIWRhdGEuYmFzZURhdGEuYWxsb3dDcmVhdGVcIlxuICAgICAgICBbY2xhc3MuY29sLW1kLTNdPVwiZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZVwiXG4gICAgICAgIFtjbGFzcy5jb2wtbWQtNl09XCIhZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZVwiXG4gICAgICAgIFtjbGFzcy5jb2wtc20tNl09XCJkYXRhLmJhc2VEYXRhLmFsbG93Q3JlYXRlXCJcbiAgICAgICAgW2NsYXNzLmNvbC1zbS0xMl09XCIhZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9ucy1idXR0b25cIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiIG1hdC1yYWlzZWQtYnV0dG9uPlxuICAgICAgICAgICAge3tkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0TGFiZWx9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCI+XG4gICAgICAgIDxidXR0b24gKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9uc1wiIFtkaXNhYmxlZF09XCJtdWx0aUFjdGlvbkRpc2FibGVkKGFjdGlvbilcIiAoY2xpY2spPVwicnVuTXVsdGlBY3Rpb24oYWN0aW9uKVwiIG1hdC1tZW51LWl0ZW0+XG4gICAgICAgICAgICB7e2FjdGlvbi5kaXNwbGF5TmFtZX19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LW1lbnU+XG5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiZGF0YS5iYXNlRGF0YS5hbGxvd0NyZWF0ZVwiXG4gICAgICAgIFtjbGFzcy5jb2wtbGctMl09XCJkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9ucy5sZW5ndGhcIlxuICAgICAgICBbY2xhc3MuY29sLWxnLTRdPVwiIWRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zLmxlbmd0aFwiXG4gICAgICAgIFtjbGFzcy5jb2wtbWQtM109XCJkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9ucy5sZW5ndGhcIlxuICAgICAgICBbY2xhc3MuY29sLW1kLTZdPVwiIWRhdGEuYmFzZURhdGEubXVsdGlTZWxlY3RBY3Rpb25zLmxlbmd0aFwiXG4gICAgICAgIFtjbGFzcy5jb2wtc20tNl09XCJkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9ucy5sZW5ndGhcIlxuICAgICAgICBbY2xhc3MuY29sLXNtLTEyXT1cIiFkYXRhLmJhc2VEYXRhLm11bHRpU2VsZWN0QWN0aW9ucy5sZW5ndGhcIlxuICAgID5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNyZWF0ZS1idXR0b25cIiAoY2xpY2spPVwiY3JlYXRlRW50aXR5KClcIiBtYXQtcmFpc2VkLWJ1dHRvbj5cbiAgICAgICAgICAgIHt7ZGF0YS5iYXNlRGF0YS5jcmVhdGVCdXR0b25MYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo4XCI+XG4gICAgPG1hdC10YWJsZSAqbmdJZj1cImRhdGFTb3VyY2VcIiBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCIgbWF0U29ydD5cbiAgICAgICAgPCEtLSBzZWxlY3QgQ29sdW1uIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInNlbGVjdFwiPlxuICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cbiAgICAgICAgICAgICAgICA8bWF0LWNoZWNrYm94IChjaGFuZ2UpPVwiJGV2ZW50ID8gbWFzdGVyVG9nZ2xlKCkgOiBudWxsXCIgW2NoZWNrZWRdPVwic2VsZWN0aW9uLmhhc1ZhbHVlKCkgJiYgaXNBbGxTZWxlY3RlZCgpXCIgW2luZGV0ZXJtaW5hdGVdPVwic2VsZWN0aW9uLmhhc1ZhbHVlKCkgJiYgIWlzQWxsU2VsZWN0ZWQoKVwiPiA8L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgIDwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IG1vZHVsZVwiIGNsYXNzPVwibW9kdWxlXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveCAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCIgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb24udG9nZ2xlKG1vZHVsZSkgOiBudWxsXCIgW2NoZWNrZWRdPVwic2VsZWN0aW9uLmlzU2VsZWN0ZWQobW9kdWxlKVwiPiA8L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgIDwvbWF0LWNlbGw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGRDb2wgb2YgZGF0YS5iYXNlRGF0YS5kaXNwbGF5Q29sdW1uc1wiIFttYXRDb2x1bW5EZWZdPVwiZENvbC5kaXNwbGF5TmFtZVwiPlxuICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtc29ydC1oZWFkZXI+XG4gICAgICAgICAgICAgICAge3tkQ29sLmRpc3BsYXlOYW1lfX1cbiAgICAgICAgICAgIDwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgPG1hdC1jZWxsIGNsYXNzPVwiZW50aXR5XCIgW2NsYXNzLmVuYWJsZWRdPVwiZGF0YS5iYXNlRGF0YS5hbGxvd0VkaXQoZW50aXR5KVwiIChjbGljayk9XCJlZGl0RW50aXR5KGVudGl0eSlcIiAqbWF0Q2VsbERlZj1cImxldCBlbnRpdHlcIj5cbiAgICAgICAgICAgICAgICB7e2RDb2wudmFsdWUoZW50aXR5KX19XG4gICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXllZENvbHVtbnNcIj48L21hdC1oZWFkZXItcm93PlxuICAgICAgICA8bWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogZGlzcGxheWVkQ29sdW1uc1wiPjwvbWF0LXJvdz5cbiAgICA8L21hdC10YWJsZT5cblxuICAgIDxtYXQtcGFnaW5hdG9yICpuZ0lmPVwiZGF0YVNvdXJjZVwiIGlkPVwicGFnaW5hdG9yXCIgW2xlbmd0aF09XCJkYXRhU291cmNlLmZpbHRlcmVkRGF0YS5sZW5ndGhcIiBbcGFnZUluZGV4XT1cIjBcIiBbcGFnZVNpemVdPVwiMTBcIiBbcGFnZVNpemVPcHRpb25zXT1cIls1LCAxMCwgMjUsIDUwXVwiPiA8L21hdC1wYWdpbmF0b3I+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,20 +1,88 @@
|
|
|
1
1
|
import { PropertyDecoratorConfigInternal } from '../base/property-decorator-internal.data';
|
|
2
|
+
import { DateUtilities } from '../../classes/date.utilities';
|
|
2
3
|
/**
|
|
3
4
|
* The internal EntityArrayDecoratorConfig. Sets default values.
|
|
4
5
|
*/
|
|
5
6
|
export class EntityArrayDecoratorConfigInternal extends PropertyDecoratorConfigInternal {
|
|
6
7
|
constructor(data) {
|
|
7
8
|
super(data);
|
|
8
|
-
this.createInline = data.createInline
|
|
9
|
-
this.displayStyle = data.displayStyle;
|
|
9
|
+
this.createInline = data.createInline ?? true;
|
|
10
10
|
this.itemType = data.itemType;
|
|
11
|
+
this.allowDuplicates = data.allowDuplicates ?? false;
|
|
12
|
+
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
|
|
11
13
|
this.EntityClass = data.EntityClass;
|
|
12
14
|
this.displayColumns = data.displayColumns;
|
|
13
|
-
this.createInline = data.createInline
|
|
14
|
-
this.missingErrorMessage = data.missingErrorMessage
|
|
15
|
-
this.defaultWidths = data.defaultWidths
|
|
16
|
-
this.addButtonLabel = data.addButtonLabel
|
|
17
|
-
this.removeButtonLabel = data.removeButtonLabel
|
|
15
|
+
this.createInline = data.createInline ?? true;
|
|
16
|
+
this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
|
|
17
|
+
this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
|
|
18
|
+
this.addButtonLabel = data.addButtonLabel ?? 'Add';
|
|
19
|
+
this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The internal DateArrayDecoratorConfig. Sets default values.
|
|
24
|
+
*/
|
|
25
|
+
export class DateArrayDecoratorConfigInternal extends PropertyDecoratorConfigInternal {
|
|
26
|
+
constructor(data) {
|
|
27
|
+
super(data);
|
|
28
|
+
this.itemType = data.itemType;
|
|
29
|
+
this.allowDuplicates = data.allowDuplicates ?? false;
|
|
30
|
+
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
|
|
31
|
+
this.displayColumns = data.displayColumns;
|
|
32
|
+
this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
|
|
33
|
+
this.addButtonLabel = data.addButtonLabel ?? 'Add';
|
|
34
|
+
this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
|
|
35
|
+
this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
|
|
36
|
+
this.min = data.min;
|
|
37
|
+
this.max = data.max;
|
|
38
|
+
this.filter = data.filter;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* The internal DateTimeArrayDecoratorConfig. Sets default values.
|
|
43
|
+
*/
|
|
44
|
+
export class DateTimeArrayDecoratorConfigInternal extends PropertyDecoratorConfigInternal {
|
|
45
|
+
constructor(data) {
|
|
46
|
+
super(data);
|
|
47
|
+
this.itemType = data.itemType;
|
|
48
|
+
this.allowDuplicates = data.allowDuplicates ?? false;
|
|
49
|
+
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
|
|
50
|
+
this.displayColumns = data.displayColumns;
|
|
51
|
+
this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
|
|
52
|
+
this.addButtonLabel = data.addButtonLabel ?? 'Add';
|
|
53
|
+
this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
|
|
54
|
+
this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
|
|
55
|
+
this.times = data.times ?? DateUtilities.getDefaultTimes();
|
|
56
|
+
this.timeDisplayName = data.timeDisplayName ?? 'Time';
|
|
57
|
+
this.minDate = data.minDate;
|
|
58
|
+
this.maxDate = data.maxDate;
|
|
59
|
+
this.filterDate = data.filterDate;
|
|
60
|
+
this.minTime = data.minTime;
|
|
61
|
+
this.maxTime = data.maxTime;
|
|
62
|
+
this.filterTime = data.filterTime;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The internal DateRangeArrayDecoratorConfig. Sets default values.
|
|
67
|
+
*/
|
|
68
|
+
export class DateRangeArrayDecoratorConfigInternal extends PropertyDecoratorConfigInternal {
|
|
69
|
+
constructor(data) {
|
|
70
|
+
super(data);
|
|
71
|
+
this.itemType = data.itemType;
|
|
72
|
+
this.allowDuplicates = data.allowDuplicates ?? false;
|
|
73
|
+
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
|
|
74
|
+
this.displayColumns = data.displayColumns;
|
|
75
|
+
this.defaultWidths = data.defaultWidths ?? [12, 12, 12];
|
|
76
|
+
this.addButtonLabel = data.addButtonLabel ?? 'Add';
|
|
77
|
+
this.removeButtonLabel = data.removeButtonLabel ?? 'Remove';
|
|
78
|
+
this.missingErrorMessage = data.missingErrorMessage ?? 'Needs to contain at least one value';
|
|
79
|
+
this.placeholderStart = data.placeholderStart ?? 'Start';
|
|
80
|
+
this.placeholderEnd = data.placeholderEnd ?? 'End';
|
|
81
|
+
this.minStart = data.minStart;
|
|
82
|
+
this.maxStart = data.maxStart;
|
|
83
|
+
this.minEnd = data.minEnd;
|
|
84
|
+
this.maxEnd = data.maxEnd;
|
|
85
|
+
this.filter = data.filter;
|
|
18
86
|
}
|
|
19
87
|
}
|
|
20
88
|
/**
|
|
@@ -23,13 +91,14 @@ export class EntityArrayDecoratorConfigInternal extends PropertyDecoratorConfigI
|
|
|
23
91
|
export class StringChipsArrayDecoratorConfigInternal extends PropertyDecoratorConfigInternal {
|
|
24
92
|
constructor(data) {
|
|
25
93
|
super(data);
|
|
26
|
-
this.deleteIcon = data.deleteIcon
|
|
27
|
-
this.displayStyle = data.displayStyle;
|
|
94
|
+
this.deleteIcon = data.deleteIcon ?? 'fas fa-circle-minus';
|
|
28
95
|
this.itemType = data.itemType;
|
|
96
|
+
this.allowDuplicates = data.allowDuplicates ?? false;
|
|
97
|
+
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
|
|
29
98
|
this.maxLength = data.maxLength;
|
|
30
99
|
this.minLength = data.minLength;
|
|
31
100
|
this.regex = data.regex;
|
|
32
|
-
this.defaultWidths = data.defaultWidths
|
|
101
|
+
this.defaultWidths = data.defaultWidths ?? [6, 12, 12];
|
|
33
102
|
}
|
|
34
103
|
}
|
|
35
104
|
/**
|
|
@@ -39,13 +108,32 @@ export class AutocompleteStringChipsArrayDecoratorConfigInternal extends Propert
|
|
|
39
108
|
constructor(data) {
|
|
40
109
|
super(data);
|
|
41
110
|
this.autocompleteValues = data.autocompleteValues;
|
|
42
|
-
this.deleteIcon = data.deleteIcon
|
|
43
|
-
this.displayStyle = data.displayStyle;
|
|
111
|
+
this.deleteIcon = data.deleteIcon ?? 'fas fa-circle-minus';
|
|
44
112
|
this.itemType = data.itemType;
|
|
113
|
+
this.allowDuplicates = data.allowDuplicates ?? false;
|
|
114
|
+
this.duplicatesErrorDialog = getDefaultDuplicateErrorDialogData(data);
|
|
45
115
|
this.maxLength = data.maxLength;
|
|
46
116
|
this.minLength = data.minLength;
|
|
47
117
|
this.regex = data.regex;
|
|
48
|
-
this.defaultWidths = data.defaultWidths
|
|
118
|
+
this.defaultWidths = data.defaultWidths ?? [6, 12, 12];
|
|
49
119
|
}
|
|
50
120
|
}
|
|
51
|
-
|
|
121
|
+
/**
|
|
122
|
+
* Gets the default dialog data for the error dialog to display when the user tries to add a duplicate value.
|
|
123
|
+
*
|
|
124
|
+
* @param data - The Array Decorator data.
|
|
125
|
+
* @returns The dialog data with set default values.
|
|
126
|
+
*/
|
|
127
|
+
function getDefaultDuplicateErrorDialogData(data) {
|
|
128
|
+
return {
|
|
129
|
+
type: data.duplicatesErrorDialog?.type ?? 'info-only',
|
|
130
|
+
// eslint-disable-next-line max-len
|
|
131
|
+
text: data.duplicatesErrorDialog?.text ?? ['Adding duplicate entries to the array is not allowed.'],
|
|
132
|
+
title: data.duplicatesErrorDialog?.title ?? 'Error adding duplicate item',
|
|
133
|
+
confirmButtonLabel: data.duplicatesErrorDialog?.confirmButtonLabel,
|
|
134
|
+
cancelButtonLabel: data.duplicatesErrorDialog?.cancelButtonLabel,
|
|
135
|
+
requireConfirmation: data.duplicatesErrorDialog?.requireConfirmation,
|
|
136
|
+
confirmationText: data.duplicatesErrorDialog?.confirmationText
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLWludGVybmFsLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBSzNGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUk3RDs7R0FFRztBQUNILE1BQU0sT0FBTyxrQ0FDVCxTQUFRLCtCQUErQjtJQXVCdkMsWUFBWSxJQUE0QztRQUNwRCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksS0FBSyxDQUFDO1FBQ3JELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxrQ0FBa0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDcEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzFDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUM7UUFDOUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxxQ0FBcUMsQ0FBQztRQUM3RixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3hE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QUksQ0FBQyxxQkFBcUIsR0FBRyxrQ0FBa0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7Q0FDSjtBQUVEOzs7OztHQUtHO0FBQ0gsU0FBUyxrQ0FBa0MsQ0FBQyxJQUEwQjtJQUNsRSxPQUFPO1FBQ0gsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLElBQUksV0FBVztRQUNyRCxtQ0FBbUM7UUFDbkMsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLElBQUksQ0FBQyx1REFBdUQsQ0FBQztRQUNuRyxLQUFLLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEtBQUssSUFBSSw2QkFBNkI7UUFDekUsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLGtCQUFrQjtRQUNsRSxpQkFBaUIsRUFBRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsaUJBQWlCO1FBQ2hFLG1CQUFtQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxtQkFBbUI7UUFDcEUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLGdCQUFnQjtLQUNqRSxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWF0ZURpYWxvZ0RhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUsIEVudGl0eUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi4vYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vYmFzZS9wcm9wZXJ0eS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBBcnJheURlY29yYXRvckNvbmZpZywgQXJyYXlUYWJsZURpc3BsYXlDb2x1bW4sIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9hcnJheS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBEYXRlRmlsdGVyRm4gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IFRpbWUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRHJvcGRvd25WYWx1ZSB9IGZyb20gJy4uL2Jhc2UvZHJvcGRvd24tdmFsdWUuaW50ZXJmYWNlJztcbmltcG9ydCB7IERhdGVVdGlsaXRpZXMgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2RhdGUudXRpbGl0aWVzJztcbmltcG9ydCB7IERhdGVSYW5nZSB9IGZyb20gJy4uL2RhdGUvZGF0ZS1kZWNvcmF0b3IuZGF0YSc7XG5pbXBvcnQgeyBDb25maXJtRGlhbG9nRGF0YSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2ctZGF0YSc7XG5cbi8qKlxuICogVGhlIGludGVybmFsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIGltcGxlbWVudHMgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZT4ge1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuT0JKRUNUO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIEVudGl0eUNsYXNzOiBFbnRpdHlDbGFzc05ld2FibGU8RW50aXR5VHlwZT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5Q29sdW1uczogQXJyYXlUYWJsZURpc3BsYXlDb2x1bW48RW50aXR5VHlwZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNyZWF0ZURpYWxvZ0RhdGE/OiBDcmVhdGVEaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlSW5saW5lOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWRkQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPikge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5jcmVhdGVJbmxpbmUgPSBkYXRhLmNyZWF0ZUlubGluZSA/PyB0cnVlO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEpO1xuICAgICAgICB0aGlzLkVudGl0eUNsYXNzID0gZGF0YS5FbnRpdHlDbGFzcztcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuY3JlYXRlSW5saW5lID0gZGF0YS5jcmVhdGVJbmxpbmUgPz8gdHJ1ZTtcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIGludGVybmFsIERhdGVBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBpbXBsZW1lbnRzIERhdGVBcnJheURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuREFURTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5Q29sdW1uczogQXJyYXlUYWJsZURpc3BsYXlDb2x1bW48RGF0ZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IERhdGVBcnJheURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMubWluID0gZGF0YS5taW47XG4gICAgICAgIHRoaXMubWF4ID0gZGF0YS5tYXg7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gZGF0YS5maWx0ZXI7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBpbXBsZW1lbnRzIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfVElNRTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFsbG93RHVwbGljYXRlczogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGR1cGxpY2F0ZXNFcnJvckRpYWxvZzogQ29uZmlybURpYWxvZ0RhdGE7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5Q29sdW1uczogQXJyYXlUYWJsZURpc3BsYXlDb2x1bW48RGF0ZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgdGltZXM6IERyb3Bkb3duVmFsdWU8VGltZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpbWVEaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluRGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heERhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXJEYXRlPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhUaW1lPzogKGRhdGU/OiBEYXRlKSA9PiBUaW1lO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZmlsdGVyVGltZT86ICgodGltZTogVGltZSkgPT4gYm9vbGVhbikgfCAoKCkgPT4gYm9vbGVhbik7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEpO1xuICAgICAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gZGF0YS5kaXNwbGF5Q29sdW1ucztcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFsxMiwgMTIsIDEyXTtcbiAgICAgICAgdGhpcy5hZGRCdXR0b25MYWJlbCA9IGRhdGEuYWRkQnV0dG9uTGFiZWwgPz8gJ0FkZCc7XG4gICAgICAgIHRoaXMucmVtb3ZlQnV0dG9uTGFiZWwgPSBkYXRhLnJlbW92ZUJ1dHRvbkxhYmVsID8/ICdSZW1vdmUnO1xuICAgICAgICB0aGlzLm1pc3NpbmdFcnJvck1lc3NhZ2UgPSBkYXRhLm1pc3NpbmdFcnJvck1lc3NhZ2UgPz8gJ05lZWRzIHRvIGNvbnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlJztcbiAgICAgICAgdGhpcy50aW1lcyA9IGRhdGEudGltZXMgPz8gRGF0ZVV0aWxpdGllcy5nZXREZWZhdWx0VGltZXMoKTtcbiAgICAgICAgdGhpcy50aW1lRGlzcGxheU5hbWUgPSBkYXRhLnRpbWVEaXNwbGF5TmFtZSA/PyAnVGltZSc7XG4gICAgICAgIHRoaXMubWluRGF0ZSA9IGRhdGEubWluRGF0ZTtcbiAgICAgICAgdGhpcy5tYXhEYXRlID0gZGF0YS5tYXhEYXRlO1xuICAgICAgICB0aGlzLmZpbHRlckRhdGUgPSBkYXRhLmZpbHRlckRhdGU7XG4gICAgICAgIHRoaXMubWluVGltZSA9IGRhdGEubWluVGltZTtcbiAgICAgICAgdGhpcy5tYXhUaW1lID0gZGF0YS5tYXhUaW1lO1xuICAgICAgICB0aGlzLmZpbHRlclRpbWUgPSBkYXRhLmZpbHRlclRpbWU7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcm5hbCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgZXh0ZW5kcyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZ0ludGVybmFsIGltcGxlbWVudHMgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfUkFOR0U7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheUNvbHVtbnM6IEFycmF5VGFibGVEaXNwbGF5Q29sdW1uPERhdGVSYW5nZT5bXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGFkZEJ1dHRvbkxhYmVsOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICByZW1vdmVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWlzc2luZ0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcGxhY2Vob2xkZXJTdGFydDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcGxhY2Vob2xkZXJFbmQ6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pblN0YXJ0PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtaW5FbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBtYXhFbmQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGU7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IGRhdGEuZGlzcGxheUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbMTIsIDEyLCAxMl07XG4gICAgICAgIHRoaXMuYWRkQnV0dG9uTGFiZWwgPSBkYXRhLmFkZEJ1dHRvbkxhYmVsID8/ICdBZGQnO1xuICAgICAgICB0aGlzLnJlbW92ZUJ1dHRvbkxhYmVsID0gZGF0YS5yZW1vdmVCdXR0b25MYWJlbCA/PyAnUmVtb3ZlJztcbiAgICAgICAgdGhpcy5taXNzaW5nRXJyb3JNZXNzYWdlID0gZGF0YS5taXNzaW5nRXJyb3JNZXNzYWdlID8/ICdOZWVkcyB0byBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSc7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXJTdGFydCA9IGRhdGEucGxhY2Vob2xkZXJTdGFydCA/PyAnU3RhcnQnO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyRW5kID0gZGF0YS5wbGFjZWhvbGRlckVuZCA/PyAnRW5kJztcbiAgICAgICAgdGhpcy5taW5TdGFydCA9IGRhdGEubWluU3RhcnQ7XG4gICAgICAgIHRoaXMubWF4U3RhcnQgPSBkYXRhLm1heFN0YXJ0O1xuICAgICAgICB0aGlzLm1pbkVuZCA9IGRhdGEubWluRW5kO1xuICAgICAgICB0aGlzLm1heEVuZCA9IGRhdGEubWF4RW5kO1xuICAgICAgICB0aGlzLmZpbHRlciA9IGRhdGEuZmlsdGVyO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgaW1wbGVtZW50cyBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5TVFJJTkc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBhbGxvd0R1cGxpY2F0ZXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkdXBsaWNhdGVzRXJyb3JEaWFsb2c6IENvbmZpcm1EaWFsb2dEYXRhO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGVsZXRlSWNvbjogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcmVnZXg/OiBSZWdFeHA7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgICAgICB0aGlzLmRlbGV0ZUljb24gPSBkYXRhLmRlbGV0ZUljb24gPz8gJ2ZhcyBmYS1jaXJjbGUtbWludXMnO1xuICAgICAgICB0aGlzLml0ZW1UeXBlID0gZGF0YS5pdGVtVHlwZTtcbiAgICAgICAgdGhpcy5hbGxvd0R1cGxpY2F0ZXMgPSBkYXRhLmFsbG93RHVwbGljYXRlcyA/PyBmYWxzZTtcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVzRXJyb3JEaWFsb2cgPSBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGEpO1xuICAgICAgICB0aGlzLm1heExlbmd0aCA9IGRhdGEubWF4TGVuZ3RoO1xuICAgICAgICB0aGlzLm1pbkxlbmd0aCA9IGRhdGEubWluTGVuZ3RoO1xuICAgICAgICB0aGlzLnJlZ2V4ID0gZGF0YS5yZWdleDtcbiAgICAgICAgdGhpcy5kZWZhdWx0V2lkdGhzID0gZGF0YS5kZWZhdWx0V2lkdGhzID8/IFs2LCAxMiwgMTJdO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZy4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCBpbXBsZW1lbnRzIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYXV0b2NvbXBsZXRlVmFsdWVzOiBzdHJpbmdbXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5TVFJJTkdfQVVUT0NPTVBMRVRFO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgYWxsb3dEdXBsaWNhdGVzOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nOiBDb25maXJtRGlhbG9nRGF0YTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRlbGV0ZUljb246IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIG1heExlbmd0aD86IG51bWJlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHJlZ2V4PzogUmVnRXhwO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZykge1xuICAgICAgICBzdXBlcihkYXRhKTtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVWYWx1ZXMgPSBkYXRhLmF1dG9jb21wbGV0ZVZhbHVlcztcbiAgICAgICAgdGhpcy5kZWxldGVJY29uID0gZGF0YS5kZWxldGVJY29uID8/ICdmYXMgZmEtY2lyY2xlLW1pbnVzJztcbiAgICAgICAgdGhpcy5pdGVtVHlwZSA9IGRhdGEuaXRlbVR5cGU7XG4gICAgICAgIHRoaXMuYWxsb3dEdXBsaWNhdGVzID0gZGF0YS5hbGxvd0R1cGxpY2F0ZXMgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlc0Vycm9yRGlhbG9nID0gZ2V0RGVmYXVsdER1cGxpY2F0ZUVycm9yRGlhbG9nRGF0YShkYXRhKTtcbiAgICAgICAgdGhpcy5tYXhMZW5ndGggPSBkYXRhLm1heExlbmd0aDtcbiAgICAgICAgdGhpcy5taW5MZW5ndGggPSBkYXRhLm1pbkxlbmd0aDtcbiAgICAgICAgdGhpcy5yZWdleCA9IGRhdGEucmVnZXg7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRocyA9IGRhdGEuZGVmYXVsdFdpZHRocyA/PyBbNiwgMTIsIDEyXTtcbiAgICB9XG59XG5cbi8qKlxuICogR2V0cyB0aGUgZGVmYXVsdCBkaWFsb2cgZGF0YSBmb3IgdGhlIGVycm9yIGRpYWxvZyB0byBkaXNwbGF5IHdoZW4gdGhlIHVzZXIgdHJpZXMgdG8gYWRkIGEgZHVwbGljYXRlIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBkYXRhIC0gVGhlIEFycmF5IERlY29yYXRvciBkYXRhLlxuICogQHJldHVybnMgVGhlIGRpYWxvZyBkYXRhIHdpdGggc2V0IGRlZmF1bHQgdmFsdWVzLlxuICovXG5mdW5jdGlvbiBnZXREZWZhdWx0RHVwbGljYXRlRXJyb3JEaWFsb2dEYXRhKGRhdGE6IEFycmF5RGVjb3JhdG9yQ29uZmlnKTogQ29uZmlybURpYWxvZ0RhdGEge1xuICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6IGRhdGEuZHVwbGljYXRlc0Vycm9yRGlhbG9nPy50eXBlID8/ICdpbmZvLW9ubHknLFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxuICAgICAgICB0ZXh0OiBkYXRhLmR1cGxpY2F0ZXNFcnJvckRpYWxvZz8udGV4dCA/PyBbJ0FkZGluZyBkdXBsaWNhdGUgZW50cmllcyB0byB0aGUgYXJyYXkgaXMgbm90IGFsbG93ZWQuJ10sXG4gICAgICAgIHRpdGxlOiBkYXRhLmR1cGxpY2F0ZXNFcnJvckRpYWxvZz8udGl0bGUgPz8gJ0Vycm9yIGFkZGluZyBkdXBsaWNhdGUgaXRlbScsXG4gICAgICAgIGNvbmZpcm1CdXR0b25MYWJlbDogZGF0YS5kdXBsaWNhdGVzRXJyb3JEaWFsb2c/LmNvbmZpcm1CdXR0b25MYWJlbCxcbiAgICAgICAgY2FuY2VsQnV0dG9uTGFiZWw6IGRhdGEuZHVwbGljYXRlc0Vycm9yRGlhbG9nPy5jYW5jZWxCdXR0b25MYWJlbCxcbiAgICAgICAgcmVxdWlyZUNvbmZpcm1hdGlvbjogZGF0YS5kdXBsaWNhdGVzRXJyb3JEaWFsb2c/LnJlcXVpcmVDb25maXJtYXRpb24sXG4gICAgICAgIGNvbmZpcm1hdGlvblRleHQ6IGRhdGEuZHVwbGljYXRlc0Vycm9yRGlhbG9nPy5jb25maXJtYXRpb25UZXh0XG4gICAgfTtcbn0iXX0=
|
|
@@ -2,6 +2,6 @@ import { PropertyDecoratorConfig } from '../base/property-decorator.data';
|
|
|
2
2
|
/**
|
|
3
3
|
* Interface definition for the @array metadata.
|
|
4
4
|
*/
|
|
5
|
-
class ArrayDecoratorConfig extends PropertyDecoratorConfig {
|
|
5
|
+
export class ArrayDecoratorConfig extends PropertyDecoratorConfig {
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBZ0IxRTs7R0FFRztBQUNILE1BQWUsb0JBQXFCLFNBQVEsdUJBQXVCO0NBVWxFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlYXRlRGlhbG9nRGF0YSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdGFibGUvdGFibGUtZGF0YSc7XG5pbXBvcnQgeyBFbnRpdHlDbGFzc05ld2FibGUgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uL2Jhc2UvZGVjb3JhdG9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgUHJvcGVydHlEZWNvcmF0b3JDb25maWcgfSBmcm9tICcuLi9iYXNlL3Byb3BlcnR5LWRlY29yYXRvci5kYXRhJztcblxuLyoqXG4gKiBUaGUgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBhbiBhcnJheSBwcm9wZXJ0eSBkaXNwbGF5ZWQgYXMgYSB0YWJsZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcnJheVRhYmxlRGlzcGxheUNvbHVtbjxFbnRpdHlUeXBlIGV4dGVuZHMgb2JqZWN0PiB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgaW5zaWRlIHRoZSBoZWFkZXIuXG4gICAgICovXG4gICAgZGlzcGxheU5hbWU6IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBBIG1ldGhvZCB0byBnZXQgdGhlIHZhbHVlIGluc2lkZSBhbiByb3cuXG4gICAgICovXG4gICAgdmFsdWU6IChlbnRpdHk6IEVudGl0eVR5cGUpID0+IHN0cmluZ1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbml0aW9uIGZvciB0aGUgQGFycmF5IG1ldGFkYXRhLlxuICovXG5hYnN0cmFjdCBjbGFzcyBBcnJheURlY29yYXRvckNvbmZpZyBleHRlbmRzIFByb3BlcnR5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvKipcbiAgICAgKiBIb3cgdG8gZGlzcGxheSB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIGRpc3BsYXlTdHlsZSE6ICd0YWJsZScgfCAnY2hpcHMnO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHR5cGUgb2YgdGhlIGl0ZW1zIGluc2lkZSB0aGUgYXJyYXkuXG4gICAgICovXG4gICAgaXRlbVR5cGUhOiBEZWNvcmF0b3JUeXBlcztcbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIGZvciBhbiBhcnJheSBvZiBFbnRpdGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlIGV4dGVuZHMgb2JqZWN0PiBleHRlbmRzIEFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5PQkpFQ1QsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBkaXNwbGF5U3R5bGU6ICd0YWJsZScsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgRW50aXR5Q2xhc3MgdXNlZCBmb3IgZ2VuZXJhdGluZyB0aGUgY3JlYXRlIGlucHV0cy5cbiAgICAgKi9cbiAgICBFbnRpdHlDbGFzczogRW50aXR5Q2xhc3NOZXdhYmxlPEVudGl0eVR5cGU+LFxuXG4gICAgLyoqXG4gICAgICogVGhlIGRlZmluaXRpb24gb2YgdGhlIGNvbHVtbnMgdG8gZGlzcGxheS4gQ29uc2lzdHMgb2YgdGhlIGRpc3BsYXlOYW1lIHRvIHNob3cgaW4gdGhlIGhlYWRlciBvZiB0aGUgcm93XG4gICAgICogYW5kIHRoZSB2YWx1ZSwgd2hpY2ggaXMgYSBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyB0aGUgdmFsdWUgdG8gZGlzcGxheSBpbnNpZGUgYSBjb2x1bW4uXG4gICAgICovXG4gICAgZGlzcGxheUNvbHVtbnM6IEFycmF5VGFibGVEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGU+W10sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSBmb3IgdGhlIGFkZC1pdGVtLWRpYWxvZy5cbiAgICAgKiBDYW4gYmUgb21pdHRlZCB3aGVuIGFkZGluZyBpdGVtcyBpbmxpbmUuXG4gICAgICovXG4gICAgY3JlYXRlRGlhbG9nRGF0YT86IENyZWF0ZURpYWxvZ0RhdGEsXG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgZm9ybSBmb3IgYWRkaW5nIGl0ZW1zIHRvIHRoZSBhcnJheVxuICAgICAqIHNob3VsZCBiZSBkaXNwbGF5ZWQgaW5saW5lLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIGNyZWF0ZUlubGluZT86IGJvb2xlYW4sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSBhZGQgYnV0dG9uIHdoZW4gY3JlYXRlSW5saW5lIGlzIHRydWUuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgcmVtb3ZlIGJ1dHRvbiB3aGVuIGNyZWF0ZUlubGluZSBpcyB0cnVlLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ1JlbW92ZSdcbiAgICAgKi9cbiAgICByZW1vdmVCdXR0b25MYWJlbD86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBlcnJvci1tZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0aGUgYXJyYXkgaXMgcmVxdWlyZWQgYnV0IGNvbnRhaW5zIG5vIHZhbHVlcy5cbiAgICAgKi9cbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlPzogc3RyaW5nXG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2Ygc3RyaW5ncyBkaXNwbGF5ZWQgYXMgYSBjaGlwcyBsaXN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuU1RSSU5HLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZGlzcGxheVN0eWxlOiAnY2hpcHMnLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGNsYXNzIGZvciB0aGUgPGk+IHRhZyB1c2VkIHRvIHJlbW92ZSBhbiBlbnRyeSBmcm9tIHRoZSBhcnJheS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICdmYXMgZmEtY2lyY2xlLW1pbnVzJ1xuICAgICAqL1xuICAgIGRlbGV0ZUljb24/OiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIG1pbmltdW0gcmVxdWlyZWQgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuXG4gICAgICovXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyLFxuICAgIC8qKlxuICAgICAqIFRoZSBtYXhpbXVtIHJlcXVpcmVkIGxlbmd0aCBvZiB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIG1heExlbmd0aD86IG51bWJlcixcbiAgICAvKipcbiAgICAgKiBBIHJlZ2V4IHVzZWQgZm9yIHZhbGlkYXRpb24uXG4gICAgICovXG4gICAgcmVnZXg/OiBSZWdFeHBcbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIGZvciBhbiBhcnJheSBvZiBhdXRvY29tcGxldGUgc3RyaW5ncyBkaXNwbGF5ZWQgYXMgYSBjaGlwcyBsaXN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcgZXh0ZW5kcyBBcnJheURlY29yYXRvckNvbmZpZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBpdGVtVHlwZTogRGVjb3JhdG9yVHlwZXMuU1RSSU5HX0FVVE9DT01QTEVURSxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGRpc3BsYXlTdHlsZTogJ2NoaXBzJyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBjbGFzcyBmb3IgdGhlIDxpPiB0YWcgdXNlZCB0byByZW1vdmUgYW4gZW50cnkgZnJvbSB0aGUgYXJyYXkuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnZmFzIGZhLWNpcmNsZS1taW51cydcbiAgICAgKi9cbiAgICBkZWxldGVJY29uPzogc3RyaW5nLFxuICAgIC8qKlxuICAgICAqIFRoZSBhdXRvY29tcGxldGUgdmFsdWVzLlxuICAgICAqL1xuICAgIGF1dG9jb21wbGV0ZVZhbHVlczogc3RyaW5nW10sXG4gICAgLyoqXG4gICAgICogVGhlIG1pbmltdW0gcmVxdWlyZWQgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuXG4gICAgICovXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyLFxuICAgIC8qKlxuICAgICAqIFRoZSBtYXhpbXVtIHJlcXVpcmVkIGxlbmd0aCBvZiB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIG1heExlbmd0aD86IG51bWJlcixcbiAgICAvKipcbiAgICAgKiBBIHJlZ2V4IHVzZWQgZm9yIHZhbGlkYXRpb24uXG4gICAgICovXG4gICAgcmVnZXg/OiBSZWdFeHBcbn0iXX0=
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZGVjb3JhdG9yLmRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2FycmF5L2FycmF5LWRlY29yYXRvci5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBcUIxRTs7R0FFRztBQUNILE1BQU0sT0FBZ0Isb0JBQXFCLFNBQVEsdUJBQXVCO0NBaUJ6RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWF0ZURpYWxvZ0RhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWRhdGEnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUsIEVudGl0eUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi4vYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlY29yYXRvckNvbmZpZyB9IGZyb20gJy4uL2Jhc2UvcHJvcGVydHktZGVjb3JhdG9yLmRhdGEnO1xuaW1wb3J0IHsgRGF0ZUZpbHRlckZuIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBUaW1lIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERyb3Bkb3duVmFsdWUgfSBmcm9tICcuLi9iYXNlL2Ryb3Bkb3duLXZhbHVlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2UgfSBmcm9tICcuLi9kYXRlL2RhdGUtZGVjb3JhdG9yLmRhdGEnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0RhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEnO1xuXG4vKipcbiAqIFRoZSBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGFuIGFycmF5IHByb3BlcnR5IGRpc3BsYXllZCBhcyBhIHRhYmxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFycmF5VGFibGVEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4ge1xuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIGluc2lkZSB0aGUgaGVhZGVyLlxuICAgICAqL1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogQSBtZXRob2QgdG8gZ2V0IHRoZSB2YWx1ZSBpbnNpZGUgYW4gcm93LlxuICAgICAqL1xuICAgIHZhbHVlOiAoZW50aXR5OiBFbnRpdHlUeXBlKSA9PiBzdHJpbmdcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZGVmaW5pdGlvbiBmb3IgdGhlIEBhcnJheSBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgUHJvcGVydHlEZWNvcmF0b3JDb25maWcge1xuICAgIC8qKlxuICAgICAqIFRoZSB0eXBlIG9mIHRoZSBpdGVtcyBpbnNpZGUgdGhlIGFycmF5LlxuICAgICAqL1xuICAgIGl0ZW1UeXBlITogRGVjb3JhdG9yVHlwZXM7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCBkdXBsaWNhdGUgdmFsdWVzIGFyZSBhbGxvd2VkIGluc2lkZSB0aGUgYXJyYXkuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIGFsbG93RHVwbGljYXRlcz86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXJyb3IgZGlhbG9nIHRvIGRpc3BsYXkgd2hlbiB0aGUgdXNlciB0cmllcyB0byBhZGQgYSBkdXBsaWNhdGUgZW50cnkuXG4gICAgICovXG4gICAgZHVwbGljYXRlc0Vycm9yRGlhbG9nPzogQ29uZmlybURpYWxvZ0RhdGE7XG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2YgRW50aXRpZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWc8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBleHRlbmRzIEFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5PQkpFQ1QsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgRW50aXR5Q2xhc3MgdXNlZCBmb3IgZ2VuZXJhdGluZyB0aGUgY3JlYXRlIGlucHV0cy5cbiAgICAgKi9cbiAgICBFbnRpdHlDbGFzczogRW50aXR5Q2xhc3NOZXdhYmxlPEVudGl0eVR5cGU+LFxuXG4gICAgLyoqXG4gICAgICogVGhlIGRlZmluaXRpb24gb2YgdGhlIGNvbHVtbnMgdG8gZGlzcGxheS4gQ29uc2lzdHMgb2YgdGhlIGRpc3BsYXlOYW1lIHRvIHNob3cgaW4gdGhlIGhlYWRlciBvZiB0aGUgcm93XG4gICAgICogYW5kIHRoZSB2YWx1ZSwgd2hpY2ggaXMgYSBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyB0aGUgdmFsdWUgdG8gZGlzcGxheSBpbnNpZGUgYSBjb2x1bW4uXG4gICAgICovXG4gICAgZGlzcGxheUNvbHVtbnM6IEFycmF5VGFibGVEaXNwbGF5Q29sdW1uPEVudGl0eVR5cGU+W10sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSBmb3IgdGhlIGFkZC1pdGVtLWRpYWxvZy5cbiAgICAgKiBDYW4gYmUgb21pdHRlZCB3aGVuIGFkZGluZyBpdGVtcyBpbmxpbmUuXG4gICAgICovXG4gICAgY3JlYXRlRGlhbG9nRGF0YT86IENyZWF0ZURpYWxvZ0RhdGEsXG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgZm9ybSBmb3IgYWRkaW5nIGl0ZW1zIHRvIHRoZSBhcnJheVxuICAgICAqIHNob3VsZCBiZSBkaXNwbGF5ZWQgaW5saW5lLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIGNyZWF0ZUlubGluZT86IGJvb2xlYW4sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSBhZGQgYnV0dG9uIHdoZW4gY3JlYXRlSW5saW5lIGlzIHRydWUuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgcmVtb3ZlIGJ1dHRvbiB3aGVuIGNyZWF0ZUlubGluZSBpcyB0cnVlLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ1JlbW92ZSdcbiAgICAgKi9cbiAgICByZW1vdmVCdXR0b25MYWJlbD86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBlcnJvci1tZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0aGUgYXJyYXkgaXMgcmVxdWlyZWQgYnV0IGNvbnRhaW5zIG5vIHZhbHVlcy5cbiAgICAgKi9cbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlPzogc3RyaW5nXG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2YgRGF0ZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEUsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgY29sdW1ucyB0byBkaXNwbGF5LiBDb25zaXN0cyBvZiB0aGUgZGlzcGxheU5hbWUgdG8gc2hvdyBpbiB0aGUgaGVhZGVyIG9mIHRoZSByb3dcbiAgICAgKiBhbmQgdGhlIHZhbHVlLCB3aGljaCBpcyBhIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHRoZSB2YWx1ZSB0byBkaXNwbGF5IGluc2lkZSBhIGNvbHVtbi5cbiAgICAgKi9cbiAgICBkaXNwbGF5Q29sdW1uczogQXJyYXlUYWJsZURpc3BsYXlDb2x1bW48RGF0ZT5bXSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBsYWJlbCBmb3IgdGhlIGFkZCBidXR0b24uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgIC8qKlxuICAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSByZW1vdmUgYnV0dG9uLlxuICAgICAgKlxuICAgICAgKiBAZGVmYXVsdCAnUmVtb3ZlJ1xuICAgICAgKi9cbiAgICByZW1vdmVCdXR0b25MYWJlbD86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBlcnJvci1tZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0aGUgYXJyYXkgaXMgcmVxdWlyZWQgYnV0IGNvbnRhaW5zIG5vIHZhbHVlcy5cbiAgICAgKi9cbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIGRhdGUuXG4gICAgICovXG4gICAgbWluPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIGRhdGUuXG4gICAgICovXG4gICAgbWF4PzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuXG4gICAgLyoqXG4gICAgICogQSBmaWx0ZXIgZnVuY3Rpb24gdG8gZG8gbW9yZSBzcGVjaWZpYyBmaWx0ZXJpbmcuIFRoaXMgY291bGQgYmUgdGhlIHJlbW92YWwgb2YgZS5nLiBBbGwgd2Vla2VuZHMuXG4gICAgICovXG4gICAgZmlsdGVyPzogRGF0ZUZpbHRlckZuPERhdGUgfCBudWxsIHwgdW5kZWZpbmVkPlxufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIERhdGVUaW1lcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLkRBVEVfVElNRSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBkZWZpbml0aW9uIG9mIHRoZSBjb2x1bW5zIHRvIGRpc3BsYXkuIENvbnNpc3RzIG9mIHRoZSBkaXNwbGF5TmFtZSB0byBzaG93IGluIHRoZSBoZWFkZXIgb2YgdGhlIHJvd1xuICAgICAqIGFuZCB0aGUgdmFsdWUsIHdoaWNoIGlzIGEgZnVuY3Rpb24gdGhhdCBnZW5lcmF0ZXMgdGhlIHZhbHVlIHRvIGRpc3BsYXkgaW5zaWRlIGEgY29sdW1uLlxuICAgICAqL1xuICAgIGRpc3BsYXlDb2x1bW5zOiBBcnJheVRhYmxlRGlzcGxheUNvbHVtbjxEYXRlPltdLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGxhYmVsIGZvciB0aGUgYWRkIGJ1dHRvbi5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICdBZGQnXG4gICAgICovXG4gICAgYWRkQnV0dG9uTGFiZWw/OiBzdHJpbmcsXG5cbiAgICAgLyoqXG4gICAgICAqIFRoZSBsYWJlbCBmb3IgdGhlIHJlbW92ZSBidXR0b24uXG4gICAgICAqXG4gICAgICAqIEBkZWZhdWx0ICdSZW1vdmUnXG4gICAgICAqL1xuICAgIHJlbW92ZUJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGVycm9yLW1lc3NhZ2UgdG8gZGlzcGxheSB3aGVuIHRoZSBhcnJheSBpcyByZXF1aXJlZCBidXQgY29udGFpbnMgbm8gdmFsdWVzLlxuICAgICAqL1xuICAgIG1pc3NpbmdFcnJvck1lc3NhZ2U/OiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2VsZWN0YWJsZSB0aW1lcy5cbiAgICAgKi9cbiAgICB0aW1lcz86IERyb3Bkb3duVmFsdWU8VGltZT5bXSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIHRvIHVzZSBhcyBhIGxhYmVsIGZvciB0aGUgdGltZSBmb3JtIGZpZWxkLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ1RpbWUnXG4gICAgICovXG4gICAgdGltZURpc3BsYXlOYW1lPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIGRhdGUuXG4gICAgICovXG4gICAgbWluRGF0ZT86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZSxcblxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtYXhpbXVtIHZhbHVlIG9mIHRoZSBkYXRlLlxuICAgICAqL1xuICAgIG1heERhdGU/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG5cbiAgICAvKipcbiAgICAgKiBBIGZpbHRlciBmdW5jdGlvbiB0byBkbyBtb3JlIHNwZWNpZmljIGRhdGUgZmlsdGVyaW5nLiBUaGlzIGNvdWxkIGJlIHRoZSByZW1vdmFsIG9mIGUuZy4gQWxsIHdlZWtlbmRzLlxuICAgICAqL1xuICAgIGZpbHRlckRhdGU/OiBEYXRlRmlsdGVyRm48RGF0ZSB8IG51bGwgfCB1bmRlZmluZWQ+LFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIHRpbWUuXG4gICAgICovXG4gICAgbWluVGltZT86IChkYXRlPzogRGF0ZSkgPT4gVGltZSxcblxuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBtYXhpbXVtIHZhbHVlIG9mIHRoZSB0aW1lLlxuICAgICAqL1xuICAgIG1heFRpbWU/OiAoZGF0ZT86IERhdGUpID0+IFRpbWUsXG5cbiAgICAvKipcbiAgICAgKiBBIGZpbHRlciBmdW5jdGlvbiB0byBkbyBtb3JlIHNwZWNpZmljIHRpbWUgZmlsdGVyaW5nLiBUaGlzIGNvdWxkIGJlIGUuZy4gVGhlIHJlbW92YWwgb2YgbHVuY2ggYnJlYWtzLlxuICAgICAqL1xuICAgIGZpbHRlclRpbWU/OiAoKHRpbWU6IFRpbWUpID0+IGJvb2xlYW4pIHwgKCgpID0+IGJvb2xlYW4pXG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2YgRGF0ZVJhbmdlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZyBleHRlbmRzIEFycmF5RGVjb3JhdG9yQ29uZmlnIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGl0ZW1UeXBlOiBEZWNvcmF0b3JUeXBlcy5EQVRFX1JBTkdFLFxuXG4gICAgLyoqXG4gICAgICogVGhlIGRlZmluaXRpb24gb2YgdGhlIGNvbHVtbnMgdG8gZGlzcGxheS4gQ29uc2lzdHMgb2YgdGhlIGRpc3BsYXlOYW1lIHRvIHNob3cgaW4gdGhlIGhlYWRlciBvZiB0aGUgcm93XG4gICAgICogYW5kIHRoZSB2YWx1ZSwgd2hpY2ggaXMgYSBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyB0aGUgdmFsdWUgdG8gZGlzcGxheSBpbnNpZGUgYSBjb2x1bW4uXG4gICAgICovXG4gICAgZGlzcGxheUNvbHVtbnM6IEFycmF5VGFibGVEaXNwbGF5Q29sdW1uPERhdGVSYW5nZT5bXSxcblxuICAgIC8qKlxuICAgICAqIFRoZSBsYWJlbCBmb3IgdGhlIGFkZCBidXR0b24uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnQWRkJ1xuICAgICAqL1xuICAgIGFkZEJ1dHRvbkxhYmVsPzogc3RyaW5nLFxuXG4gICAgIC8qKlxuICAgICAgKiBUaGUgbGFiZWwgZm9yIHRoZSByZW1vdmUgYnV0dG9uLlxuICAgICAgKlxuICAgICAgKiBAZGVmYXVsdCAnUmVtb3ZlJ1xuICAgICAgKi9cbiAgICByZW1vdmVCdXR0b25MYWJlbD86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBlcnJvci1tZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0aGUgYXJyYXkgaXMgcmVxdWlyZWQgYnV0IGNvbnRhaW5zIG5vIHZhbHVlcy5cbiAgICAgKi9cbiAgICBtaXNzaW5nRXJyb3JNZXNzYWdlPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIHN0YXJ0IGRhdGUuXG4gICAgICovXG4gICAgbWluU3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIHN0YXJ0IGRhdGUuXG4gICAgICovXG4gICAgbWF4U3RhcnQ/OiAoZGF0ZT86IERhdGUpID0+IERhdGUsXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0byBnZXQgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIGVuZCBkYXRlLlxuICAgICAqL1xuICAgIG1pbkVuZD86IChkYXRlPzogRGF0ZSkgPT4gRGF0ZSxcbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRvIGdldCB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgZW5kIGRhdGUuXG4gICAgICovXG4gICAgbWF4RW5kPzogKGRhdGU/OiBEYXRlKSA9PiBEYXRlLFxuICAgIC8qKlxuICAgICAqIEEgZmlsdGVyIGZ1bmN0aW9uIHRvIGRvIG1vcmUgc3BlY2lmaWMgZmlsdGVyaW5nIG9uIHRoZSBkaXNhbGxvd2VkIGVuZCBkYXRlIHZhbHVlcy4gVGhpcyBjb3VsZCBiZSB0aGUgcmVtb3ZhbCBvZiBlLmcuIEFsbCB3ZWVrZW5kcy5cbiAgICAgKi9cbiAgICBmaWx0ZXI/OiBEYXRlRmlsdGVyRm48RGF0ZT4sXG4gICAgLyoqXG4gICAgICogVGhlIHBsYWNlaG9sZGVyIGZvciB0aGUgc3RhcnQgZGF0ZSBvZiB0aGUgZGF0ZSByYW5nZSBwaWNrZXIuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBcIlN0YXJ0XCJcbiAgICAgKi9cbiAgICBwbGFjZWhvbGRlclN0YXJ0Pzogc3RyaW5nLFxuICAgIC8qKlxuICAgICAqIFRoZSBwbGFjZWhvbGRlciBmb3IgdGhlIGVuZCBkYXRlIG9mIHRoZSBkYXRlIHJhbmdlIHBpY2tlci5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IFwiRW5kXCJcbiAgICAgKi9cbiAgICBwbGFjZWhvbGRlckVuZD86IHN0cmluZ1xufVxuXG4vKipcbiAqIERlZmluaXRpb24gZm9yIGFuIGFycmF5IG9mIHN0cmluZ3MgZGlzcGxheWVkIGFzIGEgY2hpcHMgbGlzdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLlNUUklORyxcblxuICAgIC8qKlxuICAgICAqIFRoZSBjbGFzcyBmb3IgdGhlIDxpPiB0YWcgdXNlZCB0byByZW1vdmUgYW4gZW50cnkgZnJvbSB0aGUgYXJyYXkuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnZmFzIGZhLWNpcmNsZS1taW51cydcbiAgICAgKi9cbiAgICBkZWxldGVJY29uPzogc3RyaW5nLFxuICAgIC8qKlxuICAgICAqIFRoZSBtaW5pbXVtIHJlcXVpcmVkIGxlbmd0aCBvZiB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIG1pbkxlbmd0aD86IG51bWJlcixcbiAgICAvKipcbiAgICAgKiBUaGUgbWF4aW11bSByZXF1aXJlZCBsZW5ndGggb2YgdGhlIHN0cmluZy5cbiAgICAgKi9cbiAgICBtYXhMZW5ndGg/OiBudW1iZXIsXG4gICAgLyoqXG4gICAgICogQSByZWdleCB1c2VkIGZvciB2YWxpZGF0aW9uLlxuICAgICAqL1xuICAgIHJlZ2V4PzogUmVnRXhwXG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBmb3IgYW4gYXJyYXkgb2YgYXV0b2NvbXBsZXRlIHN0cmluZ3MgZGlzcGxheWVkIGFzIGEgY2hpcHMgbGlzdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRvY29tcGxldGVTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIGV4dGVuZHMgQXJyYXlEZWNvcmF0b3JDb25maWcge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgaXRlbVR5cGU6IERlY29yYXRvclR5cGVzLlNUUklOR19BVVRPQ09NUExFVEUsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2xhc3MgZm9yIHRoZSA8aT4gdGFnIHVzZWQgdG8gcmVtb3ZlIGFuIGVudHJ5IGZyb20gdGhlIGFycmF5LlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ2ZhcyBmYS1jaXJjbGUtbWludXMnXG4gICAgICovXG4gICAgZGVsZXRlSWNvbj86IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUaGUgYXV0b2NvbXBsZXRlIHZhbHVlcy5cbiAgICAgKi9cbiAgICBhdXRvY29tcGxldGVWYWx1ZXM6IHN0cmluZ1tdLFxuICAgIC8qKlxuICAgICAqIFRoZSBtaW5pbXVtIHJlcXVpcmVkIGxlbmd0aCBvZiB0aGUgc3RyaW5nLlxuICAgICAqL1xuICAgIG1pbkxlbmd0aD86IG51bWJlcixcbiAgICAvKipcbiAgICAgKiBUaGUgbWF4aW11bSByZXF1aXJlZCBsZW5ndGggb2YgdGhlIHN0cmluZy5cbiAgICAgKi9cbiAgICBtYXhMZW5ndGg/OiBudW1iZXIsXG4gICAgLyoqXG4gICAgICogQSByZWdleCB1c2VkIGZvciB2YWxpZGF0aW9uLlxuICAgICAqL1xuICAgIHJlZ2V4PzogUmVnRXhwXG59Il19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { baseProperty } from '../base/base-property.decorator';
|
|
2
2
|
import { DecoratorTypes } from '../base/decorator-types.enum';
|
|
3
|
-
import { AutocompleteStringChipsArrayDecoratorConfigInternal, EntityArrayDecoratorConfigInternal, StringChipsArrayDecoratorConfigInternal } from './array-decorator-internal.data';
|
|
3
|
+
import { AutocompleteStringChipsArrayDecoratorConfigInternal, DateArrayDecoratorConfigInternal, DateRangeArrayDecoratorConfigInternal, DateTimeArrayDecoratorConfigInternal, EntityArrayDecoratorConfigInternal, StringChipsArrayDecoratorConfigInternal } from './array-decorator-internal.data';
|
|
4
4
|
/**
|
|
5
5
|
* Decorator for setting and getting array property metadata.
|
|
6
6
|
*
|
|
@@ -12,6 +12,12 @@ export function array(metadata) {
|
|
|
12
12
|
switch (metadata.itemType) {
|
|
13
13
|
case DecoratorTypes.OBJECT:
|
|
14
14
|
return baseProperty(new EntityArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY);
|
|
15
|
+
case DecoratorTypes.DATE:
|
|
16
|
+
return baseProperty(new DateArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_DATE);
|
|
17
|
+
case DecoratorTypes.DATE_TIME:
|
|
18
|
+
return baseProperty(new DateTimeArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_DATE_TIME);
|
|
19
|
+
case DecoratorTypes.DATE_RANGE:
|
|
20
|
+
return baseProperty(new DateRangeArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_DATE_RANGE);
|
|
15
21
|
case DecoratorTypes.STRING:
|
|
16
22
|
return baseProperty(new StringChipsArrayDecoratorConfigInternal(metadata), DecoratorTypes.ARRAY_STRING_CHIPS);
|
|
17
23
|
case DecoratorTypes.STRING_AUTOCOMPLETE:
|
|
@@ -21,4 +27,4 @@ export function array(metadata) {
|
|
|
21
27
|
throw new Error(`Unknown itemType ${metadata.itemType}`);
|
|
22
28
|
}
|
|
23
29
|
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvZGVjb3JhdG9ycy9hcnJheS9hcnJheS5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbURBQW1ELEVBQUUsZ0NBQWdDLEVBQUUscUNBQXFDLEVBQUUsb0NBQW9DLEVBQUUsa0NBQWtDLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdsUzs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUNqQixRQUsyQztJQUUzQyxRQUFRLFFBQVEsQ0FBQyxRQUFRLEVBQUU7UUFDdkIsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLFlBQVksQ0FBQyxJQUFJLGtDQUFrQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRyxLQUFLLGNBQWMsQ0FBQyxJQUFJO1lBQ3BCLE9BQU8sWUFBWSxDQUFDLElBQUksZ0NBQWdDLENBQUMsUUFBUSxDQUFDLEVBQUUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25HLEtBQUssY0FBYyxDQUFDLFNBQVM7WUFDekIsT0FBTyxZQUFZLENBQUMsSUFBSSxvQ0FBb0MsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDNUcsS0FBSyxjQUFjLENBQUMsVUFBVTtZQUMxQixPQUFPLFlBQVksQ0FBQyxJQUFJLHFDQUFxQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlHLEtBQUssY0FBYyxDQUFDLE1BQU07WUFDdEIsT0FBTyxZQUFZLENBQUMsSUFBSSx1Q0FBdUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNsSCxLQUFLLGNBQWMsQ0FBQyxtQkFBbUI7WUFDbkMsT0FBTyxZQUFZLENBQ2YsSUFBSSxtREFBbUQsQ0FBQyxRQUFRLENBQUMsRUFDakUsY0FBYyxDQUFDLCtCQUErQixDQUNqRCxDQUFDO1FBQ047WUFDSSwwR0FBMEc7WUFDMUcsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBcUIsUUFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0tBQ3pFO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgYmFzZVByb3BlcnR5IH0gZnJvbSAnLi4vYmFzZS9iYXNlLXByb3BlcnR5LmRlY29yYXRvcic7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uL2Jhc2UvZGVjb3JhdG9yLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBEYXRlQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuL2FycmF5LWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVBcnJheURlY29yYXRvckNvbmZpZywgRGF0ZVJhbmdlQXJyYXlEZWNvcmF0b3JDb25maWcsIERhdGVUaW1lQXJyYXlEZWNvcmF0b3JDb25maWcsIEVudGl0eUFycmF5RGVjb3JhdG9yQ29uZmlnLCBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnIH0gZnJvbSAnLi9hcnJheS1kZWNvcmF0b3IuZGF0YSc7XG5cbi8qKlxuICogRGVjb3JhdG9yIGZvciBzZXR0aW5nIGFuZCBnZXR0aW5nIGFycmF5IHByb3BlcnR5IG1ldGFkYXRhLlxuICpcbiAqIEBwYXJhbSBtZXRhZGF0YSAtIFRoZSBtZXRhZGF0YSBvZiB0aGUgYXJyYXkgcHJvcGVydHkuXG4gKiBAcmV0dXJucyBUaGUgbWV0aG9kIHRoYXQgZGVmaW5lcyB0aGUgbWV0YWRhdGEuXG4gKiBAdGhyb3dzIFdoZW4gdGhlIGdpdmVuIHR5cGUgb2YgdGhlIGFycmF5LWl0ZW1zIGlzIHVua25vd24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcnJheTxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+KFxuICAgIG1ldGFkYXRhOiBFbnRpdHlBcnJheURlY29yYXRvckNvbmZpZzxFbnRpdHlUeXBlPlxuICAgICAgICAgICAgICAgIHwgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ1xuICAgICAgICAgICAgICAgIHwgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ1xuICAgICAgICAgICAgICAgIHwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnXG4gICAgICAgICAgICAgICAgfCBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnXG4gICAgICAgICAgICAgICAgfCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ1xuKTogKHRhcmdldDogb2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKSA9PiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1ldGFkYXRhLml0ZW1UeXBlKSB7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuT0JKRUNUOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbChtZXRhZGF0YSksIERlY29yYXRvclR5cGVzLkFSUkFZKTtcbiAgICAgICAgY2FzZSBEZWNvcmF0b3JUeXBlcy5EQVRFOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEpLCBEZWNvcmF0b3JUeXBlcy5BUlJBWV9EQVRFKTtcbiAgICAgICAgY2FzZSBEZWNvcmF0b3JUeXBlcy5EQVRFX1RJTUU6XG4gICAgICAgICAgICByZXR1cm4gYmFzZVByb3BlcnR5KG5ldyBEYXRlVGltZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwobWV0YWRhdGEpLCBEZWNvcmF0b3JUeXBlcy5BUlJBWV9EQVRFX1RJTUUpO1xuICAgICAgICBjYXNlIERlY29yYXRvclR5cGVzLkRBVEVfUkFOR0U6XG4gICAgICAgICAgICByZXR1cm4gYmFzZVByb3BlcnR5KG5ldyBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhKSwgRGVjb3JhdG9yVHlwZXMuQVJSQVlfREFURV9SQU5HRSk7XG4gICAgICAgIGNhc2UgRGVjb3JhdG9yVHlwZXMuU1RSSU5HOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShuZXcgU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhKSwgRGVjb3JhdG9yVHlwZXMuQVJSQVlfU1RSSU5HX0NISVBTKTtcbiAgICAgICAgY2FzZSBEZWNvcmF0b3JUeXBlcy5TVFJJTkdfQVVUT0NPTVBMRVRFOlxuICAgICAgICAgICAgcmV0dXJuIGJhc2VQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICBuZXcgQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsKG1ldGFkYXRhKSxcbiAgICAgICAgICAgICAgICBEZWNvcmF0b3JUeXBlcy5BUlJBWV9TVFJJTkdfQVVUT0NPTVBMRVRFX0NISVBTXG4gICAgICAgICAgICApO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnksIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2Vzc1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGl0ZW1UeXBlICR7KG1ldGFkYXRhIGFzIGFueSkuaXRlbVR5cGV9YCk7XG4gICAgfVxufSJdfQ==
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ReflectUtilities } from '../../capsulation/reflect.utilities';
|
|
1
2
|
/**
|
|
2
3
|
* The base decorator for setting metadata on properties.
|
|
3
4
|
*
|
|
@@ -7,8 +8,8 @@
|
|
|
7
8
|
*/
|
|
8
9
|
export function baseProperty(metadata, type) {
|
|
9
10
|
return function (target, propertyKey) {
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
ReflectUtilities.defineMetadata('metadata', metadata, target, propertyKey);
|
|
12
|
+
ReflectUtilities.defineMetadata('type', type, target, propertyKey);
|
|
12
13
|
};
|
|
13
14
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcm9wZXJ0eS5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2Jhc2UvYmFzZS1wcm9wZXJ0eS5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHdkU7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBMkIsUUFBMEIsRUFBRSxJQUFPO0lBQ3RGLE9BQU8sVUFBVSxNQUFjLEVBQUUsV0FBbUI7UUFDaEQsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzNFLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN2RSxDQUFDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVmbGVjdFV0aWxpdGllcyB9IGZyb20gJy4uLy4uL2NhcHN1bGF0aW9uL3JlZmxlY3QudXRpbGl0aWVzJztcbmltcG9ydCB7IERlY29yYXRvclR5cGUsIERlY29yYXRvclR5cGVzIH0gZnJvbSAnLi9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5cbi8qKlxuICogVGhlIGJhc2UgZGVjb3JhdG9yIGZvciBzZXR0aW5nIG1ldGFkYXRhIG9uIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIG1ldGFkYXRhIC0gVGhlIG1ldGFkYXRhIHRvIGRlZmluZS5cbiAqIEBwYXJhbSB0eXBlIC0gVGhlIHR5cGUgb2YgbWV0YWRhdGEuXG4gKiBAcmV0dXJucyBUaGUgbWV0aG9kIHRoYXQgc2V0cyB0aGUgbWV0YWRhdGEuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiYXNlUHJvcGVydHk8VCBleHRlbmRzIERlY29yYXRvclR5cGVzPihtZXRhZGF0YTogRGVjb3JhdG9yVHlwZTxUPiwgdHlwZTogVCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiBvYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcpIHtcbiAgICAgICAgUmVmbGVjdFV0aWxpdGllcy5kZWZpbmVNZXRhZGF0YSgnbWV0YWRhdGEnLCBtZXRhZGF0YSwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XG4gICAgICAgIFJlZmxlY3RVdGlsaXRpZXMuZGVmaW5lTWV0YWRhdGEoJ3R5cGUnLCB0eXBlLCB0YXJnZXQsIHByb3BlcnR5S2V5KTtcbiAgICB9O1xufSJdfQ==
|
|
@@ -14,10 +14,15 @@ export var DecoratorTypes;
|
|
|
14
14
|
DecoratorTypes["BOOLEAN_DROPDOWN"] = "booleanDropdown";
|
|
15
15
|
DecoratorTypes["OBJECT"] = "object";
|
|
16
16
|
DecoratorTypes["ARRAY"] = "array";
|
|
17
|
+
DecoratorTypes["ARRAY_DATE"] = "arrayDate";
|
|
18
|
+
DecoratorTypes["ARRAY_DATE_TIME"] = "arrayDateTime";
|
|
19
|
+
DecoratorTypes["ARRAY_DATE_RANGE"] = "arrayDateRange";
|
|
17
20
|
DecoratorTypes["ARRAY_STRING_CHIPS"] = "arrayStringChips";
|
|
18
21
|
DecoratorTypes["ARRAY_STRING_AUTOCOMPLETE_CHIPS"] = "arrayStringAutocompleteChips";
|
|
19
22
|
DecoratorTypes["DATE"] = "date";
|
|
20
23
|
DecoratorTypes["DATE_RANGE"] = "dateRange";
|
|
21
24
|
DecoratorTypes["DATE_TIME"] = "dateTime";
|
|
25
|
+
DecoratorTypes["FILE_DEFAULT"] = "fileDefault";
|
|
26
|
+
DecoratorTypes["FILE_IMAGE"] = "fileImage";
|
|
22
27
|
})(DecoratorTypes || (DecoratorTypes = {}));
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9yLXR5cGVzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9kZWNvcmF0b3JzL2Jhc2UvZGVjb3JhdG9yLXR5cGVzLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxjQXNCWDtBQXRCRCxXQUFZLGNBQWM7SUFDdEIsbUNBQWlCLENBQUE7SUFDakIsb0RBQWtDLENBQUE7SUFDbEMsNERBQTBDLENBQUE7SUFDMUMsa0RBQWdDLENBQUE7SUFDaEMsbUNBQWlCLENBQUE7SUFDakIsb0RBQWtDLENBQUE7SUFDbEMsOENBQTRCLENBQUE7SUFDNUIsa0RBQWdDLENBQUE7SUFDaEMsc0RBQW9DLENBQUE7SUFDcEMsbUNBQWlCLENBQUE7SUFDakIsaUNBQWUsQ0FBQTtJQUNmLDBDQUF3QixDQUFBO0lBQ3hCLG1EQUFpQyxDQUFBO0lBQ2pDLHFEQUFtQyxDQUFBO0lBQ25DLHlEQUF1QyxDQUFBO0lBQ3ZDLGtGQUFnRSxDQUFBO0lBQ2hFLCtCQUFhLENBQUE7SUFDYiwwQ0FBd0IsQ0FBQTtJQUN4Qix3Q0FBc0IsQ0FBQTtJQUN0Qiw4Q0FBNEIsQ0FBQTtJQUM1QiwwQ0FBd0IsQ0FBQTtBQUM1QixDQUFDLEVBdEJXLGNBQWMsS0FBZCxjQUFjLFFBc0J6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dG9jb21wbGV0ZVN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIFN0cmluZ0NoaXBzQXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBEYXRlUmFuZ2VBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vYXJyYXkvYXJyYXktZGVjb3JhdG9yLWludGVybmFsLmRhdGEnO1xuaW1wb3J0IHsgQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIERyb3Bkb3duQm9vbGVhbkRlY29yYXRvckNvbmZpZ0ludGVybmFsLCBUb2dnbGVCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuLi9ib29sZWFuL2Jvb2xlYW4tZGVjb3JhdG9yLWludGVybmFsLmRhdGEnO1xuaW1wb3J0IHsgRGF0ZVJhbmdlRGF0ZURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBEYXRlVGltZURhdGVEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRGVmYXVsdERhdGVEZWNvcmF0b3JDb25maWdJbnRlcm5hbCB9IGZyb20gJy4uL2RhdGUvZGF0ZS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBEZWZhdWx0RmlsZURlY29yYXRvckNvbmZpZ0ludGVybmFsLCBJbWFnZUZpbGVEZWNvcmF0b3JDb25maWdJbnRlcm5hbCB9IGZyb20gJy4uL2ZpbGUvZmlsZS1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5pbXBvcnQgeyBEZWZhdWx0TnVtYmVyRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIERyb3Bkb3duTnVtYmVyRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwgfSBmcm9tICcuLi9udW1iZXIvbnVtYmVyLWRlY29yYXRvci1pbnRlcm5hbC5kYXRhJztcbmltcG9ydCB7IERlZmF1bHRPYmplY3REZWNvcmF0b3JDb25maWdJbnRlcm5hbCB9IGZyb20gJy4uL29iamVjdC9vYmplY3QtZGVjb3JhdG9yLWludGVybmFsLmRhdGEnO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU3RyaW5nRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWwsIERlZmF1bHRTdHJpbmdEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgRHJvcGRvd25TdHJpbmdEZWNvcmF0b3JDb25maWdJbnRlcm5hbCwgVGV4dGJveFN0cmluZ0RlY29yYXRvckNvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi4vc3RyaW5nL3N0cmluZy1kZWNvcmF0b3ItaW50ZXJuYWwuZGF0YSc7XG5cbi8qKlxuICogVGhlIGVudW0gVmFsdWVzIGZvciBhbGwgdGhlIGRpZmZlcmVudCBEZWNvcmF0b3JUeXBlcy5cbiAqL1xuZXhwb3J0IGVudW0gRGVjb3JhdG9yVHlwZXMge1xuICAgIFNUUklORyA9ICdzdHJpbmcnLFxuICAgIFNUUklOR19EUk9QRE9XTiA9ICdzdHJpbmdEcm9wZG93bicsXG4gICAgU1RSSU5HX0FVVE9DT01QTEVURSA9ICdzdHJpbmdBdXRvY29tcGxldGUnLFxuICAgIFNUUklOR19URVhUQk9YID0gJ3N0cmluZ1RleHRib3gnLFxuICAgIE5VTUJFUiA9ICdudW1iZXInLFxuICAgIE5VTUJFUl9EUk9QRE9XTiA9ICdudW1iZXJEcm9wZG93bicsXG4gICAgQk9PTEVBTl9DSEVDS0JPWCA9ICdib29sZWFuJyxcbiAgICBCT09MRUFOX1RPR0dMRSA9ICdib29sZWFuVG9nZ2xlJyxcbiAgICBCT09MRUFOX0RST1BET1dOID0gJ2Jvb2xlYW5Ecm9wZG93bicsXG4gICAgT0JKRUNUID0gJ29iamVjdCcsXG4gICAgQVJSQVkgPSAnYXJyYXknLFxuICAgIEFSUkFZX0RBVEUgPSAnYXJyYXlEYXRlJyxcbiAgICBBUlJBWV9EQVRFX1RJTUUgPSAnYXJyYXlEYXRlVGltZScsXG4gICAgQVJSQVlfREFURV9SQU5HRSA9ICdhcnJheURhdGVSYW5nZScsXG4gICAgQVJSQVlfU1RSSU5HX0NISVBTID0gJ2FycmF5U3RyaW5nQ2hpcHMnLFxuICAgIEFSUkFZX1NUUklOR19BVVRPQ09NUExFVEVfQ0hJUFMgPSAnYXJyYXlTdHJpbmdBdXRvY29tcGxldGVDaGlwcycsXG4gICAgREFURSA9ICdkYXRlJyxcbiAgICBEQVRFX1JBTkdFID0gJ2RhdGVSYW5nZScsXG4gICAgREFURV9USU1FID0gJ2RhdGVUaW1lJyxcbiAgICBGSUxFX0RFRkFVTFQgPSAnZmlsZURlZmF1bHQnLFxuICAgIEZJTEVfSU1BR0UgPSAnZmlsZUltYWdlJ1xufVxuXG4vKipcbiAqIEdpdmVzIHRoZSBtZXRhZGF0YS1jb25maWcgVHlwZSBiYXNlZCBvbiB0aGUgRGVjb3JhdG9yVHlwZXMgZW51bS5cbiAqL1xuZXhwb3J0IHR5cGUgRGVjb3JhdG9yVHlwZTxUPiA9XG4gICAgVCBleHRlbmRzIERlY29yYXRvclR5cGVzLlNUUklORyA/IERlZmF1bHRTdHJpbmdEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIDogVCBleHRlbmRzIERlY29yYXRvclR5cGVzLlNUUklOR19URVhUQk9YID8gVGV4dGJveFN0cmluZ0RlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuU1RSSU5HX0RST1BET1dOID8gRHJvcGRvd25TdHJpbmdEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIDogVCBleHRlbmRzIERlY29yYXRvclR5cGVzLlNUUklOR19BVVRPQ09NUExFVEUgPyBBdXRvY29tcGxldGVTdHJpbmdEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIDogVCBleHRlbmRzIERlY29yYXRvclR5cGVzLk5VTUJFUiA/IERlZmF1bHROdW1iZXJEZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIDogVCBleHRlbmRzIERlY29yYXRvclR5cGVzLk5VTUJFUl9EUk9QRE9XTiA/IERyb3Bkb3duTnVtYmVyRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICA6IFQgZXh0ZW5kcyBEZWNvcmF0b3JUeXBlcy5CT09MRUFOX0NIRUNLQk9YID8gQ2hlY2tib3hCb29sZWFuRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICA6IFQgZXh0ZW5kcyBEZWNvcmF0b3JUeXBlcy5CT09MRUFOX1RPR0dMRSA/IFRvZ2dsZUJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIDogVCBleHRlbmRzIERlY29yYXRvclR5cGVzLkJPT0xFQU5fRFJPUERPV04gPyBEcm9wZG93bkJvb2xlYW5EZWNvcmF0b3JDb25maWdJbnRlcm5hbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuT0JKRUNUID8gRGVmYXVsdE9iamVjdERlY29yYXRvckNvbmZpZ0ludGVybmFsPGFueT5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIDogVCBleHRlbmRzIERlY29yYXRvclR5cGVzLkFSUkFZID8gRW50aXR5QXJyYXlEZWNvcmF0b3JDb25maWdJbnRlcm5hbDxhbnk+XG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuQVJSQVlfREFURSA/IERhdGVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuQVJSQVlfREFURV9USU1FID8gRGF0ZVRpbWVBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuQVJSQVlfREFURV9SQU5HRSA/IERhdGVSYW5nZUFycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICA6IFQgZXh0ZW5kcyBEZWNvcmF0b3JUeXBlcy5BUlJBWV9TVFJJTkdfQ0hJUFMgPyBTdHJpbmdDaGlwc0FycmF5RGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICA6IFQgZXh0ZW5kcyBEZWNvcmF0b3JUeXBlcy5BUlJBWV9TVFJJTkdfQVVUT0NPTVBMRVRFX0NISVBTID8gQXV0b2NvbXBsZXRlU3RyaW5nQ2hpcHNBcnJheURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuREFURSA/IERlZmF1bHREYXRlRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICA6IFQgZXh0ZW5kcyBEZWNvcmF0b3JUeXBlcy5EQVRFX1JBTkdFID8gRGF0ZVJhbmdlRGF0ZURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuREFURV9USU1FID8gRGF0ZVRpbWVEYXRlRGVjb3JhdG9yQ29uZmlnSW50ZXJuYWxcbiAgICA6IFQgZXh0ZW5kcyBEZWNvcmF0b3JUeXBlcy5GSUxFX0RFRkFVTFQgPyBEZWZhdWx0RmlsZURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBUIGV4dGVuZHMgRGVjb3JhdG9yVHlwZXMuRklMRV9JTUFHRSA/IEltYWdlRmlsZURlY29yYXRvckNvbmZpZ0ludGVybmFsXG4gICAgOiBuZXZlcjsiXX0=
|