@elderbyte/ngx-starter 14.11.0 → 14.12.0-beta2

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 (161) hide show
  1. package/_index.scss +2 -0
  2. package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +3 -4
  3. package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +4 -8
  4. package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +9 -13
  5. package/esm2020/lib/components/auditing/elder-audit.module.mjs +1 -5
  6. package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +3 -4
  7. package/esm2020/lib/components/button-group/elder-button-group.module.mjs +4 -8
  8. package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +4 -5
  9. package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +5 -6
  10. package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +4 -5
  11. package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +3 -5
  12. package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +3 -5
  13. package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +4 -5
  14. package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +4 -5
  15. package/esm2020/lib/components/containers/elder-containers.module.mjs +4 -8
  16. package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +3 -4
  17. package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +4 -5
  18. package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +3 -4
  19. package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +4 -5
  20. package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +6 -7
  21. package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +5 -6
  22. package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +4 -5
  23. package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +4 -5
  24. package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +3 -4
  25. package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +4 -5
  26. package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +3 -4
  27. package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +39 -26
  28. package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +1 -5
  29. package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +4 -5
  30. package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +8 -9
  31. package/esm2020/lib/components/data-view/table/elder-table.module.mjs +4 -5
  32. package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +9 -7
  33. package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +6 -5
  34. package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +10 -3
  35. package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +11 -9
  36. package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +4 -5
  37. package/esm2020/lib/components/errors/elder-error.module.mjs +4 -8
  38. package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +3 -4
  39. package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +4 -5
  40. package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +4 -5
  41. package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +3 -4
  42. package/esm2020/lib/components/files/elder-file.module.mjs +4 -5
  43. package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +11 -12
  44. package/esm2020/lib/components/forms/search/elder-search.module.mjs +4 -5
  45. package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +5 -6
  46. package/esm2020/lib/components/global-search/elder-global-search.component.mjs +4 -5
  47. package/esm2020/lib/components/global-search/elder-global-search.module.mjs +4 -5
  48. package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +3 -11
  49. package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +4 -8
  50. package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +4 -5
  51. package/esm2020/lib/components/headers/elder-header.module.mjs +4 -5
  52. package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +1 -5
  53. package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +10 -11
  54. package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +8 -9
  55. package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +14 -15
  56. package/esm2020/lib/components/i18n/language/elder-language.module.mjs +1 -5
  57. package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +5 -6
  58. package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +4 -5
  59. package/esm2020/lib/components/iframes/elder-iframe.module.mjs +1 -5
  60. package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +4 -5
  61. package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +6 -7
  62. package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +4 -5
  63. package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +4 -5
  64. package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +1 -5
  65. package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs +5 -16
  66. package/esm2020/lib/components/measures/elder-measures.module.mjs +1 -5
  67. package/esm2020/lib/components/measures/quantity-input/elder-quantity-input.component.mjs +12 -13
  68. package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +12 -13
  69. package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +4 -5
  70. package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +4 -5
  71. package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +3 -4
  72. package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +4 -5
  73. package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +3 -5
  74. package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +4 -5
  75. package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +6 -7
  76. package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +2 -2
  77. package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +2 -2
  78. package/esm2020/lib/components/overlays/elder-overlay.component.mjs +2 -2
  79. package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +3 -4
  80. package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +3 -4
  81. package/esm2020/lib/components/panels/elder-panel.module.mjs +3 -7
  82. package/esm2020/lib/components/select/elder-select.module.mjs +4 -5
  83. package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +9 -10
  84. package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +5 -6
  85. package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +8 -9
  86. package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +4 -6
  87. package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +4 -5
  88. package/esm2020/lib/components/select-list/elder-select-list.module.mjs +4 -5
  89. package/esm2020/lib/components/select-list/select-list/elder-select-list.component.mjs +3 -4
  90. package/esm2020/lib/components/select-list/select-list-item/elder-select-list-item.component.mjs +3 -4
  91. package/esm2020/lib/components/shell/elder-shell.module.mjs +4 -5
  92. package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +4 -5
  93. package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +4 -5
  94. package/esm2020/lib/components/tabs/elder-tab.module.mjs +4 -8
  95. package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +7 -8
  96. package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +9 -10
  97. package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +7 -8
  98. package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +7 -8
  99. package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +12 -13
  100. package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +9 -10
  101. package/esm2020/lib/components/time/elder-time.module.mjs +1 -11
  102. package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +7 -8
  103. package/esm2020/lib/components/toasts/elder-toast.module.mjs +4 -5
  104. package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +5 -6
  105. package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +1 -5
  106. package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +4 -5
  107. package/fesm2015/elderbyte-ngx-starter.mjs +451 -507
  108. package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
  109. package/fesm2020/elderbyte-ngx-starter.mjs +450 -507
  110. package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
  111. package/lib/components/access-denied/elder-access-denied.module.d.ts +1 -2
  112. package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +1 -2
  113. package/lib/components/auditing/elder-audit.module.d.ts +5 -6
  114. package/lib/components/button-group/elder-button-group.module.d.ts +1 -2
  115. package/lib/components/card-organizer/elder-card-organizer.module.d.ts +3 -4
  116. package/lib/components/cards/elder-card/elder-card.module.d.ts +2 -3
  117. package/lib/components/connectivity/elder-connectivity.module.d.ts +6 -7
  118. package/lib/components/containers/elder-containers.module.d.ts +1 -2
  119. package/lib/components/data-transfer/elder-data-transfer.module.d.ts +4 -5
  120. package/lib/components/data-view/common/elder-data-common.module.d.ts +1 -2
  121. package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +4 -3
  122. package/lib/components/data-view/grid/elder-grid.module.d.ts +6 -7
  123. package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +4 -5
  124. package/lib/components/data-view/table/elder-table.module.d.ts +4 -5
  125. package/lib/components/dialogs/elder-dialog.module.d.ts +4 -3
  126. package/lib/components/dialogs/elder-dialog.service.d.ts +1 -0
  127. package/lib/components/errors/elder-error.module.d.ts +1 -2
  128. package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +1 -2
  129. package/lib/components/files/elder-file.module.d.ts +6 -7
  130. package/lib/components/forms/search/elder-search.module.d.ts +2 -3
  131. package/lib/components/global-search/elder-global-search.module.d.ts +2 -3
  132. package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +1 -8
  133. package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +1 -2
  134. package/lib/components/headers/elder-header.module.d.ts +2 -3
  135. package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +15 -16
  136. package/lib/components/i18n/language/elder-language.module.d.ts +2 -3
  137. package/lib/components/iframes/elder-iframe.module.d.ts +5 -6
  138. package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +2 -3
  139. package/lib/components/measures/dimensions-input/elder-dimensions-input.component.d.ts +1 -3
  140. package/lib/components/measures/elder-measures.module.d.ts +5 -6
  141. package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +8 -9
  142. package/lib/components/navigation/nav/elder-nav.module.d.ts +1 -2
  143. package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +1 -3
  144. package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +8 -9
  145. package/lib/components/panels/elder-panel.module.d.ts +1 -2
  146. package/lib/components/select/elder-select.module.d.ts +10 -11
  147. package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +3 -4
  148. package/lib/components/select-list/elder-select-list.module.d.ts +1 -2
  149. package/lib/components/shell/elder-shell.module.d.ts +4 -5
  150. package/lib/components/tabs/elder-tab.module.d.ts +1 -2
  151. package/lib/components/time/elder-time.module.d.ts +9 -10
  152. package/lib/components/toasts/elder-toast.module.d.ts +3 -4
  153. package/lib/components/url-fragment/elder-url-fragment.module.d.ts +2 -3
  154. package/package.json +1 -2
  155. package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.scss +5 -0
  156. package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.scss +3 -1
  157. package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.scss +5 -6
  158. package/src/lib/components/select/single/elder-select/elder-select.component.scss +1 -4
  159. package/theming/_elder-common.scss +32 -0
  160. package/theming/_elder-flex-layout.scss +562 -0
  161. package/theming/_elder-style-fixes.scss +3 -0
@@ -31,12 +31,11 @@ import * as i9 from "@angular/material/icon";
31
31
  import * as i10 from "@angular/material/progress-bar";
32
32
  import * as i11 from "@angular/material/table";
33
33
  import * as i12 from "@angular/material/paginator";
34
- import * as i13 from "@angular/flex-layout/flex";
35
- import * as i14 from "../../common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component";
36
- import * as i15 from "../../common/selection/data-context-selection.directive";
37
- import * as i16 from "../../common/data-context-state-indicator/data-context-state-indicator.component";
38
- import * as i17 from "../../../infinitescroll/elder-infinite-scroll.module";
39
- import * as i18 from "../elder-table-row.directive";
34
+ import * as i13 from "../../common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component";
35
+ import * as i14 from "../../common/selection/data-context-selection.directive";
36
+ import * as i15 from "../../common/data-context-state-indicator/data-context-state-indicator.component";
37
+ import * as i16 from "../../../infinitescroll/elder-infinite-scroll.module";
38
+ import * as i17 from "../elder-table-row.directive";
40
39
  export class ElderTableComponent extends ElderDataViewBaseComponent {
41
40
  /***************************************************************************
42
41
  * *
@@ -255,7 +254,7 @@ ElderTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
255
254
  provide: ELDER_DATA_VIEW,
256
255
  useExisting: forwardRef(() => ElderTableComponent)
257
256
  }
258
- ], queries: [{ propertyName: "columnDefs", predicate: MatColumnDef }, { propertyName: "elderColumns", predicate: ElderTableColumnDirective }, { propertyName: "rowDefs", predicate: MatRowDef }, { propertyName: "toolbarRowTemplateQuery", predicate: ElderTableToolbarDirective, read: TemplateRef }], viewQueries: [{ propertyName: "matTable", first: true, predicate: MatTable, descendants: true, static: true }, { propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "rowsQuery", predicate: ElderTableRowDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "\n<div fxLayout=\"column\" fxFlex\n class=\"elder-table\"\n [class.elder-mat-table-container]=\"!embedded\"\n [class.mat-elevation-z5]=\"float\"\n [class.elder-mat-table-flat]=\"!embedded && !float\"\n>\n\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div fxLayout=\"column\" class=\"scrollable elder-table-scroll\"\n infiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <elder-data-context-state-indicator fxFlex=\"none\" [dataContext]=\"dataContext\">\n </elder-data-context-state-indicator>\n\n <mat-progress-bar fxFlex=\"none\"\n [mode]=\"(dataContext?.loading | async) ? 'indeterminate' : 'determinate'\"\n [color]=\"((dataContext?.status | async)?.hasError) ? 'warn' : 'primary'\">\n </mat-progress-bar>\n\n <!-- Optional Paginator Toolbar -->\n <mat-paginator #matPaginator *ngIf=\"isActivePaged && (dataActivePaged.page | async) as page\"\n fxFlex=\"none\"\n [length]=\"dataContext?.total | async\"\n [pageIndex]=\"page?.index\"\n [pageSize]=\"page?.size\"\n [pageSizeOptions]=\"pageSizeOptions\">\n </mat-paginator>\n\n <!-- Optional Continuation Footer -->\n <div *ngIf=\"isContinuable\" class=\"elder-table-footer\"\n fxLayout=\"row\" fxFlex=\"none\" fxLayoutAlign=\"end center\" fxLayoutGap=\"10px\"\n style=\"padding-right: 10px\" >\n\n <span class=\"mat-caption noselect\" style=\"color: gray\">\n {{(dataContext?.data | async)?.length}} / {{total$ | async}}\n </span>\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n [disabled]=\"!(canLoadMore$ | async)\"\n (click)=\"dataContinuable.loadMore()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n\n</div>\n", styles: [".elder-table-scroll{height:100%}.elder-mat-inner-table{width:100%}.elder-table-row.dense{height:42px!important}.elder-mat-table-container{border-radius:4px;overflow:hidden}.mat-column-select{overflow:visible;overflow:initial;max-width:42px;width:42px}.elder-row-removing{text-decoration:line-through}.elder-row-hidden{display:none}.elder-table-row{cursor:pointer}:host{min-width:0;min-height:0}.elder-table-hint{color:gray}.elder-table-footer{height:44px}.elder-table-checkbox{opacity:.25;transition:opacity .5s ease-in-out}.elder-table-row:hover .elder-table-checkbox{opacity:.9}.elder-table-checkbox-visible{opacity:1}.mat-table .mat-header-cell{padding-left:8px;padding-right:12px;overflow-wrap:normal;word-wrap:normal;word-break:normal;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-header-cell:first-of-type{padding-left:20px}.mat-table .mat-header-cell:last-of-type{padding-right:8px}.mat-table .mat-header-cell:last-of-type[mat-sort-header]:not([arrowposition=before]){padding-right:8px}.mat-table .mat-header-cell[mat-sort-header][arrowposition=before]{padding-left:0}.mat-table .mat-header-cell[mat-sort-header]:not([arrowposition=before]){padding-right:12px}.mat-table .mat-header-cell>.mat-sort-header-container{display:inline-flex}.mat-table .mat-cell{padding-left:8px;padding-right:12px;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-cell:first-of-type{padding-left:20px}.mat-table .mat-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell{padding-left:8px;padding-right:12px;font-weight:700}.mat-table .mat-footer-cell:first-of-type{padding-left:20px}.mat-table .mat-footer-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell .mat-paginator{margin-left:-8px;margin-right:-8px}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i11.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i11.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i11.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i12.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "directive", type: i13.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i13.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i13.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i13.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i14.ElderSelectionMasterCheckboxComponent, selector: "elder-selection-master-checkbox" }, { kind: "directive", type: i15.DataContextSelectionDirective, selector: "[elderDataContextSelection]", inputs: ["elderDataContextSelectionModel", "elderDataContextSelection"], exportAs: ["elderDataContextSelection"] }, { kind: "component", type: i16.DataContextStateIndicatorComponent, selector: "elder-data-context-state-indicator", inputs: ["dataContext"] }, { kind: "directive", type: i17.ElderInfiniteScrollLegacyDirective, selector: "[infiniteScroll]" }, { kind: "directive", type: i18.ElderTableRowDirective, selector: "tr[elderTableRow]", inputs: ["elderTableRow"], exportAs: ["elderTableRow"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
257
+ ], queries: [{ propertyName: "columnDefs", predicate: MatColumnDef }, { propertyName: "elderColumns", predicate: ElderTableColumnDirective }, { propertyName: "rowDefs", predicate: MatRowDef }, { propertyName: "toolbarRowTemplateQuery", predicate: ElderTableToolbarDirective, read: TemplateRef }], viewQueries: [{ propertyName: "matTable", first: true, predicate: MatTable, descendants: true, static: true }, { propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "rowsQuery", predicate: ElderTableRowDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"layout-col full elder-table\"\n [class.elder-mat-table-container]=\"!embedded\"\n [class.mat-elevation-z5]=\"float\"\n [class.elder-mat-table-flat]=\"!embedded && !float\"\n>\n\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div class=\"layout-col scrollable elder-table-scroll\"\n infiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <elder-data-context-state-indicator class=\"flex-none\" [dataContext]=\"dataContext\">\n </elder-data-context-state-indicator>\n\n <mat-progress-bar class=\"flex-none\"\n [mode]=\"(dataContext?.loading | async) ? 'indeterminate' : 'determinate'\"\n [color]=\"((dataContext?.status | async)?.hasError) ? 'warn' : 'primary'\">\n </mat-progress-bar>\n\n <!-- Optional Paginator Toolbar -->\n <mat-paginator #matPaginator *ngIf=\"isActivePaged && (dataActivePaged.page | async) as page\"\n class=\"flex-none\"\n [length]=\"dataContext?.total | async\"\n [pageIndex]=\"page?.index\"\n [pageSize]=\"page?.size\"\n [pageSizeOptions]=\"pageSizeOptions\">\n </mat-paginator>\n\n <!-- Optional Continuation Footer -->\n <div *ngIf=\"isContinuable\" class=\"layout-row flex-none place-end-center gap-md elder-table-footer\">\n\n <span class=\"mat-caption noselect\" style=\"color: gray\">\n {{(dataContext?.data | async)?.length}} / {{total$ | async}}\n </span>\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n [disabled]=\"!(canLoadMore$ | async)\"\n (click)=\"dataContinuable.loadMore()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n\n</div>\n", styles: [".elder-table-scroll{height:100%}.elder-mat-inner-table{width:100%}.elder-table-row.dense{height:42px!important}.elder-mat-table-container{border-radius:4px;overflow:hidden}.mat-column-select{overflow:visible;overflow:initial;max-width:42px;width:42px}.elder-row-removing{text-decoration:line-through}.elder-row-hidden{display:none}.elder-table-row{cursor:pointer}:host{min-width:0;min-height:0}.elder-table-hint{color:gray}.elder-table-footer{height:44px}.elder-table-checkbox{opacity:.25;transition:opacity .5s ease-in-out}.elder-table-row:hover .elder-table-checkbox{opacity:.9}.elder-table-checkbox-visible{opacity:1}.mat-table .mat-header-cell{padding-left:8px;padding-right:12px;overflow-wrap:normal;word-wrap:normal;word-break:normal;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-header-cell:first-of-type{padding-left:20px}.mat-table .mat-header-cell:last-of-type{padding-right:8px}.mat-table .mat-header-cell:last-of-type[mat-sort-header]:not([arrowposition=before]){padding-right:8px}.mat-table .mat-header-cell[mat-sort-header][arrowposition=before]{padding-left:0}.mat-table .mat-header-cell[mat-sort-header]:not([arrowposition=before]){padding-right:12px}.mat-table .mat-header-cell>.mat-sort-header-container{display:inline-flex}.mat-table .mat-cell{padding-left:8px;padding-right:12px;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-cell:first-of-type{padding-left:20px}.mat-table .mat-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell{padding-left:8px;padding-right:12px;font-weight:700}.mat-table .mat-footer-cell:first-of-type{padding-left:20px}.mat-table .mat-footer-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell .mat-paginator{margin-left:-8px;margin-right:-8px}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i11.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i11.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i11.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i12.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i13.ElderSelectionMasterCheckboxComponent, selector: "elder-selection-master-checkbox" }, { kind: "directive", type: i14.DataContextSelectionDirective, selector: "[elderDataContextSelection]", inputs: ["elderDataContextSelectionModel", "elderDataContextSelection"], exportAs: ["elderDataContextSelection"] }, { kind: "component", type: i15.DataContextStateIndicatorComponent, selector: "elder-data-context-state-indicator", inputs: ["dataContext"] }, { kind: "directive", type: i16.ElderInfiniteScrollLegacyDirective, selector: "[infiniteScroll]" }, { kind: "directive", type: i17.ElderTableRowDirective, selector: "tr[elderTableRow]", inputs: ["elderTableRow"], exportAs: ["elderTableRow"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
259
258
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderTableComponent, decorators: [{
260
259
  type: Component,
261
260
  args: [{ selector: 'elder-table, ebs-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -264,7 +263,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
264
263
  provide: ELDER_DATA_VIEW,
265
264
  useExisting: forwardRef(() => ElderTableComponent)
266
265
  }
267
- ], template: "\n<div fxLayout=\"column\" fxFlex\n class=\"elder-table\"\n [class.elder-mat-table-container]=\"!embedded\"\n [class.mat-elevation-z5]=\"float\"\n [class.elder-mat-table-flat]=\"!embedded && !float\"\n>\n\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div fxLayout=\"column\" class=\"scrollable elder-table-scroll\"\n infiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <elder-data-context-state-indicator fxFlex=\"none\" [dataContext]=\"dataContext\">\n </elder-data-context-state-indicator>\n\n <mat-progress-bar fxFlex=\"none\"\n [mode]=\"(dataContext?.loading | async) ? 'indeterminate' : 'determinate'\"\n [color]=\"((dataContext?.status | async)?.hasError) ? 'warn' : 'primary'\">\n </mat-progress-bar>\n\n <!-- Optional Paginator Toolbar -->\n <mat-paginator #matPaginator *ngIf=\"isActivePaged && (dataActivePaged.page | async) as page\"\n fxFlex=\"none\"\n [length]=\"dataContext?.total | async\"\n [pageIndex]=\"page?.index\"\n [pageSize]=\"page?.size\"\n [pageSizeOptions]=\"pageSizeOptions\">\n </mat-paginator>\n\n <!-- Optional Continuation Footer -->\n <div *ngIf=\"isContinuable\" class=\"elder-table-footer\"\n fxLayout=\"row\" fxFlex=\"none\" fxLayoutAlign=\"end center\" fxLayoutGap=\"10px\"\n style=\"padding-right: 10px\" >\n\n <span class=\"mat-caption noselect\" style=\"color: gray\">\n {{(dataContext?.data | async)?.length}} / {{total$ | async}}\n </span>\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n [disabled]=\"!(canLoadMore$ | async)\"\n (click)=\"dataContinuable.loadMore()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n\n</div>\n", styles: [".elder-table-scroll{height:100%}.elder-mat-inner-table{width:100%}.elder-table-row.dense{height:42px!important}.elder-mat-table-container{border-radius:4px;overflow:hidden}.mat-column-select{overflow:visible;overflow:initial;max-width:42px;width:42px}.elder-row-removing{text-decoration:line-through}.elder-row-hidden{display:none}.elder-table-row{cursor:pointer}:host{min-width:0;min-height:0}.elder-table-hint{color:gray}.elder-table-footer{height:44px}.elder-table-checkbox{opacity:.25;transition:opacity .5s ease-in-out}.elder-table-row:hover .elder-table-checkbox{opacity:.9}.elder-table-checkbox-visible{opacity:1}.mat-table .mat-header-cell{padding-left:8px;padding-right:12px;overflow-wrap:normal;word-wrap:normal;word-break:normal;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-header-cell:first-of-type{padding-left:20px}.mat-table .mat-header-cell:last-of-type{padding-right:8px}.mat-table .mat-header-cell:last-of-type[mat-sort-header]:not([arrowposition=before]){padding-right:8px}.mat-table .mat-header-cell[mat-sort-header][arrowposition=before]{padding-left:0}.mat-table .mat-header-cell[mat-sort-header]:not([arrowposition=before]){padding-right:12px}.mat-table .mat-header-cell>.mat-sort-header-container{display:inline-flex}.mat-table .mat-cell{padding-left:8px;padding-right:12px;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-cell:first-of-type{padding-left:20px}.mat-table .mat-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell{padding-left:8px;padding-right:12px;font-weight:700}.mat-table .mat-footer-cell:first-of-type{padding-left:20px}.mat-table .mat-footer-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell .mat-paginator{margin-left:-8px;margin-right:-8px}\n"] }]
266
+ ], template: "<div class=\"layout-col full elder-table\"\n [class.elder-mat-table-container]=\"!embedded\"\n [class.mat-elevation-z5]=\"float\"\n [class.elder-mat-table-flat]=\"!embedded && !float\"\n>\n\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div class=\"layout-col scrollable elder-table-scroll\"\n infiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <elder-data-context-state-indicator class=\"flex-none\" [dataContext]=\"dataContext\">\n </elder-data-context-state-indicator>\n\n <mat-progress-bar class=\"flex-none\"\n [mode]=\"(dataContext?.loading | async) ? 'indeterminate' : 'determinate'\"\n [color]=\"((dataContext?.status | async)?.hasError) ? 'warn' : 'primary'\">\n </mat-progress-bar>\n\n <!-- Optional Paginator Toolbar -->\n <mat-paginator #matPaginator *ngIf=\"isActivePaged && (dataActivePaged.page | async) as page\"\n class=\"flex-none\"\n [length]=\"dataContext?.total | async\"\n [pageIndex]=\"page?.index\"\n [pageSize]=\"page?.size\"\n [pageSizeOptions]=\"pageSizeOptions\">\n </mat-paginator>\n\n <!-- Optional Continuation Footer -->\n <div *ngIf=\"isContinuable\" class=\"layout-row flex-none place-end-center gap-md elder-table-footer\">\n\n <span class=\"mat-caption noselect\" style=\"color: gray\">\n {{(dataContext?.data | async)?.length}} / {{total$ | async}}\n </span>\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n [disabled]=\"!(canLoadMore$ | async)\"\n (click)=\"dataContinuable.loadMore()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n\n</div>\n", styles: [".elder-table-scroll{height:100%}.elder-mat-inner-table{width:100%}.elder-table-row.dense{height:42px!important}.elder-mat-table-container{border-radius:4px;overflow:hidden}.mat-column-select{overflow:visible;overflow:initial;max-width:42px;width:42px}.elder-row-removing{text-decoration:line-through}.elder-row-hidden{display:none}.elder-table-row{cursor:pointer}:host{min-width:0;min-height:0}.elder-table-hint{color:gray}.elder-table-footer{height:44px}.elder-table-checkbox{opacity:.25;transition:opacity .5s ease-in-out}.elder-table-row:hover .elder-table-checkbox{opacity:.9}.elder-table-checkbox-visible{opacity:1}.mat-table .mat-header-cell{padding-left:8px;padding-right:12px;overflow-wrap:normal;word-wrap:normal;word-break:normal;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-header-cell:first-of-type{padding-left:20px}.mat-table .mat-header-cell:last-of-type{padding-right:8px}.mat-table .mat-header-cell:last-of-type[mat-sort-header]:not([arrowposition=before]){padding-right:8px}.mat-table .mat-header-cell[mat-sort-header][arrowposition=before]{padding-left:0}.mat-table .mat-header-cell[mat-sort-header]:not([arrowposition=before]){padding-right:12px}.mat-table .mat-header-cell>.mat-sort-header-container{display:inline-flex}.mat-table .mat-cell{padding-left:8px;padding-right:12px;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:inherit;-webkit-hyphens:auto;hyphens:auto}.mat-table .mat-cell:first-of-type{padding-left:20px}.mat-table .mat-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell{padding-left:8px;padding-right:12px;font-weight:700}.mat-table .mat-footer-cell:first-of-type{padding-left:20px}.mat-table .mat-footer-cell:last-of-type{padding-right:8px}.mat-table .mat-footer-cell .mat-paginator{margin-left:-8px;margin-right:-8px}\n"] }]
268
267
  }], ctorParameters: function () { return [{ type: i1.ElderTableModel }, { type: i2.SelectionModel, decorators: [{
269
268
  type: Optional
270
269
  }] }, { type: i3.ElderDataViewOptionsProvider, decorators: [{
@@ -319,4 +318,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
319
318
  }], selectionVisible: [{
320
319
  type: Input
321
320
  }] } });
322
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvdGFibGUvZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvdGFibGUvZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUVmLFVBQVUsRUFDVixLQUFLLEVBSUwsUUFBUSxFQUVSLFFBQVEsRUFDUixXQUFXLEVBRVgsU0FBUyxFQUNULFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSxxRUFBcUUsQ0FBQztBQUN0SCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFekQsT0FBTyxFQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDMUUsT0FBTyxFQUFlLGFBQWEsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBRTlGLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFjLEVBQUUsRUFBd0IsTUFBTSxNQUFNLENBQUM7QUFDM0YsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDN0Ys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LFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFJNUIsWUFBWTtzQkFEbEIsU0FBUzt1QkFBQyxZQUFZO2dCQU1oQixVQUFVO3NCQURoQixlQUFlO3VCQUFDLFlBQVk7Z0JBSXRCLFlBQVk7c0JBRGxCLGVBQWU7dUJBQUMseUJBQXlCO2dCQUluQyxPQUFPO3NCQURiLGVBQWU7dUJBQUMsU0FBUztnQkFXbkIsT0FBTztzQkFEYixLQUFLO2dCQVVDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBV0MsV0FBVztzQkFEakIsS0FBSztnQkFJQyxlQUFlO3NCQURyQixLQUFLO2dCQUlDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFVQyx1QkFBdUI7c0JBRDdCLGVBQWU7dUJBQUMsMEJBQTBCLEVBQUUsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFDO2dCQVV4RCxTQUFTO3NCQURoQixZQUFZO3VCQUFDLHNCQUFzQjtnQkE0RnpCLGVBQWU7c0JBRHpCLEtBQUs7Z0JBTUssSUFBSTtzQkFEZCxLQUFLO2dCQStDSyxnQkFBZ0I7c0JBRDFCLEtBQUs7Z0JBV0ssZ0JBQWdCO3NCQUQxQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFF1ZXJ5TGlzdCxcbiAgU2tpcFNlbGYsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0VGFibGVEYXRhQ29udGV4dEJpbmRpbmdCdWlsZGVyfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvbWF0LXRhYmxlLWRhdGEtY29udGV4dC1iaW5kaW5nJztcbmltcG9ydCB7TWF0UGFnaW5hdG9yfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHtNYXRTb3J0fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7TWF0Q29sdW1uRGVmLCBNYXRSb3dEZWYsIE1hdFRhYmxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQge0lEYXRhQ29udGV4dCwgaXNEYXRhQ29udGV4dH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dCc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7Q2RrQ29sdW1uRGVmLCBDZGtSb3dEZWYsIENka1RhYmxlfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHtEYXRhQ29udGV4dEJ1aWxkZXJ9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtYnVpbGRlcic7XG5pbXBvcnQge0VMREVSX0RBVEFfVklFV30gZnJvbSAnLi4vLi4vYmFzZS9lbGRlci1kYXRhLXZpZXcnO1xuaW1wb3J0IHtFbGRlclRhYmxlUm93RGlyZWN0aXZlfSBmcm9tICcuLi9lbGRlci10YWJsZS1yb3cuZGlyZWN0aXZlJztcbmltcG9ydCB7SURhdGFTb3VyY2UsIGlzRGF0YVNvdXJjZX0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YXNvdXJjZS9kYXRhLXNvdXJjZSc7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdCYXNlQ29tcG9uZW50fSBmcm9tICcuLi8uLi9iYXNlL2VsZGVyLWRhdGEtdmlldy1iYXNlJztcbmltcG9ydCB7RWxkZXJUYWJsZU1vZGVsfSBmcm9tICcuLi9tb2RlbC9lbGRlci10YWJsZS1tb2RlbCc7XG5pbXBvcnQge0VsZGVyVGFibGVQcm92aWRlcnN9IGZyb20gJy4uL21vZGVsL2VsZGVyLXRhYmxlLW1vZGVsLXByb3ZpZGVyJztcbmltcG9ydCB7UXVlcnlMaXN0QmluZGluZ30gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL3V0aWxzL3F1ZXJ5LWxpc3QtYmluZGluZyc7XG5pbXBvcnQge0VsZGVyVGFibGVNb2RlbENka1RhYmxlQmluZGluZ30gZnJvbSAnLi4vbW9kZWwvZWxkZXItdGFibGUtbW9kZWwtY2RrLXRhYmxlLWJpbmRpbmcnO1xuaW1wb3J0IHtFbGRlclRhYmxlTW9kZWxRdWVyeUdyb3VwfSBmcm9tICcuLi9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC1xdWVyeS1ncm91cCc7XG5pbXBvcnQge0VsZGVyVGFibGVFeHRlbnNpb25EaXJlY3RpdmV9IGZyb20gJy4uL2VsZGVyLXRhYmxlLWV4dGVuc2lvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlclRhYmxlQ29sdW1uRGlyZWN0aXZlfSBmcm9tICcuLi9lbGRlci10YWJsZS1jb2x1bW4uZGlyZWN0aXZlJztcbmltcG9ydCB7Q29sdW1uUG9zaXRpb25TcGVjfSBmcm9tICcuLi9tb2RlbC9lbGRlci1jb2x1bW4tbGF5b3V0JztcbmltcG9ydCB7RWxkZXJUYWJsZVRvb2xiYXJEaXJlY3RpdmV9IGZyb20gJy4vZWxkZXItdGFibGUtdG9vbGJhci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtEYXRhVmlld09wdGlvbnNQcm92aWRlckJpbmRpbmd9IGZyb20gJy4uLy4uL2Jhc2UvZGF0YS12aWV3LW9wdGlvbnMtcHJvdmlkZXItYmluZGluZyc7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMtcHJvdmlkZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci10YWJsZSwgZWJzLXRhYmxlJywgLy8gZWJzLXRhYmxlIGlzIGRlcHJlY2F0ZWRcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItdGFibGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIEVsZGVyVGFibGVQcm92aWRlcnMuRXhpc3RpbmdPck5ld1RhYmxlTW9kZWwsXG4gICAge1xuICAgICAgcHJvdmlkZTogRUxERVJfREFUQV9WSUVXLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRWxkZXJUYWJsZUNvbXBvbmVudClcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJUYWJsZUNvbXBvbmVudCBleHRlbmRzIEVsZGVyRGF0YVZpZXdCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgLyoqXG4gICAqIExvYWQgbmV4dCBjaHVuayBhZnRlciBjdXJyZW50IGlzIGRvbmVcbiAgICovXG4gIHByaXZhdGUgbG9hZE5leHRRdWV1ZWQgPSBmYWxzZTtcblxuICAvLy8gVGFibGVcbiAgQFZpZXdDaGlsZChNYXRUYWJsZSwge3N0YXRpYzogdHJ1ZX0pXG4gIHB1YmxpYyBtYXRUYWJsZTogQ2RrVGFibGU8YW55PjtcblxuICBAVmlld0NoaWxkKE1hdFBhZ2luYXRvcilcbiAgcHVibGljIG1hdFBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21hdFNvcnQ6IE1hdFNvcnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihNYXRDb2x1bW5EZWYpXG4gIHB1YmxpYyBjb2x1bW5EZWZzOiBRdWVyeUxpc3Q8Q2RrQ29sdW1uRGVmPjtcblxuICBAQ29udGVudENoaWxkcmVuKEVsZGVyVGFibGVDb2x1bW5EaXJlY3RpdmUpXG4gIHB1YmxpYyBlbGRlckNvbHVtbnM6IFF1ZXJ5TGlzdDxFbGRlclRhYmxlQ29sdW1uRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKE1hdFJvd0RlZilcbiAgcHVibGljIHJvd0RlZnM6IFF1ZXJ5TGlzdDxDZGtSb3dEZWY8YW55Pj47XG5cbiAgLyoqXG4gICAqIEZpZWxkIHRvIGlkZW50aWZ5IHRoZSBkYXRhIHJlY29yZHMgKElEIGZpZWxkKS5cbiAgICogTm90ZTogVGhpcyBwcm9wZXJ0eSBpcyBvbmx5IGNvbnNpZGVyZWQgaW4gY2FzZSB0aGVcbiAgICogdW5kZXJseWluZyBkYXRhIGlzIGFuIEFycmF5LlxuICAgKiBJbiBjYXNlIG9mIERhdGFDb250ZXh0LCB0aGUgSUQgZmllbGQgbmVlZHMgdG8gYmUgZGVmaW5lZCBpbiB0aGUgY29udGV4dC5cbiAgICogSW4gY2FzZSBvZiBEYXRhU291cmNlLCB0aGUgSUQgZmllbGQgaXMgYXV0b21hdGljYWxseSBwaWNrZWQgZnJvbSB0aGUgRGF0YVNvdXJjZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpZEZpZWxkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZW4gdGhpcyBmaWVsZCBpcyBwcmVzZW50IGFuZCB0cnVlLFxuICAgKiB0aGUgY29yZXNwb25kaW5nIHJvdyBpcyBtYXJrZWQgdG8gYmUgaW4gdGhlIHByb2Nlc3NlZCBvZiBiZWluZyByZW1vdmVkLlxuICAgKlxuICAgKiBJLmUuICdyZW1vdmluZydcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZW1vdmluZ0ZpZWxkOiBzdHJpbmcgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBXaGVuIHRoaXMgZmllbGQgaXMgcHJlc2VudCBhbmQgdHJ1ZSxcbiAgICogdGhlIGNvcnJlc3BvbmRpbmcgcm93IGlzIGhpZGRlbi5cbiAgICpcbiAgICogSS5lLiAnZGVsZXRlZCdcbiAgICpcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoaWRkZW5GaWVsZDogc3RyaW5nID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZVNpemVPcHRpb25zID0gWzMwLCA1MCwgMTAwLCAxNTAsIDIwMF07XG5cbiAgQElucHV0KClcbiAgcHVibGljIGtlZXBTZWxlY3Rpb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93Rm9vdGVyID0gZmFsc2U7XG5cbiAgcHVibGljIGNhbkxvYWRNb3JlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHVibGljIHRvdGFsJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBUaGUgdGFibGUgdG9vbGJhclxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihFbGRlclRhYmxlVG9vbGJhckRpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgcHVibGljIHRvb2xiYXJSb3dUZW1wbGF0ZVF1ZXJ5OiBRdWVyeUxpc3Q8VGVtcGxhdGVSZWY8YW55Pj47XG4gIHB1YmxpYyByZWFkb25seSB0b29sYmFyUm93VGVtcGxhdGVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGVtcGxhdGVSZWY8YW55PltdPihbXSk7XG5cbiAgLyoqXG4gICAqIFNlbGVjdGlvbiBtb2RlbCBsaWZlIGN5Y2xlXG4gICAqL1xuICBwcml2YXRlIHNlbGVjdGlvbkxpZmVDeWNsZTogU3Vic2NyaXB0aW9uO1xuXG4gIEBWaWV3Q2hpbGRyZW4oRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZSlcbiAgcHJpdmF0ZSByb3dzUXVlcnk6IFF1ZXJ5TGlzdDxFbGRlclRhYmxlUm93RGlyZWN0aXZlPGFueT4+O1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IHJvd3Mgb2YgdGhpcyB0YWJsZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByb3dzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxhbnk+W10+KFtdKTtcblxuICAvKipcbiAgICogVGhlIGluZGV4IG9mIHRoaXMgdGFibGUgZ3JvdXAgZXh0ZW5zaW9uXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9leHRlbnNpb25Hcm91cEluZGV4OiBudW1iZXI7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHRhYmxlTW9kZWw6IEVsZGVyVGFibGVNb2RlbCxcbiAgICBAT3B0aW9uYWwoKSBzZWxlY3Rpb25Nb2RlbDogU2VsZWN0aW9uTW9kZWw8YW55PixcbiAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICBAT3B0aW9uYWwoKSBtYXRTb3J0OiBNYXRTb3J0LFxuICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHByaXZhdGUgcmVhZG9ubHkgcGFyZW50RXh0ZW5zaW9uOiBFbGRlclRhYmxlRXh0ZW5zaW9uRGlyZWN0aXZlLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHpvbmU6IE5nWm9uZVxuICApIHtcbiAgICBzdXBlcihzZWxlY3Rpb25Nb2RlbCwgZGF0YVZpZXdPcHRpb25zUHJvdmlkZXIpO1xuICAgIHRoaXMuX21hdFNvcnQgPSBtYXRTb3J0O1xuICAgIHRoaXMuX2V4dGVuc2lvbkdyb3VwSW5kZXggPSAocGFyZW50RXh0ZW5zaW9uPy5leHRlbnNpb25Hcm91cEluZGV4ID8/IDApICsgMTtcbiAgICBpZiAodGhpcy5fbWF0U29ydCkge1xuICAgICAgdGhpcy5fbWF0U29ydC5kaXNhYmxlQ2xlYXIgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgRWxkZXJUYWJsZU1vZGVsQ2RrVGFibGVCaW5kaW5nXG4gICAgICAub2YodGhpcy50YWJsZU1vZGVsKVxuICAgICAgLnRhYmxlKHRoaXMubWF0VGFibGUpXG4gICAgICAuYmluZFVudGlsKHRoaXMuZGVzdHJveSQpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcblxuICAgIEVsZGVyVGFibGVNb2RlbFF1ZXJ5R3JvdXBcbiAgICAgIC5zdGFydCh0aGlzLnRhYmxlTW9kZWwsIHRoaXMuX2V4dGVuc2lvbkdyb3VwSW5kZXgpXG4gICAgICAud2l0aENvbHVtbnNQb3NpdGlvbihDb2x1bW5Qb3NpdGlvblNwZWMucmVsYXRpdmVUb1ByZXZHcm91cCgnc3RhcnQnKSlcbiAgICAgIC53aXRoQ29sdW1uRGVmcyh0aGlzLmNvbHVtbkRlZnMsIHRoaXMuZWxkZXJDb2x1bW5zKVxuICAgICAgLndpdGhSb3dEZWZzKHRoaXMucm93RGVmcylcbiAgICAgIC53aXRoU29ydCh0aGlzLl9tYXRTb3J0KVxuICAgICAgLmJpbmRVbnRpbCh0aGlzLmRlc3Ryb3kkKTtcblxuICAgIFF1ZXJ5TGlzdEJpbmRpbmdcbiAgICAgIC5vZih0aGlzLnRvb2xiYXJSb3dUZW1wbGF0ZVF1ZXJ5KVxuICAgICAgLnVwZGF0ZWQodG9vbGJhclJvd3MgPT4gdGhpcy50b29sYmFyUm93VGVtcGxhdGVzJC5uZXh0KHRvb2xiYXJSb3dzKSlcbiAgICAgIC5iaW5kVW50aWwodGhpcy5kZXN0cm95JCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXG4gICAgTWF0VGFibGVEYXRhQ29udGV4dEJpbmRpbmdCdWlsZGVyXG4gICAgICAuc3RhcnQodGhpcy5kYXRhQ29udGV4dCQpXG4gICAgICAud2l0aFNvcnRzKHRoaXMudGFibGVNb2RlbC5zb3J0cyQpXG4gICAgICAud2l0aFBhZ2luYXRvcihvZih0aGlzLm1hdFBhZ2luYXRvcikpXG4gICAgICAuYmluZFVudGlsKHRoaXMuZGVzdHJveSQpO1xuXG4gICAgUXVlcnlMaXN0QmluZGluZ1xuICAgICAgLm9mKHRoaXMucm93c1F1ZXJ5KVxuICAgICAgLnVwZGF0ZWQocm93cyA9PiB0aGlzLnJvd3MkLm5leHQocm93cykpXG4gICAgICAuYmluZFVudGlsKHRoaXMuZGVzdHJveSQpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHRvb2xiYXJUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgIHRoaXMudG9vbGJhclJvd1RlbXBsYXRlcyQubmV4dChbdGVtcGxhdGVdKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YShkYXRhOiBBcnJheTxhbnk+IHwgSURhdGFTb3VyY2U8YW55PiB8IElEYXRhQ29udGV4dDxhbnk+KSB7XG5cbiAgICB0aGlzLmF1dG9DbGVhblVwKCk7XG5cbiAgICBsZXQgZGM6IElEYXRhQ29udGV4dDxhbnk+O1xuXG4gICAgaWYgKGRhdGEgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgZGMgPSBEYXRhQ29udGV4dEJ1aWxkZXIuc3RhcnQoKVxuICAgICAgICAubG9jYWxTb3J0KClcbiAgICAgICAgLmJ1aWxkTG9jYWwoZGF0YSwgdGhpcy5pZEZpZWxkKTsgLy8gUG90ZW50aWFsIE1lbW9yeSBsZWFrIChTZWUgYXV0b0NsZWFuVXApXG4gICAgICBkYy5zdGFydCgpO1xuICAgIH0gZWxzZSBpZiAoaXNEYXRhU291cmNlKGRhdGEpKSB7XG4gICAgICBkYyA9IERhdGFDb250ZXh0QnVpbGRlci5zdGFydCgpXG4gICAgICAgIC5sb2NhbFNvcnQoKVxuICAgICAgICAucmVsb2FkT25Mb2NhbENoYW5nZXMoKVxuICAgICAgICAuYnVpbGQoZGF0YSk7IC8vIFBvdGVudGlhbCBNZW1vcnkgbGVhayAoU2VlIGF1dG9DbGVhblVwKVxuICAgICAgZGMuc3RhcnQoKTtcbiAgICB9IGVsc2UgaWYgKGlzRGF0YUNvbnRleHQoZGF0YSkpIHtcbiAgICAgIGRjID0gZGF0YTtcbiAgICB9IGVsc2UgaWYgKGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBkYyA9IERhdGFDb250ZXh0QnVpbGRlci5zdGFydCgpLmJ1aWxkRW1wdHkoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgZGF0YSBtdXN0IGVpdGhlciBiZSBhbiBBcnJheSwgSURhdGFTb3VyY2Ugb3IgSURhdGFDb250ZXh0LCBidXQgd2FzOiAnICsgKHR5cGVvZiBkYXRhKSk7XG4gICAgfVxuICAgIHRoaXMuZGF0YUNvbnRleHQgPSBkYztcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkRhdGFDb250ZXh0U2V0KGRhdGE6IElEYXRhQ29udGV4dDxhbnk+KTogdm9pZCB7XG4gICAgdGhpcy50b3RhbCQgPSBkYXRhLnRvdGFsLnBpcGUoXG4gICAgICBtYXAodG90YWwgPT4gdG90YWwgPyB0b3RhbCArICcnIDogJ+KInicpXG4gICAgKTtcblxuICAgIHRoaXMuc2V0dXBTZWxlY3Rpb25MaWZlQ3ljbGUoZGF0YSk7XG5cbiAgICAvLyB0aGlzLnNlbGVjdGlvbk1vZGVsLmNsZWFyKCk7IC8vIFRPRE8gU3VwcG9ydCBjaGFuZ2VhYmxlIGRhdGEtY29udGV4dCBmb3Igc3RhdGljIGFycmF5IHVzZSBjYXNlXG5cbiAgICBpZiAodGhpcy5pc0NvbnRpbnVhYmxlKSB7XG4gICAgICB0aGlzLmNhbkxvYWRNb3JlJCA9IGNvbWJpbmVMYXRlc3QoW2RhdGEubG9hZGluZywgdGhpcy5kYXRhQ29udGludWFibGUuaGFzTW9yZURhdGFdKS5waXBlKFxuICAgICAgICBtYXAoKFtsb2FkaW5nLCBoYXNNb3JlRGF0YV0pID0+ICFsb2FkaW5nICYmIGhhc01vcmVEYXRhKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jYW5Mb2FkTW9yZSQgPSBvZihmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNwbGF5ZWRDb2x1bW5zKGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy50YWJsZU1vZGVsLmRpc3BsYXllZENvbHVtbnMgPSBkaXNwbGF5ZWRDb2x1bW5zO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5ZWRDb2x1bW5zKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy50YWJsZU1vZGVsLmRpc3BsYXllZENvbHVtbnM7XG4gIH1cblxuICAvKiogSW5kaWNhdGVzIGlmIHNlbGVjdGlvbiBjb2x1bW4gaXMgc2hvd24uICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2VsZWN0aW9uVmlzaWJsZSh2aXNpYmxlOiBib29sZWFuKSB7XG4gICAgdGhpcy50YWJsZU1vZGVsLnNlbGVjdGlvblZpc2libGUgPSB2aXNpYmxlO1xuICB9XG5cbiAgcHVibGljIGdldCBzZWxlY3Rpb25WaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRhYmxlTW9kZWwuc2VsZWN0aW9uVmlzaWJsZTtcbiAgfVxuXG4gIC8qXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGFjdGl2ZUl0ZW0oKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5lbGRlclRhYmxlQWN0aXZhdGlvbi5hY3RpdmVJdGVtJDtcbiAgfSovXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHJlcXVlc3RNb3JlRGF0YVpvbmVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcblxuICAgIGlmICh0aGlzLmRhdGFDb250aW51YWJsZS5oYXNNb3JlRGF0YVNuYXBzaG90KSB7XG5cbiAgICAgIGlmICh0aGlzLmRhdGFDb250aW51YWJsZS5zbmFwc2hvdC5pc0xvYWRpbmcpIHtcbiAgICAgICAgdGhpcy5sb2FkTmV4dFF1ZXVlZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmRhdGFDb250aW51YWJsZS5sb2FkTW9yZSgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICBsb2FkZWQgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmxvYWROZXh0UXVldWVkKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmxvYWROZXh0UXVldWVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICB0aGlzLnJlcXVlc3RNb3JlRGF0YVpvbmVkKGV2ZW50KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvYWROZXh0UXVldWVkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCB0cmFja0J5Rm4oKTogVHJhY2tCeUZ1bmN0aW9uPGFueT4ge1xuICAgIHJldHVybiAoaW5kZXg6IG51bWJlciwgZW50aXR5OiBhbnkpID0+IHRoaXMuZ2V0SWQoZW50aXR5KTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgc2V0dXBTZWxlY3Rpb25MaWZlQ3ljbGUoZGF0YTogSURhdGFDb250ZXh0PGFueT4pOiB2b2lkIHtcblxuICAgIGlmICh0aGlzLnNlbGVjdGlvbkxpZmVDeWNsZSkge1xuICAgICAgdGhpcy5zZWxlY3Rpb25MaWZlQ3ljbGUudW5zdWJzY3JpYmUoKTsgLy8gQ2xlYW4gdXAgcHJldmlvdXMgc3ViXG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3Rpb25MaWZlQ3ljbGUgPSBkYXRhLmRhdGEucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICkuc3Vic2NyaWJlKG5ld0RhdGEgPT4ge1xuXG4gICAgICBpZiAodGhpcy5rZWVwU2VsZWN0aW9uKSB7XG4gICAgICAgIC8vIElmIGtlZXAgc2VsZWN0aW9uIGVuYWJsZWRcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZWwuaGFzVmFsdWUpIHtcblxuICAgICAgICAgIC8vIENoZWNrIHRoYXQgYWxsIHNlbGVjdGVkIHZhbHVlcyBhcmUgc3RpbGwgcHJlc2VudCBvciByZW1vdmUgdGhlbVxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nSWRzID0gbmV3IFNldDxhbnk+KFxuICAgICAgICAgICAgbmV3RGF0YVxuICAgICAgICAgICAgICAubWFwKGQgPT4gdGhpcy5nZXRJZChkKSlcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgY29uc3Qgbm9Mb25nZXJBdmFpbGFibGVJZHMgPSB0aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvblNuYXBzaG90XG4gICAgICAgICAgICAubWFwKHNlbGVjdGVkID0+IHRoaXMuZ2V0SWQoc2VsZWN0ZWQpKVxuICAgICAgICAgICAgLmZpbHRlcihzZWxlY3RlZElkID0+ICFleGlzdGluZ0lkcy5oYXMoc2VsZWN0ZWRJZCkpO1xuXG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5kZXNlbGVjdElkcyhub0xvbmdlckF2YWlsYWJsZUlkcyk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuY2xlYXIoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG5cbn1cbiIsIlxuPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4RmxleFxuICAgICBjbGFzcz1cImVsZGVyLXRhYmxlXCJcbiAgICAgW2NsYXNzLmVsZGVyLW1hdC10YWJsZS1jb250YWluZXJdPVwiIWVtYmVkZGVkXCJcbiAgICAgW2NsYXNzLm1hdC1lbGV2YXRpb24tejVdPVwiZmxvYXRcIlxuICAgICBbY2xhc3MuZWxkZXItbWF0LXRhYmxlLWZsYXRdPVwiIWVtYmVkZGVkICYmICFmbG9hdFwiXG4+XG5cbiAgPCEtLSBUb29sYmFyIFJvd3MgLS0+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRvb2xiYXJSb3dUZW1wbGF0ZSBvZiB0b29sYmFyUm93VGVtcGxhdGVzJCB8IGFzeW5jXCI+XG4gICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwidG9vbGJhclJvd1RlbXBsYXRlOyBjb250ZXh0OiB7JGltcGxpY2l0OiB0aGlzfVwiPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDwhLS0gU2Nyb2xsYWJsZSBUYWJsZSAtLT5cbiAgPGRpdiBmeExheW91dD1cImNvbHVtblwiIGNsYXNzPVwic2Nyb2xsYWJsZSBlbGRlci10YWJsZS1zY3JvbGxcIlxuICAgICAgIGluZmluaXRlU2Nyb2xsXG4gICAgICAgW2V2ZW50VGhyb3R0bGVdPVwiMTUwXCJcbiAgICAgICBbb2Zmc2V0RmFjdG9yXT1cIjJcIlxuICAgICAgIFtpZ25vcmVTY3JvbGxFdmVudF09XCIhaXNDb250aW51YWJsZSB8fCAhKGNhbkxvYWRNb3JlJCB8IGFzeW5jKVwiXG4gICAgICAgKGNsb3NlVG9FbmQpPVwicmVxdWVzdE1vcmVEYXRhWm9uZWQoJGV2ZW50KVwiXG4gID5cbiAgICA8dGFibGVcbiAgICAgIG1hdC10YWJsZVxuICAgICAgY2xhc3M9XCJlbGRlci1tYXQtaW5uZXItdGFibGVcIlxuICAgICAgW3RyYWNrQnldPVwidHJhY2tCeUZuXCJcbiAgICAgIFtkYXRhU291cmNlXT1cIiRhbnkoZGF0YUNvbnRleHQkIHwgYXN5bmMpXCJcbiAgICAgIFtlbGRlckRhdGFDb250ZXh0U2VsZWN0aW9uXT1cImRhdGFDb250ZXh0JCB8IGFzeW5jXCIgI2RhdGFTZWxlY3Rpb249XCJlbGRlckRhdGFDb250ZXh0U2VsZWN0aW9uXCJcbiAgICAgIFtlbGRlckRhdGFDb250ZXh0U2VsZWN0aW9uTW9kZWxdPVwic2VsZWN0aW9uTW9kZWxcIlxuICAgID5cblxuICAgICAgPCEtLSBzZWxlY3Rpb24gQ29sdW1uIC0tPlxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJzZWxlY3RcIj5cbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cbiAgICAgICAgICA8ZWxkZXItc2VsZWN0aW9uLW1hc3Rlci1jaGVja2JveD48L2VsZGVyLXNlbGVjdGlvbi1tYXN0ZXItY2hlY2tib3g+XG4gICAgICAgIDwvdGg+XG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbnRpdHlcIj5cbiAgICAgICAgICA8bWF0LWNoZWNrYm94IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb25Nb2RlbC50b2dnbGUoZW50aXR5KSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0aW9uTW9kZWwub2JzZXJ2ZVNlbGVjdGlvbihlbnRpdHkpIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFzZWxlY3Rpb25Nb2RlbC5pc1NlbGVjdGFibGUoZW50aXR5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImVsZGVyLXRhYmxlLWNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5lbGRlci10YWJsZS1jaGVja2JveC12aXNpYmxlXT1cIihkYXRhU2VsZWN0aW9uLnNlbGVjdGlvblN0YXRlJCB8IGFzeW5jKS5hbnlTZWxlY3RlZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvbWF0LWNoZWNrYm94PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgbWF0LWZvb3Rlci1jZWxsICptYXRGb290ZXJDZWxsRGVmPjwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIih0YWJsZU1vZGVsLmRpc3BsYXllZENvbHVtbnNJbm5lciQgfCBhc3luYykgYXMgZGlzcGxheWVkQ29sdW1uc0lubmVyXCI+XG4gICAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc0lubmVyOyBzdGlja3k6IHRydWVcIj48L3RyPlxuICAgICAgICA8dHIgbWF0LXJvdyBjbGFzcz1cImVsZGVyLXRhYmxlLXJvd1wiXG4gICAgICAgICAgICAqbWF0Um93RGVmPVwibGV0IGVudGl0eTsgY29sdW1uczogZGlzcGxheWVkQ29sdW1uc0lubmVyO1wiXG4gICAgICAgICAgICBbZWxkZXJUYWJsZVJvd109XCJlbnRpdHlcIlxuICAgICAgICAgICAgW2NsYXNzLmRlbnNlXT1cImRlbnNlXCJcbiAgICAgICAgICAgIFtjbGFzcy5lbGRlci1yb3ctaGlkZGVuXT1cImhpZGRlbkZpZWxkICYmIGVudGl0eVtoaWRkZW5GaWVsZF1cIlxuICAgICAgICAgICAgW2NsYXNzLmVsZGVyLXJvdy1yZW1vdmluZ109XCJyZW1vdmluZ0ZpZWxkICYmIGVudGl0eVtyZW1vdmluZ0ZpZWxkXVwiXG4gICAgICAgICAgICBbY2xhc3MuZWxkZXItdGFibGUtcm93LXNlbGVjdGVkXT1cImludGVyYWN0aW9uTW9kZSA9PT0gJ3NlbGVjdGlvbicgJiYgc2VsZWN0aW9uTW9kZWwub2JzZXJ2ZVNlbGVjdGlvbihlbnRpdHkpIHwgYXN5bmNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKGVudGl0eSlcIlxuICAgICAgICAgICAgKGRibGNsaWNrKT1cIm9uSXRlbURvdWJsZUNsaWNrKGVudGl0eSlcIlxuICAgICAgICA+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93Rm9vdGVyXCI+XG4gICAgICAgICAgPHRyIG1hdC1mb290ZXItcm93ICptYXRGb290ZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zSW5uZXI7IHN0aWNreTogdHJ1ZVwiPjwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90YWJsZT5cbiAgPC9kaXY+XG5cbiAgPGVsZGVyLWRhdGEtY29udGV4dC1zdGF0ZS1pbmRpY2F0b3IgZnhGbGV4PVwibm9uZVwiIFtkYXRhQ29udGV4dF09XCJkYXRhQ29udGV4dFwiPlxuICA8L2VsZGVyLWRhdGEtY29udGV4dC1zdGF0ZS1pbmRpY2F0b3I+XG5cbiAgPG1hdC1wcm9ncmVzcy1iYXIgZnhGbGV4PVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIihkYXRhQ29udGV4dD8ubG9hZGluZyB8IGFzeW5jKSA/ICdpbmRldGVybWluYXRlJyA6ICdkZXRlcm1pbmF0ZSdcIlxuICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiKChkYXRhQ29udGV4dD8uc3RhdHVzIHwgYXN5bmMpPy5oYXNFcnJvcikgPyAnd2FybicgOiAncHJpbWFyeSdcIj5cbiAgPC9tYXQtcHJvZ3Jlc3MtYmFyPlxuXG4gIDwhLS0gT3B0aW9uYWwgUGFnaW5hdG9yIFRvb2xiYXIgLS0+XG4gIDxtYXQtcGFnaW5hdG9yICNtYXRQYWdpbmF0b3IgKm5nSWY9XCJpc0FjdGl2ZVBhZ2VkICYmIChkYXRhQWN0aXZlUGFnZWQucGFnZSB8IGFzeW5jKSBhcyBwYWdlXCJcbiAgICAgICAgICAgICAgICAgZnhGbGV4PVwibm9uZVwiXG4gICAgICAgICAgICAgICAgIFtsZW5ndGhdPVwiZGF0YUNvbnRleHQ/LnRvdGFsIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICBbcGFnZUluZGV4XT1cInBhZ2U/LmluZGV4XCJcbiAgICAgICAgICAgICAgICAgW3BhZ2VTaXplXT1cInBhZ2U/LnNpemVcIlxuICAgICAgICAgICAgICAgICBbcGFnZVNpemVPcHRpb25zXT1cInBhZ2VTaXplT3B0aW9uc1wiPlxuICA8L21hdC1wYWdpbmF0b3I+XG5cbiAgPCEtLSBPcHRpb25hbCBDb250aW51YXRpb24gRm9vdGVyIC0tPlxuICA8ZGl2ICpuZ0lmPVwiaXNDb250aW51YWJsZVwiIGNsYXNzPVwiZWxkZXItdGFibGUtZm9vdGVyXCJcbiAgICAgICBmeExheW91dD1cInJvd1wiIGZ4RmxleD1cIm5vbmVcIiBmeExheW91dEFsaWduPVwiZW5kIGNlbnRlclwiIGZ4TGF5b3V0R2FwPVwiMTBweFwiXG4gICAgICAgc3R5bGU9XCJwYWRkaW5nLXJpZ2h0OiAxMHB4XCIgPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvbiBub3NlbGVjdFwiIHN0eWxlPVwiY29sb3I6IGdyYXlcIj5cbiAgICAgIHt7KGRhdGFDb250ZXh0Py5kYXRhIHwgYXN5bmMpPy5sZW5ndGh9fSAvIHt7dG90YWwkIHwgYXN5bmN9fVxuICAgIDwvc3Bhbj5cblxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEoY2FuTG9hZE1vcmUkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgIChjbGljayk9XCJkYXRhQ29udGludWFibGUubG9hZE1vcmUoKVwiPlxuICAgICAgPG1hdC1pY29uPmtleWJvYXJkX2Fycm93X2Rvd248L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuPC9kaXY+XG4iXX0=
321
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvdGFibGUvZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvdGFibGUvZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUVmLFVBQVUsRUFDVixLQUFLLEVBSUwsUUFBUSxFQUVSLFFBQVEsRUFDUixXQUFXLEVBRVgsU0FBUyxFQUNULFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSxxRUFBcUUsQ0FBQztBQUN0SCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFekQsT0FBTyxFQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDMUUsT0FBTyxFQUFlLGFBQWEsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBRTlGLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFjLEVBQUUsRUFBd0IsTUFBTSxNQUFNLENBQUM7QUFDM0YsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDN0Ys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U0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUk1QixZQUFZO3NCQURsQixTQUFTO3VCQUFDLFlBQVk7Z0JBTWhCLFVBQVU7c0JBRGhCLGVBQWU7dUJBQUMsWUFBWTtnQkFJdEIsWUFBWTtzQkFEbEIsZUFBZTt1QkFBQyx5QkFBeUI7Z0JBSW5DLE9BQU87c0JBRGIsZUFBZTt1QkFBQyxTQUFTO2dCQVduQixPQUFPO3NCQURiLEtBQUs7Z0JBVUMsYUFBYTtzQkFEbkIsS0FBSztnQkFXQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLGVBQWU7c0JBRHJCLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQVVDLHVCQUF1QjtzQkFEN0IsZUFBZTt1QkFBQywwQkFBMEIsRUFBRSxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUM7Z0JBVXhELFNBQVM7c0JBRGhCLFlBQVk7dUJBQUMsc0JBQXNCO2dCQTRGekIsZUFBZTtzQkFEekIsS0FBSztnQkFNSyxJQUFJO3NCQURkLEtBQUs7Z0JBK0NLLGdCQUFnQjtzQkFEMUIsS0FBSztnQkFXSyxnQkFBZ0I7c0JBRDFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgUXVlcnlMaXN0LFxuICBTa2lwU2VsZixcbiAgVGVtcGxhdGVSZWYsXG4gIFRyYWNrQnlGdW5jdGlvbixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRUYWJsZURhdGFDb250ZXh0QmluZGluZ0J1aWxkZXJ9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9tYXQtdGFibGUtZGF0YS1jb250ZXh0LWJpbmRpbmcnO1xuaW1wb3J0IHtNYXRQYWdpbmF0b3J9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQge01hdFNvcnR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHtNYXRDb2x1bW5EZWYsIE1hdFJvd0RlZiwgTWF0VGFibGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7SURhdGFDb250ZXh0LCBpc0RhdGFDb250ZXh0fSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7U2VsZWN0aW9uTW9kZWx9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9zZWxlY3Rpb24vc2VsZWN0aW9uLW1vZGVsJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtDZGtDb2x1bW5EZWYsIENka1Jvd0RlZiwgQ2RrVGFibGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQge0RhdGFDb250ZXh0QnVpbGRlcn0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1idWlsZGVyJztcbmltcG9ydCB7RUxERVJfREFUQV9WSUVXfSBmcm9tICcuLi8uLi9iYXNlL2VsZGVyLWRhdGEtdmlldyc7XG5pbXBvcnQge0VsZGVyVGFibGVSb3dEaXJlY3RpdmV9IGZyb20gJy4uL2VsZGVyLXRhYmxlLXJvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtJRGF0YVNvdXJjZSwgaXNEYXRhU291cmNlfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhc291cmNlL2RhdGEtc291cmNlJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld0Jhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uL2Jhc2UvZWxkZXItZGF0YS12aWV3LWJhc2UnO1xuaW1wb3J0IHtFbGRlclRhYmxlTW9kZWx9IGZyb20gJy4uL21vZGVsL2VsZGVyLXRhYmxlLW1vZGVsJztcbmltcG9ydCB7RWxkZXJUYWJsZVByb3ZpZGVyc30gZnJvbSAnLi4vbW9kZWwvZWxkZXItdGFibGUtbW9kZWwtcHJvdmlkZXInO1xuaW1wb3J0IHtRdWVyeUxpc3RCaW5kaW5nfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vdXRpbHMvcXVlcnktbGlzdC1iaW5kaW5nJztcbmltcG9ydCB7RWxkZXJUYWJsZU1vZGVsQ2RrVGFibGVCaW5kaW5nfSBmcm9tICcuLi9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC1jZGstdGFibGUtYmluZGluZyc7XG5pbXBvcnQge0VsZGVyVGFibGVNb2RlbFF1ZXJ5R3JvdXB9IGZyb20gJy4uL21vZGVsL2VsZGVyLXRhYmxlLW1vZGVsLXF1ZXJ5LWdyb3VwJztcbmltcG9ydCB7RWxkZXJUYWJsZUV4dGVuc2lvbkRpcmVjdGl2ZX0gZnJvbSAnLi4vZWxkZXItdGFibGUtZXh0ZW5zaW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0VsZGVyVGFibGVDb2x1bW5EaXJlY3RpdmV9IGZyb20gJy4uL2VsZGVyLXRhYmxlLWNvbHVtbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtDb2x1bW5Qb3NpdGlvblNwZWN9IGZyb20gJy4uL21vZGVsL2VsZGVyLWNvbHVtbi1sYXlvdXQnO1xuaW1wb3J0IHtFbGRlclRhYmxlVG9vbGJhckRpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci10YWJsZS10b29sYmFyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0RhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyQmluZGluZ30gZnJvbSAnLi4vLi4vYmFzZS9kYXRhLXZpZXctb3B0aW9ucy1wcm92aWRlci1iaW5kaW5nJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcn0gZnJvbSAnLi4vLi4vYmFzZS9lbGRlci1kYXRhLXZpZXctb3B0aW9ucy1wcm92aWRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXRhYmxlLCBlYnMtdGFibGUnLCAvLyBlYnMtdGFibGUgaXMgZGVwcmVjYXRlZFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci10YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRWxkZXJUYWJsZVByb3ZpZGVycy5FeGlzdGluZ09yTmV3VGFibGVNb2RlbCxcbiAgICB7XG4gICAgICBwcm92aWRlOiBFTERFUl9EQVRBX1ZJRVcsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFbGRlclRhYmxlQ29tcG9uZW50KVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclRhYmxlQ29tcG9uZW50IGV4dGVuZHMgRWxkZXJEYXRhVmlld0Jhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICAvKipcbiAgICogTG9hZCBuZXh0IGNodW5rIGFmdGVyIGN1cnJlbnQgaXMgZG9uZVxuICAgKi9cbiAgcHJpdmF0ZSBsb2FkTmV4dFF1ZXVlZCA9IGZhbHNlO1xuXG4gIC8vLyBUYWJsZVxuICBAVmlld0NoaWxkKE1hdFRhYmxlLCB7c3RhdGljOiB0cnVlfSlcbiAgcHVibGljIG1hdFRhYmxlOiBDZGtUYWJsZTxhbnk+O1xuXG4gIEBWaWV3Q2hpbGQoTWF0UGFnaW5hdG9yKVxuICBwdWJsaWMgbWF0UGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWF0U29ydDogTWF0U29ydDtcblxuICBAQ29udGVudENoaWxkcmVuKE1hdENvbHVtbkRlZilcbiAgcHVibGljIGNvbHVtbkRlZnM6IFF1ZXJ5TGlzdDxDZGtDb2x1bW5EZWY+O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oRWxkZXJUYWJsZUNvbHVtbkRpcmVjdGl2ZSlcbiAgcHVibGljIGVsZGVyQ29sdW1uczogUXVlcnlMaXN0PEVsZGVyVGFibGVDb2x1bW5EaXJlY3RpdmU+O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oTWF0Um93RGVmKVxuICBwdWJsaWMgcm93RGVmczogUXVlcnlMaXN0PENka1Jvd0RlZjxhbnk+PjtcblxuICAvKipcbiAgICogRmllbGQgdG8gaWRlbnRpZnkgdGhlIGRhdGEgcmVjb3JkcyAoSUQgZmllbGQpLlxuICAgKiBOb3RlOiBUaGlzIHByb3BlcnR5IGlzIG9ubHkgY29uc2lkZXJlZCBpbiBjYXNlIHRoZVxuICAgKiB1bmRlcmx5aW5nIGRhdGEgaXMgYW4gQXJyYXkuXG4gICAqIEluIGNhc2Ugb2YgRGF0YUNvbnRleHQsIHRoZSBJRCBmaWVsZCBuZWVkcyB0byBiZSBkZWZpbmVkIGluIHRoZSBjb250ZXh0LlxuICAgKiBJbiBjYXNlIG9mIERhdGFTb3VyY2UsIHRoZSBJRCBmaWVsZCBpcyBhdXRvbWF0aWNhbGx5IHBpY2tlZCBmcm9tIHRoZSBEYXRhU291cmNlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGlkRmllbGQ6IHN0cmluZztcblxuICAvKipcbiAgICogV2hlbiB0aGlzIGZpZWxkIGlzIHByZXNlbnQgYW5kIHRydWUsXG4gICAqIHRoZSBjb3Jlc3BvbmRpbmcgcm93IGlzIG1hcmtlZCB0byBiZSBpbiB0aGUgcHJvY2Vzc2VkIG9mIGJlaW5nIHJlbW92ZWQuXG4gICAqXG4gICAqIEkuZS4gJ3JlbW92aW5nJ1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHJlbW92aW5nRmllbGQ6IHN0cmluZyA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZW4gdGhpcyBmaWVsZCBpcyBwcmVzZW50IGFuZCB0cnVlLFxuICAgKiB0aGUgY29ycmVzcG9uZGluZyByb3cgaXMgaGlkZGVuLlxuICAgKlxuICAgKiBJLmUuICdkZWxldGVkJ1xuICAgKlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGhpZGRlbkZpZWxkOiBzdHJpbmcgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlU2l6ZU9wdGlvbnMgPSBbMzAsIDUwLCAxMDAsIDE1MCwgMjAwXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMga2VlcFNlbGVjdGlvbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dGb290ZXIgPSBmYWxzZTtcblxuICBwdWJsaWMgY2FuTG9hZE1vcmUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBwdWJsaWMgdG90YWwkOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgLyoqXG4gICAqIFRoZSB0YWJsZSB0b29sYmFyXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKEVsZGVyVGFibGVUb29sYmFyRGlyZWN0aXZlLCB7cmVhZDogVGVtcGxhdGVSZWZ9KVxuICBwdWJsaWMgdG9vbGJhclJvd1RlbXBsYXRlUXVlcnk6IFF1ZXJ5TGlzdDxUZW1wbGF0ZVJlZjxhbnk+PjtcbiAgcHVibGljIHJlYWRvbmx5IHRvb2xiYXJSb3dUZW1wbGF0ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUZW1wbGF0ZVJlZjxhbnk+W10+KFtdKTtcblxuICAvKipcbiAgICogU2VsZWN0aW9uIG1vZGVsIGxpZmUgY3ljbGVcbiAgICovXG4gIHByaXZhdGUgc2VsZWN0aW9uTGlmZUN5Y2xlOiBTdWJzY3JpcHRpb247XG5cbiAgQFZpZXdDaGlsZHJlbihFbGRlclRhYmxlUm93RGlyZWN0aXZlKVxuICBwcml2YXRlIHJvd3NRdWVyeTogUXVlcnlMaXN0PEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8YW55Pj47XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgcm93cyBvZiB0aGlzIHRhYmxlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJvd3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFbGRlclRhYmxlUm93RGlyZWN0aXZlPGFueT5bXT4oW10pO1xuXG4gIC8qKlxuICAgKiBUaGUgaW5kZXggb2YgdGhpcyB0YWJsZSBncm91cCBleHRlbnNpb25cbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V4dGVuc2lvbkdyb3VwSW5kZXg6IG51bWJlcjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGFibGVNb2RlbDogRWxkZXJUYWJsZU1vZGVsLFxuICAgIEBPcHRpb25hbCgpIHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+LFxuICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgIEBPcHRpb25hbCgpIG1hdFNvcnQ6IE1hdFNvcnQsXG4gICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRFeHRlbnNpb246IEVsZGVyVGFibGVFeHRlbnNpb25EaXJlY3RpdmUsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lXG4gICkge1xuICAgIHN1cGVyKHNlbGVjdGlvbk1vZGVsLCBkYXRhVmlld09wdGlvbnNQcm92aWRlcik7XG4gICAgdGhpcy5fbWF0U29ydCA9IG1hdFNvcnQ7XG4gICAgdGhpcy5fZXh0ZW5zaW9uR3JvdXBJbmRleCA9IChwYXJlbnRFeHRlbnNpb24/LmV4dGVuc2lvbkdyb3VwSW5kZXggPz8gMCkgKyAxO1xuICAgIGlmICh0aGlzLl9tYXRTb3J0KSB7XG4gICAgICB0aGlzLl9tYXRTb3J0LmRpc2FibGVDbGVhciA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICBFbGRlclRhYmxlTW9kZWxDZGtUYWJsZUJpbmRpbmdcbiAgICAgIC5vZih0aGlzLnRhYmxlTW9kZWwpXG4gICAgICAudGFibGUodGhpcy5tYXRUYWJsZSlcbiAgICAgIC5iaW5kVW50aWwodGhpcy5kZXN0cm95JCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuXG4gICAgRWxkZXJUYWJsZU1vZGVsUXVlcnlHcm91cFxuICAgICAgLnN0YXJ0KHRoaXMudGFibGVNb2RlbCwgdGhpcy5fZXh0ZW5zaW9uR3JvdXBJbmRleClcbiAgICAgIC53aXRoQ29sdW1uc1Bvc2l0aW9uKENvbHVtblBvc2l0aW9uU3BlYy5yZWxhdGl2ZVRvUHJldkdyb3VwKCdzdGFydCcpKVxuICAgICAgLndpdGhDb2x1bW5EZWZzKHRoaXMuY29sdW1uRGVmcywgdGhpcy5lbGRlckNvbHVtbnMpXG4gICAgICAud2l0aFJvd0RlZnModGhpcy5yb3dEZWZzKVxuICAgICAgLndpdGhTb3J0KHRoaXMuX21hdFNvcnQpXG4gICAgICAuYmluZFVudGlsKHRoaXMuZGVzdHJveSQpO1xuXG4gICAgUXVlcnlMaXN0QmluZGluZ1xuICAgICAgLm9mKHRoaXMudG9vbGJhclJvd1RlbXBsYXRlUXVlcnkpXG4gICAgICAudXBkYXRlZCh0b29sYmFyUm93cyA9PiB0aGlzLnRvb2xiYXJSb3dUZW1wbGF0ZXMkLm5leHQodG9vbGJhclJvd3MpKVxuICAgICAgLmJpbmRVbnRpbCh0aGlzLmRlc3Ryb3kkKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG5cbiAgICBNYXRUYWJsZURhdGFDb250ZXh0QmluZGluZ0J1aWxkZXJcbiAgICAgIC5zdGFydCh0aGlzLmRhdGFDb250ZXh0JClcbiAgICAgIC53aXRoU29ydHModGhpcy50YWJsZU1vZGVsLnNvcnRzJClcbiAgICAgIC53aXRoUGFnaW5hdG9yKG9mKHRoaXMubWF0UGFnaW5hdG9yKSlcbiAgICAgIC5iaW5kVW50aWwodGhpcy5kZXN0cm95JCk7XG5cbiAgICBRdWVyeUxpc3RCaW5kaW5nXG4gICAgICAub2YodGhpcy5yb3dzUXVlcnkpXG4gICAgICAudXBkYXRlZChyb3dzID0+IHRoaXMucm93cyQubmV4dChyb3dzKSlcbiAgICAgIC5iaW5kVW50aWwodGhpcy5kZXN0cm95JCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdG9vbGJhclRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy50b29sYmFyUm93VGVtcGxhdGVzJC5uZXh0KFt0ZW1wbGF0ZV0pO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkYXRhKGRhdGE6IEFycmF5PGFueT4gfCBJRGF0YVNvdXJjZTxhbnk+IHwgSURhdGFDb250ZXh0PGFueT4pIHtcblxuICAgIHRoaXMuYXV0b0NsZWFuVXAoKTtcblxuICAgIGxldCBkYzogSURhdGFDb250ZXh0PGFueT47XG5cbiAgICBpZiAoZGF0YSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICBkYyA9IERhdGFDb250ZXh0QnVpbGRlci5zdGFydCgpXG4gICAgICAgIC5sb2NhbFNvcnQoKVxuICAgICAgICAuYnVpbGRMb2NhbChkYXRhLCB0aGlzLmlkRmllbGQpOyAvLyBQb3RlbnRpYWwgTWVtb3J5IGxlYWsgKFNlZSBhdXRvQ2xlYW5VcClcbiAgICAgIGRjLnN0YXJ0KCk7XG4gICAgfSBlbHNlIGlmIChpc0RhdGFTb3VyY2UoZGF0YSkpIHtcbiAgICAgIGRjID0gRGF0YUNvbnRleHRCdWlsZGVyLnN0YXJ0KClcbiAgICAgICAgLmxvY2FsU29ydCgpXG4gICAgICAgIC5yZWxvYWRPbkxvY2FsQ2hhbmdlcygpXG4gICAgICAgIC5idWlsZChkYXRhKTsgLy8gUG90ZW50aWFsIE1lbW9yeSBsZWFrIChTZWUgYXV0b0NsZWFuVXApXG4gICAgICBkYy5zdGFydCgpO1xuICAgIH0gZWxzZSBpZiAoaXNEYXRhQ29udGV4dChkYXRhKSkge1xuICAgICAgZGMgPSBkYXRhO1xuICAgIH0gZWxzZSBpZiAoZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGRjID0gRGF0YUNvbnRleHRCdWlsZGVyLnN0YXJ0KCkuYnVpbGRFbXB0eSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBkYXRhIG11c3QgZWl0aGVyIGJlIGFuIEFycmF5LCBJRGF0YVNvdXJjZSBvciBJRGF0YUNvbnRleHQsIGJ1dCB3YXM6ICcgKyAodHlwZW9mIGRhdGEpKTtcbiAgICB9XG4gICAgdGhpcy5kYXRhQ29udGV4dCA9IGRjO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uRGF0YUNvbnRleHRTZXQoZGF0YTogSURhdGFDb250ZXh0PGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLnRvdGFsJCA9IGRhdGEudG90YWwucGlwZShcbiAgICAgIG1hcCh0b3RhbCA9PiB0b3RhbCA/IHRvdGFsICsgJycgOiAn4oieJylcbiAgICApO1xuXG4gICAgdGhpcy5zZXR1cFNlbGVjdGlvbkxpZmVDeWNsZShkYXRhKTtcblxuICAgIC8vIHRoaXMuc2VsZWN0aW9uTW9kZWwuY2xlYXIoKTsgLy8gVE9ETyBTdXBwb3J0IGNoYW5nZWFibGUgZGF0YS1jb250ZXh0IGZvciBzdGF0aWMgYXJyYXkgdXNlIGNhc2VcblxuICAgIGlmICh0aGlzLmlzQ29udGludWFibGUpIHtcbiAgICAgIHRoaXMuY2FuTG9hZE1vcmUkID0gY29tYmluZUxhdGVzdChbZGF0YS5sb2FkaW5nLCB0aGlzLmRhdGFDb250aW51YWJsZS5oYXNNb3JlRGF0YV0pLnBpcGUoXG4gICAgICAgIG1hcCgoW2xvYWRpbmcsIGhhc01vcmVEYXRhXSkgPT4gIWxvYWRpbmcgJiYgaGFzTW9yZURhdGEpXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhbkxvYWRNb3JlJCA9IG9mKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc3BsYXllZENvbHVtbnMoZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10pIHtcbiAgICB0aGlzLnRhYmxlTW9kZWwuZGlzcGxheWVkQ29sdW1ucyA9IGRpc3BsYXllZENvbHVtbnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc3BsYXllZENvbHVtbnMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnRhYmxlTW9kZWwuZGlzcGxheWVkQ29sdW1ucztcbiAgfVxuXG4gIC8qKiBJbmRpY2F0ZXMgaWYgc2VsZWN0aW9uIGNvbHVtbiBpcyBzaG93bi4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzZWxlY3Rpb25WaXNpYmxlKHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnRhYmxlTW9kZWwuc2VsZWN0aW9uVmlzaWJsZSA9IHZpc2libGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNlbGVjdGlvblZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGFibGVNb2RlbC5zZWxlY3Rpb25WaXNpYmxlO1xuICB9XG5cbiAgLypcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgYWN0aXZlSXRlbSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmVsZGVyVGFibGVBY3RpdmF0aW9uLmFjdGl2ZUl0ZW0kO1xuICB9Ki9cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgcmVxdWVzdE1vcmVEYXRhWm9uZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMuZGF0YUNvbnRpbnVhYmxlLmhhc01vcmVEYXRhU25hcHNob3QpIHtcblxuICAgICAgaWYgKHRoaXMuZGF0YUNvbnRpbnVhYmxlLnNuYXBzaG90LmlzTG9hZGluZykge1xuICAgICAgICB0aGlzLmxvYWROZXh0UXVldWVkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZGF0YUNvbnRpbnVhYmxlLmxvYWRNb3JlKClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgIGxvYWRlZCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubG9hZE5leHRRdWV1ZWQpIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMubG9hZE5leHRRdWV1ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgIHRoaXMucmVxdWVzdE1vcmVEYXRhWm9uZWQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9hZE5leHRRdWV1ZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRyYWNrQnlGbigpOiBUcmFja0J5RnVuY3Rpb248YW55PiB7XG4gICAgcmV0dXJuIChpbmRleDogbnVtYmVyLCBlbnRpdHk6IGFueSkgPT4gdGhpcy5nZXRJZChlbnRpdHkpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBzZXR1cFNlbGVjdGlvbkxpZmVDeWNsZShkYXRhOiBJRGF0YUNvbnRleHQ8YW55Pik6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTGlmZUN5Y2xlKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbkxpZmVDeWNsZS51bnN1YnNjcmliZSgpOyAvLyBDbGVhbiB1cCBwcmV2aW91cyBzdWJcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGlvbkxpZmVDeWNsZSA9IGRhdGEuZGF0YS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXG4gICAgKS5zdWJzY3JpYmUobmV3RGF0YSA9PiB7XG5cbiAgICAgIGlmICh0aGlzLmtlZXBTZWxlY3Rpb24pIHtcbiAgICAgICAgLy8gSWYga2VlcCBzZWxlY3Rpb24gZW5hYmxlZFxuICAgICAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlbC5oYXNWYWx1ZSkge1xuXG4gICAgICAgICAgLy8gQ2hlY2sgdGhhdCBhbGwgc2VsZWN0ZWQgdmFsdWVzIGFyZSBzdGlsbCBwcmVzZW50IG9yIHJlbW92ZSB0aGVtXG4gICAgICAgICAgY29uc3QgZXhpc3RpbmdJZHMgPSBuZXcgU2V0PGFueT4oXG4gICAgICAgICAgICBuZXdEYXRhXG4gICAgICAgICAgICAgIC5tYXAoZCA9PiB0aGlzLmdldElkKGQpKVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBjb25zdCBub0xvbmdlckF2YWlsYWJsZUlkcyA9IHRoaXMuc2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uU25hcHNob3RcbiAgICAgICAgICAgIC5tYXAoc2VsZWN0ZWQgPT4gdGhpcy5nZXRJZChzZWxlY3RlZCkpXG4gICAgICAgICAgICAuZmlsdGVyKHNlbGVjdGVkSWQgPT4gIWV4aXN0aW5nSWRzLmhhcyhzZWxlY3RlZElkKSk7XG5cbiAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmRlc2VsZWN0SWRzKG5vTG9uZ2VyQXZhaWxhYmxlSWRzKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5jbGVhcigpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cblxufVxuIiwiPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbCBlbGRlci10YWJsZVwiXG4gICAgIFtjbGFzcy5lbGRlci1tYXQtdGFibGUtY29udGFpbmVyXT1cIiFlbWJlZGRlZFwiXG4gICAgIFtjbGFzcy5tYXQtZWxldmF0aW9uLXo1XT1cImZsb2F0XCJcbiAgICAgW2NsYXNzLmVsZGVyLW1hdC10YWJsZS1mbGF0XT1cIiFlbWJlZGRlZCAmJiAhZmxvYXRcIlxuPlxuXG4gIDwhLS0gVG9vbGJhciBSb3dzIC0tPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCB0b29sYmFyUm93VGVtcGxhdGUgb2YgdG9vbGJhclJvd1RlbXBsYXRlcyQgfCBhc3luY1wiPlxuICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cInRvb2xiYXJSb3dUZW1wbGF0ZTsgY29udGV4dDogeyRpbXBsaWNpdDogdGhpc31cIj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8IS0tIFNjcm9sbGFibGUgVGFibGUgLS0+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIHNjcm9sbGFibGUgZWxkZXItdGFibGUtc2Nyb2xsXCJcbiAgICAgICBpbmZpbml0ZVNjcm9sbFxuICAgICAgIFtldmVudFRocm90dGxlXT1cIjE1MFwiXG4gICAgICAgW29mZnNldEZhY3Rvcl09XCIyXCJcbiAgICAgICBbaWdub3JlU2Nyb2xsRXZlbnRdPVwiIWlzQ29udGludWFibGUgfHwgIShjYW5Mb2FkTW9yZSQgfCBhc3luYylcIlxuICAgICAgIChjbG9zZVRvRW5kKT1cInJlcXVlc3RNb3JlRGF0YVpvbmVkKCRldmVudClcIlxuICA+XG4gICAgPHRhYmxlXG4gICAgICBtYXQtdGFibGVcbiAgICAgIGNsYXNzPVwiZWxkZXItbWF0LWlubmVyLXRhYmxlXCJcbiAgICAgIFt0cmFja0J5XT1cInRyYWNrQnlGblwiXG4gICAgICBbZGF0YVNvdXJjZV09XCIkYW55KGRhdGFDb250ZXh0JCB8IGFzeW5jKVwiXG4gICAgICBbZWxkZXJEYXRhQ29udGV4dFNlbGVjdGlvbl09XCJkYXRhQ29udGV4dCQgfCBhc3luY1wiICNkYXRhU2VsZWN0aW9uPVwiZWxkZXJEYXRhQ29udGV4dFNlbGVjdGlvblwiXG4gICAgICBbZWxkZXJEYXRhQ29udGV4dFNlbGVjdGlvbk1vZGVsXT1cInNlbGVjdGlvbk1vZGVsXCJcbiAgICA+XG5cbiAgICAgIDwhLS0gc2VsZWN0aW9uIENvbHVtbiAtLT5cbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwic2VsZWN0XCI+XG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XG4gICAgICAgICAgPGVsZGVyLXNlbGVjdGlvbi1tYXN0ZXItY2hlY2tib3g+PC9lbGRlci1zZWxlY3Rpb24tbWFzdGVyLWNoZWNrYm94PlxuICAgICAgICA8L3RoPlxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZW50aXR5XCI+XG4gICAgICAgICAgPG1hdC1jaGVja2JveCAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiJGV2ZW50ID8gc2VsZWN0aW9uTW9kZWwudG9nZ2xlKGVudGl0eSkgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvbk1vZGVsLm9ic2VydmVTZWxlY3Rpb24oZW50aXR5KSB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2VsZWN0aW9uTW9kZWwuaXNTZWxlY3RhYmxlKGVudGl0eSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlbGRlci10YWJsZS1jaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZWxkZXItdGFibGUtY2hlY2tib3gtdmlzaWJsZV09XCIoZGF0YVNlbGVjdGlvbi5zZWxlY3Rpb25TdGF0ZSQgfCBhc3luYykuYW55U2VsZWN0ZWRcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIG1hdC1mb290ZXItY2VsbCAqbWF0Rm9vdGVyQ2VsbERlZj48L3RkPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIodGFibGVNb2RlbC5kaXNwbGF5ZWRDb2x1bW5zSW5uZXIkIHwgYXN5bmMpIGFzIGRpc3BsYXllZENvbHVtbnNJbm5lclwiPlxuICAgICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXllZENvbHVtbnNJbm5lcjsgc3RpY2t5OiB0cnVlXCI+PC90cj5cbiAgICAgICAgPHRyIG1hdC1yb3cgY2xhc3M9XCJlbGRlci10YWJsZS1yb3dcIlxuICAgICAgICAgICAgKm1hdFJvd0RlZj1cImxldCBlbnRpdHk7IGNvbHVtbnM6IGRpc3BsYXllZENvbHVtbnNJbm5lcjtcIlxuICAgICAgICAgICAgW2VsZGVyVGFibGVSb3ddPVwiZW50aXR5XCJcbiAgICAgICAgICAgIFtjbGFzcy5kZW5zZV09XCJkZW5zZVwiXG4gICAgICAgICAgICBbY2xhc3MuZWxkZXItcm93LWhpZGRlbl09XCJoaWRkZW5GaWVsZCAmJiBlbnRpdHlbaGlkZGVuRmllbGRdXCJcbiAgICAgICAgICAgIFtjbGFzcy5lbGRlci1yb3ctcmVtb3ZpbmddPVwicmVtb3ZpbmdGaWVsZCAmJiBlbnRpdHlbcmVtb3ZpbmdGaWVsZF1cIlxuICAgICAgICAgICAgW2NsYXNzLmVsZGVyLXRhYmxlLXJvdy1zZWxlY3RlZF09XCJpbnRlcmFjdGlvbk1vZGUgPT09ICdzZWxlY3Rpb24nICYmIHNlbGVjdGlvbk1vZGVsLm9ic2VydmVTZWxlY3Rpb24oZW50aXR5KSB8IGFzeW5jXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhlbnRpdHkpXCJcbiAgICAgICAgICAgIChkYmxjbGljayk9XCJvbkl0ZW1Eb3VibGVDbGljayhlbnRpdHkpXCJcbiAgICAgICAgPlxuICAgICAgICA8L3RyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0Zvb3RlclwiPlxuICAgICAgICAgIDx0ciBtYXQtZm9vdGVyLXJvdyAqbWF0Rm9vdGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc0lubmVyOyBzdGlja3k6IHRydWVcIj48L3RyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGFibGU+XG4gIDwvZGl2PlxuXG4gIDxlbGRlci1kYXRhLWNvbnRleHQtc3RhdGUtaW5kaWNhdG9yIGNsYXNzPVwiZmxleC1ub25lXCIgW2RhdGFDb250ZXh0XT1cImRhdGFDb250ZXh0XCI+XG4gIDwvZWxkZXItZGF0YS1jb250ZXh0LXN0YXRlLWluZGljYXRvcj5cblxuICA8bWF0LXByb2dyZXNzLWJhciBjbGFzcz1cImZsZXgtbm9uZVwiXG4gICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIihkYXRhQ29udGV4dD8ubG9hZGluZyB8IGFzeW5jKSA/ICdpbmRldGVybWluYXRlJyA6ICdkZXRlcm1pbmF0ZSdcIlxuICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiKChkYXRhQ29udGV4dD8uc3RhdHVzIHwgYXN5bmMpPy5oYXNFcnJvcikgPyAnd2FybicgOiAncHJpbWFyeSdcIj5cbiAgPC9tYXQtcHJvZ3Jlc3MtYmFyPlxuXG4gIDwhLS0gT3B0aW9uYWwgUGFnaW5hdG9yIFRvb2xiYXIgLS0+XG4gIDxtYXQtcGFnaW5hdG9yICNtYXRQYWdpbmF0b3IgKm5nSWY9XCJpc0FjdGl2ZVBhZ2VkICYmIChkYXRhQWN0aXZlUGFnZWQucGFnZSB8IGFzeW5jKSBhcyBwYWdlXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4LW5vbmVcIlxuICAgICAgICAgICAgICAgICBbbGVuZ3RoXT1cImRhdGFDb250ZXh0Py50b3RhbCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgW3BhZ2VJbmRleF09XCJwYWdlPy5pbmRleFwiXG4gICAgICAgICAgICAgICAgIFtwYWdlU2l6ZV09XCJwYWdlPy5zaXplXCJcbiAgICAgICAgICAgICAgICAgW3BhZ2VTaXplT3B0aW9uc109XCJwYWdlU2l6ZU9wdGlvbnNcIj5cbiAgPC9tYXQtcGFnaW5hdG9yPlxuXG4gIDwhLS0gT3B0aW9uYWwgQ29udGludWF0aW9uIEZvb3RlciAtLT5cbiAgPGRpdiAqbmdJZj1cImlzQ29udGludWFibGVcIiBjbGFzcz1cImxheW91dC1yb3cgZmxleC1ub25lIHBsYWNlLWVuZC1jZW50ZXIgZ2FwLW1kIGVsZGVyLXRhYmxlLWZvb3RlclwiPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvbiBub3NlbGVjdFwiIHN0eWxlPVwiY29sb3I6IGdyYXlcIj5cbiAgICAgIHt7KGRhdGFDb250ZXh0Py5kYXRhIHwgYXN5bmMpPy5sZW5ndGh9fSAvIHt7dG90YWwkIHwgYXN5bmN9fVxuICAgIDwvc3Bhbj5cblxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEoY2FuTG9hZE1vcmUkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgIChjbGljayk9XCJkYXRhQ29udGludWFibGUubG9hZE1vcmUoKVwiPlxuICAgICAgPG1hdC1pY29uPmtleWJvYXJkX2Fycm93X2Rvd248L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuPC9kaXY+XG4iXX0=
@@ -15,7 +15,6 @@ import { MatSortModule } from '@angular/material/sort';
15
15
  import { MatTableModule } from '@angular/material/table';
16
16
  import { MatTooltipModule } from '@angular/material/tooltip';
17
17
  import { RouterModule } from '@angular/router';
18
- import { FlexLayoutModule } from '@angular/flex-layout';
19
18
  import { FormsModule } from '@angular/forms';
20
19
  import { CdkTableModule } from '@angular/cdk/table';
21
20
  import { ElderInfiniteScrollModule } from '../../infinitescroll/elder-infinite-scroll.module';
@@ -63,7 +62,7 @@ ElderTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
63
62
  CdkTableModule, MatTableModule, MatPaginatorModule, MatSortModule,
64
63
  MatDialogModule, MatTooltipModule, MatMenuModule,
65
64
  // translations
66
- TranslateModule, FlexLayoutModule,
65
+ TranslateModule,
67
66
  ElderDataCommonModule,
68
67
  ElderInfiniteScrollModule,
69
68
  ElderFormsDirectivesModule], exports: [ElderTableComponent,
@@ -88,7 +87,7 @@ ElderTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versio
88
87
  CdkTableModule, MatTableModule, MatPaginatorModule, MatSortModule,
89
88
  MatDialogModule, MatTooltipModule, MatMenuModule,
90
89
  // translations
91
- TranslateModule, FlexLayoutModule,
90
+ TranslateModule,
92
91
  ElderDataCommonModule,
93
92
  ElderInfiniteScrollModule,
94
93
  ElderFormsDirectivesModule, ElderDataCommonModule] });
@@ -105,7 +104,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
105
104
  CdkTableModule, MatTableModule, MatPaginatorModule, MatSortModule,
106
105
  MatDialogModule, MatTooltipModule, MatMenuModule,
107
106
  // translations
108
- TranslateModule, FlexLayoutModule,
107
+ TranslateModule,
109
108
  ElderDataCommonModule,
110
109
  ElderInfiniteScrollModule,
111
110
  ElderFormsDirectivesModule,
@@ -139,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
139
138
  ]
140
139
  }]
141
140
  }] });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvdGFibGUvZWxkZXItdGFibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFF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Z01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWxkZXJUYWJsZUNvbXBvbmVudH0gZnJvbSAnLi9lbGRlci10YWJsZS9lbGRlci10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0RGl2aWRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpdmlkZXInO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9ySW50bCwgTWF0UGFnaW5hdG9yTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IE1hdFNvcnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHtSb3V0ZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0ZsZXhMYXlvdXRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Q2RrVGFibGVNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQge0VsZGVySW5maW5pdGVTY3JvbGxNb2R1bGV9IGZyb20gJy4uLy4uL2luZmluaXRlc2Nyb2xsL2VsZGVyLWluZmluaXRlLXNjcm9sbC5tb2R1bGUnO1xuaW1wb3J0IHtFbGRlclBhZ2luYXRvckludGx9IGZyb20gJy4vZWxkZXItcGFnaW5hdG9yLWludGwnO1xuaW1wb3J0IHtFbGRlckRhdGFDb21tb25Nb2R1bGV9IGZyb20gJy4uL2NvbW1vbi9lbGRlci1kYXRhLWNvbW1vbi5tb2R1bGUnO1xuaW1wb3J0IHtFbGRlckZvcm1zRGlyZWN0aXZlc01vZHVsZX0gZnJvbSAnLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1mb3Jtcy1kaXJlY3RpdmVzLm1vZHVsZSc7XG5pbXBvcnQge0VsZGVyVGFibGVTb3J0RGlyZWN0aXZlfSBmcm9tICcuL2VsZGVyLXRhYmxlLXNvcnQuZGlyZWN0aXZlJztcbmltcG9ydCB7RWxkZXJOdW1iZXJDZWxsRGlyZWN0aXZlfSBmcm9tICcuL2VsZGVyLW51bWJlci1jZWxsLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0VsZGVyVGFibGVBY3RpdmF0aW9uRGlyZWN0aXZlfSBmcm9tICcuL2FjdGl2YXRpb24vZWxkZXItdGFibGUtYWN0aXZhdGlvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZSB9IGZyb20gJy4vZWxkZXItdGFibGUtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFbGRlclRhYmxlRXh0ZW5zaW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9lbGRlci10YWJsZS1leHRlbnNpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IEVsZGVyVGFibGVDb2x1bW5EaXJlY3RpdmUgfSBmcm9tICcuL2VsZGVyLXRhYmxlLWNvbHVtbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWxkZXJUYWJsZVJvb3REaXJlY3RpdmUgfSBmcm9tICcuL2VsZGVyLXRhYmxlLXJvb3QuZGlyZWN0aXZlJztcbmltcG9ydCB7RWxkZXJUYWJsZVRvb2xiYXJEaXJlY3RpdmV9IGZyb20gJy4vZWxkZXItdGFibGUvZWxkZXItdGFibGUtdG9vbGJhci5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2VsZGVyLW51bWJlci1jZWxsLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2VsZGVyLXRhYmxlL2VsZGVyLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VsZGVyLXRhYmxlLXNvcnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZWxkZXItdGFibGUvZWxkZXItdGFibGUtdG9vbGJhci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3RpdmF0aW9uL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aXZhdGlvbi9lbGRlci10YWJsZS1hY3RpdmF0aW9uLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGRlci10YWJsZS1leHRlbnNpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZWxkZXItdGFibGUtcm9vdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9lbGRlci10YWJsZS1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2VsZGVyLXRhYmxlLW1vZGVsLXByb3ZpZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZWxkZXItdGFibGUtbW9kZWwtY2RrLXRhYmxlLWJpbmRpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC1xdWVyeS1ncm91cCc7XG5cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgUm91dGVyTW9kdWxlLCBGb3Jtc01vZHVsZSxcblxuICAgIC8vIE1hdGVyaWFsXG4gICAgTWF0RGl2aWRlck1vZHVsZSxcbiAgICBNYXRDaGVja2JveE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdEJhZGdlTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzQmFyTW9kdWxlLFxuICAgIENka1RhYmxlTW9kdWxlLCBNYXRUYWJsZU1vZHVsZSwgTWF0UGFnaW5hdG9yTW9kdWxlLCBNYXRTb3J0TW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSwgTWF0VG9vbHRpcE1vZHVsZSwgTWF0TWVudU1vZHVsZSxcblxuICAgIC8vIHRyYW5zbGF0aW9uc1xuICAgIFRyYW5zbGF0ZU1vZHVsZSwgRmxleExheW91dE1vZHVsZSxcblxuICAgIEVsZGVyRGF0YUNvbW1vbk1vZHVsZSxcbiAgICBFbGRlckluZmluaXRlU2Nyb2xsTW9kdWxlLFxuICAgIEVsZGVyRm9ybXNEaXJlY3RpdmVzTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBFbGRlclRhYmxlQ29tcG9uZW50LFxuICAgIEVsZGVyVGFibGVUb29sYmFyRGlyZWN0aXZlLFxuICAgIEVsZGVyVGFibGVTb3J0RGlyZWN0aXZlLFxuICAgIEVsZGVyTnVtYmVyQ2VsbERpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlQWN0aXZhdGlvbkRpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlUm93RGlyZWN0aXZlLFxuICAgIEVsZGVyVGFibGVFeHRlbnNpb25EaXJlY3RpdmUsXG4gICAgRWxkZXJUYWJsZUNvbHVtbkRpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlUm9vdERpcmVjdGl2ZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRWxkZXJUYWJsZUNvbXBvbmVudCxcbiAgICBFbGRlclRhYmxlVG9vbGJhckRpcmVjdGl2ZSxcbiAgICBFbGRlckRhdGFDb21tb25Nb2R1bGUsXG4gICAgRWxkZXJUYWJsZVNvcnREaXJlY3RpdmUsXG4gICAgRWxkZXJOdW1iZXJDZWxsRGlyZWN0aXZlLFxuICAgIEVsZGVyVGFibGVBY3RpdmF0aW9uRGlyZWN0aXZlLFxuICAgIEVsZGVyVGFibGVFeHRlbnNpb25EaXJlY3RpdmUsXG4gICAgRWxkZXJUYWJsZVJvb3REaXJlY3RpdmVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTWF0UGFnaW5hdG9ySW50bCwgZGVwczogW1RyYW5zbGF0ZVNlcnZpY2VdLFxuICAgICAgdXNlQ2xhc3M6IEVsZGVyUGFnaW5hdG9ySW50bFxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclRhYmxlTW9kdWxlIHsgfVxuIl19
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvdGFibGUvZWxkZXItdGFibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFF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RWhELGVBQWU7UUFDZixlQUFlO1FBRWYscUJBQXFCO1FBQ3JCLHlCQUF5QjtRQUN6QiwwQkFBMEIsRUFnQjFCLHFCQUFxQjs0RkFjWixnQkFBZ0I7a0JBL0M1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZLEVBQUUsWUFBWSxFQUFFLFdBQVc7d0JBRXZDLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYzt3QkFDOUMsb0JBQW9CO3dCQUNwQixjQUFjLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLGFBQWE7d0JBQ2pFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhO3dCQUVoRCxlQUFlO3dCQUNmLGVBQWU7d0JBRWYscUJBQXFCO3dCQUNyQix5QkFBeUI7d0JBQ3pCLDBCQUEwQjtxQkFDM0I7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLG1CQUFtQjt3QkFDbkIsMEJBQTBCO3dCQUMxQix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsNkJBQTZCO3dCQUM3QixzQkFBc0I7d0JBQ3RCLDRCQUE0Qjt3QkFDNUIseUJBQXlCO3dCQUN6Qix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxtQkFBbUI7d0JBQ25CLDBCQUEwQjt3QkFDMUIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsNkJBQTZCO3dCQUM3Qiw0QkFBNEI7d0JBQzVCLHVCQUF1QjtxQkFDeEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzs0QkFDbkQsUUFBUSxFQUFFLGtCQUFrQjt5QkFDN0I7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWxkZXJUYWJsZUNvbXBvbmVudH0gZnJvbSAnLi9lbGRlci10YWJsZS9lbGRlci10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0RGl2aWRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpdmlkZXInO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9ySW50bCwgTWF0UGFnaW5hdG9yTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IE1hdFNvcnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHtSb3V0ZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Nka1RhYmxlTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHtFbGRlckluZmluaXRlU2Nyb2xsTW9kdWxlfSBmcm9tICcuLi8uLi9pbmZpbml0ZXNjcm9sbC9lbGRlci1pbmZpbml0ZS1zY3JvbGwubW9kdWxlJztcbmltcG9ydCB7RWxkZXJQYWdpbmF0b3JJbnRsfSBmcm9tICcuL2VsZGVyLXBhZ2luYXRvci1pbnRsJztcbmltcG9ydCB7RWxkZXJEYXRhQ29tbW9uTW9kdWxlfSBmcm9tICcuLi9jb21tb24vZWxkZXItZGF0YS1jb21tb24ubW9kdWxlJztcbmltcG9ydCB7RWxkZXJGb3Jtc0RpcmVjdGl2ZXNNb2R1bGV9IGZyb20gJy4uLy4uL2Zvcm1zL2RpcmVjdGl2ZXMvZWxkZXItZm9ybXMtZGlyZWN0aXZlcy5tb2R1bGUnO1xuaW1wb3J0IHtFbGRlclRhYmxlU29ydERpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci10YWJsZS1zb3J0LmRpcmVjdGl2ZSc7XG5pbXBvcnQge0VsZGVyTnVtYmVyQ2VsbERpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1udW1iZXItY2VsbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlclRhYmxlQWN0aXZhdGlvbkRpcmVjdGl2ZX0gZnJvbSAnLi9hY3RpdmF0aW9uL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IEVsZGVyVGFibGVSb3dEaXJlY3RpdmUgfSBmcm9tICcuL2VsZGVyLXRhYmxlLXJvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWxkZXJUYWJsZUV4dGVuc2lvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZWxkZXItdGFibGUtZXh0ZW5zaW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFbGRlclRhYmxlQ29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi9lbGRlci10YWJsZS1jb2x1bW4uZGlyZWN0aXZlJztcbmltcG9ydCB7IEVsZGVyVGFibGVSb290RGlyZWN0aXZlIH0gZnJvbSAnLi9lbGRlci10YWJsZS1yb290LmRpcmVjdGl2ZSc7XG5pbXBvcnQge0VsZGVyVGFibGVUb29sYmFyRGlyZWN0aXZlfSBmcm9tICcuL2VsZGVyLXRhYmxlL2VsZGVyLXRhYmxlLXRvb2xiYXIuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9lbGRlci1udW1iZXItY2VsbC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGRlci10YWJsZS9lbGRlci10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGRlci10YWJsZS1zb3J0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2VsZGVyLXRhYmxlL2VsZGVyLXRhYmxlLXRvb2xiYXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aXZhdGlvbi9lbGRlci10YWJsZS1hY3RpdmF0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGl2YXRpb24vZWxkZXItdGFibGUtYWN0aXZhdGlvbi1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vZWxkZXItdGFibGUtZXh0ZW5zaW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2VsZGVyLXRhYmxlLXJvb3QuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZWxkZXItdGFibGUtbW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC1wcm92aWRlcic7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2VsZGVyLXRhYmxlLW1vZGVsLWNkay10YWJsZS1iaW5kaW5nJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZWxkZXItdGFibGUtbW9kZWwtcXVlcnktZ3JvdXAnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsIFJvdXRlck1vZHVsZSwgRm9ybXNNb2R1bGUsXG5cbiAgICAvLyBNYXRlcmlhbFxuICAgIE1hdERpdmlkZXJNb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRCYWRnZU1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBDZGtUYWJsZU1vZHVsZSwgTWF0VGFibGVNb2R1bGUsIE1hdFBhZ2luYXRvck1vZHVsZSwgTWF0U29ydE1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsIE1hdFRvb2x0aXBNb2R1bGUsIE1hdE1lbnVNb2R1bGUsXG5cbiAgICAvLyB0cmFuc2xhdGlvbnNcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG5cbiAgICBFbGRlckRhdGFDb21tb25Nb2R1bGUsXG4gICAgRWxkZXJJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICBFbGRlckZvcm1zRGlyZWN0aXZlc01vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRWxkZXJUYWJsZUNvbXBvbmVudCxcbiAgICBFbGRlclRhYmxlVG9vbGJhckRpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlU29ydERpcmVjdGl2ZSxcbiAgICBFbGRlck51bWJlckNlbGxEaXJlY3RpdmUsXG4gICAgRWxkZXJUYWJsZUFjdGl2YXRpb25EaXJlY3RpdmUsXG4gICAgRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlRXh0ZW5zaW9uRGlyZWN0aXZlLFxuICAgIEVsZGVyVGFibGVDb2x1bW5EaXJlY3RpdmUsXG4gICAgRWxkZXJUYWJsZVJvb3REaXJlY3RpdmVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEVsZGVyVGFibGVDb21wb25lbnQsXG4gICAgRWxkZXJUYWJsZVRvb2xiYXJEaXJlY3RpdmUsXG4gICAgRWxkZXJEYXRhQ29tbW9uTW9kdWxlLFxuICAgIEVsZGVyVGFibGVTb3J0RGlyZWN0aXZlLFxuICAgIEVsZGVyTnVtYmVyQ2VsbERpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlQWN0aXZhdGlvbkRpcmVjdGl2ZSxcbiAgICBFbGRlclRhYmxlRXh0ZW5zaW9uRGlyZWN0aXZlLFxuICAgIEVsZGVyVGFibGVSb290RGlyZWN0aXZlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1hdFBhZ2luYXRvckludGwsIGRlcHM6IFtUcmFuc2xhdGVTZXJ2aWNlXSxcbiAgICAgIHVzZUNsYXNzOiBFbGRlclBhZ2luYXRvckludGxcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJUYWJsZU1vZHVsZSB7IH1cbiJdfQ==
@@ -2,10 +2,12 @@ import { Component } from '@angular/core';
2
2
  import { ElderDialogConfig } from '../elder-dialog-config';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/material/dialog";
5
- import * as i2 from "@angular/material/button";
6
- import * as i3 from "@angular/cdk/a11y";
7
- import * as i4 from "@angular/flex-layout/flex";
8
- import * as i5 from "@ngx-translate/core";
5
+ import * as i2 from "@angular/material/icon";
6
+ import * as i3 from "@angular/material/button";
7
+ import * as i4 from "@angular/material/toolbar";
8
+ import * as i5 from "@angular/cdk/a11y";
9
+ import * as i6 from "@ngx-translate/core";
10
+ import * as i7 from "../../theme/elder-theme.directive";
9
11
  export class ConfirmDialogConfig extends ElderDialogConfig {
10
12
  }
11
13
  export class ElderConfirmDialogComponent {
@@ -15,9 +17,9 @@ export class ElderConfirmDialogComponent {
15
17
  }
16
18
  }
17
19
  ElderConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderConfirmDialogComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
18
- ElderConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderConfirmDialogComponent, selector: "elder-confirm-dialog", ngImport: i0, template: "\n<h2 matDialogTitle translate>{{ title }}</h2>\n\n\n<mat-dialog-content>\n <p translate>{{ message }}</p>\n</mat-dialog-content>\n\n\n<mat-dialog-actions fxLayoutAlign=\"end center\" cdkTrapFocus>\n\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n\n</mat-dialog-actions>\n\n", styles: [""], dependencies: [{ kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
20
+ ElderConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderConfirmDialogComponent, selector: "elder-confirm-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <div class=\"layout-col flex p-md\">\n <div class=\"flex\">\n <p translate>{{ message }}</p>\n </div>\n\n <div class=\"layout-row place-end-center flex-none\" cdkTrapFocus>\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n </div>\n </div>\n</div>\n\n\n\n\n\n\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i4.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "directive", type: i5.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i7.ElderThemeDirective, selector: "[elderTheme]" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
19
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderConfirmDialogComponent, decorators: [{
20
22
  type: Component,
21
- args: [{ selector: 'elder-confirm-dialog', template: "\n<h2 matDialogTitle translate>{{ title }}</h2>\n\n\n<mat-dialog-content>\n <p translate>{{ message }}</p>\n</mat-dialog-content>\n\n\n<mat-dialog-actions fxLayoutAlign=\"end center\" cdkTrapFocus>\n\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n\n</mat-dialog-actions>\n\n" }]
23
+ args: [{ selector: 'elder-confirm-dialog', template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <div class=\"layout-col flex p-md\">\n <div class=\"flex\">\n <p translate>{{ message }}</p>\n </div>\n\n <div class=\"layout-row place-end-center flex-none\" cdkTrapFocus>\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n </div>\n </div>\n</div>\n\n\n\n\n\n\n\n\n" }]
22
24
  }], ctorParameters: function () { return [{ type: i1.MatDialogRef }]; } });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItY29uZmlybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kaWFsb2dzL2NvbmZpcm0tZGlhbG9nL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9ncy9jb25maXJtLWRpYWxvZy9lbGRlci1jb25maXJtLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7O0FBRXpELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxpQkFBaUI7Q0FZekQ7QUFPRCxNQUFNLE9BQU8sMkJBQTJCO0lBTXRDLFlBQ1MsU0FBb0Q7UUFBcEQsY0FBUyxHQUFULFNBQVMsQ0FBMkM7UUFIdEQsVUFBSyxHQUFHLEtBQUssQ0FBQztJQUlsQixDQUFDOzt5SEFSTywyQkFBMkI7NkdBQTNCLDJCQUEyQiw0REN2QnhDLHdrQkF1QkE7NEZEQWEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TWF0RGlhbG9nUmVmfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFbGRlckRpYWxvZ0NvbmZpZ30gZnJvbSAnLi4vZWxkZXItZGlhbG9nLWNvbmZpZyc7XG5cbmV4cG9ydCBjbGFzcyBDb25maXJtRGlhbG9nQ29uZmlnIGV4dGVuZHMgRWxkZXJEaWFsb2dDb25maWcge1xuXG4gIC8qKlxuICAgKiBTdHJpbmcgYXBwZWFyaW5nIGFzIG1lc3NhZ2UgaW4gdGhlIGRpYWxvZy5cbiAgICovXG4gIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIGRpYWxvZyB3aWxsIHNob3cgJ3llcycgYW5kICdubycgaW5zdGVhZCBvZiAnb2snIGFuZCAnY2FuY2VsJyBhcyBvcHRpb25zLlxuICAgKi9cbiAgcHVibGljIHllc05vPzogYm9vbGVhbjtcblxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1jb25maXJtLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1jb25maXJtLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJDb25maXJtRGlhbG9nQ29tcG9uZW50IHtcblxuICBwdWJsaWMgdGl0bGU6IHN0cmluZztcbiAgcHVibGljIG1lc3NhZ2U6IHN0cmluZztcbiAgcHVibGljIHllc05vID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEVsZGVyQ29uZmlybURpYWxvZ0NvbXBvbmVudD5cbiAgKSB7fVxuXG59XG4iLCJcbjxoMiBtYXREaWFsb2dUaXRsZSB0cmFuc2xhdGU+e3sgdGl0bGUgfX08L2gyPlxuXG5cbjxtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gIDxwIHRyYW5zbGF0ZT57eyBtZXNzYWdlIH19PC9wPlxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG5cblxuPG1hdC1kaWFsb2ctYWN0aW9ucyBmeExheW91dEFsaWduPVwiZW5kIGNlbnRlclwiIGNka1RyYXBGb2N1cz5cblxuICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtYnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZShmYWxzZSlcIj5cbiAgICB7eyAoeWVzTm8gPyBcImFjdGlvbnMubm9cIiA6IFwiYWN0aW9ucy5jYW5jZWxcIikgfCB0cmFuc2xhdGV9fVxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjZGtGb2N1c0luaXRpYWxcbiAgICAgICAgICAoY2xpY2spPVwiZGlhbG9nUmVmLmNsb3NlKHRydWUpXCI+XG4gICAge3sgKHllc05vID8gXCJhY3Rpb25zLnllc1wiIDogXCJhY3Rpb25zLm9rXCIpIHwgdHJhbnNsYXRlfX1cbiAgPC9idXR0b24+XG5cbjwvbWF0LWRpYWxvZy1hY3Rpb25zPlxuXG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItY29uZmlybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kaWFsb2dzL2NvbmZpcm0tZGlhbG9nL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9ncy9jb25maXJtLWRpYWxvZy9lbGRlci1jb25maXJtLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7QUFFekQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGlCQUFpQjtDQVl6RDtBQU9ELE1BQU0sT0FBTywyQkFBMkI7SUFNdEMsWUFDUyxTQUFvRDtRQUFwRCxjQUFTLEdBQVQsU0FBUyxDQUEyQztRQUh0RCxVQUFLLEdBQUcsS0FBSyxDQUFDO0lBSWxCLENBQUM7O3lIQVJPLDJCQUEyQjs2R0FBM0IsMkJBQTJCLDREQ3ZCeEMsMDVCQWtDQTs0RkRYYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNYXREaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VsZGVyRGlhbG9nQ29uZmlnfSBmcm9tICcuLi9lbGRlci1kaWFsb2ctY29uZmlnJztcblxuZXhwb3J0IGNsYXNzIENvbmZpcm1EaWFsb2dDb25maWcgZXh0ZW5kcyBFbGRlckRpYWxvZ0NvbmZpZyB7XG5cbiAgLyoqXG4gICAqIFN0cmluZyBhcHBlYXJpbmcgYXMgbWVzc2FnZSBpbiB0aGUgZGlhbG9nLlxuICAgKi9cbiAgcHVibGljIG1lc3NhZ2U6IHN0cmluZztcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgZGlhbG9nIHdpbGwgc2hvdyAneWVzJyBhbmQgJ25vJyBpbnN0ZWFkIG9mICdvaycgYW5kICdjYW5jZWwnIGFzIG9wdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgeWVzTm8/OiBib29sZWFuO1xuXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWNvbmZpcm0tZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItY29uZmlybS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckNvbmZpcm1EaWFsb2dDb21wb25lbnQge1xuXG4gIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuICBwdWJsaWMgbWVzc2FnZTogc3RyaW5nO1xuICBwdWJsaWMgeWVzTm8gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RWxkZXJDb25maXJtRGlhbG9nQ29tcG9uZW50PlxuICApIHt9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGxcIj5cbiAgPG1hdC10b29sYmFyIGVsZGVyVGhlbWUgY2xhc3M9XCJmbGV4LW5vbmVcIj5cbiAgICA8bWF0LXRvb2xiYXItcm93IGNsYXNzPVwiZ2FwLXNtXCI+XG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0RGlhbG9nQ2xvc2VdPVwiZmFsc2VcIj48bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPjwvYnV0dG9uPlxuICAgICAgPGgzPnt7IHRpdGxlIHwgdHJhbnNsYXRlIH19PC9oMz5cbiAgICA8L21hdC10b29sYmFyLXJvdz5cbiAgPC9tYXQtdG9vbGJhcj5cblxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmbGV4IHAtbWRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgPHAgdHJhbnNsYXRlPnt7IG1lc3NhZ2UgfX08L3A+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1lbmQtY2VudGVyIGZsZXgtbm9uZVwiIGNka1RyYXBGb2N1cz5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1idXR0b25cbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZShmYWxzZSlcIj5cbiAgICAgICAge3sgKHllc05vID8gXCJhY3Rpb25zLm5vXCIgOiBcImFjdGlvbnMuY2FuY2VsXCIpIHwgdHJhbnNsYXRlfX1cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjZGtGb2N1c0luaXRpYWxcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSh0cnVlKVwiPlxuICAgICAgICB7eyAoeWVzTm8gPyBcImFjdGlvbnMueWVzXCIgOiBcImFjdGlvbnMub2tcIikgfCB0cmFuc2xhdGV9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cblxuXG5cblxuXG5cblxuIl19
@@ -8,12 +8,13 @@ import { MatInputModule } from '@angular/material/input';
8
8
  import { MatToolbarModule } from '@angular/material/toolbar';
9
9
  import { TranslateModule } from '@ngx-translate/core';
10
10
  import { CommonModule } from '@angular/common';
11
- import { FlexLayoutModule } from '@angular/flex-layout';
12
11
  import { FormsModule } from '@angular/forms';
13
12
  import { ElderQuestionDialogComponent } from './question-dialog/elder-question-dialog.component';
14
13
  import { A11yModule } from '@angular/cdk/a11y';
15
14
  import { ElderSelectionDialogComponent } from './selection-dialog/elder-selection-dialog/elder-selection-dialog.component';
16
15
  import { ElderSelectionDialogDirective } from './selection-dialog/elder-selection-dialog.directive';
16
+ import { ElderThemeModule } from '../theme/elder-theme.module';
17
+ import { ElderHeaderModule } from '../headers/elder-header.module';
17
18
  import * as i0 from "@angular/core";
18
19
  export { ElderSelectionDialogComponent } from './selection-dialog/elder-selection-dialog/elder-selection-dialog.component';
19
20
  export { ElderSelectionDialogDirective } from './selection-dialog/elder-selection-dialog.directive';
@@ -49,14 +50,14 @@ ElderDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
49
50
  ElderSelectionDialogDirective], imports: [CommonModule, FormsModule,
50
51
  MatIconModule, MatButtonModule, MatDialogModule, MatToolbarModule, MatInputModule,
51
52
  A11yModule,
52
- FlexLayoutModule, TranslateModule], exports: [ElderConfirmDialogComponent,
53
+ TranslateModule, ElderThemeModule, ElderHeaderModule], exports: [ElderConfirmDialogComponent,
53
54
  ElderQuestionDialogComponent,
54
55
  ElderSelectionDialogComponent,
55
56
  ElderSelectionDialogDirective] });
56
57
  ElderDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDialogModule, imports: [CommonModule, FormsModule,
57
58
  MatIconModule, MatButtonModule, MatDialogModule, MatToolbarModule, MatInputModule,
58
59
  A11yModule,
59
- FlexLayoutModule, TranslateModule] });
60
+ TranslateModule, ElderThemeModule, ElderHeaderModule] });
60
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDialogModule, decorators: [{
61
62
  type: NgModule,
62
63
  args: [{
@@ -64,7 +65,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
64
65
  CommonModule, FormsModule,
65
66
  MatIconModule, MatButtonModule, MatDialogModule, MatToolbarModule, MatInputModule,
66
67
  A11yModule,
67
- FlexLayoutModule, TranslateModule
68
+ TranslateModule, ElderThemeModule, ElderHeaderModule
68
69
  ],
69
70
  declarations: [
70
71
  ElderConfirmDialogComponent,
@@ -80,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
80
81
  ]
81
82
  }]
82
83
  }] });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9ncy9lbGRlci1kaWFsb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxVQUFVLEVBQXVCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFFL0YsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQ3pILE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDOztBQUVsRyxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSw0RUFBNEUsQ0FBQztBQUN6SCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUNsRyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbURBQW1ELENBQUM7QUFFbEU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCOztvSEFBakQsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVTs7QUF1QlgsTUFBTSxPQUFPLGlCQUFpQjtJQUVyQixNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1Qsc0JBQXNCO2dCQUN0QixzQkFBc0I7YUFDdkI7U0FDRixDQUFDO0lBQ0osQ0FBQzs7K0dBVlUsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBWnRCLDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsNkJBQTZCO1FBQzdCLDZCQUE2QixhQVQ3QixZQUFZLEVBQUUsV0FBVztRQUN6QixhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjO1FBQ2pGLFVBQVU7UUFDVixnQkFBZ0IsRUFBRSxlQUFlLGFBU2pDLDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsNkJBQTZCO1FBQzdCLDZCQUE2QjtnSEFHeEIsaUJBQWlCLFlBbEJ0QixZQUFZLEVBQUUsV0FBVztRQUN6QixhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjO1FBQ2pGLFVBQVU7UUFDVixnQkFBZ0IsRUFBRSxlQUFlOzRGQWU1QixpQkFBaUI7a0JBcEI3QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZLEVBQUUsV0FBVzt3QkFDekIsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYzt3QkFDakYsVUFBVTt3QkFDVixnQkFBZ0IsRUFBRSxlQUFlO3FCQUNwQztvQkFDRCxZQUFZLEVBQUU7d0JBQ1YsMkJBQTJCO3dCQUMzQiw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3FCQUNoQztvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsMkJBQTJCO3dCQUMzQiw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3FCQUNoQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZGVyRGlhbG9nU2VydmljZSB9IGZyb20gJy4vZWxkZXItZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHtJbmplY3RhYmxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7RWxkZXJDb25maXJtRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2NvbmZpcm0tZGlhbG9nL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0ZsZXhMYXlvdXRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RWxkZXJRdWVzdGlvbkRpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9xdWVzdGlvbi1kaWFsb2cvZWxkZXItcXVlc3Rpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge0VsZGVyRGlhbG9nQ29uZmlnfSBmcm9tICcuL2VsZGVyLWRpYWxvZy1jb25maWcnO1xuaW1wb3J0IHtBMTF5TW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge0VsZGVyU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL3NlbGVjdGlvbi1kaWFsb2cvZWxkZXItc2VsZWN0aW9uLWRpYWxvZy9lbGRlci1zZWxlY3Rpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge0VsZGVyU2VsZWN0aW9uRGlhbG9nRGlyZWN0aXZlfSBmcm9tICcuL3NlbGVjdGlvbi1kaWFsb2cvZWxkZXItc2VsZWN0aW9uLWRpYWxvZy5kaXJlY3RpdmUnO1xuXG5leHBvcnQge0VsZGVyU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL3NlbGVjdGlvbi1kaWFsb2cvZWxkZXItc2VsZWN0aW9uLWRpYWxvZy9lbGRlci1zZWxlY3Rpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQge0VsZGVyU2VsZWN0aW9uRGlhbG9nRGlyZWN0aXZlfSBmcm9tICcuL3NlbGVjdGlvbi1kaWFsb2cvZWxkZXItc2VsZWN0aW9uLWRpYWxvZy5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGRlckRpYWxvZ1NlcnZpY2V9IGZyb20gJy4vZWxkZXItZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0IHtFbGRlckRpYWxvZ0NvbmZpZ30gZnJvbSAnLi9lbGRlci1kaWFsb2ctY29uZmlnJztcblxuZXhwb3J0ICogZnJvbSAnLi9jb25maXJtLWRpYWxvZy9lbGRlci1jb25maXJtLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9xdWVzdGlvbi1kaWFsb2cvZWxkZXItcXVlc3Rpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgUGxlYXNlIHN3aXRjaCB0byBFbGRlckRpYWxvZ1NlcnZpY2VcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVic0NvbW1vbkRpYWxvZ1NlcnZpY2UgZXh0ZW5kcyBFbGRlckRpYWxvZ1NlcnZpY2UgeyB9XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdERpYWxvZ01vZHVsZSwgTWF0VG9vbGJhck1vZHVsZSwgTWF0SW5wdXRNb2R1bGUsXG4gICAgICAgIEExMXlNb2R1bGUsXG4gICAgICAgIEZsZXhMYXlvdXRNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZVxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEVsZGVyQ29uZmlybURpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgRWxkZXJRdWVzdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgRWxkZXJTZWxlY3Rpb25EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEVsZGVyU2VsZWN0aW9uRGlhbG9nRGlyZWN0aXZlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEVsZGVyQ29uZmlybURpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgRWxkZXJRdWVzdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgRWxkZXJTZWxlY3Rpb25EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEVsZGVyU2VsZWN0aW9uRGlhbG9nRGlyZWN0aXZlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckRpYWxvZ01vZHVsZSB7XG5cbiAgcHVibGljIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RWxkZXJEaWFsb2dNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEVsZGVyRGlhbG9nTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC8vIEVsZGVyRGlhbG9nU2VydmljZSxcbiAgICAgICAgRWJzQ29tbW9uRGlhbG9nU2VydmljZVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9ncy9lbGRlci1kaWFsb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxVQUFVLEVBQXVCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFFL0YsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQ3pILE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzdELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDOztBQUVqRSxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSw0RUFBNEUsQ0FBQztBQUN6SCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUNsRyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbURBQW1ELENBQUM7QUFFbEU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCOztvSEFBakQsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVTs7QUF1QlgsTUFBTSxPQUFPLGlCQUFpQjtJQUVyQixNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1Qsc0JBQXNCO2dCQUN0QixzQkFBc0I7YUFDdkI7U0FDRixDQUFDO0lBQ0osQ0FBQzs7K0dBVlUsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBWnRCLDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsNkJBQTZCO1FBQzdCLDZCQUE2QixhQVRqQyxZQUFZLEVBQUUsV0FBVztRQUN6QixhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjO1FBQ2pGLFVBQVU7UUFDVixlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLGFBU2hELDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsNkJBQTZCO1FBQzdCLDZCQUE2QjtnSEFHeEIsaUJBQWlCLFlBbEIxQixZQUFZLEVBQUUsV0FBVztRQUN6QixhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjO1FBQ2pGLFVBQVU7UUFDVixlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCOzRGQWUzQyxpQkFBaUI7a0JBcEI3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZLEVBQUUsV0FBVzt3QkFDekIsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYzt3QkFDakYsVUFBVTt3QkFDVixlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCO3FCQUNyRDtvQkFDQyxZQUFZLEVBQUU7d0JBQ1YsMkJBQTJCO3dCQUMzQiw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3FCQUNoQztvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsMkJBQTJCO3dCQUMzQiw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3FCQUNoQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZGVyRGlhbG9nU2VydmljZSB9IGZyb20gJy4vZWxkZXItZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHtJbmplY3RhYmxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7RWxkZXJDb25maXJtRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2NvbmZpcm0tZGlhbG9nL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0VsZGVyUXVlc3Rpb25EaWFsb2dDb21wb25lbnR9IGZyb20gJy4vcXVlc3Rpb24tZGlhbG9nL2VsZGVyLXF1ZXN0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtFbGRlckRpYWxvZ0NvbmZpZ30gZnJvbSAnLi9lbGRlci1kaWFsb2ctY29uZmlnJztcbmltcG9ydCB7QTExeU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtFbGRlclNlbGVjdGlvbkRpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9zZWxlY3Rpb24tZGlhbG9nL2VsZGVyLXNlbGVjdGlvbi1kaWFsb2cvZWxkZXItc2VsZWN0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtFbGRlclNlbGVjdGlvbkRpYWxvZ0RpcmVjdGl2ZX0gZnJvbSAnLi9zZWxlY3Rpb24tZGlhbG9nL2VsZGVyLXNlbGVjdGlvbi1kaWFsb2cuZGlyZWN0aXZlJztcbmltcG9ydCB7RWxkZXJUaGVtZU1vZHVsZX0gZnJvbSAnLi4vdGhlbWUvZWxkZXItdGhlbWUubW9kdWxlJztcbmltcG9ydCB7RWxkZXJIZWFkZXJNb2R1bGV9IGZyb20gJy4uL2hlYWRlcnMvZWxkZXItaGVhZGVyLm1vZHVsZSc7XG5cbmV4cG9ydCB7RWxkZXJTZWxlY3Rpb25EaWFsb2dDb21wb25lbnR9IGZyb20gJy4vc2VsZWN0aW9uLWRpYWxvZy9lbGRlci1zZWxlY3Rpb24tZGlhbG9nL2VsZGVyLXNlbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCB7RWxkZXJTZWxlY3Rpb25EaWFsb2dEaXJlY3RpdmV9IGZyb20gJy4vc2VsZWN0aW9uLWRpYWxvZy9lbGRlci1zZWxlY3Rpb24tZGlhbG9nLmRpcmVjdGl2ZSc7XG5leHBvcnQge0VsZGVyRGlhbG9nU2VydmljZX0gZnJvbSAnLi9lbGRlci1kaWFsb2cuc2VydmljZSc7XG5leHBvcnQge0VsZGVyRGlhbG9nQ29uZmlnfSBmcm9tICcuL2VsZGVyLWRpYWxvZy1jb25maWcnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpcm0tZGlhbG9nL2VsZGVyLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXN0aW9uLWRpYWxvZy9lbGRlci1xdWVzdGlvbi1kaWFsb2cuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBQbGVhc2Ugc3dpdGNoIHRvIEVsZGVyRGlhbG9nU2VydmljZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRWJzQ29tbW9uRGlhbG9nU2VydmljZSBleHRlbmRzIEVsZGVyRGlhbG9nU2VydmljZSB7IH1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXREaWFsb2dNb2R1bGUsIE1hdFRvb2xiYXJNb2R1bGUsIE1hdElucHV0TW9kdWxlLFxuICAgIEExMXlNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLCBFbGRlclRoZW1lTW9kdWxlLCBFbGRlckhlYWRlck1vZHVsZVxuICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBFbGRlckNvbmZpcm1EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEVsZGVyUXVlc3Rpb25EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEVsZGVyU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBFbGRlclNlbGVjdGlvbkRpYWxvZ0RpcmVjdGl2ZVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBFbGRlckNvbmZpcm1EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEVsZGVyUXVlc3Rpb25EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEVsZGVyU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBFbGRlclNlbGVjdGlvbkRpYWxvZ0RpcmVjdGl2ZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJEaWFsb2dNb2R1bGUge1xuXG4gIHB1YmxpYyBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEVsZGVyRGlhbG9nTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBFbGRlckRpYWxvZ01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAvLyBFbGRlckRpYWxvZ1NlcnZpY2UsXG4gICAgICAgIEVic0NvbW1vbkRpYWxvZ1NlcnZpY2VcbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=