@fundamental-ngx/platform 0.43.6 → 0.43.8
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/esm2020/form/combobox/combobox/combobox.component.mjs +1 -1
- package/esm2020/form/multi-combobox/commons/base-multi-combobox.mjs +8 -2
- package/esm2020/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +1 -1
- package/esm2020/form/multi-input/multi-input.component.mjs +3 -3
- package/esm2020/list/list.component.mjs +11 -11
- package/esm2020/message-popover/components/message-view/message-view.component.mjs +2 -2
- package/esm2020/search-field/search-field.component.mjs +5 -6
- package/esm2020/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +2 -2
- package/esm2020/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +1 -1
- package/esm2020/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +1 -1
- package/esm2020/table/components/table-group-row/table-group-row.component.mjs +7 -4
- package/esm2020/table/components/table-header-row/table-header-row.component.mjs +28 -13
- package/esm2020/table/components/table-p13-dialog/columns/columns.component.mjs +1 -1
- package/esm2020/table/components/table-p13-dialog/filtering/filtering.model.mjs +2 -2
- package/esm2020/table/components/table-popping-row/table-popping-row.component.mjs +6 -3
- package/esm2020/table/components/table-row/table-row.component.mjs +34 -9
- package/esm2020/table/components/table-toolbar/table-toolbar.component.mjs +3 -3
- package/esm2020/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +1 -1
- package/esm2020/table/table.component.mjs +44 -9
- package/esm2020/table/table.module.mjs +8 -5
- package/esm2020/table-helpers/directives/table-draggable.directive.mjs +8 -2
- package/esm2020/table-helpers/services/table-column-resize.service.mjs +2 -2
- package/esm2020/table-helpers/table-column.mjs +1 -1
- package/esm2020/table-helpers/table.mjs +2 -1
- package/esm2020/upload-collection/dialogs/move-to/move-to.component.mjs +1 -1
- package/esm2020/upload-collection/upload-collection/upload-collection.component.mjs +1 -1
- package/esm2020/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +3 -3
- package/esm2020/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +1 -1
- package/esm2020/variant-management/variant-management.component.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-form.mjs +11 -5
- package/fesm2015/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-list.mjs +3 -3
- package/fesm2015/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-message-popover.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-search-field.mjs +4 -5
- package/fesm2015/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-settings-generator.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-table-helpers.mjs +8 -1
- package/fesm2015/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-table.mjs +127 -41
- package/fesm2015/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-upload-collection.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-variant-management.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-form.mjs +11 -5
- package/fesm2020/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-list.mjs +3 -3
- package/fesm2020/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-message-popover.mjs +1 -1
- package/fesm2020/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-search-field.mjs +4 -5
- package/fesm2020/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-settings-generator.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs +1 -1
- package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-table-helpers.mjs +8 -1
- package/fesm2020/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-table.mjs +125 -41
- package/fesm2020/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-upload-collection.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-variant-management.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fundamental-ngx-platform-v0.43.8.tgz +0 -0
- package/list/list.component.d.ts +3 -3
- package/package.json +4 -4
- package/schematics/ng-add/index.js +1 -1
- package/table/components/table-header-row/table-header-row.component.d.ts +10 -3
- package/table/components/table-row/table-row.component.d.ts +10 -2
- package/table/components/table-toolbar/table-toolbar.component.d.ts +2 -2
- package/table/table.component.d.ts +22 -2
- package/table/table.module.d.ts +1 -1
- package/table-helpers/services/table-column-resize.service.d.ts +1 -1
- package/table-helpers/table.d.ts +21 -19
- package/fundamental-ngx-platform-v0.43.6.tgz +0 -0
|
@@ -63,7 +63,7 @@ import { TableCellHeaderPopoverComponent } from './components';
|
|
|
63
63
|
import { TableRowComponent } from './components/table-row/table-row.component';
|
|
64
64
|
import { TableGroupRowComponent } from './components/table-group-row/table-group-row.component';
|
|
65
65
|
import { TablePoppingRowComponent } from './components/table-popping-row/table-popping-row.component';
|
|
66
|
-
import { TableHeaderRowComponent } from './components/table-header-row/table-header-row.component';
|
|
66
|
+
import { IsColumnHasHeaderMenuPipe, TableHeaderRowComponent } from './components/table-header-row/table-header-row.component';
|
|
67
67
|
import * as i0 from "@angular/core";
|
|
68
68
|
import * as i1 from "@fundamental-ngx/cdk/utils";
|
|
69
69
|
const EXPORTABLE_DECLARATIONS = [
|
|
@@ -102,7 +102,8 @@ const EXPORTABLE_DECLARATIONS = [
|
|
|
102
102
|
TableRowComponent,
|
|
103
103
|
TableGroupRowComponent,
|
|
104
104
|
TablePoppingRowComponent,
|
|
105
|
-
TableHeaderRowComponent
|
|
105
|
+
TableHeaderRowComponent,
|
|
106
|
+
IsColumnHasHeaderMenuPipe
|
|
106
107
|
];
|
|
107
108
|
export class PlatformTableModule {
|
|
108
109
|
}
|
|
@@ -142,7 +143,8 @@ PlatformTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ver
|
|
|
142
143
|
TableRowComponent,
|
|
143
144
|
TableGroupRowComponent,
|
|
144
145
|
TablePoppingRowComponent,
|
|
145
|
-
TableHeaderRowComponent
|
|
146
|
+
TableHeaderRowComponent,
|
|
147
|
+
IsColumnHasHeaderMenuPipe], imports: [CommonModule,
|
|
146
148
|
FormsModule,
|
|
147
149
|
TableModule,
|
|
148
150
|
ToolbarModule,
|
|
@@ -210,7 +212,8 @@ PlatformTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ver
|
|
|
210
212
|
TableRowComponent,
|
|
211
213
|
TableGroupRowComponent,
|
|
212
214
|
TablePoppingRowComponent,
|
|
213
|
-
TableHeaderRowComponent,
|
|
215
|
+
TableHeaderRowComponent,
|
|
216
|
+
IsColumnHasHeaderMenuPipe, TableHelpersModule] });
|
|
214
217
|
PlatformTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformTableModule, imports: [CommonModule,
|
|
215
218
|
FormsModule,
|
|
216
219
|
TableModule,
|
|
@@ -291,4 +294,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
291
294
|
exports: [...EXPORTABLE_DECLARATIONS, TableHelpersModule]
|
|
292
295
|
}]
|
|
293
296
|
}] });
|
|
294
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3RhYmxlL3RhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFB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LHFCQUFxQixDQUFDLE9BQU8sRUFBRTtRQUMvQixrQkFBa0IsRUFJZ0Isa0JBQWtCOzJGQUUvQyxtQkFBbUI7a0JBMUMvQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsV0FBVzt3QkFDWCxhQUFhO3dCQUNiLFVBQVU7d0JBQ1YsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixVQUFVO3dCQUNWLG9CQUFvQjt3QkFDcEIsVUFBVTt3QkFDVixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsWUFBWTt3QkFDWix5QkFBeUI7d0JBQ3pCLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3dCQUNwQix3Q0FBd0M7d0JBQ3hDLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLHNCQUFzQjt3QkFDdEIsa0JBQWtCO3dCQUNsQixxQkFBcUIsQ0FBQyxPQUFPLEVBQUU7d0JBQy9CLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3FCQUMzQjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxHQUFHLHVCQUF1QixDQUFDO29CQUMxQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLHVCQUF1QixFQUFFLGtCQUFrQixDQUFDO2lCQUM1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEJ1c3lJbmRpY2F0b3JNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnVzeS1pbmRpY2F0b3InO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQgeyBDaGVja2JveE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jaGVja2JveCc7XG5pbXBvcnQgeyBEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2RhdGUtcGlja2VyJztcbmltcG9ydCB7IERpYWxvZ01vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9kaWFsb2cnO1xuaW1wb3J0IHsgRm9ybU1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9mb3JtJztcbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaWNvbic7XG5pbXBvcnQgeyBJbnB1dEdyb3VwTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2lucHV0LWdyb3VwJztcbmltcG9ydCB7IExheW91dEdyaWRNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvbGF5b3V0LWdyaWQnO1xuaW1wb3J0IHsgTGlzdE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9saXN0JztcbmltcG9ydCB7IFBhbmVsTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3BhbmVsJztcbmltcG9ydCB7IFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBSYWRpb01vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9yYWRpbyc7XG5pbXBvcnQgeyBTZWxlY3RNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2VsZWN0JztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3RhYmxlJztcbmltcG9ydCB7XG4gICAgQ2xpY2tlZEJlaGF2aW9yTW9kdWxlLFxuICAgIERpc2FibGVkQmVoYXZpb3JNb2R1bGUsXG4gICAgSW50ZXJzZWN0aW9uU3B5RGlyZWN0aXZlLFxuICAgIFBpcGVNb2R1bGUsXG4gICAgUmVwZWF0TW9kdWxlXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdG9vbGJhcic7XG5pbXBvcnQgeyBEcmFnQW5kRHJvcE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFNjcm9sbGJhck1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY29udGVudC1kZW5zaXR5JztcblxuaW1wb3J0IHsgUGxhdGZvcm1EYXRlUGlja2VyTW9kdWxlLCBQbGF0Zm9ybUlucHV0TW9kdWxlLCBQbGF0Zm9ybVN3aXRjaE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vZm9ybSc7XG5pbXBvcnQgeyBQbGF0Zm9ybUxpc3RNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtL2xpc3QnO1xuaW1wb3J0IHsgUGxhdGZvcm1TZWFyY2hGaWVsZE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2VhcmNoLWZpZWxkJztcbmltcG9ydCB7IFBsYXRmb3JtQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9idXR0b24nO1xuaW1wb3J0IHsgSTE4bk1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5pbXBvcnQgeyBQbGF0Zm9ybUNvbnRlbnREZW5zaXR5RGVwcmVjYXRpb25zTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zaGFyZWQnO1xuaW1wb3J0IHsgU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2tlbGV0b24nO1xuaW1wb3J0IHsgVGFibGVIZWxwZXJzTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS90YWJsZS1oZWxwZXJzJztcblxuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVUb29sYmFyQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBSZXNldEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVZpZXdTZXR0aW5nc0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVZpZXdTZXR0aW5nc0ZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBTb3J0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEdyb3VwaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsdGVyc0xpc3RTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbHRlclN0ZXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsdGVyU2luZ2xlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbHRlck11bHRpU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbHRlckN1c3RvbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVAxM0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVAxM1NvcnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVQMTNGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVQMTNHcm91cENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVAxM0NvbHVtbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtcbiAgICBQMTNTb3J0aW5nRGlhbG9nQ29tcG9uZW50LFxuICAgIEdldEF2YWlsYWJsZVNvcnRDb2x1bW5zUGlwZVxufSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtcDEzLWRpYWxvZy9zb3J0aW5nL3NvcnRpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IFAxM0dyb3VwaW5nRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFAxM0ZpbHRlcmluZ0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBGaWx0ZXJSdWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFAxM0NvbHVtbnNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuXG5pbXBvcnQgeyBQbGF0Zm9ybVRhYmxlQ29sdW1uUmVzaXplckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBOb0RhdGFXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlRWRpdGFibGVDZWxsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWVkaXRhYmxlLWNlbGwvdGFibGUtZWRpdGFibGUtY2VsbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVUb29sYmFyTGVmdEFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtdG9vbGJhci90YWJsZS10b29sYmFyLWxlZnQtYWN0aW9ucy5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBUYWJsZUhlYWRlckNlbGxDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlQ2VsbEhlYWRlclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtcm93L3RhYmxlLXJvdy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVHcm91cFJvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1ncm91cC1yb3cvdGFibGUtZ3JvdXAtcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVBvcHBpbmdSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtcG9wcGluZy1yb3cvdGFibGUtcG9wcGluZy1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlSGVhZGVyUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWhlYWRlci1yb3cvdGFibGUtaGVhZGVyLXJvdy5jb21wb25lbnQnO1xuXG5jb25zdCBFWFBPUlRBQkxFX0RFQ0xBUkFUSU9OUyA9IFtcbiAgICBUYWJsZUNvbXBvbmVudCxcbiAgICBUYWJsZUNvbHVtbkNvbXBvbmVudCxcbiAgICBUYWJsZVRvb2xiYXJDb21wb25lbnQsXG4gICAgVGFibGVUb29sYmFyQWN0aW9uc0NvbXBvbmVudCxcbiAgICBUYWJsZVZpZXdTZXR0aW5nc0RpYWxvZ0NvbXBvbmVudCxcbiAgICBUYWJsZVZpZXdTZXR0aW5nc0ZpbHRlckNvbXBvbmVudCxcbiAgICBTb3J0aW5nQ29tcG9uZW50LFxuICAgIEdyb3VwaW5nQ29tcG9uZW50LFxuICAgIEZpbHRlcnNDb21wb25lbnQsXG4gICAgRmlsdGVyc0xpc3RTdGVwQ29tcG9uZW50LFxuICAgIEZpbHRlclN0ZXBDb21wb25lbnQsXG4gICAgRmlsdGVyU2luZ2xlU2VsZWN0Q29tcG9uZW50LFxuICAgIEZpbHRlck11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgIEZpbHRlckN1c3RvbUNvbXBvbmVudCxcbiAgICBSZXNldEJ1dHRvbkNvbXBvbmVudCxcbiAgICBUYWJsZVAxM0RpYWxvZ0NvbXBvbmVudCxcbiAgICBUYWJsZVAxM1NvcnRDb21wb25lbnQsXG4gICAgVGFibGVQMTNGaWx0ZXJDb21wb25lbnQsXG4gICAgVGFibGVQMTNHcm91cENvbXBvbmVudCxcbiAgICBUYWJsZVAxM0NvbHVtbnNDb21wb25lbnQsXG4gICAgUDEzU29ydGluZ0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQMTNHcm91cGluZ0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQMTNGaWx0ZXJpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgRmlsdGVyUnVsZUNvbXBvbmVudCxcbiAgICBQMTNDb2x1bW5zRGlhbG9nQ29tcG9uZW50LFxuICAgIFBsYXRmb3JtVGFibGVDb2x1bW5SZXNpemVyQ29tcG9uZW50LFxuICAgIE5vRGF0YVdyYXBwZXJDb21wb25lbnQsXG4gICAgR2V0QXZhaWxhYmxlU29ydENvbHVtbnNQaXBlLFxuICAgIFRhYmxlRWRpdGFibGVDZWxsQ29tcG9uZW50LFxuICAgIFRhYmxlVG9vbGJhckxlZnRBY3Rpb25zQ29tcG9uZW50LFxuICAgIFRhYmxlSGVhZGVyQ2VsbENvbnRlbnRDb21wb25lbnQsXG4gICAgVGFibGVDZWxsSGVhZGVyUG9wb3ZlckNvbXBvbmVudCxcbiAgICBUYWJsZVJvd0NvbXBvbmVudCxcbiAgICBUYWJsZUdyb3VwUm93Q29tcG9uZW50LFxuICAgIFRhYmxlUG9wcGluZ1Jvd0NvbXBvbmVudCxcbiAgICBUYWJsZUhlYWRlclJvd0NvbXBvbmVudFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFRhYmxlTW9kdWxlLFxuICAgICAgICBUb29sYmFyTW9kdWxlLFxuICAgICAgICBGb3JtTW9kdWxlLFxuICAgICAgICBDaGVja2JveE1vZHVsZSxcbiAgICAgICAgUmFkaW9Nb2R1bGUsXG4gICAgICAgIElucHV0R3JvdXBNb2R1bGUsXG4gICAgICAgIFBvcG92ZXJNb2R1bGUsXG4gICAgICAgIExpc3RNb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtQnV0dG9uTW9kdWxlLFxuICAgICAgICBQaXBlTW9kdWxlLFxuICAgICAgICBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtSW5wdXRNb2R1bGUsXG4gICAgICAgIERpYWxvZ01vZHVsZSxcbiAgICAgICAgUGxhdGZvcm1TZWFyY2hGaWVsZE1vZHVsZSxcbiAgICAgICAgSWNvbk1vZHVsZSxcbiAgICAgICAgSTE4bk1vZHVsZSxcbiAgICAgICAgU2VsZWN0TW9kdWxlLFxuICAgICAgICBMYXlvdXRHcmlkTW9kdWxlLFxuICAgICAgICBQYW5lbE1vZHVsZSxcbiAgICAgICAgRGF0ZVBpY2tlck1vZHVsZSxcbiAgICAgICAgQnVzeUluZGljYXRvck1vZHVsZSxcbiAgICAgICAgRHJhZ0FuZERyb3BNb2R1bGUsXG4gICAgICAgIFNjcm9sbGJhck1vZHVsZSxcbiAgICAgICAgUGxhdGZvcm1EYXRlUGlja2VyTW9kdWxlLFxuICAgICAgICBQbGF0Zm9ybVN3aXRjaE1vZHVsZSxcbiAgICAgICAgUGxhdGZvcm1Db250ZW50RGVuc2l0eURlcHJlY2F0aW9uc01vZHVsZSxcbiAgICAgICAgQ29udGVudERlbnNpdHlNb2R1bGUsXG4gICAgICAgIFNrZWxldG9uTW9kdWxlLFxuICAgICAgICBSZXBlYXRNb2R1bGUsXG4gICAgICAgIERpc2FibGVkQmVoYXZpb3JNb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtTGlzdE1vZHVsZSxcbiAgICAgICAgQ2xpY2tlZEJlaGF2aW9yTW9kdWxlLmZvclJvb3QoKSxcbiAgICAgICAgVGFibGVIZWxwZXJzTW9kdWxlLFxuICAgICAgICBJbnRlcnNlY3Rpb25TcHlEaXJlY3RpdmVcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogWy4uLkVYUE9SVEFCTEVfREVDTEFSQVRJT05TXSxcbiAgICBleHBvcnRzOiBbLi4uRVhQT1JUQUJMRV9ERUNMQVJBVElPTlMsIFRhYmxlSGVscGVyc01vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgUGxhdGZvcm1UYWJsZU1vZHVsZSB7fVxuIl19
|
|
297
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3RhYmxlL3RhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFB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QjtRQUNwQixjQUFjO1FBQ2QsWUFBWTtRQUNaLHNCQUFzQjtRQUN0QixrQkFBa0I7UUFDbEIscUJBQXFCLENBQUMsT0FBTyxFQUFFO1FBQy9CLGtCQUFrQixFQUlnQixrQkFBa0I7MkZBRS9DLG1CQUFtQjtrQkExQy9CLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsVUFBVTt3QkFDVixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLFVBQVU7d0JBQ1Ysb0JBQW9CO3dCQUNwQixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLHlCQUF5Qjt3QkFDekIsVUFBVTt3QkFDVixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4QixvQkFBb0I7d0JBQ3BCLHdDQUF3Qzt3QkFDeEMsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLFlBQVk7d0JBQ1osc0JBQXNCO3dCQUN0QixrQkFBa0I7d0JBQ2xCLHFCQUFxQixDQUFDLE9BQU8sRUFBRTt3QkFDL0Isa0JBQWtCO3dCQUNsQix3QkFBd0I7cUJBQzNCO29CQUNELFlBQVksRUFBRSxDQUFDLEdBQUcsdUJBQXVCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsa0JBQWtCLENBQUM7aUJBQzVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQnVzeUluZGljYXRvck1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9idXN5LWluZGljYXRvcic7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnV0dG9uJztcbmltcG9ydCB7IENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NoZWNrYm94JztcbmltcG9ydCB7IERhdGVQaWNrZXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvZGF0ZS1waWNrZXInO1xuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2RpYWxvZyc7XG5pbXBvcnQgeyBGb3JtTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuaW1wb3J0IHsgSWNvbk1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IElucHV0R3JvdXBNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaW5wdXQtZ3JvdXAnO1xuaW1wb3J0IHsgTGF5b3V0R3JpZE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9sYXlvdXQtZ3JpZCc7XG5pbXBvcnQgeyBMaXN0TW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2xpc3QnO1xuaW1wb3J0IHsgUGFuZWxNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcGFuZWwnO1xuaW1wb3J0IHsgUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9wb3BvdmVyJztcbmltcG9ydCB7IFJhZGlvTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3JhZGlvJztcbmltcG9ydCB7IFNlbGVjdE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zZWxlY3QnO1xuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGFibGUnO1xuaW1wb3J0IHtcbiAgICBDbGlja2VkQmVoYXZpb3JNb2R1bGUsXG4gICAgRGlzYWJsZWRCZWhhdmlvck1vZHVsZSxcbiAgICBJbnRlcnNlY3Rpb25TcHlEaXJlY3RpdmUsXG4gICAgUGlwZU1vZHVsZSxcbiAgICBSZXBlYXRNb2R1bGVcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgVG9vbGJhck1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS90b29sYmFyJztcbmltcG9ydCB7IERyYWdBbmREcm9wTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3Njcm9sbGJhcic7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eU1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuXG5pbXBvcnQgeyBQbGF0Zm9ybURhdGVQaWNrZXJNb2R1bGUsIFBsYXRmb3JtSW5wdXRNb2R1bGUsIFBsYXRmb3JtU3dpdGNoTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9mb3JtJztcbmltcG9ydCB7IFBsYXRmb3JtTGlzdE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vbGlzdCc7XG5pbXBvcnQgeyBQbGF0Zm9ybVNlYXJjaEZpZWxkTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zZWFyY2gtZmllbGQnO1xuaW1wb3J0IHsgUGxhdGZvcm1CdXR0b25Nb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtL2J1dHRvbic7XG5pbXBvcnQgeyBJMThuTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcbmltcG9ydCB7IFBsYXRmb3JtQ29udGVudERlbnNpdHlEZXByZWNhdGlvbnNNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtL3NoYXJlZCc7XG5pbXBvcnQgeyBTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9za2VsZXRvbic7XG5pbXBvcnQgeyBUYWJsZUhlbHBlcnNNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtL3RhYmxlLWhlbHBlcnMnO1xuXG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVRvb2xiYXJBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFJlc2V0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlVmlld1NldHRpbmdzRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlVmlld1NldHRpbmdzRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFNvcnRpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgR3JvdXBpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsdGVyc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBGaWx0ZXJzTGlzdFN0ZXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsdGVyU3RlcENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBGaWx0ZXJTaW5nbGVTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsdGVyTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsdGVyQ3VzdG9tQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlUDEzRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlUDEzU29ydENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVAxM0ZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVAxM0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRhYmxlUDEzQ29sdW1uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQge1xuICAgIFAxM1NvcnRpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgR2V0QXZhaWxhYmxlU29ydENvbHVtbnNQaXBlXG59IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1wMTMtZGlhbG9nL3NvcnRpbmcvc29ydGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUDEzR3JvdXBpbmdEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgUDEzRmlsdGVyaW5nRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbHRlclJ1bGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgUDEzQ29sdW1uc0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5cbmltcG9ydCB7IFBsYXRmb3JtVGFibGVDb2x1bW5SZXNpemVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IE5vRGF0YVdyYXBwZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVFZGl0YWJsZUNlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtZWRpdGFibGUtY2VsbC90YWJsZS1lZGl0YWJsZS1jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVRvb2xiYXJMZWZ0QWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS10b29sYmFyL3RhYmxlLXRvb2xiYXItbGVmdC1hY3Rpb25zLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFRhYmxlSGVhZGVyQ2VsbENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVDZWxsSGVhZGVyUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZVJvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1yb3cvdGFibGUtcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUdyb3VwUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWdyb3VwLXJvdy90YWJsZS1ncm91cC1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlUG9wcGluZ1Jvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1wb3BwaW5nLXJvdy90YWJsZS1wb3BwaW5nLXJvdy5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBJc0NvbHVtbkhhc0hlYWRlck1lbnVQaXBlLFxuICAgIFRhYmxlSGVhZGVyUm93Q29tcG9uZW50XG59IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1oZWFkZXItcm93L3RhYmxlLWhlYWRlci1yb3cuY29tcG9uZW50JztcblxuY29uc3QgRVhQT1JUQUJMRV9ERUNMQVJBVElPTlMgPSBbXG4gICAgVGFibGVDb21wb25lbnQsXG4gICAgVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgVGFibGVUb29sYmFyQ29tcG9uZW50LFxuICAgIFRhYmxlVG9vbGJhckFjdGlvbnNDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NGaWx0ZXJDb21wb25lbnQsXG4gICAgU29ydGluZ0NvbXBvbmVudCxcbiAgICBHcm91cGluZ0NvbXBvbmVudCxcbiAgICBGaWx0ZXJzQ29tcG9uZW50LFxuICAgIEZpbHRlcnNMaXN0U3RlcENvbXBvbmVudCxcbiAgICBGaWx0ZXJTdGVwQ29tcG9uZW50LFxuICAgIEZpbHRlclNpbmdsZVNlbGVjdENvbXBvbmVudCxcbiAgICBGaWx0ZXJNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICBGaWx0ZXJDdXN0b21Db21wb25lbnQsXG4gICAgUmVzZXRCdXR0b25Db21wb25lbnQsXG4gICAgVGFibGVQMTNEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVQMTNTb3J0Q29tcG9uZW50LFxuICAgIFRhYmxlUDEzRmlsdGVyQ29tcG9uZW50LFxuICAgIFRhYmxlUDEzR3JvdXBDb21wb25lbnQsXG4gICAgVGFibGVQMTNDb2x1bW5zQ29tcG9uZW50LFxuICAgIFAxM1NvcnRpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzR3JvdXBpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzRmlsdGVyaW5nRGlhbG9nQ29tcG9uZW50LFxuICAgIEZpbHRlclJ1bGVDb21wb25lbnQsXG4gICAgUDEzQ29sdW1uc0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQbGF0Zm9ybVRhYmxlQ29sdW1uUmVzaXplckNvbXBvbmVudCxcbiAgICBOb0RhdGFXcmFwcGVyQ29tcG9uZW50LFxuICAgIEdldEF2YWlsYWJsZVNvcnRDb2x1bW5zUGlwZSxcbiAgICBUYWJsZUVkaXRhYmxlQ2VsbENvbXBvbmVudCxcbiAgICBUYWJsZVRvb2xiYXJMZWZ0QWN0aW9uc0NvbXBvbmVudCxcbiAgICBUYWJsZUhlYWRlckNlbGxDb250ZW50Q29tcG9uZW50LFxuICAgIFRhYmxlQ2VsbEhlYWRlclBvcG92ZXJDb21wb25lbnQsXG4gICAgVGFibGVSb3dDb21wb25lbnQsXG4gICAgVGFibGVHcm91cFJvd0NvbXBvbmVudCxcbiAgICBUYWJsZVBvcHBpbmdSb3dDb21wb25lbnQsXG4gICAgVGFibGVIZWFkZXJSb3dDb21wb25lbnQsXG4gICAgSXNDb2x1bW5IYXNIZWFkZXJNZW51UGlwZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFRhYmxlTW9kdWxlLFxuICAgICAgICBUb29sYmFyTW9kdWxlLFxuICAgICAgICBGb3JtTW9kdWxlLFxuICAgICAgICBDaGVja2JveE1vZHVsZSxcbiAgICAgICAgUmFkaW9Nb2R1bGUsXG4gICAgICAgIElucHV0R3JvdXBNb2R1bGUsXG4gICAgICAgIFBvcG92ZXJNb2R1bGUsXG4gICAgICAgIExpc3RNb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtQnV0dG9uTW9kdWxlLFxuICAgICAgICBQaXBlTW9kdWxlLFxuICAgICAgICBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtSW5wdXRNb2R1bGUsXG4gICAgICAgIERpYWxvZ01vZHVsZSxcbiAgICAgICAgUGxhdGZvcm1TZWFyY2hGaWVsZE1vZHVsZSxcbiAgICAgICAgSWNvbk1vZHVsZSxcbiAgICAgICAgSTE4bk1vZHVsZSxcbiAgICAgICAgU2VsZWN0TW9kdWxlLFxuICAgICAgICBMYXlvdXRHcmlkTW9kdWxlLFxuICAgICAgICBQYW5lbE1vZHVsZSxcbiAgICAgICAgRGF0ZVBpY2tlck1vZHVsZSxcbiAgICAgICAgQnVzeUluZGljYXRvck1vZHVsZSxcbiAgICAgICAgRHJhZ0FuZERyb3BNb2R1bGUsXG4gICAgICAgIFNjcm9sbGJhck1vZHVsZSxcbiAgICAgICAgUGxhdGZvcm1EYXRlUGlja2VyTW9kdWxlLFxuICAgICAgICBQbGF0Zm9ybVN3aXRjaE1vZHVsZSxcbiAgICAgICAgUGxhdGZvcm1Db250ZW50RGVuc2l0eURlcHJlY2F0aW9uc01vZHVsZSxcbiAgICAgICAgQ29udGVudERlbnNpdHlNb2R1bGUsXG4gICAgICAgIFNrZWxldG9uTW9kdWxlLFxuICAgICAgICBSZXBlYXRNb2R1bGUsXG4gICAgICAgIERpc2FibGVkQmVoYXZpb3JNb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtTGlzdE1vZHVsZSxcbiAgICAgICAgQ2xpY2tlZEJlaGF2aW9yTW9kdWxlLmZvclJvb3QoKSxcbiAgICAgICAgVGFibGVIZWxwZXJzTW9kdWxlLFxuICAgICAgICBJbnRlcnNlY3Rpb25TcHlEaXJlY3RpdmVcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogWy4uLkVYUE9SVEFCTEVfREVDTEFSQVRJT05TXSxcbiAgICBleHBvcnRzOiBbLi4uRVhQT1JUQUJMRV9ERUNMQVJBVElPTlMsIFRhYmxlSGVscGVyc01vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgUGxhdGZvcm1UYWJsZU1vZHVsZSB7fVxuIl19
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/member-ordering */
|
|
1
2
|
import { ChangeDetectorRef, Directive, EventEmitter, forwardRef, HostBinding, inject, Input, NgZone, Output } from '@angular/core';
|
|
2
3
|
import { take } from 'rxjs/operators';
|
|
3
4
|
import { FDP_TABLE_DRAGGABLE_DIRECTIVE } from '../constants';
|
|
@@ -22,7 +23,9 @@ export class TableDraggableDirective extends TableDraggable {
|
|
|
22
23
|
/** @hidden */
|
|
23
24
|
this._ngZone = inject(NgZone);
|
|
24
25
|
/** @hidden */
|
|
25
|
-
this._cdr = inject(ChangeDetectorRef
|
|
26
|
+
this._cdr = inject(ChangeDetectorRef, {
|
|
27
|
+
host: true
|
|
28
|
+
});
|
|
26
29
|
/** @hidden */
|
|
27
30
|
this.dragDropInProgress = false;
|
|
28
31
|
}
|
|
@@ -77,6 +80,8 @@ export class TableDraggableDirective extends TableDraggable {
|
|
|
77
80
|
});
|
|
78
81
|
this._onZoneFree(() => {
|
|
79
82
|
if (this.isTreeTable && event.draggedItemIndex !== event.replacedItemIndex) {
|
|
83
|
+
event.draggedItemIndex = this._table._tableRowsInViewPortPlaceholder[event.draggedItemIndex];
|
|
84
|
+
event.replacedItemIndex = this._table._tableRowsInViewPortPlaceholder[event.replacedItemIndex];
|
|
80
85
|
const dragRow = this._table._tableRows.find((row) => row === this._table._tableRowsVisible[event.draggedItemIndex]);
|
|
81
86
|
const dropRow = this._table._tableRows.find((row) => row === this._table._tableRowsVisible[event.replacedItemIndex]);
|
|
82
87
|
if (!dragRow || !dropRow || this._isDroppedInsideItself(dropRow, dragRow)) {
|
|
@@ -93,6 +98,7 @@ export class TableDraggableDirective extends TableDraggable {
|
|
|
93
98
|
}
|
|
94
99
|
this._cdr.detectChanges();
|
|
95
100
|
this._emitRowsRearrangeEvent(dragRow, dropRow, event);
|
|
101
|
+
this._table.refreshDndList();
|
|
96
102
|
}
|
|
97
103
|
});
|
|
98
104
|
}
|
|
@@ -238,4 +244,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
238
244
|
}], rowsRearrange: [{
|
|
239
245
|
type: Output
|
|
240
246
|
}] } });
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZHJhZ2dhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi90YWJsZS1oZWxwZXJzL2RpcmVjdGl2ZXMvdGFibGUtZHJhZ2dhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVELE9BQU8sRUFBWSx1QkFBdUIsRUFBMEIsTUFBTSxXQUFXLENBQUM7QUFDdEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQWN0RCxNQUFNLE9BQU8sdUJBQWlDLFNBQVEsY0FBaUI7SUFYdkU7O1FBWUksNEVBQTRFO1FBRTVFLHdCQUFtQixHQUFHLElBQUksQ0FBQztRQUUzQixvQ0FBb0M7UUFHcEMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEI7O1dBRUc7UUFFSCxhQUFRLEdBQWtCLE1BQU0sQ0FBQztRQWFqQyx5SEFBeUg7UUFFaEgsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBOEIsQ0FBQztRQVV4RSxjQUFjO1FBQ0csWUFBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUxQyxjQUFjO1FBQ0csU0FBSSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWxELGNBQWM7UUFDZCx1QkFBa0IsR0FBRyxLQUFLLENBQUM7S0FpTzlCO0lBaFBHLGNBQWM7SUFDZCxJQUFJLGNBQWM7UUFDZCxPQUFPLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3hELENBQUM7SUFjRCw0QkFBNEI7SUFDNUIsUUFBUSxDQUFDLEtBQVk7UUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYTtRQUNULElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQUVELDBEQUEwRDtJQUMxRCxtQkFBbUIsQ0FBQyxHQUFXLEVBQUUsS0FBWSxFQUFFLGVBQXVCLEVBQUUsSUFBdUI7UUFDM0YsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdEIsT0FBTztTQUNWO1FBQ0QsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksYUFBYSxDQUFDO1FBQ2xCLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxHQUFHLGVBQWUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLEdBQUcsZUFBZSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTdGLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM5QyxNQUFNLGFBQWEsR0FBNkI7Z0JBQzVDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQjtnQkFDcEMsZ0JBQWdCLEVBQUUsZUFBZTtnQkFDakMsaUJBQWlCLEVBQUUsYUFBYTtnQkFDaEMsUUFBUSxFQUFFLEdBQUcsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUTtnQkFDN0MsSUFBSTthQUNQLENBQUM7WUFDRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDckMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWCxLQUFLLENBQUMsTUFBc0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMxQyxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVELDBEQUEwRDtJQUMxRCxhQUFhO1FBQ1Qsc0RBQXNEO1FBQ3RELElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2hDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELHFEQUFxRDtJQUNyRCxnQkFBZ0IsQ0FBQyxLQUE0QjtRQUN6QyxzREFBc0Q7UUFDdEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDaEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDeEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUNsQixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLGdCQUFnQixLQUFLLEtBQUssQ0FBQyxpQkFBaUIsRUFBRTtnQkFDeEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN2QyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQ3pFLENBQUM7Z0JBQ0YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN2QyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQzFFLENBQUM7Z0JBRUYsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFFO29CQUN2RSxPQUFPO2lCQUNWO2dCQUVELElBQUksQ0FBQyxzQ0FBc0MsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDckQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFcEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO2lCQUN2RDtxQkFBTTtvQkFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLENBQUM7aUJBQ3BDO2dCQUVELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzFCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ3pEO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsdUJBQXVCLENBQUMsR0FBYSxFQUFFLE9BQWlCLEVBQUUsS0FBNEI7UUFDbEYsTUFBTSxJQUFJLEdBQVUsRUFBRSxDQUFDO1FBRXZCLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUN4QyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNuQixJQUFJLHVCQUF1QixDQUN2QixHQUFHLENBQUMsS0FBSyxFQUNULE9BQU8sQ0FBQyxLQUFLLEVBQ2IsS0FBSyxDQUFDLGdCQUFnQixFQUN0QixLQUFLLENBQUMsaUJBQWlCLEVBQ3ZCLEtBQUssQ0FBQyxRQUFRLEVBQ2QsS0FBSyxDQUFDLElBQUksRUFDVixJQUFJLENBQ1AsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELGNBQWM7SUFDTixzQkFBc0IsQ0FBQyxPQUFpQixFQUFFLE9BQWlCO1FBQy9ELE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGNBQWM7SUFDTixzQ0FBc0MsQ0FBQyxPQUFpQjtRQUM1RCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO1FBRWpDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDWixPQUFPO1NBQ1Y7UUFFRCxNQUFNLGlCQUFpQixHQUFHLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3RSxNQUFNLGVBQWUsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFekUsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvRCxTQUFTLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ04sZ0NBQWdDLENBQUMsT0FBaUIsRUFBRSxPQUFpQixFQUFFLElBQXdCO1FBQ25HLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNoQiw2Q0FBNkM7WUFDN0MsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMvRTtRQUNELE9BQU8sQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFM0QsSUFBSSxJQUFJLEtBQUssT0FBTyxFQUFFO1lBQ2xCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFO2dCQUNqQixPQUFPLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN6QztZQUVELE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9CLE9BQU8sQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO1NBQy9CO2FBQU07WUFDSCxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDaEMsT0FBTyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZDLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO2FBQ3RDO1NBQ0o7UUFFRCxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3JCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxjQUFjO0lBQ04sMEJBQTBCLENBQUMsT0FBaUIsRUFBRSxPQUFpQixFQUFFLEtBQTRCO1FBQ2pHLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7WUFDeEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDeEQ7YUFBTTtZQUNILElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDbkQ7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNOLDJCQUEyQixDQUFDLE9BQWlCLEVBQUUsT0FBaUI7UUFDcEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFFdkMsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sZUFBZSxHQUFHLGVBQWUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV6RSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTVFLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxPQUFPLENBQUMsQ0FBQztRQUNqRSxNQUFNLGVBQWUsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFekUsTUFBTSxrQkFBa0IsR0FBRyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUV0RCxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsWUFBWSxHQUFHLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxNQUFNLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztRQUNoSCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBRXRFLE9BQU87WUFDSCxPQUFPO1lBQ1AsVUFBVTtZQUNWLGdCQUFnQjtZQUNoQixZQUFZO1NBQ2YsQ0FBQztJQUNOLENBQUM7SUFFRCxjQUFjO0lBQ04sc0JBQXNCLENBQUMsT0FBaUIsRUFBRSxPQUFpQixFQUFFLEtBQTRCO1FBQzdGLE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FDNUYsT0FBTyxFQUNQLE9BQU8sQ0FDVixDQUFDO1FBRUYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUc7WUFDckIsR0FBRyxPQUFPO1lBQ1YsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNuRCxHQUFHLFVBQVU7WUFDYixHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO1lBQ25ELEdBQUcsZ0JBQWdCO1NBQ3RCLENBQUM7SUFDTixDQUFDO0lBRUQsY0FBYztJQUNOLHdCQUF3QixDQUFDLE9BQWlCLEVBQUUsT0FBaUI7UUFDakUsTUFBTSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUM1RixPQUFPLEVBQ1AsT0FBTyxDQUNWLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsT0FBTyxFQUFFLEdBQUcsWUFBWSxFQUFFLEdBQUcsVUFBVSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsY0FBYztJQUNOLFdBQVcsQ0FBQyxRQUFvQjtRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3ZELFFBQVEsRUFBRSxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztvSEE5UVEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsMFlBUHJCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsNkJBQTZCO1lBQ3RDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7U0FDekQ7S0FDSjsyRkFFUSx1QkFBdUI7a0JBWG5DLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsd0RBQXdEO29CQUNsRSxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSw2QkFBNkI7NEJBQ3RDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDO3lCQUN6RDtxQkFDSjtpQkFDSjs4QkFJRyxtQkFBbUI7c0JBRGxCLEtBQUs7Z0JBTU4sV0FBVztzQkFGVixXQUFXO3VCQUFDLHNCQUFzQjs7c0JBQ2xDLEtBQUs7Z0JBT04sUUFBUTtzQkFEUCxLQUFLO2dCQUtOLGFBQWE7c0JBRFosS0FBSztnQkFRTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBS0csYUFBYTtzQkFEckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBEcmFnb3ZlclByZWRpY2F0ZSxcbiAgICBEcm9wUHJlZGljYXRlLFxuICAgIEZkRG5kRHJvcEV2ZW50TW9kZSxcbiAgICBGZERuZERyb3BUeXBlLFxuICAgIEZkRHJvcEV2ZW50XG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGRFBfVEFCTEVfRFJBR0dBQkxFX0RJUkVDVElWRSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUYWJsZVJvd1R5cGUgfSBmcm9tICcuLi9lbnVtcyc7XG5pbXBvcnQgeyBmaW5kUm93Q2hpbGRyZW4sIGdldFJvd1BhcmVudHMgfSBmcm9tICcuLi9oZWxwZXJzJztcbmltcG9ydCB7IFRhYmxlUm93LCBUYWJsZVJvd3NSZWFycmFuZ2VFdmVudCwgVXBkYXRlZERuZFJvd3NQb3NpdGlvbiB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBUYWJsZURyYWdnYWJsZSB9IGZyb20gJy4uL21vZGVscy9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSAnLi4vdGFibGUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnZmRwLXRhYmxlW2lzVHJlZVRhYmxlXSwgZmRwLXRhYmxlW2VuYWJsZVJvd1Jlb3JkZXJpbmddJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBGRFBfVEFCTEVfRFJBR0dBQkxFX0RJUkVDVElWRSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRhYmxlRHJhZ2dhYmxlRGlyZWN0aXZlKVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZURyYWdnYWJsZURpcmVjdGl2ZTxUID0gYW55PiBleHRlbmRzIFRhYmxlRHJhZ2dhYmxlPFQ+IHtcbiAgICAvKiogV2hldGhlciB0byBhbGxvdyBmb3Igcm93IHJlb3JkZXJpbmcgb24gdHJlZSB0YWJsZXMgdmlhIGRyYWcgYW5kIGRyb3AuICovXG4gICAgQElucHV0KClcbiAgICBlbmFibGVSb3dSZW9yZGVyaW5nID0gdHJ1ZTtcblxuICAgIC8qKiBXaGV0aGVyIHRyZWUgbW9kZSBpcyBlbmFibGVkLiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtdGFibGUtLXRyZWUnKVxuICAgIEBJbnB1dCgpXG4gICAgaXNUcmVlVGFibGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFJvdyBkcm9wIG1vZGUuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBkcm9wTW9kZTogRmREbmREcm9wVHlwZSA9ICdhdXRvJztcblxuICAgIC8qKiBQcmVkaWNhdGUgZnVuY3Rpb24gdGhhdCBjaGVja3Mgd2hldGhlciB0aGUgaXRlbSBjYW4gYmUgZHJvcHBlZCBvdmVyIGFub3RoZXIgaXRlbS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGRyb3BQcmVkaWNhdGU6IERyb3BQcmVkaWNhdGU8VGFibGVSb3c8VD4+O1xuXG4gICAgLyoqXG4gICAgICogUHJlZGljYXRlIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIHdoZXRoZXIgdGhlIGl0ZW0gY2FuIGJlIGRyYWdnZWQgb3ZlciBhbm90aGVyIGl0ZW0uXG4gICAgICogSWYgdGhlIGZ1bmN0aW9uIHJldHVybnMgYGZhbHNlYCwgZHJhZ2dlZCBvdmVyIGl0ZW0gd2lsbCBub3QgYmUgaGlnaGxpZ2h0ZWQsIGFuZCBkcm9wIGV2ZW50IHdpbGwgYmUgY2FuY2VsZWQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBkcmFnb3ZlclByZWRpY2F0ZTogRHJhZ292ZXJQcmVkaWNhdGU8VGFibGVSb3c8VD4+O1xuXG4gICAgLyoqIEV2ZW50IGZpcmVkIHdoZW4gdHJlZSByb3dzIHJlYXJyYW5nZWQgdGhyb3VnaCBkcmFnICYgZHJvcC4gQ29uc2lkZXIgdGhhdCByb3dzIHJlYXJyYW5nZWQgd2l0aCB0aGVpciBjaGlsZHJlbiByb3dzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHJvd3NSZWFycmFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRhYmxlUm93c1JlYXJyYW5nZUV2ZW50PFQ+PigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX3Jvd3NEcmFnZ2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVHJlZVRhYmxlICYmIHRoaXMuZW5hYmxlUm93UmVvcmRlcmluZztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RhYmxlOiBUYWJsZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGRyYWdEcm9wSW5Qcm9ncmVzcyA9IGZhbHNlO1xuXG4gICAgLyoqIFNldHMgdGFibGUgcmVmZXJlbmNlLiAqL1xuICAgIHNldFRhYmxlKHRhYmxlOiBUYWJsZSk6IHZvaWQge1xuICAgICAgICB0aGlzLl90YWJsZSA9IHRhYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEluaXRpYXRlcyBkcmFnJmRyb3Agc2VxdWVuY2UuXG4gICAgICovXG4gICAgZHJhZ0Ryb3BTdGFydCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kcmFnRHJvcEluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgIH1cblxuICAgIC8qKiBNZXRob2QgY2FsbGVkIHdoZW4gZG5kIHBlcmZvcm1lZCB3aXRoIHRoZSBrZXlib2FyZC4gKi9cbiAgICBkcmFnUm93RnJvbUtleWJvYXJkKGRpcjogc3RyaW5nLCBldmVudDogRXZlbnQsIGN1cnJlbnRSb3dJbmRleDogbnVtYmVyLCBtb2RlOiAnc2hpZnQnIHwgJ2dyb3VwJyk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX3Jvd3NEcmFnZ2FibGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBsZXQgcmVwbGFjZWRJbmRleDtcbiAgICAgICAgZGlyID09PSAndXAnID8gKHJlcGxhY2VkSW5kZXggPSBjdXJyZW50Um93SW5kZXggLSAxKSA6IChyZXBsYWNlZEluZGV4ID0gY3VycmVudFJvd0luZGV4ICsgMSk7XG5cbiAgICAgICAgaWYgKHRoaXMuX3RhYmxlLl90YWJsZVJvd3NWaXNpYmxlW3JlcGxhY2VkSW5kZXhdKSB7XG4gICAgICAgICAgICBjb25zdCBkcmFnRHJvcEV2ZW50OiBGZERyb3BFdmVudDxUYWJsZVJvdzxUPj4gPSB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMuX3RhYmxlLl90YWJsZVJvd3NWaXNpYmxlLFxuICAgICAgICAgICAgICAgIGRyYWdnZWRJdGVtSW5kZXg6IGN1cnJlbnRSb3dJbmRleCxcbiAgICAgICAgICAgICAgICByZXBsYWNlZEl0ZW1JbmRleDogcmVwbGFjZWRJbmRleCxcbiAgICAgICAgICAgICAgICBpbnNlcnRBdDogZGlyID09PSAnZG93bicgPyAnYWZ0ZXInIDogJ2JlZm9yZScsXG4gICAgICAgICAgICAgICAgbW9kZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHRoaXMuZHJhZ0Ryb3BJdGVtRHJvcChkcmFnRHJvcEV2ZW50KTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBNZXRob2QgY2FsbGVkIHdoZW4gZHJhZyZkcm9wIGV2ZW50IGJlaW5nIGNhbmNlbGxlZC4gKi9cbiAgICBkcm9wQ2FuY2VsbGVkKCk6IHZvaWQge1xuICAgICAgICAvKiogQWZ0ZXIgdGltZW91dCB0byBtYWtlIGNsaWNrIGV2ZW50IGhhbmRsZWQgZmlyc3QgKi9cbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMuZHJhZ0Ryb3BJblByb2dyZXNzID0gZmFsc2UpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIE1ldGhvZCBjYWxsZWQgd2hlbiBkcmFnZ2VkIGl0ZW0gYmVpbmcgZHJvcHBlZC4gKi9cbiAgICBkcmFnRHJvcEl0ZW1Ecm9wKGV2ZW50OiBGZERyb3BFdmVudDxUYWJsZVJvdz4pOiB2b2lkIHtcbiAgICAgICAgLyoqIEFmdGVyIHRpbWVvdXQgdG8gbWFrZSBjbGljayBldmVudCBoYW5kbGVkIGZpcnN0ICovXG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLmRyYWdEcm9wSW5Qcm9ncmVzcyA9IGZhbHNlKSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX29uWm9uZUZyZWUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNUcmVlVGFibGUgJiYgZXZlbnQuZHJhZ2dlZEl0ZW1JbmRleCAhPT0gZXZlbnQucmVwbGFjZWRJdGVtSW5kZXgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBkcmFnUm93ID0gdGhpcy5fdGFibGUuX3RhYmxlUm93cy5maW5kKFxuICAgICAgICAgICAgICAgICAgICAocm93KSA9PiByb3cgPT09IHRoaXMuX3RhYmxlLl90YWJsZVJvd3NWaXNpYmxlW2V2ZW50LmRyYWdnZWRJdGVtSW5kZXhdXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjb25zdCBkcm9wUm93ID0gdGhpcy5fdGFibGUuX3RhYmxlUm93cy5maW5kKFxuICAgICAgICAgICAgICAgICAgICAocm93KSA9PiByb3cgPT09IHRoaXMuX3RhYmxlLl90YWJsZVJvd3NWaXNpYmxlW2V2ZW50LnJlcGxhY2VkSXRlbUluZGV4XVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWRyYWdSb3cgfHwgIWRyb3BSb3cgfHwgdGhpcy5faXNEcm9wcGVkSW5zaWRlSXRzZWxmKGRyb3BSb3csIGRyYWdSb3cpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9kcmFnRHJvcFVwZGF0ZURyYWdQYXJlbnRSb3dBdHRyaWJ1dGVzKGRyYWdSb3cpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2RyYWdEcm9wUmVhcnJhbmdlVHJlZVJvd3MoZHJhZ1JvdywgZHJvcFJvdywgZXZlbnQpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2RyYWdEcm9wVXBkYXRlRHJvcFJvd0F0dHJpYnV0ZXMoZHJhZ1JvdywgZHJvcFJvdywgZXZlbnQubW9kZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWRyb3BSb3cuZXhwYW5kZWQgJiYgZXZlbnQubW9kZSA9PT0gJ2dyb3VwJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl90YWJsZS50b2dnbGVFeHBhbmRhYmxlVGFibGVSb3coZHJvcFJvdywgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGFibGUub25UYWJsZVJvd3NDaGFuZ2VkKCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9lbWl0Um93c1JlYXJyYW5nZUV2ZW50KGRyYWdSb3csIGRyb3BSb3csIGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIENyZWF0ZSB0YWJsZSByb3dzIHJlYXJyYW5nZSBldmVudFxuICAgICAqL1xuICAgIF9lbWl0Um93c1JlYXJyYW5nZUV2ZW50KHJvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93LCBldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJvd3M6IGFueVtdID0gW107XG5cbiAgICAgICAgdGhpcy5fdGFibGUuX3RhYmxlUm93cy5mb3JFYWNoKChyLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgci5pbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgcm93cy5wdXNoKHIudmFsdWUpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJvd3NSZWFycmFuZ2UuZW1pdChcbiAgICAgICAgICAgIG5ldyBUYWJsZVJvd3NSZWFycmFuZ2VFdmVudChcbiAgICAgICAgICAgICAgICByb3cudmFsdWUsXG4gICAgICAgICAgICAgICAgZHJvcFJvdy52YWx1ZSxcbiAgICAgICAgICAgICAgICBldmVudC5kcmFnZ2VkSXRlbUluZGV4LFxuICAgICAgICAgICAgICAgIGV2ZW50LnJlcGxhY2VkSXRlbUluZGV4LFxuICAgICAgICAgICAgICAgIGV2ZW50Lmluc2VydEF0LFxuICAgICAgICAgICAgICAgIGV2ZW50Lm1vZGUsXG4gICAgICAgICAgICAgICAgcm93c1xuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNEcm9wcGVkSW5zaWRlSXRzZWxmKGRyb3BSb3c6IFRhYmxlUm93LCBkcmFnUm93OiBUYWJsZVJvdyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBkcm9wUm93UGFyZW50cyA9IGdldFJvd1BhcmVudHMoZHJvcFJvdyk7XG4gICAgICAgIHJldHVybiAhIWRyb3BSb3dQYXJlbnRzLmZpbmQoKHJvdykgPT4gcm93ID09PSBkcmFnUm93KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RyYWdEcm9wVXBkYXRlRHJhZ1BhcmVudFJvd0F0dHJpYnV0ZXMoZHJhZ1JvdzogVGFibGVSb3cpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFyZW50Um93ID0gZHJhZ1Jvdy5wYXJlbnQ7XG5cbiAgICAgICAgaWYgKCFwYXJlbnRSb3cpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBhcmVudFJvd0NoaWxkcmVuID0gZmluZFJvd0NoaWxkcmVuKHBhcmVudFJvdywgdGhpcy5fdGFibGUuX3RhYmxlUm93cyk7XG4gICAgICAgIGNvbnN0IGRyYWdSb3dDaGlsZHJlbiA9IGZpbmRSb3dDaGlsZHJlbihkcmFnUm93LCB0aGlzLl90YWJsZS5fdGFibGVSb3dzKTtcblxuICAgICAgICBpZiAocGFyZW50Um93Q2hpbGRyZW4ubGVuZ3RoIC0gKGRyYWdSb3dDaGlsZHJlbi5sZW5ndGggKyAxKSA9PT0gMCkge1xuICAgICAgICAgICAgcGFyZW50Um93LnNldFJvd1R5cGUoVGFibGVSb3dUeXBlLklURU0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kcmFnRHJvcFVwZGF0ZURyb3BSb3dBdHRyaWJ1dGVzKGRyYWdSb3c6IFRhYmxlUm93LCBkcm9wUm93OiBUYWJsZVJvdywgbW9kZTogRmREbmREcm9wRXZlbnRNb2RlKTogdm9pZCB7XG4gICAgICAgIGlmIChkcmFnUm93LnBhcmVudCkge1xuICAgICAgICAgICAgLy8gUmVtb3ZlIGNoaWxkIHJvdyBmcm9tIHByZXZpb3VzIHBhcmVudCByb3cuXG4gICAgICAgICAgICBkcmFnUm93LnBhcmVudC5jaGlsZHJlbi5zcGxpY2UoZHJhZ1Jvdy5wYXJlbnQuY2hpbGRyZW4uaW5kZXhPZihkcmFnUm93KSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgZHJhZ1Jvdy5sZXZlbCA9IGRyb3BSb3cubGV2ZWwgKyAobW9kZSA9PT0gJ2dyb3VwJyA/IDEgOiAwKTtcblxuICAgICAgICBpZiAobW9kZSA9PT0gJ2dyb3VwJykge1xuICAgICAgICAgICAgZHJhZ1Jvdy5wYXJlbnQgPSBkcm9wUm93O1xuICAgICAgICAgICAgaWYgKCFkcm9wUm93LmlzVHJlZSkge1xuICAgICAgICAgICAgICAgIGRyb3BSb3cuc2V0Um93VHlwZShUYWJsZVJvd1R5cGUuVFJFRSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRyb3BSb3cuY2hpbGRyZW4ucHVzaChkcmFnUm93KTtcbiAgICAgICAgICAgIGRyb3BSb3cubGFzdENoaWxkID0gZHJhZ1JvdztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRyYWdSb3cucGFyZW50ID0gZHJvcFJvdy5wYXJlbnQ7XG4gICAgICAgICAgICBkcm9wUm93LnBhcmVudD8uY2hpbGRyZW4ucHVzaChkcmFnUm93KTtcbiAgICAgICAgICAgIGlmIChkcm9wUm93LnBhcmVudCkge1xuICAgICAgICAgICAgICAgIGRyb3BSb3cucGFyZW50Lmxhc3RDaGlsZCA9IGRyYWdSb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGZpbmRSb3dDaGlsZHJlbihkcmFnUm93LCB0aGlzLl90YWJsZS5fdGFibGVSb3dzKTtcbiAgICAgICAgY2hpbGRyZW4uZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgICByb3cubGV2ZWwgPSBnZXRSb3dQYXJlbnRzKHJvdykubGVuZ3RoO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RyYWdEcm9wUmVhcnJhbmdlVHJlZVJvd3MoZHJhZ1JvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93LCBldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC5tb2RlID09PSAnc2hpZnQnKSB7XG4gICAgICAgICAgICB0aGlzLl9oYW5kbGVTaGlmdERyb3BBY3Rpb24oZHJhZ1JvdywgZHJvcFJvdywgZXZlbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faGFuZGxlUmVwbGFjZURyb3BBY3Rpb24oZHJhZ1JvdywgZHJvcFJvdyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldE5ld0RyYWdEcm9wUm93c1Bvc2l0aW9uKGRyYWdSb3c6IFRhYmxlUm93LCBkcm9wUm93OiBUYWJsZVJvdyk6IFVwZGF0ZWREbmRSb3dzUG9zaXRpb24ge1xuICAgICAgICBjb25zdCBhbGxSb3dzID0gdGhpcy5fdGFibGUuX3RhYmxlUm93cztcblxuICAgICAgICBjb25zdCBkcmFnUm93SW5kZXggPSBhbGxSb3dzLmZpbmRJbmRleCgocm93KSA9PiByb3cgPT09IGRyYWdSb3cpO1xuICAgICAgICBjb25zdCBkcmFnUm93Q2hpbGRyZW4gPSBmaW5kUm93Q2hpbGRyZW4oZHJhZ1JvdywgdGhpcy5fdGFibGUuX3RhYmxlUm93cyk7XG5cbiAgICAgICAgY29uc3Qgcm93c1RvTW92ZSA9IGFsbFJvd3Muc3BsaWNlKGRyYWdSb3dJbmRleCwgZHJhZ1Jvd0NoaWxkcmVuLmxlbmd0aCArIDEpO1xuXG4gICAgICAgIGNvbnN0IGRyb3BSb3dJbmRleCA9IGFsbFJvd3MuZmluZEluZGV4KChyb3cpID0+IHJvdyA9PT0gZHJvcFJvdyk7XG4gICAgICAgIGNvbnN0IGRyb3BSb3dDaGlsZHJlbiA9IGZpbmRSb3dDaGlsZHJlbihkcm9wUm93LCB0aGlzLl90YWJsZS5fdGFibGVSb3dzKTtcblxuICAgICAgICBjb25zdCBkcm9wUm93SXRlbXNMZW5ndGggPSBkcm9wUm93Q2hpbGRyZW4ubGVuZ3RoICsgMTtcblxuICAgICAgICBjb25zdCByb3dzQWZ0ZXJEcm9wUm93ID0gYWxsUm93cy5zcGxpY2UoZHJvcFJvd0luZGV4ICsgZHJvcFJvd0l0ZW1zTGVuZ3RoLCBhbGxSb3dzLmxlbmd0aCArIGRyb3BSb3dJdGVtc0xlbmd0aCk7XG4gICAgICAgIGNvbnN0IGRyb3BSb3dJdGVtcyA9IGFsbFJvd3Muc3BsaWNlKGRyb3BSb3dJbmRleCwgZHJvcFJvd0l0ZW1zTGVuZ3RoKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYWxsUm93cyxcbiAgICAgICAgICAgIHJvd3NUb01vdmUsXG4gICAgICAgICAgICByb3dzQWZ0ZXJEcm9wUm93LFxuICAgICAgICAgICAgZHJvcFJvd0l0ZW1zXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oYW5kbGVTaGlmdERyb3BBY3Rpb24oZHJhZ1JvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93LCBldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgYWxsUm93cywgcm93c1RvTW92ZSwgcm93c0FmdGVyRHJvcFJvdywgZHJvcFJvd0l0ZW1zIH0gPSB0aGlzLl9nZXROZXdEcmFnRHJvcFJvd3NQb3NpdGlvbihcbiAgICAgICAgICAgIGRyYWdSb3csXG4gICAgICAgICAgICBkcm9wUm93XG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5fdGFibGUuX3RhYmxlUm93cyA9IFtcbiAgICAgICAgICAgIC4uLmFsbFJvd3MsXG4gICAgICAgICAgICAuLi4oZXZlbnQuaW5zZXJ0QXQgPT09ICdhZnRlcicgPyBkcm9wUm93SXRlbXMgOiBbXSksXG4gICAgICAgICAgICAuLi5yb3dzVG9Nb3ZlLFxuICAgICAgICAgICAgLi4uKGV2ZW50Lmluc2VydEF0ID09PSAnYWZ0ZXInID8gW10gOiBkcm9wUm93SXRlbXMpLFxuICAgICAgICAgICAgLi4ucm93c0FmdGVyRHJvcFJvd1xuICAgICAgICBdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlUmVwbGFjZURyb3BBY3Rpb24oZHJhZ1JvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgYWxsUm93cywgcm93c1RvTW92ZSwgcm93c0FmdGVyRHJvcFJvdywgZHJvcFJvd0l0ZW1zIH0gPSB0aGlzLl9nZXROZXdEcmFnRHJvcFJvd3NQb3NpdGlvbihcbiAgICAgICAgICAgIGRyYWdSb3csXG4gICAgICAgICAgICBkcm9wUm93XG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5fdGFibGUuX3RhYmxlUm93cyA9IFsuLi5hbGxSb3dzLCAuLi5kcm9wUm93SXRlbXMsIC4uLnJvd3NUb01vdmUsIC4uLnJvd3NBZnRlckRyb3BSb3ddO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfb25ab25lRnJlZShjYWxsYmFjazogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjYWxsYmFjaygpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
|
247
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZHJhZ2dhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi90YWJsZS1oZWxwZXJzL2RpcmVjdGl2ZXMvdGFibGUtZHJhZ2dhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUNILGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBUXZCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1RCxPQUFPLEVBQVksdUJBQXVCLEVBQTBCLE1BQU0sV0FBVyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFjdEQsTUFBTSxPQUFPLHVCQUFpQyxTQUFRLGNBQWlCO0lBWHZFOztRQVlJLDRFQUE0RTtRQUU1RSx3QkFBbUIsR0FBRyxJQUFJLENBQUM7UUFFM0Isb0NBQW9DO1FBR3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXBCOztXQUVHO1FBRUgsYUFBUSxHQUFrQixNQUFNLENBQUM7UUFhakMseUhBQXlIO1FBRWhILGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQThCLENBQUM7UUFVeEUsY0FBYztRQUNHLFlBQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFMUMsY0FBYztRQUNHLFNBQUksR0FBRyxNQUFNLENBQUMsaUJB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QURoQixLQUFLO2dCQUtHLGFBQWE7c0JBRHJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nICovXG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRHJhZ292ZXJQcmVkaWNhdGUsXG4gICAgRHJvcFByZWRpY2F0ZSxcbiAgICBGZERuZERyb3BFdmVudE1vZGUsXG4gICAgRmREbmREcm9wVHlwZSxcbiAgICBGZERyb3BFdmVudFxufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRkRQX1RBQkxFX0RSQUdHQUJMRV9ESVJFQ1RJVkUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgVGFibGVSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgZmluZFJvd0NoaWxkcmVuLCBnZXRSb3dQYXJlbnRzIH0gZnJvbSAnLi4vaGVscGVycyc7XG5pbXBvcnQgeyBUYWJsZVJvdywgVGFibGVSb3dzUmVhcnJhbmdlRXZlbnQsIFVwZGF0ZWREbmRSb3dzUG9zaXRpb24gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGFibGVEcmFnZ2FibGUgfSBmcm9tICcuLi9tb2RlbHMvZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBUYWJsZSB9IGZyb20gJy4uL3RhYmxlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2ZkcC10YWJsZVtpc1RyZWVUYWJsZV0sIGZkcC10YWJsZVtlbmFibGVSb3dSZW9yZGVyaW5nXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRkRQX1RBQkxFX0RSQUdHQUJMRV9ESVJFQ1RJVkUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUYWJsZURyYWdnYWJsZURpcmVjdGl2ZSlcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGFibGVEcmFnZ2FibGVEaXJlY3RpdmU8VCA9IGFueT4gZXh0ZW5kcyBUYWJsZURyYWdnYWJsZTxUPiB7XG4gICAgLyoqIFdoZXRoZXIgdG8gYWxsb3cgZm9yIHJvdyByZW9yZGVyaW5nIG9uIHRyZWUgdGFibGVzIHZpYSBkcmFnIGFuZCBkcm9wLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZW5hYmxlUm93UmVvcmRlcmluZyA9IHRydWU7XG5cbiAgICAvKiogV2hldGhlciB0cmVlIG1vZGUgaXMgZW5hYmxlZC4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLXRhYmxlLS10cmVlJylcbiAgICBASW5wdXQoKVxuICAgIGlzVHJlZVRhYmxlID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBSb3cgZHJvcCBtb2RlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHJvcE1vZGU6IEZkRG5kRHJvcFR5cGUgPSAnYXV0byc7XG5cbiAgICAvKiogUHJlZGljYXRlIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIHdoZXRoZXIgdGhlIGl0ZW0gY2FuIGJlIGRyb3BwZWQgb3ZlciBhbm90aGVyIGl0ZW0uICovXG4gICAgQElucHV0KClcbiAgICBkcm9wUHJlZGljYXRlOiBEcm9wUHJlZGljYXRlPFRhYmxlUm93PFQ+PjtcblxuICAgIC8qKlxuICAgICAqIFByZWRpY2F0ZSBmdW5jdGlvbiB0aGF0IGNoZWNrcyB3aGV0aGVyIHRoZSBpdGVtIGNhbiBiZSBkcmFnZ2VkIG92ZXIgYW5vdGhlciBpdGVtLlxuICAgICAqIElmIHRoZSBmdW5jdGlvbiByZXR1cm5zIGBmYWxzZWAsIGRyYWdnZWQgb3ZlciBpdGVtIHdpbGwgbm90IGJlIGhpZ2hsaWdodGVkLCBhbmQgZHJvcCBldmVudCB3aWxsIGJlIGNhbmNlbGVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHJhZ292ZXJQcmVkaWNhdGU6IERyYWdvdmVyUHJlZGljYXRlPFRhYmxlUm93PFQ+PjtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIHRyZWUgcm93cyByZWFycmFuZ2VkIHRocm91Z2ggZHJhZyAmIGRyb3AuIENvbnNpZGVyIHRoYXQgcm93cyByZWFycmFuZ2VkIHdpdGggdGhlaXIgY2hpbGRyZW4gcm93cy4gKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSByb3dzUmVhcnJhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJsZVJvd3NSZWFycmFuZ2VFdmVudDxUPj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9yb3dzRHJhZ2dhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1RyZWVUYWJsZSAmJiB0aGlzLmVuYWJsZVJvd1Jlb3JkZXJpbmc7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90YWJsZTogVGFibGU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX25nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYsIHtcbiAgICAgICAgaG9zdDogdHJ1ZVxuICAgIH0pO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBkcmFnRHJvcEluUHJvZ3Jlc3MgPSBmYWxzZTtcblxuICAgIC8qKiBTZXRzIHRhYmxlIHJlZmVyZW5jZS4gKi9cbiAgICBzZXRUYWJsZSh0YWJsZTogVGFibGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFibGUgPSB0YWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJbml0aWF0ZXMgZHJhZyZkcm9wIHNlcXVlbmNlLlxuICAgICAqL1xuICAgIGRyYWdEcm9wU3RhcnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZHJhZ0Ryb3BJblByb2dyZXNzID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvKiogTWV0aG9kIGNhbGxlZCB3aGVuIGRuZCBwZXJmb3JtZWQgd2l0aCB0aGUga2V5Ym9hcmQuICovXG4gICAgZHJhZ1Jvd0Zyb21LZXlib2FyZChkaXI6IHN0cmluZywgZXZlbnQ6IEV2ZW50LCBjdXJyZW50Um93SW5kZXg6IG51bWJlciwgbW9kZTogJ3NoaWZ0JyB8ICdncm91cCcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9yb3dzRHJhZ2dhYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgbGV0IHJlcGxhY2VkSW5kZXg7XG4gICAgICAgIGRpciA9PT0gJ3VwJyA/IChyZXBsYWNlZEluZGV4ID0gY3VycmVudFJvd0luZGV4IC0gMSkgOiAocmVwbGFjZWRJbmRleCA9IGN1cnJlbnRSb3dJbmRleCArIDEpO1xuXG4gICAgICAgIGlmICh0aGlzLl90YWJsZS5fdGFibGVSb3dzVmlzaWJsZVtyZXBsYWNlZEluZGV4XSkge1xuICAgICAgICAgICAgY29uc3QgZHJhZ0Ryb3BFdmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c8VD4+ID0ge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiB0aGlzLl90YWJsZS5fdGFibGVSb3dzVmlzaWJsZSxcbiAgICAgICAgICAgICAgICBkcmFnZ2VkSXRlbUluZGV4OiBjdXJyZW50Um93SW5kZXgsXG4gICAgICAgICAgICAgICAgcmVwbGFjZWRJdGVtSW5kZXg6IHJlcGxhY2VkSW5kZXgsXG4gICAgICAgICAgICAgICAgaW5zZXJ0QXQ6IGRpciA9PT0gJ2Rvd24nID8gJ2FmdGVyJyA6ICdiZWZvcmUnLFxuICAgICAgICAgICAgICAgIG1vZGVcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLmRyYWdEcm9wSXRlbURyb3AoZHJhZ0Ryb3BFdmVudCk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5mb2N1cygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogTWV0aG9kIGNhbGxlZCB3aGVuIGRyYWcmZHJvcCBldmVudCBiZWluZyBjYW5jZWxsZWQuICovXG4gICAgZHJvcENhbmNlbGxlZCgpOiB2b2lkIHtcbiAgICAgICAgLyoqIEFmdGVyIHRpbWVvdXQgdG8gbWFrZSBjbGljayBldmVudCBoYW5kbGVkIGZpcnN0ICovXG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLmRyYWdEcm9wSW5Qcm9ncmVzcyA9IGZhbHNlKSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBNZXRob2QgY2FsbGVkIHdoZW4gZHJhZ2dlZCBpdGVtIGJlaW5nIGRyb3BwZWQuICovXG4gICAgZHJhZ0Ryb3BJdGVtRHJvcChldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIC8qKiBBZnRlciB0aW1lb3V0IHRvIG1ha2UgY2xpY2sgZXZlbnQgaGFuZGxlZCBmaXJzdCAqL1xuICAgICAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiAodGhpcy5kcmFnRHJvcEluUHJvZ3Jlc3MgPSBmYWxzZSkpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9vblpvbmVGcmVlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzVHJlZVRhYmxlICYmIGV2ZW50LmRyYWdnZWRJdGVtSW5kZXggIT09IGV2ZW50LnJlcGxhY2VkSXRlbUluZGV4KSB7XG4gICAgICAgICAgICAgICAgZXZlbnQuZHJhZ2dlZEl0ZW1JbmRleCA9IHRoaXMuX3RhYmxlLl90YWJsZVJvd3NJblZpZXdQb3J0UGxhY2Vob2xkZXJbZXZlbnQuZHJhZ2dlZEl0ZW1JbmRleF07XG4gICAgICAgICAgICAgICAgZXZlbnQucmVwbGFjZWRJdGVtSW5kZXggPSB0aGlzLl90YWJsZS5fdGFibGVSb3dzSW5WaWV3UG9ydFBsYWNlaG9sZGVyW2V2ZW50LnJlcGxhY2VkSXRlbUluZGV4XTtcbiAgICAgICAgICAgICAgICBjb25zdCBkcmFnUm93ID0gdGhpcy5fdGFibGUuX3RhYmxlUm93cy5maW5kKFxuICAgICAgICAgICAgICAgICAgICAocm93KSA9PiByb3cgPT09IHRoaXMuX3RhYmxlLl90YWJsZVJvd3NWaXNpYmxlW2V2ZW50LmRyYWdnZWRJdGVtSW5kZXhdXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjb25zdCBkcm9wUm93ID0gdGhpcy5fdGFibGUuX3RhYmxlUm93cy5maW5kKFxuICAgICAgICAgICAgICAgICAgICAocm93KSA9PiByb3cgPT09IHRoaXMuX3RhYmxlLl90YWJsZVJvd3NWaXNpYmxlW2V2ZW50LnJlcGxhY2VkSXRlbUluZGV4XVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWRyYWdSb3cgfHwgIWRyb3BSb3cgfHwgdGhpcy5faXNEcm9wcGVkSW5zaWRlSXRzZWxmKGRyb3BSb3csIGRyYWdSb3cpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5fZHJhZ0Ryb3BVcGRhdGVEcmFnUGFyZW50Um93QXR0cmlidXRlcyhkcmFnUm93KTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kcmFnRHJvcFJlYXJyYW5nZVRyZWVSb3dzKGRyYWdSb3csIGRyb3BSb3csIGV2ZW50KTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kcmFnRHJvcFVwZGF0ZURyb3BSb3dBdHRyaWJ1dGVzKGRyYWdSb3csIGRyb3BSb3csIGV2ZW50Lm1vZGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKCFkcm9wUm93LmV4cGFuZGVkICYmIGV2ZW50Lm1vZGUgPT09ICdncm91cCcpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGFibGUudG9nZ2xlRXhwYW5kYWJsZVRhYmxlUm93KGRyb3BSb3csIHRydWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3RhYmxlLm9uVGFibGVSb3dzQ2hhbmdlZCgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fZW1pdFJvd3NSZWFycmFuZ2VFdmVudChkcmFnUm93LCBkcm9wUm93LCBldmVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFibGUucmVmcmVzaERuZExpc3QoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIENyZWF0ZSB0YWJsZSByb3dzIHJlYXJyYW5nZSBldmVudFxuICAgICAqL1xuICAgIF9lbWl0Um93c1JlYXJyYW5nZUV2ZW50KHJvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93LCBldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJvd3M6IGFueVtdID0gW107XG5cbiAgICAgICAgdGhpcy5fdGFibGUuX3RhYmxlUm93cy5mb3JFYWNoKChyLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgci5pbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgcm93cy5wdXNoKHIudmFsdWUpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJvd3NSZWFycmFuZ2UuZW1pdChcbiAgICAgICAgICAgIG5ldyBUYWJsZVJvd3NSZWFycmFuZ2VFdmVudChcbiAgICAgICAgICAgICAgICByb3cudmFsdWUsXG4gICAgICAgICAgICAgICAgZHJvcFJvdy52YWx1ZSxcbiAgICAgICAgICAgICAgICBldmVudC5kcmFnZ2VkSXRlbUluZGV4LFxuICAgICAgICAgICAgICAgIGV2ZW50LnJlcGxhY2VkSXRlbUluZGV4LFxuICAgICAgICAgICAgICAgIGV2ZW50Lmluc2VydEF0LFxuICAgICAgICAgICAgICAgIGV2ZW50Lm1vZGUsXG4gICAgICAgICAgICAgICAgcm93c1xuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNEcm9wcGVkSW5zaWRlSXRzZWxmKGRyb3BSb3c6IFRhYmxlUm93LCBkcmFnUm93OiBUYWJsZVJvdyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBkcm9wUm93UGFyZW50cyA9IGdldFJvd1BhcmVudHMoZHJvcFJvdyk7XG4gICAgICAgIHJldHVybiAhIWRyb3BSb3dQYXJlbnRzLmZpbmQoKHJvdykgPT4gcm93ID09PSBkcmFnUm93KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RyYWdEcm9wVXBkYXRlRHJhZ1BhcmVudFJvd0F0dHJpYnV0ZXMoZHJhZ1JvdzogVGFibGVSb3cpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFyZW50Um93ID0gZHJhZ1Jvdy5wYXJlbnQ7XG5cbiAgICAgICAgaWYgKCFwYXJlbnRSb3cpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBhcmVudFJvd0NoaWxkcmVuID0gZmluZFJvd0NoaWxkcmVuKHBhcmVudFJvdywgdGhpcy5fdGFibGUuX3RhYmxlUm93cyk7XG4gICAgICAgIGNvbnN0IGRyYWdSb3dDaGlsZHJlbiA9IGZpbmRSb3dDaGlsZHJlbihkcmFnUm93LCB0aGlzLl90YWJsZS5fdGFibGVSb3dzKTtcblxuICAgICAgICBpZiAocGFyZW50Um93Q2hpbGRyZW4ubGVuZ3RoIC0gKGRyYWdSb3dDaGlsZHJlbi5sZW5ndGggKyAxKSA9PT0gMCkge1xuICAgICAgICAgICAgcGFyZW50Um93LnNldFJvd1R5cGUoVGFibGVSb3dUeXBlLklURU0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kcmFnRHJvcFVwZGF0ZURyb3BSb3dBdHRyaWJ1dGVzKGRyYWdSb3c6IFRhYmxlUm93LCBkcm9wUm93OiBUYWJsZVJvdywgbW9kZTogRmREbmREcm9wRXZlbnRNb2RlKTogdm9pZCB7XG4gICAgICAgIGlmIChkcmFnUm93LnBhcmVudCkge1xuICAgICAgICAgICAgLy8gUmVtb3ZlIGNoaWxkIHJvdyBmcm9tIHByZXZpb3VzIHBhcmVudCByb3cuXG4gICAgICAgICAgICBkcmFnUm93LnBhcmVudC5jaGlsZHJlbi5zcGxpY2UoZHJhZ1Jvdy5wYXJlbnQuY2hpbGRyZW4uaW5kZXhPZihkcmFnUm93KSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgZHJhZ1Jvdy5sZXZlbCA9IGRyb3BSb3cubGV2ZWwgKyAobW9kZSA9PT0gJ2dyb3VwJyA/IDEgOiAwKTtcblxuICAgICAgICBpZiAobW9kZSA9PT0gJ2dyb3VwJykge1xuICAgICAgICAgICAgZHJhZ1Jvdy5wYXJlbnQgPSBkcm9wUm93O1xuICAgICAgICAgICAgaWYgKCFkcm9wUm93LmlzVHJlZSkge1xuICAgICAgICAgICAgICAgIGRyb3BSb3cuc2V0Um93VHlwZShUYWJsZVJvd1R5cGUuVFJFRSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRyb3BSb3cuY2hpbGRyZW4ucHVzaChkcmFnUm93KTtcbiAgICAgICAgICAgIGRyb3BSb3cubGFzdENoaWxkID0gZHJhZ1JvdztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRyYWdSb3cucGFyZW50ID0gZHJvcFJvdy5wYXJlbnQ7XG4gICAgICAgICAgICBkcm9wUm93LnBhcmVudD8uY2hpbGRyZW4ucHVzaChkcmFnUm93KTtcbiAgICAgICAgICAgIGlmIChkcm9wUm93LnBhcmVudCkge1xuICAgICAgICAgICAgICAgIGRyb3BSb3cucGFyZW50Lmxhc3RDaGlsZCA9IGRyYWdSb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGZpbmRSb3dDaGlsZHJlbihkcmFnUm93LCB0aGlzLl90YWJsZS5fdGFibGVSb3dzKTtcbiAgICAgICAgY2hpbGRyZW4uZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgICByb3cubGV2ZWwgPSBnZXRSb3dQYXJlbnRzKHJvdykubGVuZ3RoO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RyYWdEcm9wUmVhcnJhbmdlVHJlZVJvd3MoZHJhZ1JvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93LCBldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC5tb2RlID09PSAnc2hpZnQnKSB7XG4gICAgICAgICAgICB0aGlzLl9oYW5kbGVTaGlmdERyb3BBY3Rpb24oZHJhZ1JvdywgZHJvcFJvdywgZXZlbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faGFuZGxlUmVwbGFjZURyb3BBY3Rpb24oZHJhZ1JvdywgZHJvcFJvdyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldE5ld0RyYWdEcm9wUm93c1Bvc2l0aW9uKGRyYWdSb3c6IFRhYmxlUm93LCBkcm9wUm93OiBUYWJsZVJvdyk6IFVwZGF0ZWREbmRSb3dzUG9zaXRpb24ge1xuICAgICAgICBjb25zdCBhbGxSb3dzID0gdGhpcy5fdGFibGUuX3RhYmxlUm93cztcblxuICAgICAgICBjb25zdCBkcmFnUm93SW5kZXggPSBhbGxSb3dzLmZpbmRJbmRleCgocm93KSA9PiByb3cgPT09IGRyYWdSb3cpO1xuICAgICAgICBjb25zdCBkcmFnUm93Q2hpbGRyZW4gPSBmaW5kUm93Q2hpbGRyZW4oZHJhZ1JvdywgdGhpcy5fdGFibGUuX3RhYmxlUm93cyk7XG5cbiAgICAgICAgY29uc3Qgcm93c1RvTW92ZSA9IGFsbFJvd3Muc3BsaWNlKGRyYWdSb3dJbmRleCwgZHJhZ1Jvd0NoaWxkcmVuLmxlbmd0aCArIDEpO1xuXG4gICAgICAgIGNvbnN0IGRyb3BSb3dJbmRleCA9IGFsbFJvd3MuZmluZEluZGV4KChyb3cpID0+IHJvdyA9PT0gZHJvcFJvdyk7XG4gICAgICAgIGNvbnN0IGRyb3BSb3dDaGlsZHJlbiA9IGZpbmRSb3dDaGlsZHJlbihkcm9wUm93LCB0aGlzLl90YWJsZS5fdGFibGVSb3dzKTtcblxuICAgICAgICBjb25zdCBkcm9wUm93SXRlbXNMZW5ndGggPSBkcm9wUm93Q2hpbGRyZW4ubGVuZ3RoICsgMTtcblxuICAgICAgICBjb25zdCByb3dzQWZ0ZXJEcm9wUm93ID0gYWxsUm93cy5zcGxpY2UoZHJvcFJvd0luZGV4ICsgZHJvcFJvd0l0ZW1zTGVuZ3RoLCBhbGxSb3dzLmxlbmd0aCArIGRyb3BSb3dJdGVtc0xlbmd0aCk7XG4gICAgICAgIGNvbnN0IGRyb3BSb3dJdGVtcyA9IGFsbFJvd3Muc3BsaWNlKGRyb3BSb3dJbmRleCwgZHJvcFJvd0l0ZW1zTGVuZ3RoKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYWxsUm93cyxcbiAgICAgICAgICAgIHJvd3NUb01vdmUsXG4gICAgICAgICAgICByb3dzQWZ0ZXJEcm9wUm93LFxuICAgICAgICAgICAgZHJvcFJvd0l0ZW1zXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oYW5kbGVTaGlmdERyb3BBY3Rpb24oZHJhZ1JvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93LCBldmVudDogRmREcm9wRXZlbnQ8VGFibGVSb3c+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgYWxsUm93cywgcm93c1RvTW92ZSwgcm93c0FmdGVyRHJvcFJvdywgZHJvcFJvd0l0ZW1zIH0gPSB0aGlzLl9nZXROZXdEcmFnRHJvcFJvd3NQb3NpdGlvbihcbiAgICAgICAgICAgIGRyYWdSb3csXG4gICAgICAgICAgICBkcm9wUm93XG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5fdGFibGUuX3RhYmxlUm93cyA9IFtcbiAgICAgICAgICAgIC4uLmFsbFJvd3MsXG4gICAgICAgICAgICAuLi4oZXZlbnQuaW5zZXJ0QXQgPT09ICdhZnRlcicgPyBkcm9wUm93SXRlbXMgOiBbXSksXG4gICAgICAgICAgICAuLi5yb3dzVG9Nb3ZlLFxuICAgICAgICAgICAgLi4uKGV2ZW50Lmluc2VydEF0ID09PSAnYWZ0ZXInID8gW10gOiBkcm9wUm93SXRlbXMpLFxuICAgICAgICAgICAgLi4ucm93c0FmdGVyRHJvcFJvd1xuICAgICAgICBdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlUmVwbGFjZURyb3BBY3Rpb24oZHJhZ1JvdzogVGFibGVSb3csIGRyb3BSb3c6IFRhYmxlUm93KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgYWxsUm93cywgcm93c1RvTW92ZSwgcm93c0FmdGVyRHJvcFJvdywgZHJvcFJvd0l0ZW1zIH0gPSB0aGlzLl9nZXROZXdEcmFnRHJvcFJvd3NQb3NpdGlvbihcbiAgICAgICAgICAgIGRyYWdSb3csXG4gICAgICAgICAgICBkcm9wUm93XG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5fdGFibGUuX3RhYmxlUm93cyA9IFsuLi5hbGxSb3dzLCAuLi5kcm9wUm93SXRlbXMsIC4uLnJvd3NUb01vdmUsIC4uLnJvd3NBZnRlckRyb3BSb3ddO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfb25ab25lRnJlZShjYWxsYmFjazogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjYWxsYmFjaygpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable, Optional } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject,
|
|
2
|
+
import { BehaviorSubject, Subject, Subscription, fromEvent } from 'rxjs';
|
|
3
3
|
import { debounceTime, takeUntil } from 'rxjs/operators';
|
|
4
4
|
import { RtlService } from '@fundamental-ngx/cdk/utils';
|
|
5
5
|
import { TABLE_COLUMN_MIN_WIDTH } from '../constants';
|
|
@@ -291,4 +291,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
291
291
|
}], ctorParameters: function () { return [{ type: i1.TableScrollDispatcherService }, { type: i2.RtlService, decorators: [{
|
|
292
292
|
type: Optional
|
|
293
293
|
}] }]; } });
|
|
294
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLXJlc2l6ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3RhYmxlLWhlbHBlcnMvc2VydmljZXMvdGFibGUtY29sdW1uLXJlc2l6ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFjLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXRELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBR2pGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQUU1Qzs7Ozs7R0FLRztBQUVILE1BQU0sT0FBTyx3QkFBd0I7SUFvRGpDLGdEQUFnRDtJQUNoRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lBUUQsdUNBQXVDO0lBQ3ZDLElBQUksZUFBZTtRQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBS0QscUNBQXFDO0lBQ3JDLElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsNkRBQTZEO0lBQzdELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksS0FBSyxJ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ZWN0YWJsZSwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tRXZlbnQsIE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUQUJMRV9DT0xVTU5fTUlOX1dJRFRIIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuaW1wb3J0IHsgVGFibGVTY3JvbGxEaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4vdGFibGUtc2Nyb2xsLWRpc3BhdGNoZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUYWJsZSB9IGZyb20gJy4uL3RhYmxlJztcblxuZXhwb3J0IGNvbnN0IFRBQkxFX1JFU0laRVJfQk9SREVSX1dJRFRIID0gMztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGhhbmRsZSBhbGwgdGhpbmdzIHJlbGF0ZWQgdG8gY29sdW1uIHJlc2l6aW5nOlxuICogLSBTZXR0aW5nIHJlc2l6ZXJcbiAqIC0gUHJvY2Vzc2luZyByZXNpemVcbiAqIC0gQ2FsY3VsYXRpbmcgdGhlIHJlYWwgY29sdW1ucyB3aWR0aFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFibGVDb2x1bW5SZXNpemVTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ZpeGVkQ29sdW1uc1dpZHRoTWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29sdW1uc0NlbGxNYXAgPSBuZXcgTWFwPHN0cmluZywgRWxlbWVudFJlZjxIVE1MVGFibGVEYXRhQ2VsbEVsZW1lbnQ+W10+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Zpc2libGVDb2x1bW5OYW1lczogc3RyaW5nW10gPSBbXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtbkxlZnROZWlnaGJvdXJNYXAgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF92aXNpYmxlQ29sdW1uUmlnaHROZWlnaGJvdXJNYXAgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwID0gbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtblJpZ2h0T2Zmc2V0UHhNYXAgPSBuZXcgTWFwPHN0cmluZywgbnVtYmVyPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdGFydFg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jbGllbnRTdGFydFg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yZXNpemVJblByb2dyZXNzID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc2l6ZWRDb2x1bW46IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVzaXplclBvc2l0aW9uOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc2Nyb2xsTGVmdCA9IDA7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX21hcmtGb3JDaGVjayA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2Rlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc2l6ZXJNb3ZlU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90YWJsZVJlZjogVGFibGU7XG5cbiAgICAvKiogSW5kaWNhdGUgaWYgcmVzaXppbmcgcHJvY2VzcyBpbiBwcm9ncmVzcy4gKi9cbiAgICBnZXQgcmVzaXplSW5Qcm9ncmVzcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc2l6ZUluUHJvZ3Jlc3M7XG4gICAgfVxuXG4gICAgLyoqIFJlc2l6ZSBwcm9ncmVzcyBzdHJlYW0uICovXG4gICAgcmVhZG9ubHkgcmVzaXplSW5Qcm9ncmVzcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRoaXMuX3Jlc2l6ZUluUHJvZ3Jlc3MpO1xuXG4gICAgLyoqIFdoZXRoZXIgY2VsbCBtb2NrIHNob3VsZCBiZSB2aXNpYmxlLiAqL1xuICAgIHJlYWRvbmx5IGNlbGxNb2NrVmlzaWJsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAgIC8qKiBDdXJyZW50IGNvbHVtbiByZXNpemVyIHBvc2l0aW9uLiAqL1xuICAgIGdldCByZXNpemVyUG9zaXRpb24oKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc2l6ZXJQb3NpdGlvbiA/PyAwO1xuICAgIH1cblxuICAgIC8qKiBSZXNpemVyIHBvc2l0aW9uIHN0cmVhbS4gKi9cbiAgICByZWFkb25seSByZXNpemVyUG9zaXRpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuXG4gICAgLyoqIE9ic2VydmFibGUgdG8gbm90aWZ5IHRvIHJ1biBDRCAqL1xuICAgIGdldCBtYXJrRm9yQ2hlY2soKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXJrRm9yQ2hlY2suYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqIHRhYmxlIGhhcyBmaXhlZCB3aWR0aCBpZiBhbGwgb2YgaXQncyBjb2x1bW5zIGFyZSBmaXhlZCAqL1xuICAgIGdldCBmaXhlZFdpZHRoKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZml4ZWRDb2x1bW5zV2lkdGhNYXAuc2l6ZSA9PT0gdGhpcy5fdmlzaWJsZUNvbHVtbk5hbWVzLmxlbmd0aDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgZ2V0IF9ydGwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ydGxTZXJ2aWNlPy5ydGwuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZVNjcm9sbERpc3BhdGNoZXJTZXJ2aWNlOiBUYWJsZVNjcm9sbERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IF9ydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX3RhYmxlU2Nyb2xsRGlzcGF0Y2hlclNlcnZpY2VcbiAgICAgICAgICAgID8uaG9yaXpvbnRhbGx5U2Nyb2xsZWQoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzY3JvbGxhYmxlKSA9PiAodGhpcy5fc2Nyb2xsTGVmdCA9IHNjcm9sbGFibGUuZ2V0U2Nyb2xsTGVmdCgpKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVzaXplSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MkLm5leHQoZmFsc2UpO1xuXG4gICAgICAgIHRoaXMuX2Rlc3Ryb3llZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2Rlc3Ryb3llZC5jb21wbGV0ZSgpO1xuXG4gICAgICAgIHRoaXMuX3Jlc2l6ZXJNb3ZlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzZXRUYWJsZVJlZihyZWY6IFRhYmxlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYmxlUmVmID0gcmVmO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIGluaXRpYWxpemVzIHNlcnZpY2Ugd2l0aCBkYXRhLCB0cmlnZ2VyIGNvbHVtbnMgd2lkdGggY2FsY3VsYXRpb24uICovXG4gICAgc2V0Q29sdW1uTmFtZXModmlzaWJsZUNvbHVtbk5hbWVzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE5laWdoYm91ck1hcC5jbGVhcigpO1xuICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHROZWlnaGJvdXJNYXAuY2xlYXIoKTtcbiAgICAgICAgdmlzaWJsZUNvbHVtbk5hbWVzLmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Zpc2libGVDb2x1bW5MZWZ0TmVpZ2hib3VyTWFwLnNldChjb2x1bW4sIHZpc2libGVDb2x1bW5OYW1lc1tpbmRleCAtIDFdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHZpc2libGVDb2x1bW5OYW1lcy5yZXZlcnNlKCkuZm9yRWFjaCgoY29sdW1uLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fdmlzaWJsZUNvbHVtblJpZ2h0TmVpZ2hib3VyTWFwLnNldChjb2x1bW4sIHZpc2libGVDb2x1bW5OYW1lc1tpbmRleCAtIDFdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3Zpc2libGVDb2x1bW5OYW1lcyA9IFsuLi52aXNpYmxlQ29sdW1uTmFtZXNdO1xuICAgICAgICB0aGlzLnVwZGF0ZUZyb3plbkNvbHVtbnNXaWR0aCgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdXBkYXRlRnJvemVuQ29sdW1uc1dpZHRoKCk6IHZvaWQge1xuICAgICAgICBsZXQgYWxsUHJldmlvdXNXaWR0aHMgPSAwLFxuICAgICAgICAgICAgYWxsTmV4dFdpZHRocyA9IDA7XG4gICAgICAgIGZvciAoY29uc3QgW2NvbHVtbiwgcHJldkNvbHVtbl0gb2YgdGhpcy5fdmlzaWJsZUNvbHVtbkxlZnROZWlnaGJvdXJNYXAuZW50cmllcygpKSB7XG4gICAgICAgICAgICBhbGxQcmV2aW91c1dpZHRocyArPVxuICAgICAgICAgICAgICAgIHRoaXMuX2NvbHVtbnNDZWxsTWFwLmdldChwcmV2Q29sdW1uIGFzIHN0cmluZyk/LlswXT8ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCA/PyAwO1xuICAgICAgICAgICAgdGhpcy5fdmlzaWJsZUNvbHVtbkxlZnRPZmZzZXRQeE1hcC5zZXQoY29sdW1uLCBhbGxQcmV2aW91c1dpZHRocyk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBbY29sdW1uLCBuZXh0Q29sdW1uXSBvZiB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHROZWlnaGJvdXJNYXAuZW50cmllcygpKSB7XG4gICAgICAgICAgICBhbGxOZXh0V2lkdGhzICs9XG4gICAgICAgICAgICAgICAgdGhpcy5fY29sdW1uc0NlbGxNYXAuZ2V0KG5leHRDb2x1bW4gYXMgc3RyaW5nKT8uWzBdPy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoID8/IDA7XG4gICAgICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHRPZmZzZXRQeE1hcC5zZXQoY29sdW1uLCBhbGxOZXh0V2lkdGhzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdXBkYXRlRnJvemVuQ29sdW1uc1dpZHRoQWZ0ZXJSZXNpemUoY29sdW1uTmFtZTogc3RyaW5nLCBkaWZmWDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGxldCBmb3VuZCA9IGZhbHNlO1xuICAgICAgICBmb3IgKGNvbnN0IFtjb2x1bW4sIHdpZHRoXSBvZiB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwLmVudHJpZXMoKSkge1xuICAgICAgICAgICAgaWYgKGNvbHVtbiA9PT0gY29sdW1uTmFtZSkge1xuICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZm91bmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwLnNldChjb2x1bW4sIHdpZHRoICsgZGlmZlgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJldHJpZXZlcyBjdXN0b20gY29sdW1uIHZhbHVlIG9yIHJldHVybnMgYHVuc2V0YCAqL1xuICAgIGdldENvbHVtbldpZHRoU3R5bGUoY29sdW1uTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY2FsY3VsYXRlZFdpZHRoID0gdGhpcy5fZml4ZWRDb2x1bW5zV2lkdGhNYXAuZ2V0KGNvbHVtbk5hbWUpO1xuICAgICAgICByZXR1cm4gY2FsY3VsYXRlZFdpZHRoIHx8ICd1bnNldCc7XG4gICAgfVxuXG4gICAgLyoqIFByZXZpb3VzIGNvbHVtbiBuYW1lICovXG4gICAgZ2V0UHJldmlvdXNDb2x1bW5OYW1lKGNvbHVtbk5hbWU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE5laWdoYm91ck1hcC5nZXQoY29sdW1uTmFtZSk7XG4gICAgfVxuXG4gICAgLyoqIFByZXZpb3VzIGNvbHVtbiBuYW1lICovXG4gICAgZ2V0TmV4dENvbHVtbk5hbWUoY29sdW1uTmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Zpc2libGVDb2x1bW5SaWdodE5laWdoYm91ck1hcC5nZXQoY29sdW1uTmFtZSk7XG4gICAgfVxuXG4gICAgLyoqIE92ZXJhbGwgcHJldmlvdXMgY29sdW1ucyB3aWR0aC4gVXNlZCB0byBjYWxjdWxhdGUgb2Zmc2V0IGZvciB0aGUgYWJzb2x1dGUgcG9zaXRpb25lZCBjZWxscy4gKi9cbiAgICBnZXRQcmV2Q29sdW1uc1dpZHRoKGNvbHVtbk5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwLmdldChjb2x1bW5OYW1lKSA/PyAwO1xuICAgIH1cblxuICAgIC8qKiBPdmVyYWxsIG5leHQgY29sdW1ucyB3aWR0aC4gVXNlZCB0byBjYWxjdWxhdGUgb2Zmc2V0IGZvciB0aGUgYWJzb2x1dGUgcG9zaXRpb25lZCBjZWxscy4gKi9cbiAgICBnZXROZXh0Q29sdW1uc1dpZHRoKGNvbHVtbk5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHRPZmZzZXRQeE1hcC5nZXQoY29sdW1uTmFtZSkgPz8gMDtcbiAgICB9XG5cbiAgICAvKiogUmVnaXN0ZXIgY29sdW1uJ3MgY2VsbCB0byBnZXQgaXRzIGRpbWVuc2lvbnMgaW4gZnVydGhlci4gKi9cbiAgICByZWdpc3RlckNvbHVtbkNlbGwoY29sdW1uTmFtZTogc3RyaW5nLCBjZWxsRWxSZWY6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1uQ2VsbHMgPSB0aGlzLl9jb2x1bW5zQ2VsbE1hcC5nZXQoY29sdW1uTmFtZSkgfHwgW107XG4gICAgICAgIHRoaXMuX2NvbHVtbnNDZWxsTWFwLnNldChjb2x1bW5OYW1lLCBbY2VsbEVsUmVmLCAuLi5jb2x1bW5DZWxsc10pO1xuICAgIH1cblxuICAgIC8qKiBVbnJlZ2lzdGVyIGNvbHVtbidzIGNlbGwuICovXG4gICAgdW5yZWdpc3RlckNvbHVtbkNlbGwoY29sdW1uTmFtZTogc3RyaW5nLCBjZWxsRWxSZWY6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1uQ2VsbHMgPSB0aGlzLl9jb2x1bW5zQ2VsbE1hcC5nZXQoY29sdW1uTmFtZSkgfHwgW107XG4gICAgICAgIGNvbnN0IGVsbUluZGV4ID0gY29sdW1uQ2VsbHMuZmluZEluZGV4KChlKSA9PiBlLm5hdGl2ZUVsZW1lbnQgPT09IGNlbGxFbFJlZi5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICBpZiAoZWxtSW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb2x1bW5DZWxscy5zcGxpY2UoZWxtSW5kZXgsIDEpO1xuXG4gICAgICAgIHRoaXMuX2NvbHVtbnNDZWxsTWFwLnNldChjb2x1bW5OYW1lLCBjb2x1bW5DZWxscyk7XG4gICAgfVxuXG4gICAgLyoqIFJlZ2lzdGVyIHRoZSB2YWx1ZSBvZiBjb2x1bW4gd2lkdGggdGhhdCBjaGFuZ2VkIGZyb20gIGlucHV0ICovXG4gICAgc2V0Q3VzdG9tV2lkdGgoY29sdW1uTmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpeGVkQ29sdW1uc1dpZHRoTWFwLnNldChjb2x1bW5OYW1lLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqIFNldCB0aGUgYXBwcm9wcmlhdGUgY29sdW1uIHJlc2l6ZXIgcG9zaXRpb24uICovXG4gICAgc2V0SW5pdGlhbFJlc2l6ZXJQb3NpdGlvbihyZXNpemVyUG9zaXRpb246IG51bWJlciwgcmVzaXplZENvbHVtbjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3Jlc2l6ZWRDb2x1bW4gPSByZXNpemVkQ29sdW1uO1xuICAgICAgICB0aGlzLl9yZXNpemVyUG9zaXRpb24gPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZXJQb3NpdGlvbiQubmV4dCh0aGlzLnJlc2l6ZXJQb3NpdGlvbik7XG5cbiAgICAgICAgaWYgKHJlc2l6ZXJQb3NpdGlvbiAhPSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBzY3JvbGxMZWZ0T2Zmc2V0ID0gdGhpcy5fc2Nyb2xsTGVmdCAqICh0aGlzLl9ydGwgPyAxIDogLTEpO1xuICAgICAgICAgICAgdGhpcy5fcmVzaXplclBvc2l0aW9uID0gcmVzaXplclBvc2l0aW9uIC0gVEFCTEVfUkVTSVpFUl9CT1JERVJfV0lEVEggKyBzY3JvbGxMZWZ0T2Zmc2V0O1xuICAgICAgICAgICAgdGhpcy5yZXNpemVyUG9zaXRpb24kLm5leHQodGhpcy5yZXNpemVyUG9zaXRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbWFya0ZvckNoZWNrLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogSGlkZSB0aGUgY29sdW1uIHJlc2l6ZXIuICovXG4gICAgaGlkZVJlc2l6ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9yZXNpemVJblByb2dyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yZXNpemVyUG9zaXRpb24gPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZXJQb3NpdGlvbiQubmV4dCh0aGlzLnJlc2l6ZXJQb3NpdGlvbik7XG4gICAgICAgIHRoaXMuX21hcmtGb3JDaGVjay5uZXh0KCk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZSBzdGFydCByZXNpemluZy4gKi9cbiAgICBzdGFydFJlc2l6ZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdGFydFggPSB0aGlzLnJlc2l6ZXJQb3NpdGlvbjtcbiAgICAgICAgdGhpcy5fY2xpZW50U3RhcnRYID0gZXZlbnQuY2xpZW50WDtcblxuICAgICAgICB0aGlzLl91cGRhdGVSZXNpemVyUG9zaXRpb25Pbk1vdXNlTW92ZSgpO1xuXG4gICAgICAgIHRoaXMuX3Jlc2l6ZUluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MkLm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZSBlbmQgcmVzaXppbmcuICovXG4gICAgZmluaXNoUmVzaXplKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Jlc2l6ZXJNb3ZlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgICAgdGhpcy5fcmVzaXplSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MkLm5leHQoZmFsc2UpO1xuICAgICAgICB0aGlzLl9yZXNpemVyUG9zaXRpb24gPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZXJQb3NpdGlvbiQubmV4dCh0aGlzLnJlc2l6ZXJQb3NpdGlvbik7XG5cbiAgICAgICAgaWYgKHRoaXMuX3N0YXJ0WCAhPSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBjbGllbnRTdGFydFggPSB0aGlzLl9jbGllbnRTdGFydFggPz8gMDtcbiAgICAgICAgICAgIGNvbnN0IGRpZmZYID0gdGhpcy5fcnRsID8gY2xpZW50U3RhcnRYIC0gZXZlbnQuY2xpZW50WCA6IGV2ZW50LmNsaWVudFggLSBjbGllbnRTdGFydFg7XG5cbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NSZXNpemUoZGlmZlgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fc3RhcnRYID0gbnVsbDtcbiAgICAgICAgdGhpcy5fY2xpZW50U3RhcnRYID0gbnVsbDtcblxuICAgICAgICB0aGlzLl9tYXJrRm9yQ2hlY2submV4dCgpO1xuICAgIH1cblxuICAgIC8qKiBVcGRhdGUgY29sdW1ucyB3aWR0aCBhZnRlciByZXNpemluZywgcHJldmVudCBmcm9tIGhhdmluZyB0b28gc21hbGwgY29sdW1ucy4gKi9cbiAgICBfcHJvY2Vzc1Jlc2l6ZShkaWZmWDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJlc2l6ZWRFbGVtZW50ID0gdGhpcy5fY29sdW1uc0NlbGxNYXAuZ2V0KHRoaXMuX3Jlc2l6ZWRDb2x1bW4pPy5bMF0/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gcmVzaXplZEVsZW1lbnQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuXG4gICAgICAgIGlmICghY29sdW1uV2lkdGggfHwgIXJlc2l6ZWRFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGlmZlggPCAwICYmIGNvbHVtbldpZHRoICsgZGlmZlggPCBUQUJMRV9DT0xVTU5fTUlOX1dJRFRIKSB7XG4gICAgICAgICAgICBkaWZmWCA9IFRBQkxFX0NPTFVNTl9NSU5fV0lEVEggLSBjb2x1bW5XaWR0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5maXhlZFdpZHRoKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtjb2x1bW5OYW1lLCBjZWxsc10gb2YgdGhpcy5fY29sdW1uc0NlbGxNYXAuZW50cmllcygpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGNlbGxzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9maXhlZENvbHVtbnNXaWR0aE1hcC5zZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5OYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2VsbHNbMF0ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCArICdweCdcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGlmZlggPiAwICYmIHRoaXMuX3RhYmxlUmVmLl9mcmVlemFibGVDb2x1bW5zLmhhcyh0aGlzLl9yZXNpemVkQ29sdW1uKSkge1xuICAgICAgICAgICAgY29uc3QgZnJlZXplVG9OZXh0Q29sdW1uTmFtZSA9IHRoaXMuX3Zpc2libGVDb2x1bW5OYW1lc1t0aGlzLl90YWJsZVJlZi5fZnJlZXphYmxlQ29sdW1ucy5zaXplXTtcbiAgICAgICAgICAgIGNvbnN0IGFjdHVhbFdpZHRoID0gdGhpcy5nZXRQcmV2Q29sdW1uc1dpZHRoKGZyZWV6ZVRvTmV4dENvbHVtbk5hbWUpO1xuICAgICAgICAgICAgY29uc3QgbmV3V2lkdGggPSBhY3R1YWxXaWR0aCArIGRpZmZYO1xuICAgICAgICAgICAgY29uc3QgbWF4V2lkdGggPSB0aGlzLl90YWJsZVJlZi5nZXRNYXhBbGxvd2VkRnJlZXphYmxlQ29sdW1uc1dpZHRoKCk7XG4gICAgICAgICAgICAvLyBpbiBjYXNlIFwiX3Jlc2l6ZWRDb2x1bW5cIiBpcyBmcmVlemFibGUsIG1ha2Ugc3VyZSB0aGUgb3ZlcmFsbCB3aWR0aCBvZiBmcmVlemFibGUgY29sdW1ucyBkb2VzIG5vdCBleGNlZWQgdGhlIHdpZHRoIG9mIHRoZSB0YWJsZVxuICAgICAgICAgICAgaWYgKG5ld1dpZHRoID49IG1heFdpZHRoKSB7XG4gICAgICAgICAgICAgICAgZGlmZlggPSBtYXhXaWR0aCAtIGFjdHVhbFdpZHRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdXBkYXRlZFdpZHRoID0gY29sdW1uV2lkdGggKyBkaWZmWDtcbiAgICAgICAgdGhpcy5fZml4ZWRDb2x1bW5zV2lkdGhNYXAuc2V0KHRoaXMuX3Jlc2l6ZWRDb2x1bW4sIHVwZGF0ZWRXaWR0aCArICdweCcpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZyb3plbkNvbHVtbnNXaWR0aEFmdGVyUmVzaXplKHRoaXMuX3Jlc2l6ZWRDb2x1bW4sIGRpZmZYKTtcblxuICAgICAgICBjb25zdCBjb21wdXRlZCA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHJlc2l6ZWRFbGVtZW50KTtcbiAgICAgICAgY29uc3QgcGFkZGluZyA9IHBhcnNlSW50KGNvbXB1dGVkLnBhZGRpbmdMZWZ0LCAxMCkgKyBwYXJzZUludChjb21wdXRlZC5wYWRkaW5nUmlnaHQsIDEwKTtcbiAgICAgICAgdGhpcy5fdXBkYXRlSGVhZGVyT3ZlcmZsb3dTdGF0ZSh1cGRhdGVkV2lkdGggLSBwYWRkaW5nKTtcbiAgICAgICAgdGhpcy5fbWFya0ZvckNoZWNrLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogVXBkYXRlIGNvbHVtbiByZXNpemVyIHBvc2l0aW9uLiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVJlc2l6ZXJQb3NpdGlvbk9uTW91c2VNb3ZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZXNpemVyTW92ZVN1YnNjcmlwdGlvbiA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNlbW92ZScpXG4gICAgICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMTApKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGllbnRTdGFydFggPSB0aGlzLl9jbGllbnRTdGFydFggPz8gMDtcbiAgICAgICAgICAgICAgICBjb25zdCBkaWZmWCA9IHRoaXMuX3J0bCA/IGNsaWVudFN0YXJ0WCAtIGV2ZW50LmNsaWVudFggOiBldmVudC5jbGllbnRYIC0gY2xpZW50U3RhcnRYO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fcmVzaXplclBvc2l0aW9uID0gKHRoaXMuX3N0YXJ0WCA/PyAwKSArIGRpZmZYO1xuICAgICAgICAgICAgICAgIHRoaXMucmVzaXplclBvc2l0aW9uJC5uZXh0KHRoaXMucmVzaXplclBvc2l0aW9uKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuX21hcmtGb3JDaGVjay5uZXh0KCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgaGVhZGVyIHRleHQgbGVuZ3RoIGdvZXMgb3ZlciB0aGUgY29sdW1uIHdpZHRoLiBJbiBzdWNoIGNhc2UgYXBwbGllcyB0ZXh0IHRydW5jYXRpb24gd2l0aFxuICAgICAqIGVsbGlwc2lzIGFuZCBtYWtlIHN1cmUgd2UgYWxzbyBzaG93IGEgdG9vbHRpcC5cbiAgICAgKlxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBfdXBkYXRlSGVhZGVyT3ZlcmZsb3dTdGF0ZSh1cGRhdGVkV2lkdGg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fY29sdW1uc0NlbGxNYXBcbiAgICAgICAgICAgIC5nZXQodGhpcy5fcmVzaXplZENvbHVtbilcbiAgICAgICAgICAgID8uZmluZCgoYykgPT4gYz8ubmF0aXZlRWxlbWVudC50YWdOYW1lID09PSAnVEgnKT8ubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgdmlzaWJsZUNvbHVtbiA9IHRoaXMuX3RhYmxlUmVmLmdldFZpc2libGVUYWJsZUNvbHVtbnMoKS5maW5kKChjKSA9PiBjLm5hbWUgPT09IHRoaXMuX3Jlc2l6ZWRDb2x1bW4pO1xuICAgICAgICBjb25zdCBoZWFkZXJUZXh0RWxlbSA9IGVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMuX3RhYmxlUmVmLmlkfS1oZWFkZXItY2VsbC0ke3RoaXMuX3Jlc2l6ZWRDb2x1bW59YCk7XG5cbiAgICAgICAgaWYgKCFoZWFkZXJUZXh0RWxlbSB8fCAhdmlzaWJsZUNvbHVtbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHZpc2libGVDb2x1bW4uaGVhZGVyT3ZlcmZsb3dzID0gaGVhZGVyVGV4dEVsZW0uc2Nyb2xsV2lkdGggPiB1cGRhdGVkV2lkdGg7XG4gICAgfVxufVxuIl19
|
|
294
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLXJlc2l6ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3RhYmxlLWhlbHBlcnMvc2VydmljZXMvdGFibGUtY29sdW1uLXJlc2l6ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3RELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBRWpGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQUU1Qzs7Ozs7R0FLRztBQUVILE1BQU0sT0FBTyx3QkFBd0I7SUFvRGpDLGdEQUFnRDtJQUNoRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lBUUQsdUNBQXVDO0lBQ3ZDLElBQUksZUFBZTtRQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBS0QscUNBQXFDO0lBQ3JDLElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsNkRBQTZEO0lBQzdELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksS0FBSyxJ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ZWN0YWJsZSwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUQUJMRV9DT0xVTU5fTUlOX1dJRFRIIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuaW1wb3J0IHsgVGFibGUgfSBmcm9tICcuLi90YWJsZSc7XG5pbXBvcnQgeyBUYWJsZVNjcm9sbERpc3BhdGNoZXJTZXJ2aWNlIH0gZnJvbSAnLi90YWJsZS1zY3JvbGwtZGlzcGF0Y2hlci5zZXJ2aWNlJztcblxuZXhwb3J0IGNvbnN0IFRBQkxFX1JFU0laRVJfQk9SREVSX1dJRFRIID0gMztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGhhbmRsZSBhbGwgdGhpbmdzIHJlbGF0ZWQgdG8gY29sdW1uIHJlc2l6aW5nOlxuICogLSBTZXR0aW5nIHJlc2l6ZXJcbiAqIC0gUHJvY2Vzc2luZyByZXNpemVcbiAqIC0gQ2FsY3VsYXRpbmcgdGhlIHJlYWwgY29sdW1ucyB3aWR0aFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFibGVDb2x1bW5SZXNpemVTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ZpeGVkQ29sdW1uc1dpZHRoTWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29sdW1uc0NlbGxNYXAgPSBuZXcgTWFwPHN0cmluZywgRWxlbWVudFJlZjxIVE1MVGFibGVEYXRhQ2VsbEVsZW1lbnQ+W10+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Zpc2libGVDb2x1bW5OYW1lczogc3RyaW5nW10gPSBbXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtbkxlZnROZWlnaGJvdXJNYXAgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF92aXNpYmxlQ29sdW1uUmlnaHROZWlnaGJvdXJNYXAgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwID0gbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtblJpZ2h0T2Zmc2V0UHhNYXAgPSBuZXcgTWFwPHN0cmluZywgbnVtYmVyPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdGFydFg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jbGllbnRTdGFydFg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yZXNpemVJblByb2dyZXNzID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc2l6ZWRDb2x1bW46IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVzaXplclBvc2l0aW9uOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc2Nyb2xsTGVmdCA9IDA7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX21hcmtGb3JDaGVjayA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2Rlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc2l6ZXJNb3ZlU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90YWJsZVJlZjogVGFibGU7XG5cbiAgICAvKiogSW5kaWNhdGUgaWYgcmVzaXppbmcgcHJvY2VzcyBpbiBwcm9ncmVzcy4gKi9cbiAgICBnZXQgcmVzaXplSW5Qcm9ncmVzcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc2l6ZUluUHJvZ3Jlc3M7XG4gICAgfVxuXG4gICAgLyoqIFJlc2l6ZSBwcm9ncmVzcyBzdHJlYW0uICovXG4gICAgcmVhZG9ubHkgcmVzaXplSW5Qcm9ncmVzcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRoaXMuX3Jlc2l6ZUluUHJvZ3Jlc3MpO1xuXG4gICAgLyoqIFdoZXRoZXIgY2VsbCBtb2NrIHNob3VsZCBiZSB2aXNpYmxlLiAqL1xuICAgIHJlYWRvbmx5IGNlbGxNb2NrVmlzaWJsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAgIC8qKiBDdXJyZW50IGNvbHVtbiByZXNpemVyIHBvc2l0aW9uLiAqL1xuICAgIGdldCByZXNpemVyUG9zaXRpb24oKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc2l6ZXJQb3NpdGlvbiA/PyAwO1xuICAgIH1cblxuICAgIC8qKiBSZXNpemVyIHBvc2l0aW9uIHN0cmVhbS4gKi9cbiAgICByZWFkb25seSByZXNpemVyUG9zaXRpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuXG4gICAgLyoqIE9ic2VydmFibGUgdG8gbm90aWZ5IHRvIHJ1biBDRCAqL1xuICAgIGdldCBtYXJrRm9yQ2hlY2soKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXJrRm9yQ2hlY2suYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqIHRhYmxlIGhhcyBmaXhlZCB3aWR0aCBpZiBhbGwgb2YgaXQncyBjb2x1bW5zIGFyZSBmaXhlZCAqL1xuICAgIGdldCBmaXhlZFdpZHRoKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZml4ZWRDb2x1bW5zV2lkdGhNYXAuc2l6ZSA9PT0gdGhpcy5fdmlzaWJsZUNvbHVtbk5hbWVzLmxlbmd0aDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgZ2V0IF9ydGwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ydGxTZXJ2aWNlPy5ydGwuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZVNjcm9sbERpc3BhdGNoZXJTZXJ2aWNlOiBUYWJsZVNjcm9sbERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IF9ydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX3RhYmxlU2Nyb2xsRGlzcGF0Y2hlclNlcnZpY2VcbiAgICAgICAgICAgID8uaG9yaXpvbnRhbGx5U2Nyb2xsZWQoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzY3JvbGxhYmxlKSA9PiAodGhpcy5fc2Nyb2xsTGVmdCA9IHNjcm9sbGFibGUuZ2V0U2Nyb2xsTGVmdCgpKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVzaXplSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MkLm5leHQoZmFsc2UpO1xuXG4gICAgICAgIHRoaXMuX2Rlc3Ryb3llZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2Rlc3Ryb3llZC5jb21wbGV0ZSgpO1xuXG4gICAgICAgIHRoaXMuX3Jlc2l6ZXJNb3ZlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzZXRUYWJsZVJlZihyZWY6IFRhYmxlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYmxlUmVmID0gcmVmO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIGluaXRpYWxpemVzIHNlcnZpY2Ugd2l0aCBkYXRhLCB0cmlnZ2VyIGNvbHVtbnMgd2lkdGggY2FsY3VsYXRpb24uICovXG4gICAgc2V0Q29sdW1uTmFtZXModmlzaWJsZUNvbHVtbk5hbWVzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE5laWdoYm91ck1hcC5jbGVhcigpO1xuICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHROZWlnaGJvdXJNYXAuY2xlYXIoKTtcbiAgICAgICAgdmlzaWJsZUNvbHVtbk5hbWVzLmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Zpc2libGVDb2x1bW5MZWZ0TmVpZ2hib3VyTWFwLnNldChjb2x1bW4sIHZpc2libGVDb2x1bW5OYW1lc1tpbmRleCAtIDFdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHZpc2libGVDb2x1bW5OYW1lcy5yZXZlcnNlKCkuZm9yRWFjaCgoY29sdW1uLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fdmlzaWJsZUNvbHVtblJpZ2h0TmVpZ2hib3VyTWFwLnNldChjb2x1bW4sIHZpc2libGVDb2x1bW5OYW1lc1tpbmRleCAtIDFdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3Zpc2libGVDb2x1bW5OYW1lcyA9IFsuLi52aXNpYmxlQ29sdW1uTmFtZXNdO1xuICAgICAgICB0aGlzLnVwZGF0ZUZyb3plbkNvbHVtbnNXaWR0aCgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdXBkYXRlRnJvemVuQ29sdW1uc1dpZHRoKCk6IHZvaWQge1xuICAgICAgICBsZXQgYWxsUHJldmlvdXNXaWR0aHMgPSAwLFxuICAgICAgICAgICAgYWxsTmV4dFdpZHRocyA9IDA7XG4gICAgICAgIGZvciAoY29uc3QgW2NvbHVtbiwgcHJldkNvbHVtbl0gb2YgdGhpcy5fdmlzaWJsZUNvbHVtbkxlZnROZWlnaGJvdXJNYXAuZW50cmllcygpKSB7XG4gICAgICAgICAgICBhbGxQcmV2aW91c1dpZHRocyArPVxuICAgICAgICAgICAgICAgIHRoaXMuX2NvbHVtbnNDZWxsTWFwLmdldChwcmV2Q29sdW1uIGFzIHN0cmluZyk/LlswXT8ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCA/PyAwO1xuICAgICAgICAgICAgdGhpcy5fdmlzaWJsZUNvbHVtbkxlZnRPZmZzZXRQeE1hcC5zZXQoY29sdW1uLCBhbGxQcmV2aW91c1dpZHRocyk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBbY29sdW1uLCBuZXh0Q29sdW1uXSBvZiB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHROZWlnaGJvdXJNYXAuZW50cmllcygpKSB7XG4gICAgICAgICAgICBhbGxOZXh0V2lkdGhzICs9XG4gICAgICAgICAgICAgICAgdGhpcy5fY29sdW1uc0NlbGxNYXAuZ2V0KG5leHRDb2x1bW4gYXMgc3RyaW5nKT8uWzBdPy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoID8/IDA7XG4gICAgICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHRPZmZzZXRQeE1hcC5zZXQoY29sdW1uLCBhbGxOZXh0V2lkdGhzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdXBkYXRlRnJvemVuQ29sdW1uc1dpZHRoQWZ0ZXJSZXNpemUoY29sdW1uTmFtZTogc3RyaW5nLCBkaWZmWDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGxldCBmb3VuZCA9IGZhbHNlO1xuICAgICAgICBmb3IgKGNvbnN0IFtjb2x1bW4sIHdpZHRoXSBvZiB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwLmVudHJpZXMoKSkge1xuICAgICAgICAgICAgaWYgKGNvbHVtbiA9PT0gY29sdW1uTmFtZSkge1xuICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZm91bmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwLnNldChjb2x1bW4sIHdpZHRoICsgZGlmZlgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJldHJpZXZlcyBjdXN0b20gY29sdW1uIHZhbHVlIG9yIHJldHVybnMgYHVuc2V0YCAqL1xuICAgIGdldENvbHVtbldpZHRoU3R5bGUoY29sdW1uTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY2FsY3VsYXRlZFdpZHRoID0gdGhpcy5fZml4ZWRDb2x1bW5zV2lkdGhNYXAuZ2V0KGNvbHVtbk5hbWUpO1xuICAgICAgICByZXR1cm4gY2FsY3VsYXRlZFdpZHRoIHx8ICd1bnNldCc7XG4gICAgfVxuXG4gICAgLyoqIFByZXZpb3VzIGNvbHVtbiBuYW1lICovXG4gICAgZ2V0UHJldmlvdXNDb2x1bW5OYW1lKGNvbHVtbk5hbWU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE5laWdoYm91ck1hcC5nZXQoY29sdW1uTmFtZSk7XG4gICAgfVxuXG4gICAgLyoqIFByZXZpb3VzIGNvbHVtbiBuYW1lICovXG4gICAgZ2V0TmV4dENvbHVtbk5hbWUoY29sdW1uTmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Zpc2libGVDb2x1bW5SaWdodE5laWdoYm91ck1hcC5nZXQoY29sdW1uTmFtZSk7XG4gICAgfVxuXG4gICAgLyoqIE92ZXJhbGwgcHJldmlvdXMgY29sdW1ucyB3aWR0aC4gVXNlZCB0byBjYWxjdWxhdGUgb2Zmc2V0IGZvciB0aGUgYWJzb2x1dGUgcG9zaXRpb25lZCBjZWxscy4gKi9cbiAgICBnZXRQcmV2Q29sdW1uc1dpZHRoKGNvbHVtbk5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl92aXNpYmxlQ29sdW1uTGVmdE9mZnNldFB4TWFwLmdldChjb2x1bW5OYW1lKSA/PyAwO1xuICAgIH1cblxuICAgIC8qKiBPdmVyYWxsIG5leHQgY29sdW1ucyB3aWR0aC4gVXNlZCB0byBjYWxjdWxhdGUgb2Zmc2V0IGZvciB0aGUgYWJzb2x1dGUgcG9zaXRpb25lZCBjZWxscy4gKi9cbiAgICBnZXROZXh0Q29sdW1uc1dpZHRoKGNvbHVtbk5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl92aXNpYmxlQ29sdW1uUmlnaHRPZmZzZXRQeE1hcC5nZXQoY29sdW1uTmFtZSkgPz8gMDtcbiAgICB9XG5cbiAgICAvKiogUmVnaXN0ZXIgY29sdW1uJ3MgY2VsbCB0byBnZXQgaXRzIGRpbWVuc2lvbnMgaW4gZnVydGhlci4gKi9cbiAgICByZWdpc3RlckNvbHVtbkNlbGwoY29sdW1uTmFtZTogc3RyaW5nLCBjZWxsRWxSZWY6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1uQ2VsbHMgPSB0aGlzLl9jb2x1bW5zQ2VsbE1hcC5nZXQoY29sdW1uTmFtZSkgfHwgW107XG4gICAgICAgIHRoaXMuX2NvbHVtbnNDZWxsTWFwLnNldChjb2x1bW5OYW1lLCBbY2VsbEVsUmVmLCAuLi5jb2x1bW5DZWxsc10pO1xuICAgIH1cblxuICAgIC8qKiBVbnJlZ2lzdGVyIGNvbHVtbidzIGNlbGwuICovXG4gICAgdW5yZWdpc3RlckNvbHVtbkNlbGwoY29sdW1uTmFtZTogc3RyaW5nLCBjZWxsRWxSZWY6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1uQ2VsbHMgPSB0aGlzLl9jb2x1bW5zQ2VsbE1hcC5nZXQoY29sdW1uTmFtZSkgfHwgW107XG4gICAgICAgIGNvbnN0IGVsbUluZGV4ID0gY29sdW1uQ2VsbHMuZmluZEluZGV4KChlKSA9PiBlLm5hdGl2ZUVsZW1lbnQgPT09IGNlbGxFbFJlZi5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICBpZiAoZWxtSW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb2x1bW5DZWxscy5zcGxpY2UoZWxtSW5kZXgsIDEpO1xuXG4gICAgICAgIHRoaXMuX2NvbHVtbnNDZWxsTWFwLnNldChjb2x1bW5OYW1lLCBjb2x1bW5DZWxscyk7XG4gICAgfVxuXG4gICAgLyoqIFJlZ2lzdGVyIHRoZSB2YWx1ZSBvZiBjb2x1bW4gd2lkdGggdGhhdCBjaGFuZ2VkIGZyb20gIGlucHV0ICovXG4gICAgc2V0Q3VzdG9tV2lkdGgoY29sdW1uTmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpeGVkQ29sdW1uc1dpZHRoTWFwLnNldChjb2x1bW5OYW1lLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqIFNldCB0aGUgYXBwcm9wcmlhdGUgY29sdW1uIHJlc2l6ZXIgcG9zaXRpb24uICovXG4gICAgc2V0SW5pdGlhbFJlc2l6ZXJQb3NpdGlvbihyZXNpemVyUG9zaXRpb246IG51bWJlciwgcmVzaXplZENvbHVtbjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3Jlc2l6ZWRDb2x1bW4gPSByZXNpemVkQ29sdW1uO1xuICAgICAgICB0aGlzLl9yZXNpemVyUG9zaXRpb24gPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZXJQb3NpdGlvbiQubmV4dCh0aGlzLnJlc2l6ZXJQb3NpdGlvbik7XG5cbiAgICAgICAgaWYgKHJlc2l6ZXJQb3NpdGlvbiAhPSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBzY3JvbGxMZWZ0T2Zmc2V0ID0gdGhpcy5fc2Nyb2xsTGVmdCAqICh0aGlzLl9ydGwgPyAxIDogLTEpO1xuICAgICAgICAgICAgdGhpcy5fcmVzaXplclBvc2l0aW9uID0gcmVzaXplclBvc2l0aW9uIC0gVEFCTEVfUkVTSVpFUl9CT1JERVJfV0lEVEggKyBzY3JvbGxMZWZ0T2Zmc2V0O1xuICAgICAgICAgICAgdGhpcy5yZXNpemVyUG9zaXRpb24kLm5leHQodGhpcy5yZXNpemVyUG9zaXRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbWFya0ZvckNoZWNrLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogSGlkZSB0aGUgY29sdW1uIHJlc2l6ZXIuICovXG4gICAgaGlkZVJlc2l6ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9yZXNpemVJblByb2dyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yZXNpemVyUG9zaXRpb24gPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZXJQb3NpdGlvbiQubmV4dCh0aGlzLnJlc2l6ZXJQb3NpdGlvbik7XG4gICAgICAgIHRoaXMuX21hcmtGb3JDaGVjay5uZXh0KCk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZSBzdGFydCByZXNpemluZy4gKi9cbiAgICBzdGFydFJlc2l6ZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdGFydFggPSB0aGlzLnJlc2l6ZXJQb3NpdGlvbjtcbiAgICAgICAgdGhpcy5fY2xpZW50U3RhcnRYID0gZXZlbnQuY2xpZW50WDtcblxuICAgICAgICB0aGlzLl91cGRhdGVSZXNpemVyUG9zaXRpb25Pbk1vdXNlTW92ZSgpO1xuXG4gICAgICAgIHRoaXMuX3Jlc2l6ZUluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MkLm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZSBlbmQgcmVzaXppbmcuICovXG4gICAgZmluaXNoUmVzaXplKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Jlc2l6ZXJNb3ZlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgICAgdGhpcy5fcmVzaXplSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MkLm5leHQoZmFsc2UpO1xuICAgICAgICB0aGlzLl9yZXNpemVyUG9zaXRpb24gPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZXJQb3NpdGlvbiQubmV4dCh0aGlzLnJlc2l6ZXJQb3NpdGlvbik7XG5cbiAgICAgICAgaWYgKHRoaXMuX3N0YXJ0WCAhPSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBjbGllbnRTdGFydFggPSB0aGlzLl9jbGllbnRTdGFydFggPz8gMDtcbiAgICAgICAgICAgIGNvbnN0IGRpZmZYID0gdGhpcy5fcnRsID8gY2xpZW50U3RhcnRYIC0gZXZlbnQuY2xpZW50WCA6IGV2ZW50LmNsaWVudFggLSBjbGllbnRTdGFydFg7XG5cbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NSZXNpemUoZGlmZlgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fc3RhcnRYID0gbnVsbDtcbiAgICAgICAgdGhpcy5fY2xpZW50U3RhcnRYID0gbnVsbDtcblxuICAgICAgICB0aGlzLl9tYXJrRm9yQ2hlY2submV4dCgpO1xuICAgIH1cblxuICAgIC8qKiBVcGRhdGUgY29sdW1ucyB3aWR0aCBhZnRlciByZXNpemluZywgcHJldmVudCBmcm9tIGhhdmluZyB0b28gc21hbGwgY29sdW1ucy4gKi9cbiAgICBfcHJvY2Vzc1Jlc2l6ZShkaWZmWDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJlc2l6ZWRFbGVtZW50ID0gdGhpcy5fY29sdW1uc0NlbGxNYXAuZ2V0KHRoaXMuX3Jlc2l6ZWRDb2x1bW4pPy5bMF0/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gcmVzaXplZEVsZW1lbnQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuXG4gICAgICAgIGlmICghY29sdW1uV2lkdGggfHwgIXJlc2l6ZWRFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGlmZlggPCAwICYmIGNvbHVtbldpZHRoICsgZGlmZlggPCBUQUJMRV9DT0xVTU5fTUlOX1dJRFRIKSB7XG4gICAgICAgICAgICBkaWZmWCA9IFRBQkxFX0NPTFVNTl9NSU5fV0lEVEggLSBjb2x1bW5XaWR0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5maXhlZFdpZHRoKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtjb2x1bW5OYW1lLCBjZWxsc10gb2YgdGhpcy5fY29sdW1uc0NlbGxNYXAuZW50cmllcygpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGNlbGxzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9maXhlZENvbHVtbnNXaWR0aE1hcC5zZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5OYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2VsbHNbMF0ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCArICdweCdcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGlmZlggPiAwICYmIHRoaXMuX3RhYmxlUmVmLl9mcmVlemFibGVDb2x1bW5zLmhhcyh0aGlzLl9yZXNpemVkQ29sdW1uKSkge1xuICAgICAgICAgICAgY29uc3QgZnJlZXplVG9OZXh0Q29sdW1uTmFtZSA9IHRoaXMuX3Zpc2libGVDb2x1bW5OYW1lc1t0aGlzLl90YWJsZVJlZi5fZnJlZXphYmxlQ29sdW1ucy5zaXplXTtcbiAgICAgICAgICAgIGNvbnN0IGFjdHVhbFdpZHRoID0gdGhpcy5nZXRQcmV2Q29sdW1uc1dpZHRoKGZyZWV6ZVRvTmV4dENvbHVtbk5hbWUpO1xuICAgICAgICAgICAgY29uc3QgbmV3V2lkdGggPSBhY3R1YWxXaWR0aCArIGRpZmZYO1xuICAgICAgICAgICAgY29uc3QgbWF4V2lkdGggPSB0aGlzLl90YWJsZVJlZi5nZXRNYXhBbGxvd2VkRnJlZXphYmxlQ29sdW1uc1dpZHRoKCk7XG4gICAgICAgICAgICAvLyBpbiBjYXNlIFwiX3Jlc2l6ZWRDb2x1bW5cIiBpcyBmcmVlemFibGUsIG1ha2Ugc3VyZSB0aGUgb3ZlcmFsbCB3aWR0aCBvZiBmcmVlemFibGUgY29sdW1ucyBkb2VzIG5vdCBleGNlZWQgdGhlIHdpZHRoIG9mIHRoZSB0YWJsZVxuICAgICAgICAgICAgaWYgKG5ld1dpZHRoID49IG1heFdpZHRoKSB7XG4gICAgICAgICAgICAgICAgZGlmZlggPSBtYXhXaWR0aCAtIGFjdHVhbFdpZHRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdXBkYXRlZFdpZHRoID0gY29sdW1uV2lkdGggKyBkaWZmWDtcbiAgICAgICAgdGhpcy5fZml4ZWRDb2x1bW5zV2lkdGhNYXAuc2V0KHRoaXMuX3Jlc2l6ZWRDb2x1bW4sIHVwZGF0ZWRXaWR0aCArICdweCcpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZyb3plbkNvbHVtbnNXaWR0aEFmdGVyUmVzaXplKHRoaXMuX3Jlc2l6ZWRDb2x1bW4sIGRpZmZYKTtcblxuICAgICAgICBjb25zdCBjb21wdXRlZCA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHJlc2l6ZWRFbGVtZW50KTtcbiAgICAgICAgY29uc3QgcGFkZGluZyA9IHBhcnNlSW50KGNvbXB1dGVkLnBhZGRpbmdMZWZ0LCAxMCkgKyBwYXJzZUludChjb21wdXRlZC5wYWRkaW5nUmlnaHQsIDEwKTtcbiAgICAgICAgdGhpcy5fdXBkYXRlSGVhZGVyT3ZlcmZsb3dTdGF0ZSh1cGRhdGVkV2lkdGggLSBwYWRkaW5nKTtcbiAgICAgICAgdGhpcy5fbWFya0ZvckNoZWNrLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogVXBkYXRlIGNvbHVtbiByZXNpemVyIHBvc2l0aW9uLiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVJlc2l6ZXJQb3NpdGlvbk9uTW91c2VNb3ZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZXNpemVyTW92ZVN1YnNjcmlwdGlvbiA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNlbW92ZScpXG4gICAgICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMTApKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGllbnRTdGFydFggPSB0aGlzLl9jbGllbnRTdGFydFggPz8gMDtcbiAgICAgICAgICAgICAgICBjb25zdCBkaWZmWCA9IHRoaXMuX3J0bCA/IGNsaWVudFN0YXJ0WCAtIGV2ZW50LmNsaWVudFggOiBldmVudC5jbGllbnRYIC0gY2xpZW50U3RhcnRYO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fcmVzaXplclBvc2l0aW9uID0gKHRoaXMuX3N0YXJ0WCA/PyAwKSArIGRpZmZYO1xuICAgICAgICAgICAgICAgIHRoaXMucmVzaXplclBvc2l0aW9uJC5uZXh0KHRoaXMucmVzaXplclBvc2l0aW9uKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuX21hcmtGb3JDaGVjay5uZXh0KCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgaGVhZGVyIHRleHQgbGVuZ3RoIGdvZXMgb3ZlciB0aGUgY29sdW1uIHdpZHRoLiBJbiBzdWNoIGNhc2UgYXBwbGllcyB0ZXh0IHRydW5jYXRpb24gd2l0aFxuICAgICAqIGVsbGlwc2lzIGFuZCBtYWtlIHN1cmUgd2UgYWxzbyBzaG93IGEgdG9vbHRpcC5cbiAgICAgKlxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBfdXBkYXRlSGVhZGVyT3ZlcmZsb3dTdGF0ZSh1cGRhdGVkV2lkdGg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fY29sdW1uc0NlbGxNYXBcbiAgICAgICAgICAgIC5nZXQodGhpcy5fcmVzaXplZENvbHVtbilcbiAgICAgICAgICAgID8uZmluZCgoYykgPT4gYz8ubmF0aXZlRWxlbWVudC50YWdOYW1lID09PSAnVEgnKT8ubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgdmlzaWJsZUNvbHVtbiA9IHRoaXMuX3RhYmxlUmVmLmdldFZpc2libGVUYWJsZUNvbHVtbnMoKS5maW5kKChjKSA9PiBjLm5hbWUgPT09IHRoaXMuX3Jlc2l6ZWRDb2x1bW4pO1xuICAgICAgICBjb25zdCBoZWFkZXJUZXh0RWxlbSA9IGVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMuX3RhYmxlUmVmLmlkfS1oZWFkZXItY2VsbC0ke3RoaXMuX3Jlc2l6ZWRDb2x1bW59YCk7XG5cbiAgICAgICAgaWYgKCFoZWFkZXJUZXh0RWxlbSB8fCAhdmlzaWJsZUNvbHVtbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHZpc2libGVDb2x1bW4uaGVhZGVyT3ZlcmZsb3dzID0gaGVhZGVyVGV4dEVsZW0uc2Nyb2xsV2lkdGggPiB1cGRhdGVkV2lkdGg7XG4gICAgfVxufVxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class TableColumn {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3RhYmxlLWhlbHBlcnMvdGFibGUtY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sT0FBZ0IsV0FBVztDQW9FaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5cbmltcG9ydCB7IENvbHVtbkFsaWduVmFsdWUsIEZpbHRlcmFibGVDb2x1bW5EYXRhVHlwZSB9IGZyb20gJy4vZW51bXMnO1xuaW1wb3J0IHsgRmRwQ29sdW1uUmVzcG9uc2l2ZVN0YXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRhYmxlQ29sdW1uIHtcbiAgICAvKiogQ29sdW1uIHVuaXF1ZSBpZGVudGlmaWVyLiAqL1xuICAgIGFic3RyYWN0IG5hbWU6IHN0cmluZztcblxuICAgIC8qKiBDb2x1bW4gZGF0YSBhY2Nlc3NvciBrZXkuICovXG4gICAgYWJzdHJhY3Qga2V5OiBzdHJpbmc7XG5cbiAgICAvKiogQ29sdW1uIGhlYWRlciBsYWJlbC4gKi9cbiAgICBhYnN0cmFjdCBsYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqIENlbGwgdGV4dCBhbGlnbm1lbnQuICovXG4gICAgYWJzdHJhY3QgYWxpZ246IENvbHVtbkFsaWduVmFsdWU7XG5cbiAgICAvKiogVG9nZ2xlcyBzb3J0IGZlYXR1cmUgaW4gdGhlIGNvbHVtbiBoZWFkZXIuICovXG4gICAgYWJzdHJhY3Qgc29ydGFibGU6IGJvb2xlYW47XG5cbiAgICAvKiogVG9nZ2xlcyBmaWx0ZXIgZmVhdHVyZSBpbiB0aGUgY29sdW1uIGhlYWRlci4gKi9cbiAgICBhYnN0cmFjdCBmaWx0ZXJhYmxlOiBib29sZWFuO1xuXG4gICAgLyoqIERhdGEgdHlwZSB0aGUgY29sdW1uIHJlcHJlc2VudHMuICovXG4gICAgYWJzdHJhY3QgZGF0YVR5cGU6IEZpbHRlcmFibGVDb2x1bW5EYXRhVHlwZTtcblxuICAgIC8qKiBXaWR0aCBvZiB0aGUgY29sdW1uIGNlbGxzLiAqL1xuICAgIGFic3RyYWN0IHdpZHRoOiBzdHJpbmc7XG5cbiAgICAvKiogVG9nZ2xlcyBncm91cGluZyBmZWF0dXJlIGluIHRoZSBjb2x1bW4gaGVhZGVyLiAqL1xuICAgIGFic3RyYWN0IGdyb3VwYWJsZTogYm9vbGVhbjtcblxuICAgIC8qKiBUb2dnbGVzIGZyZWV6ZS91bmZyZWV6ZSBmZWF0dXJlIGluIHRoZSBjb2x1bW4gaGVhZGVyLiAqL1xuICAgIGFic3RyYWN0IGZyZWV6YWJsZTogYm9vbGVhbjtcblxuICAgIC8qKiBUb2dnbGVzIGVuZCBjb2x1bW4gZnJlZXplL3VuZnJlZXplIGZlYXR1cmUgaW4gdGhlIGNvbHVtbiBoZWFkZXIuICovXG4gICAgYWJzdHJhY3QgZW5kRnJlZXphYmxlOiBib29sZWFuO1xuXG4gICAgLyoqIEluaXRpYWwgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29sdW1uLiAqL1xuICAgIGFic3RyYWN0IHZpc2libGU6IGJvb2xlYW47XG5cbiAgICAvKiogQ29sdW1uIGNlbGwgdGVtcGxhdGUgZm9yIHJlYWRvbmx5IG1vZGUuICovXG4gICAgYWJzdHJhY3QgY29sdW1uQ2VsbFRlbXBsYXRlOiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKiBDb2x1bW4gY2VsbCB0ZW1wbGF0ZSBmb3IgZWRpdGluZyBtb2RlLiAqL1xuICAgIGFic3RyYWN0IGVkaXRhYmxlQ29sdW1uQ2VsbFRlbXBsYXRlOiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKiBDb2x1bW4gaGVhZGVyIHRlbXBsYXRlLiAqL1xuICAgIGFic3RyYWN0IGhlYWRlckNlbGxUZW1wbGF0ZTogTnVsbGFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG5cbiAgICAvKiogQ29sdW1uIGhlYWRlciBwb3BvdmVyIHRlbXBsYXRlLiAqL1xuICAgIGFic3RyYWN0IGhlYWRlckNlbGxQb3BvdmVyVGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3RhYmxlLWhlbHBlcnMvdGFibGUtY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sT0FBZ0IsV0FBVztDQW9FaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5cbmltcG9ydCB7IENvbHVtbkFsaWduVmFsdWUsIEZpbHRlcmFibGVDb2x1bW5EYXRhVHlwZSB9IGZyb20gJy4vZW51bXMnO1xuaW1wb3J0IHsgRmRwQ29sdW1uUmVzcG9uc2l2ZVN0YXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRhYmxlQ29sdW1uIHtcbiAgICAvKiogQ29sdW1uIHVuaXF1ZSBpZGVudGlmaWVyLiAqL1xuICAgIGFic3RyYWN0IG5hbWU6IHN0cmluZztcblxuICAgIC8qKiBDb2x1bW4gZGF0YSBhY2Nlc3NvciBrZXkuICovXG4gICAgYWJzdHJhY3Qga2V5OiBzdHJpbmc7XG5cbiAgICAvKiogQ29sdW1uIGhlYWRlciBsYWJlbC4gKi9cbiAgICBhYnN0cmFjdCBsYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqIENlbGwgdGV4dCBhbGlnbm1lbnQuICovXG4gICAgYWJzdHJhY3QgYWxpZ246IENvbHVtbkFsaWduVmFsdWU7XG5cbiAgICAvKiogVG9nZ2xlcyBzb3J0IGZlYXR1cmUgaW4gdGhlIGNvbHVtbiBoZWFkZXIuICovXG4gICAgYWJzdHJhY3Qgc29ydGFibGU6IGJvb2xlYW47XG5cbiAgICAvKiogVG9nZ2xlcyBmaWx0ZXIgZmVhdHVyZSBpbiB0aGUgY29sdW1uIGhlYWRlci4gKi9cbiAgICBhYnN0cmFjdCBmaWx0ZXJhYmxlOiBib29sZWFuO1xuXG4gICAgLyoqIERhdGEgdHlwZSB0aGUgY29sdW1uIHJlcHJlc2VudHMuICovXG4gICAgYWJzdHJhY3QgZGF0YVR5cGU6IEZpbHRlcmFibGVDb2x1bW5EYXRhVHlwZTtcblxuICAgIC8qKiBXaWR0aCBvZiB0aGUgY29sdW1uIGNlbGxzLiAqL1xuICAgIGFic3RyYWN0IHdpZHRoOiBzdHJpbmc7XG5cbiAgICAvKiogVG9nZ2xlcyBncm91cGluZyBmZWF0dXJlIGluIHRoZSBjb2x1bW4gaGVhZGVyLiAqL1xuICAgIGFic3RyYWN0IGdyb3VwYWJsZTogYm9vbGVhbjtcblxuICAgIC8qKiBUb2dnbGVzIGZyZWV6ZS91bmZyZWV6ZSBmZWF0dXJlIGluIHRoZSBjb2x1bW4gaGVhZGVyLiAqL1xuICAgIGFic3RyYWN0IGZyZWV6YWJsZTogYm9vbGVhbjtcblxuICAgIC8qKiBUb2dnbGVzIGVuZCBjb2x1bW4gZnJlZXplL3VuZnJlZXplIGZlYXR1cmUgaW4gdGhlIGNvbHVtbiBoZWFkZXIuICovXG4gICAgYWJzdHJhY3QgZW5kRnJlZXphYmxlOiBib29sZWFuO1xuXG4gICAgLyoqIEluaXRpYWwgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29sdW1uLiAqL1xuICAgIGFic3RyYWN0IHZpc2libGU6IGJvb2xlYW47XG5cbiAgICAvKiogQ29sdW1uIGNlbGwgdGVtcGxhdGUgZm9yIHJlYWRvbmx5IG1vZGUuICovXG4gICAgYWJzdHJhY3QgY29sdW1uQ2VsbFRlbXBsYXRlOiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKiBDb2x1bW4gY2VsbCB0ZW1wbGF0ZSBmb3IgZWRpdGluZyBtb2RlLiAqL1xuICAgIGFic3RyYWN0IGVkaXRhYmxlQ29sdW1uQ2VsbFRlbXBsYXRlOiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKiBDb2x1bW4gaGVhZGVyIHRlbXBsYXRlLiAqL1xuICAgIGFic3RyYWN0IGhlYWRlckNlbGxUZW1wbGF0ZTogTnVsbGFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG5cbiAgICAvKiogQ29sdW1uIGhlYWRlciBwb3BvdmVyIHRlbXBsYXRlLiAqL1xuICAgIGFic3RyYWN0IGhlYWRlckNlbGxQb3BvdmVyVGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIHRleHQgc2hvdWxkIHdyYXAsIHdoZW4gdGV4dCBpcyB0b28gbG9uZyBmb3IgMSBsaW5lLiAqL1xuICAgIGFic3RyYWN0IG5vV3JhcDogYm9vbGVhbjtcblxuICAgIC8qKiBXaGV0aGVyIHRvIGFwcGx5IGZkLXRhYmxlLXRleHQgKHRleHQtc2hhZG93KSB0byB0aGUgY2VsbCBjb250ZW50LCBpZiBkaXNhYmxlZCBub1dyYXAgaGFzIG5vIGVmZmVjdC4gKi9cbiAgICBhYnN0cmFjdCBhcHBseVRleHQ6IGJvb2xlYW47XG5cbiAgICAvKiogU3RvcmVzIGluZm9ybWF0aW9uIGZvciB0aGUgaGVhZGVyIGNlbGwgaWYgdGhlIGVsbGlwc2lzIGFyZSB2aXNpYmxlIGFmdGVyIHRoZSBjb2x1bW4gcmVzaXplICovXG4gICAgYWJzdHJhY3QgaGVhZGVyT3ZlcmZsb3dzOiBib29sZWFuOyAvLyBOb3QgYmVpbmcgdXNlZCBhbnl3aGVyZSwgaXMgaGVyZSBmb3IgaW5mb3JtYXRpb25cblxuICAgIC8qKiBXaGV0aGVyIHRoaXMgY29sdW1uIGlzIHZpc2libGUgKi9cbiAgICBhYnN0cmFjdCByZXNwb25zaXZlU3RhdGU6IEZkcENvbHVtblJlc3BvbnNpdmVTdGF0ZTtcbiAgICAvKiogQ29sdW1uIHJvbGUgYXR0cmlidXRlLiAqL1xuICAgIGFic3RyYWN0IHJvbGU6ICdjZWxsJyB8ICdyb3doZWFkZXInIHwgJ2dyaWRjZWxsJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgYWJzdHJhY3QgX2ZyZWV6ZWQ6IGJvb2xlYW47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGFic3RyYWN0IF9lbmRGcmVlemVkOiBib29sZWFuO1xufVxuIl19
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/member-ordering */
|
|
1
2
|
import { EventEmitter } from '@angular/core';
|
|
2
3
|
export class Table {
|
|
3
4
|
constructor() {
|
|
@@ -11,4 +12,4 @@ export class Table {
|
|
|
11
12
|
this.openTableColumnSettings = new EventEmitter();
|
|
12
13
|
}
|
|
13
14
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3NyYy9saWIvdGFibGUtaGVscGVycy90YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFjLFlBQVksRUFBWSxNQUFNLGVBQWUsQ0FBQztBQWVuRSxNQUFNLE9BQWdCLEtBQUs7SUFBM0I7UUEwSkksK0NBQStDO1FBQ3RDLDBCQUFxQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTlFLGlEQUFpRDtRQUN4Qyw0QkFBdUIsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVoRixnREFBZ0Q7UUFDdkMsMkJBQXNCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFL0UsaURBQWlEO1FBQ3hDLDRCQUF1QixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBVXBGLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmcgKi9cbmltcG9ydCB7IEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zZWFyY2gtZmllbGQnO1xuaW1wb3J0IHsgUHJlc2V0TWFuYWdlZENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUYWJsZURhdGFTb3VyY2UgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBDb2xsZWN0aW9uRmlsdGVyIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2NvbGxlY3Rpb24tZmlsdGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uR3JvdXAgfSBmcm9tICcuL2ludGVyZmFjZXMvY29sbGVjdGlvbi1ncm91cC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29sbGVjdGlvblNvcnQgfSBmcm9tICcuL2ludGVyZmFjZXMvY29sbGVjdGlvbi1zb3J0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJsZVN0YXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3RhYmxlLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQbGF0Zm9ybVRhYmxlTWFuYWdlZFByZXNldCwgU2F2ZVJvd3NFdmVudCwgVGFibGVJbml0aWFsU3RhdGUsIFRhYmxlUm93IH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGFibGVTY3JvbGxhYmxlIH0gZnJvbSAnLi9zZXJ2aWNlcy90YWJsZS1zY3JvbGwtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi90YWJsZS1jb2x1bW4nO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGFibGU8VCA9IGFueT4gaW1wbGVtZW50cyBQcmVzZXRNYW5hZ2VkQ29tcG9uZW50PFBsYXRmb3JtVGFibGVNYW5hZ2VkUHJlc2V0PiB7XG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAgIGFic3RyYWN0IF9sb2FkUHJldmlvdXNQYWdlczogYm9vbGVhbjtcblxuICAgIGFic3RyYWN0IHBhZ2VTY3JvbGxpbmc6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBsb2FkUGFnZXNCZWZvcmU6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBwYWdlU2l6ZTogTnVsbGFibGU8bnVtYmVyPjtcblxuICAgIGFic3RyYWN0IGZyZWV6ZUNvbHVtbnNUbzogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgZnJlZXplRW5kQ29sdW1uc1RvOiBzdHJpbmc7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIGN1cnJlbnQgcHJlc2V0IGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBhYnN0cmFjdCBwcmVzZXRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8UGxhdGZvcm1UYWJsZU1hbmFnZWRQcmVzZXQ+O1xuXG4gICAgLyoqIFN1bSBvZiB3aWR0aHMgb2YgZml4ZWQgY29sdW1ucyAoc2VtYW50aWMgaGlnaGxpZ2h0aW5nLCBzZWxlY3Rpb24pICovXG4gICAgYWJzdHJhY3QgZ2V0IF9maXhlZENvbHVtbnNQYWRkaW5nKCk6IG51bWJlcjtcblxuICAgIC8qKiBGcmVlemFibGUgY29sdW1uIG5hbWVzIGFuZCB0aGVpciByZXNwZWN0aXZlIGluZGV4ZXMgKi9cbiAgICBhYnN0cmFjdCBnZXQgX2ZyZWV6YWJsZUNvbHVtbnMoKTogUmVhZG9ubHlNYXA8c3RyaW5nLCBudW1iZXI+O1xuXG4gICAgLyoqIFdpZHRoIG9mIHRoZSB0YWJsZSBlbGVtZW50IGluIHB4ICovXG4gICAgYWJzdHJhY3QgZ2V0IF90YWJsZVdpZHRoUHgoKTogbnVtYmVyO1xuXG4gICAgYWJzdHJhY3QgZ2V0IGxvYWRpbmdTdGF0ZSgpOiBib29sZWFuO1xuXG4gICAgYWJzdHJhY3QgaW5pdGlhbFN0YXRlOiBUYWJsZUluaXRpYWxTdGF0ZSB8IG51bGw7XG5cbiAgICAvKiogVGFibGUgY29sdW1ucyBkZWZpbml0aW9uIGxpc3QgKi9cbiAgICBhYnN0cmFjdCByZWFkb25seSB0YWJsZUNvbHVtbnNTdHJlYW06IE9ic2VydmFibGU8VGFibGVDb2x1bW5bXT47XG5cbiAgICBhYnN0cmFjdCByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3I7XG5cbiAgICBhYnN0cmFjdCByZWFkb25seSB0YWJsZUNvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICAgIGFic3RyYWN0IHJlYWRvbmx5IHRhYmxlU2Nyb2xsYWJsZTogVGFibGVTY3JvbGxhYmxlO1xuXG4gICAgYWJzdHJhY3QgX3RhYmxlUm93c1Zpc2libGU6IFRhYmxlUm93PFQ+W107XG5cbiAgICBhYnN0cmFjdCBfdGFibGVSb3dzOiBUYWJsZVJvdzxUPltdO1xuXG4gICAgYWJzdHJhY3QgX3RhYmxlUm93c0luVmlld1BvcnRQbGFjZWhvbGRlcjogbnVtYmVyW107XG5cbiAgICAvKiogR2V0IHRhYmxlIHN0YXRlICovXG4gICAgYWJzdHJhY3QgZ2V0VGFibGVTdGF0ZSgpOiBUYWJsZVN0YXRlO1xuXG4gICAgLyoqIFNldCB0YWJsZSBzdGF0ZSAqL1xuICAgIGFic3RyYWN0IHNldFRhYmxlU3RhdGUodGFibGVTdGF0ZTogVGFibGVTdGF0ZSk6IHZvaWQ7XG5cbiAgICAvKiogR2V0IHRhYmxlIGNvbHVtbnMgZGVmaW5pdGlvbiBsaXN0ICovXG4gICAgYWJzdHJhY3QgZ2V0VGFibGVDb2x1bW5zKCk6IFRhYmxlQ29sdW1uW107XG5cbiAgICAvKiogR2V0IGEgbGlzdCBvZiB2aXNpYmxlIHRhYmxlIGNvbHVtbnMuICovXG4gICAgYWJzdHJhY3QgZ2V0VmlzaWJsZVRhYmxlQ29sdW1ucygpOiBUYWJsZUNvbHVtbltdO1xuXG4gICAgLyoqIFNldCBTb3J0aW5nIHJ1bGVzICovXG4gICAgYWJzdHJhY3Qgc29ydChzb3J0UnVsZXM6IENvbGxlY3Rpb25Tb3J0W10pOiB2b2lkO1xuXG4gICAgLyoqIEFkZCBTb3J0aW5nIHJ1bGVzIHRvIHRoZSBleGlzdGluZyBvbmVzICovXG4gICAgYWJzdHJhY3QgYWRkU29ydChzb3J0UnVsZXM6IENvbGxlY3Rpb25Tb3J0W10pOiB2b2lkO1xuXG4gICAgLyoqIFNldCBGaWx0ZXJpbmcgcnVsZXMgKi9cbiAgICBhYnN0cmFjdCBmaWx0ZXIoZmlsdGVyUnVsZXM6IENvbGxlY3Rpb25GaWx0ZXJbXSk6IHZvaWQ7XG5cbiAgICAvKiogQWRkIEZpbHRlciBydWxlcyB0byB0aGUgZXhpc3Rpbmcgb25lcyAqL1xuICAgIGFic3RyYWN0IGFkZEZpbHRlcihmaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdKTogdm9pZDtcblxuICAgIC8qKiBTZXQgZ3JvdXBpbmcgcnVsZXMgKi9cbiAgICBhYnN0cmFjdCBncm91cChncm91cFJ1bGVzOiBDb2xsZWN0aW9uR3JvdXBbXSk6IHZvaWQ7XG5cbiAgICAvKiogQWRkIEdyb3VwIHJ1bGVzIHRvIHRoZSBleGlzdGluZyBvbmVzICovXG4gICAgYWJzdHJhY3QgYWRkR3JvdXAoZ3JvdXBSdWxlczogQ29sbGVjdGlvbkdyb3VwW10pOiB2b2lkO1xuXG4gICAgLyoqIFNldCB0YWJsZSBjb2x1bW5zICovXG4gICAgYWJzdHJhY3Qgc2V0Q29sdW1ucyhjb2x1bW5zOiBzdHJpbmdbXSk6IHZvaWQ7XG5cbiAgICAvKiogVG9nZ2xlIHJvdyBjaGVja2VkIHN0YXRlLiAqL1xuICAgIGFic3RyYWN0IHRvZ2dsZVNlbGVjdGFibGVSb3cocm93SW5kZXg6IG51bWJlcik6IHZvaWQ7XG5cbiAgICAvKiogRnJlZXplIHRhYmxlIGNvbHVtbnMgdG8gaW5jbHVkaW5nICovXG4gICAgYWJzdHJhY3QgZnJlZXplVG9Db2x1bW4oY29sdW1uS2V5OiBzdHJpbmcsIGVuZD86IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIFVuZnJlZXplIGNvbHVtbiAqL1xuICAgIGFic3RyYWN0IHVuZnJlZXplKGNvbHVtbktleTogc3RyaW5nKTogdm9pZDtcblxuICAgIC8qKiBTZWFyY2ggaW4gYWxsIHRhYmxlIGNvbHVtbnMgKi9cbiAgICBhYnN0cmFjdCBzZWFyY2goc2VhcmNoSW5wdXQ6IFNlYXJjaElucHV0KTogdm9pZDtcblxuICAgIC8qKiBUb29sYmFyIFNvcnQgU2V0dGluZ3MgYnV0dG9uIHZpc2liaWxpdHkgKi9cbiAgICBhYnN0cmFjdCBzaG93U29ydFNldHRpbmdzSW5Ub29sYmFyKHNob3dTb3J0U2V0dGluZ3M6IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIFRvb2xiYXIgRmlsdGVyIFNldHRpbmdzIGJ1dHRvbiB2aXNpYmlsaXR5ICovXG4gICAgYWJzdHJhY3Qgc2hvd0ZpbHRlclNldHRpbmdzSW5Ub29sYmFyKHNob3dGaWx0ZXJTZXR0aW5nczogYm9vbGVhbik6IHZvaWQ7XG5cbiAgICAvKiogVG9vbGJhciBHcm91cCBTZXR0aW5ncyBidXR0b24gdmlzaWJpbGl0eSAqL1xuICAgIGFic3RyYWN0IHNob3dHcm91cFNldHRpbmdzSW5Ub29sYmFyKHNob3dHcm91cFNldHRpbmdzOiBib29sZWFuKTogdm9pZDtcblxuICAgIC8qKiBUb29sYmFyIENvbHVtbnMgU2V0dGluZ3MgYnV0dG9uIHZpc2liaWxpdHkgKi9cbiAgICBhYnN0cmFjdCBzaG93Q29sdW1uU2V0dGluZ3NJblRvb2xiYXIoc2hvd0NvbHVtblNldHRpbmdzOiBib29sZWFuKTogdm9pZDtcblxuICAgIC8qKiBEaXNhYmxlIGZpbHRlcmluZyBieSBoZWFkZXIgY29sdW1uIG1lbnUgKi9cbiAgICBhYnN0cmFjdCBzZXRIZWFkZXJDb2x1bW5GaWx0ZXJpbmdEaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQ7XG5cbiAgICAvKiogU2V0IGN1cnJlbnQgcGFnZSAqL1xuICAgIGFic3RyYWN0IHNldEN1cnJlbnRQYWdlKGN1cnJlbnRQYWdlOiBudW1iZXIpOiB2b2lkO1xuXG4gICAgLyoqIEdldHMgdGhlIG1heCBhbGxvd2VkIHdpZHRoIGZvciBhbGwgZnJlZXphYmxlIGNvbHVtbnMgKi9cbiAgICBhYnN0cmFjdCBnZXRNYXhBbGxvd2VkRnJlZXphYmxlQ29sdW1uc1dpZHRoKCk6IG51bWJlcjtcblxuICAgIC8qKiBHZXQgdGFibGUgZGF0YSBzb3VyY2UgKi9cbiAgICBhYnN0cmFjdCBnZXREYXRhU291cmNlKCk6IFRhYmxlRGF0YVNvdXJjZTxUPjtcblxuICAgIC8qKiBNYW51YWxseSB0cmlnZ2VycyBjb2x1bW5zIHdpZHRoIHJlY2FsY3VsYXRpb24gKi9cbiAgICBhYnN0cmFjdCByZWNhbGN1bGF0ZVRhYmxlQ29sdW1uV2lkdGgoKTogdm9pZDtcblxuICAgIC8qKiBGZXRjaCBkYXRhIHNvdXJjZSBkYXRhLiAqL1xuICAgIGFic3RyYWN0IGZldGNoKCk6IHZvaWQ7XG5cbiAgICAvKiogQWRkcyBlbXB0eSByb3cgZm9yIGVkaXRpbmcgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgcm93cyBhcnJheS4gKi9cbiAgICBhYnN0cmFjdCBhZGRSb3coKTogdm9pZDtcblxuICAgIC8qKiBFbWl0cyBzYXZlIGV2ZW50IGFuZCByZXNldHMgZWRpdGFibGUgcm93cyBhcnJheS4gKi9cbiAgICBhYnN0cmFjdCBzYXZlUm93cygpOiB2b2lkO1xuXG4gICAgLyoqIENhbmNlbHMgZWRpdGluZyBhbmQgZGlzY2FyZHMgbmV3bHkgYWRkZWQgcm93cyAqL1xuICAgIGFic3RyYWN0IGNhbmNlbEVkaXRpbmcoKTogdm9pZDtcblxuICAgIC8qKiBFeHBhbmQgYWxsIHRoZSByb3dzIG9mIHRoZSB0YWJsZSAqL1xuICAgIGFic3RyYWN0IGV4cGFuZEFsbCgpOiB2b2lkO1xuXG4gICAgLyoqIENvbGxhcHNlIGFsbCB0aGUgcm93cyBvZiB0aGUgdGFibGUgKi9cbiAgICBhYnN0cmFjdCBjb2xsYXBzZUFsbCgpOiB2b2lkO1xuXG4gICAgLyoqIFNldHMgc2VsZWN0ZWQgcHJlc2V0LiAqL1xuICAgIGFic3RyYWN0IHNldFByZXNldChkYXRhOiBQbGF0Zm9ybVRhYmxlTWFuYWdlZFByZXNldCk6IHZvaWQ7XG5cbiAgICAvKiogUmV0dXJucyBjdXJyZW50IHByZXNldC4gKi9cbiAgICBhYnN0cmFjdCBnZXRDdXJyZW50UHJlc2V0KCk6IFBsYXRmb3JtVGFibGVNYW5hZ2VkUHJlc2V0O1xuXG4gICAgYWJzdHJhY3QgZ2V0Um93c0luVmlld3BvcnQoKTogbnVtYmVyW107XG5cbiAgICBhYnN0cmFjdCBzZXRSb3dzSW5WaWV3cG9ydChzdGFydEluZGV4OiBudW1iZXIsIGxlbmd0aDogbnVtYmVyKTogdm9pZDtcblxuICAgIGFic3RyYWN0IHRvZ2dsZUV4cGFuZGFibGVUYWJsZVJvdyhyb3c6IFRhYmxlUm93PFQ+LCBmb3JjZUZldGNoPzogYm9vbGVhbik7XG5cbiAgICBhYnN0cmFjdCBvblRhYmxlUm93c0NoYW5nZWQoKTogdm9pZDtcblxuICAgIGFic3RyYWN0IHJlZnJlc2hEbmRMaXN0KCk6IHZvaWQ7XG5cbiAgICAvKiogVG9vbGJhciBTb3J0IFNldHRpbmdzIGJ1dHRvbiBjbGljayBldmVudCAqL1xuICAgIHJlYWRvbmx5IG9wZW5UYWJsZVNvcnRTZXR0aW5nczogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIFRvb2xiYXIgRmlsdGVyIFNldHRpbmdzIGJ1dHRvbiBjbGljayBldmVudCAqL1xuICAgIHJlYWRvbmx5IG9wZW5UYWJsZUZpbHRlclNldHRpbmdzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogVG9vbGJhciBHcm91cCBTZXR0aW5ncyBidXR0b24gY2xpY2sgZXZlbnQgKi9cbiAgICByZWFkb25seSBvcGVuVGFibGVHcm91cFNldHRpbmdzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogVG9vbGJhciBDb2x1bW4gU2V0dGluZ3MgYnV0dG9uIGNsaWNrIGV2ZW50ICovXG4gICAgcmVhZG9ubHkgb3BlblRhYmxlQ29sdW1uU2V0dGluZ3M6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIGVtcHR5IHJvdyBhZGRlZC4gKi9cbiAgICByZWFkb25seSBlbXB0eVJvd0FkZGVkOiBFdmVudEVtaXR0ZXI8dm9pZD47XG5cbiAgICAvKiogRXZlbnQgZmlyZWQgd2hlbiBzYXZlIGJ1dHRvbiBwcmVzc2VkLiAqL1xuICAgIHJlYWRvbmx5IHNhdmU6IEV2ZW50RW1pdHRlcjxTYXZlUm93c0V2ZW50PFQ+PjtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIGNhbmNlbCBidXR0b24gcHJlc3NlZC4gKi9cbiAgICByZWFkb25seSBjYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPjtcbn1cbiJdfQ==
|
|
@@ -114,7 +114,7 @@ export class MoveToComponent {
|
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
116
|
MoveToComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MoveToComponent, deps: [{ token: i1.DialogRef }, { token: i1.DialogService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
117
|
-
MoveToComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: MoveToComponent, selector: "ng-component", ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 class=\"fd-title--bold\" *ngIf=\"!_currentFolder\" fd-title>\n {{ 'platformUploadCollection.moveToTitle' | fdTranslate }}\n </h1>\n <ng-container *ngIf=\"_currentFolder\">\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n (click)=\"_goToParentFolder()\"\n ></button>\n <h1 fd-title>\n <span>{{ 'platformUploadCollection.moveToTitleFolder' | fdTranslate }}</span>\n {{ _currentFolder.name }}\n </h1>\n </ng-container>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'platformUploadCollection.moveToNewFolderBtnLabel' | fdTranslate\"\n (click)=\"_newFolder()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"fd-dialog__body--no-horizontal-padding\">\n <ul fd-list>\n <li *ngIf=\"!_currentFolder\" fd-list-item class=\"fd-list__item--title-background\">\n <span fd-list-title>{{ 'platformUploadCollection.moveToAllFilesSubHeaderLabel' | fdTranslate }}</span>\n </li>\n <li\n fd-list-item\n *ngFor=\"let folder of _foldersList\"\n [selected]=\"selectedFolder?.documentId === folder.documentId\"\n >\n <a fd-list-link (click)=\"_hasFolders(folder.files) ? _openFolder(folder) : _selectFolder(folder)\">\n <fd-icon class=\"fdp-upload-collection__fd-icon\" glyph=\"folder-blank\"></fd-icon>\n <span fd-list-title>{{ folder.name }}</span>\n <i *ngIf=\"_hasFolders(folder.files)\" fd-list-icon glyph=\"slim-arrow-right\"></i>\n </a>\n </li>\n </ul>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n type=\"submit\"\n [disabled]=\"\n !(\n (selectedFolder && originalFolder?.documentId !== selectedFolder.documentId) ||\n (!selectedFolder && originalFolder?.documentId !== _currentFolder?.documentId)\n )\n \"\n (click)=\"_confirm()\"\n >\n {{ 'platformUploadCollection.moveToConfirmBtn' | fdTranslate }}\n </fd-button-bar>\n <fd-button-bar (click)=\"_close()\">\n {{ 'platformUploadCollection.moveToCloseBtn' | fdTranslate }}\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-list__item--title-background{background-color:var(--sapList_HeaderBackground)}.fd-dialog__body--no-horizontal-padding{padding-left:0!important;padding-right:0!important}.fd-title--bold{font-weight:700}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i4.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i4.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth", "isTitle"] }, { kind: "component", type: i4.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "component", type: i5.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i6.TemplateDirective, selector: "[fdkTemplate], [fdTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i8.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator"], outputs: ["focusEscapeList"] }, { kind: "component", type: i8.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i8.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i8.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "directive", type: i8.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "pipe", type: i9.FdTranslatePipe, name: "fdTranslate" }] });
|
|
117
|
+
MoveToComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: MoveToComponent, selector: "ng-component", ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 class=\"fd-title--bold\" *ngIf=\"!_currentFolder\" fd-title>\n {{ 'platformUploadCollection.moveToTitle' | fdTranslate }}\n </h1>\n <ng-container *ngIf=\"_currentFolder\">\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n (click)=\"_goToParentFolder()\"\n ></button>\n <h1 fd-title>\n <span>{{ 'platformUploadCollection.moveToTitleFolder' | fdTranslate }}</span>\n {{ _currentFolder.name }}\n </h1>\n </ng-container>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'platformUploadCollection.moveToNewFolderBtnLabel' | fdTranslate\"\n (click)=\"_newFolder()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"fd-dialog__body--no-horizontal-padding\">\n <ul fd-list>\n <li *ngIf=\"!_currentFolder\" fd-list-item class=\"fd-list__item--title-background\">\n <span fd-list-title>{{ 'platformUploadCollection.moveToAllFilesSubHeaderLabel' | fdTranslate }}</span>\n </li>\n <li\n fd-list-item\n *ngFor=\"let folder of _foldersList\"\n [selected]=\"selectedFolder?.documentId === folder.documentId\"\n >\n <a fd-list-link (click)=\"_hasFolders(folder.files) ? _openFolder(folder) : _selectFolder(folder)\">\n <fd-icon class=\"fdp-upload-collection__fd-icon\" glyph=\"folder-blank\"></fd-icon>\n <span fd-list-title>{{ folder.name }}</span>\n <i *ngIf=\"_hasFolders(folder.files)\" fd-list-icon glyph=\"slim-arrow-right\"></i>\n </a>\n </li>\n </ul>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n type=\"submit\"\n [disabled]=\"\n !(\n (selectedFolder && originalFolder?.documentId !== selectedFolder.documentId) ||\n (!selectedFolder && originalFolder?.documentId !== _currentFolder?.documentId)\n )\n \"\n (click)=\"_confirm()\"\n >\n {{ 'platformUploadCollection.moveToConfirmBtn' | fdTranslate }}\n </fd-button-bar>\n <fd-button-bar (click)=\"_close()\">\n {{ 'platformUploadCollection.moveToCloseBtn' | fdTranslate }}\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-list__item--title-background{background-color:var(--sapList_HeaderBackground)}.fd-dialog__body--no-horizontal-padding{padding-left:0!important;padding-right:0!important}.fd-title--bold{font-weight:700}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i4.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i4.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth", "isTitle"] }, { kind: "component", type: i4.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "component", type: i5.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i6.TemplateDirective, selector: "[fdkTemplate], [fdTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i8.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator", "role"], outputs: ["focusEscapeList"] }, { kind: "component", type: i8.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i8.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i8.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "directive", type: i8.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "pipe", type: i9.FdTranslatePipe, name: "fdTranslate" }] });
|
|
118
118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MoveToComponent, decorators: [{
|
|
119
119
|
type: Component,
|
|
120
120
|
args: [{ template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 class=\"fd-title--bold\" *ngIf=\"!_currentFolder\" fd-title>\n {{ 'platformUploadCollection.moveToTitle' | fdTranslate }}\n </h1>\n <ng-container *ngIf=\"_currentFolder\">\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n (click)=\"_goToParentFolder()\"\n ></button>\n <h1 fd-title>\n <span>{{ 'platformUploadCollection.moveToTitleFolder' | fdTranslate }}</span>\n {{ _currentFolder.name }}\n </h1>\n </ng-container>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'platformUploadCollection.moveToNewFolderBtnLabel' | fdTranslate\"\n (click)=\"_newFolder()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"fd-dialog__body--no-horizontal-padding\">\n <ul fd-list>\n <li *ngIf=\"!_currentFolder\" fd-list-item class=\"fd-list__item--title-background\">\n <span fd-list-title>{{ 'platformUploadCollection.moveToAllFilesSubHeaderLabel' | fdTranslate }}</span>\n </li>\n <li\n fd-list-item\n *ngFor=\"let folder of _foldersList\"\n [selected]=\"selectedFolder?.documentId === folder.documentId\"\n >\n <a fd-list-link (click)=\"_hasFolders(folder.files) ? _openFolder(folder) : _selectFolder(folder)\">\n <fd-icon class=\"fdp-upload-collection__fd-icon\" glyph=\"folder-blank\"></fd-icon>\n <span fd-list-title>{{ folder.name }}</span>\n <i *ngIf=\"_hasFolders(folder.files)\" fd-list-icon glyph=\"slim-arrow-right\"></i>\n </a>\n </li>\n </ul>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n type=\"submit\"\n [disabled]=\"\n !(\n (selectedFolder && originalFolder?.documentId !== selectedFolder.documentId) ||\n (!selectedFolder && originalFolder?.documentId !== _currentFolder?.documentId)\n )\n \"\n (click)=\"_confirm()\"\n >\n {{ 'platformUploadCollection.moveToConfirmBtn' | fdTranslate }}\n </fd-button-bar>\n <fd-button-bar (click)=\"_close()\">\n {{ 'platformUploadCollection.moveToCloseBtn' | fdTranslate }}\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-list__item--title-background{background-color:var(--sapList_HeaderBackground)}.fd-dialog__body--no-horizontal-padding{padding-left:0!important;padding-right:0!important}.fd-title--bold{font-weight:700}\n"] }]
|