@bcgov/nr-ngx-component-lib 0.0.55 → 0.0.57

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 (26) hide show
  1. package/components/icon/icon.component.d.ts +2 -0
  2. package/components/list-attachments/list-attachments.component.d.ts +1 -1
  3. package/components/list-event-history/list-event-history.component.d.ts +1 -1
  4. package/components/list-select/list-select.component.d.ts +1 -1
  5. package/components/resource-schedule/resource-schedule.component.d.ts +33 -0
  6. package/components/schedule/schedule.component.d.ts +83 -0
  7. package/components/tabs/tab/tab.component.d.ts +1 -1
  8. package/directives/pagination.base.d.ts +47 -0
  9. package/directives/row-list.base.d.ts +5 -36
  10. package/esm2022/components/icon/icon.component.mjs +12 -1
  11. package/esm2022/components/list-attachments/list-attachments.component.mjs +17 -13
  12. package/esm2022/components/list-event-history/list-event-history.component.mjs +2 -2
  13. package/esm2022/components/list-select/list-select.component.mjs +2 -2
  14. package/esm2022/components/resource-schedule/resource-schedule.component.mjs +47 -0
  15. package/esm2022/components/schedule/schedule.component.mjs +168 -0
  16. package/esm2022/components/tabs/tab/tab.component.mjs +1 -1
  17. package/esm2022/directives/pagination.base.mjs +88 -0
  18. package/esm2022/directives/row-list.base.mjs +22 -75
  19. package/esm2022/nr-ngx-component-lib.module.mjs +30 -8
  20. package/esm2022/public-api.mjs +4 -1
  21. package/fesm2022/bcgov-nr-ngx-component-lib.mjs +347 -82
  22. package/fesm2022/bcgov-nr-ngx-component-lib.mjs.map +1 -1
  23. package/nr-ngx-component-lib.module.d.ts +27 -25
  24. package/package.json +1 -1
  25. package/public-api.d.ts +3 -0
  26. package/styles/global.scss +19 -0
@@ -46,7 +46,7 @@ export class ListEventHistoryComponent extends RowListBase {
46
46
  throw Error('no provider for ListEventHistoryComponent.rowListProvider.displayRowListPage');
47
47
  return this.rowListProvider.displayRowListPage(res);
48
48
  }
49
- get initialPageState() {
49
+ getInitialPageState() {
50
50
  return {
51
51
  filter: {},
52
52
  pageConfig: {
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
77
77
  }], noRowsMessage: [{
78
78
  type: Input
79
79
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1ldmVudC1oaXN0b3J5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL2xpc3QtZXZlbnQtaGlzdG9yeS9saXN0LWV2ZW50LWhpc3RvcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1ldmVudC1oaXN0b3J5L2xpc3QtZXZlbnQtaGlzdG9yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsV0FBVyxFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUE4QnJELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxXQUFvQztJQU5uRjs7UUFRYSxjQUFTLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLG1CQUFjLEdBQUcsS0FBSyxDQUFBO1FBQ3RCLGVBQVUsR0FBWSxLQUFLLENBQUE7UUFDM0Isa0JBQWEsR0FBRyw4QkFBOEIsQ0FBQTtRQUV2RCxpQkFBWSxHQUFHLFlBQVksQ0FBQTtRQUMzQixZQUFPLEdBQUcsQ0FBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFFLENBQUE7UUFDbkUsZ0JBQVcsR0FBRztZQUNWLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFO1lBQ2xELEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO1lBQ2hELEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFO1lBQ3JDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFO1NBQzlDLENBQUE7S0FtQ0o7SUFqQ0csZ0JBQWdCO1FBQ1osSUFBSyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsaUJBQWlCO1lBQUcsTUFBTSxLQUFLLENBQUUsNEVBQTRFLENBQUUsQ0FBQTtRQUUzSSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUU7WUFDM0MsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDM0IsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtTQUNwQyxDQUFFLENBQUE7SUFDUCxDQUFDO0lBRUQsU0FBUyxDQUFFLEdBQVE7UUFDZixJQUFLLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxrQkFBa0I7WUFBRyxNQUFNLEtBQUssQ0FBRSw4RUFBOEUsQ0FBRSxDQUFBO1FBRTlJLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBRSxHQUFHLENBQUUsQ0FBQTtJQUN6RCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDaEIsT0FBTztZQUNILE1BQU0sRUFBRSxFQUFFO1lBQ1YsVUFBVSxFQUFFO2dCQUNSLFFBQVEsRUFBRSxFQUFFO2dCQUNaLFVBQVUsRUFBRSxDQUFDO2dCQUNiLFVBQVUsRUFBRSxVQUFVO2dCQUN0QixhQUFhLEVBQUUsTUFBTTthQUN4QjtTQUNKLENBQUE7SUFDTCxDQUFDO0lBRUQsYUFBYTtRQUNULGtCQUFrQjtJQUN0QixDQUFDOytHQWhEUSx5QkFBeUI7bUdBQXpCLHlCQUF5QiwwUENqQ3RDLG9pTEE4SEE7OzRGRDdGYSx5QkFBeUI7a0JBTnJDLFNBQVM7K0JBQ0kseUJBQXlCLG1CQUdsQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFJvd0xpc3RCYXNlLCBSb3dMaXN0U3RhdGUgfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9yb3ctbGlzdC5iYXNlXCI7XG5pbXBvcnQgeyBEQVRFX0ZPUk1BVFMgfSBmcm9tIFwiLi4vLi4vdXRpbHMvZGF0ZS51dGlsXCI7XG5cbmV4cG9ydCB0eXBlIEV2ZW50SGlzdG9yeVRhYmxlUm93ID0ge1xuICAgIGV2ZW50VGltZXN0YW1wOiBzdHJpbmdcbiAgICBjcmVhdGVkQnlVc2VySWQ6IHN0cmluZ1xuICAgIGV2ZW50SGlzdG9yeVR5cGVEZXNjcmlwdGlvbjogc3RyaW5nXG4gICAgc291cmNlT2JqZWN0TmFtZURlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICBjb21tZW50OiBzdHJpbmdcbiAgICBldmVudEhpc3RvcnlHdWlkOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgRmV0Y2hFdmVudEhpc3RvcnlQYXJhbWV0ZXJzID0geyBcbiAgICBpc1N1cHBsaWVyOiBib29sZWFuIFxuICAgIHBhZ2VOdW1iZXI6IG51bWJlciBcbiAgICBwYWdlUm93Q291bnQ6IG51bWJlciBcbiAgICBzb3J0Q29sdW1uOiBzdHJpbmcgXG4gICAgc29ydERpcmVjdGlvbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRIaXN0b3J5Um93TGlzdFByb3ZpZGVyPFIsTD1hbnk+IHtcbiAgICBmZXRjaEV2ZW50SGlzdG9yeSggeDogRmV0Y2hFdmVudEhpc3RvcnlQYXJhbWV0ZXJzICk6IE9ic2VydmFibGU8TD4gICAgXG4gICAgZGlzcGxheVJvd0xpc3RQYWdlKCByZXM6IEwgKTogRXZlbnRIaXN0b3J5VGFibGVSb3dbXVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWxpc3QtZXZlbnQtaGlzdG9yeVwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vbGlzdC1ldmVudC1oaXN0b3J5LmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmw6IFwiLi9saXN0LWV2ZW50LWhpc3RvcnkuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMaXN0RXZlbnRIaXN0b3J5Q29tcG9uZW50IGV4dGVuZHMgUm93TGlzdEJhc2U8e30sRXZlbnRIaXN0b3J5VGFibGVSb3c+IHtcbiAgICBASW5wdXQoKSByb3dMaXN0UHJvdmlkZXI/OiBFdmVudEhpc3RvcnlSb3dMaXN0UHJvdmlkZXI8RXZlbnRIaXN0b3J5VGFibGVSb3c+XG4gICAgQElucHV0KCkgY2FuRGVsZXRlID0gdHJ1ZVxuICAgIEBJbnB1dCgpIHNob3dQYWdpbmF0aW9uID0gZmFsc2VcbiAgICBASW5wdXQoKSBpc1N1cHBsaWVyOiBib29sZWFuID0gZmFsc2VcbiAgICBASW5wdXQoKSBub1Jvd3NNZXNzYWdlID0gXCJObyBjb21tZW50cyBoYXZlIGJlZW4gYWRkZWQuXCJcblxuICAgIERBVEVfRk9STUFUUyA9IERBVEVfRk9STUFUU1xuICAgIGNvbHVtbnMgPSBbICdkYXRlVGltZScsICdjaGFuZ2VkQnknLCAndHlwZScsICdzZWN0aW9uJywgJ2NvbW1lbnQnIF1cbiAgICBzb3J0Q29sdW1ucyA9IFtcbiAgICAgICAgeyBjb2RlOiAnZGF0ZVRpbWUnLCBkZXNjcmlwdGlvbjogJ0RhdGUgYW5kIFRpbWUnIH0sXG4gICAgICAgIHsgY29kZTogJ2NoYW5nZWRCeScsIGRlc2NyaXB0aW9uOiAnQ2hhbmdlZCBCeScgfSxcbiAgICAgICAgeyBjb2RlOiAndHlwZScsIGRlc2NyaXB0aW9uOiAnVHlwZScgfSxcbiAgICAgICAgeyBjb2RlOiAnc2VjdGlvbicsIGRlc2NyaXB0aW9uOiAnU2VjdGlvbicgfSxcbiAgICBdXG5cbiAgICBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmICggIXRoaXMucm93TGlzdFByb3ZpZGVyPy5mZXRjaEV2ZW50SGlzdG9yeSApIHRocm93IEVycm9yKCAnbm8gcHJvdmlkZXIgZm9yIExpc3RFdmVudEhpc3RvcnlDb21wb25lbnQucm93TGlzdFByb3ZpZGVyLmZldGNoUm93TGlzdFBhZ2UnIClcblxuICAgICAgICByZXR1cm4gdGhpcy5yb3dMaXN0UHJvdmlkZXIuZmV0Y2hFdmVudEhpc3RvcnkoIHtcbiAgICAgICAgICAgIGlzU3VwcGxpZXI6IHRoaXMuaXNTdXBwbGllcixcbiAgICAgICAgICAgIHBhZ2VOdW1iZXI6IHRoaXMucGFnZU51bWJlcixcbiAgICAgICAgICAgIHBhZ2VSb3dDb3VudDogdGhpcy5wYWdlU2l6ZSxcbiAgICAgICAgICAgIHNvcnRDb2x1bW46IHRoaXMuc29ydEFjdGl2ZSxcbiAgICAgICAgICAgIHNvcnREaXJlY3Rpb246IHRoaXMuc29ydERpcmVjdGlvbixcbiAgICAgICAgfSApXG4gICAgfVxuXG4gICAgcGFyc2VSb3dzKCByZXM6IGFueSApOiBFdmVudEhpc3RvcnlUYWJsZVJvd1tdIHtcbiAgICAgICAgaWYgKCAhdGhpcy5yb3dMaXN0UHJvdmlkZXI/LmRpc3BsYXlSb3dMaXN0UGFnZSApIHRocm93IEVycm9yKCAnbm8gcHJvdmlkZXIgZm9yIExpc3RFdmVudEhpc3RvcnlDb21wb25lbnQucm93TGlzdFByb3ZpZGVyLmRpc3BsYXlSb3dMaXN0UGFnZScgKVxuXG4gICAgICAgIHJldHVybiB0aGlzLnJvd0xpc3RQcm92aWRlci5kaXNwbGF5Um93TGlzdFBhZ2UoIHJlcyApXG4gICAgfVxuXG4gICAgZ2V0IGluaXRpYWxQYWdlU3RhdGUoKTogUm93TGlzdFN0YXRlPHt9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmaWx0ZXI6IHt9LFxuICAgICAgICAgICAgcGFnZUNvbmZpZzoge1xuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiAyMCxcbiAgICAgICAgICAgICAgICBwYWdlTnVtYmVyOiAxLFxuICAgICAgICAgICAgICAgIHNvcnRBY3RpdmU6ICdkYXRlVGltZScsXG4gICAgICAgICAgICAgICAgc29ydERpcmVjdGlvbjogJ2Rlc2MnLFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2F2ZVBhZ2VTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgLy8gc3RhdGUgbm90IHNhdmVkXG4gICAgfVxufVxuIiwiPG5yY2wtZGV2aWNlLXZpZXc+XG4gICAgPG5nLXRlbXBsYXRlIGRlc2t0b3Atdmlldz5cbiAgICAgICAgQGlmICggcm93cz8ubGVuZ3RoID4gMCApIHtcbiAgICAgICAgICAgIDxucmNsLXJvdy1saXN0LWRlc2t0b3AgW3Nob3dSb3dIb3Zlcl09XCJmYWxzZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtdGFibGVcbiAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwicm93cyB8IHBhZ2luYXRlOiBwYWdpbmF0ZVN0YXRlKCAnZGVza3RvcC1ldmVudC1oaXN0b3J5JyApXCJcbiAgICAgICAgICAgICAgICAgICAgbWF0U29ydFxuICAgICAgICAgICAgICAgICAgICBbbWF0U29ydEFjdGl2ZV09XCJzb3J0QWN0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgW21hdFNvcnREaXJlY3Rpb25dPVwic29ydERpcmVjdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIChtYXRTb3J0Q2hhbmdlKT1cIm9uU29ydENoYW5nZSggJGV2ZW50IClcIj5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZGF0ZVRpbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgbWF0LXNvcnQtaGVhZGVyPkRhdGUgYW5kIFRpbWU8L21hdC1oZWFkZXItY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5yY2wtY2VsbC1jb250ZW50IHRvb2x0aXA+e3sgaXRlbS5ldmVudFRpbWVzdGFtcCB9fTwvbnJjbC1jZWxsLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImNoYW5nZWRCeVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtc29ydC1oZWFkZXI+VXNlciBJRDwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnJjbC1jZWxsLWNvbnRlbnQgdG9vbHRpcD57eyBpdGVtLmNyZWF0ZWRCeVVzZXJJZCB9fTwvbnJjbC1jZWxsLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInR5cGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgbWF0LXNvcnQtaGVhZGVyPlR5cGU8L21hdC1oZWFkZXItY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5yY2wtY2VsbC1jb250ZW50IHRvb2x0aXA+e3sgaXRlbS5ldmVudEhpc3RvcnlUeXBlRGVzY3JpcHRpb24gfX08L25yY2wtY2VsbC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJzZWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlcj5TZWN0aW9uPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxucmNsLWNlbGwtY29udGVudCB0b29sdGlwPnt7IGl0ZW0uc291cmNlT2JqZWN0TmFtZURlc2NyaXB0aW9uIH19PC9ucmNsLWNlbGwtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWNlbGw+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiY29tbWVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5Db21tZW50PC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uY29tbWVudCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zOyBzdGlja3k6IHRydWVcIj48L21hdC1oZWFkZXItcm93PlxuICAgICAgICAgICAgICAgICAgICA8bWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IGl0ZW07IGNvbHVtbnM6IGNvbHVtbnM7XCI+PC9tYXQtcm93PlxuICAgICAgICAgICAgICAgIDwvbWF0LXRhYmxlPlxuICAgICAgICAgICAgPC9ucmNsLXJvdy1saXN0LWRlc2t0b3A+XG5cbiAgICAgICAgICAgIDxucmNsLWdhcC8+XG4gICAgICAgIH1cblxuICAgICAgICA8bnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uXG4gICAgICAgICAgICBwYWdpbmF0aW9uSWQ9XCJkZXNrdG9wLWV2ZW50LWhpc3RvcnlcIlxuICAgICAgICAgICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCJcbiAgICAgICAgICAgIFtwYWdlTnVtYmVyXT1cInBhZ2VOdW1iZXJcIlxuICAgICAgICAgICAgW3Jvd0NvdW50XT1cInRvdGFsUm93Q291bnRcIlxuICAgICAgICAgICAgKHBhZ2VOdW1iZXJDaGFuZ2UpPVwib25QYWdlTnVtYmVyQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgICAgICAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSggJGV2ZW50IClcIlxuICAgICAgICAgICAgW25vUm93c01lc3NhZ2VdPVwibm9Sb3dzTWVzc2FnZVwiXG4gICAgICAgID48L25yY2wtcm93LWxpc3QtcGFnaW5hdGlvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlIG1vYmlsZS12aWV3PlxuICAgICAgICBAaWYgKCByb3dzPy5sZW5ndGggPiAwICkge1xuICAgICAgICAgICAgPG5yY2wtZ2FwLz5cblxuICAgICAgICAgICAgPG5yY2wtcm93LWxpc3Qtc29ydGluZ1xuICAgICAgICAgICAgICAgIFtzb3J0Q29sdW1uXT1cInNvcnRBY3RpdmVcIlxuICAgICAgICAgICAgICAgIFtzb3J0Q29sdW1uT3B0aW9uc109XCJzb3J0Q29sdW1uc1wiXG4gICAgICAgICAgICAgICAgW3NvcnREaXJlY3Rpb25dPVwic29ydERpcmVjdGlvblwiXG4gICAgICAgICAgICAgICAgKHNvcnRDaGFuZ2UpPVwib25Tb3J0Q2hhbmdlKCRldmVudClcIj5cbiAgICAgICAgICAgIDwvbnJjbC1yb3ctbGlzdC1zb3J0aW5nPlxuXG4gICAgICAgICAgICA8bnJjbC1nYXAvPlxuXG4gICAgICAgICAgICA8bnJjbC1yb3ctbGlzdC1tb2JpbGU+XG4gICAgICAgICAgICAgICAgQGZvciAoIGl0ZW0gb2Ygcm93cyB8IHBhZ2luYXRlOiBwYWdpbmF0ZVN0YXRlKCAnbW9iaWxlLWV2ZW50LWhpc3RvcnknICk7IHRyYWNrIGl0ZW0uZXZlbnRIaXN0b3J5R3VpZCApIHtcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1jYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIHRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDI+e3sgaXRlbS5ldmVudFRpbWVzdGFtcCB9fTwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2FyZC10aXRsZT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+VXNlciBJRDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57eyBpdGVtLmNyZWF0ZWRCeVVzZXJJZCB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPlR5cGU8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCI+e3sgaXRlbS5ldmVudEhpc3RvcnlUeXBlRGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBmdWxsLXdpZHRoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPlNlY3Rpb248L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCI+e3sgaXRlbS5zb3VyY2VPYmplY3ROYW1lRGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBmdWxsLXdpZHRoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPkNvbW1lbnQ8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCI+e3sgaXRlbS5jb21tZW50IH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICA8L21hdC1jYXJkPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbnJjbC1yb3ctbGlzdC1tb2JpbGU+XG5cbiAgICAgICAgICAgIDxucmNsLWdhcC8+XG4gICAgICAgIH1cblxuICAgICAgICA8bnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uXG4gICAgICAgICAgICBwYWdpbmF0aW9uSWQ9XCJtb2JpbGUtZXZlbnQtaGlzdG9yeVwiXG4gICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICAgICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgICAgICAgICBbcm93Q291bnRdPVwidG90YWxSb3dDb3VudFwiXG4gICAgICAgICAgICAocGFnZU51bWJlckNoYW5nZSk9XCJvblBhZ2VOdW1iZXJDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgICAgICBbbm9Sb3dzTWVzc2FnZV09XCJub1Jvd3NNZXNzYWdlXCJcbiAgICAgICAgPjwvbnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25yY2wtZGV2aWNlLXZpZXc+XG4iXX0=
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1ldmVudC1oaXN0b3J5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL2xpc3QtZXZlbnQtaGlzdG9yeS9saXN0LWV2ZW50LWhpc3RvcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1ldmVudC1oaXN0b3J5L2xpc3QtZXZlbnQtaGlzdG9yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsV0FBVyxFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUE4QnJELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxXQUFvQztJQU5uRjs7UUFRYSxjQUFTLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLG1CQUFjLEdBQUcsS0FBSyxDQUFBO1FBQ3RCLGVBQVUsR0FBWSxLQUFLLENBQUE7UUFDM0Isa0JBQWEsR0FBRyw4QkFBOEIsQ0FBQTtRQUV2RCxpQkFBWSxHQUFHLFlBQVksQ0FBQTtRQUMzQixZQUFPLEdBQUcsQ0FBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFFLENBQUE7UUFDbkUsZ0JBQVcsR0FBRztZQUNWLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFO1lBQ2xELEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO1lBQ2hELEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFO1lBQ3JDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFO1NBQzlDLENBQUE7S0FtQ0o7SUFqQ0csZ0JBQWdCO1FBQ1osSUFBSyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsaUJBQWlCO1lBQUcsTUFBTSxLQUFLLENBQUUsNEVBQTRFLENBQUUsQ0FBQTtRQUUzSSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUU7WUFDM0MsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDM0IsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtTQUNwQyxDQUFFLENBQUE7SUFDUCxDQUFDO0lBRUQsU0FBUyxDQUFFLEdBQVE7UUFDZixJQUFLLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxrQkFBa0I7WUFBRyxNQUFNLEtBQUssQ0FBRSw4RUFBOEUsQ0FBRSxDQUFBO1FBRTlJLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBRSxHQUFHLENBQUUsQ0FBQTtJQUN6RCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsT0FBTztZQUNILE1BQU0sRUFBRSxFQUFFO1lBQ1YsVUFBVSxFQUFFO2dCQUNSLFFBQVEsRUFBRSxFQUFFO2dCQUNaLFVBQVUsRUFBRSxDQUFDO2dCQUNiLFVBQVUsRUFBRSxVQUFVO2dCQUN0QixhQUFhLEVBQUUsTUFBTTthQUN4QjtTQUNKLENBQUE7SUFDTCxDQUFDO0lBRUQsYUFBYTtRQUNULGtCQUFrQjtJQUN0QixDQUFDOytHQWhEUSx5QkFBeUI7bUdBQXpCLHlCQUF5QiwwUENqQ3RDLG9pTEE4SEE7OzRGRDdGYSx5QkFBeUI7a0JBTnJDLFNBQVM7K0JBQ0kseUJBQXlCLG1CQUdsQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFJvd0xpc3RCYXNlLCBSb3dMaXN0U3RhdGUgfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9yb3ctbGlzdC5iYXNlXCI7XG5pbXBvcnQgeyBEQVRFX0ZPUk1BVFMgfSBmcm9tIFwiLi4vLi4vdXRpbHMvZGF0ZS51dGlsXCI7XG5cbmV4cG9ydCB0eXBlIEV2ZW50SGlzdG9yeVRhYmxlUm93ID0ge1xuICAgIGV2ZW50VGltZXN0YW1wOiBzdHJpbmdcbiAgICBjcmVhdGVkQnlVc2VySWQ6IHN0cmluZ1xuICAgIGV2ZW50SGlzdG9yeVR5cGVEZXNjcmlwdGlvbjogc3RyaW5nXG4gICAgc291cmNlT2JqZWN0TmFtZURlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICBjb21tZW50OiBzdHJpbmdcbiAgICBldmVudEhpc3RvcnlHdWlkOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgRmV0Y2hFdmVudEhpc3RvcnlQYXJhbWV0ZXJzID0geyBcbiAgICBpc1N1cHBsaWVyOiBib29sZWFuIFxuICAgIHBhZ2VOdW1iZXI6IG51bWJlciBcbiAgICBwYWdlUm93Q291bnQ6IG51bWJlciBcbiAgICBzb3J0Q29sdW1uOiBzdHJpbmcgXG4gICAgc29ydERpcmVjdGlvbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRIaXN0b3J5Um93TGlzdFByb3ZpZGVyPFIsTD1hbnk+IHtcbiAgICBmZXRjaEV2ZW50SGlzdG9yeSggeDogRmV0Y2hFdmVudEhpc3RvcnlQYXJhbWV0ZXJzICk6IE9ic2VydmFibGU8TD4gICAgXG4gICAgZGlzcGxheVJvd0xpc3RQYWdlKCByZXM6IEwgKTogRXZlbnRIaXN0b3J5VGFibGVSb3dbXVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWxpc3QtZXZlbnQtaGlzdG9yeVwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vbGlzdC1ldmVudC1oaXN0b3J5LmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmw6IFwiLi9saXN0LWV2ZW50LWhpc3RvcnkuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMaXN0RXZlbnRIaXN0b3J5Q29tcG9uZW50IGV4dGVuZHMgUm93TGlzdEJhc2U8e30sRXZlbnRIaXN0b3J5VGFibGVSb3c+IHtcbiAgICBASW5wdXQoKSByb3dMaXN0UHJvdmlkZXI/OiBFdmVudEhpc3RvcnlSb3dMaXN0UHJvdmlkZXI8RXZlbnRIaXN0b3J5VGFibGVSb3c+XG4gICAgQElucHV0KCkgY2FuRGVsZXRlID0gdHJ1ZVxuICAgIEBJbnB1dCgpIHNob3dQYWdpbmF0aW9uID0gZmFsc2VcbiAgICBASW5wdXQoKSBpc1N1cHBsaWVyOiBib29sZWFuID0gZmFsc2VcbiAgICBASW5wdXQoKSBub1Jvd3NNZXNzYWdlID0gXCJObyBjb21tZW50cyBoYXZlIGJlZW4gYWRkZWQuXCJcblxuICAgIERBVEVfRk9STUFUUyA9IERBVEVfRk9STUFUU1xuICAgIGNvbHVtbnMgPSBbICdkYXRlVGltZScsICdjaGFuZ2VkQnknLCAndHlwZScsICdzZWN0aW9uJywgJ2NvbW1lbnQnIF1cbiAgICBzb3J0Q29sdW1ucyA9IFtcbiAgICAgICAgeyBjb2RlOiAnZGF0ZVRpbWUnLCBkZXNjcmlwdGlvbjogJ0RhdGUgYW5kIFRpbWUnIH0sXG4gICAgICAgIHsgY29kZTogJ2NoYW5nZWRCeScsIGRlc2NyaXB0aW9uOiAnQ2hhbmdlZCBCeScgfSxcbiAgICAgICAgeyBjb2RlOiAndHlwZScsIGRlc2NyaXB0aW9uOiAnVHlwZScgfSxcbiAgICAgICAgeyBjb2RlOiAnc2VjdGlvbicsIGRlc2NyaXB0aW9uOiAnU2VjdGlvbicgfSxcbiAgICBdXG5cbiAgICBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmICggIXRoaXMucm93TGlzdFByb3ZpZGVyPy5mZXRjaEV2ZW50SGlzdG9yeSApIHRocm93IEVycm9yKCAnbm8gcHJvdmlkZXIgZm9yIExpc3RFdmVudEhpc3RvcnlDb21wb25lbnQucm93TGlzdFByb3ZpZGVyLmZldGNoUm93TGlzdFBhZ2UnIClcblxuICAgICAgICByZXR1cm4gdGhpcy5yb3dMaXN0UHJvdmlkZXIuZmV0Y2hFdmVudEhpc3RvcnkoIHtcbiAgICAgICAgICAgIGlzU3VwcGxpZXI6IHRoaXMuaXNTdXBwbGllcixcbiAgICAgICAgICAgIHBhZ2VOdW1iZXI6IHRoaXMucGFnZU51bWJlcixcbiAgICAgICAgICAgIHBhZ2VSb3dDb3VudDogdGhpcy5wYWdlU2l6ZSxcbiAgICAgICAgICAgIHNvcnRDb2x1bW46IHRoaXMuc29ydEFjdGl2ZSxcbiAgICAgICAgICAgIHNvcnREaXJlY3Rpb246IHRoaXMuc29ydERpcmVjdGlvbixcbiAgICAgICAgfSApXG4gICAgfVxuXG4gICAgcGFyc2VSb3dzKCByZXM6IGFueSApOiBFdmVudEhpc3RvcnlUYWJsZVJvd1tdIHtcbiAgICAgICAgaWYgKCAhdGhpcy5yb3dMaXN0UHJvdmlkZXI/LmRpc3BsYXlSb3dMaXN0UGFnZSApIHRocm93IEVycm9yKCAnbm8gcHJvdmlkZXIgZm9yIExpc3RFdmVudEhpc3RvcnlDb21wb25lbnQucm93TGlzdFByb3ZpZGVyLmRpc3BsYXlSb3dMaXN0UGFnZScgKVxuXG4gICAgICAgIHJldHVybiB0aGlzLnJvd0xpc3RQcm92aWRlci5kaXNwbGF5Um93TGlzdFBhZ2UoIHJlcyApXG4gICAgfVxuXG4gICAgZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpOiBSb3dMaXN0U3RhdGU8e30+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZpbHRlcjoge30sXG4gICAgICAgICAgICBwYWdlQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgcGFnZVNpemU6IDIwLFxuICAgICAgICAgICAgICAgIHBhZ2VOdW1iZXI6IDEsXG4gICAgICAgICAgICAgICAgc29ydEFjdGl2ZTogJ2RhdGVUaW1lJyxcbiAgICAgICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiAnZGVzYycsXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzYXZlUGFnZVN0YXRlKCk6IHZvaWQge1xuICAgICAgICAvLyBzdGF0ZSBub3Qgc2F2ZWRcbiAgICB9XG59XG4iLCI8bnJjbC1kZXZpY2Utdmlldz5cbiAgICA8bmctdGVtcGxhdGUgZGVza3RvcC12aWV3PlxuICAgICAgICBAaWYgKCByb3dzPy5sZW5ndGggPiAwICkge1xuICAgICAgICAgICAgPG5yY2wtcm93LWxpc3QtZGVza3RvcCBbc2hvd1Jvd0hvdmVyXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgPG1hdC10YWJsZVxuICAgICAgICAgICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJyb3dzIHwgcGFnaW5hdGU6IHBhZ2luYXRlU3RhdGUoICdkZXNrdG9wLWV2ZW50LWhpc3RvcnknIClcIlxuICAgICAgICAgICAgICAgICAgICBtYXRTb3J0XG4gICAgICAgICAgICAgICAgICAgIFttYXRTb3J0QWN0aXZlXT1cInNvcnRBY3RpdmVcIlxuICAgICAgICAgICAgICAgICAgICBbbWF0U29ydERpcmVjdGlvbl09XCJzb3J0RGlyZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgKG1hdFNvcnRDaGFuZ2UpPVwib25Tb3J0Q2hhbmdlKCAkZXZlbnQgKVwiPlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJkYXRlVGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtc29ydC1oZWFkZXI+RGF0ZSBhbmQgVGltZTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnJjbC1jZWxsLWNvbnRlbnQgdG9vbHRpcD57eyBpdGVtLmV2ZW50VGltZXN0YW1wIH19PC9ucmNsLWNlbGwtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWNlbGw+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiY2hhbmdlZEJ5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlcj5Vc2VyIElEPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxucmNsLWNlbGwtY29udGVudCB0b29sdGlwPnt7IGl0ZW0uY3JlYXRlZEJ5VXNlcklkIH19PC9ucmNsLWNlbGwtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWNlbGw+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwidHlwZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtc29ydC1oZWFkZXI+VHlwZTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnJjbC1jZWxsLWNvbnRlbnQgdG9vbHRpcD57eyBpdGVtLmV2ZW50SGlzdG9yeVR5cGVEZXNjcmlwdGlvbiB9fTwvbnJjbC1jZWxsLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInNlY3Rpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgbWF0LXNvcnQtaGVhZGVyPlNlY3Rpb248L21hdC1oZWFkZXItY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5yY2wtY2VsbC1jb250ZW50IHRvb2x0aXA+e3sgaXRlbS5zb3VyY2VPYmplY3ROYW1lRGVzY3JpcHRpb24gfX08L25yY2wtY2VsbC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjb21tZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPkNvbW1lbnQ8L21hdC1oZWFkZXItY2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5jb21tZW50IH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICA8bWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbnM7IHN0aWNreTogdHJ1ZVwiPjwvbWF0LWhlYWRlci1yb3c+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgaXRlbTsgY29sdW1uczogY29sdW1ucztcIj48L21hdC1yb3c+XG4gICAgICAgICAgICAgICAgPC9tYXQtdGFibGU+XG4gICAgICAgICAgICA8L25yY2wtcm93LWxpc3QtZGVza3RvcD5cblxuICAgICAgICAgICAgPG5yY2wtZ2FwLz5cbiAgICAgICAgfVxuXG4gICAgICAgIDxucmNsLXJvdy1saXN0LXBhZ2luYXRpb25cbiAgICAgICAgICAgIHBhZ2luYXRpb25JZD1cImRlc2t0b3AtZXZlbnQtaGlzdG9yeVwiXG4gICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICAgICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgICAgICAgICBbcm93Q291bnRdPVwidG90YWxSb3dDb3VudFwiXG4gICAgICAgICAgICAocGFnZU51bWJlckNoYW5nZSk9XCJvblBhZ2VOdW1iZXJDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgICAgICBbbm9Sb3dzTWVzc2FnZV09XCJub1Jvd3NNZXNzYWdlXCJcbiAgICAgICAgPjwvbnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgbW9iaWxlLXZpZXc+XG4gICAgICAgIEBpZiAoIHJvd3M/Lmxlbmd0aCA+IDAgKSB7XG4gICAgICAgICAgICA8bnJjbC1nYXAvPlxuXG4gICAgICAgICAgICA8bnJjbC1yb3ctbGlzdC1zb3J0aW5nXG4gICAgICAgICAgICAgICAgW3NvcnRDb2x1bW5dPVwic29ydEFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgW3NvcnRDb2x1bW5PcHRpb25zXT1cInNvcnRDb2x1bW5zXCJcbiAgICAgICAgICAgICAgICBbc29ydERpcmVjdGlvbl09XCJzb3J0RGlyZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAoc29ydENoYW5nZSk9XCJvblNvcnRDaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPC9ucmNsLXJvdy1saXN0LXNvcnRpbmc+XG5cbiAgICAgICAgICAgIDxucmNsLWdhcC8+XG5cbiAgICAgICAgICAgIDxucmNsLXJvdy1saXN0LW1vYmlsZT5cbiAgICAgICAgICAgICAgICBAZm9yICggaXRlbSBvZiByb3dzIHwgcGFnaW5hdGU6IHBhZ2luYXRlU3RhdGUoICdtb2JpbGUtZXZlbnQtaGlzdG9yeScgKTsgdHJhY2sgaXRlbS5ldmVudEhpc3RvcnlHdWlkICkge1xuICAgICAgICAgICAgICAgICAgICA8bWF0LWNhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNhcmQtdGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gdGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMj57eyBpdGVtLmV2ZW50VGltZXN0YW1wIH19PC9oMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNhcmQtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5Vc2VyIElEPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPnt7IGl0ZW0uY3JlYXRlZEJ5VXNlcklkIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+VHlwZTwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57eyBpdGVtLmV2ZW50SGlzdG9yeVR5cGVEZXNjcmlwdGlvbiB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGZ1bGwtd2lkdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+U2VjdGlvbjwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57eyBpdGVtLnNvdXJjZU9iamVjdE5hbWVEZXNjcmlwdGlvbiB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGZ1bGwtd2lkdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+Q29tbWVudDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57eyBpdGVtLmNvbW1lbnQgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWNhcmQ+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9ucmNsLXJvdy1saXN0LW1vYmlsZT5cblxuICAgICAgICAgICAgPG5yY2wtZ2FwLz5cbiAgICAgICAgfVxuXG4gICAgICAgIDxucmNsLXJvdy1saXN0LXBhZ2luYXRpb25cbiAgICAgICAgICAgIHBhZ2luYXRpb25JZD1cIm1vYmlsZS1ldmVudC1oaXN0b3J5XCJcbiAgICAgICAgICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gICAgICAgICAgICBbcGFnZU51bWJlcl09XCJwYWdlTnVtYmVyXCJcbiAgICAgICAgICAgIFtyb3dDb3VudF09XCJ0b3RhbFJvd0NvdW50XCJcbiAgICAgICAgICAgIChwYWdlTnVtYmVyQ2hhbmdlKT1cIm9uUGFnZU51bWJlckNoYW5nZSggJGV2ZW50IClcIlxuICAgICAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIFtub1Jvd3NNZXNzYWdlXT1cIm5vUm93c01lc3NhZ2VcIlxuICAgICAgICA+PC9ucmNsLXJvdy1saXN0LXBhZ2luYXRpb24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvbnJjbC1kZXZpY2Utdmlldz5cbiJdfQ==
@@ -33,7 +33,7 @@ export class ListSelectComponent extends RowListBase {
33
33
  this.displayColumns = this.displayColumnsProvider([...this.defaultDisplayColumns]);
34
34
  });
35
35
  }
36
- get initialPageState() {
36
+ getInitialPageState() {
37
37
  return {
38
38
  filter: {},
39
39
  pageConfig: {
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
134
134
  type: ContentChildren,
135
135
  args: [MatColumnDef]
136
136
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1zZWxlY3QvbGlzdC1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1zZWxlY3QvbGlzdC1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUE0QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDck0sT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxXQUFXLEVBQWdCLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7OztBQVMzRSxNQUFNLE9BQU8sbUJBQXVCLFNBQVEsV0FBK0I7SUFOM0U7O1FBU2EscUJBQWdCLEdBQUcsYUFBYSxDQUFBO1FBRWhDLGtCQUFhLEdBQUcsMkJBQTJCLENBQUE7UUFDM0MsMkJBQXNCLEdBQW1DLENBQUUsSUFBSSxFQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUE7UUFDekUsbUJBQWMsR0FBMkMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFBO1FBRWxFLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUMzQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFRakQsMEJBQXFCLEdBQUcsQ0FBRSxhQUFhLEVBQUUsV0FBVyxDQUFFLENBQUE7UUFDdEQsbUJBQWMsR0FBRyxFQUFFLENB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QixNQUFNO2dCQUVnQyxLQUFLO3NCQUEzQyxTQUFTO3VCQUFFLFFBQVEsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRUgsVUFBVTtzQkFBMUMsZUFBZTt1QkFBRSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgYm9vbGVhbkF0dHJpYnV0ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTWF0Q29sdW1uRGVmLCBNYXRUYWJsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC90YWJsZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgUm93TGlzdEJhc2UsIFJvd0xpc3RTdGF0ZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL3Jvdy1saXN0LmJhc2VcIjtcbmltcG9ydCB7IENvZGVEZXNjcmlwdGlvbiB9IGZyb20gXCIuLi8uLi91dGlscy9jb2RlLXRhYmxlLnV0aWxcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibnJjbC1saXN0LXNlbGVjdFwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vbGlzdC1zZWxlY3QuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybDogXCIuL2xpc3Qtc2VsZWN0LmNvbXBvbmVudC5zY3NzXCIsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTGlzdFNlbGVjdENvbXBvbmVudDxUPiBleHRlbmRzIFJvd0xpc3RCYXNlPHt9LENvZGVEZXNjcmlwdGlvbj4gaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBJbnB1dCgpIG9wdGlvbnM6IENvZGVEZXNjcmlwdGlvbltdXG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZ1tdXG4gICAgQElucHV0KCkgZGVzY3JpcHRpb25MYWJlbCA9ICdEZXNjcmlwdGlvbidcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBzaW5nbGUgXG4gICAgQElucHV0KCkgbm9Sb3dzTWVzc2FnZSA9IFwiTm8gaXRlbXMgaGF2ZSBiZWVuIGFkZGVkLlwiXG4gICAgQElucHV0KCkgZGlzcGxheUNvbHVtbnNQcm92aWRlcjogKCBjb2xzOiBzdHJpbmdbXSApID0+IHN0cmluZ1tdID0gKCBjb2xzICkgPT4gY29sc1xuICAgIEBJbnB1dCgpIGZpbHRlclByb3ZpZGVyOiAoIG9wdGlvbjogQ29kZURlc2NyaXB0aW9uICkgPT4gYm9vbGVhbiA9ICgpID0+IHRydWVcbiAgIFxuICAgIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG4gICAgQE91dHB1dCgpIGZpbHRlckNsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIFxuICAgIEBWaWV3Q2hpbGQoIE1hdFRhYmxlLCB7c3RhdGljOiB0cnVlfSApIHRhYmxlITogTWF0VGFibGU8VD47XG4gICAgXG4gICAgQENvbnRlbnRDaGlsZHJlbiggTWF0Q29sdW1uRGVmICkgY29sdW1uRGVmcyE6IFF1ZXJ5TGlzdDxNYXRDb2x1bW5EZWY+O1xuICAgIFxuICAgIHNlYXJjaFRleHRcbiAgICBzZWFyY2hSZWdleHA6IFJlZ0V4cFxuICAgIGRlZmF1bHREaXNwbGF5Q29sdW1ucyA9IFsgJ2Rlc2NyaXB0aW9uJywgJ2FkZFJlbW92ZScgXVxuICAgIGRpc3BsYXlDb2x1bW5zID0gW11cblxuICAgIG5nT25DaGFuZ2VzKCBjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzICk6IHZvaWQge1xuICAgICAgICBpZiAoIGNoYW5nZXMub3B0aW9ucyApIHtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbHVtbkRlZnMuZm9yRWFjaChjb2x1bW5EZWYgPT4gdGhpcy50YWJsZS5hZGRDb2x1bW5EZWYoY29sdW1uRGVmKSk7XG5cbiAgICAgICAgc2V0VGltZW91dCggKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IHRoaXMuZGlzcGxheUNvbHVtbnNQcm92aWRlciggWyAuLi50aGlzLmRlZmF1bHREaXNwbGF5Q29sdW1ucyBdIClcbiAgICAgICAgfSApXG4gICAgfVxuXG4gICAgZ2V0IGluaXRpYWxQYWdlU3RhdGUoKTogUm93TGlzdFN0YXRlPHt9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmaWx0ZXI6IHt9LFxuICAgICAgICAgICAgcGFnZUNvbmZpZzoge1xuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiAwLFxuICAgICAgICAgICAgICAgIHBhZ2VOdW1iZXI6IDEsXG4gICAgICAgICAgICAgICAgc29ydEFjdGl2ZTogJycsXG4gICAgICAgICAgICAgICAgc29ydERpcmVjdGlvbjogJ2Rlc2MnLFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZmV0Y2hSb3dMaXN0UGFnZSgpOiBPYnNlcnZhYmxlPENvZGVEZXNjcmlwdGlvbltdPiB7XG4gICAgICAgIHJldHVybiBvZiggdGhpcy5vcHRpb25zLmZpbHRlciggbyA9PiB0aGlzLmZpbHRlck9wdGlvbiggbyApICkgKVxuICAgIH1cbiAgICBcbiAgICBwYXJzZVJvd3MoIHJlczogYW55ICk6IENvZGVEZXNjcmlwdGlvbltdIHtcbiAgICAgICAgcmV0dXJuIHJlc1xuICAgIH1cblxuICAgIHBhcnNlVG90YWxSb3dDb3VudCggcmVzOiBhbnkgKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHJlcy5sZW5ndGhcbiAgICB9XG5cbiAgICBpc1NlbGVjdGVkKCBpdGVtOiBDb2RlRGVzY3JpcHRpb24gKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlPy5pbmNsdWRlcyggaXRlbS5jb2RlIClcbiAgICB9XG5cbiAgICBvblJvd0NsaWNrKCBpdGVtOiBDb2RlRGVzY3JpcHRpb24gKSB7ICAgICAgIFxuICAgICAgICBpZiAoIHRoaXMuc2luZ2xlICkge1xuICAgICAgICAgICAgaWYgKCB0aGlzLmlzU2VsZWN0ZWQoIGl0ZW0gKSApIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gW11cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbIGl0ZW0uY29kZSBdXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBsZXQgdmFsID0gdGhpcy52YWx1ZSB8fCBbXVxuXG4gICAgICAgICAgICBpZiAoIHRoaXMuaXNTZWxlY3RlZCggaXRlbSApICkge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWwuZmlsdGVyKCBjID0+IGMgIT0gaXRlbS5jb2RlIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWwuY29uY2F0KCBpdGVtLmNvZGUgKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KCB0aGlzLnZhbHVlIClcbiAgICB9ICAgIFxuXG4gICAgb25DbGVhckZpbHRlcnMoKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IG51bGxcbiAgICAgICAgdGhpcy5zZWFyY2hSZWdleHAgPSBudWxsXG4gICAgICAgIHRoaXMuZmlsdGVyQ2xlYXIuZW1pdCgpXG4gICAgICAgIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgIH1cblxuICAgIG9uU2VhcmNoVGV4dENoYW5nZSggZXYgKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IGV2XG5cbiAgICAgICAgbGV0IHQgPSB0aGlzLnNlYXJjaFRleHQ/LnRyaW0oKVxuICAgICAgICBpZiAoIHQgKSB7XG4gICAgICAgICAgICB0ID0gdC50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoIC9cXHMrL2csICcuKicgKVxuICAgICAgICAgICAgdGhpcy5zZWFyY2hSZWdleHAgPSBuZXcgUmVnRXhwKCB0LCAnaScgKSBcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoUmVnZXhwID0gbnVsbFxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgZmlsdGVyT3B0aW9uKCBvcHRpb246IENvZGVEZXNjcmlwdGlvbiApOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCB0aGlzLnNlYXJjaFJlZ2V4cCAmJiAhdGhpcy5zZWFyY2hSZWdleHAudGVzdCggb3B0aW9uLmRlc2NyaXB0aW9uICkgKSByZXR1cm4gZmFsc2VcblxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJQcm92aWRlciggb3B0aW9uIClcbiAgICB9XG5cbiAgICBzYXZlUGFnZVN0YXRlKCk6IHZvaWQge1xuICAgICAgICAvLyBzdGF0ZSBub3Qgc2F2ZWRcbiAgICB9XG59XG4iLCJAaWYgKCAhc2luZ2xlICkge1xuICAgIDxkaXYgY2xhc3M9XCJzdW1tYXJ5XCI+XG4gICAgICAgIDxoMz57eyB2YWx1ZT8ubGVuZ3RoIHx8ICcwJyB9fSBTZWxlY3RlZDwvaDM+XG4gICAgPC9kaXY+XG59XG5cbjxucmNsLWZpbHRlcnMtcGFuZWwgKGNsZWFyRmlsdGVycyk9XCJvbkNsZWFyRmlsdGVycygpXCI+XG4gICAgPG5yY2wtZmlsdGVyLXNlYXJjaFxuICAgICAgICBbKHZhbHVlKV09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uU2VhcmNoVGV4dENoYW5nZSggJGV2ZW50IClcIj5cbiAgICA8L25yY2wtZmlsdGVyLXNlYXJjaD5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmaWx0ZXJdXCI+PC9uZy1jb250ZW50PlxuPC9ucmNsLWZpbHRlcnMtcGFuZWw+XG5cbjxucmNsLXJvdy1saXN0LWRlc2t0b3AgW2NsYXNzLmVtcHR5XT1cInJvd3M/Lmxlbmd0aCA9PSAwXCI+XG4gICAgPG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJyb3dzXCIgPlxuICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPnt7IGRlc2NyaXB0aW9uTGFiZWwgfX08L21hdC1oZWFkZXItY2VsbD5cbiAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+XG4gICAgICAgICAgICAgICAgPG5yY2wtY2VsbC1jb250ZW50Pnt7IGl0ZW0uZGVzY3JpcHRpb24gfX08L25yY2wtY2VsbC1jb250ZW50PlxuICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhZGRSZW1vdmVcIj5cbiAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+QWRkIFJlbW92ZTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj5cbiAgICAgICAgICAgICAgICA8bnJjbC1pbmRpY2F0b3Itc2VsZWN0IFtzZWxlY3RlZF09XCJpc1NlbGVjdGVkKCBpdGVtIClcIj48L25yY2wtaW5kaWNhdG9yLXNlbGVjdD5cbiAgICAgICAgICAgIDwvbWF0LWNlbGw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuICAgICAgICA8bWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXlDb2x1bW5zOyBzdGlja3k6IHRydWVcIj48L21hdC1oZWFkZXItcm93PlxuXG4gICAgICAgIDxtYXQtcm93XG4gICAgICAgICAgICAqbWF0Um93RGVmPVwibGV0IGl0ZW07IGNvbHVtbnM6IGRpc3BsYXlDb2x1bW5zXCJcbiAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc1NlbGVjdGVkKCBpdGVtIClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUm93Q2xpY2soIGl0ZW0gKVwiXG4gICAgICAgICAgICAoa2V5cHJlc3MpPVwib25Sb3dDbGljayggaXRlbSApXCJcbiAgICAgICAgPjwvbWF0LXJvdz5cbiAgICA8L21hdC10YWJsZT5cbjwvbnJjbC1yb3ctbGlzdC1kZXNrdG9wPlxuXG5AaWYgKCB0b3RhbFJvd0NvdW50ID09IDAgKSB7XG4gICAgPG5yY2wtcm93LWxpc3QtcGFnaW5hdGlvblxuICAgICAgICBwYWdpbmF0aW9uSWQ9XCJsaXN0LXNlbGVjdFwiXG4gICAgICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gICAgICAgIFtwYWdlTnVtYmVyXT1cInBhZ2VOdW1iZXJcIlxuICAgICAgICBbcm93Q291bnRdPVwidG90YWxSb3dDb3VudFwiXG4gICAgICAgIChwYWdlTnVtYmVyQ2hhbmdlKT1cIm9uUGFnZU51bWJlckNoYW5nZSggJGV2ZW50IClcIlxuICAgICAgICAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSggJGV2ZW50IClcIlxuICAgICAgICBbbm9Sb3dzTWVzc2FnZV09XCJub1Jvd3NNZXNzYWdlXCJcbiAgICA+PC9ucmNsLXJvdy1saXN0LXBhZ2luYXRpb24+XG59XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1zZWxlY3QvbGlzdC1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1zZWxlY3QvbGlzdC1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUE0QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDck0sT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxXQUFXLEVBQWdCLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7OztBQVMzRSxNQUFNLE9BQU8sbUJBQXVCLFNBQVEsV0FBK0I7SUFOM0U7O1FBU2EscUJBQWdCLEdBQUcsYUFBYSxDQUFBO1FBRWhDLGtCQUFhLEdBQUcsMkJBQTJCLENBQUE7UUFDM0MsMkJBQXNCLEdBQW1DLENBQUUsSUFBSSxFQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUE7UUFDekUsbUJBQWMsR0FBMkMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFBO1FBRWxFLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUMzQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFRakQsMEJBQXFCLEdBQUcsQ0FBRSxhQUFhLEVBQUUsV0FBVyxDQUFFLENBQUE7UUFDdEQsbUJBQWMsR0FBRyxFQUFFLENB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O2dCQUVnQyxLQUFLO3NCQUEzQyxTQUFTO3VCQUFFLFFBQVEsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRUgsVUFBVTtzQkFBMUMsZUFBZTt1QkFBRSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgYm9vbGVhbkF0dHJpYnV0ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTWF0Q29sdW1uRGVmLCBNYXRUYWJsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC90YWJsZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgUm93TGlzdEJhc2UsIFJvd0xpc3RTdGF0ZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL3Jvdy1saXN0LmJhc2VcIjtcbmltcG9ydCB7IENvZGVEZXNjcmlwdGlvbiB9IGZyb20gXCIuLi8uLi91dGlscy9jb2RlLXRhYmxlLnV0aWxcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibnJjbC1saXN0LXNlbGVjdFwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vbGlzdC1zZWxlY3QuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybDogXCIuL2xpc3Qtc2VsZWN0LmNvbXBvbmVudC5zY3NzXCIsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTGlzdFNlbGVjdENvbXBvbmVudDxUPiBleHRlbmRzIFJvd0xpc3RCYXNlPHt9LENvZGVEZXNjcmlwdGlvbj4gaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBJbnB1dCgpIG9wdGlvbnM6IENvZGVEZXNjcmlwdGlvbltdXG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZ1tdXG4gICAgQElucHV0KCkgZGVzY3JpcHRpb25MYWJlbCA9ICdEZXNjcmlwdGlvbidcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBzaW5nbGUgXG4gICAgQElucHV0KCkgbm9Sb3dzTWVzc2FnZSA9IFwiTm8gaXRlbXMgaGF2ZSBiZWVuIGFkZGVkLlwiXG4gICAgQElucHV0KCkgZGlzcGxheUNvbHVtbnNQcm92aWRlcjogKCBjb2xzOiBzdHJpbmdbXSApID0+IHN0cmluZ1tdID0gKCBjb2xzICkgPT4gY29sc1xuICAgIEBJbnB1dCgpIGZpbHRlclByb3ZpZGVyOiAoIG9wdGlvbjogQ29kZURlc2NyaXB0aW9uICkgPT4gYm9vbGVhbiA9ICgpID0+IHRydWVcbiAgIFxuICAgIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG4gICAgQE91dHB1dCgpIGZpbHRlckNsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIFxuICAgIEBWaWV3Q2hpbGQoIE1hdFRhYmxlLCB7c3RhdGljOiB0cnVlfSApIHRhYmxlITogTWF0VGFibGU8VD47XG4gICAgXG4gICAgQENvbnRlbnRDaGlsZHJlbiggTWF0Q29sdW1uRGVmICkgY29sdW1uRGVmcyE6IFF1ZXJ5TGlzdDxNYXRDb2x1bW5EZWY+O1xuICAgIFxuICAgIHNlYXJjaFRleHRcbiAgICBzZWFyY2hSZWdleHA6IFJlZ0V4cFxuICAgIGRlZmF1bHREaXNwbGF5Q29sdW1ucyA9IFsgJ2Rlc2NyaXB0aW9uJywgJ2FkZFJlbW92ZScgXVxuICAgIGRpc3BsYXlDb2x1bW5zID0gW11cblxuICAgIG5nT25DaGFuZ2VzKCBjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzICk6IHZvaWQge1xuICAgICAgICBpZiAoIGNoYW5nZXMub3B0aW9ucyApIHtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbHVtbkRlZnMuZm9yRWFjaChjb2x1bW5EZWYgPT4gdGhpcy50YWJsZS5hZGRDb2x1bW5EZWYoY29sdW1uRGVmKSk7XG5cbiAgICAgICAgc2V0VGltZW91dCggKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IHRoaXMuZGlzcGxheUNvbHVtbnNQcm92aWRlciggWyAuLi50aGlzLmRlZmF1bHREaXNwbGF5Q29sdW1ucyBdIClcbiAgICAgICAgfSApXG4gICAgfVxuXG4gICAgZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpOiBSb3dMaXN0U3RhdGU8e30+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZpbHRlcjoge30sXG4gICAgICAgICAgICBwYWdlQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgcGFnZVNpemU6IDAsXG4gICAgICAgICAgICAgICAgcGFnZU51bWJlcjogMSxcbiAgICAgICAgICAgICAgICBzb3J0QWN0aXZlOiAnJyxcbiAgICAgICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiAnZGVzYycsXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8Q29kZURlc2NyaXB0aW9uW10+IHtcbiAgICAgICAgcmV0dXJuIG9mKCB0aGlzLm9wdGlvbnMuZmlsdGVyKCBvID0+IHRoaXMuZmlsdGVyT3B0aW9uKCBvICkgKSApXG4gICAgfVxuICAgIFxuICAgIHBhcnNlUm93cyggcmVzOiBhbnkgKTogQ29kZURlc2NyaXB0aW9uW10ge1xuICAgICAgICByZXR1cm4gcmVzXG4gICAgfVxuXG4gICAgcGFyc2VUb3RhbFJvd0NvdW50KCByZXM6IGFueSApOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gcmVzLmxlbmd0aFxuICAgIH1cblxuICAgIGlzU2VsZWN0ZWQoIGl0ZW06IENvZGVEZXNjcmlwdGlvbiApIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU/LmluY2x1ZGVzKCBpdGVtLmNvZGUgKVxuICAgIH1cblxuICAgIG9uUm93Q2xpY2soIGl0ZW06IENvZGVEZXNjcmlwdGlvbiApIHsgICAgICAgXG4gICAgICAgIGlmICggdGhpcy5zaW5nbGUgKSB7XG4gICAgICAgICAgICBpZiAoIHRoaXMuaXNTZWxlY3RlZCggaXRlbSApICkge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IFsgaXRlbS5jb2RlIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGxldCB2YWwgPSB0aGlzLnZhbHVlIHx8IFtdXG5cbiAgICAgICAgICAgIGlmICggdGhpcy5pc1NlbGVjdGVkKCBpdGVtICkgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbC5maWx0ZXIoIGMgPT4gYyAhPSBpdGVtLmNvZGUgKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbC5jb25jYXQoIGl0ZW0uY29kZSApXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoIHRoaXMudmFsdWUgKVxuICAgIH0gICAgXG5cbiAgICBvbkNsZWFyRmlsdGVycygpIHtcbiAgICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gbnVsbFxuICAgICAgICB0aGlzLnNlYXJjaFJlZ2V4cCA9IG51bGxcbiAgICAgICAgdGhpcy5maWx0ZXJDbGVhci5lbWl0KClcbiAgICAgICAgdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgb25TZWFyY2hUZXh0Q2hhbmdlKCBldiApIHtcbiAgICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gZXZcblxuICAgICAgICBsZXQgdCA9IHRoaXMuc2VhcmNoVGV4dD8udHJpbSgpXG4gICAgICAgIGlmICggdCApIHtcbiAgICAgICAgICAgIHQgPSB0LnRvTG93ZXJDYXNlKCkucmVwbGFjZSggL1xccysvZywgJy4qJyApXG4gICAgICAgICAgICB0aGlzLnNlYXJjaFJlZ2V4cCA9IG5ldyBSZWdFeHAoIHQsICdpJyApIFxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hSZWdleHAgPSBudWxsXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJlZnJlc2hSb3dMaXN0KClcbiAgICB9XG5cbiAgICBmaWx0ZXJPcHRpb24oIG9wdGlvbjogQ29kZURlc2NyaXB0aW9uICk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIHRoaXMuc2VhcmNoUmVnZXhwICYmICF0aGlzLnNlYXJjaFJlZ2V4cC50ZXN0KCBvcHRpb24uZGVzY3JpcHRpb24gKSApIHJldHVybiBmYWxzZVxuXG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlclByb3ZpZGVyKCBvcHRpb24gKVxuICAgIH1cblxuICAgIHNhdmVQYWdlU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIC8vIHN0YXRlIG5vdCBzYXZlZFxuICAgIH1cbn1cbiIsIkBpZiAoICFzaW5nbGUgKSB7XG4gICAgPGRpdiBjbGFzcz1cInN1bW1hcnlcIj5cbiAgICAgICAgPGgzPnt7IHZhbHVlPy5sZW5ndGggfHwgJzAnIH19IFNlbGVjdGVkPC9oMz5cbiAgICA8L2Rpdj5cbn1cblxuPG5yY2wtZmlsdGVycy1wYW5lbCAoY2xlYXJGaWx0ZXJzKT1cIm9uQ2xlYXJGaWx0ZXJzKClcIj5cbiAgICA8bnJjbC1maWx0ZXItc2VhcmNoXG4gICAgICAgIFsodmFsdWUpXT1cInNlYXJjaFRleHRcIlxuICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25TZWFyY2hUZXh0Q2hhbmdlKCAkZXZlbnQgKVwiPlxuICAgIDwvbnJjbC1maWx0ZXItc2VhcmNoPlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZpbHRlcl1cIj48L25nLWNvbnRlbnQ+XG48L25yY2wtZmlsdGVycy1wYW5lbD5cblxuPG5yY2wtcm93LWxpc3QtZGVza3RvcCBbY2xhc3MuZW1wdHldPVwicm93cz8ubGVuZ3RoID09IDBcIj5cbiAgICA8bWF0LXRhYmxlIFtkYXRhU291cmNlXT1cInJvd3NcIiA+XG4gICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+e3sgZGVzY3JpcHRpb25MYWJlbCB9fTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj5cbiAgICAgICAgICAgICAgICA8bnJjbC1jZWxsLWNvbnRlbnQ+e3sgaXRlbS5kZXNjcmlwdGlvbiB9fTwvbnJjbC1jZWxsLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImFkZFJlbW92ZVwiPlxuICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5BZGQgUmVtb3ZlPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiPlxuICAgICAgICAgICAgICAgIDxucmNsLWluZGljYXRvci1zZWxlY3QgW3NlbGVjdGVkXT1cImlzU2VsZWN0ZWQoIGl0ZW0gKVwiPjwvbnJjbC1pbmRpY2F0b3Itc2VsZWN0PlxuICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAgICAgIDxtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheUNvbHVtbnM7IHN0aWNreTogdHJ1ZVwiPjwvbWF0LWhlYWRlci1yb3c+XG5cbiAgICAgICAgPG1hdC1yb3dcbiAgICAgICAgICAgICptYXRSb3dEZWY9XCJsZXQgaXRlbTsgY29sdW1uczogZGlzcGxheUNvbHVtbnNcIlxuICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImlzU2VsZWN0ZWQoIGl0ZW0gKVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25Sb3dDbGljayggaXRlbSApXCJcbiAgICAgICAgICAgIChrZXlwcmVzcyk9XCJvblJvd0NsaWNrKCBpdGVtIClcIlxuICAgICAgICA+PC9tYXQtcm93PlxuICAgIDwvbWF0LXRhYmxlPlxuPC9ucmNsLXJvdy1saXN0LWRlc2t0b3A+XG5cbkBpZiAoIHRvdGFsUm93Q291bnQgPT0gMCApIHtcbiAgICA8bnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uXG4gICAgICAgIHBhZ2luYXRpb25JZD1cImxpc3Qtc2VsZWN0XCJcbiAgICAgICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCJcbiAgICAgICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgICAgIFtyb3dDb3VudF09XCJ0b3RhbFJvd0NvdW50XCJcbiAgICAgICAgKHBhZ2VOdW1iZXJDaGFuZ2UpPVwib25QYWdlTnVtYmVyQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgIFtub1Jvd3NNZXNzYWdlXT1cIm5vUm93c01lc3NhZ2VcIlxuICAgID48L25yY2wtcm93LWxpc3QtcGFnaW5hdGlvbj5cbn1cbiJdfQ==
@@ -0,0 +1,47 @@
1
+ import { ChangeDetectionStrategy, Component, ContentChild, Directive, Input, numberAttribute, ViewChild } from "@angular/core";
2
+ import { ScheduleComponent } from "../schedule/schedule.component";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../schedule/schedule.component";
6
+ export class ResourceScheduleRowHeadingDirective {
7
+ constructor(template) {
8
+ this.template = template;
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ResourceScheduleRowHeadingDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
11
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ResourceScheduleRowHeadingDirective, selector: "[nrclResourceScheduleRowHeading]", ngImport: i0 }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ResourceScheduleRowHeadingDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[nrclResourceScheduleRowHeading]'
17
+ }]
18
+ }], ctorParameters: () => [{ type: i0.TemplateRef }] });
19
+ export class ResourceScheduleComponent {
20
+ constructor() {
21
+ this.weekStart = 0;
22
+ }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ResourceScheduleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: ResourceScheduleComponent, selector: "nrcl-resource-schedule", inputs: { provider: "provider", startDate: "startDate", weekStart: "weekStart", dayCount: ["dayCount", "dayCount", numberAttribute], menu: "menu" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ResourceScheduleRowHeadingDirective, descendants: true }], viewQueries: [{ propertyName: "scheduleComponent", first: true, predicate: ScheduleComponent, descendants: true }], ngImport: i0, template: "<nrcl-schedule #schedule\n [provider]=\"provider\"\n [startDate]=\"startDate\"\n [weekStart]=\"weekStart\"\n [dayCount]=\"dayCount\"\n [menu]=\"menu\"\n>\n <ng-content></ng-content>\n\n <ng-template nrclScheduleRowHeading let-item>\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate.template\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\" \n ></ng-container>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"rostered\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>{{ data.shiftType }}</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"out-of-service\" let-data>\n <h1>Out of Svc</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>{{ data.shiftType }}</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-duty-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Duty Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-standby-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Standby Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-off-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Day Off</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-regular-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Regular Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-duty-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Duty Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-standby-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Standby Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-off-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Day Off</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-regular-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Regular Day</h3>\n </ng-template>\n</nrcl-schedule>\n\n", styles: ["::ng-deep :root{--nrcl-resource-schedule-item-foregroud-color: black;--nrcl-resource-schedule-item-text-shadow: 1px 0px 5px #ffffffa0, -1px 0px 5px #ffffffa0, 0px 1px 5px #ffffffa0, 0px -1px 5px #ffffffa0;--nrcl-resource-schedule-item-regular-day-background-color: #0AA647;--nrcl-resource-schedule-item-off-day-background-color: #d4d2d2;--nrcl-resource-schedule-item-duty-day-background-color: #2f9fe0;--nrcl-resource-schedule-item-standby-day-background-color: #f6cf43;--nrcl-resource-schedule-item-out-of-service-background-color: #f55353;--nrcl-resource-schedule-item-rostered-background-color: #ba9ef7}:host{height:100%;display:block}.nrcl-schedule ::ng-deep .inner.item{display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;color:var(--nrcl-resource-schedule-item-foregroud-color)}.nrcl-schedule ::ng-deep .inner.item h1,.nrcl-schedule ::ng-deep .inner.item h2,.nrcl-schedule ::ng-deep .inner.item h3{padding:0;margin:0;font-weight:200}.nrcl-schedule ::ng-deep .inner.item h1{font-size:15px;line-height:15px;text-align:center}.nrcl-schedule ::ng-deep .inner.item h2{flex-grow:1;font-size:14px;line-height:14px;text-align:center;display:flex;justify-content:center;align-items:center}.nrcl-schedule ::ng-deep .inner.item h3{font-size:14px;line-height:14px;text-align:center}.nrcl-schedule ::ng-deep .inner.item.item-out-of-service{background-color:var(--nrcl-resource-schedule-item-out-of-service-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-rostered{background-color:var(--nrcl-resource-schedule-item-rostered-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-duty-day{background-color:var(--nrcl-resource-schedule-item-duty-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-standby-day{background-color:var(--nrcl-resource-schedule-item-standby-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-off-day{background-color:var(--nrcl-resource-schedule-item-off-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-regular-day{background-color:var(--nrcl-resource-schedule-item-regular-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-duty-day{background-color:var(--nrcl-resource-schedule-item-duty-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-standby-day{background-color:var(--nrcl-resource-schedule-item-standby-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-off-day{background-color:var(--nrcl-resource-schedule-item-off-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-regular-day{background-color:var(--nrcl-resource-schedule-item-regular-day-background-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ScheduleComponent, selector: "nrcl-schedule", inputs: ["provider", "startDate", "weekStart", "dayCount", "menu"] }, { kind: "directive", type: i2.ScheduleItemDirective, selector: "[nrclScheduleItem]", inputs: ["nrclScheduleItem"] }, { kind: "directive", type: i2.ScheduleRowHeadingDirective, selector: "[nrclScheduleRowHeading]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ResourceScheduleComponent, decorators: [{
27
+ type: Component,
28
+ args: [{ selector: "nrcl-resource-schedule", changeDetection: ChangeDetectionStrategy.OnPush, template: "<nrcl-schedule #schedule\n [provider]=\"provider\"\n [startDate]=\"startDate\"\n [weekStart]=\"weekStart\"\n [dayCount]=\"dayCount\"\n [menu]=\"menu\"\n>\n <ng-content></ng-content>\n\n <ng-template nrclScheduleRowHeading let-item>\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate.template\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\" \n ></ng-container>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"rostered\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>{{ data.shiftType }}</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"out-of-service\" let-data>\n <h1>Out of Svc</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>{{ data.shiftType }}</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-duty-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Duty Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-standby-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Standby Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-off-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Day Off</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"available-regular-day\" let-data>\n <h1>Available</h1>\n <h2>{{ data.allocationType }}</h2>\n <h3>Regular Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-duty-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Duty Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-standby-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Standby Day</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-off-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Day Off</h3>\n </ng-template>\n\n <ng-template nrclScheduleItem=\"assigned-regular-day\" let-data>\n <!-- <h1></h1> -->\n <h2>{{ data.assignmentName }}</h2>\n <h3>Regular Day</h3>\n </ng-template>\n</nrcl-schedule>\n\n", styles: ["::ng-deep :root{--nrcl-resource-schedule-item-foregroud-color: black;--nrcl-resource-schedule-item-text-shadow: 1px 0px 5px #ffffffa0, -1px 0px 5px #ffffffa0, 0px 1px 5px #ffffffa0, 0px -1px 5px #ffffffa0;--nrcl-resource-schedule-item-regular-day-background-color: #0AA647;--nrcl-resource-schedule-item-off-day-background-color: #d4d2d2;--nrcl-resource-schedule-item-duty-day-background-color: #2f9fe0;--nrcl-resource-schedule-item-standby-day-background-color: #f6cf43;--nrcl-resource-schedule-item-out-of-service-background-color: #f55353;--nrcl-resource-schedule-item-rostered-background-color: #ba9ef7}:host{height:100%;display:block}.nrcl-schedule ::ng-deep .inner.item{display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;color:var(--nrcl-resource-schedule-item-foregroud-color)}.nrcl-schedule ::ng-deep .inner.item h1,.nrcl-schedule ::ng-deep .inner.item h2,.nrcl-schedule ::ng-deep .inner.item h3{padding:0;margin:0;font-weight:200}.nrcl-schedule ::ng-deep .inner.item h1{font-size:15px;line-height:15px;text-align:center}.nrcl-schedule ::ng-deep .inner.item h2{flex-grow:1;font-size:14px;line-height:14px;text-align:center;display:flex;justify-content:center;align-items:center}.nrcl-schedule ::ng-deep .inner.item h3{font-size:14px;line-height:14px;text-align:center}.nrcl-schedule ::ng-deep .inner.item.item-out-of-service{background-color:var(--nrcl-resource-schedule-item-out-of-service-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-rostered{background-color:var(--nrcl-resource-schedule-item-rostered-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-duty-day{background-color:var(--nrcl-resource-schedule-item-duty-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-standby-day{background-color:var(--nrcl-resource-schedule-item-standby-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-off-day{background-color:var(--nrcl-resource-schedule-item-off-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-available-regular-day{background-color:var(--nrcl-resource-schedule-item-regular-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-duty-day{background-color:var(--nrcl-resource-schedule-item-duty-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-standby-day{background-color:var(--nrcl-resource-schedule-item-standby-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-off-day{background-color:var(--nrcl-resource-schedule-item-off-day-background-color)}.nrcl-schedule ::ng-deep .inner.item.item-assigned-regular-day{background-color:var(--nrcl-resource-schedule-item-regular-day-background-color)}\n"] }]
29
+ }], propDecorators: { provider: [{
30
+ type: Input
31
+ }], startDate: [{
32
+ type: Input
33
+ }], weekStart: [{
34
+ type: Input
35
+ }], dayCount: [{
36
+ type: Input,
37
+ args: [{ transform: numberAttribute }]
38
+ }], menu: [{
39
+ type: Input
40
+ }], scheduleComponent: [{
41
+ type: ViewChild,
42
+ args: [ScheduleComponent]
43
+ }], headerTemplate: [{
44
+ type: ContentChild,
45
+ args: [ResourceScheduleRowHeadingDirective]
46
+ }] } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2Utc2NoZWR1bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvcmVzb3VyY2Utc2NoZWR1bGUvcmVzb3VyY2Utc2NoZWR1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvcmVzb3VyY2Utc2NoZWR1bGUvcmVzb3VyY2Utc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzSixPQUFPLEVBQUUsaUJBQWlCLEVBQWtELE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFLbkgsTUFBTSxPQUFPLG1DQUFtQztJQUM1QyxZQUNXLFFBQTBCO1FBQTFCLGFBQVEsR0FBUixRQUFRLENBQWtCO0lBQ25DLENBQUM7K0dBSE0sbUNBQW1DO21HQUFuQyxtQ0FBbUM7OzRGQUFuQyxtQ0FBbUM7a0JBSC9DLFNBQVM7bUJBQUU7b0JBQ1IsUUFBUSxFQUFFLGtDQUFrQztpQkFDL0M7O0FBd0NELE1BQU0sT0FBTyx5QkFBeUI7SUFOdEM7UUFTYSxjQUFTLEdBQUcsQ0FBQyxDQUFBO0tBT3pCOytHQVZZLHlCQUF5QjttR0FBekIseUJBQXlCLHlKQUliLGVBQWUsdUZBS3RCLG1DQUFtQyxtR0FGckMsaUJBQWlCLGdEQ3JEakMsODFFQTZFQTs7NEZEL0JhLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDSSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNtQyxRQUFRO3NCQUFoRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDN0IsSUFBSTtzQkFBWixLQUFLO2dCQUUwQixpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUUsaUJBQWlCO2dCQUVzQixjQUFjO3NCQUFoRSxZQUFZO3VCQUFDLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBJbnB1dCwgbnVtYmVyQXR0cmlidXRlLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE1hdE1lbnVQYW5lbCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XG5pbXBvcnQgeyBTY2hlZHVsZUNvbXBvbmVudCwgU2NoZWR1bGVQcm92aWRlciwgU2NoZWR1bGVSb3csIFNjaGVkdWxlUm93SXRlbSB9IGZyb20gXCIuLi9zY2hlZHVsZS9zY2hlZHVsZS5jb21wb25lbnRcIjtcblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xSZXNvdXJjZVNjaGVkdWxlUm93SGVhZGluZ10nXG59IClcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZVNjaGVkdWxlUm93SGVhZGluZ0RpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PlxuICAgICl7fVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBSZXNvdXJjZVNjaGVkdWxlSXRlbVR5cGVzID0gXG4gICAgJ3Jvc3RlcmVkJyB8XG4gICAgJ291dC1vZi1zZXJ2aWNlJyB8XG4gICAgJ2F2YWlsYWJsZS1kdXR5LWRheScgfFxuICAgICdhdmFpbGFibGUtc3RhbmRieS1kYXknIHxcbiAgICAnYXZhaWxhYmxlLW9mZi1kYXknIHxcbiAgICAnYXZhaWxhYmxlLXJlZ3VsYXItZGF5JyB8XG4gICAgJ2Fzc2lnbmVkLWR1dHktZGF5JyB8XG4gICAgJ2Fzc2lnbmVkLXN0YW5kYnktZGF5JyB8XG4gICAgJ2Fzc2lnbmVkLW9mZi1kYXknIHxcbiAgICAnYXNzaWduZWQtcmVndWxhci1kYXknIFxuXG5leHBvcnQgdHlwZSBSZXNvdXJjZVNjaGVkdWxlUm93SXRlbSA9IFNjaGVkdWxlUm93SXRlbSAmIHtcbiAgICBuYW1lOiBSZXNvdXJjZVNjaGVkdWxlSXRlbVR5cGVzLFxuICAgIGFsbG9jYXRpb25UeXBlPzogc3RyaW5nLFxuICAgIHNoaWZ0VHlwZT86IHN0cmluZyxcbiAgICBhc3NpZ25tZW50TmFtZT86IHN0cmluZyxcbn1cblxuZXhwb3J0IHR5cGUgUmVzb3VyY2VTY2hlZHVsZVJvdyA9IFNjaGVkdWxlUm93ICYge1xuICAgIGl0ZW1zOiAoIFByb21pc2U8UmVzb3VyY2VTY2hlZHVsZVJvd0l0ZW1bXT4gKVxufVxuXG5leHBvcnQgdHlwZSBSZXNvdXJjZVNjaGVkdWxlID0gUmVzb3VyY2VTY2hlZHVsZVJvd1tdXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtcmVzb3VyY2Utc2NoZWR1bGVcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3Jlc291cmNlLXNjaGVkdWxlLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmw6IFwiLi9yZXNvdXJjZS1zY2hlZHVsZS5jb21wb25lbnQuc2Nzc1wiLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFJlc291cmNlU2NoZWR1bGVDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHByb3ZpZGVyPzogU2NoZWR1bGVQcm92aWRlclxuICAgIEBJbnB1dCgpIHN0YXJ0RGF0ZT86IHN0cmluZ1xuICAgIEBJbnB1dCgpIHdlZWtTdGFydCA9IDBcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSApIGRheUNvdW50PzogbnVtYmVyXG4gICAgQElucHV0KCkgbWVudT86IE1hdE1lbnVQYW5lbFxuXG4gICAgQFZpZXdDaGlsZCggU2NoZWR1bGVDb21wb25lbnQgKSBzY2hlZHVsZUNvbXBvbmVudD86IFNjaGVkdWxlQ29tcG9uZW50XG5cbiAgICBAQ29udGVudENoaWxkKFJlc291cmNlU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlKSBoZWFkZXJUZW1wbGF0ZSE6IFJlc291cmNlU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlXG59XG4iLCI8bnJjbC1zY2hlZHVsZSAjc2NoZWR1bGVcbiAgICBbcHJvdmlkZXJdPVwicHJvdmlkZXJcIlxuICAgIFtzdGFydERhdGVdPVwic3RhcnREYXRlXCJcbiAgICBbd2Vla1N0YXJ0XT1cIndlZWtTdGFydFwiXG4gICAgW2RheUNvdW50XT1cImRheUNvdW50XCJcbiAgICBbbWVudV09XCJtZW51XCJcbj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbiAgICA8bmctdGVtcGxhdGUgbnJjbFNjaGVkdWxlUm93SGVhZGluZyBsZXQtaXRlbT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRlclRlbXBsYXRlLnRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCIgICAgICAgICAgICBcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgbnJjbFNjaGVkdWxlSXRlbT1cInJvc3RlcmVkXCIgbGV0LWRhdGE+XG4gICAgICAgIDxoMT5BdmFpbGFibGU8L2gxPlxuICAgICAgICA8aDI+e3sgZGF0YS5hbGxvY2F0aW9uVHlwZSB9fTwvaDI+XG4gICAgICAgIDxoMz57eyBkYXRhLnNoaWZ0VHlwZSB9fTwvaDM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSBucmNsU2NoZWR1bGVJdGVtPVwib3V0LW9mLXNlcnZpY2VcIiBsZXQtZGF0YT5cbiAgICAgICAgPGgxPk91dCBvZiBTdmM8L2gxPlxuICAgICAgICA8aDI+e3sgZGF0YS5hbGxvY2F0aW9uVHlwZSB9fTwvaDI+XG4gICAgICAgIDxoMz57eyBkYXRhLnNoaWZ0VHlwZSB9fTwvaDM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSBucmNsU2NoZWR1bGVJdGVtPVwiYXZhaWxhYmxlLWR1dHktZGF5XCIgbGV0LWRhdGE+XG4gICAgICAgIDxoMT5BdmFpbGFibGU8L2gxPlxuICAgICAgICA8aDI+e3sgZGF0YS5hbGxvY2F0aW9uVHlwZSB9fTwvaDI+XG4gICAgICAgIDxoMz5EdXR5IERheTwvaDM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSBucmNsU2NoZWR1bGVJdGVtPVwiYXZhaWxhYmxlLXN0YW5kYnktZGF5XCIgbGV0LWRhdGE+XG4gICAgICAgIDxoMT5BdmFpbGFibGU8L2gxPlxuICAgICAgICA8aDI+e3sgZGF0YS5hbGxvY2F0aW9uVHlwZSB9fTwvaDI+XG4gICAgICAgIDxoMz5TdGFuZGJ5IERheTwvaDM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSBucmNsU2NoZWR1bGVJdGVtPVwiYXZhaWxhYmxlLW9mZi1kYXlcIiBsZXQtZGF0YT5cbiAgICAgICAgPGgxPkF2YWlsYWJsZTwvaDE+XG4gICAgICAgIDxoMj57eyBkYXRhLmFsbG9jYXRpb25UeXBlIH19PC9oMj5cbiAgICAgICAgPGgzPkRheSBPZmY8L2gzPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgbnJjbFNjaGVkdWxlSXRlbT1cImF2YWlsYWJsZS1yZWd1bGFyLWRheVwiIGxldC1kYXRhPlxuICAgICAgICA8aDE+QXZhaWxhYmxlPC9oMT5cbiAgICAgICAgPGgyPnt7IGRhdGEuYWxsb2NhdGlvblR5cGUgfX08L2gyPlxuICAgICAgICA8aDM+UmVndWxhciBEYXk8L2gzPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgbnJjbFNjaGVkdWxlSXRlbT1cImFzc2lnbmVkLWR1dHktZGF5XCIgbGV0LWRhdGE+XG4gICAgICAgIDwhLS0gPGgxPjwvaDE+IC0tPlxuICAgICAgICA8aDI+e3sgZGF0YS5hc3NpZ25tZW50TmFtZSB9fTwvaDI+XG4gICAgICAgIDxoMz5EdXR5IERheTwvaDM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSBucmNsU2NoZWR1bGVJdGVtPVwiYXNzaWduZWQtc3RhbmRieS1kYXlcIiBsZXQtZGF0YT5cbiAgICAgICAgPCEtLSA8aDE+PC9oMT4gLS0+XG4gICAgICAgIDxoMj57eyBkYXRhLmFzc2lnbm1lbnROYW1lIH19PC9oMj5cbiAgICAgICAgPGgzPlN0YW5kYnkgRGF5PC9oMz5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlIG5yY2xTY2hlZHVsZUl0ZW09XCJhc3NpZ25lZC1vZmYtZGF5XCIgbGV0LWRhdGE+XG4gICAgICAgIDwhLS0gPGgxPjwvaDE+IC0tPlxuICAgICAgICA8aDI+e3sgZGF0YS5hc3NpZ25tZW50TmFtZSB9fTwvaDI+XG4gICAgICAgIDxoMz5EYXkgT2ZmPC9oMz5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlIG5yY2xTY2hlZHVsZUl0ZW09XCJhc3NpZ25lZC1yZWd1bGFyLWRheVwiIGxldC1kYXRhPlxuICAgICAgICA8IS0tIDxoMT48L2gxPiAtLT5cbiAgICAgICAgPGgyPnt7IGRhdGEuYXNzaWdubWVudE5hbWUgfX08L2gyPlxuICAgICAgICA8aDM+UmVndWxhciBEYXk8L2gzPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25yY2wtc2NoZWR1bGU+XG5cbiJdfQ==
@@ -0,0 +1,168 @@
1
+ import { Component, ContentChild, ContentChildren, Directive, Input, numberAttribute } from '@angular/core';
2
+ import moment from 'moment';
3
+ import { RowListBase } from '../../directives/row-list.base';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@angular/material/menu";
7
+ import * as i3 from "@angular/material/core";
8
+ import * as i4 from "@angular/material/tooltip";
9
+ import * as i5 from "../gap/gap.component";
10
+ import * as i6 from "../row-list-pagination/row-list-pagination.component";
11
+ import * as i7 from "../icon/icon.component";
12
+ import * as i8 from "ngx-pagination";
13
+ export class ScheduleRowHeadingDirective {
14
+ constructor(template) {
15
+ this.template = template;
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleRowHeadingDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
18
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ScheduleRowHeadingDirective, selector: "[nrclScheduleRowHeading]", ngImport: i0 }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleRowHeadingDirective, decorators: [{
21
+ type: Directive,
22
+ args: [{
23
+ selector: '[nrclScheduleRowHeading]'
24
+ }]
25
+ }], ctorParameters: () => [{ type: i0.TemplateRef }] });
26
+ // ================================================================================
27
+ export class ScheduleItemDirective {
28
+ constructor(template) {
29
+ this.template = template;
30
+ }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleItemDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
32
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ScheduleItemDirective, selector: "[nrclScheduleItem]", inputs: { name: ["nrclScheduleItem", "name"] }, ngImport: i0 }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleItemDirective, decorators: [{
35
+ type: Directive,
36
+ args: [{
37
+ selector: '[nrclScheduleItem]'
38
+ }]
39
+ }], ctorParameters: () => [{ type: i0.TemplateRef }], propDecorators: { name: [{
40
+ type: Input,
41
+ args: ['nrclScheduleItem']
42
+ }] } });
43
+ // --------------------------------------------------------------------------------
44
+ export class ScheduleComponent extends RowListBase {
45
+ constructor() {
46
+ super(...arguments);
47
+ this.weekStart = 0;
48
+ this._days = [];
49
+ this._weeks = [];
50
+ this._templates = [];
51
+ }
52
+ ngOnChanges(changes) {
53
+ this.refreshRowList();
54
+ }
55
+ ngAfterViewInit() {
56
+ setTimeout(() => {
57
+ super.ngAfterViewInit();
58
+ });
59
+ }
60
+ fetchRowListPage() {
61
+ if (!this.provider?.fetchSchedule)
62
+ throw Error('ScheduleComponent.provider.fetchSchedule not set');
63
+ return this.provider.fetchSchedule({
64
+ pageNumber: this.pageNumber,
65
+ pageSize: this.pageSize,
66
+ sortActive: this.sortActive,
67
+ sortDirection: this.sortDirection,
68
+ });
69
+ }
70
+ parseRows(res) {
71
+ if (!this.provider?.parseSchedule)
72
+ throw Error('ResourceScheduleComponent.provider.parseSchedule not set');
73
+ let rows = this.provider.parseSchedule(res);
74
+ return this.makeRows(rows);
75
+ }
76
+ getInitialPageState() {
77
+ if (!this.provider?.getInitialPageState)
78
+ throw Error('ResourceScheduleComponent.provider.getInitialPageState not set');
79
+ return this.provider.getInitialPageState();
80
+ }
81
+ onSamePageFilterChange(ev) {
82
+ this.filter = ev;
83
+ }
84
+ makeRows(schedule) {
85
+ let start = moment(this.startDate);
86
+ let today = moment();
87
+ this._weeks = Array.from({ length: this.dayCount }).reduce((a, x, i) => {
88
+ let m = start.clone().add(i, 'day');
89
+ let date = m.format('MMM D');
90
+ let day = m.day();
91
+ if (a.length == 0)
92
+ return a.concat({
93
+ start: date,
94
+ end: date,
95
+ span: 1
96
+ });
97
+ let prev = a[a.length - 1];
98
+ if (day == this.weekStart)
99
+ return a.concat({
100
+ start: date,
101
+ end: date,
102
+ span: 1
103
+ });
104
+ prev.end = date;
105
+ prev.span += 1;
106
+ return a;
107
+ }, []);
108
+ this._days = Array.from({ length: this.dayCount }).map((x, i) => {
109
+ let d = start.clone().add(i, 'day');
110
+ return {
111
+ dayName: d.format('ddd'),
112
+ monthDay: d.date(),
113
+ date: d.format('Y-MM-DD'),
114
+ isFirst: d.date() == 1,
115
+ isWeekend: d.day() == 0 || d.day() == 6,
116
+ isToday: d.isSame(today, 'day'),
117
+ };
118
+ });
119
+ this._templates = Array.from({ length: schedule.length });
120
+ return schedule.map((row, i) => {
121
+ this._templates[i] = Array.from({ length: this.dayCount });
122
+ return {
123
+ id: row.id ?? String(i),
124
+ heading: row.heading,
125
+ items: row.items
126
+ .then(rowItems => {
127
+ return Array.from({ length: this.dayCount }).map((x, j) => {
128
+ let rowItem = rowItems[j];
129
+ if (rowItem == null)
130
+ return {
131
+ id: String(j),
132
+ name: 'empty'
133
+ };
134
+ this._templates[i][j] = this.itemTemplates?.find(i => i.name == rowItem?.name)?.template;
135
+ return rowItem;
136
+ });
137
+ })
138
+ };
139
+ }) || [];
140
+ }
141
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
142
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScheduleComponent, selector: "nrcl-schedule", inputs: { provider: "provider", startDate: "startDate", weekStart: ["weekStart", "weekStart", numberAttribute], dayCount: ["dayCount", "dayCount", numberAttribute], menu: "menu" }, host: { properties: { "style.--nrcl-schedule-day-count": "this.dayCount" } }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ScheduleRowHeadingDirective, descendants: true }, { propertyName: "itemTemplates", predicate: ScheduleItemDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"schedule\">\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n</div>\n\n<nrcl-gap/>\n\n<nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n></nrcl-row-list-pagination>\n\n<ng-template #empty>\n <div class=\"empty\">(empty)</div>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 100px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family);height:100%}:host .schedule{display:grid;grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule .upper-left{grid-row:1/span 2;grid-column:1;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{padding:2px;box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch}:host .schedule .row.items .outer.item.menu-open,:host .schedule .row.items .outer.item:hover{background-color:#000;border-radius:6px}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;border-radius:4px;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;flex-direction:column;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row.items .outer.item .item.travel:hover:after{filter:brightness(0)}:host .schedule .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i5.GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }, { kind: "component", type: i6.RowListPaginationComponent, selector: "nrcl-row-list-pagination", inputs: ["paginationId", "pageSizeOptions", "pageSize", "pageNumber", "rowCount", "showPageSize", "noRowsMessage"], outputs: ["pageSizeChange", "pageNumberChange"] }, { kind: "component", type: i7.IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.PaginatePipe, name: "paginate" }] }); }
143
+ }
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleComponent, decorators: [{
145
+ type: Component,
146
+ args: [{ selector: 'nrcl-schedule', host: {
147
+ '[style.--nrcl-schedule-day-count]': 'this.dayCount'
148
+ }, template: "<div class=\"schedule\">\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n</div>\n\n<nrcl-gap/>\n\n<nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n></nrcl-row-list-pagination>\n\n<ng-template #empty>\n <div class=\"empty\">(empty)</div>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 100px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family);height:100%}:host .schedule{display:grid;grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule .upper-left{grid-row:1/span 2;grid-column:1;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{padding:2px;box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch}:host .schedule .row.items .outer.item.menu-open,:host .schedule .row.items .outer.item:hover{background-color:#000;border-radius:6px}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;border-radius:4px;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;flex-direction:column;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row.items .outer.item .item.travel:hover:after{filter:brightness(0)}:host .schedule .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}\n"] }]
149
+ }], propDecorators: { provider: [{
150
+ type: Input
151
+ }], startDate: [{
152
+ type: Input
153
+ }], weekStart: [{
154
+ type: Input,
155
+ args: [{ transform: numberAttribute }]
156
+ }], dayCount: [{
157
+ type: Input,
158
+ args: [{ transform: numberAttribute }]
159
+ }], menu: [{
160
+ type: Input
161
+ }], itemTemplates: [{
162
+ type: ContentChildren,
163
+ args: [ScheduleItemDirective]
164
+ }], headerTemplate: [{
165
+ type: ContentChild,
166
+ args: [ScheduleRowHeadingDirective]
167
+ }] } });
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFvRCxNQUFNLGVBQWUsQ0FBQztBQUU5SixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFHNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7O0FBSzdELE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLDJCQUEyQjttR0FBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUh2QyxTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3ZDOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8scUJBQXFCO0lBRzlCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FMTSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQztnRkFFZ0MsSUFBSTtzQkFBaEMsS0FBSzt1QkFBRSxrQkFBa0I7O0FBMkQ5QixtRkFBbUY7QUFVbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQTJCO0lBUmxFOztR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dkQ7OEJBR1EsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNtQyxTQUFTO3NCQUFqRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDRyxRQUFRO3NCQUFoRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDN0IsSUFBSTtzQkFBWixLQUFLO2dCQUVrQyxhQUFhO3NCQUFwRCxlQUFlO3VCQUFDLHFCQUFxQjtnQkFDSyxjQUFjO3NCQUF4RCxZQUFZO3VCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSwgT25DaGFuZ2VzLCBRdWVyeUxpc3QsIFNpbXBsZUNoYW5nZXMsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRNZW51UGFuZWwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdGF0ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlJztcbmltcG9ydCB7IFJvd0xpc3RCYXNlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9yb3ctbGlzdC5iYXNlJztcblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xTY2hlZHVsZVJvd0hlYWRpbmddJ1xufSApXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+XG4gICAgKXt9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBEaXJlY3RpdmUoIHtcbiAgICBzZWxlY3RvcjogJ1tucmNsU2NoZWR1bGVJdGVtXSdcbn0gKVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlSXRlbURpcmVjdGl2ZSB7XG4gICAgQElucHV0KCAnbnJjbFNjaGVkdWxlSXRlbScgKSBuYW1lPzogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+XG4gICAgKXt9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFNjaGVkdWxlUm93SXRlbSA9IHtcbiAgICBpZDogc3RyaW5nLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBpY29ucz86ICgpID0+IHN0cmluZ1tdLFxuICAgIHRvb2x0aXA/OiAoKSA9PiBzdHJpbmcsXG4gICAgdHJhdmVsPzogYm9vbGVhbixcbn1cblxuZXhwb3J0IHR5cGUgU2NoZWR1bGVSb3cgPSB7XG4gICAgaWQ/OiBzdHJpbmcsXG4gICAgaGVhZGluZzogYW55LFxuICAgIGl0ZW1zOiBQcm9taXNlPFNjaGVkdWxlUm93SXRlbVtdPlxufVxuXG5leHBvcnQgdHlwZSBTY2hlZHVsZSA9IFNjaGVkdWxlUm93W11cblxudHlwZSBEYXkgPSB7XG4gICAgZGF5TmFtZTogc3RyaW5nLFxuICAgIG1vbnRoRGF5OiBudW1iZXIsXG4gICAgZGF0ZTogc3RyaW5nLFxuICAgIGlzV2Vla2VuZDogYm9vbGVhbixcbiAgICBpc1RvZGF5OiBib29sZWFuLFxuICAgIGlzRmlyc3Q6IGJvb2xlYW5cbn1cblxudHlwZSBXZWVrID0ge1xuICAgIHN0YXJ0OiBzdHJpbmcsXG4gICAgZW5kOiBzdHJpbmcsXG4gICAgc3BhbjogbnVtYmVyXG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmV4cG9ydCB0eXBlIEZldGNoU2NoZWR1bGVQYXJhbWV0ZXJzID0ge1xuICAgIHBhZ2VOdW1iZXI6IG51bWJlclxuICAgIHBhZ2VTaXplOiBudW1iZXJcbiAgICBzb3J0QWN0aXZlOiBzdHJpbmdcbiAgICBzb3J0RGlyZWN0aW9uOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgRmV0Y2hTY2hlZHVsZVJvd1BhcmFtZXRlcnMgPSB7XG4gICAgcmVzb3VyY2VJZDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NoZWR1bGVQcm92aWRlciB7XG4gICAgZmV0Y2hTY2hlZHVsZSggeDogRmV0Y2hTY2hlZHVsZVBhcmFtZXRlcnMgKTogT2JzZXJ2YWJsZTxhbnk+XG4gICAgcGFyc2VTY2hlZHVsZSggcmVzOiBhbnkgKTogU2NoZWR1bGVcbiAgICBnZXRJbml0aWFsUGFnZVN0YXRlKCk6IFBhZ2luYXRpb25TdGF0ZTx7fT5cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiAnbnJjbC1zY2hlZHVsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NjaGVkdWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2NoZWR1bGUuY29tcG9uZW50LnNjc3MnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS4tLW5yY2wtc2NoZWR1bGUtZGF5LWNvdW50XSc6ICd0aGlzLmRheUNvdW50J1xuICAgIH1cbn0gKVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlQ29tcG9uZW50IGV4dGVuZHMgUm93TGlzdEJhc2U8e30sU2NoZWR1bGVSb3c+IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSBwcm92aWRlcj86IFNjaGVkdWxlUHJvdmlkZXJcbiAgICBASW5wdXQoKSBzdGFydERhdGU/OiBzdHJpbmdcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSApIHdlZWtTdGFydCA9IDBcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSApIGRheUNvdW50PzogbnVtYmVyXG4gICAgQElucHV0KCkgbWVudT86IE1hdE1lbnVQYW5lbFxuXG4gICAgQENvbnRlbnRDaGlsZHJlbihTY2hlZHVsZUl0ZW1EaXJlY3RpdmUpIGl0ZW1UZW1wbGF0ZXMhOiBRdWVyeUxpc3Q8U2NoZWR1bGVJdGVtRGlyZWN0aXZlPjtcbiAgICBAQ29udGVudENoaWxkKFNjaGVkdWxlUm93SGVhZGluZ0RpcmVjdGl2ZSkgaGVhZGVyVGVtcGxhdGUhOiBTY2hlZHVsZVJvd0hlYWRpbmdEaXJlY3RpdmVcblxuICAgIHByb3RlY3RlZCBfZGF5czogRGF5W10gPSBbXVxuICAgIHByb3RlY3RlZCBfd2Vla3M6IFdlZWtbXSA9IFtdXG4gICAgcHJvdGVjdGVkIF90ZW1wbGF0ZXM6IFRlbXBsYXRlUmVmPGFueT5bXVtdID0gW11cblxuICAgIG5nT25DaGFuZ2VzKCBjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzICk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2hSb3dMaXN0KClcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZmV0Y2hSb3dMaXN0UGFnZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5mZXRjaFNjaGVkdWxlICkgdGhyb3cgRXJyb3IoICdTY2hlZHVsZUNvbXBvbmVudC5wcm92aWRlci5mZXRjaFNjaGVkdWxlIG5vdCBzZXQnIClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5mZXRjaFNjaGVkdWxlKCB7XG4gICAgICAgICAgICBwYWdlTnVtYmVyOiB0aGlzLnBhZ2VOdW1iZXIsXG4gICAgICAgICAgICBwYWdlU2l6ZTogdGhpcy5wYWdlU2l6ZSxcbiAgICAgICAgICAgIHNvcnRBY3RpdmU6IHRoaXMuc29ydEFjdGl2ZSxcbiAgICAgICAgICAgIHNvcnREaXJlY3Rpb246IHRoaXMuc29ydERpcmVjdGlvbixcbiAgICAgICAgfSApXG4gICAgfVxuXG4gICAgcGFyc2VSb3dzKCByZXM6IGFueSApOiBTY2hlZHVsZVJvd1tdIHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8ucGFyc2VTY2hlZHVsZSApIHRocm93IEVycm9yKCAnUmVzb3VyY2VTY2hlZHVsZUNvbXBvbmVudC5wcm92aWRlci5wYXJzZVNjaGVkdWxlIG5vdCBzZXQnIClcblxuICAgICAgICBsZXQgcm93cyA9IHRoaXMucHJvdmlkZXIucGFyc2VTY2hlZHVsZSggcmVzIClcbiAgICAgICAgcmV0dXJuIHRoaXMubWFrZVJvd3MoIHJvd3MgKVxuICAgIH1cblxuICAgIGdldEluaXRpYWxQYWdlU3RhdGUoKTogUGFnaW5hdGlvblN0YXRlPHt9PiB7XG4gICAgICAgIGlmICggIXRoaXMucHJvdmlkZXI/LmdldEluaXRpYWxQYWdlU3RhdGUgKSB0aHJvdyBFcnJvciggJ1Jlc291cmNlU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSBub3Qgc2V0JyApXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpXG4gICAgfVxuXG4gICAgb25TYW1lUGFnZUZpbHRlckNoYW5nZSggZXY6IHt9ICk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGV2XG4gICAgfVxuXG4gICAgbWFrZVJvd3MoIHNjaGVkdWxlOiBTY2hlZHVsZSApOiBTY2hlZHVsZSB7XG4gICAgICAgIGxldCBzdGFydCA9IG1vbWVudCggdGhpcy5zdGFydERhdGUgKVxuICAgICAgICBsZXQgdG9kYXkgPSBtb21lbnQoKVxuXG4gICAgICAgIHRoaXMuX3dlZWtzID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKS5yZWR1Y2U8V2Vla1tdPiggKCBhLCB4LCBpICkgPT4ge1xuICAgICAgICAgICAgbGV0IG0gPSBzdGFydC5jbG9uZSgpLmFkZCggaSwgJ2RheScgKVxuICAgICAgICAgICAgbGV0IGRhdGUgPSBtLmZvcm1hdCggJ01NTSBEJyApXG4gICAgICAgICAgICBsZXQgZGF5ID0gbS5kYXkoKVxuXG4gICAgICAgICAgICBpZiAoIGEubGVuZ3RoID09IDAgKSByZXR1cm4gYS5jb25jYXQoIHtcbiAgICAgICAgICAgICAgICBzdGFydDogZGF0ZSxcbiAgICAgICAgICAgICAgICBlbmQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgc3BhbjogMVxuICAgICAgICAgICAgfSApXG5cbiAgICAgICAgICAgIGxldCBwcmV2ID0gYVsgYS5sZW5ndGggLSAxIF1cblxuICAgICAgICAgICAgaWYgKCBkYXkgPT0gdGhpcy53ZWVrU3RhcnQgKSByZXR1cm4gYS5jb25jYXQoIHtcbiAgICAgICAgICAgICAgICBzdGFydDogZGF0ZSxcbiAgICAgICAgICAgICAgICBlbmQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgc3BhbjogMVxuICAgICAgICAgICAgfSApXG5cbiAgICAgICAgICAgIHByZXYuZW5kID0gZGF0ZVxuICAgICAgICAgICAgcHJldi5zcGFuICs9IDFcbiAgICAgICAgICAgIHJldHVybiBhXG4gICAgICAgIH0sIFtdIClcblxuICAgICAgICB0aGlzLl9kYXlzID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKS5tYXAoICggeCwgaSApID0+IHtcbiAgICAgICAgICAgIGxldCBkID0gc3RhcnQuY2xvbmUoKS5hZGQoIGksICdkYXknIClcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZGF5TmFtZTogZC5mb3JtYXQoICdkZGQnICksXG4gICAgICAgICAgICAgICAgbW9udGhEYXk6IGQuZGF0ZSgpLFxuICAgICAgICAgICAgICAgIGRhdGU6IGQuZm9ybWF0KCAnWS1NTS1ERCcgKSxcbiAgICAgICAgICAgICAgICBpc0ZpcnN0OiBkLmRhdGUoKSA9PSAxLFxuICAgICAgICAgICAgICAgIGlzV2Vla2VuZDogZC5kYXkoKSA9PSAwIHx8IGQuZGF5KCkgPT0gNixcbiAgICAgICAgICAgICAgICBpc1RvZGF5OiBkLmlzU2FtZSggdG9kYXksICdkYXknICksXG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSApXG5cbiAgICAgICAgdGhpcy5fdGVtcGxhdGVzID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHNjaGVkdWxlLmxlbmd0aCB9IClcblxuICAgICAgICByZXR1cm4gc2NoZWR1bGUubWFwKCAoIHJvdywgaSApID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3RlbXBsYXRlc1sgaSBdID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKVxuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlkOiByb3cuaWQgPz8gU3RyaW5nKCBpICksXG4gICAgICAgICAgICAgICAgaGVhZGluZzogcm93LmhlYWRpbmcsXG4gICAgICAgICAgICAgICAgaXRlbXM6IHJvdy5pdGVtc1xuICAgICAgICAgICAgICAgICAgICAudGhlbiggcm93SXRlbXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkubWFwKCAoIHgsIGogKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJvd0l0ZW0gPSByb3dJdGVtc1sgaiBdXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIHJvd0l0ZW0gPT0gbnVsbCApIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFN0cmluZyggaiApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2VtcHR5J1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGVtcGxhdGVzWyBpIF1bIGogXSA9IHRoaXMuaXRlbVRlbXBsYXRlcz8uZmluZCggaSA9PiBpLm5hbWUgPT0gcm93SXRlbT8ubmFtZSAgKT8udGVtcGxhdGUhXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcm93SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgfSApXG4gICAgICAgICAgICAgICAgICAgIH0gKVxuICAgICAgICAgICAgfVxuICAgICAgICB9ICkgfHwgW11cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2NoZWR1bGVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidXBwZXItbGVmdFwiPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwicm93IHdlZWtzXCI+XG4gICAgICAgIEBmb3IgKCB3ZWVrIG9mIF93ZWVrczsgdHJhY2sgJGluZGV4ICkge1xuICAgICAgICAgICAgQGlmICggd2Vlay5zcGFuID09IDEgKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndlZWtcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgd2Vlay5zdGFydCB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3ZWVrXCIgW3N0eWxlLmdyaWQtY29sdW1uXT1cIidzcGFuICcgKyB3ZWVrLnNwYW5cIj5cbiAgICAgICAgICAgICAgICAgICAge3sgd2Vlay5zdGFydCB9fSAtIHt7IHdlZWsuZW5kIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJyb3cgZGF5c1wiPiAgICBcbiAgICAgICAgQGZvciAoIGRheSBvZiBfZGF5czsgdHJhY2sgJGluZGV4ICkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRheVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLndlZWtlbmRdPVwiZGF5LmlzV2Vla2VuZFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnRvZGF5XT1cImRheS5pc1RvZGF5XCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZmlyc3RdPVwiZGF5LmlzRmlyc3RcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXktbmFtZVwiPnt7IGRheS5kYXlOYW1lIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVcIj57eyBkYXkubW9udGhEYXkgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICBAZm9yICggcm93IG9mIHJvd3MgfCBwYWdpbmF0ZTogcGFnaW5hdGVTdGF0ZSggJ25yY2wtc2NoZWR1bGUnICk7IHRyYWNrIHJvdy5pZDsgbGV0IHJvd0luZGV4ID0gJGluZGV4ICkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGl0ZW1zXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3V0ZXIgaGVhZGluZ1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbm5lciBoZWFkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJUZW1wbGF0ZT8udGVtcGxhdGVcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcm93LmhlYWRpbmcgfVwiICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PiAgICBcblxuICAgICAgICAgICAgQGlmICggcm93Lml0ZW1zIHwgYXN5bmM7IGFzIHJvd0l0ZW1zICkge1xuICAgICAgICAgICAgICAgIEBmb3IgKCBpdGVtIG9mIHJvd0l0ZW1zOyB0cmFjayBpdGVtLmlkOyBsZXQgY29sSW5kZXggPSAkaW5kZXggKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvdXRlciBpdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5tZW51LW9wZW5dPVwiaXRlbU1lbnUubWVudU9wZW5cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXIgaXRlbVwiICNpdGVtTWVudT1cIm1hdE1lbnVUcmlnZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2l0ZW0tJyArIGl0ZW0ubmFtZVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFJpcHBsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJEYXRhXT1cInsgJGltcGxpY2l0OiB7IGl0ZW06IGl0ZW0sIGhlYWRpbmc6IHJvdy5oZWFkaW5nIH0gfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiaXRlbT8udG9vbHRpcD8uKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXBDbGFzcz1cIm5yY2wtc2NoZWR1bGUtbXVsdGlsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudHJhdmVsXT1cIml0ZW0/LnRyYXZlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiX3RlbXBsYXRlc1sgcm93SW5kZXggXVsgY29sSW5kZXggXSB8fCBlbXB0eVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBsZXQgaWNvbnMgPSBpdGVtPy5pY29ucz8uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmICggaWNvbnMgJiYgaWNvbnMubGVuZ3RoID4gMCApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yICggaWNvbiBvZiBpY29uczsgdHJhY2sgaWNvbiApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnJjbC1pY29uIHNtYWxsPnt7IGljb24gfX08L25yY2wtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIEBmb3IgKCBkYXkgb2YgX2RheXM7IHRyYWNrIGRheSApIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0gaXRlbS1sb2FkaW5nXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICB9XG48L2Rpdj5cblxuPG5yY2wtZ2FwLz5cblxuPG5yY2wtcm93LWxpc3QtcGFnaW5hdGlvblxuICAgIHBhZ2luYXRpb25JZD1cIm5yY2wtc2NoZWR1bGVcIlxuICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgW3Jvd0NvdW50XT1cInRvdGFsUm93Q291bnRcIlxuICAgIChwYWdlTnVtYmVyQ2hhbmdlKT1cIm9uUGFnZU51bWJlckNoYW5nZSggJGV2ZW50IClcIlxuICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4+PC9ucmNsLXJvdy1saXN0LXBhZ2luYXRpb24+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG4gICAgPGRpdiBjbGFzcz1cImVtcHR5XCI+KGVtcHR5KTwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
59
59
  type: ViewChild,
60
60
  args: ['content', { static: true }]
61
61
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL3RhYnMvdGFiL3RhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy90YWJzL3RhYi90YWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBS3pELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLGlCQUFpQjttR0FBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8sbUJBQW1CO0lBQzVCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FITSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsa0JBQWtCO2lCQUMvQjs7QUFPRCxtRkFBbUY7QUFPbkYsTUFBTSxPQUFPLFlBQWEsU0FBUSxRQUFRO0lBTDFDOztRQU1JLGVBQVUsR0FBRyxNQUFNLENBQUUsVUFBVSxDQUFFLENBQUE7UUFDakMsc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFJTCxhQUFRLEdBQUcsS0FBSyxDQUFBO0tBSzdEOytHQVhZLFlBQVk7bUdBQVosWUFBWSxtR0FNQSxnQkFBZ0Isd0VBRXRCLGlCQUFpQixrRkFDakIsbUJBQW1CLHlMQ3ZDdEMsMEtBT0E7OzRGRHVCYSxZQUFZO2tCQUx4QixTQUFTOytCQUNJLFVBQVU7OEJBUVgsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDb0MsUUFBUTtzQkFBakQsS0FBSzt1QkFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFFSixhQUFhO3NCQUEvQyxZQUFZO3VCQUFFLGlCQUFpQjtnQkFDSyxlQUFlO3NCQUFuRCxZQUFZO3VCQUFFLG1CQUFtQjtnQkFDUSxPQUFPO3NCQUFoRCxTQUFTO3VCQUFFLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnJjbEJhc2UgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL25yY2wuYmFzZSc7XG5cbkBEaXJlY3RpdmUoIHtcbiAgICBzZWxlY3RvcjogJ1tucmNsVGFiTGFiZWxdJ1xufSApXG5leHBvcnQgY2xhc3MgVGFiTGFiZWxEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cbiAgICApe31cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xUYWJDb250ZW50XSdcbn0gKVxuZXhwb3J0IGNsYXNzIFRhYkNvbnRlbnREaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cbiAgICApe31cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiAnbnJjbC10YWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi90YWIuY29tcG9uZW50LnNjc3MnLFxufSApXG5leHBvcnQgY2xhc3MgVGFiQ29tcG9uZW50IGV4dGVuZHMgTnJjbEJhc2Uge1xuICAgIGVsZW1lbnRSZWYgPSBpbmplY3QoIEVsZW1lbnRSZWYgKVxuICAgIGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KCBDaGFuZ2VEZXRlY3RvclJlZiApXG5cbiAgICBASW5wdXQoKSBuYW1lPzogc3RyaW5nXG4gICAgQElucHV0KCkgbGFiZWw/OiBzdHJpbmdcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBkaXNhYmxlZCA9IGZhbHNlXG5cbiAgICBAQ29udGVudENoaWxkKCBUYWJMYWJlbERpcmVjdGl2ZSApIGxhYmVsVGVtcGxhdGU/OiBUYWJMYWJlbERpcmVjdGl2ZVxuICAgIEBDb250ZW50Q2hpbGQoIFRhYkNvbnRlbnREaXJlY3RpdmUgKSBjb250ZW50VGVtcGxhdGU/OiBUYWJMYWJlbERpcmVjdGl2ZVxuICAgIEBWaWV3Q2hpbGQoICdjb250ZW50JywgeyBzdGF0aWM6IHRydWUgfSApIGNvbnRlbnQhOiBUZW1wbGF0ZVJlZjxhbnk+XG59XG4iLCI8bmctdGVtcGxhdGUgI2xhYmVsPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltucmNsVGFiTGFiZWxdXCI+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL3RhYnMvdGFiL3RhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy90YWJzL3RhYi90YWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBS3pELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLGlCQUFpQjttR0FBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8sbUJBQW1CO0lBQzVCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FITSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsa0JBQWtCO2lCQUMvQjs7QUFPRCxtRkFBbUY7QUFPbkYsTUFBTSxPQUFPLFlBQWEsU0FBUSxRQUFRO0lBTDFDOztRQU1JLGVBQVUsR0FBRyxNQUFNLENBQUUsVUFBVSxDQUFFLENBQUE7UUFDakMsc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFJTCxhQUFRLEdBQUcsS0FBSyxDQUFBO0tBSzdEOytHQVhZLFlBQVk7bUdBQVosWUFBWSxtR0FNQSxnQkFBZ0Isd0VBRXRCLGlCQUFpQixrRkFDakIsbUJBQW1CLHlMQ3ZDdEMsMEtBT0E7OzRGRHVCYSxZQUFZO2tCQUx4QixTQUFTOytCQUNJLFVBQVU7OEJBUVgsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDb0MsUUFBUTtzQkFBakQsS0FBSzt1QkFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFFSixhQUFhO3NCQUEvQyxZQUFZO3VCQUFFLGlCQUFpQjtnQkFDSyxlQUFlO3NCQUFuRCxZQUFZO3VCQUFFLG1CQUFtQjtnQkFDUSxPQUFPO3NCQUFoRCxTQUFTO3VCQUFFLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnJjbEJhc2UgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL25yY2wuYmFzZSc7XG5cbkBEaXJlY3RpdmUoIHtcbiAgICBzZWxlY3RvcjogJ1tucmNsVGFiTGFiZWxdJ1xufSApXG5leHBvcnQgY2xhc3MgVGFiTGFiZWxEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cbiAgICApe31cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xUYWJDb250ZW50XSdcbn0gKVxuZXhwb3J0IGNsYXNzIFRhYkNvbnRlbnREaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cbiAgICApe31cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiAnbnJjbC10YWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi90YWIuY29tcG9uZW50LnNjc3MnLFxufSApXG5leHBvcnQgY2xhc3MgVGFiQ29tcG9uZW50IGV4dGVuZHMgTnJjbEJhc2Uge1xuICAgIGVsZW1lbnRSZWYgPSBpbmplY3QoIEVsZW1lbnRSZWYgKVxuICAgIGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KCBDaGFuZ2VEZXRlY3RvclJlZiApXG5cbiAgICBASW5wdXQoKSBuYW1lPzogc3RyaW5nXG4gICAgQElucHV0KCkgbGFiZWw/OiBzdHJpbmdcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBkaXNhYmxlZCA9IGZhbHNlXG5cbiAgICBAQ29udGVudENoaWxkKCBUYWJMYWJlbERpcmVjdGl2ZSApIGxhYmVsVGVtcGxhdGU/OiBUYWJMYWJlbERpcmVjdGl2ZVxuICAgIEBDb250ZW50Q2hpbGQoIFRhYkNvbnRlbnREaXJlY3RpdmUgKSBjb250ZW50VGVtcGxhdGU/OiBUYWJDb250ZW50RGlyZWN0aXZlXG4gICAgQFZpZXdDaGlsZCggJ2NvbnRlbnQnLCB7IHN0YXRpYzogdHJ1ZSB9ICkgY29udGVudCE6IFRlbXBsYXRlUmVmPGFueT5cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjbGFiZWw+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW25yY2xUYWJMYWJlbF1cIj48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==