@codetectonics/mantle 0.0.7 → 1.0.0

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 (128) hide show
  1. package/bundles/codetectonics-mantle.umd.js +7870 -6899
  2. package/bundles/codetectonics-mantle.umd.js.map +1 -1
  3. package/esm2015/lib/components/dashboard/containers/plain-dashboard-container/plain-dashboard-container.component.js +1 -1
  4. package/esm2015/lib/components/dashboard/dashboard-card/dashboard-card.component.js +3 -2
  5. package/esm2015/lib/components/dashboard/widgets/dashboard-info-card/dashboard-info-card.component.js +1 -1
  6. package/esm2015/lib/components/dashboard/widgets/dashboard-table/dashboard-table.component.js +6 -2
  7. package/esm2015/lib/components/dashboard/widgets/dynamic-chart/dynamic-chart.component.js +9 -2
  8. package/esm2015/lib/components/dashboard/widgets/dynamic-widget-display/dynamic-widget-display.component.js +2 -2
  9. package/esm2015/lib/components/details/dialog-details/dialog-details.component.js +11 -4
  10. package/esm2015/lib/components/details/dialog-nested-details/dialog-nested-details.component.js +3 -2
  11. package/esm2015/lib/components/details/fields/dynamic-attribute-display/dynamic-attribute-display.component.js +5 -4
  12. package/esm2015/lib/components/details/fields/icon-attribute-display/icon-attribute-display.component.js +22 -0
  13. package/esm2015/lib/components/details/sections/dynamic-details-section/dynamic-details-section.component.js +7 -3
  14. package/esm2015/lib/components/details/sections/grid-details-section/grid-details-section.component.js +17 -5
  15. package/esm2015/lib/components/details/sections/roster-shift-list-details-section/roster-shift-list-details-section.component.js +21 -0
  16. package/esm2015/lib/components/details/sections/table-details-section/table-details-section.component.js +7 -2
  17. package/esm2015/lib/components/form/dialog-form/dialog-form.component.js +18 -5
  18. package/esm2015/lib/components/form/dialog-nested-form/dialog-nested-form.component.js +13 -3
  19. package/esm2015/lib/components/form/dynamic-form/dynamic-form.component.js +6 -2
  20. package/esm2015/lib/components/form/fields/autocomplete-input/autocomplete-input.component.js +3 -2
  21. package/esm2015/lib/components/form/fields/chip-input/chip-input.component.js +3 -2
  22. package/esm2015/lib/components/form/fields/datepicker/datepicker.component.js +3 -2
  23. package/esm2015/lib/components/form/fields/datetimepicker/datetimepicker.component.js +3 -2
  24. package/esm2015/lib/components/form/fields/dropdown/dropdown.component.js +3 -2
  25. package/esm2015/lib/components/form/fields/dynamic-form-field/dynamic-form-field.component.js +15 -11
  26. package/esm2015/lib/components/form/fields/filepicker/filepicker.component.js +3 -2
  27. package/esm2015/lib/components/form/fields/image-cropper/image-cropper.component.js +3 -2
  28. package/esm2015/lib/components/form/fields/imagepicker/imagepicker.component.js +3 -2
  29. package/esm2015/lib/components/form/fields/markdown-input/markdown-input.component.js +3 -2
  30. package/esm2015/lib/components/form/fields/number-input/number-input.component.js +3 -2
  31. package/esm2015/lib/components/form/fields/password-input/password-input.component.js +3 -2
  32. package/esm2015/lib/components/form/fields/text-input/text-input.component.js +3 -2
  33. package/esm2015/lib/components/form/fields/textarea/textarea.component.js +3 -2
  34. package/esm2015/lib/components/form/fields/time-input/time-input.component.js +80 -0
  35. package/esm2015/lib/components/form/sections/dynamic-form-section/dynamic-form-section.component.js +15 -7
  36. package/esm2015/lib/components/form/sections/grid-form-section/grid-form-section.component.js +11 -2
  37. package/esm2015/lib/components/form/sections/roster-shift-list-form-section/roster-shift-list-form-section.component.js +69 -0
  38. package/esm2015/lib/components/form/sections/table-form-section/table-form-section.component.js +13 -3
  39. package/esm2015/lib/components/navigation/nav-tree/nav-tree.component.js +5 -4
  40. package/esm2015/lib/components/navigation/paginator/custom-paginator-intl.js +33 -0
  41. package/esm2015/lib/components/pages/dashboard-page/dashboard-page.component.js +4 -3
  42. package/esm2015/lib/components/pages/detail-page/detail-page.component.js +25 -19
  43. package/esm2015/lib/components/pages/documents-page/documents-page.component.js +4 -3
  44. package/esm2015/lib/components/pages/export-page/export-page.component.js +4 -3
  45. package/esm2015/lib/components/pages/form-page/form-page.component.js +7 -6
  46. package/esm2015/lib/components/pages/layout-editor-page/layout-editor-page.component.js +12 -8
  47. package/esm2015/lib/components/pages/list-page/list-page-datasource.js +2 -2
  48. package/esm2015/lib/components/pages/list-page/list-page.component.js +22 -11
  49. package/esm2015/lib/components/pages/roster-page/roster-gantt.data.js +50 -0
  50. package/esm2015/lib/components/pages/roster-page/roster-page.component.js +134 -0
  51. package/esm2015/lib/components/pages/tabbed-page/tabbed-page.component.js +3 -2
  52. package/esm2015/lib/components/titles/page-title/page-title.component.js +11 -9
  53. package/esm2015/lib/components/titles/section-title/section-title.component.js +3 -2
  54. package/esm2015/lib/components/widgets/delete-confirmation-dialog/delete-confirmation-dialog.component.js +3 -2
  55. package/esm2015/lib/components/widgets/draggable-table/draggable-table-datasource.js +31 -0
  56. package/esm2015/lib/components/widgets/draggable-table/draggable-table.component.js +79 -0
  57. package/esm2015/lib/components/widgets/dynamic-table/dynamic-table.component.js +4 -5
  58. package/esm2015/lib/components/widgets/file-preview-dialog/file-preview-dialog.component.js +3 -2
  59. package/esm2015/lib/components/widgets/qr-code-dialog/qr-code-dialog.component.js +37 -0
  60. package/esm2015/lib/components/widgets/save-confirmation-dialog/save-confirmation-dialog.component.js +4 -3
  61. package/esm2015/lib/components/widgets/search-panel/search-panel.component.js +3 -2
  62. package/esm2015/lib/components/widgets/snackbar/snackbar.component.js +3 -2
  63. package/esm2015/lib/data-structures/dynamic-layout.structure.js +1 -1
  64. package/esm2015/lib/guards/feature.guard.js +2 -2
  65. package/esm2015/lib/language-packs/en.data.js +62 -0
  66. package/esm2015/lib/language-packs/ms.data.js +62 -0
  67. package/esm2015/lib/mantle.module.js +49 -4
  68. package/esm2015/lib/material.module.js +12 -2
  69. package/esm2015/lib/services/confirmation.service.js +2 -2
  70. package/esm2015/lib/services/current-user.service.js +55 -21
  71. package/esm2015/lib/services/data-broadcast.service.js +18 -0
  72. package/esm2015/lib/services/dynamic-form.service.js +2 -1
  73. package/esm2015/lib/services/feature-config.service.js +34 -12
  74. package/esm2015/lib/services/interfaces/detail-page.service.js +1 -1
  75. package/esm2015/lib/services/interfaces/form-page.service.js +1 -1
  76. package/esm2015/lib/services/interfaces/list-page.service.js +1 -1
  77. package/esm2015/lib/services/interfaces/roster-page.service.js +2 -0
  78. package/esm2015/lib/services/interfaces/roster-schedule.service.js +2 -0
  79. package/esm2015/lib/services/locale.service.js +75 -0
  80. package/esm2015/lib/services/object.service.js +9 -1
  81. package/esm2015/lib/services/password-check.service.js +10 -8
  82. package/esm2015/public-api.js +15 -1
  83. package/fesm2015/codetectonics-mantle.js +1158 -255
  84. package/fesm2015/codetectonics-mantle.js.map +1 -1
  85. package/lib/components/dashboard/widgets/dashboard-table/dashboard-table.component.d.ts +2 -1
  86. package/lib/components/details/dialog-details/dialog-details.component.d.ts +1 -0
  87. package/lib/components/details/fields/icon-attribute-display/icon-attribute-display.component.d.ts +6 -0
  88. package/lib/components/details/sections/dynamic-details-section/dynamic-details-section.component.d.ts +2 -1
  89. package/lib/components/details/sections/roster-shift-list-details-section/roster-shift-list-details-section.component.d.ts +9 -0
  90. package/lib/components/details/sections/table-details-section/table-details-section.component.d.ts +3 -1
  91. package/lib/components/form/dialog-form/dialog-form.component.d.ts +5 -1
  92. package/lib/components/form/dialog-nested-form/dialog-nested-form.component.d.ts +3 -0
  93. package/lib/components/form/fields/time-input/time-input.component.d.ts +22 -0
  94. package/lib/components/form/sections/dynamic-form-section/dynamic-form-section.component.d.ts +4 -1
  95. package/lib/components/form/sections/roster-shift-list-form-section/roster-shift-list-form-section.component.d.ts +23 -0
  96. package/lib/components/form/sections/table-form-section/table-form-section.component.d.ts +3 -1
  97. package/lib/components/navigation/nav-tree/nav-tree.component.d.ts +2 -2
  98. package/lib/components/navigation/paginator/custom-paginator-intl.d.ts +12 -0
  99. package/lib/components/pages/detail-page/detail-page.component.d.ts +4 -3
  100. package/lib/components/pages/layout-editor-page/layout-editor-page.component.d.ts +2 -1
  101. package/lib/components/pages/list-page/list-page.component.d.ts +4 -1
  102. package/lib/components/pages/roster-page/roster-gantt.data.d.ts +1 -0
  103. package/lib/components/pages/roster-page/roster-page.component.d.ts +40 -0
  104. package/lib/components/titles/page-title/page-title.component.d.ts +3 -1
  105. package/lib/components/widgets/delete-confirmation-dialog/delete-confirmation-dialog.component.d.ts +1 -1
  106. package/lib/components/widgets/draggable-table/draggable-table-datasource.d.ts +23 -0
  107. package/lib/components/widgets/draggable-table/draggable-table.component.d.ts +24 -0
  108. package/lib/components/widgets/qr-code-dialog/qr-code-dialog.component.d.ts +18 -0
  109. package/lib/components/widgets/save-confirmation-dialog/save-confirmation-dialog.component.d.ts +0 -2
  110. package/lib/data-structures/dynamic-layout.structure.d.ts +13 -0
  111. package/lib/language-packs/en.data.d.ts +61 -0
  112. package/lib/language-packs/ms.data.d.ts +61 -0
  113. package/lib/mantle.module.d.ts +104 -94
  114. package/lib/material.module.d.ts +12 -11
  115. package/lib/services/current-user.service.d.ts +14 -7
  116. package/lib/services/data-broadcast.service.d.ts +8 -0
  117. package/lib/services/dynamic-form.service.d.ts +2 -0
  118. package/lib/services/feature-config.service.d.ts +15 -3
  119. package/lib/services/interfaces/detail-page.service.d.ts +4 -2
  120. package/lib/services/interfaces/form-page.service.d.ts +11 -3
  121. package/lib/services/interfaces/list-page.service.d.ts +14 -1
  122. package/lib/services/interfaces/roster-page.service.d.ts +20 -0
  123. package/lib/services/interfaces/roster-schedule.service.d.ts +22 -0
  124. package/lib/services/locale.service.d.ts +21 -0
  125. package/lib/services/object.service.d.ts +2 -0
  126. package/lib/services/password-check.service.d.ts +3 -1
  127. package/package.json +3 -1
  128. package/public-api.d.ts +14 -0
@@ -12,6 +12,7 @@ import * as i7 from "@angular/flex-layout/flex";
12
12
  import * as i8 from "@angular/common";
13
13
  import * as i9 from "@angular/flex-layout/extended";
14
14
  import * as i10 from "@angular/material/form-field";
15
+ import * as i11 from "@ngx-translate/core";
15
16
  export class ExportPageComponent {
16
17
  constructor(route, injector, changeDetectorRef, announcementService, objectService) {
17
18
  this.route = route;
@@ -42,12 +43,12 @@ export class ExportPageComponent {
42
43
  this.isExportInProgress = false;
43
44
  }
44
45
  onExportFailure(res) {
45
- this.announcementService.error('Export failed!');
46
+ this.announcementService.error('mantle.messages.export_failed');
46
47
  this.isExportInProgress = false;
47
48
  }
48
49
  }
49
50
  ExportPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: ExportPageComponent, deps: [{ token: i1.ActivatedRoute }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }, { token: i2.AnnouncementService }, { token: i3.ObjectService }], target: i0.ɵɵFactoryTarget.Component });
50
- ExportPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: ExportPageComponent, selector: "mantle-export-page", viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" fxLayoutGap=\"16px\" class=\"full-height-min\" [ngClass]=\"{'page full-height-only vertically-scrollable': !isTabbedContent}\">\n <div fxFlex=\"1 0 auto\" class=\"main-content\">\n <mantle-dynamic-form #dynamicForm [content]=\"content$ | async\"></mantle-dynamic-form>\n </div>\n\n <div fxFlex=\"0 0 auto\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" fxLayoutGap=\"16px\">\n <div fxFlex=\"1 1 auto\"></div>\n\n <div fxFlex=\"0 0 auto\">\n <button mat-raised-button\n *ngIf=\"!isExportInProgress\"\n color=\"primary\"\n type=\"button\"\n class=\"export-button\"\n [disabled]=\"!dynamicForm?.valid\"\n (click)=\"onExportClicked()\">\n Export\n </button>\n\n\n <button mat-raised-button\n *ngIf=\"isExportInProgress\"\n color=\"primary\"\n type=\"button\"\n class=\"exporting-button\"\n [disabled]=\"true\">\n Exporting\n <mat-spinner matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".export-button,.exporting-button{width:140px}.exporting-button .mat-spinner{position:absolute;top:10px;right:12px}\n"], components: [{ type: i4.DynamicFormComponent, selector: "mantle-dynamic-form", inputs: ["formPageService", "content"] }, { type: i5.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"] }, { type: i6.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i7.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"] }, { type: i7.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"] }, { type: i7.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"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i7.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"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.MatSuffix, selector: "[matSuffix]" }], pipes: { "async": i8.AsyncPipe } });
51
+ ExportPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: ExportPageComponent, selector: "mantle-export-page", viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" fxLayoutGap=\"16px\" class=\"full-height-min\" [ngClass]=\"{'page full-height-only vertically-scrollable': !isTabbedContent}\">\n <div fxFlex=\"1 0 auto\" class=\"main-content\">\n <mantle-dynamic-form #dynamicForm [content]=\"content$ | async\"></mantle-dynamic-form>\n </div>\n\n <div fxFlex=\"0 0 auto\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" fxLayoutGap=\"16px\">\n <div fxFlex=\"1 1 auto\"></div>\n\n <div fxFlex=\"0 0 auto\">\n <button mat-raised-button\n *ngIf=\"!isExportInProgress\"\n color=\"primary\"\n type=\"button\"\n class=\"export-button\"\n [disabled]=\"!dynamicForm?.valid\"\n (click)=\"onExportClicked()\">\n {{ 'mantle.buttons.export' | translate }}\n </button>\n\n\n <button mat-raised-button\n *ngIf=\"isExportInProgress\"\n color=\"primary\"\n type=\"button\"\n class=\"exporting-button\"\n [disabled]=\"true\">\n {{ 'mantle.buttons.exporting' | translate }}\n <mat-spinner matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".export-button,.exporting-button{width:140px}.exporting-button .mat-spinner{position:absolute;top:10px;right:12px}\n"], components: [{ type: i4.DynamicFormComponent, selector: "mantle-dynamic-form", inputs: ["formPageService", "content"] }, { type: i5.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"] }, { type: i6.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i7.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"] }, { type: i7.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"] }, { type: i7.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"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i7.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"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.MatSuffix, selector: "[matSuffix]" }], pipes: { "async": i8.AsyncPipe, "translate": i11.TranslatePipe } });
51
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: ExportPageComponent, decorators: [{
52
53
  type: Component,
53
54
  args: [{
@@ -59,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImpor
59
60
  type: ViewChild,
60
61
  args: [DynamicFormComponent]
61
62
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFudGxlL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9leHBvcnQtcGFnZS9leHBvcnQtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2V4cG9ydC1wYWdlL2V4cG9ydC1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUMsU0FBUyxFQUFvQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHNUcsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7Ozs7Ozs7QUFVcEcsTUFBTSxPQUFPLG1CQUFtQjtJQVU5QixZQUFvQixLQUFxQixFQUFVLFFBQWtCLEVBQVUsaUJBQW9DLEVBQy9GLG1CQUF3QyxFQUFVLGFBQTRCO1FBRDlFLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDL0Ysd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBSjNGLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBS3RDLE1BQU0sK0JBQStCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDdEYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFvQiwrQkFBK0IsQ0FBQyxDQUFDO1FBQy9GLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQ2xELEdBQUcsQ0FBQyxDQUFDLEdBQXVCLEVBQUUsRUFBRTtZQUM5QixPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUUvQixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWpELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUM3QyxHQUFHLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3JDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDdEMsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBUTtRQUN0QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBbUI7UUFDakMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFDbEMsQ0FBQzs7Z0hBaERVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHVHQUVuQixvQkFBb0IsZ0RDakJqQyx5cUNBa0NBOzJGRG5CYSxtQkFBbUI7a0JBTC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsV0FBVyxFQUFFLDhCQUE4QjtvQkFDM0MsU0FBUyxFQUFFLENBQUMsOEJBQThCLENBQUM7aUJBQzVDOzBOQUdrQyxXQUFXO3NCQUEzQyxTQUFTO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0NoZWNrZWQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdG9yLCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQW5ub3VuY2VtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Fubm91bmNlbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IER5bmFtaWNGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9mb3JtL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEV4cG9ydFBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaW50ZXJmYWNlcy9leHBvcnQtcGFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IE9iamVjdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9vYmplY3Quc2VydmljZSc7XG5pbXBvcnQgeyBXZWJBcGlGb3JtUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hZGFwdGVycy93ZWItYXBpLWNydWQuYWRhcHRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1leHBvcnQtcGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9leHBvcnQtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2V4cG9ydC1wYWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRXhwb3J0UGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG5cbiAgQFZpZXdDaGlsZChEeW5hbWljRm9ybUNvbXBvbmVudCkgZHluYW1pY0Zvcm0hOiBEeW5hbWljRm9ybUNvbXBvbmVudDtcblxuICBwcml2YXRlIGV4cG9ydFBhZ2VTZXJ2aWNlOiBFeHBvcnRQYWdlU2VydmljZTtcblxuICBwdWJsaWMgY29udGVudCQhOiBPYnNlcnZhYmxlPGFueT47XG4gIHB1YmxpYyBpc1RhYmJlZENvbnRlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGlzRXhwb3J0SW5Qcm9ncmVzcyE6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLCBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhbm5vdW5jZW1lbnRTZXJ2aWNlOiBBbm5vdW5jZW1lbnRTZXJ2aWNlLCBwcml2YXRlIG9iamVjdFNlcnZpY2U6IE9iamVjdFNlcnZpY2UpIHtcbiAgICBjb25zdCBleHBvcnRQYWdlU2VydmljZUluamVjdGlvblRva2VuID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydleHBvcnRQYWdlU2VydmljZSddO1xuICAgIHRoaXMuZXhwb3J0UGFnZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldDxFeHBvcnRQYWdlU2VydmljZT4oZXhwb3J0UGFnZVNlcnZpY2VJbmplY3Rpb25Ub2tlbik7XG4gICAgdGhpcy5pc1RhYmJlZENvbnRlbnQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGFbJ2lzVGFiYmVkQ29udGVudCddO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZW50JCA9IHRoaXMuZXhwb3J0UGFnZVNlcnZpY2UuZ2V0TmV3KCkucGlwZShcbiAgICAgIG1hcCgocmVzOiBXZWJBcGlGb3JtUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIHJlcy5jb250ZW50O1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgb25FeHBvcnRDbGlja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuaXNFeHBvcnRJblByb2dyZXNzID0gdHJ1ZTtcblxuICAgIGxldCBwYXJhbXMgPSB0aGlzLmR5bmFtaWNGb3JtLnZhbHVlO1xuICAgIHRoaXMub2JqZWN0U2VydmljZS5yZW1vdmVFbXB0eUF0dHJpYnV0ZXMocGFyYW1zKTtcblxuICAgIHRoaXMuZXhwb3J0UGFnZVNlcnZpY2UuZXhwb3J0KHBhcmFtcykuc3Vic2NyaWJlKFxuICAgICAgcmVzID0+IHsgdGhpcy5vbkV4cG9ydFN1Y2Nlc3MocmVzKTsgfSxcbiAgICAgIHJlcyA9PiB7IHRoaXMub25FeHBvcnRGYWlsdXJlKHJlcyk7IH1cbiAgICApO1xuICB9XG5cbiAgb25FeHBvcnRTdWNjZXNzKHJlczogYW55KTogdm9pZCB7XG4gICAgdGhpcy5pc0V4cG9ydEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgfVxuXG4gIG9uRXhwb3J0RmFpbHVyZShyZXM6IHsgZXJyb3I6IGFueSB9KTogdm9pZCB7XG4gICAgdGhpcy5hbm5vdW5jZW1lbnRTZXJ2aWNlLmVycm9yKCdFeHBvcnQgZmFpbGVkIScpO1xuICAgIHRoaXMuaXNFeHBvcnRJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdHJldGNoXCIgZnhMYXlvdXRHYXA9XCIxNnB4XCIgY2xhc3M9XCJmdWxsLWhlaWdodC1taW5cIiBbbmdDbGFzc109XCJ7J3BhZ2UgZnVsbC1oZWlnaHQtb25seSB2ZXJ0aWNhbGx5LXNjcm9sbGFibGUnOiAhaXNUYWJiZWRDb250ZW50fVwiPlxuICA8ZGl2IGZ4RmxleD1cIjEgMCBhdXRvXCIgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cbiAgICA8bWFudGxlLWR5bmFtaWMtZm9ybSAjZHluYW1pY0Zvcm0gW2NvbnRlbnRdPVwiY29udGVudCQgfCBhc3luY1wiPjwvbWFudGxlLWR5bmFtaWMtZm9ybT5cbiAgPC9kaXY+XG5cbiAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiPlxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiIGZ4TGF5b3V0R2FwPVwiMTZweFwiPlxuICAgICAgPGRpdiBmeEZsZXg9XCIxIDEgYXV0b1wiPjwvZGl2PlxuXG4gICAgICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCI+XG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiIWlzRXhwb3J0SW5Qcm9ncmVzc1wiXG4gICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cImV4cG9ydC1idXR0b25cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFkeW5hbWljRm9ybT8udmFsaWRcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uRXhwb3J0Q2xpY2tlZCgpXCI+XG4gICAgICAgICAgRXhwb3J0XG4gICAgICAgIDwvYnV0dG9uPlxuXG5cbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJpc0V4cG9ydEluUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJleHBvcnRpbmctYnV0dG9uXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCI+XG4gICAgICAgICAgRXhwb3J0aW5nXG4gICAgICAgICAgPG1hdC1zcGlubmVyIG1hdFN1ZmZpeCBbZGlhbWV0ZXJdPVwiMTZcIj48L21hdC1zcGlubmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFudGxlL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9leHBvcnQtcGFnZS9leHBvcnQtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2V4cG9ydC1wYWdlL2V4cG9ydC1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUMsU0FBUyxFQUFvQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHNUcsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7Ozs7Ozs7O0FBVXBHLE1BQU0sT0FBTyxtQkFBbUI7SUFVOUIsWUFBb0IsS0FBcUIsRUFBVSxRQUFrQixFQUFVLGlCQUFvQyxFQUMvRixtQkFBd0MsRUFBVSxhQUE0QjtRQUQ5RSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBVSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQy9GLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUozRixvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUt0QyxNQUFNLCtCQUErQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBb0IsK0JBQStCLENBQUMsQ0FBQztRQUMvRixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUNsRCxHQUFHLENBQUMsQ0FBQyxHQUF1QixFQUFFLEVBQUU7WUFDOUIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFFL0IsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7UUFDcEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FDN0MsR0FBRyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNyQyxHQUFHLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3RDLENBQUM7SUFDSixDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQVE7UUFDdEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQW1CO1FBQ2pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQ2xDLENBQUM7O2dIQWhEVSxtQkFBbUI7b0dBQW5CLG1CQUFtQix1R0FFbkIsb0JBQW9CLGdEQ2pCakMsK3VDQWtDQTsyRkRuQmEsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFdBQVcsRUFBRSw4QkFBOEI7b0JBQzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2lCQUM1QzswTkFHa0MsV0FBVztzQkFBM0MsU0FBUzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdDaGVja2VkLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFubm91bmNlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hbm5vdW5jZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZm9ybS9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFeHBvcnRQYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ludGVyZmFjZXMvZXhwb3J0LXBhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBPYmplY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvb2JqZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgV2ViQXBpRm9ybVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWRhcHRlcnMvd2ViLWFwaS1jcnVkLmFkYXB0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYW50bGUtZXhwb3J0LXBhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXhwb3J0LXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9leHBvcnQtcGFnZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEV4cG9ydFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0NoZWNrZWQge1xuXG4gIEBWaWV3Q2hpbGQoRHluYW1pY0Zvcm1Db21wb25lbnQpIGR5bmFtaWNGb3JtITogRHluYW1pY0Zvcm1Db21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBleHBvcnRQYWdlU2VydmljZTogRXhwb3J0UGFnZVNlcnZpY2U7XG5cbiAgcHVibGljIGNvbnRlbnQkITogT2JzZXJ2YWJsZTxhbnk+O1xuICBwdWJsaWMgaXNUYWJiZWRDb250ZW50OiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc0V4cG9ydEluUHJvZ3Jlc3MhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgIHByaXZhdGUgYW5ub3VuY2VtZW50U2VydmljZTogQW5ub3VuY2VtZW50U2VydmljZSwgcHJpdmF0ZSBvYmplY3RTZXJ2aWNlOiBPYmplY3RTZXJ2aWNlKSB7XG4gICAgY29uc3QgZXhwb3J0UGFnZVNlcnZpY2VJbmplY3Rpb25Ub2tlbiA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YVsnZXhwb3J0UGFnZVNlcnZpY2UnXTtcbiAgICB0aGlzLmV4cG9ydFBhZ2VTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8RXhwb3J0UGFnZVNlcnZpY2U+KGV4cG9ydFBhZ2VTZXJ2aWNlSW5qZWN0aW9uVG9rZW4pO1xuICAgIHRoaXMuaXNUYWJiZWRDb250ZW50ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydpc1RhYmJlZENvbnRlbnQnXTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGVudCQgPSB0aGlzLmV4cG9ydFBhZ2VTZXJ2aWNlLmdldE5ldygpLnBpcGUoXG4gICAgICBtYXAoKHJlczogV2ViQXBpRm9ybVJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiByZXMuY29udGVudDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uRXhwb3J0Q2xpY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzRXhwb3J0SW5Qcm9ncmVzcyA9IHRydWU7XG5cbiAgICBsZXQgcGFyYW1zID0gdGhpcy5keW5hbWljRm9ybS52YWx1ZTtcbiAgICB0aGlzLm9iamVjdFNlcnZpY2UucmVtb3ZlRW1wdHlBdHRyaWJ1dGVzKHBhcmFtcyk7XG5cbiAgICB0aGlzLmV4cG9ydFBhZ2VTZXJ2aWNlLmV4cG9ydChwYXJhbXMpLnN1YnNjcmliZShcbiAgICAgIHJlcyA9PiB7IHRoaXMub25FeHBvcnRTdWNjZXNzKHJlcyk7IH0sXG4gICAgICByZXMgPT4geyB0aGlzLm9uRXhwb3J0RmFpbHVyZShyZXMpOyB9XG4gICAgKTtcbiAgfVxuXG4gIG9uRXhwb3J0U3VjY2VzcyhyZXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuaXNFeHBvcnRJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBvbkV4cG9ydEZhaWx1cmUocmVzOiB7IGVycm9yOiBhbnkgfSk6IHZvaWQge1xuICAgIHRoaXMuYW5ub3VuY2VtZW50U2VydmljZS5lcnJvcignbWFudGxlLm1lc3NhZ2VzLmV4cG9ydF9mYWlsZWQnKTtcbiAgICB0aGlzLmlzRXhwb3J0SW5Qcm9ncmVzcyA9IGZhbHNlO1xuICB9XG5cbn1cbiIsIjxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBmeExheW91dEFsaWduPVwic3RyZXRjaFwiIGZ4TGF5b3V0R2FwPVwiMTZweFwiIGNsYXNzPVwiZnVsbC1oZWlnaHQtbWluXCIgW25nQ2xhc3NdPVwieydwYWdlIGZ1bGwtaGVpZ2h0LW9ubHkgdmVydGljYWxseS1zY3JvbGxhYmxlJzogIWlzVGFiYmVkQ29udGVudH1cIj5cbiAgPGRpdiBmeEZsZXg9XCIxIDAgYXV0b1wiIGNsYXNzPVwibWFpbi1jb250ZW50XCI+XG4gICAgPG1hbnRsZS1keW5hbWljLWZvcm0gI2R5bmFtaWNGb3JtIFtjb250ZW50XT1cImNvbnRlbnQkIHwgYXN5bmNcIj48L21hbnRsZS1keW5hbWljLWZvcm0+XG4gIDwvZGl2PlxuXG4gIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBmeExheW91dEdhcD1cIjE2cHhcIj5cbiAgICAgIDxkaXYgZnhGbGV4PVwiMSAxIGF1dG9cIj48L2Rpdj5cblxuICAgICAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiPlxuICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cIiFpc0V4cG9ydEluUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJleHBvcnQtYnV0dG9uXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZHluYW1pY0Zvcm0/LnZhbGlkXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkV4cG9ydENsaWNrZWQoKVwiPlxuICAgICAgICAgIHt7ICdtYW50bGUuYnV0dG9ucy5leHBvcnQnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvYnV0dG9uPlxuXG5cbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJpc0V4cG9ydEluUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJleHBvcnRpbmctYnV0dG9uXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCI+XG4gICAgICAgICAge3sgJ21hbnRsZS5idXR0b25zLmV4cG9ydGluZycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8bWF0LXNwaW5uZXIgbWF0U3VmZml4IFtkaWFtZXRlcl09XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -15,6 +15,7 @@ import * as i9 from "@angular/flex-layout/flex";
15
15
  import * as i10 from "@angular/common";
16
16
  import * as i11 from "@angular/flex-layout/extended";
17
17
  import * as i12 from "@angular/material/form-field";
18
+ import * as i13 from "@ngx-translate/core";
18
19
  export class FormPageComponent {
19
20
  constructor(route, injector, changeDetectorRef, announcementService, confirmationService) {
20
21
  this.route = route;
@@ -74,7 +75,7 @@ export class FormPageComponent {
74
75
  this.formPageService.onFormContentLoaded(res.content);
75
76
  this.loadAdditionalButtons(res.content.data);
76
77
  this.content$ = observableOf(res.content);
77
- this.announcementService.success('Save successful!');
78
+ this.announcementService.success('mantle.messages.save_successful');
78
79
  this.back();
79
80
  this.isSaveInProgress = false;
80
81
  }
@@ -94,11 +95,11 @@ export class FormPageComponent {
94
95
  if (confirmed)
95
96
  this.onSaveClicked();
96
97
  else
97
- this.announcementService.error('Save failed!');
98
- }, { noun: this.formPageService.noun(), message: res.confirmationRequest.message });
98
+ this.announcementService.error('mantle.messages.save_failed');
99
+ }, { message: res.confirmationRequest.message });
99
100
  }
100
101
  else {
101
- this.announcementService.error('Save failed!');
102
+ this.announcementService.error('mantle.messages.save_failed');
102
103
  }
103
104
  if (!!((_a = res.alert) === null || _a === void 0 ? void 0 : _a.message)) {
104
105
  this.announcementService.error(res.alert.message);
@@ -115,7 +116,7 @@ export class FormPageComponent {
115
116
  }
116
117
  }
117
118
  FormPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FormPageComponent, deps: [{ token: i1.ActivatedRoute }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }, { token: i2.AnnouncementService }, { token: i3.ConfirmationService }], target: i0.ɵɵFactoryTarget.Component });
118
- FormPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: FormPageComponent, selector: "mantle-form-page", viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" class=\"full-height-min\" [ngClass]=\"{'page full-height-only vertically-scrollable': !isTabbedContent}\">\n <div fxFlex=\"0 0 auto\" class=\"page-header\">\n <div fxLayout=\"row\" fxLayoutAlign=\"stretch\" fxLayoutGap=\"16px\">\n <mantle-content-title *ngIf=\"header\" fxFlex=\"0 0 auto\" [thumbnail]=\"header.thumbnail\" [title]=\"header.title\"></mantle-content-title>\n\n <div fxFlex=\"1 1 auto\"></div>\n\n <div fxFlex=\"0 0 auto\">\n <button mat-icon-button\n type=\"button\"\n (click)=\"onCancelClicked()\"\n [disabled]=\"formPageService.isCommitInProgress\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n </div>\n </div>\n\n <div fxFlex=\"1 0 auto\" class=\"main-content\">\n <mantle-dynamic-form #dynamicForm [content]=\"content$ | async\" [formPageService]=\"formPageService\"></mantle-dynamic-form>\n </div>\n\n <div fxFlex=\"0 0 auto\" class=\"page-footer\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" fxLayoutGap=\"16px\">\n <ng-container *ngFor=\"let button of bottomLeftButtons\">\n <div fxFlex=\"0 0 auto\" *ngIf=\"button.show\">\n <button mat-raised-button\n color=\"{{ button.color }}\"\n type=\"button\"\n class=\"additional-button\"\n [ngClass]=\"{ 'in-progress-button': button.isInProgress() }\"\n [disabled]=\"formPageService.isCommitInProgress || button.disabled\"\n (click)=\"button.onClick(dynamicForm?.value)\">\n {{ button.label }}\n <mat-spinner *ngIf=\"button.isInProgress()\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </ng-container>\n\n <div fxFlex=\"1 1 auto\"></div>\n\n <ng-container *ngFor=\"let button of bottomRightButtons\">\n <div fxFlex=\"0 0 auto\" *ngIf=\"button.show\">\n <button mat-raised-button\n color=\"{{ button.color }}\"\n type=\"button\"\n class=\"additional-button\"\n [ngClass]=\"{ 'in-progress-button': button.isInProgress() }\"\n [disabled]=\"formPageService.isCommitInProgress || button.disabled\"\n (click)=\"button.onClick(dynamicForm?.value)\">\n {{ button.label }}\n <mat-spinner *ngIf=\"button.isInProgress()\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </ng-container>\n\n <div fxFlex=\"0 0 auto\" *ngIf=\"formPageService.showSaveButton\">\n <button mat-raised-button\n color=\"primary\"\n type=\"button\"\n class=\"save-button\"\n [ngClass]=\"{ 'in-progress-button': isSaveInProgress }\"\n [disabled]=\"formPageService.isCommitInProgress || !dynamicForm?.valid\"\n (click)=\"onSaveClicked()\">\n Save\n <mat-spinner *ngIf=\"isSaveInProgress\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".save-button,.additional-button{width:140px}.in-progress-button .mat-spinner{position:absolute;top:10px;right:12px}\n"], components: [{ type: i4.ContentTitleComponent, selector: "mantle-content-title", inputs: ["thumbnail", "title"] }, { type: i5.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"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.DynamicFormComponent, selector: "mantle-dynamic-form", inputs: ["formPageService", "content"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i9.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"] }, { type: i9.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"] }, { type: i10.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i11.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i9.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"] }, { type: i9.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"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i12.MatSuffix, selector: "[matSuffix]" }], pipes: { "async": i10.AsyncPipe } });
119
+ FormPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: FormPageComponent, selector: "mantle-form-page", viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" class=\"full-height-min\" [ngClass]=\"{'page full-height-only vertically-scrollable': !isTabbedContent}\">\n <div fxFlex=\"0 0 auto\" class=\"page-header\">\n <div fxLayout=\"row\" fxLayoutAlign=\"stretch\" fxLayoutGap=\"16px\">\n <mantle-content-title *ngIf=\"header\" fxFlex=\"0 0 auto\" [thumbnail]=\"header.thumbnail\" [title]=\"header.title\"></mantle-content-title>\n\n <div fxFlex=\"1 1 auto\"></div>\n\n <div fxFlex=\"0 0 auto\" *ngIf=\"!formPageService.hideCancelButton\">\n <button mat-icon-button\n type=\"button\"\n (click)=\"onCancelClicked()\"\n [disabled]=\"formPageService.isCommitInProgress\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n </div>\n </div>\n\n <div fxFlex=\"1 0 auto\" class=\"main-content\">\n <mantle-dynamic-form #dynamicForm [content]=\"content$ | async\" [formPageService]=\"formPageService\"></mantle-dynamic-form>\n </div>\n\n <div fxFlex=\"0 0 auto\" class=\"page-footer\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" fxLayoutGap=\"16px\">\n <ng-container *ngFor=\"let button of bottomLeftButtons\">\n <div fxFlex=\"0 0 auto\" *ngIf=\"button.show\">\n <button mat-raised-button\n color=\"{{ button.color }}\"\n type=\"button\"\n class=\"additional-button\"\n [ngClass]=\"{ 'in-progress-button': button.isInProgress() }\"\n [disabled]=\"formPageService.isCommitInProgress || button.disabled\"\n (click)=\"button.onClick(dynamicForm?.value)\">\n {{ button.label | translate }}\n <mat-spinner *ngIf=\"button.isInProgress()\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </ng-container>\n\n <div fxFlex=\"1 1 auto\"></div>\n\n <ng-container *ngFor=\"let button of bottomRightButtons\">\n <div fxFlex=\"0 0 auto\" *ngIf=\"button.show\">\n <button mat-raised-button\n color=\"{{ button.color }}\"\n type=\"button\"\n class=\"additional-button\"\n [ngClass]=\"{ 'in-progress-button': button.isInProgress() }\"\n [disabled]=\"formPageService.isCommitInProgress || button.disabled\"\n (click)=\"button.onClick(dynamicForm?.value)\">\n {{ button.label | translate }}\n <mat-spinner *ngIf=\"button.isInProgress()\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </ng-container>\n\n <div fxFlex=\"0 0 auto\" *ngIf=\"formPageService.showSaveButton\">\n <button mat-raised-button\n color=\"primary\"\n type=\"button\"\n class=\"save-button\"\n [ngClass]=\"{ 'in-progress-button': isSaveInProgress }\"\n [disabled]=\"formPageService.isCommitInProgress || !dynamicForm?.valid\"\n (click)=\"onSaveClicked()\">\n {{ 'mantle.buttons.save' | translate }}\n <mat-spinner *ngIf=\"isSaveInProgress\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".save-button,.additional-button{width:140px}.in-progress-button .mat-spinner{position:absolute;top:10px;right:12px}\n"], components: [{ type: i4.ContentTitleComponent, selector: "mantle-content-title", inputs: ["thumbnail", "title"] }, { type: i5.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"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.DynamicFormComponent, selector: "mantle-dynamic-form", inputs: ["formPageService", "content"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i9.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"] }, { type: i9.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"] }, { type: i10.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i11.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i9.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"] }, { type: i9.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"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i12.MatSuffix, selector: "[matSuffix]" }], pipes: { "async": i10.AsyncPipe, "translate": i13.TranslatePipe } });
119
120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FormPageComponent, decorators: [{
120
121
  type: Component,
121
122
  args: [{
@@ -127,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImpor
127
128
  type: ViewChild,
128
129
  args: [DynamicFormComponent]
129
130
  }] } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZm9ybS1wYWdlL2Zvcm0tcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2Zvcm0tcGFnZS9mb3JtLXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QyxTQUFTLEVBQW9CLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RyxPQUFPLEVBQWMsRUFBRSxJQUFJLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOERBQThELENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBU3BHLE1BQU0sT0FBTyxpQkFBaUI7SUFlNUIsWUFBb0IsS0FBcUIsRUFBVSxRQUFrQixFQUFVLGlCQUFvQyxFQUMvRixtQkFBd0MsRUFBVSxtQkFBd0M7UUFEMUYsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQVUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUMvRix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQU52RyxzQkFBaUIsR0FBcUIsRUFBRSxDQUFDO1FBQ3pDLHVCQUFrQixHQUFxQixFQUFFLENBQUM7UUFDMUMsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFLdEMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNs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b0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3Q2hlY2tlZCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5qZWN0b3IsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiBhcyBvYnNlcnZhYmxlT2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFubm91bmNlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hbm5vdW5jZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRHluYW1pY0Zvcm1Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2Zvcm0vZHluYW1pYy1mb3JtL2R5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVBhZ2VCdXR0b24sIEZvcm1QYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ludGVyZmFjZXMvZm9ybS1wYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgV2ViQXBpRm9ybVJlc3BvbnNlLCBXZWJBcGlTYXZlUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hZGFwdGVycy93ZWItYXBpLWNydWQuYWRhcHRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1mb3JtLXBhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS1wYWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRm9ybVBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0NoZWNrZWQge1xuXG4gIEBWaWV3Q2hpbGQoRHluYW1pY0Zvcm1Db21wb25lbnQpIGR5bmFtaWNGb3JtITogRHluYW1pY0Zvcm1Db21wb25lbnQ7XG5cbiAgcHVibGljIGZvcm1QYWdlU2VydmljZTogRm9ybVBhZ2VTZXJ2aWNlO1xuXG4gIHByaXZhdGUgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSBjbG9uZUlkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBoZWFkZXI6IGFueTtcbiAgcHVibGljIGNvbnRlbnQkITogT2JzZXJ2YWJsZTxhbnk+O1xuICBwdWJsaWMgYm90dG9tTGVmdEJ1dHRvbnM6IEZvcm1QYWdlQnV0dG9uW10gPSBbXTtcbiAgcHVibGljIGJvdHRvbVJpZ2h0QnV0dG9uczogRm9ybVBhZ2VCdXR0b25bXSA9IFtdO1xuICBwdWJsaWMgaXNUYWJiZWRDb250ZW50OiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc1NhdmVJblByb2dyZXNzITogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICAgICAgICBwcml2YXRlIGFubm91bmNlbWVudFNlcnZpY2U6IEFubm91bmNlbWVudFNlcnZpY2UsIHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSkge1xuICAgIGNvbnN0IGZvcm1QYWdlU2VydmljZUluamVjdGlvblRva2VuID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydmb3JtUGFnZVNlcnZpY2UnXTtcbiAgICB0aGlzLmZvcm1QYWdlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0PEZvcm1QYWdlU2VydmljZT4oZm9ybVBhZ2VTZXJ2aWNlSW5qZWN0aW9uVG9rZW4pO1xuICAgIHRoaXMuaXNUYWJiZWRDb250ZW50ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydpc1RhYmJlZENvbnRlbnQnXTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgdGhpcy5pZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zWydpZCddO1xuICAgICAgdGhpcy5jbG9uZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbJ2Nsb25lSWQnXTtcblxuICAgICAgbGV0IHJlc3BvbnNlT2JzZXJ2YWJsZSA9IG51bGw7XG4gICAgICBpZiAodGhpcy5jbG9uZUlkKSB7XG4gICAgICAgIHJlc3BvbnNlT2JzZXJ2YWJsZSA9IHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLmdldE5ldyh7IGNsb25lX2lkOiB0aGlzLmNsb25lSWQgfSk7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgcmVzcG9uc2VPYnNlcnZhYmxlID0gdGhpcy5pZCA/IHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLmdldEVkaXQodGhpcy5pZCkgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtUGFnZVNlcnZpY2UuZ2V0TmV3KCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY29udGVudCQgPSByZXNwb25zZU9ic2VydmFibGUucGlwZShcbiAgICAgICAgbWFwKChyZXM6IFdlYkFwaUZvcm1SZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHRoaXMuaGVhZGVyID0gcmVzLmhlYWRlcjtcbiAgICAgICAgICB0aGlzLmZvcm1QYWdlU2VydmljZS5vbkZvcm1Db250ZW50TG9hZGVkKHJlcy5jb250ZW50KTtcbiAgICAgICAgICB0aGlzLmxvYWRBZGRpdGlvbmFsQnV0dG9ucyhyZXMuY29udGVudC5kYXRhKTtcbiAgICAgICAgICByZXR1cm4gcmVzLmNvbnRlbnQ7XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbG9hZEFkZGl0aW9uYWxCdXR0b25zKHJlY29yZDogYW55KSB7XG4gICAgbGV0IGFkZGl0aW9uYWxGb3JtUGFnZUJ1dHRvbnMgPSB0aGlzLmZvcm1QYWdlU2VydmljZS5hZGRpdGlvbmFsRm9ybVBhZ2VCdXR0b25zKHJlY29yZCk7XG4gICAgdGhpcy5ib3R0b21MZWZ0QnV0dG9ucyA9IGFkZGl0aW9uYWxGb3JtUGFnZUJ1dHRvbnMuZmlsdGVyKGJ1dHRvbiA9PiB7XG4gICAgICByZXR1cm4gYnV0dG9uLnBvc2l0aW9uID09ICdsZWZ0JztcbiAgICB9KTtcbiAgICB0aGlzLmJvdHRvbVJpZ2h0QnV0dG9ucyA9IGFkZGl0aW9uYWxGb3JtUGFnZUJ1dHRvbnMuZmlsdGVyKGJ1dHRvbiA9PiB7XG4gICAgICByZXR1cm4gYnV0dG9uLnBvc2l0aW9uID09ICdyaWdodCc7XG4gICAgfSk7XG4gIH1cblxuICBvbkNhbmNlbENsaWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5iYWNrKCk7XG4gIH1cblxuICBvblNhdmVDbGlja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuaXNTYXZlSW5Qcm9ncmVzcyA9IHRydWU7XG5cbiAgICBsZXQgdmFsdWUgPSB0aGlzLmR5bmFtaWNGb3JtLnZhbHVlO1xuICAgIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLnNhdmUoXG4gICAgICB0aGlzLmlkLCB2YWx1ZSxcbiAgICAgIChyZXM6IFdlYkFwaVNhdmVSZXNwb25zZSkgPT4geyB0aGlzLm9uU2F2ZVN1Y2Nlc3MocmVzKTsgfSxcbiAgICAgIChyZXM6IFdlYkFwaVNhdmVSZXNwb25zZSkgPT4geyB0aGlzLm9uU2F2ZUZhaWx1cmUocmVzKTsgfVxuICAgICk7XG4gIH1cblxuICBvblNhdmVTdWNjZXNzKHJlczogV2ViQXBpU2F2ZVJlc3BvbnNlKTogdm9pZCB7XG4gICAgdGhpcy5pZCA9IHJlcy5pZDtcbiAgICB0aGlzLmZvcm1QYWdlU2VydmljZS5vbkZvcm1Db250ZW50TG9hZGVkKHJlcy5jb250ZW50KTtcbiAgICB0aGlzLmxvYWRBZGRpdGlvbmFsQnV0dG9ucyhyZXMuY29udGVudC5kYXRhKTtcbiAgICB0aGlzLmNvbnRlbnQkID0gb2JzZXJ2YWJsZU9mKHJlcy5jb250ZW50KTtcbiAgICB0aGlzLmFubm91bmNlbWVudFNlcnZpY2Uuc3VjY2VzcygnU2F2ZSBzdWNjZXNzZnVsIScpO1xuICAgIHRoaXMuYmFjaygpO1xuXG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBvblNhdmVGYWlsdXJlKHJlczogV2ViQXBpU2F2ZVJlc3BvbnNlKTogdm9pZCB7XG4gICAgaWYgKHJlcy5jb250ZW50KSB7XG4gICAgICB0aGlzLmZvcm1QYWdlU2VydmljZS5vbkZvcm1Db250ZW50TG9hZGVkKHJlcy5jb250ZW50KTtcbiAgICAgIHRoaXMuY29udGVudCQgPSBvYnNlcnZhYmxlT2YocmVzLmNvbnRlbnQpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuYmFjaygpO1xuICAgIH1cblxuICAgIGlmIChyZXMuY29uZmlybWF0aW9uUmVxdWVzdCkge1xuICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm1TYXZlKFxuICAgICAgICAoY29uZmlybWVkOiBib29sZWFuKSA9PiB7XG4gICAgICAgICAgcmVzLmNvbmZpcm1hdGlvblJlcXVlc3Q/Lm9uQ29uZmlybWF0aW9uR2l2ZW4oY29uZmlybWVkKTtcbiAgICAgICAgICBpZiAoY29uZmlybWVkKSB0aGlzLm9uU2F2ZUNsaWNrZWQoKTtcbiAgICAgICAgICBlbHNlIHRoaXMuYW5ub3VuY2VtZW50U2VydmljZS5lcnJvcignU2F2ZSBmYWlsZWQhJyk7XG4gICAgICAgIH0sXG4gICAgICAgIHsgbm91bjogdGhpcy5mb3JtUGFnZVNlcnZpY2Uubm91bigpLCBtZXNzYWdlOiByZXMuY29uZmlybWF0aW9uUmVxdWVzdC5tZXNzYWdlIH1cbiAgICAgICk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5hbm5vdW5jZW1lbnRTZXJ2aWNlLmVycm9yKCdTYXZlIGZhaWxlZCEnKTtcbiAgICB9XG5cbiAgICBpZiAoISFyZXMuYWxlcnQ/Lm1lc3NhZ2UpIHtcbiAgICAgIHRoaXMuYW5ub3VuY2VtZW50U2VydmljZS5lcnJvcihyZXMuYWxlcnQubWVzc2FnZSk7XG4gICAgfVxuXG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBiYWNrKCkge1xuICAgIGlmICh0aGlzLmlkKSB0aGlzLmZvcm1QYWdlU2VydmljZS5vcGVuUmVjb3JkKHsgaWQ6IHRoaXMuaWQgfSk7XG4gICAgZWxzZSBpZiAodGhpcy5jbG9uZUlkKSB0aGlzLmZvcm1QYWdlU2VydmljZS5vcGVuUmVjb3JkKHsgaWQ6IHRoaXMuY2xvbmVJZCB9KTtcbiAgICBlbHNlIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLm9wZW5MaXN0KCk7XG4gIH1cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdHJldGNoXCIgY2xhc3M9XCJmdWxsLWhlaWdodC1taW5cIiBbbmdDbGFzc109XCJ7J3BhZ2UgZnVsbC1oZWlnaHQtb25seSB2ZXJ0aWNhbGx5LXNjcm9sbGFibGUnOiAhaXNUYWJiZWRDb250ZW50fVwiPlxuICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgY2xhc3M9XCJwYWdlLWhlYWRlclwiPlxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwic3RyZXRjaFwiIGZ4TGF5b3V0R2FwPVwiMTZweFwiPlxuICAgICAgPG1hbnRsZS1jb250ZW50LXRpdGxlICpuZ0lmPVwiaGVhZGVyXCIgZnhGbGV4PVwiMCAwIGF1dG9cIiBbdGh1bWJuYWlsXT1cImhlYWRlci50aHVtYm5haWxcIiBbdGl0bGVdPVwiaGVhZGVyLnRpdGxlXCI+PC9tYW50bGUtY29udGVudC10aXRsZT5cblxuICAgICAgPGRpdiBmeEZsZXg9XCIxIDEgYXV0b1wiPjwvZGl2PlxuXG4gICAgICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCI+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNhbmNlbENsaWNrZWQoKVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZm9ybVBhZ2VTZXJ2aWNlLmlzQ29tbWl0SW5Qcm9ncmVzc1wiPlxuICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgZnhGbGV4PVwiMSAwIGF1dG9cIiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxuICAgIDxtYW50bGUtZHluYW1pYy1mb3JtICNkeW5hbWljRm9ybSBbY29udGVudF09XCJjb250ZW50JCB8IGFzeW5jXCIgW2Zvcm1QYWdlU2VydmljZV09XCJmb3JtUGFnZVNlcnZpY2VcIj48L21hbnRsZS1keW5hbWljLWZvcm0+XG4gIDwvZGl2PlxuXG4gIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIiBjbGFzcz1cInBhZ2UtZm9vdGVyXCI+XG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCIgZnhMYXlvdXRHYXA9XCIxNnB4XCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidXR0b24gb2YgYm90dG9tTGVmdEJ1dHRvbnNcIj5cbiAgICAgICAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiICpuZ0lmPVwiYnV0dG9uLnNob3dcIj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgICAgIGNvbG9yPVwie3sgYnV0dG9uLmNvbG9yIH19XCJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWRkaXRpb25hbC1idXR0b25cIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpbi1wcm9ncmVzcy1idXR0b24nOiBidXR0b24uaXNJblByb2dyZXNzKCkgfVwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtUGFnZVNlcnZpY2UuaXNDb21taXRJblByb2dyZXNzIHx8IGJ1dHRvbi5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJidXR0b24ub25DbGljayhkeW5hbWljRm9ybT8udmFsdWUpXCI+XG4gICAgICAgICAgICB7eyBidXR0b24ubGFiZWwgfX1cbiAgICAgICAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cImJ1dHRvbi5pc0luUHJvZ3Jlc3MoKVwiIG1hdFN1ZmZpeCBbZGlhbWV0ZXJdPVwiMTZcIj48L21hdC1zcGlubmVyPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8ZGl2IGZ4RmxleD1cIjEgMSBhdXRvXCI+PC9kaXY+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBib3R0b21SaWdodEJ1dHRvbnNcIj5cbiAgICAgICAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiICpuZ0lmPVwiYnV0dG9uLnNob3dcIj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgICAgIGNvbG9yPVwie3sgYnV0dG9uLmNvbG9yIH19XCJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWRkaXRpb25hbC1idXR0b25cIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpbi1wcm9ncmVzcy1idXR0b24nOiBidXR0b24uaXNJblByb2dyZXNzKCkgfVwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtUGFnZVNlcnZpY2UuaXNDb21taXRJblByb2dyZXNzIHx8IGJ1dHRvbi5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJidXR0b24ub25DbGljayhkeW5hbWljRm9ybT8udmFsdWUpXCI+XG4gICAgICAgICAgICB7eyBidXR0b24ubGFiZWwgfX1cbiAgICAgICAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cImJ1dHRvbi5pc0luUHJvZ3Jlc3MoKVwiIG1hdFN1ZmZpeCBbZGlhbWV0ZXJdPVwiMTZcIj48L21hdC1zcGlubmVyPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgKm5nSWY9XCJmb3JtUGFnZVNlcnZpY2Uuc2hvd1NhdmVCdXR0b25cIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpbi1wcm9ncmVzcy1idXR0b24nOiBpc1NhdmVJblByb2dyZXNzIH1cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1QYWdlU2VydmljZS5pc0NvbW1pdEluUHJvZ3Jlc3MgfHwgIWR5bmFtaWNGb3JtPy52YWxpZFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TYXZlQ2xpY2tlZCgpXCI+XG4gICAgICAgICAgU2F2ZVxuICAgICAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cImlzU2F2ZUluUHJvZ3Jlc3NcIiBtYXRTdWZmaXggW2RpYW1ldGVyXT1cIjE2XCI+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZm9ybS1wYWdlL2Zvcm0tcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2Zvcm0tcGFnZS9mb3JtLXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QyxTQUFTLEVBQW9CLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RyxPQUFPLEVBQWMsRUFBRSxJQUFJLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOERBQThELENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQVNwRyxNQUFNLE9BQU8saUJBQWlCO0lBZTVCLFlBQW9CLEtBQXFCLEVBQVUsUUFBa0IsRUFBVSxpQkFBb0MsRUFDL0YsbUJBQXdDLEVBQVUsbUJBQXdDO1FBRDFGLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDL0Ysd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFOdkcsc0JBQWlCLEdBQXFCLEVBQUUsQ0FBQztRQUN6Qyx1QkFBa0IsR0FBcUIsRUFBRSxDQUFDO1FBQzFDLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBS3RDLE1BQU0sNkJBQTZCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFD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clZpZXdDaGVja2VkLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIGFzIG9ic2VydmFibGVPZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQW5ub3VuY2VtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Fubm91bmNlbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZm9ybS9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtUGFnZUJ1dHRvbiwgRm9ybVBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaW50ZXJmYWNlcy9mb3JtLXBhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBXZWJBcGlGb3JtUmVzcG9uc2UsIFdlYkFwaVNhdmVSZXNwb25zZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FkYXB0ZXJzL3dlYi1hcGktY3J1ZC5hZGFwdGVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFudGxlLWZvcm0tcGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mb3JtLXBhZ2UuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG5cbiAgQFZpZXdDaGlsZChEeW5hbWljRm9ybUNvbXBvbmVudCkgZHluYW1pY0Zvcm0hOiBEeW5hbWljRm9ybUNvbXBvbmVudDtcblxuICBwdWJsaWMgZm9ybVBhZ2VTZXJ2aWNlOiBGb3JtUGFnZVNlcnZpY2U7XG5cbiAgcHJpdmF0ZSBpZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIGNsb25lSWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHVibGljIGhlYWRlcjogYW55O1xuICBwdWJsaWMgY29udGVudCQhOiBPYnNlcnZhYmxlPGFueT47XG4gIHB1YmxpYyBib3R0b21MZWZ0QnV0dG9uczogRm9ybVBhZ2VCdXR0b25bXSA9IFtdO1xuICBwdWJsaWMgYm90dG9tUmlnaHRCdXR0b25zOiBGb3JtUGFnZUJ1dHRvbltdID0gW107XG4gIHB1YmxpYyBpc1RhYmJlZENvbnRlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGlzU2F2ZUluUHJvZ3Jlc3MhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgIHByaXZhdGUgYW5ub3VuY2VtZW50U2VydmljZTogQW5ub3VuY2VtZW50U2VydmljZSwgcHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7XG4gICAgY29uc3QgZm9ybVBhZ2VTZXJ2aWNlSW5qZWN0aW9uVG9rZW4gPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGFbJ2Zvcm1QYWdlU2VydmljZSddO1xuICAgIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8Rm9ybVBhZ2VTZXJ2aWNlPihmb3JtUGFnZVNlcnZpY2VJbmplY3Rpb25Ub2tlbik7XG4gICAgdGhpcy5pc1RhYmJlZENvbnRlbnQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGFbJ2lzVGFiYmVkQ29udGVudCddO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZS5wYXJhbXMuc3Vic2NyaWJlKHBhcmFtcyA9PiB7XG4gICAgICB0aGlzLmlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbJ2lkJ107XG4gICAgICB0aGlzLmNsb25lSWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtc1snY2xvbmVJZCddO1xuXG4gICAgICBsZXQgcmVzcG9uc2VPYnNlcnZhYmxlID0gbnVsbDtcbiAgICAgIGlmICh0aGlzLmNsb25lSWQpIHtcbiAgICAgICAgcmVzcG9uc2VPYnNlcnZhYmxlID0gdGhpcy5mb3JtUGFnZVNlcnZpY2UuZ2V0TmV3KHsgY2xvbmVfaWQ6IHRoaXMuY2xvbmVJZCB9KTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICByZXNwb25zZU9ic2VydmFibGUgPSB0aGlzLmlkID8gdGhpcy5mb3JtUGFnZVNlcnZpY2UuZ2V0RWRpdCh0aGlzLmlkKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1QYWdlU2VydmljZS5nZXROZXcoKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jb250ZW50JCA9IHJlc3BvbnNlT2JzZXJ2YWJsZS5waXBlKFxuICAgICAgICBtYXAoKHJlczogV2ViQXBpRm9ybVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5oZWFkZXIgPSByZXMuaGVhZGVyO1xuICAgICAgICAgIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLm9uRm9ybUNvbnRlbnRMb2FkZWQocmVzLmNvbnRlbnQpO1xuICAgICAgICAgIHRoaXMubG9hZEFkZGl0aW9uYWxCdXR0b25zKHJlcy5jb250ZW50LmRhdGEpO1xuICAgICAgICAgIHJldHVybiByZXMuY29udGVudDtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBsb2FkQWRkaXRpb25hbEJ1dHRvbnMocmVjb3JkOiBhbnkpIHtcbiAgICBsZXQgYWRkaXRpb25hbEZvcm1QYWdlQnV0dG9ucyA9IHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLmFkZGl0aW9uYWxGb3JtUGFnZUJ1dHRvbnMocmVjb3JkKTtcbiAgICB0aGlzLmJvdHRvbUxlZnRCdXR0b25zID0gYWRkaXRpb25hbEZvcm1QYWdlQnV0dG9ucy5maWx0ZXIoYnV0dG9uID0+IHtcbiAgICAgIHJldHVybiBidXR0b24ucG9zaXRpb24gPT0gJ2xlZnQnO1xuICAgIH0pO1xuICAgIHRoaXMuYm90dG9tUmlnaHRCdXR0b25zID0gYWRkaXRpb25hbEZvcm1QYWdlQnV0dG9ucy5maWx0ZXIoYnV0dG9uID0+IHtcbiAgICAgIHJldHVybiBidXR0b24ucG9zaXRpb24gPT0gJ3JpZ2h0JztcbiAgICB9KTtcbiAgfVxuXG4gIG9uQ2FuY2VsQ2xpY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmJhY2soKTtcbiAgfVxuXG4gIG9uU2F2ZUNsaWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gdHJ1ZTtcblxuICAgIGxldCB2YWx1ZSA9IHRoaXMuZHluYW1pY0Zvcm0udmFsdWU7XG4gICAgdGhpcy5mb3JtUGFnZVNlcnZpY2Uuc2F2ZShcbiAgICAgIHRoaXMuaWQsIHZhbHVlLFxuICAgICAgKHJlczogV2ViQXBpU2F2ZVJlc3BvbnNlKSA9PiB7IHRoaXMub25TYXZlU3VjY2VzcyhyZXMpOyB9LFxuICAgICAgKHJlczogV2ViQXBpU2F2ZVJlc3BvbnNlKSA9PiB7IHRoaXMub25TYXZlRmFpbHVyZShyZXMpOyB9XG4gICAgKTtcbiAgfVxuXG4gIG9uU2F2ZVN1Y2Nlc3MocmVzOiBXZWJBcGlTYXZlUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aGlzLmlkID0gcmVzLmlkO1xuICAgIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLm9uRm9ybUNvbnRlbnRMb2FkZWQocmVzLmNvbnRlbnQpO1xuICAgIHRoaXMubG9hZEFkZGl0aW9uYWxCdXR0b25zKHJlcy5jb250ZW50LmRhdGEpO1xuICAgIHRoaXMuY29udGVudCQgPSBvYnNlcnZhYmxlT2YocmVzLmNvbnRlbnQpO1xuICAgIHRoaXMuYW5ub3VuY2VtZW50U2VydmljZS5zdWNjZXNzKCdtYW50bGUubWVzc2FnZXMuc2F2ZV9zdWNjZXNzZnVsJyk7XG4gICAgdGhpcy5iYWNrKCk7XG5cbiAgICB0aGlzLmlzU2F2ZUluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgfVxuXG4gIG9uU2F2ZUZhaWx1cmUocmVzOiBXZWJBcGlTYXZlUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBpZiAocmVzLmNvbnRlbnQpIHtcbiAgICAgIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLm9uRm9ybUNvbnRlbnRMb2FkZWQocmVzLmNvbnRlbnQpO1xuICAgICAgdGhpcy5jb250ZW50JCA9IG9ic2VydmFibGVPZihyZXMuY29udGVudCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5iYWNrKCk7XG4gICAgfVxuXG4gICAgaWYgKHJlcy5jb25maXJtYXRpb25SZXF1ZXN0KSB7XG4gICAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybVNhdmUoXG4gICAgICAgIChjb25maXJtZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICByZXMuY29uZmlybWF0aW9uUmVxdWVzdD8ub25Db25maXJtYXRpb25HaXZlbihjb25maXJtZWQpO1xuICAgICAgICAgIGlmIChjb25maXJtZWQpIHRoaXMub25TYXZlQ2xpY2tlZCgpO1xuICAgICAgICAgIGVsc2UgdGhpcy5hbm5vdW5jZW1lbnRTZXJ2aWNlLmVycm9yKCdtYW50bGUubWVzc2FnZXMuc2F2ZV9mYWlsZWQnKTtcbiAgICAgICAgfSxcbiAgICAgICAgeyBtZXNzYWdlOiByZXMuY29uZmlybWF0aW9uUmVxdWVzdC5tZXNzYWdlIH1cbiAgICAgICk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5hbm5vdW5jZW1lbnRTZXJ2aWNlLmVycm9yKCdtYW50bGUubWVzc2FnZXMuc2F2ZV9mYWlsZWQnKTtcbiAgICB9XG5cbiAgICBpZiAoISFyZXMuYWxlcnQ/Lm1lc3NhZ2UpIHtcbiAgICAgIHRoaXMuYW5ub3VuY2VtZW50U2VydmljZS5lcnJvcihyZXMuYWxlcnQubWVzc2FnZSk7XG4gICAgfVxuXG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBiYWNrKCkge1xuICAgIGlmICh0aGlzLmlkKSB0aGlzLmZvcm1QYWdlU2VydmljZS5vcGVuUmVjb3JkKHsgaWQ6IHRoaXMuaWQgfSk7XG4gICAgZWxzZSBpZiAodGhpcy5jbG9uZUlkKSB0aGlzLmZvcm1QYWdlU2VydmljZS5vcGVuUmVjb3JkKHsgaWQ6IHRoaXMuY2xvbmVJZCB9KTtcbiAgICBlbHNlIHRoaXMuZm9ybVBhZ2VTZXJ2aWNlLm9wZW5MaXN0KCk7XG4gIH1cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdHJldGNoXCIgY2xhc3M9XCJmdWxsLWhlaWdodC1taW5cIiBbbmdDbGFzc109XCJ7J3BhZ2UgZnVsbC1oZWlnaHQtb25seSB2ZXJ0aWNhbGx5LXNjcm9sbGFibGUnOiAhaXNUYWJiZWRDb250ZW50fVwiPlxuICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgY2xhc3M9XCJwYWdlLWhlYWRlclwiPlxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwic3RyZXRjaFwiIGZ4TGF5b3V0R2FwPVwiMTZweFwiPlxuICAgICAgPG1hbnRsZS1jb250ZW50LXRpdGxlICpuZ0lmPVwiaGVhZGVyXCIgZnhGbGV4PVwiMCAwIGF1dG9cIiBbdGh1bWJuYWlsXT1cImhlYWRlci50aHVtYm5haWxcIiBbdGl0bGVdPVwiaGVhZGVyLnRpdGxlXCI+PC9tYW50bGUtY29udGVudC10aXRsZT5cblxuICAgICAgPGRpdiBmeEZsZXg9XCIxIDEgYXV0b1wiPjwvZGl2PlxuXG4gICAgICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgKm5nSWY9XCIhZm9ybVBhZ2VTZXJ2aWNlLmhpZGVDYW5jZWxCdXR0b25cIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsQ2xpY2tlZCgpXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtUGFnZVNlcnZpY2UuaXNDb21taXRJblByb2dyZXNzXCI+XG4gICAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBmeEZsZXg9XCIxIDAgYXV0b1wiIGNsYXNzPVwibWFpbi1jb250ZW50XCI+XG4gICAgPG1hbnRsZS1keW5hbWljLWZvcm0gI2R5bmFtaWNGb3JtIFtjb250ZW50XT1cImNvbnRlbnQkIHwgYXN5bmNcIiBbZm9ybVBhZ2VTZXJ2aWNlXT1cImZvcm1QYWdlU2VydmljZVwiPjwvbWFudGxlLWR5bmFtaWMtZm9ybT5cbiAgPC9kaXY+XG5cbiAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiIGNsYXNzPVwicGFnZS1mb290ZXJcIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBmeExheW91dEdhcD1cIjE2cHhcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBib3R0b21MZWZ0QnV0dG9uc1wiPlxuICAgICAgICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgKm5nSWY9XCJidXR0b24uc2hvd1wiPlxuICAgICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgICAgY29sb3I9XCJ7eyBidXR0b24uY29sb3IgfX1cIlxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhZGRpdGlvbmFsLWJ1dHRvblwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2luLXByb2dyZXNzLWJ1dHRvbic6IGJ1dHRvbi5pc0luUHJvZ3Jlc3MoKSB9XCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1QYWdlU2VydmljZS5pc0NvbW1pdEluUHJvZ3Jlc3MgfHwgYnV0dG9uLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImJ1dHRvbi5vbkNsaWNrKGR5bmFtaWNGb3JtPy52YWx1ZSlcIj5cbiAgICAgICAgICAgIHt7IGJ1dHRvbi5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPG1hdC1zcGlubmVyICpuZ0lmPVwiYnV0dG9uLmlzSW5Qcm9ncmVzcygpXCIgbWF0U3VmZml4IFtkaWFtZXRlcl09XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxkaXYgZnhGbGV4PVwiMSAxIGF1dG9cIj48L2Rpdj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGJvdHRvbVJpZ2h0QnV0dG9uc1wiPlxuICAgICAgICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgKm5nSWY9XCJidXR0b24uc2hvd1wiPlxuICAgICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgICAgY29sb3I9XCJ7eyBidXR0b24uY29sb3IgfX1cIlxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhZGRpdGlvbmFsLWJ1dHRvblwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2luLXByb2dyZXNzLWJ1dHRvbic6IGJ1dHRvbi5pc0luUHJvZ3Jlc3MoKSB9XCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1QYWdlU2VydmljZS5pc0NvbW1pdEluUHJvZ3Jlc3MgfHwgYnV0dG9uLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImJ1dHRvbi5vbkNsaWNrKGR5bmFtaWNGb3JtPy52YWx1ZSlcIj5cbiAgICAgICAgICAgIHt7IGJ1dHRvbi5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPG1hdC1zcGlubmVyICpuZ0lmPVwiYnV0dG9uLmlzSW5Qcm9ncmVzcygpXCIgbWF0U3VmZml4IFtkaWFtZXRlcl09XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIiAqbmdJZj1cImZvcm1QYWdlU2VydmljZS5zaG93U2F2ZUJ1dHRvblwiPlxuICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cInNhdmUtYnV0dG9uXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2luLXByb2dyZXNzLWJ1dHRvbic6IGlzU2F2ZUluUHJvZ3Jlc3MgfVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZm9ybVBhZ2VTZXJ2aWNlLmlzQ29tbWl0SW5Qcm9ncmVzcyB8fCAhZHluYW1pY0Zvcm0/LnZhbGlkXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNhdmVDbGlja2VkKClcIj5cbiAgICAgICAgICB7eyAnbWFudGxlLmJ1dHRvbnMuc2F2ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8bWF0LXNwaW5uZXIgKm5nSWY9XCJpc1NhdmVJblByb2dyZXNzXCIgbWF0U3VmZml4IFtkaWFtZXRlcl09XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -10,6 +10,7 @@ import * as i7 from "@angular/flex-layout/flex";
10
10
  import * as i8 from "@angular/common";
11
11
  import * as i9 from "@angular/flex-layout/extended";
12
12
  import * as i10 from "@angular/material/form-field";
13
+ import * as i11 from "@ngx-translate/core";
13
14
  export class LayoutEditorPageComponent {
14
15
  constructor(route, injector, announcementService) {
15
16
  this.route = route;
@@ -21,17 +22,20 @@ export class LayoutEditorPageComponent {
21
22
  this.isTabbedContent = this.route.snapshot.data['isTabbedContent'];
22
23
  }
23
24
  ngOnInit() {
24
- this.loadData();
25
+ this.pullContent();
25
26
  }
26
- loadData() {
27
+ pullContent() {
27
28
  this.route.params.subscribe(params => {
28
29
  this.id = this.route.snapshot.params['id'];
29
30
  this.layoutEditorPageService.getEdit(this.id).subscribe((res) => {
30
- this.header = res.header;
31
- this.content = res.content;
31
+ this.loadContent(res);
32
32
  });
33
33
  });
34
34
  }
35
+ loadContent(response) {
36
+ this.header = response.header;
37
+ this.content = response.content;
38
+ }
35
39
  onSaveClicked() {
36
40
  this.isSaveInProgress = true;
37
41
  this.layoutEditorPageService.save(this.id, this.content.data, (res) => { this.onSaveSuccess(res); }, (res) => { this.onSaveFailure(res); });
@@ -39,7 +43,7 @@ export class LayoutEditorPageComponent {
39
43
  onSaveSuccess(res) {
40
44
  this.id = res.id;
41
45
  this.content = res.content;
42
- this.announcementService.success('Save successful!');
46
+ this.announcementService.success('mantle.messages.save_successful');
43
47
  this.back();
44
48
  this.isSaveInProgress = false;
45
49
  }
@@ -50,7 +54,7 @@ export class LayoutEditorPageComponent {
50
54
  else {
51
55
  this.back();
52
56
  }
53
- this.announcementService.error('Save failed!');
57
+ this.announcementService.error('mantle.messages.save_failed');
54
58
  this.isSaveInProgress = false;
55
59
  }
56
60
  back() {
@@ -58,7 +62,7 @@ export class LayoutEditorPageComponent {
58
62
  }
59
63
  }
60
64
  LayoutEditorPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: LayoutEditorPageComponent, deps: [{ token: i1.ActivatedRoute }, { token: i0.Injector }, { token: i2.AnnouncementService }], target: i0.ɵɵFactoryTarget.Component });
61
- LayoutEditorPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: LayoutEditorPageComponent, selector: "mantle-layout-editor-page", ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" class=\"full-height-min\" [ngClass]=\"{'page full-height-only vertically-scrollable': !isTabbedContent}\">\n <div fxFlex=\"0 0 auto\" class=\"page-header\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center start\" fxLayoutGap=\"16px\">\n <div fxFlex=\"1 1 auto\">\n <mantle-content-title *ngIf=\"header\" [title]=\"header.title\"></mantle-content-title>\n </div>\n </div>\n </div>\n\n <div fxFlex=\"1 0 auto\" class=\"main-content\">\n <mantle-dynamic-layout-editor [content]=\"content\" [layoutEditorPageService]=\"layoutEditorPageService\"></mantle-dynamic-layout-editor>\n </div>\n\n <div fxFlex=\"0 0 auto\" class=\"page-footer\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" fxLayoutGap=\"16px\">\n <div fxFlex=\"1 1 auto\"></div>\n\n <div fxFlex=\"0 0 auto\" *ngIf=\"layoutEditorPageService.showSaveButton\">\n <button mat-raised-button\n color=\"primary\"\n type=\"button\"\n class=\"save-button\"\n [ngClass]=\"{ 'in-progress-button': isSaveInProgress }\"\n [disabled]=\"layoutEditorPageService.isCommitInProgress\"\n (click)=\"onSaveClicked()\"> <!-- TODO || !dynamicForm?.valid -->\n Save\n <mat-spinner *ngIf=\"isSaveInProgress\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".save-button{width:140px}.in-progress-button .mat-spinner{position:absolute;top:10px;right:12px}\n"], components: [{ type: i3.ContentTitleComponent, selector: "mantle-content-title", inputs: ["thumbnail", "title"] }, { type: i4.DynamicLayoutEditorComponent, selector: "mantle-dynamic-layout-editor", inputs: ["layoutEditorPageService", "content"] }, { type: i5.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"] }, { type: i6.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i7.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"] }, { type: i7.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"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i7.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"] }, { type: i7.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"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.MatSuffix, selector: "[matSuffix]" }] });
65
+ LayoutEditorPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: LayoutEditorPageComponent, selector: "mantle-layout-editor-page", ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" class=\"full-height-min\" [ngClass]=\"{'page full-height-only vertically-scrollable': !isTabbedContent}\">\n <div fxFlex=\"0 0 auto\" class=\"page-header\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center start\" fxLayoutGap=\"16px\">\n <div fxFlex=\"1 1 auto\">\n <mantle-content-title *ngIf=\"header\" [title]=\"header.title\"></mantle-content-title>\n </div>\n </div>\n </div>\n\n <div fxFlex=\"1 0 auto\" class=\"main-content\">\n <mantle-dynamic-layout-editor [content]=\"content\" [layoutEditorPageService]=\"layoutEditorPageService\"></mantle-dynamic-layout-editor>\n </div>\n\n <div fxFlex=\"0 0 auto\" class=\"page-footer\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" fxLayoutGap=\"16px\">\n <div fxFlex=\"1 1 auto\"></div>\n\n <div fxFlex=\"0 0 auto\" *ngIf=\"layoutEditorPageService.showSaveButton\">\n <button mat-raised-button\n color=\"primary\"\n type=\"button\"\n class=\"save-button\"\n [ngClass]=\"{ 'in-progress-button': isSaveInProgress }\"\n [disabled]=\"layoutEditorPageService.isCommitInProgress\"\n (click)=\"onSaveClicked()\"> <!-- TODO || !dynamicForm?.valid -->\n {{ 'mantle.buttons.save' | translate }}\n <mat-spinner *ngIf=\"isSaveInProgress\" matSuffix [diameter]=\"16\"></mat-spinner>\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".save-button{width:140px}.in-progress-button .mat-spinner{position:absolute;top:10px;right:12px}\n"], components: [{ type: i3.ContentTitleComponent, selector: "mantle-content-title", inputs: ["thumbnail", "title"] }, { type: i4.DynamicLayoutEditorComponent, selector: "mantle-dynamic-layout-editor", inputs: ["layoutEditorPageService", "content"] }, { type: i5.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"] }, { type: i6.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i7.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"] }, { type: i7.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"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i7.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"] }, { type: i7.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"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.MatSuffix, selector: "[matSuffix]" }], pipes: { "translate": i11.TranslatePipe } });
62
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: LayoutEditorPageComponent, decorators: [{
63
67
  type: Component,
64
68
  args: [{
@@ -67,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImpor
67
71
  styleUrls: ['./layout-editor-page.component.scss']
68
72
  }]
69
73
  }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i0.Injector }, { type: i2.AnnouncementService }]; } });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWVkaXRvci1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvbGF5b3V0LWVkaXRvci1wYWdlL2xheW91dC1lZGl0b3ItcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2xheW91dC1lZGl0b3ItcGFnZS9sYXlvdXQtZWRpdG9yLXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7OztBQVc1RCxNQUFNLE9BQU8seUJBQXlCO0lBVXBDLFlBQW9CLEtBQXFCLEVBQVUsUUFBa0IsRUFDakQsbUJBQXdDO1FBRHhDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNqRCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBSnJELG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBS3RDLE1BQU0scUNBQXFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDbEcsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUEwQixxQ0FBcUMsQ0FBQyxDQUFDO1FBQ2pILElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFM0MsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUNyRCxDQUFDLEdBQXVCLEVBQUUsRUFBRTtnQkFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO2dCQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUM7WUFDN0IsQ0FBQyxDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztRQUU3QixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUMvQixJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUMxQixDQUFDLEdBQXVCLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3pELENBQUMsR0FBdUIsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsR0FBdUI7UUFDbkMsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUMzQixJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRVosSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQXdCO1FBQ3BDLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRTtZQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztTQUM1QjthQUNJO1lBQ0gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2I7UUFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRS9DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUMsQ0FBQzs7c0hBcEVVLHlCQUF5QjswR0FBekIseUJBQXlCLGlFQ1h0QyxxNkNBZ0NBOzJGRHJCYSx5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsV0FBVyxFQUFFLHFDQUFxQztvQkFDbEQsU0FBUyxFQUFFLENBQUMscUNBQXFDLENBQUM7aUJBQ25EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBbm5vdW5jZW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYW5ub3VuY2VtZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgTGF5b3V0RWRpdG9yUGFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pbnRlcmZhY2VzL2xheW91dC1lZGl0b3ItcGFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFdlYkFwaUZvcm1SZXNwb25zZSwgV2ViQXBpU2F2ZVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWRhcHRlcnMvd2ViLWFwaS1jcnVkLmFkYXB0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYW50bGUtbGF5b3V0LWVkaXRvci1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC1lZGl0b3ItcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xheW91dC1lZGl0b3ItcGFnZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExheW91dEVkaXRvclBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHB1YmxpYyBsYXlvdXRFZGl0b3JQYWdlU2VydmljZTogTGF5b3V0RWRpdG9yUGFnZVNlcnZpY2U7XG5cbiAgcHVibGljIGlkITogc3RyaW5nO1xuICBwdWJsaWMgaGVhZGVyOiBhbnk7XG4gIHB1YmxpYyBjb250ZW50ITogYW55O1xuICBwdWJsaWMgaXNUYWJiZWRDb250ZW50OiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc1NhdmVJblByb2dyZXNzITogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgIHByaXZhdGUgYW5ub3VuY2VtZW50U2VydmljZTogQW5ub3VuY2VtZW50U2VydmljZSkge1xuICAgIGNvbnN0IGxheW91dEVkaXRvclBhZ2VTZXJ2aWNlSW5qZWN0aW9uVG9rZW4gPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGFbJ2xheW91dEVkaXRvclBhZ2VTZXJ2aWNlJ107XG4gICAgdGhpcy5sYXlvdXRFZGl0b3JQYWdlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0PExheW91dEVkaXRvclBhZ2VTZXJ2aWNlPihsYXlvdXRFZGl0b3JQYWdlU2VydmljZUluamVjdGlvblRva2VuKTtcbiAgICB0aGlzLmlzVGFiYmVkQ29udGVudCA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YVsnaXNUYWJiZWRDb250ZW50J107XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWREYXRhKCk7XG4gIH1cblxuICBsb2FkRGF0YSgpIHtcbiAgICB0aGlzLnJvdXRlLnBhcmFtcy5zdWJzY3JpYmUocGFyYW1zID0+IHtcbiAgICAgIHRoaXMuaWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtc1snaWQnXTtcblxuICAgICAgdGhpcy5sYXlvdXRFZGl0b3JQYWdlU2VydmljZS5nZXRFZGl0KHRoaXMuaWQpLnN1YnNjcmliZShcbiAgICAgICAgKHJlczogV2ViQXBpRm9ybVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5oZWFkZXIgPSByZXMuaGVhZGVyO1xuICAgICAgICAgIHRoaXMuY29udGVudCA9IHJlcy5jb250ZW50O1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgb25TYXZlQ2xpY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzU2F2ZUluUHJvZ3Jlc3MgPSB0cnVlO1xuXG4gICAgdGhpcy5sYXlvdXRFZGl0b3JQYWdlU2VydmljZS5zYXZlKFxuICAgICAgdGhpcy5pZCwgdGhpcy5jb250ZW50LmRhdGEsXG4gICAgICAocmVzOiBXZWJBcGlTYXZlUmVzcG9uc2UpID0+IHsgdGhpcy5vblNhdmVTdWNjZXNzKHJlcyk7IH0sXG4gICAgICAocmVzOiBXZWJBcGlTYXZlUmVzcG9uc2UpID0+IHsgdGhpcy5vblNhdmVGYWlsdXJlKHJlcyk7IH1cbiAgICApO1xuICB9XG5cbiAgb25TYXZlU3VjY2VzcyhyZXM6IFdlYkFwaVNhdmVSZXNwb25zZSk6IHZvaWQge1xuICAgIHRoaXMuaWQgPSByZXMuaWQhO1xuICAgIHRoaXMuY29udGVudCA9IHJlcy5jb250ZW50O1xuICAgIHRoaXMuYW5ub3VuY2VtZW50U2VydmljZS5zdWNjZXNzKCdTYXZlIHN1Y2Nlc3NmdWwhJyk7XG4gICAgdGhpcy5iYWNrKCk7XG5cbiAgICB0aGlzLmlzU2F2ZUluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgfVxuXG4gIG9uU2F2ZUZhaWx1cmUocmVzOiAgV2ViQXBpU2F2ZVJlc3BvbnNlKTogdm9pZCB7XG4gICAgaWYgKHJlcy5jb250ZW50KSB7XG4gICAgICB0aGlzLmNvbnRlbnQgPSByZXMuY29udGVudDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmJhY2soKTtcbiAgICB9XG5cbiAgICB0aGlzLmFubm91bmNlbWVudFNlcnZpY2UuZXJyb3IoJ1NhdmUgZmFpbGVkIScpO1xuXG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBiYWNrKCkge1xuICAgIHRoaXMubGF5b3V0RWRpdG9yUGFnZVNlcnZpY2Uub3Blbkxpc3QoKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbj1cInN0cmV0Y2hcIiBjbGFzcz1cImZ1bGwtaGVpZ2h0LW1pblwiIFtuZ0NsYXNzXT1cInsncGFnZSBmdWxsLWhlaWdodC1vbmx5IHZlcnRpY2FsbHktc2Nyb2xsYWJsZSc6ICFpc1RhYmJlZENvbnRlbnR9XCI+XG4gIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIiBjbGFzcz1cInBhZ2UtaGVhZGVyXCI+XG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgc3RhcnRcIiBmeExheW91dEdhcD1cIjE2cHhcIj5cbiAgICAgIDxkaXYgZnhGbGV4PVwiMSAxIGF1dG9cIj5cbiAgICAgICAgPG1hbnRsZS1jb250ZW50LXRpdGxlICpuZ0lmPVwiaGVhZGVyXCIgW3RpdGxlXT1cImhlYWRlci50aXRsZVwiPjwvbWFudGxlLWNvbnRlbnQtdGl0bGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBmeEZsZXg9XCIxIDAgYXV0b1wiIGNsYXNzPVwibWFpbi1jb250ZW50XCI+XG4gICAgPG1hbnRsZS1keW5hbWljLWxheW91dC1lZGl0b3IgW2NvbnRlbnRdPVwiY29udGVudFwiIFtsYXlvdXRFZGl0b3JQYWdlU2VydmljZV09XCJsYXlvdXRFZGl0b3JQYWdlU2VydmljZVwiPjwvbWFudGxlLWR5bmFtaWMtbGF5b3V0LWVkaXRvcj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiIGNsYXNzPVwicGFnZS1mb290ZXJcIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBmeExheW91dEdhcD1cIjE2cHhcIj5cbiAgICAgIDxkaXYgZnhGbGV4PVwiMSAxIGF1dG9cIj48L2Rpdj5cblxuICAgICAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiICpuZ0lmPVwibGF5b3V0RWRpdG9yUGFnZVNlcnZpY2Uuc2hvd1NhdmVCdXR0b25cIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpbi1wcm9ncmVzcy1idXR0b24nOiBpc1NhdmVJblByb2dyZXNzIH1cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxheW91dEVkaXRvclBhZ2VTZXJ2aWNlLmlzQ29tbWl0SW5Qcm9ncmVzc1wiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TYXZlQ2xpY2tlZCgpXCI+IDwhLS0gVE9ETyB8fCAhZHluYW1pY0Zvcm0/LnZhbGlkIC0tPlxuICAgICAgICAgIFNhdmVcbiAgICAgICAgICA8bWF0LXNwaW5uZXIgKm5nSWY9XCJpc1NhdmVJblByb2dyZXNzXCIgbWF0U3VmZml4IFtkaWFtZXRlcl09XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWVkaXRvci1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvbGF5b3V0LWVkaXRvci1wYWdlL2xheW91dC1lZGl0b3ItcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2xheW91dC1lZGl0b3ItcGFnZS9sYXlvdXQtZWRpdG9yLXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFXNUQsTUFBTSxPQUFPLHlCQUF5QjtJQVVwQyxZQUFvQixLQUFxQixFQUFVLFFBQWtCLEVBQ2pELG1CQUF3QztRQUR4QyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDakQsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUpyRCxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUt0QyxNQUFNLHFDQUFxQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ2xHLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBMEIscUNBQXFDLENBQUMsQ0FBQztRQUNqSCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ25DLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTNDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FDckQsQ0FBQyxHQUF1QixFQUFFLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEIsQ0FBQyxDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBYTtRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztRQUU3QixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUMvQixJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUMxQixDQUFDLEdBQXVCLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3pELENBQUMsR0FBdUIsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsR0FBdUI7UUFDbkMsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUMzQixJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRVosSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQXdCO1FBQ3BDLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRTtZQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztTQUM1QjthQUNJO1lBQ0gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2I7UUFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQyxDQUFDOztzSEF4RVUseUJBQXlCOzBHQUF6Qix5QkFBeUIsaUVDWHRDLHc4Q0FnQ0E7MkZEckJhLHlCQUF5QjtrQkFMckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxXQUFXLEVBQUUscUNBQXFDO29CQUNsRCxTQUFTLEVBQUUsQ0FBQyxxQ0FBcUMsQ0FBQztpQkFDbkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFubm91bmNlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hbm5vdW5jZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBMYXlvdXRFZGl0b3JQYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ludGVyZmFjZXMvbGF5b3V0LWVkaXRvci1wYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgV2ViQXBpRm9ybVJlc3BvbnNlLCBXZWJBcGlTYXZlUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hZGFwdGVycy93ZWItYXBpLWNydWQuYWRhcHRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1sYXlvdXQtZWRpdG9yLXBhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5b3V0LWVkaXRvci1wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5b3V0LWVkaXRvci1wYWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0RWRpdG9yUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIGxheW91dEVkaXRvclBhZ2VTZXJ2aWNlOiBMYXlvdXRFZGl0b3JQYWdlU2VydmljZTtcblxuICBwdWJsaWMgaWQhOiBzdHJpbmc7XG4gIHB1YmxpYyBoZWFkZXI6IGFueTtcbiAgcHVibGljIGNvbnRlbnQhOiBhbnk7XG4gIHB1YmxpYyBpc1RhYmJlZENvbnRlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGlzU2F2ZUluUHJvZ3Jlc3MhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhbm5vdW5jZW1lbnRTZXJ2aWNlOiBBbm5vdW5jZW1lbnRTZXJ2aWNlKSB7XG4gICAgY29uc3QgbGF5b3V0RWRpdG9yUGFnZVNlcnZpY2VJbmplY3Rpb25Ub2tlbiA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YVsnbGF5b3V0RWRpdG9yUGFnZVNlcnZpY2UnXTtcbiAgICB0aGlzLmxheW91dEVkaXRvclBhZ2VTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8TGF5b3V0RWRpdG9yUGFnZVNlcnZpY2U+KGxheW91dEVkaXRvclBhZ2VTZXJ2aWNlSW5qZWN0aW9uVG9rZW4pO1xuICAgIHRoaXMuaXNUYWJiZWRDb250ZW50ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydpc1RhYmJlZENvbnRlbnQnXTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucHVsbENvbnRlbnQoKTtcbiAgfVxuXG4gIHB1bGxDb250ZW50KCkge1xuICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgdGhpcy5pZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zWydpZCddO1xuXG4gICAgICB0aGlzLmxheW91dEVkaXRvclBhZ2VTZXJ2aWNlLmdldEVkaXQodGhpcy5pZCkuc3Vic2NyaWJlKFxuICAgICAgICAocmVzOiBXZWJBcGlGb3JtUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB0aGlzLmxvYWRDb250ZW50KHJlcyk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBsb2FkQ29udGVudChyZXNwb25zZTogYW55KSB7XG4gICAgdGhpcy5oZWFkZXIgPSByZXNwb25zZS5oZWFkZXI7XG4gICAgdGhpcy5jb250ZW50ID0gcmVzcG9uc2UuY29udGVudDtcbiAgfVxuXG4gIG9uU2F2ZUNsaWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gdHJ1ZTtcblxuICAgIHRoaXMubGF5b3V0RWRpdG9yUGFnZVNlcnZpY2Uuc2F2ZShcbiAgICAgIHRoaXMuaWQsIHRoaXMuY29udGVudC5kYXRhLFxuICAgICAgKHJlczogV2ViQXBpU2F2ZVJlc3BvbnNlKSA9PiB7IHRoaXMub25TYXZlU3VjY2VzcyhyZXMpOyB9LFxuICAgICAgKHJlczogV2ViQXBpU2F2ZVJlc3BvbnNlKSA9PiB7IHRoaXMub25TYXZlRmFpbHVyZShyZXMpOyB9XG4gICAgKTtcbiAgfVxuXG4gIG9uU2F2ZVN1Y2Nlc3MocmVzOiBXZWJBcGlTYXZlUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aGlzLmlkID0gcmVzLmlkITtcbiAgICB0aGlzLmNvbnRlbnQgPSByZXMuY29udGVudDtcbiAgICB0aGlzLmFubm91bmNlbWVudFNlcnZpY2Uuc3VjY2VzcygnbWFudGxlLm1lc3NhZ2VzLnNhdmVfc3VjY2Vzc2Z1bCcpO1xuICAgIHRoaXMuYmFjaygpO1xuXG4gICAgdGhpcy5pc1NhdmVJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBvblNhdmVGYWlsdXJlKHJlczogIFdlYkFwaVNhdmVSZXNwb25zZSk6IHZvaWQge1xuICAgIGlmIChyZXMuY29udGVudCkge1xuICAgICAgdGhpcy5jb250ZW50ID0gcmVzLmNvbnRlbnQ7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5iYWNrKCk7XG4gICAgfVxuXG4gICAgdGhpcy5hbm5vdW5jZW1lbnRTZXJ2aWNlLmVycm9yKCdtYW50bGUubWVzc2FnZXMuc2F2ZV9mYWlsZWQnKTtcblxuICAgIHRoaXMuaXNTYXZlSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICB9XG5cbiAgYmFjaygpIHtcbiAgICB0aGlzLmxheW91dEVkaXRvclBhZ2VTZXJ2aWNlLm9wZW5MaXN0KCk7XG4gIH1cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdHJldGNoXCIgY2xhc3M9XCJmdWxsLWhlaWdodC1taW5cIiBbbmdDbGFzc109XCJ7J3BhZ2UgZnVsbC1oZWlnaHQtb25seSB2ZXJ0aWNhbGx5LXNjcm9sbGFibGUnOiAhaXNUYWJiZWRDb250ZW50fVwiPlxuICA8ZGl2IGZ4RmxleD1cIjAgMCBhdXRvXCIgY2xhc3M9XCJwYWdlLWhlYWRlclwiPlxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIHN0YXJ0XCIgZnhMYXlvdXRHYXA9XCIxNnB4XCI+XG4gICAgICA8ZGl2IGZ4RmxleD1cIjEgMSBhdXRvXCI+XG4gICAgICAgIDxtYW50bGUtY29udGVudC10aXRsZSAqbmdJZj1cImhlYWRlclwiIFt0aXRsZV09XCJoZWFkZXIudGl0bGVcIj48L21hbnRsZS1jb250ZW50LXRpdGxlPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgZnhGbGV4PVwiMSAwIGF1dG9cIiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxuICAgIDxtYW50bGUtZHluYW1pYy1sYXlvdXQtZWRpdG9yIFtjb250ZW50XT1cImNvbnRlbnRcIiBbbGF5b3V0RWRpdG9yUGFnZVNlcnZpY2VdPVwibGF5b3V0RWRpdG9yUGFnZVNlcnZpY2VcIj48L21hbnRsZS1keW5hbWljLWxheW91dC1lZGl0b3I+XG4gIDwvZGl2PlxuXG4gIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIiBjbGFzcz1cInBhZ2UtZm9vdGVyXCI+XG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCIgZnhMYXlvdXRHYXA9XCIxNnB4XCI+XG4gICAgICA8ZGl2IGZ4RmxleD1cIjEgMSBhdXRvXCI+PC9kaXY+XG5cbiAgICAgIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIiAqbmdJZj1cImxheW91dEVkaXRvclBhZ2VTZXJ2aWNlLnNob3dTYXZlQnV0dG9uXCI+XG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwic2F2ZS1idXR0b25cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaW4tcHJvZ3Jlc3MtYnV0dG9uJzogaXNTYXZlSW5Qcm9ncmVzcyB9XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJsYXlvdXRFZGl0b3JQYWdlU2VydmljZS5pc0NvbW1pdEluUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2F2ZUNsaWNrZWQoKVwiPiA8IS0tIFRPRE8gfHwgIWR5bmFtaWNGb3JtPy52YWxpZCAtLT5cbiAgICAgICAgICB7eyAnbWFudGxlLmJ1dHRvbnMuc2F2ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8bWF0LXNwaW5uZXIgKm5nSWY9XCJpc1NhdmVJblByb2dyZXNzXCIgbWF0U3VmZml4IFtkaWFtZXRlcl09XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -24,7 +24,7 @@ export class ListPageDataSource extends DataSource {
24
24
  if (this.paginator && this.sort && this.searchPanel) {
25
25
  // Combine everything that affects the rendered data into one update
26
26
  // stream for the data-table to consume.
27
- return merge(this.paginator.page, this.sort.sortChange, this.searchPanel.search, this.dataService.webRtcEvents, this.dataService.listContentChangeEvents).pipe(startWith(null), switchMap(() => {
27
+ return merge(this.paginator.page, this.sort.sortChange, this.searchPanel.search, this.dataService.webRtcEvents, this.dataService.subContentChangeEvents).pipe(startWith(null), switchMap(() => {
28
28
  var _a, _b, _c, _d, _e;
29
29
  let params = new WebApiListRequest({
30
30
  search: (_a = this.searchPanel) === null || _a === void 0 ? void 0 : _a.searchParams,
@@ -59,4 +59,4 @@ export class ListPageDataSource extends DataSource {
59
59
  */
60
60
  disconnect() { }
61
61
  }
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdlLWRhdGFzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2xpc3QtcGFnZS9saXN0LXBhZ2UtZGF0YXNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsT0FBTyxFQUFjLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUdwRjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFVBQWU7SUFVckQsWUFBWSxXQUE0QjtRQUN0QyxLQUFLLEVBQUUsQ0FBQztRQUxILFNBQUksR0FBVSxFQUFFLENBQUM7UUFDakIsc0JBQWlCLEdBQVUsRUFBRSxDQUFDO1FBQzlCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFJaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPO1FBQ0wsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNuRCxvRUFBb0U7WUFDcEUsd0NBQXdDO1lBQ3hDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUNqRyxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsSUFBSSxDQUN6RCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsU0FBUyxDQUFDLEdBQUcsRUFBRTs7Z0JBQ2IsSUFBSSxNQUFNLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQztvQkFDakMsTUFBTSxFQUFFLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsWUFBWTtvQkFDdEMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQUEsSUFBSSxDQUFDLElBQUksMENBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLFNBQVMsRUFBRTtvQkFDbEUsVUFBVSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQSxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLFNBQVMsS0FBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxFQUFFLE1BQUEsSUFBSSxDQUFDLFNBQVMsMENBQUUsUUFBUSxFQUFFO2lCQUN2RyxDQUFDLENBQUM7Z0JBQ0gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7O2dCQUNSLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsQ0FBQSxNQUFBLEdBQUcsQ0FBQyxVQUFVLDBDQUFFLFdBQVksSUFBRyxDQUFDLENBQUM7b0JBQzVELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLE1BQUEsR0FBRyxDQUFDLFVBQVUsMENBQUUsU0FBVSxDQUFDO29CQUNyRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxNQUFBLEdBQUcsQ0FBQyxVQUFVLDBDQUFFLFdBQVksQ0FBQztpQkFDdEQ7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQUEsR0FBRyxDQUFDLElBQUksMENBQUUsSUFBSyxDQUFDO29CQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFBLEdBQUcsQ0FBQyxJQUFJLDBDQUFFLFNBQTJCLENBQUM7aUJBQzdEO2dCQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztnQkFDeEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBRXZCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNuQixDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE1BQU0sS0FBSyxDQUFDLHdGQUF3RixDQUFDLENBQUM7U0FDdkc7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVSxLQUFVLENBQUM7Q0FDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IE1hdFBhZ2luYXRvciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBNYXRTb3J0LCBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtZXJnZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGgsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFNlYXJjaFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy93aWRnZXRzL3NlYXJjaC1wYW5lbC9zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFdlYkFwaUxpc3RSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWRhcHRlcnMvd2ViLWFwaS1jcnVkLmFkYXB0ZXInO1xuaW1wb3J0IHsgTGlzdFBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaW50ZXJmYWNlcy9saXN0LXBhZ2Uuc2VydmljZSc7XG5cbi8qKlxuICogRGF0YSBzb3VyY2UgZm9yIHRoZSBMaXN0IFBhZ2Ugdmlldy4gVGhpcyBjbGFzcyBzaG91bGRcbiAqIGVuY2Fwc3VsYXRlIGFsbCBsb2dpYyBmb3IgZmV0Y2hpbmcgYW5kIG1hbmlwdWxhdGluZyB0aGUgZGlzcGxheWVkIGRhdGFcbiAqIChpbmNsdWRpbmcgc29ydGluZywgcGFnaW5hdGlvbiwgYW5kIHNlYXJjaGluZykuXG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0UGFnZURhdGFTb3VyY2UgZXh0ZW5kcyBEYXRhU291cmNlPGFueT4ge1xuICBkYXRhU2VydmljZTogTGlzdFBhZ2VTZXJ2aWNlO1xuICBwYWdpbmF0b3I6IE1hdFBhZ2luYXRvciB8IHVuZGVmaW5lZDtcbiAgc29ydDogTWF0U29ydCB8IHVuZGVmaW5lZDtcbiAgc2VhcmNoUGFuZWw6IFNlYXJjaFBhbmVsQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBkYXRhOiBhbnlbXSA9IFtdO1xuICBwdWJsaWMgc2VsZWN0ZWRSZWNvcmRJZHM6IGFueVtdID0gW107XG4gIHB1YmxpYyBzZWxlY3RBbGw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihkYXRhU2VydmljZTogTGlzdFBhZ2VTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmRhdGFTZXJ2aWNlID0gZGF0YVNlcnZpY2U7XG4gIH1cblxuICAvKipcbiAgICogQ29ubmVjdCB0aGlzIGRhdGEgc291cmNlIHRvIHRoZSB0YWJsZS4gVGhlIHRhYmxlIHdpbGwgb25seSB1cGRhdGUgd2hlblxuICAgKiB0aGUgcmV0dXJuZWQgc3RyZWFtIGVtaXRzIG5ldyBpdGVtcy5cbiAgICogQHJldHVybnMgQSBzdHJlYW0gb2YgdGhlIGl0ZW1zIHRvIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgY29ubmVjdCgpOiBPYnNlcnZhYmxlPGFueVtdPiB7XG4gICAgaWYgKHRoaXMucGFnaW5hdG9yICYmIHRoaXMuc29ydCAmJiB0aGlzLnNlYXJjaFBhbmVsKSB7XG4gICAgICAvLyBDb21iaW5lIGV2ZXJ5dGhpbmcgdGhhdCBhZmZlY3RzIHRoZSByZW5kZXJlZCBkYXRhIGludG8gb25lIHVwZGF0ZVxuICAgICAgLy8gc3RyZWFtIGZvciB0aGUgZGF0YS10YWJsZSB0byBjb25zdW1lLlxuICAgICAgcmV0dXJuIG1lcmdlKHRoaXMucGFnaW5hdG9yLnBhZ2UsIHRoaXMuc29ydC5zb3J0Q2hhbmdlLCB0aGlzLnNlYXJjaFBhbmVsLnNlYXJjaCwgdGhpcy5kYXRhU2VydmljZS53ZWJSdGNFdmVudHMsXG4gICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5saXN0Q29udGVudENoYW5nZUV2ZW50cykucGlwZShcbiAgICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xuICAgICAgICAgIGxldCBwYXJhbXMgPSBuZXcgV2ViQXBpTGlzdFJlcXVlc3Qoe1xuICAgICAgICAgICAgc2VhcmNoOiB0aGlzLnNlYXJjaFBhbmVsPy5zZWFyY2hQYXJhbXMsXG4gICAgICAgICAgICBzb3J0OiB7IGF0dHI6IHRoaXMuc29ydD8uYWN0aXZlLCBkaXJlY3Rpb246IHRoaXMuc29ydD8uZGlyZWN0aW9uIH0sXG4gICAgICAgICAgICBwYWdpbmF0aW9uOiB7IHBhZ2VfbnVtYmVyOiAodGhpcy5wYWdpbmF0b3I/LnBhZ2VJbmRleCB8fCAwKSArIDEsIHBhZ2Vfc2l6ZTogdGhpcy5wYWdpbmF0b3I/LnBhZ2VTaXplIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5kYXRhU2VydmljZS5nZXRMaXN0KHBhcmFtcyk7XG4gICAgICAgIH0pLFxuICAgICAgICBtYXAocmVzID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5wYWdpbmF0b3IpIHtcbiAgICAgICAgICAgIHRoaXMucGFnaW5hdG9yLnBhZ2VJbmRleCA9IHJlcy5wYWdpbmF0aW9uPy5wYWdlX251bWJlciEgLSAxO1xuICAgICAgICAgICAgdGhpcy5wYWdpbmF0b3IucGFnZVNpemUgPSByZXMucGFnaW5hdGlvbj8ucGFnZV9zaXplITtcbiAgICAgICAgICAgIHRoaXMucGFnaW5hdG9yLmxlbmd0aCA9IHJlcy5wYWdpbmF0aW9uPy50b3RhbF9pdGVtcyE7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0aGlzLnNvcnQpIHtcbiAgICAgICAgICAgIHRoaXMuc29ydC5hY3RpdmUgPSByZXMuc29ydD8uYXR0ciE7XG4gICAgICAgICAgICB0aGlzLnNvcnQuZGlyZWN0aW9uID0gcmVzLnNvcnQ/LmRpcmVjdGlvbiEgYXMgU29ydERpcmVjdGlvbjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLmRhdGEgPSByZXMuY29udGVudDtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkUmVjb3JkSWRzID0gW107XG4gICAgICAgICAgdGhpcy5zZWxlY3RBbGwgPSBmYWxzZTtcblxuICAgICAgICAgIHJldHVybiB0aGlzLmRhdGE7XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBFcnJvcignUGxlYXNlIHNldCB0aGUgcGFnaW5hdG9yLCBzb3J0LCBhbmQgc2VhcmNoLXBhbmVsIG9uIHRoZSBkYXRhIHNvdXJjZSBiZWZvcmUgY29ubmVjdGluZy4nKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIENhbGxlZCB3aGVuIHRoZSB0YWJsZSBpcyBiZWluZyBkZXN0cm95ZWQuIFVzZSB0aGlzIGZ1bmN0aW9uLCB0byBjbGVhbiB1cFxuICAgKiBhbnkgb3BlbiBjb25uZWN0aW9ucyBvciBmcmVlIGFueSBoZWxkIHJlc291cmNlcyB0aGF0IHdlcmUgc2V0IHVwIGR1cmluZyBjb25uZWN0LlxuICAgKi9cbiAgZGlzY29ubmVjdCgpOiB2b2lkIHt9XG59XG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdlLWRhdGFzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2xpc3QtcGFnZS9saXN0LXBhZ2UtZGF0YXNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsT0FBTyxFQUFjLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUdwRjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFVBQWU7SUFVckQsWUFBWSxXQUE0QjtRQUN0QyxLQUFLLEVBQUUsQ0FBQztRQUxILFNBQUksR0FBVSxFQUFFLENBQUM7UUFDakIsc0JBQWlCLEdBQVUsRUFBRSxDQUFDO1FBQzlCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFJaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPO1FBQ0wsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNuRCxvRUFBb0U7WUFDcEUsd0NBQXdDO1lBQ3hDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUNqRyxJQUFJLENBQUMsV0FBVyxDQUFDLHNCQUFzQixDQUFDLENBQUMsSUFBSSxDQUN4RCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsU0FBUyxDQUFDLEdBQUcsRUFBRTs7Z0JBQ2IsSUFBSSxNQUFNLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQztvQkFDakMsTUFBTSxFQUFFLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsWUFBWTtvQkFDdEMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQUEsSUFBSSxDQUFDLElBQUksMENBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLFNBQVMsRUFBRTtvQkFDbEUsVUFBVSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQSxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLFNBQVMsS0FBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxFQUFFLE1BQUEsSUFBSSxDQUFDLFNBQVMsMENBQUUsUUFBUSxFQUFFO2lCQUN2RyxDQUFDLENBQUM7Z0JBQ0gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7O2dCQUNSLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsQ0FBQSxNQUFBLEdBQUcsQ0FBQyxVQUFVLDBDQUFFLFdBQVksSUFBRyxDQUFDLENBQUM7b0JBQzVELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLE1BQUEsR0FBRyxDQUFDLFVBQVUsMENBQUUsU0FBVSxDQUFDO29CQUNyRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxNQUFBLEdBQUcsQ0FBQyxVQUFVLDBDQUFFLFdBQVksQ0FBQztpQkFDdEQ7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQUEsR0FBRyxDQUFDLElBQUksMENBQUUsSUFBSyxDQUFDO29CQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFBLEdBQUcsQ0FBQyxJQUFJLDBDQUFFLFNBQTJCLENBQUM7aUJBQzdEO2dCQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztnQkFDeEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBRXZCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNuQixDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE1BQU0sS0FBSyxDQUFDLHdGQUF3RixDQUFDLENBQUM7U0FDdkc7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVSxLQUFVLENBQUM7Q0FDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IE1hdFBhZ2luYXRvciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBNYXRTb3J0LCBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtZXJnZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGgsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFNlYXJjaFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy93aWRnZXRzL3NlYXJjaC1wYW5lbC9zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFdlYkFwaUxpc3RSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWRhcHRlcnMvd2ViLWFwaS1jcnVkLmFkYXB0ZXInO1xuaW1wb3J0IHsgTGlzdFBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaW50ZXJmYWNlcy9saXN0LXBhZ2Uuc2VydmljZSc7XG5cbi8qKlxuICogRGF0YSBzb3VyY2UgZm9yIHRoZSBMaXN0IFBhZ2Ugdmlldy4gVGhpcyBjbGFzcyBzaG91bGRcbiAqIGVuY2Fwc3VsYXRlIGFsbCBsb2dpYyBmb3IgZmV0Y2hpbmcgYW5kIG1hbmlwdWxhdGluZyB0aGUgZGlzcGxheWVkIGRhdGFcbiAqIChpbmNsdWRpbmcgc29ydGluZywgcGFnaW5hdGlvbiwgYW5kIHNlYXJjaGluZykuXG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0UGFnZURhdGFTb3VyY2UgZXh0ZW5kcyBEYXRhU291cmNlPGFueT4ge1xuICBkYXRhU2VydmljZTogTGlzdFBhZ2VTZXJ2aWNlO1xuICBwYWdpbmF0b3I6IE1hdFBhZ2luYXRvciB8IHVuZGVmaW5lZDtcbiAgc29ydDogTWF0U29ydCB8IHVuZGVmaW5lZDtcbiAgc2VhcmNoUGFuZWw6IFNlYXJjaFBhbmVsQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBkYXRhOiBhbnlbXSA9IFtdO1xuICBwdWJsaWMgc2VsZWN0ZWRSZWNvcmRJZHM6IGFueVtdID0gW107XG4gIHB1YmxpYyBzZWxlY3RBbGw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihkYXRhU2VydmljZTogTGlzdFBhZ2VTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmRhdGFTZXJ2aWNlID0gZGF0YVNlcnZpY2U7XG4gIH1cblxuICAvKipcbiAgICogQ29ubmVjdCB0aGlzIGRhdGEgc291cmNlIHRvIHRoZSB0YWJsZS4gVGhlIHRhYmxlIHdpbGwgb25seSB1cGRhdGUgd2hlblxuICAgKiB0aGUgcmV0dXJuZWQgc3RyZWFtIGVtaXRzIG5ldyBpdGVtcy5cbiAgICogQHJldHVybnMgQSBzdHJlYW0gb2YgdGhlIGl0ZW1zIHRvIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgY29ubmVjdCgpOiBPYnNlcnZhYmxlPGFueVtdPiB7XG4gICAgaWYgKHRoaXMucGFnaW5hdG9yICYmIHRoaXMuc29ydCAmJiB0aGlzLnNlYXJjaFBhbmVsKSB7XG4gICAgICAvLyBDb21iaW5lIGV2ZXJ5dGhpbmcgdGhhdCBhZmZlY3RzIHRoZSByZW5kZXJlZCBkYXRhIGludG8gb25lIHVwZGF0ZVxuICAgICAgLy8gc3RyZWFtIGZvciB0aGUgZGF0YS10YWJsZSB0byBjb25zdW1lLlxuICAgICAgcmV0dXJuIG1lcmdlKHRoaXMucGFnaW5hdG9yLnBhZ2UsIHRoaXMuc29ydC5zb3J0Q2hhbmdlLCB0aGlzLnNlYXJjaFBhbmVsLnNlYXJjaCwgdGhpcy5kYXRhU2VydmljZS53ZWJSdGNFdmVudHMsXG4gICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5zdWJDb250ZW50Q2hhbmdlRXZlbnRzKS5waXBlKFxuICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBXZWJBcGlMaXN0UmVxdWVzdCh7XG4gICAgICAgICAgICBzZWFyY2g6IHRoaXMuc2VhcmNoUGFuZWw/LnNlYXJjaFBhcmFtcyxcbiAgICAgICAgICAgIHNvcnQ6IHsgYXR0cjogdGhpcy5zb3J0Py5hY3RpdmUsIGRpcmVjdGlvbjogdGhpcy5zb3J0Py5kaXJlY3Rpb24gfSxcbiAgICAgICAgICAgIHBhZ2luYXRpb246IHsgcGFnZV9udW1iZXI6ICh0aGlzLnBhZ2luYXRvcj8ucGFnZUluZGV4IHx8IDApICsgMSwgcGFnZV9zaXplOiB0aGlzLnBhZ2luYXRvcj8ucGFnZVNpemUgfVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLmdldExpc3QocGFyYW1zKTtcbiAgICAgICAgfSksXG4gICAgICAgIG1hcChyZXMgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLnBhZ2luYXRvcikge1xuICAgICAgICAgICAgdGhpcy5wYWdpbmF0b3IucGFnZUluZGV4ID0gcmVzLnBhZ2luYXRpb24/LnBhZ2VfbnVtYmVyISAtIDE7XG4gICAgICAgICAgICB0aGlzLnBhZ2luYXRvci5wYWdlU2l6ZSA9IHJlcy5wYWdpbmF0aW9uPy5wYWdlX3NpemUhO1xuICAgICAgICAgICAgdGhpcy5wYWdpbmF0b3IubGVuZ3RoID0gcmVzLnBhZ2luYXRpb24/LnRvdGFsX2l0ZW1zITtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHRoaXMuc29ydCkge1xuICAgICAgICAgICAgdGhpcy5zb3J0LmFjdGl2ZSA9IHJlcy5zb3J0Py5hdHRyITtcbiAgICAgICAgICAgIHRoaXMuc29ydC5kaXJlY3Rpb24gPSByZXMuc29ydD8uZGlyZWN0aW9uISBhcyBTb3J0RGlyZWN0aW9uO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuZGF0YSA9IHJlcy5jb250ZW50O1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRSZWNvcmRJZHMgPSBbXTtcbiAgICAgICAgICB0aGlzLnNlbGVjdEFsbCA9IGZhbHNlO1xuXG4gICAgICAgICAgcmV0dXJuIHRoaXMuZGF0YTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IEVycm9yKCdQbGVhc2Ugc2V0IHRoZSBwYWdpbmF0b3IsIHNvcnQsIGFuZCBzZWFyY2gtcGFuZWwgb24gdGhlIGRhdGEgc291cmNlIGJlZm9yZSBjb25uZWN0aW5nLicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiAgQ2FsbGVkIHdoZW4gdGhlIHRhYmxlIGlzIGJlaW5nIGRlc3Ryb3llZC4gVXNlIHRoaXMgZnVuY3Rpb24sIHRvIGNsZWFuIHVwXG4gICAqIGFueSBvcGVuIGNvbm5lY3Rpb25zIG9yIGZyZWUgYW55IGhlbGQgcmVzb3VyY2VzIHRoYXQgd2VyZSBzZXQgdXAgZHVyaW5nIGNvbm5lY3QuXG4gICAqL1xuICBkaXNjb25uZWN0KCk6IHZvaWQge31cbn1cbiJdfQ==