@fundamental-ngx/platform 0.49.0-rc.2 → 0.49.0-rc.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/esm2022/dynamic-page/dynamic-page.component.mjs +2 -2
  2. package/esm2022/form/multi-input/base-multi-input.mjs +8 -2
  3. package/esm2022/form/switch/switch/switch.component.mjs +2 -2
  4. package/esm2022/search-field/search-field.component.mjs +25 -86
  5. package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +2 -2
  6. package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +12 -8
  7. package/esm2022/table/components/growing-button/table-growing-button.component.mjs +31 -0
  8. package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +3 -3
  9. package/esm2022/table/components/table-row/table-row.component.mjs +20 -3
  10. package/esm2022/table/index.mjs +2 -1
  11. package/esm2022/table/table.component.mjs +29 -9
  12. package/esm2022/table/table.module.mjs +10 -5
  13. package/esm2022/table-helpers/services/table.service.mjs +25 -2
  14. package/esm2022/table-helpers/table.mjs +1 -1
  15. package/esm2022/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +2 -2
  16. package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +1 -1
  17. package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
  18. package/fesm2022/fundamental-ngx-platform-form.mjs +8 -2
  19. package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
  20. package/fesm2022/fundamental-ngx-platform-search-field.mjs +25 -85
  21. package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
  22. package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +10 -5
  23. package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  24. package/fesm2022/fundamental-ngx-platform-table-helpers.mjs +24 -1
  25. package/fesm2022/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  26. package/fesm2022/fundamental-ngx-platform-table.mjs +81 -16
  27. package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
  28. package/fesm2022/fundamental-ngx-platform-variant-management.mjs +1 -1
  29. package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  30. package/form/multi-input/base-multi-input.d.ts +4 -1
  31. package/fundamental-ngx-platform-v0.49.0-rc.21.tgz +0 -0
  32. package/package.json +4 -4
  33. package/search-field/search-field.component.d.ts +5 -16
  34. package/smart-filter-bar/smart-filter-bar.component.d.ts +6 -3
  35. package/table/components/growing-button/table-growing-button.component.d.ts +16 -0
  36. package/table/components/table-p13-dialog/columns/columns.component.d.ts +1 -1
  37. package/table/components/table-row/table-row.component.d.ts +3 -0
  38. package/table/index.d.ts +1 -0
  39. package/table/table.component.d.ts +12 -2
  40. package/table/table.module.d.ts +3 -2
  41. package/table-helpers/services/table.service.d.ts +3 -1
  42. package/table-helpers/table.d.ts +2 -1
  43. package/fundamental-ngx-platform-v0.49.0-rc.2.tgz +0 -0
@@ -7,6 +7,7 @@ import { NoDataWrapperComponent, PlatformTableColumnResizerComponent } from './c
7
7
  import { TableEditableCellComponent } from './components/table-editable-cell/table-editable-cell.component';
8
8
  import { TableToolbarLeftActionsComponent } from './components/table-toolbar/table-toolbar-left-actions.component';
9
9
  import { TableCellHeaderPopoverComponent, TableHeaderCellContentComponent } from './components';
10
+ import { TableGrowingButtonComponent } from './components/growing-button/table-growing-button.component';
10
11
  import { TableGroupRowComponent } from './components/table-group-row/table-group-row.component';
11
12
  import { IsColumnHasHeaderMenuPipe, TableHeaderRowComponent } from './components/table-header-row/table-header-row.component';
12
13
  import { TablePoppingRowComponent } from './components/table-popping-row/table-popping-row.component';
@@ -49,7 +50,8 @@ const EXPORTABLE_DECLARATIONS = [
49
50
  TableGroupRowComponent,
50
51
  TablePoppingRowComponent,
51
52
  TableHeaderRowComponent,
52
- IsColumnHasHeaderMenuPipe
53
+ IsColumnHasHeaderMenuPipe,
54
+ TableGrowingButtonComponent
53
55
  ];
54
56
  export class PlatformTableModule {
55
57
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PlatformTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -89,7 +91,8 @@ export class PlatformTableModule {
89
91
  TableGroupRowComponent,
90
92
  TablePoppingRowComponent,
91
93
  TableHeaderRowComponent,
92
- IsColumnHasHeaderMenuPipe, TableHelpersModule], exports: [TableComponent,
94
+ IsColumnHasHeaderMenuPipe,
95
+ TableGrowingButtonComponent, TableHelpersModule], exports: [TableComponent,
93
96
  TableColumnComponent,
94
97
  TableToolbarComponent,
95
98
  TableToolbarActionsComponent,
@@ -125,7 +128,8 @@ export class PlatformTableModule {
125
128
  TableGroupRowComponent,
126
129
  TablePoppingRowComponent,
127
130
  TableHeaderRowComponent,
128
- IsColumnHasHeaderMenuPipe, TableHelpersModule] }); }
131
+ IsColumnHasHeaderMenuPipe,
132
+ TableGrowingButtonComponent, TableHelpersModule] }); }
129
133
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PlatformTableModule, imports: [TableComponent,
130
134
  TableToolbarComponent,
131
135
  SortingComponent,
@@ -146,7 +150,8 @@ export class PlatformTableModule {
146
150
  TableCellHeaderPopoverComponent,
147
151
  TableRowComponent,
148
152
  TablePoppingRowComponent,
149
- TableHeaderRowComponent, TableHelpersModule, TableHelpersModule] }); }
153
+ TableHeaderRowComponent,
154
+ TableGrowingButtonComponent, TableHelpersModule, TableHelpersModule] }); }
150
155
  }
151
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PlatformTableModule, decorators: [{
152
157
  type: NgModule,
@@ -155,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
155
160
  exports: [...EXPORTABLE_DECLARATIONS, TableHelpersModule]
156
161
  }]
157
162
  }] });
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90YWJsZS90YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU3RSxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLDBCQUEwQixFQUMxQixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNuQixnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBQ3hCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsMkJBQTJCLEVBQzNCLDBCQUEwQixFQUMxQixvQkFBb0IsRUFDcEIsZ0JBQWdCLEVBQ2hCLG9CQUFvQixFQUNwQix3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLDRCQUE0QixFQUM1QixxQkFBcUIsRUFDckIsZ0NBQWdDLEVBQ2hDLGdDQUFnQyxFQUNuQyxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQ0gsMkJBQTJCLEVBQzNCLHlCQUF5QixFQUM1QixNQUFNLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0YsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7QUFDNUcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFFbkgsT0FBTyxFQUFFLCtCQUErQixFQUFFLCtCQUErQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdEQUF3RCxD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O1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEI7WUFFMUIsb0JBQW9CO1lBTXBCLHlCQUF5QjtZQUN6QiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLG1CQUFtQjtZQUNuQix5QkFBeUI7WUFJekIsMEJBQTBCO1lBRTFCLCtCQUErQjtZQUMvQiwrQkFBK0I7WUFDL0IsaUJBQWlCO1lBRWpCLHdCQUF3QjtZQUN4Qix1QkFBdUIsRUFLZSxrQkFBa0IsRUFDbEIsa0JBQWtCOzsyRkFFL0MsbUJBQW1CO2tCQUovQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsa0JBQWtCLENBQUM7b0JBQ3pELE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsa0JBQWtCLENBQUM7aUJBQzVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVGFibGVIZWxwZXJzTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS90YWJsZS1oZWxwZXJzJztcblxuaW1wb3J0IHtcbiAgICBGaWx0ZXJDdXN0b21Db21wb25lbnQsXG4gICAgRmlsdGVyTXVsdGlTZWxlY3RDb21wb25lbnQsXG4gICAgRmlsdGVyUnVsZUNvbXBvbmVudCxcbiAgICBGaWx0ZXJTaW5nbGVTZWxlY3RDb21wb25lbnQsXG4gICAgRmlsdGVyU3RlcENvbXBvbmVudCxcbiAgICBGaWx0ZXJzQ29tcG9uZW50LFxuICAgIEZpbHRlcnNMaXN0U3RlcENvbXBvbmVudCxcbiAgICBHcm91cGluZ0NvbXBvbmVudCxcbiAgICBQMTNDb2x1bW5zRGlhbG9nQ29tcG9uZW50LFxuICAgIFAxM0ZpbHRlcmluZ0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQMTNHcm91cGluZ0RpYWxvZ0NvbXBvbmVudCxcbiAgICBSZXNldEJ1dHRvbkNvbXBvbmVudCxcbiAgICBTb3J0aW5nQ29tcG9uZW50LFxuICAgIFRhYmxlQ29sdW1uQ29tcG9uZW50LFxuICAgIFRhYmxlUDEzQ29sdW1uc0NvbXBvbmVudCxcbiAgICBUYWJsZVAxM0RpYWxvZ0NvbXBvbmVudCxcbiAgICBUYWJsZVAxM0ZpbHRlckNvbXBvbmVudCxcbiAgICBUYWJsZVAxM0dyb3VwQ29tcG9uZW50LFxuICAgIFRhYmxlUDEzU29ydENvbXBvbmVudCxcbiAgICBUYWJsZVRvb2xiYXJBY3Rpb25zQ29tcG9uZW50LFxuICAgIFRhYmxlVG9vbGJhckNvbXBvbmVudCxcbiAgICBUYWJsZVZpZXdTZXR0aW5nc0RpYWxvZ0NvbXBvbmVudCxcbiAgICBUYWJsZVZpZXdTZXR0aW5nc0ZpbHRlckNvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtcbiAgICBHZXRBdmFpbGFibGVTb3J0Q29sdW1uc1BpcGUsXG4gICAgUDEzU29ydGluZ0RpYWxvZ0NvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtcDEzLWRpYWxvZy9zb3J0aW5nL3NvcnRpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBOb0RhdGFXcmFwcGVyQ29tcG9uZW50LCBQbGF0Zm9ybVRhYmxlQ29sdW1uUmVzaXplckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZUVkaXRhYmxlQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS1lZGl0YWJsZS1jZWxsL3RhYmxlLWVkaXRhYmxlLWNlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlVG9vbGJhckxlZnRBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLXRvb2xiYXIvdGFibGUtdG9vbGJhci1sZWZ0LWFjdGlvbnMuY29tcG9uZW50JztcblxuaW1wb3J0IHsgVGFibGVDZWxsSGVhZGVyUG9wb3ZlckNvbXBvbmVudCwgVGFibGVIZWFkZXJDZWxsQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUYWJsZUdyb3VwUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWdyb3VwLXJvdy90YWJsZS1ncm91cC1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgSXNDb2x1bW5IYXNIZWFkZXJNZW51UGlwZSxcbiAgICBUYWJsZUhlYWRlclJvd0NvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtaGVhZGVyLXJvdy90YWJsZS1oZWFkZXItcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVBvcHBpbmdSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtcG9wcGluZy1yb3cvdGFibGUtcG9wcGluZy1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLXJvdy90YWJsZS1yb3cuY29tcG9uZW50JztcblxuY29uc3QgRVhQT1JUQUJMRV9ERUNMQVJBVElPTlMgPSBbXG4gICAgVGFibGVDb21wb25lbnQsXG4gICAgVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgVGFibGVUb29sYmFyQ29tcG9uZW50LFxuICAgIFRhYmxlVG9vbGJhckFjdGlvbnNDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NGaWx0ZXJDb21wb25lbnQsXG4gICAgU29ydGluZ0NvbXBvbmVudCxcbiAgICBHcm91cGluZ0NvbXBvbmVudCxcbiAgICBGaWx0ZXJzQ29tcG9uZW50LFxuICAgIEZpbHRlcnNMaXN0U3RlcENvbXBvbmVudCxcbiAgICBGaWx0ZXJTdGVwQ29tcG9uZW50LFxuICAgIEZpbHRlclNpbmdsZVNlbGVjdENvbXBvbmVudCxcbiAgICBGaWx0ZXJNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICBGaWx0ZXJDdXN0b21Db21wb25lbnQsXG4gICAgUmVzZXRCdXR0b25Db21wb25lbnQsXG4gICAgVGFibGVQMTNEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVQMTNTb3J0Q29tcG9uZW50LFxuICAgIFRhYmxlUDEzRmlsdGVyQ29tcG9uZW50LFxuICAgIFRhYmxlUDEzR3JvdXBDb21wb25lbnQsXG4gICAgVGFibGVQMTNDb2x1bW5zQ29tcG9uZW50LFxuICAgIFAxM1NvcnRpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzR3JvdXBpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzRmlsdGVyaW5nRGlhbG9nQ29tcG9uZW50LFxuICAgIEZpbHRlclJ1bGVDb21wb25lbnQsXG4gICAgUDEzQ29sdW1uc0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQbGF0Zm9ybVRhYmxlQ29sdW1uUmVzaXplckNvbXBvbmVudCxcbiAgICBOb0RhdGFXcmFwcGVyQ29tcG9uZW50LFxuICAgIEdldEF2YWlsYWJsZVNvcnRDb2x1bW5zUGlwZSxcbiAgICBUYWJsZUVkaXRhYmxlQ2VsbENvbXBvbmVudCxcbiAgICBUYWJsZVRvb2xiYXJMZWZ0QWN0aW9uc0NvbXBvbmVudCxcbiAgICBUYWJsZUhlYWRlckNlbGxDb250ZW50Q29tcG9uZW50LFxuICAgIFRhYmxlQ2VsbEhlYWRlclBvcG92ZXJDb21wb25lbnQsXG4gICAgVGFibGVSb3dDb21wb25lbnQsXG4gICAgVGFibGVHcm91cFJvd0NvbXBvbmVudCxcbiAgICBUYWJsZVBvcHBpbmdSb3dDb21wb25lbnQsXG4gICAgVGFibGVIZWFkZXJSb3dDb21wb25lbnQsXG4gICAgSXNDb2x1bW5IYXNIZWFkZXJNZW51UGlwZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbLi4uRVhQT1JUQUJMRV9ERUNMQVJBVElPTlMsIFRhYmxlSGVscGVyc01vZHVsZV0sXG4gICAgZXhwb3J0czogWy4uLkVYUE9SVEFCTEVfREVDTEFSQVRJT05TLCBUYWJsZUhlbHBlcnNNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFBsYXRmb3JtVGFibGVNb2R1bGUge31cbiJdfQ==
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90YWJsZS90YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU3RSxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLDBCQUEwQixFQUMxQixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNuQixnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBQ3hCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsMkJBQTJCLEVBQzNCLDBCQUEwQixFQUMxQixvQkFBb0IsRUFDcEIsZ0JBQWdCLEVBQ2hCLG9CQUFvQixFQUNwQix3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLDRCQUE0QixFQUM1QixxQkFBcUIsRUFDckIsZ0NBQWdDLEVBQ2hDLGdDQUFnQyxFQUNuQyxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQ0gsMkJBQTJCLEVBQzNCLHlCQUF5QixFQUM1QixNQUFNLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0YsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7QUFDNUcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFFbkgsT0FBTyxFQUFFLCtCQUErQixFQUFFLCtCQUErQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDREQUE0RCxD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NUIsY0FBYztZQUVkLHFCQUFxQjtZQUlyQixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGdCQUFnQjtZQUNoQix3QkFBd0I7WUFDeEIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEI7WUFFMUIsb0JBQW9CO1lBTXBCLHlCQUF5QjtZQUN6QiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLG1CQUFtQjtZQUNuQix5QkFBeUI7WUFJekIsMEJBQTBCO1lBRTFCLCtCQUErQjtZQUMvQiwrQkFBK0I7WUFDL0IsaUJBQWlCO1lBRWpCLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFFdkIsMkJBQTJCLEVBSVcsa0JBQWtCLEVBQ2xCLGtCQUFrQjs7MkZBRS9DLG1CQUFtQjtrQkFKL0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxHQUFHLHVCQUF1QixFQUFFLGtCQUFrQixDQUFDO29CQUN6RCxPQUFPLEVBQUUsQ0FBQyxHQUFHLHVCQUF1QixFQUFFLGtCQUFrQixDQUFDO2lCQUM1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFRhYmxlSGVscGVyc01vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vdGFibGUtaGVscGVycyc7XG5cbmltcG9ydCB7XG4gICAgRmlsdGVyQ3VzdG9tQ29tcG9uZW50LFxuICAgIEZpbHRlck11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgIEZpbHRlclJ1bGVDb21wb25lbnQsXG4gICAgRmlsdGVyU2luZ2xlU2VsZWN0Q29tcG9uZW50LFxuICAgIEZpbHRlclN0ZXBDb21wb25lbnQsXG4gICAgRmlsdGVyc0NvbXBvbmVudCxcbiAgICBGaWx0ZXJzTGlzdFN0ZXBDb21wb25lbnQsXG4gICAgR3JvdXBpbmdDb21wb25lbnQsXG4gICAgUDEzQ29sdW1uc0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQMTNGaWx0ZXJpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzR3JvdXBpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUmVzZXRCdXR0b25Db21wb25lbnQsXG4gICAgU29ydGluZ0NvbXBvbmVudCxcbiAgICBUYWJsZUNvbHVtbkNvbXBvbmVudCxcbiAgICBUYWJsZVAxM0NvbHVtbnNDb21wb25lbnQsXG4gICAgVGFibGVQMTNEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVQMTNGaWx0ZXJDb21wb25lbnQsXG4gICAgVGFibGVQMTNHcm91cENvbXBvbmVudCxcbiAgICBUYWJsZVAxM1NvcnRDb21wb25lbnQsXG4gICAgVGFibGVUb29sYmFyQWN0aW9uc0NvbXBvbmVudCxcbiAgICBUYWJsZVRvb2xiYXJDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NGaWx0ZXJDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7XG4gICAgR2V0QXZhaWxhYmxlU29ydENvbHVtbnNQaXBlLFxuICAgIFAxM1NvcnRpbmdEaWFsb2dDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLXAxMy1kaWFsb2cvc29ydGluZy9zb3J0aW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vdGFibGUuY29tcG9uZW50JztcblxuaW1wb3J0IHsgTm9EYXRhV3JhcHBlckNvbXBvbmVudCwgUGxhdGZvcm1UYWJsZUNvbHVtblJlc2l6ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVFZGl0YWJsZUNlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtZWRpdGFibGUtY2VsbC90YWJsZS1lZGl0YWJsZS1jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVRvb2xiYXJMZWZ0QWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS10b29sYmFyL3RhYmxlLXRvb2xiYXItbGVmdC1hY3Rpb25zLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFRhYmxlQ2VsbEhlYWRlclBvcG92ZXJDb21wb25lbnQsIFRhYmxlSGVhZGVyQ2VsbENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVGFibGVHcm93aW5nQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2dyb3dpbmctYnV0dG9uL3RhYmxlLWdyb3dpbmctYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUdyb3VwUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWdyb3VwLXJvdy90YWJsZS1ncm91cC1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgSXNDb2x1bW5IYXNIZWFkZXJNZW51UGlwZSxcbiAgICBUYWJsZUhlYWRlclJvd0NvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtaGVhZGVyLXJvdy90YWJsZS1oZWFkZXItcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVBvcHBpbmdSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUtcG9wcGluZy1yb3cvdGFibGUtcG9wcGluZy1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLXJvdy90YWJsZS1yb3cuY29tcG9uZW50JztcblxuY29uc3QgRVhQT1JUQUJMRV9ERUNMQVJBVElPTlMgPSBbXG4gICAgVGFibGVDb21wb25lbnQsXG4gICAgVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgVGFibGVUb29sYmFyQ29tcG9uZW50LFxuICAgIFRhYmxlVG9vbGJhckFjdGlvbnNDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVWaWV3U2V0dGluZ3NGaWx0ZXJDb21wb25lbnQsXG4gICAgU29ydGluZ0NvbXBvbmVudCxcbiAgICBHcm91cGluZ0NvbXBvbmVudCxcbiAgICBGaWx0ZXJzQ29tcG9uZW50LFxuICAgIEZpbHRlcnNMaXN0U3RlcENvbXBvbmVudCxcbiAgICBGaWx0ZXJTdGVwQ29tcG9uZW50LFxuICAgIEZpbHRlclNpbmdsZVNlbGVjdENvbXBvbmVudCxcbiAgICBGaWx0ZXJNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICBGaWx0ZXJDdXN0b21Db21wb25lbnQsXG4gICAgUmVzZXRCdXR0b25Db21wb25lbnQsXG4gICAgVGFibGVQMTNEaWFsb2dDb21wb25lbnQsXG4gICAgVGFibGVQMTNTb3J0Q29tcG9uZW50LFxuICAgIFRhYmxlUDEzRmlsdGVyQ29tcG9uZW50LFxuICAgIFRhYmxlUDEzR3JvdXBDb21wb25lbnQsXG4gICAgVGFibGVQMTNDb2x1bW5zQ29tcG9uZW50LFxuICAgIFAxM1NvcnRpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzR3JvdXBpbmdEaWFsb2dDb21wb25lbnQsXG4gICAgUDEzRmlsdGVyaW5nRGlhbG9nQ29tcG9uZW50LFxuICAgIEZpbHRlclJ1bGVDb21wb25lbnQsXG4gICAgUDEzQ29sdW1uc0RpYWxvZ0NvbXBvbmVudCxcbiAgICBQbGF0Zm9ybVRhYmxlQ29sdW1uUmVzaXplckNvbXBvbmVudCxcbiAgICBOb0RhdGFXcmFwcGVyQ29tcG9uZW50LFxuICAgIEdldEF2YWlsYWJsZVNvcnRDb2x1bW5zUGlwZSxcbiAgICBUYWJsZUVkaXRhYmxlQ2VsbENvbXBvbmVudCxcbiAgICBUYWJsZVRvb2xiYXJMZWZ0QWN0aW9uc0NvbXBvbmVudCxcbiAgICBUYWJsZUhlYWRlckNlbGxDb250ZW50Q29tcG9uZW50LFxuICAgIFRhYmxlQ2VsbEhlYWRlclBvcG92ZXJDb21wb25lbnQsXG4gICAgVGFibGVSb3dDb21wb25lbnQsXG4gICAgVGFibGVHcm91cFJvd0NvbXBvbmVudCxcbiAgICBUYWJsZVBvcHBpbmdSb3dDb21wb25lbnQsXG4gICAgVGFibGVIZWFkZXJSb3dDb21wb25lbnQsXG4gICAgSXNDb2x1bW5IYXNIZWFkZXJNZW51UGlwZSxcbiAgICBUYWJsZUdyb3dpbmdCdXR0b25Db21wb25lbnRcbl07XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogWy4uLkVYUE9SVEFCTEVfREVDTEFSQVRJT05TLCBUYWJsZUhlbHBlcnNNb2R1bGVdLFxuICAgIGV4cG9ydHM6IFsuLi5FWFBPUlRBQkxFX0RFQ0xBUkFUSU9OUywgVGFibGVIZWxwZXJzTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBQbGF0Zm9ybVRhYmxlTW9kdWxlIHt9XG4iXX0=
@@ -238,7 +238,7 @@ export class TableService {
238
238
  this.columnsChange$.next(evt);
239
239
  }
240
240
  }
241
- /** Set page */
241
+ /** Set page. */
242
242
  setCurrentPage(currentPage) {
243
243
  const prevState = this.getTableState();
244
244
  const prevPageState = prevState.page;
@@ -252,6 +252,23 @@ export class TableService {
252
252
  this.stateChange$.next({ type: 'page', state: evt });
253
253
  this.pageChange$.next(evt);
254
254
  }
255
+ /** Set items per page. */
256
+ setItemsPerPage(itemsPerPage, resetPageNumber = true) {
257
+ const prevState = this.getTableState();
258
+ const prevPageState = prevState.page;
259
+ if (prevPageState.pageSize === itemsPerPage) {
260
+ return;
261
+ }
262
+ let state = setPageSizeToState(prevState, itemsPerPage);
263
+ if (resetPageNumber) {
264
+ state = setCurrentPageToState(state, 1);
265
+ }
266
+ this.setTableState(state);
267
+ const evt = { current: state.page, previous: prevPageState };
268
+ this.needFetch$.next();
269
+ this.stateChange$.next({ type: 'page', state: evt });
270
+ this.pageChange$.next(evt);
271
+ }
255
272
  /** Returns default table state. */
256
273
  getDefaultState() {
257
274
  const tableState = this.getTableState();
@@ -332,8 +349,14 @@ export class TableService {
332
349
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TableService, decorators: [{
333
350
  type: Injectable
334
351
  }] });
352
+ /** @hidden */
335
353
  function setCurrentPageToState(state, currentPage) {
336
354
  const newPageState = { ...state.page, currentPage };
337
355
  return { ...state, page: newPageState };
338
356
  }
339
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGFibGUtaGVscGVycy9zZXJ2aWNlcy90YWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEtBQUssTUFBTSxpQkFBaUIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUErQnRELE1BQU0sT0FBTyxZQUFZO0lBRHpCO1FBRUksMEJBQTBCO1FBQ2pCLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNoRSxjQUFjO1FBQ0wsMkJBQXNCLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLGNBQWM7UUFDTCxvQ0FBK0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsY0FBYztRQUNMLDhCQUF5QixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxjQUFjO1FBQ0wsc0NBQWlDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELDhCQUE4QjtRQUNyQixvQkFBZSxHQUFHLE1BQU0sQ0FBZ0IsRUFBRSxDQUFDLENBQUM7UUFDckQsOEJBQThCO1FBQzlCLHlCQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckUsOEJB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SSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsRUFBRSxJQUFJLEdBQUcsRUFBOEIsQ0FBQyxDQUM1QyxDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0gsc0JBQXNCO1FBQ2xCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7OEdBbFlRLFlBQVk7a0hBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFEeEIsVUFBVTs7QUFzWVgsU0FBUyxxQkFBcUIsQ0FBQyxLQUFpQixFQUFFLFdBQW1CO0lBQ2pFLE1BQU0sWUFBWSxHQUFtQixFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNwRSxPQUFPLEVBQUUsR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQzVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWFyY2hJbnB1dCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2VhcmNoLWZpZWxkJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgREVGQVVMVF9UQUJMRV9TVEFURSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkZpbHRlciwgQ29sbGVjdGlvbkdyb3VwLCBDb2xsZWN0aW9uUGFnZSwgQ29sbGVjdGlvblNvcnQsIFRhYmxlU3RhdGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgQ29sdW1uc0NoYW5nZSxcbiAgICBGaWx0ZXJDaGFuZ2UsXG4gICAgRnJlZXplQ2hhbmdlLFxuICAgIEdyb3VwQ2hhbmdlLFxuICAgIFBhZ2VDaGFuZ2UsXG4gICAgU2VhcmNoQ2hhbmdlLFxuICAgIFNvcnRDaGFuZ2Vcbn0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vdGFibGUtY29sdW1uJztcblxuZXhwb3J0IHR5cGUgVGFibGVTdGF0ZUNoYW5nZSA9XG4gICAgfCBUYWJsZVN0YXRlUHJvcGVydHk8J3NvcnQnLCBTb3J0Q2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdwYWdlJywgUGFnZUNoYW5nZT5cbiAgICB8IFRhYmxlU3RhdGVQcm9wZXJ0eTwnZmlsdGVyJywgRmlsdGVyQ2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdncm91cCcsIEdyb3VwQ2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdmcmVlemUnLCBGcmVlemVDaGFuZ2U+XG4gICAgfCBUYWJsZVN0YXRlUHJvcGVydHk8J2NvbHVtbnMnLCBDb2x1bW5zQ2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdzZWFyY2gnLCBTZWFyY2hDaGFuZ2U+O1xuXG5leHBvcnQgdHlwZSBUYWJsZVN0YXRlUHJvcGVydHk8XG4gICAgVCA9ICdzb3J0JyB8ICdwYWdlJyB8ICdmaWx0ZXInIHwgJ2dyb3VwJyB8ICdmcmVlemUnIHwgJ2NvbHVtbnMnIHwgJ3NlYXJjaCcsXG4gICAgUCA9IFNvcnRDaGFuZ2UgfCBQYWdlQ2hhbmdlIHwgRmlsdGVyQ2hhbmdlIHwgR3JvdXBDaGFuZ2UgfCBGcmVlemVDaGFuZ2UgfCBDb2x1bW5zQ2hhbmdlXG4+ID0ge1xuICAgIHR5cGU6IFQ7XG4gICAgc3RhdGU6IFA7XG59O1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFibGVTZXJ2aWNlIHtcbiAgICAvKiogVGFibGUgc3RhdGUgc3RyZWFtLiAqL1xuICAgIHJlYWRvbmx5IHRhYmxlU3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdChERUZBVUxUX1RBQkxFX1NUQVRFKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZW1hbnRpY0hpZ2hsaWdodGluZyQgPSBzaWduYWwoJycpO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX2lzRmlsdGVyaW5nRnJvbUhlYWRlckRpc2FibGVkJCA9IHNpZ25hbChmYWxzZSk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfaXNTaG93bk5hdmlnYXRpb25Db2x1bW4kID0gc2lnbmFsKGZhbHNlKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZW1hbnRpY0hpZ2hsaWdodGluZ0NvbHVtbldpZHRoJCA9IHNpZ25hbCgwKTtcbiAgICAvKiogVmlzaWJsZSBjb2x1bW5zIHN0cmVhbS4gKi9cbiAgICByZWFkb25seSB2aXNpYmxlQ29sdW1ucyQgPSBzaWduYWw8VGFibGVDb2x1bW5bXT4oW10pO1xuICAgIC8qKiBWaXNpYmxlIGNvbHVtbnMgbGVuZ3RoLiAqL1xuICAgIHZpc2libGVDb2x1bW5zTGVuZ3RoID0gY29tcHV0ZWQoKCkgPT4gdGhpcy52aXNpYmxlQ29sdW1ucyQoKS5sZW5ndGgpO1xuICAgIC8qKiBQb3BwaW5nIGNvbHVtbnMgc3RyZWFtLiAqL1xuICAgIHJlYWRvbmx5IHBvcHBpbmdDb2x1bW5zJCA9IHNpZ25hbDxUYWJsZUNvbHVtbltdPihbXSk7XG4gICAgLyoqIFBvcHBpbmcgY29sdW1ucyBsZW5ndGguICovXG4gICAgX3BvcHBpbmdDb2x1bW5zTGVuZ3RoID0gMDtcbiAgICAvKiogVGFibGUgY29sdW1ucyBzdHJlYW0uICovXG4gICAgcmVhZG9ubHkgdGFibGVDb2x1bW5zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGFibGVDb2x1bW5bXT4oW10pO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgdGFibGVTdGF0ZUNoYW5nZXMkID0gdGhpcy50YWJsZVN0YXRlJC5waXBlKHNraXAoMSkpO1xuICAgIC8qKiBTdHJlYW0gdGhhdCBlbWl0cyB3aGVuIHNlYXJjaCBzdGF0ZSBjaGFuZ2VzLiAqL1xuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSQgPSBuZXcgU3ViamVjdDxTZWFyY2hDaGFuZ2U+KCk7XG4gICAgLyoqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gc29ydCBzdGF0ZSBjaGFuZ2VzLiAqL1xuICAgIHJlYWRvbmx5IHNvcnRDaGFuZ2UkID0gbmV3IFN1YmplY3Q8U29ydENoYW5nZT4oKTtcbiAgICAvKiogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBmaWx0ZXIgc3RhdGUgY2hhbmdlcy4gKi9cbiAgICByZWFkb25seSBmaWx0ZXJDaGFuZ2UkID0gbmV3IFN1YmplY3Q8RmlsdGVyQ2hhbmdlPigpO1xuICAgIC8qKiBTdHJlYW0gdGhhdCBlbWl0cyB3aGVuIGdyb3VwIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgZ3JvdXBDaGFuZ2UkID0gbmV3IFN1YmplY3Q8R3JvdXBDaGFuZ2U+KCk7XG4gICAgLyoqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gZnJlZXplIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgZnJlZXplQ2hhbmdlJCA9IG5ldyBTdWJqZWN0PEZyZWV6ZUNoYW5nZT4oKTtcbiAgICAvKiogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBjb2x1bW5zIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgY29sdW1uc0NoYW5nZSQgPSBuZXcgU3ViamVjdDxDb2x1bW5zQ2hhbmdlPigpO1xuICAgIC8qKiBTdHJlYW0gdGhhdCBlbWl0cyB3aGVuIHBhZ2Ugc3RhdGUgY2hhbmdlcy4gKi9cbiAgICByZWFkb25seSBwYWdlQ2hhbmdlJCA9IG5ldyBTdWJqZWN0PFBhZ2VDaGFuZ2U+KCk7XG4gICAgLyoqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gbmV3IGZldGNoIG9mIGRhdGEgaXMgbmVlZGVkLiAqL1xuICAgIHJlYWRvbmx5IG5lZWRGZXRjaCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgc3RhdGVDaGFuZ2UkID0gbmV3IFN1YmplY3Q8VGFibGVTdGF0ZUNoYW5nZT4oKTtcbiAgICAvKiogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBsb2FkaW5nIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgdGFibGVMb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICAgIC8qKiBMaXN0ZW4gZm9yIHNvZnQgY2hhbmdlcyBpbiB0YWJsZSBzdWJjb21wb25lbnRzIChtb3N0bHkgdGFibGUgY29sdW1uKSAqL1xuICAgIHJlYWRvbmx5IG1hcmtGb3JDaGVjayQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIC8qKiBMaXN0ZW4gZm9yIGltbWVkaWF0ZSBjaGFuZ2VzIGluIHRhYmxlIHN1YmNvbXBvbmVudHMgKG1vc3RseSB0YWJsZSBjb2x1bW4pICovXG4gICAgcmVhZG9ubHkgZGV0ZWN0Q2hhbmdlcyQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIC8qKiBTb3J0IHJ1bGVzIHN0cmVhbS4gKi9cbiAgICByZWFkb25seSBzb3J0UnVsZXMkID0gc2lnbmFsPE1hcDxzdHJpbmcsIENvbGxlY3Rpb25Tb3J0Pj4obmV3IE1hcCgpKTtcbiAgICAvKipcbiAgICAgKiBGaWx0ZXIgUnVsZXMgTWFwIHN0cmVhbS4gV2hlcmUga2V5IGlzIGNvbHVtbiBrZXksIGFuZCB2YWx1ZSBpcyB0aGUgYXNzb2NpYXRlZCBmaWx0ZXIgcnVsZXMuXG4gICAgICogTWFueSBmaWx0ZXJzIGNhbiBiZSBhcHBsaWVkIHRvIG9uZSBjb2x1bW4uXG4gICAgICovXG4gICAgcmVhZG9ubHkgZmlsdGVyUnVsZXMkID0gc2lnbmFsPE1hcDxzdHJpbmcsIENvbGxlY3Rpb25GaWx0ZXJbXT4+KG5ldyBNYXAoKSk7XG5cbiAgICAvKipcbiAgICAgKiBHcm91cCBSdWxlcyBNYXAgc3RyZWFtLiBXaGVyZSBrZXkgaXMgY29sdW1uIGtleSBhbmQgdmFsdWUgaXMgYXNzb2NpYXRlZCBncm91cCBydWxlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZ3JvdXBSdWxlc1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hcDxzdHJpbmcsIENvbGxlY3Rpb25Hcm91cD4+KG5ldyBNYXAoKSk7XG5cbiAgICAvKiogR3JvdXAgUnVsZXMgTWFwIHNpZ25hbC4gKi9cbiAgICByZWFkb25seSBncm91cFJ1bGVzJCA9IHRvU2lnbmFsKHRoaXMuZ3JvdXBSdWxlc1N1YmplY3QpO1xuXG4gICAgLyoqIEdldCBjdXJyZW50IHN0YXRlL3NldHRpbmdzIG9mIHRoZSBUYWJsZS4gKi9cbiAgICBnZXRUYWJsZVN0YXRlKCk6IFRhYmxlU3RhdGUge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZVN0YXRlJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKiBTZXQgY3VycmVudCBzdGF0ZS9zZXR0aW5ncyBvZiB0aGUgVGFibGUuICovXG4gICAgc2V0VGFibGVTdGF0ZShzdGF0ZTogVGFibGVTdGF0ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYmxlU3RhdGUkLm5leHQoc3RhdGUpO1xuICAgIH1cblxuICAgIC8qKiBTZXQgY3VycmVudCBsb2FkaW5nIHN0YXRlIG9mIHRoZSBUYWJsZS4gKi9cbiAgICBzZXRUYWJsZUxvYWRpbmcoaXNMb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFibGVMb2FkaW5nJC5uZXh0KGlzTG9hZGluZyk7XG4gICAgfVxuXG4gICAgLyoqIE5vdGlmeSBhYm91dCBjaGFuZ2VzIGluIHRhYmxlIHN1YmNvbXBvbmVudHMgKG1vc3RseSB0YWJsZSBjb2x1bW4pIGFuZCBkZXRlY3QgdGhlbSBvbiBuZXh0IGRldGVjdG9yIGNoZWNrLiAqL1xuICAgIG1hcmtGb3JDaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tYXJrRm9yQ2hlY2skLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogTm90aWZ5IGFib3V0IGNoYW5nZXMgaW4gdGFibGUgc3ViY29tcG9uZW50cyAobW9zdGx5IHRhYmxlIGNvbHVtbikgYW5kIGRldGVjdCB0aGVtIGltbWVkaWF0ZWx5LiAqL1xuICAgIGRldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcyQubmV4dCgpO1xuICAgIH1cblxuICAgIC8qKiBTZWFyY2ggKi9cbiAgICBzZWFyY2goc2VhcmNoSW5wdXQ6IFNlYXJjaElucHV0KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIHNlYXJjaElucHV0IH07XG5cbiAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHNldEN1cnJlbnRQYWdlVG9TdGF0ZShzdGF0ZSwgMSkpO1xuXG4gICAgICAgIGNvbnN0IGV2dCA9IHsgY3VycmVudDogc2VhcmNoSW5wdXQsIHByZXZpb3VzOiBwcmV2U3RhdGUuc2VhcmNoSW5wdXQgfTtcblxuICAgICAgICB0aGlzLm5lZWRGZXRjaCQubmV4dCgpO1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ3NlYXJjaCcsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgIHRoaXMuc2VhcmNoQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgfVxuXG4gICAgLyoqIFNldCBuZXcgc29ydCBydWxlcyAqL1xuICAgIHNldFNvcnQoc29ydFJ1bGVzOiBDb2xsZWN0aW9uU29ydFtdIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2U29ydFJ1bGVzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuc29ydEJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdTb3J0UnVsZXM6IENvbGxlY3Rpb25Tb3J0W10gPSBzb3J0UnVsZXMgPyBbLi4uc29ydFJ1bGVzXSA6IFtdO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIHNvcnRCeTogbmV3U29ydFJ1bGVzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2U29ydFJ1bGVzLCBzdGF0ZS5zb3J0QnkpKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRhYmxlU3RhdGUoc2V0Q3VycmVudFBhZ2VUb1N0YXRlKHN0YXRlLCAxKSk7XG4gICAgICAgICAgICB0aGlzLmJ1aWxkU29ydFJ1bGVzTWFwKCk7XG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLnNvcnRCeSwgcHJldmlvdXM6IHByZXZTb3J0UnVsZXMgfTtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRTb3J0UnVsZXNNYXAoKTtcblxuICAgICAgICAgICAgdGhpcy5uZWVkRmV0Y2gkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAnc29ydCcsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBBZGQgc29ydCBydWxlcyB0byB0aGUgZXhpc3Rpbmcgb25lcyAqL1xuICAgIGFkZFNvcnQoc29ydFJ1bGVzOiBDb2xsZWN0aW9uU29ydFtdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2U29ydFJ1bGVzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuc29ydEJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdTb3J0UnVsZXM6IENvbGxlY3Rpb25Tb3J0W10gPSBbXG4gICAgICAgICAgICAuLi5wcmV2U29ydFJ1bGVzLmZpbHRlcigoZXhpc3RpbmcpID0+ICFzb3J0UnVsZXMuZmluZCgoeyBmaWVsZCB9KSA9PiBmaWVsZCA9PT0gZXhpc3RpbmcuZmllbGQpKSxcbiAgICAgICAgICAgIC4uLnNvcnRSdWxlc1xuICAgICAgICBdO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIHNvcnRCeTogbmV3U29ydFJ1bGVzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2U29ydFJ1bGVzLCBzdGF0ZS5zb3J0QnkpKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRhYmxlU3RhdGUoc2V0Q3VycmVudFBhZ2VUb1N0YXRlKHN0YXRlLCAxKSk7XG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLnNvcnRCeSwgcHJldmlvdXM6IHByZXZTb3J0UnVsZXMgfTtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRTb3J0UnVsZXNNYXAoKTtcblxuICAgICAgICAgICAgdGhpcy5uZWVkRmV0Y2gkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAnc29ydCcsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBTZXQgbmV3IHNvcnQgcnVsZXMgKi9cbiAgICBzZXRGaWx0ZXJzKGZpbHRlclJ1bGVzOiBDb2xsZWN0aW9uRmlsdGVyW10gfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5nZXRUYWJsZVN0YXRlKCk7XG4gICAgICAgIGNvbnN0IHByZXZGaWx0ZXJSdWxlcyA9IChwcmV2U3RhdGUgJiYgcHJldlN0YXRlLmZpbHRlckJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdGaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdID0gZmlsdGVyUnVsZXMgPyBbLi4uZmlsdGVyUnVsZXNdIDogW107XG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGZpbHRlckJ5OiBuZXdGaWx0ZXJSdWxlcyB9O1xuXG4gICAgICAgIGlmICghZXF1YWwocHJldkZpbHRlclJ1bGVzLCBzdGF0ZS5maWx0ZXJCeSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzZXRDdXJyZW50UGFnZVRvU3RhdGUoc3RhdGUsIDEpKTtcbiAgICAgICAgICAgIGNvbnN0IGV2dCA9IHsgY3VycmVudDogc3RhdGUuZmlsdGVyQnksIHByZXZpb3VzOiBwcmV2RmlsdGVyUnVsZXMgfTtcblxuICAgICAgICAgICAgdGhpcy5idWlsZEZpbHRlclJ1bGVzTWFwKCk7XG4gICAgICAgICAgICB0aGlzLm5lZWRGZXRjaCQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZSQubmV4dCh7IHR5cGU6ICdmaWx0ZXInLCBzdGF0ZTogZXZ0IH0pO1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBBZGQgZmlsdGVyIHJ1bGVzIHRvIHRoZSBleGlzdGluZyBvbmVzICovXG4gICAgYWRkRmlsdGVycyhydWxlc1RvQWRkOiBDb2xsZWN0aW9uRmlsdGVyW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5nZXRUYWJsZVN0YXRlKCk7XG4gICAgICAgIGNvbnN0IHByZXZGaWx0ZXJSdWxlcyA9IChwcmV2U3RhdGUgJiYgcHJldlN0YXRlLmZpbHRlckJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdGaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdID0gW1xuICAgICAgICAgICAgLi4ucHJldkZpbHRlclJ1bGVzLmZpbHRlcigoZXhpc3RpbmcpID0+ICFydWxlc1RvQWRkLmZpbmQoKHsgZmllbGQgfSkgPT4gZmllbGQgPT09IGV4aXN0aW5nLmZpZWxkKSksXG4gICAgICAgICAgICAuLi5ydWxlc1RvQWRkXG4gICAgICAgIF07XG5cbiAgICAgICAgY29uc3Qgc3RhdGU6IFRhYmxlU3RhdGUgPSB7IC4uLnByZXZTdGF0ZSwgZmlsdGVyQnk6IG5ld0ZpbHRlclJ1bGVzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2RmlsdGVyUnVsZXMsIHN0YXRlLmZpbHRlckJ5KSkge1xuICAgICAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHNldEN1cnJlbnRQYWdlVG9TdGF0ZShzdGF0ZSwgMSkpO1xuICAgICAgICAgICAgY29uc3QgZXZ0ID0geyBjdXJyZW50OiBzdGF0ZS5maWx0ZXJCeSwgcHJldmlvdXM6IHByZXZGaWx0ZXJSdWxlcyB9O1xuICAgICAgICAgICAgdGhpcy5idWlsZEZpbHRlclJ1bGVzTWFwKCk7XG5cbiAgICAgICAgICAgIHRoaXMubmVlZEZldGNoJC5uZXh0KCk7XG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2ZpbHRlcicsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckNoYW5nZSQubmV4dChldnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJlbW92ZXMgZmlsdGVycyBmb3IgdGhlIHByb3ZpZGVkIGZpZWxkcyAqL1xuICAgIHJlbW92ZUZpbHRlcnMoZmllbGRzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgY29uc3QgcHJldkZpbHRlclJ1bGVzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuZmlsdGVyQnkpIHx8IFtdO1xuXG4gICAgICAgIGNvbnN0IG5ld0ZpbHRlclJ1bGVzOiBDb2xsZWN0aW9uRmlsdGVyW10gPSBwcmV2RmlsdGVyUnVsZXMuZmlsdGVyKFxuICAgICAgICAgICAgKGV4aXN0aW5nKSA9PiAhZmllbGRzLmluY2x1ZGVzKGV4aXN0aW5nLmZpZWxkKVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGZpbHRlckJ5OiBuZXdGaWx0ZXJSdWxlcyB9O1xuXG4gICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzZXRDdXJyZW50UGFnZVRvU3RhdGUoc3RhdGUsIDEpKTtcbiAgICAgICAgY29uc3QgZXZ0ID0geyBjdXJyZW50OiBzdGF0ZS5maWx0ZXJCeSwgcHJldmlvdXM6IHByZXZGaWx0ZXJSdWxlcyB9O1xuICAgICAgICB0aGlzLmJ1aWxkRmlsdGVyUnVsZXNNYXAoKTtcblxuICAgICAgICB0aGlzLm5lZWRGZXRjaCQubmV4dCgpO1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2ZpbHRlcicsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgIHRoaXMuZmlsdGVyQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgfVxuXG4gICAgLyoqIFNldCBncm91cCBydWxlcyAqL1xuICAgIHNldEdyb3Vwcyhncm91cHM6IENvbGxlY3Rpb25Hcm91cFtdIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2R3JvdXBzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuZ3JvdXBCeSkgfHwgW107XG5cbiAgICAgICAgY29uc3QgbmV3R3JvdXBzOiBDb2xsZWN0aW9uR3JvdXBbXSA9IGdyb3VwcyA/IFsuLi5ncm91cHNdIDogW107XG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGdyb3VwQnk6IG5ld0dyb3VwcyB9O1xuXG4gICAgICAgIGlmICghZXF1YWwocHJldkdyb3Vwcywgc3RhdGUuZ3JvdXBCeSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzdGF0ZSk7XG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLmdyb3VwQnksIHByZXZpb3VzOiBwcmV2R3JvdXBzIH07XG4gICAgICAgICAgICB0aGlzLmJ1aWxkR3JvdXBSdWxlc01hcCgpO1xuXG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2dyb3VwJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBBZGQgZ3JvdXAgcnVsZXMgdG8gdGhlIGV4aXN0aW5nIG9uZXMgKi9cbiAgICBhZGRHcm91cHMoZ3JvdXBzVG9BZGQ6IENvbGxlY3Rpb25Hcm91cFtdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2R3JvdXBzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuZ3JvdXBCeSkgfHwgW107XG5cbiAgICAgICAgY29uc3QgbmV3R3JvdXBzOiBDb2xsZWN0aW9uR3JvdXBbXSA9IFtcbiAgICAgICAgICAgIC4uLnByZXZHcm91cHMuZmlsdGVyKChleGlzdGluZykgPT4gIWdyb3Vwc1RvQWRkLmZpbmQoKHsgZmllbGQgfSkgPT4gZmllbGQgPT09IGV4aXN0aW5nLmZpZWxkKSksXG4gICAgICAgICAgICAuLi5ncm91cHNUb0FkZFxuICAgICAgICBdO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGdyb3VwQnk6IG5ld0dyb3VwcyB9O1xuXG4gICAgICAgIGlmICghZXF1YWwocHJldkdyb3Vwcywgc3RhdGUuZ3JvdXBCeSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzdGF0ZSk7XG4gICAgICAgICAgICB0aGlzLmJ1aWxkR3JvdXBSdWxlc01hcCgpO1xuXG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLmdyb3VwQnksIHByZXZpb3VzOiBwcmV2R3JvdXBzIH07XG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2dyb3VwJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBGcmVlemUgdGFibGUgdG8gY29sdW1uICovXG4gICAgZnJlZXplVG8oY29sdW1uTmFtZTogc3RyaW5nIHwgbnVsbCwgZW5kPzogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcblxuICAgICAgICBpZiAoIWVuZCkge1xuICAgICAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHsgLi4ucHJldlN0YXRlLCBmcmVlemVUb0NvbHVtbjogY29sdW1uTmFtZSB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZSh7IC4uLnByZXZTdGF0ZSwgZnJlZXplVG9FbmRDb2x1bW46IGNvbHVtbk5hbWUgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBldnQgPSB7XG4gICAgICAgICAgICBjdXJyZW50OiBjb2x1bW5OYW1lLFxuICAgICAgICAgICAgcHJldmlvdXM6IGVuZCA/IHByZXZTdGF0ZS5mcmVlemVUb0VuZENvbHVtbiA6IHByZXZTdGF0ZS5mcmVlemVUb0NvbHVtblxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAnZnJlZXplJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgdGhpcy5mcmVlemVDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICB9XG5cbiAgICAvKiogU2V0IHRhYmxlIGNvbHVtbnMgKi9cbiAgICBzZXRDb2x1bW5zKGNvbHVtbnM6IHN0cmluZ1tdLCBrZXlzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgY29uc3QgcHJldkNvbHVtbnMgPSAocHJldlN0YXRlICYmIHByZXZTdGF0ZS5jb2x1bW5zKSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdDb2x1bW5zID0gWy4uLmNvbHVtbnNdO1xuICAgICAgICBjb25zdCBuZXdDb2x1bW5LZXlzID0gWy4uLmtleXNdO1xuICAgICAgICBjb25zdCBzdGF0ZTogVGFibGVTdGF0ZSA9IHsgLi4ucHJldlN0YXRlLCBjb2x1bW5zOiBuZXdDb2x1bW5zLCBjb2x1bW5LZXlzOiBuZXdDb2x1bW5LZXlzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2Q29sdW1ucywgc3RhdGUuY29sdW1ucykpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzdGF0ZSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGV2dCA9IHsgY3VycmVudDogc3RhdGUuY29sdW1ucywgcHJldmlvdXM6IHByZXZDb2x1bW5zIH07XG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2NvbHVtbnMnLCBzdGF0ZTogZXZ0IH0pO1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5zQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogU2V0IHBhZ2UgKi9cbiAgICBzZXRDdXJyZW50UGFnZShjdXJyZW50UGFnZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2UGFnZVN0YXRlID0gcHJldlN0YXRlLnBhZ2U7XG5cbiAgICAgICAgaWYgKHByZXZQYWdlU3RhdGUuY3VycmVudFBhZ2UgPT09IGN1cnJlbnRQYWdlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdGF0ZTogVGFibGVTdGF0ZSA9IHNldEN1cnJlbnRQYWdlVG9TdGF0ZShwcmV2U3RhdGUsIGN1cnJlbnRQYWdlKTtcblxuICAgICAgICB0aGlzLnNldFRhYmxlU3RhdGUoc3RhdGUpO1xuICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLnBhZ2UsIHByZXZpb3VzOiBwcmV2UGFnZVN0YXRlIH07XG5cbiAgICAgICAgdGhpcy5uZWVkRmV0Y2gkLm5leHQoKTtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZSQubmV4dCh7IHR5cGU6ICdwYWdlJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgdGhpcy5wYWdlQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgZGVmYXVsdCB0YWJsZSBzdGF0ZS4gKi9cbiAgICBnZXREZWZhdWx0U3RhdGUoKTogVGFibGVTdGF0ZSB7XG4gICAgICAgIGNvbnN0IHRhYmxlU3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbHVtbktleXM6IHRhYmxlU3RhdGUuY29sdW1uS2V5cyxcbiAgICAgICAgICAgIHNvcnRCeTogW10sXG4gICAgICAgICAgICBmaWx0ZXJCeTogW10sXG4gICAgICAgICAgICBncm91cEJ5OiBbXSxcbiAgICAgICAgICAgIGNvbHVtbnM6IHRhYmxlU3RhdGUuY29sdW1ucyxcbiAgICAgICAgICAgIHNlYXJjaElucHV0OiB7XG4gICAgICAgICAgICAgICAgY2F0ZWdvcnk6IG51bGwsXG4gICAgICAgICAgICAgICAgdGV4dDogJydcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmcmVlemVUb0NvbHVtbjogbnVsbCxcbiAgICAgICAgICAgIGZyZWV6ZVRvRW5kQ29sdW1uOiBudWxsLFxuICAgICAgICAgICAgcGFnZToge1xuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiAwLFxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYWdlOiAxXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2Nyb2xsVG9wUG9zaXRpb246IDBcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaGFyZXMgdmlzaWJsZSBjb2x1bW5zIGFycmF5IGFjcm9zcyBsaXN0ZW5lcnMuXG4gICAgICogQHBhcmFtIGNvbHVtbnMgVmlzaWJsZSBjb2x1bW5zIHRvIHNoYXJlLlxuICAgICAqL1xuICAgIHNldFZpc2libGVDb2x1bW5zKGNvbHVtbnM6IFRhYmxlQ29sdW1uW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy52aXNpYmxlQ29sdW1ucyQuc2V0KGNvbHVtbnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNoYXJlcyBwb3BwaW5nIGNvbHVtbnMgYXJyYXkgYWNyb3NzIGxpc3RlbmVycy5cbiAgICAgKiBAcGFyYW0gY29sdW1ucyBQb3BwaW5nIGNvbHVtbnMgdG8gc2hhcmUuXG4gICAgICovXG4gICAgc2V0UG9wcGluZ0NvbHVtbnMoY29sdW1uczogVGFibGVDb2x1bW5bXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnBvcHBpbmdDb2x1bW5zJC5zZXQoY29sdW1ucyk7XG4gICAgICAgIHRoaXMuX3BvcHBpbmdDb2x1bW5zTGVuZ3RoID0gY29sdW1ucy5sZW5ndGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBncm91cGluZyBydWxlcyBiYXNlZCBvbiB0aGUgdGFibGUgc3RhdGUuXG4gICAgICogQHBhcmFtIHN0YXRlIFRhYmxlIHN0YXRlLlxuICAgICAqL1xuICAgIGJ1aWxkR3JvdXBSdWxlc01hcChzdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGdyb3VwTWFwID0gbmV3IE1hcChzdGF0ZS5ncm91cEJ5Lm1hcCgocnVsZSkgPT4gW3J1bGUuZmllbGQsIHJ1bGVdKSk7XG4gICAgICAgIHRoaXMuZ3JvdXBSdWxlc1N1YmplY3QubmV4dChncm91cE1hcCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBzb3J0aW5nIHJ1bGVzIGJhc2VkIG9uIHRoZSB0YWJsZSBzdGF0ZS5cbiAgICAgKiBAcGFyYW0gc3RhdGUgVGFibGUgc3RhdGVcbiAgICAgKi9cbiAgICBidWlsZFNvcnRSdWxlc01hcChzdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc29ydFJ1bGVzJC5zZXQobmV3IE1hcChzdGF0ZS5zb3J0QnkuZmlsdGVyKChydWxlKSA9PiBydWxlLmZpZWxkKS5tYXAoKHJ1bGUpID0+IFtydWxlLmZpZWxkISwgcnVsZV0pKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBmaWx0ZXIgcnVsZXMgYmFzZWQgb24gdGhlIHRhYmxlIHN0YXRlLlxuICAgICAqIEBwYXJhbSBzdGF0ZSBUYWJsZSBzdGF0ZS5cbiAgICAgKi9cbiAgICBidWlsZEZpbHRlclJ1bGVzTWFwKHN0YXRlID0gdGhpcy5nZXRUYWJsZVN0YXRlKCkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWx0ZXJSdWxlcyQuc2V0KFxuICAgICAgICAgICAgc3RhdGUuZmlsdGVyQnkucmVkdWNlKChoYXNoLCBydWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5ID0gcnVsZS5maWVsZDtcbiAgICAgICAgICAgICAgICBpZiAoIWhhc2guaGFzKGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFzaC5zZXQoa2V5LCBbXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGhhc2guZ2V0KGtleSk/LnB1c2gocnVsZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGhhc2g7XG4gICAgICAgICAgICB9LCBuZXcgTWFwPHN0cmluZywgQ29sbGVjdGlvbkZpbHRlcltdPigpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnN0cnVjdHMgYmFzZSB0YWJsZSBjb25maWcuXG4gICAgICovXG4gICAgY29uc3RydWN0VGFibGVNZXRhZGF0YSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZEdyb3VwUnVsZXNNYXAoKTtcbiAgICAgICAgdGhpcy5idWlsZFNvcnRSdWxlc01hcCgpO1xuICAgICAgICB0aGlzLmJ1aWxkRmlsdGVyUnVsZXNNYXAoKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIHNldEN1cnJlbnRQYWdlVG9TdGF0ZShzdGF0ZTogVGFibGVTdGF0ZSwgY3VycmVudFBhZ2U6IG51bWJlcik6IFRhYmxlU3RhdGUge1xuICAgIGNvbnN0IG5ld1BhZ2VTdGF0ZTogQ29sbGVjdGlvblBhZ2UgPSB7IC4uLnN0YXRlLnBhZ2UsIGN1cnJlbnRQYWdlIH07XG4gICAgcmV0dXJuIHsgLi4uc3RhdGUsIHBhZ2U6IG5ld1BhZ2VTdGF0ZSB9O1xufVxuIl19
357
+ /** @hidden */
358
+ function setPageSizeToState(state, pageSize) {
359
+ const newPageState = { ...state.page, pageSize };
360
+ return { ...state, page: newPageState };
361
+ }
362
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGFibGUtaGVscGVycy9zZXJ2aWNlcy90YWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEtBQUssTUFBTSxpQkFBaUIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUErQnRELE1BQU0sT0FBTyxZQUFZO0lBRHpCO1FBRUksMEJBQTBCO1FBQ2pCLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNoRSxjQUFjO1FBQ0wsMkJBQXNCLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLGNBQWM7UUFDTCxvQ0FBK0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsY0FBYztRQUNMLDhCQUF5QixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxjQUFjO1FBQ0wsc0NBQWlDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELDhCQUE4QjtRQUNyQixvQkFBZSxHQUFHLE1BQU0sQ0FBZ0IsRUFBRSxDQUFDLENBQUM7UUFDckQsOEJBQThCO1FBQzlCLHlCQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckUsOEJB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SEFBWixZQUFZOzsyRkFBWixZQUFZO2tCQUR4QixVQUFVOztBQTZaWCxjQUFjO0FBQ2QsU0FBUyxxQkFBcUIsQ0FBQyxLQUFpQixFQUFFLFdBQW1CO0lBQ2pFLE1BQU0sWUFBWSxHQUFtQixFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNwRSxPQUFPLEVBQUUsR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFFRCxjQUFjO0FBQ2QsU0FBUyxrQkFBa0IsQ0FBQyxLQUFpQixFQUFFLFFBQWdCO0lBQzNELE1BQU0sWUFBWSxHQUFtQixFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQztJQUNqRSxPQUFPLEVBQUUsR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQzVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWFyY2hJbnB1dCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2VhcmNoLWZpZWxkJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgREVGQVVMVF9UQUJMRV9TVEFURSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkZpbHRlciwgQ29sbGVjdGlvbkdyb3VwLCBDb2xsZWN0aW9uUGFnZSwgQ29sbGVjdGlvblNvcnQsIFRhYmxlU3RhdGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgQ29sdW1uc0NoYW5nZSxcbiAgICBGaWx0ZXJDaGFuZ2UsXG4gICAgRnJlZXplQ2hhbmdlLFxuICAgIEdyb3VwQ2hhbmdlLFxuICAgIFBhZ2VDaGFuZ2UsXG4gICAgU2VhcmNoQ2hhbmdlLFxuICAgIFNvcnRDaGFuZ2Vcbn0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vdGFibGUtY29sdW1uJztcblxuZXhwb3J0IHR5cGUgVGFibGVTdGF0ZUNoYW5nZSA9XG4gICAgfCBUYWJsZVN0YXRlUHJvcGVydHk8J3NvcnQnLCBTb3J0Q2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdwYWdlJywgUGFnZUNoYW5nZT5cbiAgICB8IFRhYmxlU3RhdGVQcm9wZXJ0eTwnZmlsdGVyJywgRmlsdGVyQ2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdncm91cCcsIEdyb3VwQ2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdmcmVlemUnLCBGcmVlemVDaGFuZ2U+XG4gICAgfCBUYWJsZVN0YXRlUHJvcGVydHk8J2NvbHVtbnMnLCBDb2x1bW5zQ2hhbmdlPlxuICAgIHwgVGFibGVTdGF0ZVByb3BlcnR5PCdzZWFyY2gnLCBTZWFyY2hDaGFuZ2U+O1xuXG5leHBvcnQgdHlwZSBUYWJsZVN0YXRlUHJvcGVydHk8XG4gICAgVCA9ICdzb3J0JyB8ICdwYWdlJyB8ICdmaWx0ZXInIHwgJ2dyb3VwJyB8ICdmcmVlemUnIHwgJ2NvbHVtbnMnIHwgJ3NlYXJjaCcsXG4gICAgUCA9IFNvcnRDaGFuZ2UgfCBQYWdlQ2hhbmdlIHwgRmlsdGVyQ2hhbmdlIHwgR3JvdXBDaGFuZ2UgfCBGcmVlemVDaGFuZ2UgfCBDb2x1bW5zQ2hhbmdlXG4+ID0ge1xuICAgIHR5cGU6IFQ7XG4gICAgc3RhdGU6IFA7XG59O1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFibGVTZXJ2aWNlIHtcbiAgICAvKiogVGFibGUgc3RhdGUgc3RyZWFtLiAqL1xuICAgIHJlYWRvbmx5IHRhYmxlU3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdChERUZBVUxUX1RBQkxFX1NUQVRFKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZW1hbnRpY0hpZ2hsaWdodGluZyQgPSBzaWduYWwoJycpO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX2lzRmlsdGVyaW5nRnJvbUhlYWRlckRpc2FibGVkJCA9IHNpZ25hbChmYWxzZSk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfaXNTaG93bk5hdmlnYXRpb25Db2x1bW4kID0gc2lnbmFsKGZhbHNlKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZW1hbnRpY0hpZ2hsaWdodGluZ0NvbHVtbldpZHRoJCA9IHNpZ25hbCgwKTtcbiAgICAvKiogVmlzaWJsZSBjb2x1bW5zIHN0cmVhbS4gKi9cbiAgICByZWFkb25seSB2aXNpYmxlQ29sdW1ucyQgPSBzaWduYWw8VGFibGVDb2x1bW5bXT4oW10pO1xuICAgIC8qKiBWaXNpYmxlIGNvbHVtbnMgbGVuZ3RoLiAqL1xuICAgIHZpc2libGVDb2x1bW5zTGVuZ3RoID0gY29tcHV0ZWQoKCkgPT4gdGhpcy52aXNpYmxlQ29sdW1ucyQoKS5sZW5ndGgpO1xuICAgIC8qKiBQb3BwaW5nIGNvbHVtbnMgc3RyZWFtLiAqL1xuICAgIHJlYWRvbmx5IHBvcHBpbmdDb2x1bW5zJCA9IHNpZ25hbDxUYWJsZUNvbHVtbltdPihbXSk7XG4gICAgLyoqIFBvcHBpbmcgY29sdW1ucyBsZW5ndGguICovXG4gICAgX3BvcHBpbmdDb2x1bW5zTGVuZ3RoID0gMDtcbiAgICAvKiogVGFibGUgY29sdW1ucyBzdHJlYW0uICovXG4gICAgcmVhZG9ubHkgdGFibGVDb2x1bW5zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGFibGVDb2x1bW5bXT4oW10pO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgdGFibGVTdGF0ZUNoYW5nZXMkID0gdGhpcy50YWJsZVN0YXRlJC5waXBlKHNraXAoMSkpO1xuICAgIC8qKiBTdHJlYW0gdGhhdCBlbWl0cyB3aGVuIHNlYXJjaCBzdGF0ZSBjaGFuZ2VzLiAqL1xuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSQgPSBuZXcgU3ViamVjdDxTZWFyY2hDaGFuZ2U+KCk7XG4gICAgLyoqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gc29ydCBzdGF0ZSBjaGFuZ2VzLiAqL1xuICAgIHJlYWRvbmx5IHNvcnRDaGFuZ2UkID0gbmV3IFN1YmplY3Q8U29ydENoYW5nZT4oKTtcbiAgICAvKiogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBmaWx0ZXIgc3RhdGUgY2hhbmdlcy4gKi9cbiAgICByZWFkb25seSBmaWx0ZXJDaGFuZ2UkID0gbmV3IFN1YmplY3Q8RmlsdGVyQ2hhbmdlPigpO1xuICAgIC8qKiBTdHJlYW0gdGhhdCBlbWl0cyB3aGVuIGdyb3VwIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgZ3JvdXBDaGFuZ2UkID0gbmV3IFN1YmplY3Q8R3JvdXBDaGFuZ2U+KCk7XG4gICAgLyoqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gZnJlZXplIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgZnJlZXplQ2hhbmdlJCA9IG5ldyBTdWJqZWN0PEZyZWV6ZUNoYW5nZT4oKTtcbiAgICAvKiogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBjb2x1bW5zIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgY29sdW1uc0NoYW5nZSQgPSBuZXcgU3ViamVjdDxDb2x1bW5zQ2hhbmdlPigpO1xuICAgIC8qKiBTdHJlYW0gdGhhdCBlbWl0cyB3aGVuIHBhZ2Ugc3RhdGUgY2hhbmdlcy4gKi9cbiAgICByZWFkb25seSBwYWdlQ2hhbmdlJCA9IG5ldyBTdWJqZWN0PFBhZ2VDaGFuZ2U+KCk7XG4gICAgLyoqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gbmV3IGZldGNoIG9mIGRhdGEgaXMgbmVlZGVkLiAqL1xuICAgIHJlYWRvbmx5IG5lZWRGZXRjaCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgc3RhdGVDaGFuZ2UkID0gbmV3IFN1YmplY3Q8VGFibGVTdGF0ZUNoYW5nZT4oKTtcbiAgICAvKiogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBsb2FkaW5nIHN0YXRlIGNoYW5nZXMuICovXG4gICAgcmVhZG9ubHkgdGFibGVMb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICAgIC8qKiBMaXN0ZW4gZm9yIHNvZnQgY2hhbmdlcyBpbiB0YWJsZSBzdWJjb21wb25lbnRzIChtb3N0bHkgdGFibGUgY29sdW1uKSAqL1xuICAgIHJlYWRvbmx5IG1hcmtGb3JDaGVjayQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIC8qKiBMaXN0ZW4gZm9yIGltbWVkaWF0ZSBjaGFuZ2VzIGluIHRhYmxlIHN1YmNvbXBvbmVudHMgKG1vc3RseSB0YWJsZSBjb2x1bW4pICovXG4gICAgcmVhZG9ubHkgZGV0ZWN0Q2hhbmdlcyQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIC8qKiBTb3J0IHJ1bGVzIHN0cmVhbS4gKi9cbiAgICByZWFkb25seSBzb3J0UnVsZXMkID0gc2lnbmFsPE1hcDxzdHJpbmcsIENvbGxlY3Rpb25Tb3J0Pj4obmV3IE1hcCgpKTtcbiAgICAvKipcbiAgICAgKiBGaWx0ZXIgUnVsZXMgTWFwIHN0cmVhbS4gV2hlcmUga2V5IGlzIGNvbHVtbiBrZXksIGFuZCB2YWx1ZSBpcyB0aGUgYXNzb2NpYXRlZCBmaWx0ZXIgcnVsZXMuXG4gICAgICogTWFueSBmaWx0ZXJzIGNhbiBiZSBhcHBsaWVkIHRvIG9uZSBjb2x1bW4uXG4gICAgICovXG4gICAgcmVhZG9ubHkgZmlsdGVyUnVsZXMkID0gc2lnbmFsPE1hcDxzdHJpbmcsIENvbGxlY3Rpb25GaWx0ZXJbXT4+KG5ldyBNYXAoKSk7XG5cbiAgICAvKipcbiAgICAgKiBHcm91cCBSdWxlcyBNYXAgc3RyZWFtLiBXaGVyZSBrZXkgaXMgY29sdW1uIGtleSBhbmQgdmFsdWUgaXMgYXNzb2NpYXRlZCBncm91cCBydWxlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZ3JvdXBSdWxlc1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hcDxzdHJpbmcsIENvbGxlY3Rpb25Hcm91cD4+KG5ldyBNYXAoKSk7XG5cbiAgICAvKiogR3JvdXAgUnVsZXMgTWFwIHNpZ25hbC4gKi9cbiAgICByZWFkb25seSBncm91cFJ1bGVzJCA9IHRvU2lnbmFsKHRoaXMuZ3JvdXBSdWxlc1N1YmplY3QpO1xuXG4gICAgLyoqIEdldCBjdXJyZW50IHN0YXRlL3NldHRpbmdzIG9mIHRoZSBUYWJsZS4gKi9cbiAgICBnZXRUYWJsZVN0YXRlKCk6IFRhYmxlU3RhdGUge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZVN0YXRlJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKiBTZXQgY3VycmVudCBzdGF0ZS9zZXR0aW5ncyBvZiB0aGUgVGFibGUuICovXG4gICAgc2V0VGFibGVTdGF0ZShzdGF0ZTogVGFibGVTdGF0ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYmxlU3RhdGUkLm5leHQoc3RhdGUpO1xuICAgIH1cblxuICAgIC8qKiBTZXQgY3VycmVudCBsb2FkaW5nIHN0YXRlIG9mIHRoZSBUYWJsZS4gKi9cbiAgICBzZXRUYWJsZUxvYWRpbmcoaXNMb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFibGVMb2FkaW5nJC5uZXh0KGlzTG9hZGluZyk7XG4gICAgfVxuXG4gICAgLyoqIE5vdGlmeSBhYm91dCBjaGFuZ2VzIGluIHRhYmxlIHN1YmNvbXBvbmVudHMgKG1vc3RseSB0YWJsZSBjb2x1bW4pIGFuZCBkZXRlY3QgdGhlbSBvbiBuZXh0IGRldGVjdG9yIGNoZWNrLiAqL1xuICAgIG1hcmtGb3JDaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tYXJrRm9yQ2hlY2skLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogTm90aWZ5IGFib3V0IGNoYW5nZXMgaW4gdGFibGUgc3ViY29tcG9uZW50cyAobW9zdGx5IHRhYmxlIGNvbHVtbikgYW5kIGRldGVjdCB0aGVtIGltbWVkaWF0ZWx5LiAqL1xuICAgIGRldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcyQubmV4dCgpO1xuICAgIH1cblxuICAgIC8qKiBTZWFyY2ggKi9cbiAgICBzZWFyY2goc2VhcmNoSW5wdXQ6IFNlYXJjaElucHV0KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIHNlYXJjaElucHV0IH07XG5cbiAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHNldEN1cnJlbnRQYWdlVG9TdGF0ZShzdGF0ZSwgMSkpO1xuXG4gICAgICAgIGNvbnN0IGV2dCA9IHsgY3VycmVudDogc2VhcmNoSW5wdXQsIHByZXZpb3VzOiBwcmV2U3RhdGUuc2VhcmNoSW5wdXQgfTtcblxuICAgICAgICB0aGlzLm5lZWRGZXRjaCQubmV4dCgpO1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ3NlYXJjaCcsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgIHRoaXMuc2VhcmNoQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgfVxuXG4gICAgLyoqIFNldCBuZXcgc29ydCBydWxlcyAqL1xuICAgIHNldFNvcnQoc29ydFJ1bGVzOiBDb2xsZWN0aW9uU29ydFtdIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2U29ydFJ1bGVzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuc29ydEJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdTb3J0UnVsZXM6IENvbGxlY3Rpb25Tb3J0W10gPSBzb3J0UnVsZXMgPyBbLi4uc29ydFJ1bGVzXSA6IFtdO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIHNvcnRCeTogbmV3U29ydFJ1bGVzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2U29ydFJ1bGVzLCBzdGF0ZS5zb3J0QnkpKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRhYmxlU3RhdGUoc2V0Q3VycmVudFBhZ2VUb1N0YXRlKHN0YXRlLCAxKSk7XG4gICAgICAgICAgICB0aGlzLmJ1aWxkU29ydFJ1bGVzTWFwKCk7XG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLnNvcnRCeSwgcHJldmlvdXM6IHByZXZTb3J0UnVsZXMgfTtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRTb3J0UnVsZXNNYXAoKTtcblxuICAgICAgICAgICAgdGhpcy5uZWVkRmV0Y2gkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAnc29ydCcsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBBZGQgc29ydCBydWxlcyB0byB0aGUgZXhpc3Rpbmcgb25lcyAqL1xuICAgIGFkZFNvcnQoc29ydFJ1bGVzOiBDb2xsZWN0aW9uU29ydFtdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2U29ydFJ1bGVzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuc29ydEJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdTb3J0UnVsZXM6IENvbGxlY3Rpb25Tb3J0W10gPSBbXG4gICAgICAgICAgICAuLi5wcmV2U29ydFJ1bGVzLmZpbHRlcigoZXhpc3RpbmcpID0+ICFzb3J0UnVsZXMuZmluZCgoeyBmaWVsZCB9KSA9PiBmaWVsZCA9PT0gZXhpc3RpbmcuZmllbGQpKSxcbiAgICAgICAgICAgIC4uLnNvcnRSdWxlc1xuICAgICAgICBdO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIHNvcnRCeTogbmV3U29ydFJ1bGVzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2U29ydFJ1bGVzLCBzdGF0ZS5zb3J0QnkpKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRhYmxlU3RhdGUoc2V0Q3VycmVudFBhZ2VUb1N0YXRlKHN0YXRlLCAxKSk7XG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLnNvcnRCeSwgcHJldmlvdXM6IHByZXZTb3J0UnVsZXMgfTtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRTb3J0UnVsZXNNYXAoKTtcblxuICAgICAgICAgICAgdGhpcy5uZWVkRmV0Y2gkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAnc29ydCcsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBTZXQgbmV3IHNvcnQgcnVsZXMgKi9cbiAgICBzZXRGaWx0ZXJzKGZpbHRlclJ1bGVzOiBDb2xsZWN0aW9uRmlsdGVyW10gfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5nZXRUYWJsZVN0YXRlKCk7XG4gICAgICAgIGNvbnN0IHByZXZGaWx0ZXJSdWxlcyA9IChwcmV2U3RhdGUgJiYgcHJldlN0YXRlLmZpbHRlckJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdGaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdID0gZmlsdGVyUnVsZXMgPyBbLi4uZmlsdGVyUnVsZXNdIDogW107XG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGZpbHRlckJ5OiBuZXdGaWx0ZXJSdWxlcyB9O1xuXG4gICAgICAgIGlmICghZXF1YWwocHJldkZpbHRlclJ1bGVzLCBzdGF0ZS5maWx0ZXJCeSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzZXRDdXJyZW50UGFnZVRvU3RhdGUoc3RhdGUsIDEpKTtcbiAgICAgICAgICAgIGNvbnN0IGV2dCA9IHsgY3VycmVudDogc3RhdGUuZmlsdGVyQnksIHByZXZpb3VzOiBwcmV2RmlsdGVyUnVsZXMgfTtcblxuICAgICAgICAgICAgdGhpcy5idWlsZEZpbHRlclJ1bGVzTWFwKCk7XG4gICAgICAgICAgICB0aGlzLm5lZWRGZXRjaCQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZSQubmV4dCh7IHR5cGU6ICdmaWx0ZXInLCBzdGF0ZTogZXZ0IH0pO1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBBZGQgZmlsdGVyIHJ1bGVzIHRvIHRoZSBleGlzdGluZyBvbmVzICovXG4gICAgYWRkRmlsdGVycyhydWxlc1RvQWRkOiBDb2xsZWN0aW9uRmlsdGVyW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5nZXRUYWJsZVN0YXRlKCk7XG4gICAgICAgIGNvbnN0IHByZXZGaWx0ZXJSdWxlcyA9IChwcmV2U3RhdGUgJiYgcHJldlN0YXRlLmZpbHRlckJ5KSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdGaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdID0gW1xuICAgICAgICAgICAgLi4ucHJldkZpbHRlclJ1bGVzLmZpbHRlcigoZXhpc3RpbmcpID0+ICFydWxlc1RvQWRkLmZpbmQoKHsgZmllbGQgfSkgPT4gZmllbGQgPT09IGV4aXN0aW5nLmZpZWxkKSksXG4gICAgICAgICAgICAuLi5ydWxlc1RvQWRkXG4gICAgICAgIF07XG5cbiAgICAgICAgY29uc3Qgc3RhdGU6IFRhYmxlU3RhdGUgPSB7IC4uLnByZXZTdGF0ZSwgZmlsdGVyQnk6IG5ld0ZpbHRlclJ1bGVzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2RmlsdGVyUnVsZXMsIHN0YXRlLmZpbHRlckJ5KSkge1xuICAgICAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHNldEN1cnJlbnRQYWdlVG9TdGF0ZShzdGF0ZSwgMSkpO1xuICAgICAgICAgICAgY29uc3QgZXZ0ID0geyBjdXJyZW50OiBzdGF0ZS5maWx0ZXJCeSwgcHJldmlvdXM6IHByZXZGaWx0ZXJSdWxlcyB9O1xuICAgICAgICAgICAgdGhpcy5idWlsZEZpbHRlclJ1bGVzTWFwKCk7XG5cbiAgICAgICAgICAgIHRoaXMubmVlZEZldGNoJC5uZXh0KCk7XG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2ZpbHRlcicsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckNoYW5nZSQubmV4dChldnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJlbW92ZXMgZmlsdGVycyBmb3IgdGhlIHByb3ZpZGVkIGZpZWxkcyAqL1xuICAgIHJlbW92ZUZpbHRlcnMoZmllbGRzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgY29uc3QgcHJldkZpbHRlclJ1bGVzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuZmlsdGVyQnkpIHx8IFtdO1xuXG4gICAgICAgIGNvbnN0IG5ld0ZpbHRlclJ1bGVzOiBDb2xsZWN0aW9uRmlsdGVyW10gPSBwcmV2RmlsdGVyUnVsZXMuZmlsdGVyKFxuICAgICAgICAgICAgKGV4aXN0aW5nKSA9PiAhZmllbGRzLmluY2x1ZGVzKGV4aXN0aW5nLmZpZWxkKVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGZpbHRlckJ5OiBuZXdGaWx0ZXJSdWxlcyB9O1xuXG4gICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzZXRDdXJyZW50UGFnZVRvU3RhdGUoc3RhdGUsIDEpKTtcbiAgICAgICAgY29uc3QgZXZ0ID0geyBjdXJyZW50OiBzdGF0ZS5maWx0ZXJCeSwgcHJldmlvdXM6IHByZXZGaWx0ZXJSdWxlcyB9O1xuICAgICAgICB0aGlzLmJ1aWxkRmlsdGVyUnVsZXNNYXAoKTtcblxuICAgICAgICB0aGlzLm5lZWRGZXRjaCQubmV4dCgpO1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2ZpbHRlcicsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgIHRoaXMuZmlsdGVyQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgfVxuXG4gICAgLyoqIFNldCBncm91cCBydWxlcyAqL1xuICAgIHNldEdyb3Vwcyhncm91cHM6IENvbGxlY3Rpb25Hcm91cFtdIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2R3JvdXBzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuZ3JvdXBCeSkgfHwgW107XG5cbiAgICAgICAgY29uc3QgbmV3R3JvdXBzOiBDb2xsZWN0aW9uR3JvdXBbXSA9IGdyb3VwcyA/IFsuLi5ncm91cHNdIDogW107XG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGdyb3VwQnk6IG5ld0dyb3VwcyB9O1xuXG4gICAgICAgIGlmICghZXF1YWwocHJldkdyb3Vwcywgc3RhdGUuZ3JvdXBCeSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzdGF0ZSk7XG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLmdyb3VwQnksIHByZXZpb3VzOiBwcmV2R3JvdXBzIH07XG4gICAgICAgICAgICB0aGlzLmJ1aWxkR3JvdXBSdWxlc01hcCgpO1xuXG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2dyb3VwJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBBZGQgZ3JvdXAgcnVsZXMgdG8gdGhlIGV4aXN0aW5nIG9uZXMgKi9cbiAgICBhZGRHcm91cHMoZ3JvdXBzVG9BZGQ6IENvbGxlY3Rpb25Hcm91cFtdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2R3JvdXBzID0gKHByZXZTdGF0ZSAmJiBwcmV2U3RhdGUuZ3JvdXBCeSkgfHwgW107XG5cbiAgICAgICAgY29uc3QgbmV3R3JvdXBzOiBDb2xsZWN0aW9uR3JvdXBbXSA9IFtcbiAgICAgICAgICAgIC4uLnByZXZHcm91cHMuZmlsdGVyKChleGlzdGluZykgPT4gIWdyb3Vwc1RvQWRkLmZpbmQoKHsgZmllbGQgfSkgPT4gZmllbGQgPT09IGV4aXN0aW5nLmZpZWxkKSksXG4gICAgICAgICAgICAuLi5ncm91cHNUb0FkZFxuICAgICAgICBdO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlOiBUYWJsZVN0YXRlID0geyAuLi5wcmV2U3RhdGUsIGdyb3VwQnk6IG5ld0dyb3VwcyB9O1xuXG4gICAgICAgIGlmICghZXF1YWwocHJldkdyb3Vwcywgc3RhdGUuZ3JvdXBCeSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzdGF0ZSk7XG4gICAgICAgICAgICB0aGlzLmJ1aWxkR3JvdXBSdWxlc01hcCgpO1xuXG4gICAgICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLmdyb3VwQnksIHByZXZpb3VzOiBwcmV2R3JvdXBzIH07XG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2dyb3VwJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBGcmVlemUgdGFibGUgdG8gY29sdW1uICovXG4gICAgZnJlZXplVG8oY29sdW1uTmFtZTogc3RyaW5nIHwgbnVsbCwgZW5kPzogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcblxuICAgICAgICBpZiAoIWVuZCkge1xuICAgICAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHsgLi4ucHJldlN0YXRlLCBmcmVlemVUb0NvbHVtbjogY29sdW1uTmFtZSB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZSh7IC4uLnByZXZTdGF0ZSwgZnJlZXplVG9FbmRDb2x1bW46IGNvbHVtbk5hbWUgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBldnQgPSB7XG4gICAgICAgICAgICBjdXJyZW50OiBjb2x1bW5OYW1lLFxuICAgICAgICAgICAgcHJldmlvdXM6IGVuZCA/IHByZXZTdGF0ZS5mcmVlemVUb0VuZENvbHVtbiA6IHByZXZTdGF0ZS5mcmVlemVUb0NvbHVtblxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAnZnJlZXplJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgdGhpcy5mcmVlemVDaGFuZ2UkLm5leHQoZXZ0KTtcbiAgICB9XG5cbiAgICAvKiogU2V0IHRhYmxlIGNvbHVtbnMgKi9cbiAgICBzZXRDb2x1bW5zKGNvbHVtbnM6IHN0cmluZ1tdLCBrZXlzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgY29uc3QgcHJldkNvbHVtbnMgPSAocHJldlN0YXRlICYmIHByZXZTdGF0ZS5jb2x1bW5zKSB8fCBbXTtcblxuICAgICAgICBjb25zdCBuZXdDb2x1bW5zID0gWy4uLmNvbHVtbnNdO1xuICAgICAgICBjb25zdCBuZXdDb2x1bW5LZXlzID0gWy4uLmtleXNdO1xuICAgICAgICBjb25zdCBzdGF0ZTogVGFibGVTdGF0ZSA9IHsgLi4ucHJldlN0YXRlLCBjb2x1bW5zOiBuZXdDb2x1bW5zLCBjb2x1bW5LZXlzOiBuZXdDb2x1bW5LZXlzIH07XG5cbiAgICAgICAgaWYgKCFlcXVhbChwcmV2Q29sdW1ucywgc3RhdGUuY29sdW1ucykpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0VGFibGVTdGF0ZShzdGF0ZSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGV2dCA9IHsgY3VycmVudDogc3RhdGUuY29sdW1ucywgcHJldmlvdXM6IHByZXZDb2x1bW5zIH07XG4gICAgICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlJC5uZXh0KHsgdHlwZTogJ2NvbHVtbnMnLCBzdGF0ZTogZXZ0IH0pO1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5zQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogU2V0IHBhZ2UuICovXG4gICAgc2V0Q3VycmVudFBhZ2UoY3VycmVudFBhZ2U6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgY29uc3QgcHJldlBhZ2VTdGF0ZSA9IHByZXZTdGF0ZS5wYWdlO1xuXG4gICAgICAgIGlmIChwcmV2UGFnZVN0YXRlLmN1cnJlbnRQYWdlID09PSBjdXJyZW50UGFnZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhdGU6IFRhYmxlU3RhdGUgPSBzZXRDdXJyZW50UGFnZVRvU3RhdGUocHJldlN0YXRlLCBjdXJyZW50UGFnZSk7XG5cbiAgICAgICAgdGhpcy5zZXRUYWJsZVN0YXRlKHN0YXRlKTtcbiAgICAgICAgY29uc3QgZXZ0ID0geyBjdXJyZW50OiBzdGF0ZS5wYWdlLCBwcmV2aW91czogcHJldlBhZ2VTdGF0ZSB9O1xuXG4gICAgICAgIHRoaXMubmVlZEZldGNoJC5uZXh0KCk7XG4gICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UkLm5leHQoeyB0eXBlOiAncGFnZScsIHN0YXRlOiBldnQgfSk7XG4gICAgICAgIHRoaXMucGFnZUNoYW5nZSQubmV4dChldnQpO1xuICAgIH1cblxuICAgIC8qKiBTZXQgaXRlbXMgcGVyIHBhZ2UuICovXG4gICAgc2V0SXRlbXNQZXJQYWdlKGl0ZW1zUGVyUGFnZTogbnVtYmVyLCByZXNldFBhZ2VOdW1iZXIgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpO1xuICAgICAgICBjb25zdCBwcmV2UGFnZVN0YXRlID0gcHJldlN0YXRlLnBhZ2U7XG5cbiAgICAgICAgaWYgKHByZXZQYWdlU3RhdGUucGFnZVNpemUgPT09IGl0ZW1zUGVyUGFnZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHN0YXRlOiBUYWJsZVN0YXRlID0gc2V0UGFnZVNpemVUb1N0YXRlKHByZXZTdGF0ZSwgaXRlbXNQZXJQYWdlKTtcblxuICAgICAgICBpZiAocmVzZXRQYWdlTnVtYmVyKSB7XG4gICAgICAgICAgICBzdGF0ZSA9IHNldEN1cnJlbnRQYWdlVG9TdGF0ZShzdGF0ZSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldFRhYmxlU3RhdGUoc3RhdGUpO1xuICAgICAgICBjb25zdCBldnQgPSB7IGN1cnJlbnQ6IHN0YXRlLnBhZ2UsIHByZXZpb3VzOiBwcmV2UGFnZVN0YXRlIH07XG5cbiAgICAgICAgdGhpcy5uZWVkRmV0Y2gkLm5leHQoKTtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZSQubmV4dCh7IHR5cGU6ICdwYWdlJywgc3RhdGU6IGV2dCB9KTtcbiAgICAgICAgdGhpcy5wYWdlQ2hhbmdlJC5uZXh0KGV2dCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgZGVmYXVsdCB0YWJsZSBzdGF0ZS4gKi9cbiAgICBnZXREZWZhdWx0U3RhdGUoKTogVGFibGVTdGF0ZSB7XG4gICAgICAgIGNvbnN0IHRhYmxlU3RhdGUgPSB0aGlzLmdldFRhYmxlU3RhdGUoKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbHVtbktleXM6IHRhYmxlU3RhdGUuY29sdW1uS2V5cyxcbiAgICAgICAgICAgIHNvcnRCeTogW10sXG4gICAgICAgICAgICBmaWx0ZXJCeTogW10sXG4gICAgICAgICAgICBncm91cEJ5OiBbXSxcbiAgICAgICAgICAgIGNvbHVtbnM6IHRhYmxlU3RhdGUuY29sdW1ucyxcbiAgICAgICAgICAgIHNlYXJjaElucHV0OiB7XG4gICAgICAgICAgICAgICAgY2F0ZWdvcnk6IG51bGwsXG4gICAgICAgICAgICAgICAgdGV4dDogJydcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmcmVlemVUb0NvbHVtbjogbnVsbCxcbiAgICAgICAgICAgIGZyZWV6ZVRvRW5kQ29sdW1uOiBudWxsLFxuICAgICAgICAgICAgcGFnZToge1xuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiAwLFxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYWdlOiAxXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2Nyb2xsVG9wUG9zaXRpb246IDBcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaGFyZXMgdmlzaWJsZSBjb2x1bW5zIGFycmF5IGFjcm9zcyBsaXN0ZW5lcnMuXG4gICAgICogQHBhcmFtIGNvbHVtbnMgVmlzaWJsZSBjb2x1bW5zIHRvIHNoYXJlLlxuICAgICAqL1xuICAgIHNldFZpc2libGVDb2x1bW5zKGNvbHVtbnM6IFRhYmxlQ29sdW1uW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy52aXNpYmxlQ29sdW1ucyQuc2V0KGNvbHVtbnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNoYXJlcyBwb3BwaW5nIGNvbHVtbnMgYXJyYXkgYWNyb3NzIGxpc3RlbmVycy5cbiAgICAgKiBAcGFyYW0gY29sdW1ucyBQb3BwaW5nIGNvbHVtbnMgdG8gc2hhcmUuXG4gICAgICovXG4gICAgc2V0UG9wcGluZ0NvbHVtbnMoY29sdW1uczogVGFibGVDb2x1bW5bXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnBvcHBpbmdDb2x1bW5zJC5zZXQoY29sdW1ucyk7XG4gICAgICAgIHRoaXMuX3BvcHBpbmdDb2x1bW5zTGVuZ3RoID0gY29sdW1ucy5sZW5ndGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBncm91cGluZyBydWxlcyBiYXNlZCBvbiB0aGUgdGFibGUgc3RhdGUuXG4gICAgICogQHBhcmFtIHN0YXRlIFRhYmxlIHN0YXRlLlxuICAgICAqL1xuICAgIGJ1aWxkR3JvdXBSdWxlc01hcChzdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGdyb3VwTWFwID0gbmV3IE1hcChzdGF0ZS5ncm91cEJ5Lm1hcCgocnVsZSkgPT4gW3J1bGUuZmllbGQsIHJ1bGVdKSk7XG4gICAgICAgIHRoaXMuZ3JvdXBSdWxlc1N1YmplY3QubmV4dChncm91cE1hcCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBzb3J0aW5nIHJ1bGVzIGJhc2VkIG9uIHRoZSB0YWJsZSBzdGF0ZS5cbiAgICAgKiBAcGFyYW0gc3RhdGUgVGFibGUgc3RhdGVcbiAgICAgKi9cbiAgICBidWlsZFNvcnRSdWxlc01hcChzdGF0ZSA9IHRoaXMuZ2V0VGFibGVTdGF0ZSgpKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc29ydFJ1bGVzJC5zZXQobmV3IE1hcChzdGF0ZS5zb3J0QnkuZmlsdGVyKChydWxlKSA9PiBydWxlLmZpZWxkKS5tYXAoKHJ1bGUpID0+IFtydWxlLmZpZWxkISwgcnVsZV0pKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBmaWx0ZXIgcnVsZXMgYmFzZWQgb24gdGhlIHRhYmxlIHN0YXRlLlxuICAgICAqIEBwYXJhbSBzdGF0ZSBUYWJsZSBzdGF0ZS5cbiAgICAgKi9cbiAgICBidWlsZEZpbHRlclJ1bGVzTWFwKHN0YXRlID0gdGhpcy5nZXRUYWJsZVN0YXRlKCkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWx0ZXJSdWxlcyQuc2V0KFxuICAgICAgICAgICAgc3RhdGUuZmlsdGVyQnkucmVkdWNlKChoYXNoLCBydWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5ID0gcnVsZS5maWVsZDtcbiAgICAgICAgICAgICAgICBpZiAoIWhhc2guaGFzKGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFzaC5zZXQoa2V5LCBbXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGhhc2guZ2V0KGtleSk/LnB1c2gocnVsZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGhhc2g7XG4gICAgICAgICAgICB9LCBuZXcgTWFwPHN0cmluZywgQ29sbGVjdGlvbkZpbHRlcltdPigpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnN0cnVjdHMgYmFzZSB0YWJsZSBjb25maWcuXG4gICAgICovXG4gICAgY29uc3RydWN0VGFibGVNZXRhZGF0YSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZEdyb3VwUnVsZXNNYXAoKTtcbiAgICAgICAgdGhpcy5idWlsZFNvcnRSdWxlc01hcCgpO1xuICAgICAgICB0aGlzLmJ1aWxkRmlsdGVyUnVsZXNNYXAoKTtcbiAgICB9XG59XG5cbi8qKiBAaGlkZGVuICovXG5mdW5jdGlvbiBzZXRDdXJyZW50UGFnZVRvU3RhdGUoc3RhdGU6IFRhYmxlU3RhdGUsIGN1cnJlbnRQYWdlOiBudW1iZXIpOiBUYWJsZVN0YXRlIHtcbiAgICBjb25zdCBuZXdQYWdlU3RhdGU6IENvbGxlY3Rpb25QYWdlID0geyAuLi5zdGF0ZS5wYWdlLCBjdXJyZW50UGFnZSB9O1xuICAgIHJldHVybiB7IC4uLnN0YXRlLCBwYWdlOiBuZXdQYWdlU3RhdGUgfTtcbn1cblxuLyoqIEBoaWRkZW4gKi9cbmZ1bmN0aW9uIHNldFBhZ2VTaXplVG9TdGF0ZShzdGF0ZTogVGFibGVTdGF0ZSwgcGFnZVNpemU6IG51bWJlcik6IFRhYmxlU3RhdGUge1xuICAgIGNvbnN0IG5ld1BhZ2VTdGF0ZTogQ29sbGVjdGlvblBhZ2UgPSB7IC4uLnN0YXRlLnBhZ2UsIHBhZ2VTaXplIH07XG4gICAgcmV0dXJuIHsgLi4uc3RhdGUsIHBhZ2U6IG5ld1BhZ2VTdGF0ZSB9O1xufVxuIl19
@@ -11,4 +11,4 @@ export class Table {
11
11
  this.openTableColumnSettings = new EventEmitter();
12
12
  }
13
13
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RhYmxlLWhlbHBlcnMvdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFlBQVksRUFBWSxNQUFNLGVBQWUsQ0FBQztBQWVuRSxNQUFNLE9BQWdCLEtBQUs7SUFBM0I7UUErSkksK0NBQStDO1FBQ3RDLDBCQUFxQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTlFLGlEQUFpRDtRQUN4Qyw0QkFBdUIsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVoRixnREFBZ0Q7UUFDdkMsMkJBQXNCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFL0UsaURBQWlEO1FBQ3hDLDRCQUF1QixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBVXBGLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zZWFyY2gtZmllbGQnO1xuaW1wb3J0IHsgUHJlc2V0TWFuYWdlZENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUYWJsZURhdGFTb3VyY2UgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBDb2xsZWN0aW9uRmlsdGVyIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2NvbGxlY3Rpb24tZmlsdGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uR3JvdXAgfSBmcm9tICcuL2ludGVyZmFjZXMvY29sbGVjdGlvbi1ncm91cC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29sbGVjdGlvblNvcnQgfSBmcm9tICcuL2ludGVyZmFjZXMvY29sbGVjdGlvbi1zb3J0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJsZVN0YXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3RhYmxlLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQbGF0Zm9ybVRhYmxlTWFuYWdlZFByZXNldCwgU2F2ZVJvd3NFdmVudCwgVGFibGVJbml0aWFsU3RhdGUsIFRhYmxlUm93IH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGFibGVTY3JvbGxhYmxlIH0gZnJvbSAnLi9zZXJ2aWNlcy90YWJsZS1zY3JvbGwtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi90YWJsZS1jb2x1bW4nO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGFibGU8VCA9IGFueT4gaW1wbGVtZW50cyBQcmVzZXRNYW5hZ2VkQ29tcG9uZW50PFBsYXRmb3JtVGFibGVNYW5hZ2VkUHJlc2V0PiB7XG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAgIGFic3RyYWN0IF9sb2FkUHJldmlvdXNQYWdlczogYm9vbGVhbjtcblxuICAgIGFic3RyYWN0IHBhZ2VTY3JvbGxpbmc6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBsb2FkUGFnZXNCZWZvcmU6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBwYWdlU2l6ZTogTnVsbGFibGU8bnVtYmVyPjtcblxuICAgIGFic3RyYWN0IGZyZWV6ZUNvbHVtbnNUbzogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgZnJlZXplRW5kQ29sdW1uc1RvOiBzdHJpbmc7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIGN1cnJlbnQgcHJlc2V0IGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBhYnN0cmFjdCBwcmVzZXRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8UGxhdGZvcm1UYWJsZU1hbmFnZWRQcmVzZXQ+O1xuXG4gICAgLyoqIFN1bSBvZiB3aWR0aHMgb2YgZml4ZWQgY29sdW1ucyAoc2VtYW50aWMgaGlnaGxpZ2h0aW5nLCBzZWxlY3Rpb24pICovXG4gICAgYWJzdHJhY3QgZ2V0IF9maXhlZENvbHVtbnNQYWRkaW5nKCk6IG51bWJlcjtcblxuICAgIC8qKiBGcmVlemFibGUgY29sdW1uIG5hbWVzIGFuZCB0aGVpciByZXNwZWN0aXZlIGluZGV4ZXMgKi9cbiAgICBhYnN0cmFjdCBnZXQgX2ZyZWV6YWJsZUNvbHVtbnMoKTogUmVhZG9ubHlNYXA8c3RyaW5nLCBudW1iZXI+O1xuXG4gICAgLyoqIEZyZWV6YWJsZSBjb2x1bW4gbmFtZXMgYW5kIHRoZWlyIHJlc3BlY3RpdmUgaW5kZXhlcyAqL1xuICAgIGFic3RyYWN0IGdldCBfZnJlZXphYmxlRW5kQ29sdW1ucygpOiBSZWFkb25seU1hcDxzdHJpbmcsIG51bWJlcj47XG5cbiAgICAvKiogV2lkdGggb2YgdGhlIHRhYmxlIGVsZW1lbnQgaW4gcHggKi9cbiAgICBhYnN0cmFjdCBnZXQgX3RhYmxlV2lkdGhQeCgpOiBudW1iZXI7XG5cbiAgICBhYnN0cmFjdCBnZXQgbG9hZGluZ1N0YXRlKCk6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBpbml0aWFsU3RhdGU6IFRhYmxlSW5pdGlhbFN0YXRlIHwgbnVsbDtcblxuICAgIC8qKiBUYWJsZSBjb2x1bW5zIGRlZmluaXRpb24gbGlzdCAqL1xuICAgIGFic3RyYWN0IHJlYWRvbmx5IHRhYmxlQ29sdW1uc1N0cmVhbTogT2JzZXJ2YWJsZTxUYWJsZUNvbHVtbltdPjtcblxuICAgIGFic3RyYWN0IHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcjtcblxuICAgIGFic3RyYWN0IHJlYWRvbmx5IHRhYmxlQ29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgdGFibGVTY3JvbGxhYmxlOiBUYWJsZVNjcm9sbGFibGU7XG5cbiAgICBhYnN0cmFjdCBfdGFibGVSb3dzVmlzaWJsZTogVGFibGVSb3c8VD5bXTtcblxuICAgIGFic3RyYWN0IF90YWJsZVJvd3M6IFRhYmxlUm93PFQ+W107XG5cbiAgICBhYnN0cmFjdCBfdGFibGVSb3dzSW5WaWV3UG9ydFBsYWNlaG9sZGVyOiBudW1iZXJbXTtcblxuICAgIC8qKiBHZXQgdGFibGUgc3RhdGUgKi9cbiAgICBhYnN0cmFjdCBnZXRUYWJsZVN0YXRlKCk6IFRhYmxlU3RhdGU7XG5cbiAgICAvKiogU2V0IHRhYmxlIHN0YXRlICovXG4gICAgYWJzdHJhY3Qgc2V0VGFibGVTdGF0ZSh0YWJsZVN0YXRlOiBUYWJsZVN0YXRlKTogdm9pZDtcblxuICAgIC8qKiBHZXQgdGFibGUgY29sdW1ucyBkZWZpbml0aW9uIGxpc3QgKi9cbiAgICBhYnN0cmFjdCBnZXRUYWJsZUNvbHVtbnMoKTogVGFibGVDb2x1bW5bXTtcblxuICAgIC8qKiBHZXQgYSBsaXN0IG9mIHZpc2libGUgdGFibGUgY29sdW1ucy4gKi9cbiAgICBhYnN0cmFjdCBnZXRWaXNpYmxlVGFibGVDb2x1bW5zKCk6IFRhYmxlQ29sdW1uW107XG5cbiAgICAvKiogU2V0IFNvcnRpbmcgcnVsZXMgKi9cbiAgICBhYnN0cmFjdCBzb3J0KHNvcnRSdWxlczogQ29sbGVjdGlvblNvcnRbXSk6IHZvaWQ7XG5cbiAgICAvKiogQWRkIFNvcnRpbmcgcnVsZXMgdG8gdGhlIGV4aXN0aW5nIG9uZXMgKi9cbiAgICBhYnN0cmFjdCBhZGRTb3J0KHNvcnRSdWxlczogQ29sbGVjdGlvblNvcnRbXSk6IHZvaWQ7XG5cbiAgICAvKiogU2V0IEZpbHRlcmluZyBydWxlcyAqL1xuICAgIGFic3RyYWN0IGZpbHRlcihmaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdKTogdm9pZDtcblxuICAgIC8qKiBBZGQgRmlsdGVyIHJ1bGVzIHRvIHRoZSBleGlzdGluZyBvbmVzICovXG4gICAgYWJzdHJhY3QgYWRkRmlsdGVyKGZpbHRlclJ1bGVzOiBDb2xsZWN0aW9uRmlsdGVyW10pOiB2b2lkO1xuXG4gICAgLyoqIFNldCBncm91cGluZyBydWxlcyAqL1xuICAgIGFic3RyYWN0IGdyb3VwKGdyb3VwUnVsZXM6IENvbGxlY3Rpb25Hcm91cFtdKTogdm9pZDtcblxuICAgIC8qKiBBZGQgR3JvdXAgcnVsZXMgdG8gdGhlIGV4aXN0aW5nIG9uZXMgKi9cbiAgICBhYnN0cmFjdCBhZGRHcm91cChncm91cFJ1bGVzOiBDb2xsZWN0aW9uR3JvdXBbXSk6IHZvaWQ7XG5cbiAgICAvKiogU2V0IHRhYmxlIGNvbHVtbnMgKi9cbiAgICBhYnN0cmFjdCBzZXRDb2x1bW5zKGNvbHVtbnM6IHN0cmluZ1tdKTogdm9pZDtcblxuICAgIC8qKiBUb2dnbGUgcm93IGNoZWNrZWQgc3RhdGUuICovXG4gICAgYWJzdHJhY3QgdG9nZ2xlU2VsZWN0YWJsZVJvdyhyb3dJbmRleDogbnVtYmVyKTogdm9pZDtcblxuICAgIC8qKiBGcmVlemUgdGFibGUgY29sdW1ucyB0byBpbmNsdWRpbmcgKi9cbiAgICBhYnN0cmFjdCBmcmVlemVUb0NvbHVtbihjb2x1bW5LZXk6IHN0cmluZywgZW5kPzogYm9vbGVhbik6IHZvaWQ7XG5cbiAgICAvKiogVW5mcmVlemUgY29sdW1uICovXG4gICAgYWJzdHJhY3QgdW5mcmVlemUoY29sdW1uS2V5OiBzdHJpbmcsIGVuZD86IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIFNlYXJjaCBpbiBhbGwgdGFibGUgY29sdW1ucyAqL1xuICAgIGFic3RyYWN0IHNlYXJjaChzZWFyY2hJbnB1dDogU2VhcmNoSW5wdXQpOiB2b2lkO1xuXG4gICAgLyoqIFRvb2xiYXIgU29ydCBTZXR0aW5ncyBidXR0b24gdmlzaWJpbGl0eSAqL1xuICAgIGFic3RyYWN0IHNob3dTb3J0U2V0dGluZ3NJblRvb2xiYXIoc2hvd1NvcnRTZXR0aW5nczogYm9vbGVhbik6IHZvaWQ7XG5cbiAgICAvKiogVG9vbGJhciBGaWx0ZXIgU2V0dGluZ3MgYnV0dG9uIHZpc2liaWxpdHkgKi9cbiAgICBhYnN0cmFjdCBzaG93RmlsdGVyU2V0dGluZ3NJblRvb2xiYXIoc2hvd0ZpbHRlclNldHRpbmdzOiBib29sZWFuKTogdm9pZDtcblxuICAgIC8qKiBUb29sYmFyIEdyb3VwIFNldHRpbmdzIGJ1dHRvbiB2aXNpYmlsaXR5ICovXG4gICAgYWJzdHJhY3Qgc2hvd0dyb3VwU2V0dGluZ3NJblRvb2xiYXIoc2hvd0dyb3VwU2V0dGluZ3M6IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIFRvb2xiYXIgQ29sdW1ucyBTZXR0aW5ncyBidXR0b24gdmlzaWJpbGl0eSAqL1xuICAgIGFic3RyYWN0IHNob3dDb2x1bW5TZXR0aW5nc0luVG9vbGJhcihzaG93Q29sdW1uU2V0dGluZ3M6IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIERpc2FibGUgZmlsdGVyaW5nIGJ5IGhlYWRlciBjb2x1bW4gbWVudSAqL1xuICAgIGFic3RyYWN0IHNldEhlYWRlckNvbHVtbkZpbHRlcmluZ0Rpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdm9pZDtcblxuICAgIC8qKiBTZXQgY3VycmVudCBwYWdlICovXG4gICAgYWJzdHJhY3Qgc2V0Q3VycmVudFBhZ2UoY3VycmVudFBhZ2U6IG51bWJlcik6IHZvaWQ7XG5cbiAgICAvKiogR2V0cyB0aGUgbWF4IGFsbG93ZWQgd2lkdGggZm9yIGFsbCBmcmVlemFibGUgY29sdW1ucyAqL1xuICAgIGFic3RyYWN0IGdldE1heEFsbG93ZWRGcmVlemFibGVDb2x1bW5zV2lkdGgoKTogbnVtYmVyO1xuXG4gICAgLyoqIEdldCB0YWJsZSBkYXRhIHNvdXJjZSAqL1xuICAgIGFic3RyYWN0IGdldERhdGFTb3VyY2UoKTogVGFibGVEYXRhU291cmNlPFQ+O1xuXG4gICAgLyoqIE1hbnVhbGx5IHRyaWdnZXJzIGNvbHVtbnMgd2lkdGggcmVjYWxjdWxhdGlvbiAqL1xuICAgIGFic3RyYWN0IHJlY2FsY3VsYXRlVGFibGVDb2x1bW5XaWR0aCgpOiB2b2lkO1xuXG4gICAgLyoqIEZldGNoIGRhdGEgc291cmNlIGRhdGEuICovXG4gICAgYWJzdHJhY3QgZmV0Y2goKTogdm9pZDtcblxuICAgIC8qKiBBZGRzIGVtcHR5IHJvdyBmb3IgZWRpdGluZyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSByb3dzIGFycmF5LiAqL1xuICAgIGFic3RyYWN0IGFkZFJvdygpOiB2b2lkO1xuXG4gICAgLyoqIEVtaXRzIHNhdmUgZXZlbnQgYW5kIHJlc2V0cyBlZGl0YWJsZSByb3dzIGFycmF5LiAqL1xuICAgIGFic3RyYWN0IHNhdmVSb3dzKCk6IHZvaWQ7XG5cbiAgICAvKiogQ2FuY2VscyBlZGl0aW5nIGFuZCBkaXNjYXJkcyBuZXdseSBhZGRlZCByb3dzICovXG4gICAgYWJzdHJhY3QgY2FuY2VsRWRpdGluZygpOiB2b2lkO1xuXG4gICAgLyoqIEV4cGFuZCBhbGwgdGhlIHJvd3Mgb2YgdGhlIHRhYmxlICovXG4gICAgYWJzdHJhY3QgZXhwYW5kQWxsKCk6IHZvaWQ7XG5cbiAgICAvKiogQ29sbGFwc2UgYWxsIHRoZSByb3dzIG9mIHRoZSB0YWJsZSAqL1xuICAgIGFic3RyYWN0IGNvbGxhcHNlQWxsKCk6IHZvaWQ7XG5cbiAgICAvKiogU2V0cyBzZWxlY3RlZCBwcmVzZXQuICovXG4gICAgYWJzdHJhY3Qgc2V0UHJlc2V0KGRhdGE6IFBsYXRmb3JtVGFibGVNYW5hZ2VkUHJlc2V0KTogdm9pZDtcblxuICAgIC8qKiBSZXR1cm5zIGN1cnJlbnQgcHJlc2V0LiAqL1xuICAgIGFic3RyYWN0IGdldEN1cnJlbnRQcmVzZXQoKTogUGxhdGZvcm1UYWJsZU1hbmFnZWRQcmVzZXQ7XG5cbiAgICBhYnN0cmFjdCBnZXRSb3dzSW5WaWV3cG9ydCgpOiBudW1iZXJbXTtcblxuICAgIGFic3RyYWN0IHNldFJvd3NJblZpZXdwb3J0KHN0YXJ0SW5kZXg6IG51bWJlciwgbGVuZ3RoOiBudW1iZXIpOiB2b2lkO1xuXG4gICAgYWJzdHJhY3QgdG9nZ2xlRXhwYW5kYWJsZVRhYmxlUm93KHJvdzogVGFibGVSb3c8VD4sIGZvcmNlRmV0Y2g/OiBib29sZWFuKTtcblxuICAgIGFic3RyYWN0IG9uVGFibGVSb3dzQ2hhbmdlZCgpOiB2b2lkO1xuXG4gICAgYWJzdHJhY3QgcmVmcmVzaERuZExpc3QoKTogdm9pZDtcblxuICAgIGFic3RyYWN0IGNsZWFyVGFibGVSb3dzKCk6IHZvaWQ7XG5cbiAgICAvKiogVG9vbGJhciBTb3J0IFNldHRpbmdzIGJ1dHRvbiBjbGljayBldmVudCAqL1xuICAgIHJlYWRvbmx5IG9wZW5UYWJsZVNvcnRTZXR0aW5nczogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIFRvb2xiYXIgRmlsdGVyIFNldHRpbmdzIGJ1dHRvbiBjbGljayBldmVudCAqL1xuICAgIHJlYWRvbmx5IG9wZW5UYWJsZUZpbHRlclNldHRpbmdzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogVG9vbGJhciBHcm91cCBTZXR0aW5ncyBidXR0b24gY2xpY2sgZXZlbnQgKi9cbiAgICByZWFkb25seSBvcGVuVGFibGVHcm91cFNldHRpbmdzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogVG9vbGJhciBDb2x1bW4gU2V0dGluZ3MgYnV0dG9uIGNsaWNrIGV2ZW50ICovXG4gICAgcmVhZG9ubHkgb3BlblRhYmxlQ29sdW1uU2V0dGluZ3M6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIGVtcHR5IHJvdyBhZGRlZC4gKi9cbiAgICByZWFkb25seSBlbXB0eVJvd0FkZGVkOiBFdmVudEVtaXR0ZXI8dm9pZD47XG5cbiAgICAvKiogRXZlbnQgZmlyZWQgd2hlbiBzYXZlIGJ1dHRvbiBwcmVzc2VkLiAqL1xuICAgIHJlYWRvbmx5IHNhdmU6IEV2ZW50RW1pdHRlcjxTYXZlUm93c0V2ZW50PFQ+PjtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIGNhbmNlbCBidXR0b24gcHJlc3NlZC4gKi9cbiAgICByZWFkb25seSBjYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPjtcbn1cbiJdfQ==
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RhYmxlLWhlbHBlcnMvdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFlBQVksRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFlM0UsTUFBTSxPQUFnQixLQUFLO0lBQTNCO1FBaUtJLCtDQUErQztRQUN0QywwQkFBcUIsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUU5RSxpREFBaUQ7UUFDeEMsNEJBQXVCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEYsZ0RBQWdEO1FBQ3ZDLDJCQUFzQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRS9FLGlEQUFpRDtRQUN4Qyw0QkFBdUIsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQVVwRixDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zZWFyY2gtZmllbGQnO1xuaW1wb3J0IHsgUHJlc2V0TWFuYWdlZENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUYWJsZURhdGFTb3VyY2UgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBDb2xsZWN0aW9uRmlsdGVyIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2NvbGxlY3Rpb24tZmlsdGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uR3JvdXAgfSBmcm9tICcuL2ludGVyZmFjZXMvY29sbGVjdGlvbi1ncm91cC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29sbGVjdGlvblNvcnQgfSBmcm9tICcuL2ludGVyZmFjZXMvY29sbGVjdGlvbi1zb3J0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJsZVN0YXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3RhYmxlLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQbGF0Zm9ybVRhYmxlTWFuYWdlZFByZXNldCwgU2F2ZVJvd3NFdmVudCwgVGFibGVJbml0aWFsU3RhdGUsIFRhYmxlUm93IH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGFibGVTY3JvbGxhYmxlIH0gZnJvbSAnLi9zZXJ2aWNlcy90YWJsZS1zY3JvbGwtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi90YWJsZS1jb2x1bW4nO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGFibGU8VCA9IGFueT4gaW1wbGVtZW50cyBQcmVzZXRNYW5hZ2VkQ29tcG9uZW50PFBsYXRmb3JtVGFibGVNYW5hZ2VkUHJlc2V0PiB7XG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAgIGFic3RyYWN0IF9sb2FkUHJldmlvdXNQYWdlczogYm9vbGVhbjtcblxuICAgIGFic3RyYWN0IHBhZ2VTY3JvbGxpbmc6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBsb2FkUGFnZXNCZWZvcmU6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBwYWdlU2l6ZTogTnVsbGFibGU8bnVtYmVyPjtcblxuICAgIGFic3RyYWN0IGZyZWV6ZUNvbHVtbnNUbzogc3RyaW5nO1xuXG4gICAgYWJzdHJhY3QgZnJlZXplRW5kQ29sdW1uc1RvOiBzdHJpbmc7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIGN1cnJlbnQgcHJlc2V0IGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBhYnN0cmFjdCBwcmVzZXRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8UGxhdGZvcm1UYWJsZU1hbmFnZWRQcmVzZXQ+O1xuXG4gICAgLyoqIFN1bSBvZiB3aWR0aHMgb2YgZml4ZWQgY29sdW1ucyAoc2VtYW50aWMgaGlnaGxpZ2h0aW5nLCBzZWxlY3Rpb24pICovXG4gICAgYWJzdHJhY3QgZ2V0IF9maXhlZENvbHVtbnNQYWRkaW5nKCk6IG51bWJlcjtcblxuICAgIC8qKiBGcmVlemFibGUgY29sdW1uIG5hbWVzIGFuZCB0aGVpciByZXNwZWN0aXZlIGluZGV4ZXMgKi9cbiAgICBhYnN0cmFjdCBnZXQgX2ZyZWV6YWJsZUNvbHVtbnMoKTogUmVhZG9ubHlNYXA8c3RyaW5nLCBudW1iZXI+O1xuXG4gICAgLyoqIEZyZWV6YWJsZSBjb2x1bW4gbmFtZXMgYW5kIHRoZWlyIHJlc3BlY3RpdmUgaW5kZXhlcyAqL1xuICAgIGFic3RyYWN0IGdldCBfZnJlZXphYmxlRW5kQ29sdW1ucygpOiBSZWFkb25seU1hcDxzdHJpbmcsIG51bWJlcj47XG5cbiAgICAvKiogV2lkdGggb2YgdGhlIHRhYmxlIGVsZW1lbnQgaW4gcHggKi9cbiAgICBhYnN0cmFjdCBnZXQgX3RhYmxlV2lkdGhQeCgpOiBudW1iZXI7XG5cbiAgICBhYnN0cmFjdCBnZXQgbG9hZGluZ1N0YXRlKCk6IGJvb2xlYW47XG5cbiAgICBhYnN0cmFjdCBpbml0aWFsU3RhdGU6IFRhYmxlSW5pdGlhbFN0YXRlIHwgbnVsbDtcblxuICAgIC8qKiBUYWJsZSBjb2x1bW5zIGRlZmluaXRpb24gbGlzdCAqL1xuICAgIGFic3RyYWN0IHJlYWRvbmx5IHRhYmxlQ29sdW1uc1N0cmVhbTogT2JzZXJ2YWJsZTxUYWJsZUNvbHVtbltdPjtcblxuICAgIGFic3RyYWN0IHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcjtcblxuICAgIGFic3RyYWN0IHJlYWRvbmx5IHRhYmxlQ29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gICAgYWJzdHJhY3QgcmVhZG9ubHkgdGFibGVTY3JvbGxhYmxlOiBUYWJsZVNjcm9sbGFibGU7XG5cbiAgICBhYnN0cmFjdCBfdGFibGVSb3dzVmlzaWJsZTogVGFibGVSb3c8VD5bXTtcblxuICAgIGFic3RyYWN0IF90YWJsZVJvd3M6IFRhYmxlUm93PFQ+W107XG5cbiAgICBhYnN0cmFjdCBsb2FkZWRSb3dzJDogU2lnbmFsPG51bWJlcj47XG5cbiAgICBhYnN0cmFjdCBfdGFibGVSb3dzSW5WaWV3UG9ydFBsYWNlaG9sZGVyOiBudW1iZXJbXTtcblxuICAgIC8qKiBHZXQgdGFibGUgc3RhdGUgKi9cbiAgICBhYnN0cmFjdCBnZXRUYWJsZVN0YXRlKCk6IFRhYmxlU3RhdGU7XG5cbiAgICAvKiogU2V0IHRhYmxlIHN0YXRlICovXG4gICAgYWJzdHJhY3Qgc2V0VGFibGVTdGF0ZSh0YWJsZVN0YXRlOiBUYWJsZVN0YXRlKTogdm9pZDtcblxuICAgIC8qKiBHZXQgdGFibGUgY29sdW1ucyBkZWZpbml0aW9uIGxpc3QgKi9cbiAgICBhYnN0cmFjdCBnZXRUYWJsZUNvbHVtbnMoKTogVGFibGVDb2x1bW5bXTtcblxuICAgIC8qKiBHZXQgYSBsaXN0IG9mIHZpc2libGUgdGFibGUgY29sdW1ucy4gKi9cbiAgICBhYnN0cmFjdCBnZXRWaXNpYmxlVGFibGVDb2x1bW5zKCk6IFRhYmxlQ29sdW1uW107XG5cbiAgICAvKiogU2V0IFNvcnRpbmcgcnVsZXMgKi9cbiAgICBhYnN0cmFjdCBzb3J0KHNvcnRSdWxlczogQ29sbGVjdGlvblNvcnRbXSk6IHZvaWQ7XG5cbiAgICAvKiogQWRkIFNvcnRpbmcgcnVsZXMgdG8gdGhlIGV4aXN0aW5nIG9uZXMgKi9cbiAgICBhYnN0cmFjdCBhZGRTb3J0KHNvcnRSdWxlczogQ29sbGVjdGlvblNvcnRbXSk6IHZvaWQ7XG5cbiAgICAvKiogU2V0IEZpbHRlcmluZyBydWxlcyAqL1xuICAgIGFic3RyYWN0IGZpbHRlcihmaWx0ZXJSdWxlczogQ29sbGVjdGlvbkZpbHRlcltdKTogdm9pZDtcblxuICAgIC8qKiBBZGQgRmlsdGVyIHJ1bGVzIHRvIHRoZSBleGlzdGluZyBvbmVzICovXG4gICAgYWJzdHJhY3QgYWRkRmlsdGVyKGZpbHRlclJ1bGVzOiBDb2xsZWN0aW9uRmlsdGVyW10pOiB2b2lkO1xuXG4gICAgLyoqIFNldCBncm91cGluZyBydWxlcyAqL1xuICAgIGFic3RyYWN0IGdyb3VwKGdyb3VwUnVsZXM6IENvbGxlY3Rpb25Hcm91cFtdKTogdm9pZDtcblxuICAgIC8qKiBBZGQgR3JvdXAgcnVsZXMgdG8gdGhlIGV4aXN0aW5nIG9uZXMgKi9cbiAgICBhYnN0cmFjdCBhZGRHcm91cChncm91cFJ1bGVzOiBDb2xsZWN0aW9uR3JvdXBbXSk6IHZvaWQ7XG5cbiAgICAvKiogU2V0IHRhYmxlIGNvbHVtbnMgKi9cbiAgICBhYnN0cmFjdCBzZXRDb2x1bW5zKGNvbHVtbnM6IHN0cmluZ1tdKTogdm9pZDtcblxuICAgIC8qKiBUb2dnbGUgcm93IGNoZWNrZWQgc3RhdGUuICovXG4gICAgYWJzdHJhY3QgdG9nZ2xlU2VsZWN0YWJsZVJvdyhyb3dJbmRleDogbnVtYmVyKTogdm9pZDtcblxuICAgIC8qKiBGcmVlemUgdGFibGUgY29sdW1ucyB0byBpbmNsdWRpbmcgKi9cbiAgICBhYnN0cmFjdCBmcmVlemVUb0NvbHVtbihjb2x1bW5LZXk6IHN0cmluZywgZW5kPzogYm9vbGVhbik6IHZvaWQ7XG5cbiAgICAvKiogVW5mcmVlemUgY29sdW1uICovXG4gICAgYWJzdHJhY3QgdW5mcmVlemUoY29sdW1uS2V5OiBzdHJpbmcsIGVuZD86IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIFNlYXJjaCBpbiBhbGwgdGFibGUgY29sdW1ucyAqL1xuICAgIGFic3RyYWN0IHNlYXJjaChzZWFyY2hJbnB1dDogU2VhcmNoSW5wdXQpOiB2b2lkO1xuXG4gICAgLyoqIFRvb2xiYXIgU29ydCBTZXR0aW5ncyBidXR0b24gdmlzaWJpbGl0eSAqL1xuICAgIGFic3RyYWN0IHNob3dTb3J0U2V0dGluZ3NJblRvb2xiYXIoc2hvd1NvcnRTZXR0aW5nczogYm9vbGVhbik6IHZvaWQ7XG5cbiAgICAvKiogVG9vbGJhciBGaWx0ZXIgU2V0dGluZ3MgYnV0dG9uIHZpc2liaWxpdHkgKi9cbiAgICBhYnN0cmFjdCBzaG93RmlsdGVyU2V0dGluZ3NJblRvb2xiYXIoc2hvd0ZpbHRlclNldHRpbmdzOiBib29sZWFuKTogdm9pZDtcblxuICAgIC8qKiBUb29sYmFyIEdyb3VwIFNldHRpbmdzIGJ1dHRvbiB2aXNpYmlsaXR5ICovXG4gICAgYWJzdHJhY3Qgc2hvd0dyb3VwU2V0dGluZ3NJblRvb2xiYXIoc2hvd0dyb3VwU2V0dGluZ3M6IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIFRvb2xiYXIgQ29sdW1ucyBTZXR0aW5ncyBidXR0b24gdmlzaWJpbGl0eSAqL1xuICAgIGFic3RyYWN0IHNob3dDb2x1bW5TZXR0aW5nc0luVG9vbGJhcihzaG93Q29sdW1uU2V0dGluZ3M6IGJvb2xlYW4pOiB2b2lkO1xuXG4gICAgLyoqIERpc2FibGUgZmlsdGVyaW5nIGJ5IGhlYWRlciBjb2x1bW4gbWVudSAqL1xuICAgIGFic3RyYWN0IHNldEhlYWRlckNvbHVtbkZpbHRlcmluZ0Rpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdm9pZDtcblxuICAgIC8qKiBTZXQgY3VycmVudCBwYWdlICovXG4gICAgYWJzdHJhY3Qgc2V0Q3VycmVudFBhZ2UoY3VycmVudFBhZ2U6IG51bWJlcik6IHZvaWQ7XG5cbiAgICAvKiogR2V0cyB0aGUgbWF4IGFsbG93ZWQgd2lkdGggZm9yIGFsbCBmcmVlemFibGUgY29sdW1ucyAqL1xuICAgIGFic3RyYWN0IGdldE1heEFsbG93ZWRGcmVlemFibGVDb2x1bW5zV2lkdGgoKTogbnVtYmVyO1xuXG4gICAgLyoqIEdldCB0YWJsZSBkYXRhIHNvdXJjZSAqL1xuICAgIGFic3RyYWN0IGdldERhdGFTb3VyY2UoKTogVGFibGVEYXRhU291cmNlPFQ+O1xuXG4gICAgLyoqIE1hbnVhbGx5IHRyaWdnZXJzIGNvbHVtbnMgd2lkdGggcmVjYWxjdWxhdGlvbiAqL1xuICAgIGFic3RyYWN0IHJlY2FsY3VsYXRlVGFibGVDb2x1bW5XaWR0aCgpOiB2b2lkO1xuXG4gICAgLyoqIEZldGNoIGRhdGEgc291cmNlIGRhdGEuICovXG4gICAgYWJzdHJhY3QgZmV0Y2goKTogdm9pZDtcblxuICAgIC8qKiBBZGRzIGVtcHR5IHJvdyBmb3IgZWRpdGluZyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSByb3dzIGFycmF5LiAqL1xuICAgIGFic3RyYWN0IGFkZFJvdygpOiB2b2lkO1xuXG4gICAgLyoqIEVtaXRzIHNhdmUgZXZlbnQgYW5kIHJlc2V0cyBlZGl0YWJsZSByb3dzIGFycmF5LiAqL1xuICAgIGFic3RyYWN0IHNhdmVSb3dzKCk6IHZvaWQ7XG5cbiAgICAvKiogQ2FuY2VscyBlZGl0aW5nIGFuZCBkaXNjYXJkcyBuZXdseSBhZGRlZCByb3dzICovXG4gICAgYWJzdHJhY3QgY2FuY2VsRWRpdGluZygpOiB2b2lkO1xuXG4gICAgLyoqIEV4cGFuZCBhbGwgdGhlIHJvd3Mgb2YgdGhlIHRhYmxlICovXG4gICAgYWJzdHJhY3QgZXhwYW5kQWxsKCk6IHZvaWQ7XG5cbiAgICAvKiogQ29sbGFwc2UgYWxsIHRoZSByb3dzIG9mIHRoZSB0YWJsZSAqL1xuICAgIGFic3RyYWN0IGNvbGxhcHNlQWxsKCk6IHZvaWQ7XG5cbiAgICAvKiogU2V0cyBzZWxlY3RlZCBwcmVzZXQuICovXG4gICAgYWJzdHJhY3Qgc2V0UHJlc2V0KGRhdGE6IFBsYXRmb3JtVGFibGVNYW5hZ2VkUHJlc2V0KTogdm9pZDtcblxuICAgIC8qKiBSZXR1cm5zIGN1cnJlbnQgcHJlc2V0LiAqL1xuICAgIGFic3RyYWN0IGdldEN1cnJlbnRQcmVzZXQoKTogUGxhdGZvcm1UYWJsZU1hbmFnZWRQcmVzZXQ7XG5cbiAgICBhYnN0cmFjdCBnZXRSb3dzSW5WaWV3cG9ydCgpOiBudW1iZXJbXTtcblxuICAgIGFic3RyYWN0IHNldFJvd3NJblZpZXdwb3J0KHN0YXJ0SW5kZXg6IG51bWJlciwgbGVuZ3RoOiBudW1iZXIpOiB2b2lkO1xuXG4gICAgYWJzdHJhY3QgdG9nZ2xlRXhwYW5kYWJsZVRhYmxlUm93KHJvdzogVGFibGVSb3c8VD4sIGZvcmNlRmV0Y2g/OiBib29sZWFuKTtcblxuICAgIGFic3RyYWN0IG9uVGFibGVSb3dzQ2hhbmdlZCgpOiB2b2lkO1xuXG4gICAgYWJzdHJhY3QgcmVmcmVzaERuZExpc3QoKTogdm9pZDtcblxuICAgIGFic3RyYWN0IGNsZWFyVGFibGVSb3dzKCk6IHZvaWQ7XG5cbiAgICAvKiogVG9vbGJhciBTb3J0IFNldHRpbmdzIGJ1dHRvbiBjbGljayBldmVudCAqL1xuICAgIHJlYWRvbmx5IG9wZW5UYWJsZVNvcnRTZXR0aW5nczogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIFRvb2xiYXIgRmlsdGVyIFNldHRpbmdzIGJ1dHRvbiBjbGljayBldmVudCAqL1xuICAgIHJlYWRvbmx5IG9wZW5UYWJsZUZpbHRlclNldHRpbmdzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogVG9vbGJhciBHcm91cCBTZXR0aW5ncyBidXR0b24gY2xpY2sgZXZlbnQgKi9cbiAgICByZWFkb25seSBvcGVuVGFibGVHcm91cFNldHRpbmdzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogVG9vbGJhciBDb2x1bW4gU2V0dGluZ3MgYnV0dG9uIGNsaWNrIGV2ZW50ICovXG4gICAgcmVhZG9ubHkgb3BlblRhYmxlQ29sdW1uU2V0dGluZ3M6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIGVtcHR5IHJvdyBhZGRlZC4gKi9cbiAgICByZWFkb25seSBlbXB0eVJvd0FkZGVkOiBFdmVudEVtaXR0ZXI8dm9pZD47XG5cbiAgICAvKiogRXZlbnQgZmlyZWQgd2hlbiBzYXZlIGJ1dHRvbiBwcmVzc2VkLiAqL1xuICAgIHJlYWRvbmx5IHNhdmU6IEV2ZW50RW1pdHRlcjxTYXZlUm93c0V2ZW50PFQ+PjtcblxuICAgIC8qKiBFdmVudCBmaXJlZCB3aGVuIGNhbmNlbCBidXR0b24gcHJlc3NlZC4gKi9cbiAgICByZWFkb25seSBjYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPjtcbn1cbiJdfQ==
@@ -46,7 +46,7 @@ export class ManageVariantsDialogComponent {
46
46
  this.dialog.close(this._variants);
47
47
  }
48
48
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ManageVariantsDialogComponent, deps: [{ token: i1.DialogRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: ManageVariantsDialogComponent, isStandalone: true, selector: "fdp-manage-variants-dialog", ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header-1\" fd-title>\n {{ 'platformVariantManagement.manageViews' | fdTranslate }}\n </h1>\n </fd-dialog-header>\n <fd-dialog-body>\n <fdp-table [dataSource]=\"_source\" [noVerticalBorders]=\"true\" class=\"fd-variant-management__table\">\n <fdp-column name=\"favourite\" key=\"favourite\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fd-icon\n class=\"fd-variant-management__favourite-state\"\n [class.fd-variant-management__favourite-state--active]=\"item.favourite\"\n [ariaLabel]=\"'platformVariantManagement.markAsFavourite' | fdTranslate\"\n tabindex=\"0\"\n (click)=\"_markAsFavourite(item)\"\n glyph=\"favorite\"\n ></fd-icon>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column [label]=\"'platformVariantManagement.view' | fdTranslate\" name=\"name\" key=\"name\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n @if (!item.readonly) {\n <fdp-input [(ngModel)]=\"item.name\"></fdp-input>\n } @else {\n {{ item.name }}\n }\n </fdp-table-cell>\n </fdp-column>\n <fdp-column [label]=\"'platformVariantManagement.sharing' | fdTranslate\" name=\"access\" key=\"access\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n {{\n (item.access === 'public'\n ? 'platformVariantManagement.access.public'\n : 'platformVariantManagement.access.private'\n ) | fdTranslate\n }}\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.default' | fdTranslate\"\n name=\"isDefault\"\n key=\"isDefault\"\n align=\"center\"\n >\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fd-radio-button\n [value]=\"true\"\n [id]=\"'radio-' + item.id\"\n name=\"is-variant-default\"\n [(ngModel)]=\"item.isDefault\"\n ></fd-radio-button>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.applyAutomatically' | fdTranslate\"\n name=\"applyAutomatically\"\n key=\"applyAutomatically\"\n align=\"center\"\n >\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fdp-checkbox\n class=\"fd-variant-management__centered-checkbox\"\n [standalone]=\"true\"\n name=\"applyAutomatically\"\n [(ngModel)]=\"item.applyAutomatically\"\n ></fdp-checkbox>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.createdBy' | fdTranslate\"\n name=\"createdBy\"\n key=\"createdBy\"\n ></fdp-column>\n <fdp-column name=\"actions\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n @if (!item.readonly) {\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [title]=\"'platformVariantManagement.removeVariant' | fdTranslate\"\n (click)=\"_removeVariant(item)\"\n ></button>\n }\n </fdp-table-cell>\n </fdp-column>\n </fdp-table>\n </fd-dialog-body>\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'platformVariantManagement.save' | fdTranslate\"\n (click)=\"_saveVariants()\"\n ariaLabel=\"Interested Emphasized\"\n ></fd-button-bar>\n <fd-button-bar\n [label]=\"'platformVariantManagement.cancel' | fdTranslate\"\n (click)=\"dialog.dismiss('Cancel')\"\n [ariaLabel]=\"'platformVariantManagement.cancel' | fdTranslate\"\n ></fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", dependencies: [{ kind: "component", type: DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title], span[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: TableComponent, selector: "fdp-table", inputs: ["name", "id", "enableDragResize", "fixed", "freezeColumnsTo", "freezeEndColumnsTo", "pageScrolling", "pageSize", "pageScrollingThreshold", "bodyHeight", "emptyTableMessage", "noVisibleColumnsMessage", "noHorizontalBorders", "noVerticalBorders", "noBorders", "noBodyBorders", "noOuterBorders", "noBorderX", "noBorderY", "relationKey", "expandedStateKey", "hasChildrenKey", "rowNavigatable", "highlightNavigatedRow", "rowsActivable", "selectedKey", "selectableKey", "trackBy", "rowComparator", "rowsClass", "editableRowSkeleton", "expandOnInit", "rowHeight", "loadPagesBefore", "selectionMode", "enableTristateMode", "semanticHighlighting", "forceCheckedAllState", "ariaLabelledBy", "nonFrozenColumnsMinWidth", "loading"], outputs: ["presetChanged", "rowSelectionChange", "sortChange", "filterChange", "groupChange", "columnsChange", "pageChange", "columnFreeze", "rowToggleOpenState", "rowActivate", "rowNavigate", "emptyRowAdded", "save", "cancel", "tableScrolled", "tableRowsSet", "allRowsExpanded", "allRowsCollapsed", "cellFocused"] }, { kind: "directive", type: TableInitialStateDirective, selector: "[fdpTableInitialState], fdp-table", inputs: ["initialVisibleColumns", "initialSortBy", "initialFilterBy", "initialGroupBy", "initialPage", "state"] }, { kind: "component", type: TableColumnComponent, selector: "fdp-column", inputs: ["name", "key", "label", "align", "sortable", "filterable", "visible", "dataType", "groupable", "freezable", "endFreezable", "width", "noWrap", "applyText", "role"] }, { kind: "directive", type: FdpCellDef, selector: "[fdpCellDef]", inputs: ["fdpCellDefAs"] }, { kind: "directive", type: FdpTableCell, selector: "fdp-table-cell" }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: InputComponent, selector: "fdp-input", inputs: ["type", "required", "value"], outputs: ["focusChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: RadioButtonComponent, selector: "fd-radio-button", inputs: ["ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "title", "tabIndex", "state", "disabled", "selectedValue", "name", "id", "value", "required", "standalone"] }, { kind: "component", type: CheckboxComponent, selector: "fdp-checkbox", inputs: ["title", "label", "tristate", "checked", "tristateSelectable", "values", "standalone", "displayOnly"], outputs: ["checkedChange"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: ManageVariantsDialogComponent, isStandalone: true, selector: "fdp-manage-variants-dialog", ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header-1\" fd-title>\n {{ 'platformVariantManagement.manageViews' | fdTranslate }}\n </h1>\n </fd-dialog-header>\n <fd-dialog-body>\n <fdp-table [dataSource]=\"_source\" [noVerticalBorders]=\"true\" class=\"fd-variant-management__table\">\n <fdp-column name=\"favourite\" key=\"favourite\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fd-icon\n class=\"fd-variant-management__favourite-state\"\n [class.fd-variant-management__favourite-state--active]=\"item.favourite\"\n [ariaLabel]=\"'platformVariantManagement.markAsFavourite' | fdTranslate\"\n tabindex=\"0\"\n (click)=\"_markAsFavourite(item)\"\n glyph=\"favorite\"\n ></fd-icon>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column [label]=\"'platformVariantManagement.view' | fdTranslate\" name=\"name\" key=\"name\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n @if (!item.readonly) {\n <fdp-input [(ngModel)]=\"item.name\"></fdp-input>\n } @else {\n {{ item.name }}\n }\n </fdp-table-cell>\n </fdp-column>\n <fdp-column [label]=\"'platformVariantManagement.sharing' | fdTranslate\" name=\"access\" key=\"access\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n {{\n (item.access === 'public'\n ? 'platformVariantManagement.access.public'\n : 'platformVariantManagement.access.private'\n ) | fdTranslate\n }}\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.default' | fdTranslate\"\n name=\"isDefault\"\n key=\"isDefault\"\n align=\"center\"\n >\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fd-radio-button\n [value]=\"true\"\n [id]=\"'radio-' + item.id\"\n name=\"is-variant-default\"\n [(ngModel)]=\"item.isDefault\"\n ></fd-radio-button>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.applyAutomatically' | fdTranslate\"\n name=\"applyAutomatically\"\n key=\"applyAutomatically\"\n align=\"center\"\n >\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fdp-checkbox\n class=\"fd-variant-management__centered-checkbox\"\n [standalone]=\"true\"\n name=\"applyAutomatically\"\n [(ngModel)]=\"item.applyAutomatically\"\n ></fdp-checkbox>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.createdBy' | fdTranslate\"\n name=\"createdBy\"\n key=\"createdBy\"\n ></fdp-column>\n <fdp-column name=\"actions\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n @if (!item.readonly) {\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [title]=\"'platformVariantManagement.removeVariant' | fdTranslate\"\n (click)=\"_removeVariant(item)\"\n ></button>\n }\n </fdp-table-cell>\n </fdp-column>\n </fdp-table>\n </fd-dialog-body>\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'platformVariantManagement.save' | fdTranslate\"\n (click)=\"_saveVariants()\"\n ariaLabel=\"Interested Emphasized\"\n ></fd-button-bar>\n <fd-button-bar\n [label]=\"'platformVariantManagement.cancel' | fdTranslate\"\n (click)=\"dialog.dismiss('Cancel')\"\n [ariaLabel]=\"'platformVariantManagement.cancel' | fdTranslate\"\n ></fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", dependencies: [{ kind: "component", type: DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title], span[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: TableComponent, selector: "fdp-table", inputs: ["name", "id", "enableDragResize", "fixed", "freezeColumnsTo", "freezeEndColumnsTo", "pageScrolling", "showGrowingButton", "showItemsCount", "pageSize", "pageScrollingThreshold", "bodyHeight", "emptyTableMessage", "noVisibleColumnsMessage", "noHorizontalBorders", "noVerticalBorders", "noBorders", "noBodyBorders", "noOuterBorders", "noBorderX", "noBorderY", "relationKey", "expandedStateKey", "hasChildrenKey", "rowNavigatable", "highlightNavigatedRow", "rowsActivable", "selectedKey", "selectableKey", "trackBy", "rowComparator", "rowsClass", "editableRowSkeleton", "expandOnInit", "rowHeight", "loadPagesBefore", "selectionMode", "enableTristateMode", "semanticHighlighting", "forceCheckedAllState", "ariaLabelledBy", "nonFrozenColumnsMinWidth", "loading"], outputs: ["presetChanged", "rowSelectionChange", "sortChange", "filterChange", "groupChange", "columnsChange", "pageChange", "columnFreeze", "rowToggleOpenState", "rowActivate", "rowNavigate", "emptyRowAdded", "save", "cancel", "tableScrolled", "tableRowsSet", "allRowsExpanded", "allRowsCollapsed", "cellFocused"] }, { kind: "directive", type: TableInitialStateDirective, selector: "[fdpTableInitialState], fdp-table", inputs: ["initialVisibleColumns", "initialSortBy", "initialFilterBy", "initialGroupBy", "initialPage", "state"] }, { kind: "component", type: TableColumnComponent, selector: "fdp-column", inputs: ["name", "key", "label", "align", "sortable", "filterable", "visible", "dataType", "groupable", "freezable", "endFreezable", "width", "noWrap", "applyText", "role"] }, { kind: "directive", type: FdpCellDef, selector: "[fdpCellDef]", inputs: ["fdpCellDefAs"] }, { kind: "directive", type: FdpTableCell, selector: "fdp-table-cell" }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: InputComponent, selector: "fdp-input", inputs: ["type", "required", "value"], outputs: ["focusChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: RadioButtonComponent, selector: "fd-radio-button", inputs: ["ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "title", "tabIndex", "state", "disabled", "selectedValue", "name", "id", "value", "required", "standalone"] }, { kind: "component", type: CheckboxComponent, selector: "fdp-checkbox", inputs: ["title", "label", "tristate", "checked", "tristateSelectable", "values", "standalone", "displayOnly"], outputs: ["checkedChange"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
50
50
  }
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ManageVariantsDialogComponent, decorators: [{
52
52
  type: Component,
@@ -75,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
75
75
  FdTranslatePipe
76
76
  ], template: "<fd-dialog>\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header-1\" fd-title>\n {{ 'platformVariantManagement.manageViews' | fdTranslate }}\n </h1>\n </fd-dialog-header>\n <fd-dialog-body>\n <fdp-table [dataSource]=\"_source\" [noVerticalBorders]=\"true\" class=\"fd-variant-management__table\">\n <fdp-column name=\"favourite\" key=\"favourite\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fd-icon\n class=\"fd-variant-management__favourite-state\"\n [class.fd-variant-management__favourite-state--active]=\"item.favourite\"\n [ariaLabel]=\"'platformVariantManagement.markAsFavourite' | fdTranslate\"\n tabindex=\"0\"\n (click)=\"_markAsFavourite(item)\"\n glyph=\"favorite\"\n ></fd-icon>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column [label]=\"'platformVariantManagement.view' | fdTranslate\" name=\"name\" key=\"name\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n @if (!item.readonly) {\n <fdp-input [(ngModel)]=\"item.name\"></fdp-input>\n } @else {\n {{ item.name }}\n }\n </fdp-table-cell>\n </fdp-column>\n <fdp-column [label]=\"'platformVariantManagement.sharing' | fdTranslate\" name=\"access\" key=\"access\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n {{\n (item.access === 'public'\n ? 'platformVariantManagement.access.public'\n : 'platformVariantManagement.access.private'\n ) | fdTranslate\n }}\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.default' | fdTranslate\"\n name=\"isDefault\"\n key=\"isDefault\"\n align=\"center\"\n >\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fd-radio-button\n [value]=\"true\"\n [id]=\"'radio-' + item.id\"\n name=\"is-variant-default\"\n [(ngModel)]=\"item.isDefault\"\n ></fd-radio-button>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.applyAutomatically' | fdTranslate\"\n name=\"applyAutomatically\"\n key=\"applyAutomatically\"\n align=\"center\"\n >\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n <fdp-checkbox\n class=\"fd-variant-management__centered-checkbox\"\n [standalone]=\"true\"\n name=\"applyAutomatically\"\n [(ngModel)]=\"item.applyAutomatically\"\n ></fdp-checkbox>\n </fdp-table-cell>\n </fdp-column>\n <fdp-column\n [label]=\"'platformVariantManagement.createdBy' | fdTranslate\"\n name=\"createdBy\"\n key=\"createdBy\"\n ></fdp-column>\n <fdp-column name=\"actions\">\n <fdp-table-cell *fdpCellDef=\"let item; as: _variantModel\">\n @if (!item.readonly) {\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [title]=\"'platformVariantManagement.removeVariant' | fdTranslate\"\n (click)=\"_removeVariant(item)\"\n ></button>\n }\n </fdp-table-cell>\n </fdp-column>\n </fdp-table>\n </fd-dialog-body>\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'platformVariantManagement.save' | fdTranslate\"\n (click)=\"_saveVariants()\"\n ariaLabel=\"Interested Emphasized\"\n ></fd-button-bar>\n <fd-button-bar\n [label]=\"'platformVariantManagement.cancel' | fdTranslate\"\n (click)=\"dialog.dismiss('Cancel')\"\n [ariaLabel]=\"'platformVariantManagement.cancel' | fdTranslate\"\n ></fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n" }]
77
77
  }], ctorParameters: () => [{ type: i1.DialogRef }, { type: i0.ChangeDetectorRef }] });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXZhcmlhbnRzLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhcmlhbnQtbWFuYWdlbWVudC9jb21wb25lbnRzL21hbmFnZS12YXJpYW50cy1kaWFsb2cvbWFuYWdlLXZhcmlhbnRzLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhcmlhbnQtbWFuYWdlbWVudC9jb21wb25lbnRzL21hbmFnZS12YXJpYW50cy1kaWFsb2cvbWFuYWdlLXZhcmlhbnRzLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsU0FBUyxFQUNaLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFB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QW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLGVBQWU7cUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJ1dHRvbkJhckNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9iYXInO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQge1xuICAgIERpYWxvZ0JvZHlDb21wb25lbnQsXG4gICAgRGlhbG9nQ29tcG9uZW50LFxuICAgIERpYWxvZ0Zvb3RlckNvbXBvbmVudCxcbiAgICBEaWFsb2dIZWFkZXJDb21wb25lbnQsXG4gICAgRGlhbG9nUmVmXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9kaWFsb2cnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3JhZGlvJztcbmltcG9ydCB7IFNjcm9sbGJhckRpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGl0bGUnO1xuaW1wb3J0IHsgRmRUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50LCBJbnB1dENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vZm9ybSc7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbkNvbXBvbmVudCwgVGFibGVDb21wb25lbnQsIFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vdGFibGUnO1xuaW1wb3J0IHtcbiAgICBGZHBDZWxsRGVmLFxuICAgIEZkcFRhYmxlQ2VsbCxcbiAgICBUYWJsZURhdGFTb3VyY2VEaXJlY3RpdmUsXG4gICAgVGFibGVIZWFkZXJSZXNpemVyRGlyZWN0aXZlLFxuICAgIFRhYmxlSW5pdGlhbFN0YXRlRGlyZWN0aXZlXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vdGFibGUtaGVscGVycyc7XG5pbXBvcnQgeyBWYXJpYW50SXRlbSB9IGZyb20gJy4uLy4uL3ZhcmlhbnQtaXRlbS5jbGFzcyc7XG5pbXBvcnQgeyBWYXJpYW50TWFuYWdlbWVudERhdGFQcm92aWRlciB9IGZyb20gJy4vZGF0YS1wcm92aWRlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLW1hbmFnZS12YXJpYW50cy1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tYW5hZ2UtdmFyaWFudHMtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBEaWFsb2dDb21wb25lbnQsXG4gICAgICAgIERpYWxvZ0hlYWRlckNvbXBvbmVudCxcbiAgICAgICAgVGl0bGVDb21wb25lbnQsXG4gICAgICAgIENka1Njcm9sbGFibGUsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgRGlhbG9nQm9keUNvbXBvbmVudCxcbiAgICAgICAgVGFibGVEYXRhU291cmNlRGlyZWN0aXZlLFxuICAgICAgICBUYWJsZUhlYWRlclJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgICAgIFRhYmxlQ29tcG9uZW50LFxuICAgICAgICBUYWJsZUluaXRpYWxTdGF0ZURpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgICAgIEZkcENlbGxEZWYsXG4gICAgICAgIEZkcFRhYmxlQ2VsbCxcbiAgICAgICAgSWNvbkNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRDb21wb25lbnQsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgQ2hlY2tib3hDb21wb25lbnQsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgRGlhbG9nRm9vdGVyQ29tcG9uZW50LFxuICAgICAgICBCdXR0b25CYXJDb21wb25lbnQsXG4gICAgICAgIEZkVHJhbnNsYXRlUGlwZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTWFuYWdlVmFyaWFudHNEaWFsb2dDb21wb25lbnQge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3NvdXJjZTogVGFibGVEYXRhU291cmNlPFZhcmlhbnRJdGVtPjtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBVc2VkIHRvIGFwcGx5IHR5cGluZ3MgaW4gdGVtcGxhdGUuXG4gICAgICovXG4gICAgX3ZhcmlhbnRNb2RlbCE6IFZhcmlhbnRJdGVtO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF92YXJpYW50czogVmFyaWFudEl0ZW1bXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhUHJvdmlkZXI6IFZhcmlhbnRNYW5hZ2VtZW50RGF0YVByb3ZpZGVyO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGRpYWxvZzogRGlhbG9nUmVmPFZhcmlhbnRJdGVtW10+LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9jZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIC8vIFdlIGNsb25lIGFsbCB2YXJpYW50cywgc28gd2UgZG9uJ3QgY2hhbmdlIG9yaWdpbmFsIGluc3RhbmNlcyBpbW1lZGlhdGVseS5cbiAgICAgICAgdGhpcy5fdmFyaWFudHMgPSB0aGlzLmRpYWxvZy5kYXRhLm1hcCgob2xkVmFyaWFudCkgPT4gb2xkVmFyaWFudC5jbG9uZSh7fSwgZmFsc2UpKTtcbiAgICAgICAgdGhpcy5fZGF0YVByb3ZpZGVyID0gbmV3IFZhcmlhbnRNYW5hZ2VtZW50RGF0YVByb3ZpZGVyKHRoaXMuX3ZhcmlhbnRzKTtcbiAgICAgICAgdGhpcy5fc291cmNlID0gbmV3IFRhYmxlRGF0YVNvdXJjZSh0aGlzLl9kYXRhUHJvdmlkZXIpO1xuICAgIH1cblxuICAgIC8qKiBASGlkZGVuICovXG4gICAgX21hcmtBc0Zhdm91cml0ZShpdGVtOiBWYXJpYW50SXRlbSk6IHZvaWQge1xuICAgICAgICBpdGVtLmZhdm91cml0ZSA9ICFpdGVtLmZhdm91cml0ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9yZW1vdmVWYXJpYW50KGl0ZW06IFZhcmlhbnRJdGVtKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ZhcmlhbnRzLnNwbGljZShcbiAgICAgICAgICAgIHRoaXMuX3ZhcmlhbnRzLmZpbmRJbmRleCgodmFyaWFudCkgPT4gaXRlbS5pZCA9PT0gdmFyaWFudC5pZCksXG4gICAgICAgICAgICAxXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX2RhdGFQcm92aWRlci51cGRhdGUodGhpcy5fdmFyaWFudHMpO1xuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBDbG9zZXMgZGlhbG9nIHdpdGggdXBkYXRlZCB2YXJpYW50cyBhcnJheS5cbiAgICAgKi9cbiAgICBfc2F2ZVZhcmlhbnRzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZy5jbG9zZSh0aGlzLl92YXJpYW50cyk7XG4gICAgfVxufVxuIiwiPGZkLWRpYWxvZz5cbiAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgPGgxIGlkPVwiZmQtZGlhbG9nLWhlYWRlci0xXCIgZmQtdGl0bGU+XG4gICAgICAgICAgICB7eyAncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5tYW5hZ2VWaWV3cycgfCBmZFRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2gxPlxuICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cbiAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgIDxmZHAtdGFibGUgW2RhdGFTb3VyY2VdPVwiX3NvdXJjZVwiIFtub1ZlcnRpY2FsQm9yZGVyc109XCJ0cnVlXCIgY2xhc3M9XCJmZC12YXJpYW50LW1hbmFnZW1lbnRfX3RhYmxlXCI+XG4gICAgICAgICAgICA8ZmRwLWNvbHVtbiBuYW1lPVwiZmF2b3VyaXRlXCIga2V5PVwiZmF2b3VyaXRlXCI+XG4gICAgICAgICAgICAgICAgPGZkcC10YWJsZS1jZWxsICpmZHBDZWxsRGVmPVwibGV0IGl0ZW07IGFzOiBfdmFyaWFudE1vZGVsXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLXZhcmlhbnQtbWFuYWdlbWVudF9fZmF2b3VyaXRlLXN0YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5mZC12YXJpYW50LW1hbmFnZW1lbnRfX2Zhdm91cml0ZS1zdGF0ZS0tYWN0aXZlXT1cIml0ZW0uZmF2b3VyaXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQubWFya0FzRmF2b3VyaXRlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX21hcmtBc0Zhdm91cml0ZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBnbHlwaD1cImZhdm9yaXRlXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2ZkcC10YWJsZS1jZWxsPlxuICAgICAgICAgICAgPC9mZHAtY29sdW1uPlxuICAgICAgICAgICAgPGZkcC1jb2x1bW4gW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LnZpZXcnIHwgZmRUcmFuc2xhdGVcIiBuYW1lPVwibmFtZVwiIGtleT1cIm5hbWVcIj5cbiAgICAgICAgICAgICAgICA8ZmRwLXRhYmxlLWNlbGwgKmZkcENlbGxEZWY9XCJsZXQgaXRlbTsgYXM6IF92YXJpYW50TW9kZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmICghaXRlbS5yZWFkb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGZkcC1pbnB1dCBbKG5nTW9kZWwpXT1cIml0ZW0ubmFtZVwiPjwvZmRwLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9mZHAtdGFibGUtY2VsbD5cbiAgICAgICAgICAgIDwvZmRwLWNvbHVtbj5cbiAgICAgICAgICAgIDxmZHAtY29sdW1uIFtsYWJlbF09XCIncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5zaGFyaW5nJyB8IGZkVHJhbnNsYXRlXCIgbmFtZT1cImFjY2Vzc1wiIGtleT1cImFjY2Vzc1wiPlxuICAgICAgICAgICAgICAgIDxmZHAtdGFibGUtY2VsbCAqZmRwQ2VsbERlZj1cImxldCBpdGVtOyBhczogX3ZhcmlhbnRNb2RlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgKGl0ZW0uYWNjZXNzID09PSAncHVibGljJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQuYWNjZXNzLnB1YmxpYydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LmFjY2Vzcy5wcml2YXRlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSB8IGZkVHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9mZHAtdGFibGUtY2VsbD5cbiAgICAgICAgICAgIDwvZmRwLWNvbHVtbj5cbiAgICAgICAgICAgIDxmZHAtY29sdW1uXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LmRlZmF1bHQnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJpc0RlZmF1bHRcIlxuICAgICAgICAgICAgICAgIGtleT1cImlzRGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgYWxpZ249XCJjZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmZHAtdGFibGUtY2VsbCAqZmRwQ2VsbERlZj1cImxldCBpdGVtOyBhczogX3ZhcmlhbnRNb2RlbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtcmFkaW8tYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ3JhZGlvLScgKyBpdGVtLmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpcy12YXJpYW50LWRlZmF1bHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtLmlzRGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgICAgID48L2ZkLXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2ZkcC10YWJsZS1jZWxsPlxuICAgICAgICAgICAgPC9mZHAtY29sdW1uPlxuICAgICAgICAgICAgPGZkcC1jb2x1bW5cbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQuYXBwbHlBdXRvbWF0aWNhbGx5JyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwiYXBwbHlBdXRvbWF0aWNhbGx5XCJcbiAgICAgICAgICAgICAgICBrZXk9XCJhcHBseUF1dG9tYXRpY2FsbHlcIlxuICAgICAgICAgICAgICAgIGFsaWduPVwiY2VudGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZmRwLXRhYmxlLWNlbGwgKmZkcENlbGxEZWY9XCJsZXQgaXRlbTsgYXM6IF92YXJpYW50TW9kZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZkcC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC12YXJpYW50LW1hbmFnZW1lbnRfX2NlbnRlcmVkLWNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGFuZGFsb25lXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImFwcGx5QXV0b21hdGljYWxseVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW0uYXBwbHlBdXRvbWF0aWNhbGx5XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmRwLWNoZWNrYm94PlxuICAgICAgICAgICAgICAgIDwvZmRwLXRhYmxlLWNlbGw+XG4gICAgICAgICAgICA8L2ZkcC1jb2x1bW4+XG4gICAgICAgICAgICA8ZmRwLWNvbHVtblxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCIncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5jcmVhdGVkQnknIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJjcmVhdGVkQnlcIlxuICAgICAgICAgICAgICAgIGtleT1cImNyZWF0ZWRCeVwiXG4gICAgICAgICAgICA+PC9mZHAtY29sdW1uPlxuICAgICAgICAgICAgPGZkcC1jb2x1bW4gbmFtZT1cImFjdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8ZmRwLXRhYmxlLWNlbGwgKmZkcENlbGxEZWY9XCJsZXQgaXRlbTsgYXM6IF92YXJpYW50TW9kZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmICghaXRlbS5yZWFkb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbHlwaD1cImRlY2xpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCIncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5yZW1vdmVWYXJpYW50JyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX3JlbW92ZVZhcmlhbnQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9mZHAtdGFibGUtY2VsbD5cbiAgICAgICAgICAgIDwvZmRwLWNvbHVtbj5cbiAgICAgICAgPC9mZHAtdGFibGU+XG4gICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8ZmQtZGlhbG9nLWZvb3Rlcj5cbiAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgIGZkVHlwZT1cImVtcGhhc2l6ZWRcIlxuICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LnNhdmUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIl9zYXZlVmFyaWFudHMoKVwiXG4gICAgICAgICAgICBhcmlhTGFiZWw9XCJJbnRlcmVzdGVkIEVtcGhhc2l6ZWRcIlxuICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICA8ZmQtYnV0dG9uLWJhclxuICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LmNhbmNlbCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiZGlhbG9nLmRpc21pc3MoJ0NhbmNlbCcpXCJcbiAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQuY2FuY2VsJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cbiAgICA8L2ZkLWRpYWxvZy1mb290ZXI+XG48L2ZkLWRpYWxvZz5cbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXZhcmlhbnRzLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhcmlhbnQtbWFuYWdlbWVudC9jb21wb25lbnRzL21hbmFnZS12YXJpYW50cy1kaWFsb2cvbWFuYWdlLXZhcmlhbnRzLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhcmlhbnQtbWFuYWdlbWVudC9jb21wb25lbnRzL21hbmFnZS12YXJpYW50cy1kaWFsb2cvbWFuYWdlLXZhcmlhbnRzLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsU0FBUyxFQUNaLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFB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QW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLGVBQWU7cUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJ1dHRvbkJhckNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9iYXInO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQge1xuICAgIERpYWxvZ0JvZHlDb21wb25lbnQsXG4gICAgRGlhbG9nQ29tcG9uZW50LFxuICAgIERpYWxvZ0Zvb3RlckNvbXBvbmVudCxcbiAgICBEaWFsb2dIZWFkZXJDb21wb25lbnQsXG4gICAgRGlhbG9nUmVmXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9kaWFsb2cnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3JhZGlvJztcbmltcG9ydCB7IFNjcm9sbGJhckRpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGl0bGUnO1xuaW1wb3J0IHsgRmRUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50LCBJbnB1dENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vZm9ybSc7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbkNvbXBvbmVudCwgVGFibGVDb21wb25lbnQsIFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vdGFibGUnO1xuaW1wb3J0IHtcbiAgICBGZHBDZWxsRGVmLFxuICAgIEZkcFRhYmxlQ2VsbCxcbiAgICBUYWJsZURhdGFTb3VyY2VEaXJlY3RpdmUsXG4gICAgVGFibGVIZWFkZXJSZXNpemVyRGlyZWN0aXZlLFxuICAgIFRhYmxlSW5pdGlhbFN0YXRlRGlyZWN0aXZlXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vdGFibGUtaGVscGVycyc7XG5pbXBvcnQgeyBWYXJpYW50SXRlbSB9IGZyb20gJy4uLy4uL3ZhcmlhbnQtaXRlbS5jbGFzcyc7XG5pbXBvcnQgeyBWYXJpYW50TWFuYWdlbWVudERhdGFQcm92aWRlciB9IGZyb20gJy4vZGF0YS1wcm92aWRlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLW1hbmFnZS12YXJpYW50cy1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tYW5hZ2UtdmFyaWFudHMtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBEaWFsb2dDb21wb25lbnQsXG4gICAgICAgIERpYWxvZ0hlYWRlckNvbXBvbmVudCxcbiAgICAgICAgVGl0bGVDb21wb25lbnQsXG4gICAgICAgIENka1Njcm9sbGFibGUsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgRGlhbG9nQm9keUNvbXBvbmVudCxcbiAgICAgICAgVGFibGVEYXRhU291cmNlRGlyZWN0aXZlLFxuICAgICAgICBUYWJsZUhlYWRlclJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgICAgIFRhYmxlQ29tcG9uZW50LFxuICAgICAgICBUYWJsZUluaXRpYWxTdGF0ZURpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgICAgIEZkcENlbGxEZWYsXG4gICAgICAgIEZkcFRhYmxlQ2VsbCxcbiAgICAgICAgSWNvbkNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRDb21wb25lbnQsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgQ2hlY2tib3hDb21wb25lbnQsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgRGlhbG9nRm9vdGVyQ29tcG9uZW50LFxuICAgICAgICBCdXR0b25CYXJDb21wb25lbnQsXG4gICAgICAgIEZkVHJhbnNsYXRlUGlwZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTWFuYWdlVmFyaWFudHNEaWFsb2dDb21wb25lbnQge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3NvdXJjZTogVGFibGVEYXRhU291cmNlPFZhcmlhbnRJdGVtPjtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBVc2VkIHRvIGFwcGx5IHR5cGluZ3MgaW4gdGVtcGxhdGUuXG4gICAgICovXG4gICAgX3ZhcmlhbnRNb2RlbCE6IFZhcmlhbnRJdGVtO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF92YXJpYW50czogVmFyaWFudEl0ZW1bXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhUHJvdmlkZXI6IFZhcmlhbnRNYW5hZ2VtZW50RGF0YVByb3ZpZGVyO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGRpYWxvZzogRGlhbG9nUmVmPFZhcmlhbnRJdGVtW10+LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9jZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIC8vIFdlIGNsb25lIGFsbCB2YXJpYW50cywgc28gd2UgZG9uJ3QgY2hhbmdlIG9yaWdpbmFsIGluc3RhbmNlcyBpbW1lZGlhdGVseS5cbiAgICAgICAgdGhpcy5fdmFyaWFudHMgPSB0aGlzLmRpYWxvZy5kYXRhLm1hcCgob2xkVmFyaWFudCkgPT4gb2xkVmFyaWFudC5jbG9uZSh7fSwgZmFsc2UpKTtcbiAgICAgICAgdGhpcy5fZGF0YVByb3ZpZGVyID0gbmV3IFZhcmlhbnRNYW5hZ2VtZW50RGF0YVByb3ZpZGVyKHRoaXMuX3ZhcmlhbnRzKTtcbiAgICAgICAgdGhpcy5fc291cmNlID0gbmV3IFRhYmxlRGF0YVNvdXJjZSh0aGlzLl9kYXRhUHJvdmlkZXIpO1xuICAgIH1cblxuICAgIC8qKiBASGlkZGVuICovXG4gICAgX21hcmtBc0Zhdm91cml0ZShpdGVtOiBWYXJpYW50SXRlbSk6IHZvaWQge1xuICAgICAgICBpdGVtLmZhdm91cml0ZSA9ICFpdGVtLmZhdm91cml0ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9yZW1vdmVWYXJpYW50KGl0ZW06IFZhcmlhbnRJdGVtKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ZhcmlhbnRzLnNwbGljZShcbiAgICAgICAgICAgIHRoaXMuX3ZhcmlhbnRzLmZpbmRJbmRleCgodmFyaWFudCkgPT4gaXRlbS5pZCA9PT0gdmFyaWFudC5pZCksXG4gICAgICAgICAgICAxXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX2RhdGFQcm92aWRlci51cGRhdGUodGhpcy5fdmFyaWFudHMpO1xuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBDbG9zZXMgZGlhbG9nIHdpdGggdXBkYXRlZCB2YXJpYW50cyBhcnJheS5cbiAgICAgKi9cbiAgICBfc2F2ZVZhcmlhbnRzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZy5jbG9zZSh0aGlzLl92YXJpYW50cyk7XG4gICAgfVxufVxuIiwiPGZkLWRpYWxvZz5cbiAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgPGgxIGlkPVwiZmQtZGlhbG9nLWhlYWRlci0xXCIgZmQtdGl0bGU+XG4gICAgICAgICAgICB7eyAncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5tYW5hZ2VWaWV3cycgfCBmZFRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2gxPlxuICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cbiAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgIDxmZHAtdGFibGUgW2RhdGFTb3VyY2VdPVwiX3NvdXJjZVwiIFtub1ZlcnRpY2FsQm9yZGVyc109XCJ0cnVlXCIgY2xhc3M9XCJmZC12YXJpYW50LW1hbmFnZW1lbnRfX3RhYmxlXCI+XG4gICAgICAgICAgICA8ZmRwLWNvbHVtbiBuYW1lPVwiZmF2b3VyaXRlXCIga2V5PVwiZmF2b3VyaXRlXCI+XG4gICAgICAgICAgICAgICAgPGZkcC10YWJsZS1jZWxsICpmZHBDZWxsRGVmPVwibGV0IGl0ZW07IGFzOiBfdmFyaWFudE1vZGVsXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLXZhcmlhbnQtbWFuYWdlbWVudF9fZmF2b3VyaXRlLXN0YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5mZC12YXJpYW50LW1hbmFnZW1lbnRfX2Zhdm91cml0ZS1zdGF0ZS0tYWN0aXZlXT1cIml0ZW0uZmF2b3VyaXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQubWFya0FzRmF2b3VyaXRlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX21hcmtBc0Zhdm91cml0ZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBnbHlwaD1cImZhdm9yaXRlXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2ZkcC10YWJsZS1jZWxsPlxuICAgICAgICAgICAgPC9mZHAtY29sdW1uPlxuICAgICAgICAgICAgPGZkcC1jb2x1bW4gW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LnZpZXcnIHwgZmRUcmFuc2xhdGVcIiBuYW1lPVwibmFtZVwiIGtleT1cIm5hbWVcIj5cbiAgICAgICAgICAgICAgICA8ZmRwLXRhYmxlLWNlbGwgKmZkcENlbGxEZWY9XCJsZXQgaXRlbTsgYXM6IF92YXJpYW50TW9kZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmICghaXRlbS5yZWFkb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGZkcC1pbnB1dCBbKG5nTW9kZWwpXT1cIml0ZW0ubmFtZVwiPjwvZmRwLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9mZHAtdGFibGUtY2VsbD5cbiAgICAgICAgICAgIDwvZmRwLWNvbHVtbj5cbiAgICAgICAgICAgIDxmZHAtY29sdW1uIFtsYWJlbF09XCIncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5zaGFyaW5nJyB8IGZkVHJhbnNsYXRlXCIgbmFtZT1cImFjY2Vzc1wiIGtleT1cImFjY2Vzc1wiPlxuICAgICAgICAgICAgICAgIDxmZHAtdGFibGUtY2VsbCAqZmRwQ2VsbERlZj1cImxldCBpdGVtOyBhczogX3ZhcmlhbnRNb2RlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgKGl0ZW0uYWNjZXNzID09PSAncHVibGljJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQuYWNjZXNzLnB1YmxpYydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LmFjY2Vzcy5wcml2YXRlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSB8IGZkVHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9mZHAtdGFibGUtY2VsbD5cbiAgICAgICAgICAgIDwvZmRwLWNvbHVtbj5cbiAgICAgICAgICAgIDxmZHAtY29sdW1uXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LmRlZmF1bHQnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJpc0RlZmF1bHRcIlxuICAgICAgICAgICAgICAgIGtleT1cImlzRGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgYWxpZ249XCJjZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmZHAtdGFibGUtY2VsbCAqZmRwQ2VsbERlZj1cImxldCBpdGVtOyBhczogX3ZhcmlhbnRNb2RlbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtcmFkaW8tYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ3JhZGlvLScgKyBpdGVtLmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpcy12YXJpYW50LWRlZmF1bHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtLmlzRGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgICAgID48L2ZkLXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2ZkcC10YWJsZS1jZWxsPlxuICAgICAgICAgICAgPC9mZHAtY29sdW1uPlxuICAgICAgICAgICAgPGZkcC1jb2x1bW5cbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQuYXBwbHlBdXRvbWF0aWNhbGx5JyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwiYXBwbHlBdXRvbWF0aWNhbGx5XCJcbiAgICAgICAgICAgICAgICBrZXk9XCJhcHBseUF1dG9tYXRpY2FsbHlcIlxuICAgICAgICAgICAgICAgIGFsaWduPVwiY2VudGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZmRwLXRhYmxlLWNlbGwgKmZkcENlbGxEZWY9XCJsZXQgaXRlbTsgYXM6IF92YXJpYW50TW9kZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZkcC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC12YXJpYW50LW1hbmFnZW1lbnRfX2NlbnRlcmVkLWNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGFuZGFsb25lXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImFwcGx5QXV0b21hdGljYWxseVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW0uYXBwbHlBdXRvbWF0aWNhbGx5XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmRwLWNoZWNrYm94PlxuICAgICAgICAgICAgICAgIDwvZmRwLXRhYmxlLWNlbGw+XG4gICAgICAgICAgICA8L2ZkcC1jb2x1bW4+XG4gICAgICAgICAgICA8ZmRwLWNvbHVtblxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCIncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5jcmVhdGVkQnknIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJjcmVhdGVkQnlcIlxuICAgICAgICAgICAgICAgIGtleT1cImNyZWF0ZWRCeVwiXG4gICAgICAgICAgICA+PC9mZHAtY29sdW1uPlxuICAgICAgICAgICAgPGZkcC1jb2x1bW4gbmFtZT1cImFjdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8ZmRwLXRhYmxlLWNlbGwgKmZkcENlbGxEZWY9XCJsZXQgaXRlbTsgYXM6IF92YXJpYW50TW9kZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmICghaXRlbS5yZWFkb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbHlwaD1cImRlY2xpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCIncGxhdGZvcm1WYXJpYW50TWFuYWdlbWVudC5yZW1vdmVWYXJpYW50JyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX3JlbW92ZVZhcmlhbnQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9mZHAtdGFibGUtY2VsbD5cbiAgICAgICAgICAgIDwvZmRwLWNvbHVtbj5cbiAgICAgICAgPC9mZHAtdGFibGU+XG4gICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8ZmQtZGlhbG9nLWZvb3Rlcj5cbiAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgIGZkVHlwZT1cImVtcGhhc2l6ZWRcIlxuICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LnNhdmUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIl9zYXZlVmFyaWFudHMoKVwiXG4gICAgICAgICAgICBhcmlhTGFiZWw9XCJJbnRlcmVzdGVkIEVtcGhhc2l6ZWRcIlxuICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICA8ZmQtYnV0dG9uLWJhclxuICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZhcmlhbnRNYW5hZ2VtZW50LmNhbmNlbCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiZGlhbG9nLmRpc21pc3MoJ0NhbmNlbCcpXCJcbiAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ3BsYXRmb3JtVmFyaWFudE1hbmFnZW1lbnQuY2FuY2VsJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cbiAgICA8L2ZkLWRpYWxvZy1mb290ZXI+XG48L2ZkLWRpYWxvZz5cbiJdfQ==