@codetectonics/mantle 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -49
- package/bundles/codetectonics-mantle.umd.js +6907 -0
- package/bundles/codetectonics-mantle.umd.js.map +1 -0
- package/esm2015/codetectonics-mantle.js +5 -0
- package/esm2015/lib/components/dashboard/containers/dynamic-dashboard-container/dynamic-dashboard-container.component.js +24 -0
- package/esm2015/lib/components/dashboard/containers/plain-dashboard-container/plain-dashboard-container.component.js +35 -0
- package/esm2015/lib/components/dashboard/dashboard-card/dashboard-card.component.js +133 -0
- package/esm2015/lib/components/dashboard/dashboard-card-search-menu/dashboard-card-search-menu.component.js +55 -0
- package/esm2015/lib/components/dashboard/dynamic-dashboard/dynamic-dashboard.component.js +23 -0
- package/esm2015/lib/components/dashboard/sections/dashboard-section/dashboard-section.component.js +71 -0
- package/esm2015/lib/components/dashboard/widgets/dashboard-info-card/dashboard-info-card.component.js +26 -0
- package/esm2015/lib/components/dashboard/widgets/dashboard-table/dashboard-table-datasource.js +30 -0
- package/esm2015/lib/components/dashboard/widgets/dashboard-table/dashboard-table.component.js +58 -0
- package/esm2015/lib/components/dashboard/widgets/dynamic-chart/dynamic-chart.component.js +85 -0
- package/esm2015/lib/components/dashboard/widgets/dynamic-widget-display/dynamic-widget-display.component.js +29 -0
- package/esm2015/lib/components/details/containers/accordion-details-container/accordion-details-container.component.js +26 -0
- package/esm2015/lib/components/details/containers/dynamic-details-container/dynamic-details-container.component.js +25 -0
- package/esm2015/lib/components/details/containers/plain-details-container/plain-details-container.component.js +25 -0
- package/esm2015/lib/components/details/dialog-details/dialog-details.component.js +77 -0
- package/esm2015/lib/components/details/dialog-nested-details/dialog-nested-details.component.js +40 -0
- package/esm2015/lib/components/details/dynamic-details/dynamic-details.component.js +23 -0
- package/esm2015/lib/components/details/fields/actions-attribute-display/actions-attribute-display.component.js +27 -0
- package/esm2015/lib/components/details/fields/chip-attribute-display/chip-attribute-display.component.js +40 -0
- package/esm2015/lib/components/details/fields/dynamic-attribute-display/dynamic-attribute-display.component.js +46 -0
- package/esm2015/lib/components/details/fields/file-attribute-display/file-attribute-display.component.js +37 -0
- package/esm2015/lib/components/details/fields/image-attribute-display/image-attribute-display.component.js +36 -0
- package/esm2015/lib/components/details/fields/link-attribute-display/link-attribute-display.component.js +30 -0
- package/esm2015/lib/components/details/fields/markdown-attribute-display/markdown-attribute-display.component.js +21 -0
- package/esm2015/lib/components/details/fields/thumbnail-display/thumbnail-display.component.js +33 -0
- package/esm2015/lib/components/details/sections/dynamic-details-section/dynamic-details-section.component.js +42 -0
- package/esm2015/lib/components/details/sections/grid-details-section/grid-details-section.component.js +53 -0
- package/esm2015/lib/components/details/sections/markdown-details-section/markdown-details-section.component.js +19 -0
- package/esm2015/lib/components/details/sections/table-details-section/table-details-section.component.js +37 -0
- package/esm2015/lib/components/form/containers/accordion-form-container/accordion-form-container.component.js +29 -0
- package/esm2015/lib/components/form/containers/dynamic-form-container/dynamic-form-container.component.js +28 -0
- package/esm2015/lib/components/form/containers/plain-form-container/plain-form-container.component.js +28 -0
- package/esm2015/lib/components/form/dialog-form/dialog-form.component.js +91 -0
- package/esm2015/lib/components/form/dialog-nested-form/dialog-nested-form.component.js +57 -0
- package/esm2015/lib/components/form/dynamic-form/dynamic-form.component.js +52 -0
- package/esm2015/lib/components/form/fields/autocomplete-input/autocomplete-input.component.js +69 -0
- package/esm2015/lib/components/form/fields/chip-input/chip-input.component.js +84 -0
- package/esm2015/lib/components/form/fields/datepicker/datepicker.component.js +91 -0
- package/esm2015/lib/components/form/fields/datetimepicker/datetimepicker.component.js +92 -0
- package/esm2015/lib/components/form/fields/dropdown/dropdown.component.js +73 -0
- package/esm2015/lib/components/form/fields/dynamic-form-field/dynamic-form-field.component.js +37 -0
- package/esm2015/lib/components/form/fields/filepicker/filepicker.component.js +97 -0
- package/esm2015/lib/components/form/fields/image-cropper/image-cropper.component.js +52 -0
- package/esm2015/lib/components/form/fields/imagepicker/imagepicker.component.js +139 -0
- package/esm2015/lib/components/form/fields/markdown-input/markdown-input.component.js +53 -0
- package/esm2015/lib/components/form/fields/number-input/number-input.component.js +91 -0
- package/esm2015/lib/components/form/fields/password-input/password-input.component.js +58 -0
- package/esm2015/lib/components/form/fields/text-input/text-input.component.js +55 -0
- package/esm2015/lib/components/form/fields/textarea/textarea.component.js +58 -0
- package/esm2015/lib/components/form/sections/dynamic-form-section/dynamic-form-section.component.js +47 -0
- package/esm2015/lib/components/form/sections/grid-form-section/grid-form-section.component.js +69 -0
- package/esm2015/lib/components/form/sections/table-form-section/table-form-section.component.js +107 -0
- package/esm2015/lib/components/layout-editor/containers/accordion-layout-editor-container/accordion-layout-editor-container.component.js +24 -0
- package/esm2015/lib/components/layout-editor/containers/dynamic-layout-editor-container/dynamic-layout-editor-container.component.js +23 -0
- package/esm2015/lib/components/layout-editor/containers/plain-layout-editor-container/plain-layout-editor-container.component.js +24 -0
- package/esm2015/lib/components/layout-editor/dynamic-layout-editor/dynamic-layout-editor.component.js +23 -0
- package/esm2015/lib/components/layout-editor/elements/dynamic-layout-editor-element/dynamic-layout-editor-element.component.js +38 -0
- package/esm2015/lib/components/layout-editor/elements/layout-editor-field-element/layout-editor-field-element.component.js +76 -0
- package/esm2015/lib/components/layout-editor/elements/layout-editor-table-column-element/layout-editor-table-column-element.component.js +76 -0
- package/esm2015/lib/components/layout-editor/elements/layout-editor-widget-element/layout-editor-widget-element.component.js +19 -0
- package/esm2015/lib/components/layout-editor/sections/dashboard-layout-editor-section/dashboard-layout-editor-section.component.js +21 -0
- package/esm2015/lib/components/layout-editor/sections/dynamic-layout-editor-section/dynamic-layout-editor-section.component.js +25 -0
- package/esm2015/lib/components/layout-editor/sections/grid-layout-editor-section/grid-layout-editor-section.component.js +102 -0
- package/esm2015/lib/components/layout-editor/sections/markdown-layout-editor-section/markdown-layout-editor-section.component.js +19 -0
- package/esm2015/lib/components/layout-editor/sections/table-layout-editor-section/table-layout-editor-section.component.js +74 -0
- package/esm2015/lib/components/navigation/nav-tree/nav-tree.component.js +65 -0
- package/esm2015/lib/components/navigation/reroute/reroute.component.js +28 -0
- package/esm2015/lib/components/pages/dashboard-page/dashboard-page.component.js +34 -0
- package/esm2015/lib/components/pages/detail-page/detail-page.component.js +101 -0
- package/esm2015/lib/components/pages/documents-page/documents-page.component.js +109 -0
- package/esm2015/lib/components/pages/export-page/export-page.component.js +65 -0
- package/esm2015/lib/components/pages/form-page/form-page.component.js +133 -0
- package/esm2015/lib/components/pages/layout-editor-page/layout-editor-page.component.js +72 -0
- package/esm2015/lib/components/pages/list-page/list-page-datasource.js +62 -0
- package/esm2015/lib/components/pages/list-page/list-page.component.js +159 -0
- package/esm2015/lib/components/pages/tabbed-page/tabbed-page.component.js +35 -0
- package/esm2015/lib/components/titles/content-title/content-title.component.js +23 -0
- package/esm2015/lib/components/titles/page-title/page-title.component.js +28 -0
- package/esm2015/lib/components/titles/section-title/section-title.component.js +18 -0
- package/esm2015/lib/components/widgets/delete-confirmation-dialog/delete-confirmation-dialog.component.js +36 -0
- package/esm2015/lib/components/widgets/dynamic-table/dynamic-table-datasource.js +89 -0
- package/esm2015/lib/components/widgets/dynamic-table/dynamic-table.component.js +67 -0
- package/esm2015/lib/components/widgets/file-preview-dialog/file-preview-dialog.component.js +42 -0
- package/esm2015/lib/components/widgets/loader/loader.component.js +21 -0
- package/esm2015/lib/components/widgets/save-confirmation-dialog/save-confirmation-dialog.component.js +35 -0
- package/esm2015/lib/components/widgets/search-panel/search-panel.component.js +67 -0
- package/esm2015/lib/components/widgets/snackbar/snackbar.component.js +42 -0
- package/esm2015/lib/config/charts/column-chart.data.js +38 -0
- package/esm2015/lib/config/charts/gantt-chart.data.js +18 -0
- package/esm2015/lib/config/charts/pie-chart.data.js +21 -0
- package/esm2015/lib/config/charts/progress-bar-chart.data.js +50 -0
- package/esm2015/lib/config/charts/spline-chart.data.js +24 -0
- package/esm2015/lib/data-structures/dynamic-layout.structure.js +2 -0
- package/esm2015/lib/data-structures/file-attachment.structure.js +2 -0
- package/esm2015/lib/directives/click-stop-propagation.directive.js +19 -0
- package/esm2015/lib/directives/file-dropzone.directive.js +53 -0
- package/esm2015/lib/guards/feature.guard.js +42 -0
- package/esm2015/lib/guards/password-check.guard.js +21 -0
- package/esm2015/lib/guards/session.guard.js +21 -0
- package/esm2015/lib/mantle.module.js +518 -0
- package/esm2015/lib/material.module.js +290 -0
- package/esm2015/lib/models/screen-size-map.model.js +9 -0
- package/esm2015/lib/pipes/dynamic.pipe.js +45 -0
- package/esm2015/lib/pipes/secure-image.pipe.js +35 -0
- package/esm2015/lib/services/adapters/web-api-crud.adapter.js +22 -0
- package/esm2015/lib/services/adapters/websocket.adapter.js +2 -0
- package/esm2015/lib/services/announcement.service.js +43 -0
- package/esm2015/lib/services/array.service.js +82 -0
- package/esm2015/lib/services/chart.service.js +45 -0
- package/esm2015/lib/services/confirmation.service.js +45 -0
- package/esm2015/lib/services/current-user.service.js +120 -0
- package/esm2015/lib/services/dynamic-form.service.js +59 -0
- package/esm2015/lib/services/feature-config.service.js +240 -0
- package/esm2015/lib/services/interfaces/authorisable-feature.service.js +2 -0
- package/esm2015/lib/services/interfaces/dashboard-page.service.js +2 -0
- package/esm2015/lib/services/interfaces/dashboard-widget.service.js +2 -0
- package/esm2015/lib/services/interfaces/detail-page.service.js +2 -0
- package/esm2015/lib/services/interfaces/export-page.service.js +2 -0
- package/esm2015/lib/services/interfaces/form-page.service.js +2 -0
- package/esm2015/lib/services/interfaces/layout-editor-page.service.js +2 -0
- package/esm2015/lib/services/interfaces/list-page.service.js +2 -0
- package/esm2015/lib/services/interfaces/nav-tabs.service.js +2 -0
- package/esm2015/lib/services/interfaces/reroute.service.js +2 -0
- package/esm2015/lib/services/object.service.js +69 -0
- package/esm2015/lib/services/password-check.service.js +93 -0
- package/esm2015/lib/services/screen-size.service.js +41 -0
- package/esm2015/lib/services/web-api.service.js +99 -0
- package/esm2015/lib/services/websocket.service.js +58 -0
- package/esm2015/lib/tokens/environment.token.js +3 -0
- package/esm2015/public-api.js +133 -0
- package/fesm2015/codetectonics-mantle.js +5940 -0
- package/fesm2015/codetectonics-mantle.js.map +1 -0
- package/lib/components/dashboard/containers/dynamic-dashboard-container/dynamic-dashboard-container.component.d.ts +11 -0
- package/lib/components/dashboard/containers/plain-dashboard-container/plain-dashboard-container.component.d.ts +14 -0
- package/lib/components/dashboard/dashboard-card/dashboard-card.component.d.ts +41 -0
- package/lib/components/dashboard/dashboard-card-search-menu/dashboard-card-search-menu.component.d.ts +20 -0
- package/lib/components/dashboard/dynamic-dashboard/dynamic-dashboard.component.d.ts +10 -0
- package/lib/components/dashboard/sections/dashboard-section/dashboard-section.component.d.ts +27 -0
- package/lib/components/dashboard/widgets/dashboard-info-card/dashboard-info-card.component.d.ts +8 -0
- package/lib/components/dashboard/widgets/dashboard-table/dashboard-table-datasource.d.ts +22 -0
- package/lib/components/dashboard/widgets/dashboard-table/dashboard-table.component.d.ts +28 -0
- package/lib/components/dashboard/widgets/dynamic-chart/dynamic-chart.component.d.ts +20 -0
- package/lib/components/dashboard/widgets/dynamic-widget-display/dynamic-widget-display.component.d.ts +9 -0
- package/lib/components/details/containers/accordion-details-container/accordion-details-container.component.d.ts +11 -0
- package/lib/components/details/containers/dynamic-details-container/dynamic-details-container.component.d.ts +11 -0
- package/lib/components/details/containers/plain-details-container/plain-details-container.component.d.ts +11 -0
- package/lib/components/details/dialog-details/dialog-details.component.d.ts +36 -0
- package/lib/components/details/dialog-nested-details/dialog-nested-details.component.d.ts +22 -0
- package/lib/components/details/dynamic-details/dynamic-details.component.d.ts +10 -0
- package/lib/components/details/fields/actions-attribute-display/actions-attribute-display.component.d.ts +7 -0
- package/lib/components/details/fields/chip-attribute-display/chip-attribute-display.component.d.ts +9 -0
- package/lib/components/details/fields/dynamic-attribute-display/dynamic-attribute-display.component.d.ts +15 -0
- package/lib/components/details/fields/file-attribute-display/file-attribute-display.component.d.ts +12 -0
- package/lib/components/details/fields/image-attribute-display/image-attribute-display.component.d.ts +12 -0
- package/lib/components/details/fields/link-attribute-display/link-attribute-display.component.d.ts +10 -0
- package/lib/components/details/fields/markdown-attribute-display/markdown-attribute-display.component.d.ts +6 -0
- package/lib/components/details/fields/thumbnail-display/thumbnail-display.component.d.ts +10 -0
- package/lib/components/details/sections/dynamic-details-section/dynamic-details-section.component.d.ts +17 -0
- package/lib/components/details/sections/grid-details-section/grid-details-section.component.d.ts +17 -0
- package/lib/components/details/sections/markdown-details-section/markdown-details-section.component.d.ts +7 -0
- package/lib/components/details/sections/table-details-section/table-details-section.component.d.ts +12 -0
- package/lib/components/form/containers/accordion-form-container/accordion-form-container.component.d.ts +13 -0
- package/lib/components/form/containers/dynamic-form-container/dynamic-form-container.component.d.ts +13 -0
- package/lib/components/form/containers/plain-form-container/plain-form-container.component.d.ts +13 -0
- package/lib/components/form/dialog-form/dialog-form.component.d.ts +39 -0
- package/lib/components/form/dialog-nested-form/dialog-nested-form.component.d.ts +31 -0
- package/lib/components/form/dynamic-form/dynamic-form.component.d.ts +21 -0
- package/lib/components/form/fields/autocomplete-input/autocomplete-input.component.d.ts +32 -0
- package/lib/components/form/fields/chip-input/chip-input.component.d.ts +27 -0
- package/lib/components/form/fields/datepicker/datepicker.component.d.ts +24 -0
- package/lib/components/form/fields/datetimepicker/datetimepicker.component.d.ts +24 -0
- package/lib/components/form/fields/dropdown/dropdown.component.d.ts +31 -0
- package/lib/components/form/fields/dynamic-form-field/dynamic-form-field.component.d.ts +10 -0
- package/lib/components/form/fields/filepicker/filepicker.component.d.ts +27 -0
- package/lib/components/form/fields/image-cropper/image-cropper.component.d.ts +27 -0
- package/lib/components/form/fields/imagepicker/imagepicker.component.d.ts +41 -0
- package/lib/components/form/fields/markdown-input/markdown-input.component.d.ts +17 -0
- package/lib/components/form/fields/number-input/number-input.component.d.ts +27 -0
- package/lib/components/form/fields/password-input/password-input.component.d.ts +19 -0
- package/lib/components/form/fields/text-input/text-input.component.d.ts +18 -0
- package/lib/components/form/fields/textarea/textarea.component.d.ts +19 -0
- package/lib/components/form/sections/dynamic-form-section/dynamic-form-section.component.d.ts +19 -0
- package/lib/components/form/sections/grid-form-section/grid-form-section.component.d.ts +23 -0
- package/lib/components/form/sections/table-form-section/table-form-section.component.d.ts +22 -0
- package/lib/components/layout-editor/containers/accordion-layout-editor-container/accordion-layout-editor-container.component.d.ts +10 -0
- package/lib/components/layout-editor/containers/dynamic-layout-editor-container/dynamic-layout-editor-container.component.d.ts +10 -0
- package/lib/components/layout-editor/containers/plain-layout-editor-container/plain-layout-editor-container.component.d.ts +10 -0
- package/lib/components/layout-editor/dynamic-layout-editor/dynamic-layout-editor.component.d.ts +10 -0
- package/lib/components/layout-editor/elements/dynamic-layout-editor-element/dynamic-layout-editor-element.component.d.ts +13 -0
- package/lib/components/layout-editor/elements/layout-editor-field-element/layout-editor-field-element.component.d.ts +14 -0
- package/lib/components/layout-editor/elements/layout-editor-table-column-element/layout-editor-table-column-element.component.d.ts +14 -0
- package/lib/components/layout-editor/elements/layout-editor-widget-element/layout-editor-widget-element.component.d.ts +8 -0
- package/lib/components/layout-editor/sections/dashboard-layout-editor-section/dashboard-layout-editor-section.component.d.ts +8 -0
- package/lib/components/layout-editor/sections/dynamic-layout-editor-section/dynamic-layout-editor-section.component.d.ts +10 -0
- package/lib/components/layout-editor/sections/grid-layout-editor-section/grid-layout-editor-section.component.d.ts +21 -0
- package/lib/components/layout-editor/sections/markdown-layout-editor-section/markdown-layout-editor-section.component.d.ts +7 -0
- package/lib/components/layout-editor/sections/table-layout-editor-section/table-layout-editor-section.component.d.ts +14 -0
- package/lib/components/navigation/nav-tree/nav-tree.component.d.ts +46 -0
- package/lib/components/navigation/reroute/reroute.component.d.ts +14 -0
- package/lib/components/pages/dashboard-page/dashboard-page.component.d.ts +16 -0
- package/lib/components/pages/detail-page/detail-page.component.d.ts +35 -0
- package/lib/components/pages/documents-page/documents-page.component.d.ts +41 -0
- package/lib/components/pages/export-page/export-page.component.d.ts +29 -0
- package/lib/components/pages/form-page/form-page.component.d.ts +37 -0
- package/lib/components/pages/layout-editor-page/layout-editor-page.component.d.ts +26 -0
- package/lib/components/pages/list-page/list-page-datasource.d.ts +32 -0
- package/lib/components/pages/list-page/list-page.component.d.ts +46 -0
- package/lib/components/pages/tabbed-page/tabbed-page.component.d.ts +16 -0
- package/lib/components/titles/content-title/content-title.component.d.ts +8 -0
- package/lib/components/titles/page-title/page-title.component.d.ts +10 -0
- package/lib/components/titles/section-title/section-title.component.d.ts +7 -0
- package/lib/components/widgets/delete-confirmation-dialog/delete-confirmation-dialog.component.d.ts +20 -0
- package/lib/components/widgets/dynamic-table/dynamic-table-datasource.d.ts +40 -0
- package/lib/components/widgets/dynamic-table/dynamic-table.component.d.ts +30 -0
- package/lib/components/widgets/file-preview-dialog/file-preview-dialog.component.d.ts +17 -0
- package/lib/components/widgets/loader/loader.component.d.ts +6 -0
- package/lib/components/widgets/save-confirmation-dialog/save-confirmation-dialog.component.d.ts +16 -0
- package/lib/components/widgets/search-panel/search-panel.component.d.ts +21 -0
- package/lib/components/widgets/snackbar/snackbar.component.d.ts +11 -0
- package/lib/config/charts/column-chart.data.d.ts +37 -0
- package/lib/config/charts/gantt-chart.data.d.ts +17 -0
- package/lib/config/charts/pie-chart.data.d.ts +20 -0
- package/lib/config/charts/progress-bar-chart.data.d.ts +49 -0
- package/lib/config/charts/spline-chart.data.d.ts +23 -0
- package/lib/data-structures/dynamic-layout.structure.d.ts +161 -0
- package/lib/data-structures/file-attachment.structure.d.ts +6 -0
- package/lib/directives/click-stop-propagation.directive.d.ts +6 -0
- package/lib/directives/file-dropzone.directive.d.ts +12 -0
- package/lib/guards/feature.guard.d.ts +15 -0
- package/lib/guards/password-check.guard.d.ts +11 -0
- package/lib/guards/session.guard.d.ts +10 -0
- package/lib/mantle.module.d.ts +106 -0
- package/lib/material.module.d.ts +34 -0
- package/lib/models/screen-size-map.model.d.ts +13 -0
- package/lib/pipes/dynamic.pipe.d.ts +12 -0
- package/lib/pipes/secure-image.pipe.d.ts +11 -0
- package/lib/services/adapters/web-api-crud.adapter.d.ts +63 -0
- package/lib/services/adapters/websocket.adapter.d.ts +6 -0
- package/lib/services/announcement.service.d.ts +11 -0
- package/lib/services/array.service.d.ts +21 -0
- package/lib/services/chart.service.d.ts +14 -0
- package/lib/services/confirmation.service.d.ts +11 -0
- package/lib/services/current-user.service.d.ts +28 -0
- package/lib/services/dynamic-form.service.d.ts +30 -0
- package/lib/services/feature-config.service.d.ts +82 -0
- package/lib/services/interfaces/authorisable-feature.service.d.ts +5 -0
- package/lib/services/interfaces/dashboard-page.service.d.ts +13 -0
- package/lib/services/interfaces/dashboard-widget.service.d.ts +34 -0
- package/lib/services/interfaces/detail-page.service.d.ts +36 -0
- package/lib/services/interfaces/export-page.service.d.ts +6 -0
- package/lib/services/interfaces/form-page.service.d.ts +30 -0
- package/lib/services/interfaces/layout-editor-page.service.d.ts +14 -0
- package/lib/services/interfaces/list-page.service.d.ts +44 -0
- package/lib/services/interfaces/nav-tabs.service.d.ts +7 -0
- package/lib/services/interfaces/reroute.service.d.ts +3 -0
- package/lib/services/object.service.d.ts +11 -0
- package/lib/services/password-check.service.d.ts +21 -0
- package/lib/services/screen-size.service.d.ts +14 -0
- package/lib/services/web-api.service.d.ts +21 -0
- package/lib/services/websocket.service.d.ts +20 -0
- package/lib/tokens/environment.token.d.ts +2 -0
- package/package.json +33 -15
- package/public-api.d.ts +129 -2
- package/fesm2022/codetectonics-mantle.mjs +0 -42
- package/fesm2022/codetectonics-mantle.mjs.map +0 -1
- package/lib/mantle.component.d.ts +0 -5
- package/lib/mantle.service.d.ts +0 -6
- /package/{index.d.ts → codetectonics-mantle.d.ts} +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/material/card";
|
|
4
|
+
export class LayoutEditorWidgetElementComponent {
|
|
5
|
+
constructor() { }
|
|
6
|
+
}
|
|
7
|
+
LayoutEditorWidgetElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LayoutEditorWidgetElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
+
LayoutEditorWidgetElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LayoutEditorWidgetElementComponent, selector: "mantle-layout-editor-widget-element", inputs: { element: "element" }, ngImport: i0, template: "<mat-card class=\"widget-card\">\n <h4 class=\"label\">{{ element.widget_slug }}</h4>\n <h5 class=\"properties\"><b>{{ '{' }}</b> widget <b>{{ '}' }}</b></h5>\n</mat-card>\n", styles: [".widget-card{height:136px}.label{margin-bottom:0}.properties{padding-left:12px}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }] });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LayoutEditorWidgetElementComponent, decorators: [{
|
|
10
|
+
type: Component,
|
|
11
|
+
args: [{
|
|
12
|
+
selector: 'mantle-layout-editor-widget-element',
|
|
13
|
+
templateUrl: './layout-editor-widget-element.component.html',
|
|
14
|
+
styleUrls: ['./layout-editor-widget-element.component.scss']
|
|
15
|
+
}]
|
|
16
|
+
}], ctorParameters: function () { return []; }, propDecorators: { element: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}] } });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWVkaXRvci13aWRnZXQtZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC1lZGl0b3IvZWxlbWVudHMvbGF5b3V0LWVkaXRvci13aWRnZXQtZWxlbWVudC9sYXlvdXQtZWRpdG9yLXdpZGdldC1lbGVtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9lbGVtZW50cy9sYXlvdXQtZWRpdG9yLXdpZGdldC1lbGVtZW50L2xheW91dC1lZGl0b3Itd2lkZ2V0LWVsZW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVFqRCxNQUFNLE9BQU8sa0NBQWtDO0lBSTdDLGdCQUFnQixDQUFDOztnSUFKTixrQ0FBa0M7b0hBQWxDLGtDQUFrQywyR0NSL0MsaUxBSUE7NEZESWEsa0NBQWtDO2tCQUw5QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQ0FBcUM7b0JBQy9DLFdBQVcsRUFBRSwrQ0FBK0M7b0JBQzVELFNBQVMsRUFBRSxDQUFDLCtDQUErQyxDQUFDO2lCQUM3RDswRUFHVSxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljTGF5b3V0RWRpdG9yRGFzaGJvYXJkV2lkZ2V0IH0gZnJvbSAnLi4vLi4vLi4vLi4vZGF0YS1zdHJ1Y3R1cmVzL2R5bmFtaWMtbGF5b3V0LnN0cnVjdHVyZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1sYXlvdXQtZWRpdG9yLXdpZGdldC1lbGVtZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC1lZGl0b3Itd2lkZ2V0LWVsZW1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sYXlvdXQtZWRpdG9yLXdpZGdldC1lbGVtZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0RWRpdG9yV2lkZ2V0RWxlbWVudENvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgZWxlbWVudCE6IER5bmFtaWNMYXlvdXRFZGl0b3JEYXNoYm9hcmRXaWRnZXQ7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxufVxuIiwiPG1hdC1jYXJkIGNsYXNzPVwid2lkZ2V0LWNhcmRcIj5cbiAgPGg0IGNsYXNzPVwibGFiZWxcIj57eyBlbGVtZW50LndpZGdldF9zbHVnIH19PC9oND5cbiAgPGg1IGNsYXNzPVwicHJvcGVydGllc1wiPjxiPnt7ICd7JyB9fTwvYj4gd2lkZ2V0IDxiPnt7ICd9JyB9fTwvYj48L2g1PlxuPC9tYXQtY2FyZD5cbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/material/grid-list";
|
|
4
|
+
import * as i2 from "../../elements/dynamic-layout-editor-element/dynamic-layout-editor-element.component";
|
|
5
|
+
import * as i3 from "@angular/common";
|
|
6
|
+
export class DashboardLayoutEditorSectionComponent {
|
|
7
|
+
constructor() { }
|
|
8
|
+
}
|
|
9
|
+
DashboardLayoutEditorSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DashboardLayoutEditorSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
DashboardLayoutEditorSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DashboardLayoutEditorSectionComponent, selector: "mantle-dashboard-layout-editor-section", inputs: { section: "section" }, ngImport: i0, template: "<div class=\"grid-layout-editor-section\">\n <mat-grid-list\n rowHeight=\"180px\"\n cols=\"1\"\n [class.multi-column]=\"true\">\n\n <mat-grid-tile *ngFor=\"let widget of section.dynamic_layout_dashboard_widgets_attributes\" [colspan]=\"1\" [rowspan]=\"1\">\n <mantle-dynamic-layout-editor-element\n [element]=\"widget\"\n elementType=\"widget\">\n </mantle-dynamic-layout-editor-element>\n </mat-grid-tile>\n\n </mat-grid-list>\n</div>\n", styles: [""], components: [{ type: i1.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i1.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }, { type: i2.DynamicLayoutEditorElementComponent, selector: "mantle-dynamic-layout-editor-element", inputs: ["element", "elementType", "showControls"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DashboardLayoutEditorSectionComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{
|
|
14
|
+
selector: 'mantle-dashboard-layout-editor-section',
|
|
15
|
+
templateUrl: './dashboard-layout-editor-section.component.html',
|
|
16
|
+
styleUrls: ['./dashboard-layout-editor-section.component.scss']
|
|
17
|
+
}]
|
|
18
|
+
}], ctorParameters: function () { return []; }, propDecorators: { section: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}] } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC1lZGl0b3Ivc2VjdGlvbnMvZGFzaGJvYXJkLWxheW91dC1lZGl0b3Itc2VjdGlvbi9kYXNoYm9hcmQtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy9kYXNoYm9hcmQtbGF5b3V0LWVkaXRvci1zZWN0aW9uL2Rhc2hib2FyZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBUWpELE1BQU0sT0FBTyxxQ0FBcUM7SUFJaEQsZ0JBQWdCLENBQUM7O21JQUpOLHFDQUFxQzt1SEFBckMscUNBQXFDLDhHQ1JsRCxzZUFlQTs0RkRQYSxxQ0FBcUM7a0JBTGpELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsV0FBVyxFQUFFLGtEQUFrRDtvQkFDL0QsU0FBUyxFQUFFLENBQUMsa0RBQWtELENBQUM7aUJBQ2hFOzBFQUdVLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IER5bmFtaWNMYXlvdXRFZGl0b3JTZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGF0YS1zdHJ1Y3R1cmVzL2R5bmFtaWMtbGF5b3V0LnN0cnVjdHVyZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1kYXNoYm9hcmQtbGF5b3V0LWVkaXRvci1zZWN0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rhc2hib2FyZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXNoYm9hcmQtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkTGF5b3V0RWRpdG9yU2VjdGlvbkNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgc2VjdGlvbiE6IER5bmFtaWNMYXlvdXRFZGl0b3JTZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJncmlkLWxheW91dC1lZGl0b3Itc2VjdGlvblwiPlxuICA8bWF0LWdyaWQtbGlzdFxuICAgICAgcm93SGVpZ2h0PVwiMTgwcHhcIlxuICAgICAgY29scz1cIjFcIlxuICAgICAgW2NsYXNzLm11bHRpLWNvbHVtbl09XCJ0cnVlXCI+XG5cbiAgICA8bWF0LWdyaWQtdGlsZSAqbmdGb3I9XCJsZXQgd2lkZ2V0IG9mIHNlY3Rpb24uZHluYW1pY19sYXlvdXRfZGFzaGJvYXJkX3dpZGdldHNfYXR0cmlidXRlc1wiIFtjb2xzcGFuXT1cIjFcIiBbcm93c3Bhbl09XCIxXCI+XG4gICAgICA8bWFudGxlLWR5bmFtaWMtbGF5b3V0LWVkaXRvci1lbGVtZW50XG4gICAgICAgIFtlbGVtZW50XT1cIndpZGdldFwiXG4gICAgICAgIGVsZW1lbnRUeXBlPVwid2lkZ2V0XCI+XG4gICAgICA8L21hbnRsZS1keW5hbWljLWxheW91dC1lZGl0b3ItZWxlbWVudD5cbiAgICA8L21hdC1ncmlkLXRpbGU+XG5cbiAgPC9tYXQtZ3JpZC1saXN0PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../grid-layout-editor-section/grid-layout-editor-section.component";
|
|
4
|
+
import * as i2 from "../table-layout-editor-section/table-layout-editor-section.component";
|
|
5
|
+
import * as i3 from "../dashboard-layout-editor-section/dashboard-layout-editor-section.component";
|
|
6
|
+
import * as i4 from "../markdown-layout-editor-section/markdown-layout-editor-section.component";
|
|
7
|
+
import * as i5 from "@angular/common";
|
|
8
|
+
export class DynamicLayoutEditorSectionComponent {
|
|
9
|
+
constructor() { }
|
|
10
|
+
}
|
|
11
|
+
DynamicLayoutEditorSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicLayoutEditorSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
DynamicLayoutEditorSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicLayoutEditorSectionComponent, selector: "mantle-dynamic-layout-editor-section", inputs: { layoutEditorPageService: "layoutEditorPageService", section: "section" }, ngImport: i0, template: "<ng-container [ngSwitch]=\"section.layout_style\">\n\n <ng-container *ngSwitchCase=\"'grid'\">\n <mantle-grid-layout-editor-section\n [section]=\"section\">\n </mantle-grid-layout-editor-section>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'table'\">\n <mantle-table-layout-editor-section\n [section]=\"section\">\n </mantle-table-layout-editor-section>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'dashboard'\">\n <mantle-dashboard-layout-editor-section\n [section]=\"section\">\n </mantle-dashboard-layout-editor-section>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'markdown'\">\n <mantle-markdown-layout-editor-section\n [section]=\"section\">\n </mantle-markdown-layout-editor-section>\n </ng-container>\n\n</ng-container>\n", styles: [""], components: [{ type: i1.GridLayoutEditorSectionComponent, selector: "mantle-grid-layout-editor-section", inputs: ["section", "defaultRowHeight"] }, { type: i2.TableLayoutEditorSectionComponent, selector: "mantle-table-layout-editor-section", inputs: ["section"] }, { type: i3.DashboardLayoutEditorSectionComponent, selector: "mantle-dashboard-layout-editor-section", inputs: ["section"] }, { type: i4.MarkdownLayoutEditorSectionComponent, selector: "mantle-markdown-layout-editor-section", inputs: ["section"] }], directives: [{ type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicLayoutEditorSectionComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{
|
|
16
|
+
selector: 'mantle-dynamic-layout-editor-section',
|
|
17
|
+
templateUrl: './dynamic-layout-editor-section.component.html',
|
|
18
|
+
styleUrls: ['./dynamic-layout-editor-section.component.scss']
|
|
19
|
+
}]
|
|
20
|
+
}], ctorParameters: function () { return []; }, propDecorators: { layoutEditorPageService: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}], section: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}] } });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1sYXlvdXQtZWRpdG9yLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFudGxlL3NyYy9saWIvY29tcG9uZW50cy9sYXlvdXQtZWRpdG9yL3NlY3Rpb25zL2R5bmFtaWMtbGF5b3V0LWVkaXRvci1zZWN0aW9uL2R5bmFtaWMtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy9keW5hbWljLWxheW91dC1lZGl0b3Itc2VjdGlvbi9keW5hbWljLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVNqRCxNQUFNLE9BQU8sbUNBQW1DO0lBSzlDLGdCQUFnQixDQUFDOztpSUFMTixtQ0FBbUM7cUhBQW5DLG1DQUFtQyxnS0NUaEQsK3lCQTJCQTs0RkRsQmEsbUNBQW1DO2tCQUwvQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7b0JBQ2hELFdBQVcsRUFBRSxnREFBZ0Q7b0JBQzdELFNBQVMsRUFBRSxDQUFDLGdEQUFnRCxDQUFDO2lCQUM5RDswRUFHVSx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0xheW91dEVkaXRvclNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9kYXRhLXN0cnVjdHVyZXMvZHluYW1pYy1sYXlvdXQuc3RydWN0dXJlJztcbmltcG9ydCB7IExheW91dEVkaXRvclBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvaW50ZXJmYWNlcy9sYXlvdXQtZWRpdG9yLXBhZ2Uuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1keW5hbWljLWxheW91dC1lZGl0b3Itc2VjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0xheW91dEVkaXRvclNlY3Rpb25Db21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGxheW91dEVkaXRvclBhZ2VTZXJ2aWNlITogTGF5b3V0RWRpdG9yUGFnZVNlcnZpY2U7XG4gIEBJbnB1dCgpIHNlY3Rpb24hOiBEeW5hbWljTGF5b3V0RWRpdG9yU2VjdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG59XG4iLCI8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzZWN0aW9uLmxheW91dF9zdHlsZVwiPlxuXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidncmlkJ1wiPlxuICAgIDxtYW50bGUtZ3JpZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb25cbiAgICAgICAgW3NlY3Rpb25dPVwic2VjdGlvblwiPlxuICAgIDwvbWFudGxlLWdyaWQtbGF5b3V0LWVkaXRvci1zZWN0aW9uPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGFibGUnXCI+XG4gICAgPG1hbnRsZS10YWJsZS1sYXlvdXQtZWRpdG9yLXNlY3Rpb25cbiAgICAgICAgW3NlY3Rpb25dPVwic2VjdGlvblwiPlxuICAgIDwvbWFudGxlLXRhYmxlLWxheW91dC1lZGl0b3Itc2VjdGlvbj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2Rhc2hib2FyZCdcIj5cbiAgICA8bWFudGxlLWRhc2hib2FyZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb25cbiAgICAgICAgW3NlY3Rpb25dPVwic2VjdGlvblwiPlxuICAgIDwvbWFudGxlLWRhc2hib2FyZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb24+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtYXJrZG93bidcIj5cbiAgICA8bWFudGxlLW1hcmtkb3duLWxheW91dC1lZGl0b3Itc2VjdGlvblxuICAgICAgICBbc2VjdGlvbl09XCJzZWN0aW9uXCI+XG4gICAgPC9tYW50bGUtbWFya2Rvd24tbGF5b3V0LWVkaXRvci1zZWN0aW9uPlxuICA8L25nLWNvbnRhaW5lcj5cblxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { MatDialog, MatDialogConfig } from '@angular/material/dialog';
|
|
3
|
+
import { DialogNestedFormComponent } from '../../../../components/form/dialog-nested-form/dialog-nested-form.component';
|
|
4
|
+
import { ArrayService } from '../../../../services/array.service';
|
|
5
|
+
import { ScreenSizeService } from '../../../../services/screen-size.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../../services/screen-size.service";
|
|
8
|
+
import * as i2 from "@angular/material/dialog";
|
|
9
|
+
import * as i3 from "../../../../services/array.service";
|
|
10
|
+
import * as i4 from "@angular/material/grid-list";
|
|
11
|
+
import * as i5 from "../../elements/dynamic-layout-editor-element/dynamic-layout-editor-element.component";
|
|
12
|
+
import * as i6 from "@angular/material/button";
|
|
13
|
+
import * as i7 from "@angular/material/icon";
|
|
14
|
+
import * as i8 from "@angular/common";
|
|
15
|
+
import * as i9 from "@angular/flex-layout/flex";
|
|
16
|
+
export class GridLayoutEditorSectionComponent {
|
|
17
|
+
constructor(screenSizeService, dialog, arrayService) {
|
|
18
|
+
this.screenSizeService = screenSizeService;
|
|
19
|
+
this.dialog = dialog;
|
|
20
|
+
this.arrayService = arrayService;
|
|
21
|
+
this.defaultRowHeight = '120px';
|
|
22
|
+
this.numColumns = 1;
|
|
23
|
+
this.breakpointColumns = new Map([
|
|
24
|
+
['xs', 1],
|
|
25
|
+
['sm', 2],
|
|
26
|
+
['md', 2],
|
|
27
|
+
['lg', 3],
|
|
28
|
+
['xl', 4],
|
|
29
|
+
]);
|
|
30
|
+
this.screenSizeService.screenSize.subscribe((screenSize) => {
|
|
31
|
+
var _a;
|
|
32
|
+
if ((_a = this.section) === null || _a === void 0 ? void 0 : _a.singleColumn) {
|
|
33
|
+
this.numColumns = 1;
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
this.numColumns = this.breakpointColumns.get(screenSize) || 1;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
getColSpanForField(attribute) {
|
|
40
|
+
return (attribute.attr_type == 'text' || attribute.attr_type == 'string-lg' || attribute.attr_type == 'markdown') ? this.numColumns : 1;
|
|
41
|
+
}
|
|
42
|
+
getRowSpanForField(attribute) {
|
|
43
|
+
//return (attribute.attr_type == 'text' || attribute.attr_type == 'markdown') ? 2 : 1;
|
|
44
|
+
return 1;
|
|
45
|
+
}
|
|
46
|
+
onAddElementClicked() {
|
|
47
|
+
const dialogRef = this.dialog.open(DialogNestedFormComponent, this.elementDialogConfig());
|
|
48
|
+
dialogRef.afterClosed().subscribe(formData => {
|
|
49
|
+
if (!formData)
|
|
50
|
+
return;
|
|
51
|
+
this.section.dynamic_layout_grid_fields_attributes.push(formData);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
elementDialogConfig() {
|
|
55
|
+
const dialogConfig = new MatDialogConfig();
|
|
56
|
+
dialogConfig.data = {
|
|
57
|
+
title: 'New Layout Element',
|
|
58
|
+
data: {
|
|
59
|
+
label: '',
|
|
60
|
+
attr_type: 'string',
|
|
61
|
+
ordinal: this.arrayService.maxValueForAttribute(this.section.dynamic_layout_grid_fields_attributes, 'ordinal') + 1,
|
|
62
|
+
user_specified: true
|
|
63
|
+
},
|
|
64
|
+
section: {
|
|
65
|
+
singleColumn: true,
|
|
66
|
+
elements: [
|
|
67
|
+
{ label: 'Label', attr: 'label', type: 'string', required: true },
|
|
68
|
+
{ label: 'Type', attr: 'attr_type', type: 'dropdown', required: true,
|
|
69
|
+
options: {
|
|
70
|
+
values: [
|
|
71
|
+
{ value: 'string', label: 'String' },
|
|
72
|
+
{ value: 'string-lg', label: 'Wide String' },
|
|
73
|
+
{ value: 'text', label: 'Text Area' },
|
|
74
|
+
{ value: 'chips', label: 'Chips' },
|
|
75
|
+
{ value: 'number', label: 'Number' },
|
|
76
|
+
{ value: 'date', label: 'Date' },
|
|
77
|
+
{ value: 'datetime', label: 'Date & Time' },
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
dialogConfig.width = '40%';
|
|
85
|
+
return dialogConfig;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
GridLayoutEditorSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GridLayoutEditorSectionComponent, deps: [{ token: i1.ScreenSizeService }, { token: i2.MatDialog }, { token: i3.ArrayService }], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
+
GridLayoutEditorSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: GridLayoutEditorSectionComponent, selector: "mantle-grid-layout-editor-section", inputs: { section: "section", defaultRowHeight: "defaultRowHeight" }, ngImport: i0, template: "<div class=\"grid-layout-editor-section\">\n <mat-grid-list\n [rowHeight]=\"section.rowHeight || defaultRowHeight\"\n [cols]=\"section.singleColumn ? 1 : numColumns\"\n [class.multi-column]=\"section.singleColumn ? false : numColumns > 1\">\n\n <ng-container *ngFor=\"let element of section.dynamic_layout_grid_fields_attributes\">\n <mat-grid-tile *ngIf=\"!element._destroy\" [colspan]=\"section.singleColumn ? 1 : getColSpanForField(element)\" [rowspan]=\"getRowSpanForField(element)\">\n <mantle-dynamic-layout-editor-element\n elementType=\"field\"\n [element]=\"element\"\n [showControls]=\"!section.elements_locked\">\n </mantle-dynamic-layout-editor-element>\n </mat-grid-tile>\n </ng-container>\n\n </mat-grid-list>\n</div>\n\n<div fxLayout=\"row\" fxLayoutAlign=\"center start\" fxLayoutGap=\"16px\" class=\"section-controls\">\n <div fxFlex=\"1 1 auto\"></div>\n <div fxFlex=\"0 0 auto\" *ngIf=\"!section.elements_locked\">\n <button mat-raised-button\n color=\"primary\"\n type=\"button\"\n (click)=\"onAddElementClicked()\">\n <mat-icon>add</mat-icon>\n </button>\n </div>\n</div>\n", styles: [".section-controls{margin-top:16px}.section-controls button{padding:0;min-width:36px}\n"], components: [{ type: i4.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i4.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }, { type: i5.DynamicLayoutEditorElementComponent, selector: "mantle-dynamic-layout-editor-element", inputs: ["element", "elementType", "showControls"] }, { type: i6.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: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: 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: 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"] }] });
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GridLayoutEditorSectionComponent, decorators: [{
|
|
91
|
+
type: Component,
|
|
92
|
+
args: [{
|
|
93
|
+
selector: 'mantle-grid-layout-editor-section',
|
|
94
|
+
templateUrl: './grid-layout-editor-section.component.html',
|
|
95
|
+
styleUrls: ['./grid-layout-editor-section.component.scss']
|
|
96
|
+
}]
|
|
97
|
+
}], ctorParameters: function () { return [{ type: i1.ScreenSizeService }, { type: i2.MatDialog }, { type: i3.ArrayService }]; }, propDecorators: { section: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}], defaultRowHeight: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}] } });
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFudGxlL3NyYy9saWIvY29tcG9uZW50cy9sYXlvdXQtZWRpdG9yL3NlY3Rpb25zL2dyaWQtbGF5b3V0LWVkaXRvci1zZWN0aW9uL2dyaWQtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy9ncmlkLWxheW91dC1lZGl0b3Itc2VjdGlvbi9ncmlkLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZFQUE2RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7Ozs7QUFPN0UsTUFBTSxPQUFPLGdDQUFnQztJQWUzQyxZQUFvQixpQkFBb0MsRUFBVSxNQUFpQixFQUFVLFlBQTBCO1FBQW5HLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFaOUcscUJBQWdCLEdBQVcsT0FBTyxDQUFDO1FBRXJDLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFFdEIsc0JBQWlCLEdBQUcsSUFBSSxHQUFHLENBQUM7WUFDbEMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ1QsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ1QsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ1QsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ1QsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ1YsQ0FBQyxDQUFDO1FBR0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRTs7WUFDOUQsSUFBSSxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLFlBQVksRUFBRTtnQkFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7Z0JBQ3BCLE9BQU87YUFDUjtZQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBdUM7UUFDeEQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxTQUFTLElBQUksTUFBTSxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksV0FBVyxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxSSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBdUM7UUFDeEQsc0ZBQXNGO1FBQ3RGLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBRTFGLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDM0MsSUFBSSxDQUFDLFFBQVE7Z0JBQUUsT0FBTztZQUV0QixJQUFJLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsTUFBTSxZQUFZLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUMzQyxZQUFZLENBQUMsSUFBSSxHQUFHO1lBQ2xCLEtBQUssRUFBRSxvQkFBb0I7WUFDM0IsSUFBSSxFQUFFO2dCQUNKLEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxRQUFRO2dCQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUM7Z0JBQ2xILGNBQWMsRUFBRSxJQUFJO2FBQ3JCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLFlBQVksRUFBRSxJQUFJO2dCQUNsQixRQUFRLEVBQUU7b0JBQ1IsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO29CQUNqRSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJO3dCQUNsRSxPQUFPLEVBQUU7NEJBQ1AsTUFBTSxFQUFFO2dDQUNOLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFO2dDQUNwQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRTtnQ0FDNUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7Z0NBQ3JDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO2dDQUNsQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtnQ0FDcEMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0NBQ2hDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFOzZCQUM1Qzt5QkFDRjtxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztRQUNGLFlBQVksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRTNCLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7OzhIQTlFVSxnQ0FBZ0M7a0hBQWhDLGdDQUFnQywrSUNaN0MsMnJDQThCQTs0RkRsQmEsZ0NBQWdDO2tCQUw1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFdBQVcsRUFBRSw2Q0FBNkM7b0JBQzFELFNBQVMsRUFBRSxDQUFDLDZDQUE2QyxDQUFDO2lCQUMzRDsySkFHVSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dDb25maWcgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgRHluYW1pY0xheW91dEVkaXRvclNlY3Rpb24sIER5bmFtaWNMYXlvdXRFZGl0b3JGb3JtRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi9kYXRhLXN0cnVjdHVyZXMvZHluYW1pYy1sYXlvdXQuc3RydWN0dXJlJztcbmltcG9ydCB7IERpYWxvZ05lc3RlZEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2Zvcm0vZGlhbG9nLW5lc3RlZC1mb3JtL2RpYWxvZy1uZXN0ZWQtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXJyYXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvYXJyYXkuc2VydmljZSc7XG5pbXBvcnQgeyBTY3JlZW5TaXplU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3NjcmVlbi1zaXplLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYW50bGUtZ3JpZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC1sYXlvdXQtZWRpdG9yLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmlkLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRMYXlvdXRFZGl0b3JTZWN0aW9uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBzZWN0aW9uITogRHluYW1pY0xheW91dEVkaXRvclNlY3Rpb247XG4gIEBJbnB1dCgpIGRlZmF1bHRSb3dIZWlnaHQ6IHN0cmluZyA9ICcxMjBweCc7XG5cbiAgcHVibGljIG51bUNvbHVtbnM6IG51bWJlciA9IDE7XG5cbiAgcHJpdmF0ZSBicmVha3BvaW50Q29sdW1ucyA9IG5ldyBNYXAoW1xuICAgIFsneHMnLCAxXSxcbiAgICBbJ3NtJywgMl0sXG4gICAgWydtZCcsIDJdLFxuICAgIFsnbGcnLCAzXSxcbiAgICBbJ3hsJywgNF0sXG4gIF0pO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2NyZWVuU2l6ZVNlcnZpY2U6IFNjcmVlblNpemVTZXJ2aWNlLCBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLCBwcml2YXRlIGFycmF5U2VydmljZTogQXJyYXlTZXJ2aWNlKSB7XG4gICAgdGhpcy5zY3JlZW5TaXplU2VydmljZS5zY3JlZW5TaXplLnN1YnNjcmliZSgoc2NyZWVuU2l6ZTogYW55KSA9PiB7XG4gICAgICBpZiAodGhpcy5zZWN0aW9uPy5zaW5nbGVDb2x1bW4pIHtcbiAgICAgICAgdGhpcy5udW1Db2x1bW5zID0gMTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLm51bUNvbHVtbnMgPSB0aGlzLmJyZWFrcG9pbnRDb2x1bW5zLmdldChzY3JlZW5TaXplKSB8fCAxO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Q29sU3BhbkZvckZpZWxkKGF0dHJpYnV0ZTogRHluYW1pY0xheW91dEVkaXRvckZvcm1GaWVsZCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChhdHRyaWJ1dGUuYXR0cl90eXBlID09ICd0ZXh0JyB8fCBhdHRyaWJ1dGUuYXR0cl90eXBlID09ICdzdHJpbmctbGcnIHx8IGF0dHJpYnV0ZS5hdHRyX3R5cGUgPT0gJ21hcmtkb3duJykgPyB0aGlzLm51bUNvbHVtbnMgOiAxO1xuICB9XG5cbiAgZ2V0Um93U3BhbkZvckZpZWxkKGF0dHJpYnV0ZTogRHluYW1pY0xheW91dEVkaXRvckZvcm1GaWVsZCk6IG51bWJlciB7XG4gICAgLy9yZXR1cm4gKGF0dHJpYnV0ZS5hdHRyX3R5cGUgPT0gJ3RleHQnIHx8IGF0dHJpYnV0ZS5hdHRyX3R5cGUgPT0gJ21hcmtkb3duJykgPyAyIDogMTtcbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIG9uQWRkRWxlbWVudENsaWNrZWQoKSB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihEaWFsb2dOZXN0ZWRGb3JtQ29tcG9uZW50LCB0aGlzLmVsZW1lbnREaWFsb2dDb25maWcoKSk7XG5cbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoZm9ybURhdGEgPT4ge1xuICAgICAgaWYgKCFmb3JtRGF0YSkgcmV0dXJuO1xuXG4gICAgICB0aGlzLnNlY3Rpb24uZHluYW1pY19sYXlvdXRfZ3JpZF9maWVsZHNfYXR0cmlidXRlcy5wdXNoKGZvcm1EYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIGVsZW1lbnREaWFsb2dDb25maWcoKTogTWF0RGlhbG9nQ29uZmlnIHtcbiAgICBjb25zdCBkaWFsb2dDb25maWcgPSBuZXcgTWF0RGlhbG9nQ29uZmlnKCk7XG4gICAgZGlhbG9nQ29uZmlnLmRhdGEgPSB7XG4gICAgICB0aXRsZTogJ05ldyBMYXlvdXQgRWxlbWVudCcsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGxhYmVsOiAnJyxcbiAgICAgICAgYXR0cl90eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgb3JkaW5hbDogdGhpcy5hcnJheVNlcnZpY2UubWF4VmFsdWVGb3JBdHRyaWJ1dGUodGhpcy5zZWN0aW9uLmR5bmFtaWNfbGF5b3V0X2dyaWRfZmllbGRzX2F0dHJpYnV0ZXMsICdvcmRpbmFsJykgKyAxLFxuICAgICAgICB1c2VyX3NwZWNpZmllZDogdHJ1ZVxuICAgICAgfSxcbiAgICAgIHNlY3Rpb246IHtcbiAgICAgICAgc2luZ2xlQ29sdW1uOiB0cnVlLFxuICAgICAgICBlbGVtZW50czogW1xuICAgICAgICAgIHsgbGFiZWw6ICdMYWJlbCcsIGF0dHI6ICdsYWJlbCcsIHR5cGU6ICdzdHJpbmcnLCByZXF1aXJlZDogdHJ1ZSB9LFxuICAgICAgICAgIHsgbGFiZWw6ICdUeXBlJywgYXR0cjogJ2F0dHJfdHlwZScsIHR5cGU6ICdkcm9wZG93bicsIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICB2YWx1ZXM6IFtcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAnc3RyaW5nJywgbGFiZWw6ICdTdHJpbmcnIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ3N0cmluZy1sZycsIGxhYmVsOiAnV2lkZSBTdHJpbmcnIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ3RleHQnLCBsYWJlbDogJ1RleHQgQXJlYScgfSxcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAnY2hpcHMnLCBsYWJlbDogJ0NoaXBzJyB9LFxuICAgICAgICAgICAgICAgIHsgdmFsdWU6ICdudW1iZXInLCBsYWJlbDogJ051bWJlcicgfSxcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAnZGF0ZScsIGxhYmVsOiAnRGF0ZScgfSxcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAnZGF0ZXRpbWUnLCBsYWJlbDogJ0RhdGUgJiBUaW1lJyB9LFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9XG4gICAgfTtcbiAgICBkaWFsb2dDb25maWcud2lkdGggPSAnNDAlJztcblxuICAgIHJldHVybiBkaWFsb2dDb25maWc7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImdyaWQtbGF5b3V0LWVkaXRvci1zZWN0aW9uXCI+XG4gIDxtYXQtZ3JpZC1saXN0XG4gICAgICBbcm93SGVpZ2h0XT1cInNlY3Rpb24ucm93SGVpZ2h0IHx8IGRlZmF1bHRSb3dIZWlnaHRcIlxuICAgICAgW2NvbHNdPVwic2VjdGlvbi5zaW5nbGVDb2x1bW4gPyAxIDogbnVtQ29sdW1uc1wiXG4gICAgICBbY2xhc3MubXVsdGktY29sdW1uXT1cInNlY3Rpb24uc2luZ2xlQ29sdW1uID8gZmFsc2UgOiBudW1Db2x1bW5zID4gMVwiPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZWxlbWVudCBvZiBzZWN0aW9uLmR5bmFtaWNfbGF5b3V0X2dyaWRfZmllbGRzX2F0dHJpYnV0ZXNcIj5cbiAgICAgIDxtYXQtZ3JpZC10aWxlICpuZ0lmPVwiIWVsZW1lbnQuX2Rlc3Ryb3lcIiBbY29sc3Bhbl09XCJzZWN0aW9uLnNpbmdsZUNvbHVtbiA/IDEgOiBnZXRDb2xTcGFuRm9yRmllbGQoZWxlbWVudClcIiBbcm93c3Bhbl09XCJnZXRSb3dTcGFuRm9yRmllbGQoZWxlbWVudClcIj5cbiAgICAgICAgPG1hbnRsZS1keW5hbWljLWxheW91dC1lZGl0b3ItZWxlbWVudFxuICAgICAgICAgICAgZWxlbWVudFR5cGU9XCJmaWVsZFwiXG4gICAgICAgICAgICBbZWxlbWVudF09XCJlbGVtZW50XCJcbiAgICAgICAgICAgIFtzaG93Q29udHJvbHNdPVwiIXNlY3Rpb24uZWxlbWVudHNfbG9ja2VkXCI+XG4gICAgICAgIDwvbWFudGxlLWR5bmFtaWMtbGF5b3V0LWVkaXRvci1lbGVtZW50PlxuICAgICAgPC9tYXQtZ3JpZC10aWxlPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gIDwvbWF0LWdyaWQtbGlzdD5cbjwvZGl2PlxuXG48ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBzdGFydFwiIGZ4TGF5b3V0R2FwPVwiMTZweFwiIGNsYXNzPVwic2VjdGlvbi1jb250cm9sc1wiPlxuICA8ZGl2IGZ4RmxleD1cIjEgMSBhdXRvXCI+PC9kaXY+XG4gIDxkaXYgZnhGbGV4PVwiMCAwIGF1dG9cIiAqbmdJZj1cIiFzZWN0aW9uLmVsZW1lbnRzX2xvY2tlZFwiPlxuICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJvbkFkZEVsZW1lbnRDbGlja2VkKClcIj5cbiAgICAgIDxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ngx-markdown";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class MarkdownLayoutEditorSectionComponent {
|
|
6
|
+
}
|
|
7
|
+
MarkdownLayoutEditorSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MarkdownLayoutEditorSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
+
MarkdownLayoutEditorSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MarkdownLayoutEditorSectionComponent, selector: "mantle-markdown-layout-editor-section", inputs: { section: "section" }, ngImport: i0, template: "<div class=\"markdown-wrapper\">\n <markdown ngPreserveWhitespaces *ngFor=\"let element of section.dynamic_layout_markdown_elements_attributes\">\n {{ element.text }}\n </markdown>\n</div>\n", styles: [""], components: [{ type: i1.MarkdownComponent, selector: "markdown, [markdown]", inputs: ["data", "src", "emoji", "katex", "katexOptions", "lineHighlight", "line", "lineOffset", "lineNumbers", "start"], outputs: ["error", "load", "ready"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MarkdownLayoutEditorSectionComponent, decorators: [{
|
|
10
|
+
type: Component,
|
|
11
|
+
args: [{
|
|
12
|
+
selector: 'mantle-markdown-layout-editor-section',
|
|
13
|
+
templateUrl: './markdown-layout-editor-section.component.html',
|
|
14
|
+
styleUrls: ['./markdown-layout-editor-section.component.scss']
|
|
15
|
+
}]
|
|
16
|
+
}], propDecorators: { section: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}] } });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy9tYXJrZG93bi1sYXlvdXQtZWRpdG9yLXNlY3Rpb24vbWFya2Rvd24tbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy9tYXJrZG93bi1sYXlvdXQtZWRpdG9yLXNlY3Rpb24vbWFya2Rvd24tbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUWpELE1BQU0sT0FBTyxvQ0FBb0M7O2tJQUFwQyxvQ0FBb0M7c0hBQXBDLG9DQUFvQyw2R0NSakQscU1BS0E7NEZER2Esb0NBQW9DO2tCQUxoRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1Q0FBdUM7b0JBQ2pELFdBQVcsRUFBRSxpREFBaUQ7b0JBQzlELFNBQVMsRUFBRSxDQUFDLGlEQUFpRCxDQUFDO2lCQUMvRDs4QkFHVSxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljTGF5b3V0RWRpdG9yU2VjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2RhdGEtc3RydWN0dXJlcy9keW5hbWljLWxheW91dC5zdHJ1Y3R1cmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYW50bGUtbWFya2Rvd24tbGF5b3V0LWVkaXRvci1zZWN0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcmtkb3duLWxheW91dC1lZGl0b3Itc2VjdGlvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hcmtkb3duTGF5b3V0RWRpdG9yU2VjdGlvbkNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgc2VjdGlvbiE6IER5bmFtaWNMYXlvdXRFZGl0b3JTZWN0aW9uO1xuXG59XG4iLCI8ZGl2IGNsYXNzPVwibWFya2Rvd24td3JhcHBlclwiPlxuICA8bWFya2Rvd24gbmdQcmVzZXJ2ZVdoaXRlc3BhY2VzICpuZ0Zvcj1cImxldCBlbGVtZW50IG9mIHNlY3Rpb24uZHluYW1pY19sYXlvdXRfbWFya2Rvd25fZWxlbWVudHNfYXR0cmlidXRlc1wiPlxuICAgIHt7IGVsZW1lbnQudGV4dCB9fVxuICA8L21hcmtkb3duPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { MatDialog, MatDialogConfig } from '@angular/material/dialog';
|
|
3
|
+
import { DialogNestedFormComponent } from '../../../../components/form/dialog-nested-form/dialog-nested-form.component';
|
|
4
|
+
import { ArrayService } from '../../../../services/array.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/material/dialog";
|
|
7
|
+
import * as i2 from "../../../../services/array.service";
|
|
8
|
+
import * as i3 from "@angular/material/grid-list";
|
|
9
|
+
import * as i4 from "../../elements/dynamic-layout-editor-element/dynamic-layout-editor-element.component";
|
|
10
|
+
import * as i5 from "@angular/material/button";
|
|
11
|
+
import * as i6 from "@angular/material/icon";
|
|
12
|
+
import * as i7 from "@angular/common";
|
|
13
|
+
import * as i8 from "@angular/flex-layout/extended";
|
|
14
|
+
import * as i9 from "@angular/flex-layout/flex";
|
|
15
|
+
export class TableLayoutEditorSectionComponent {
|
|
16
|
+
constructor(dialog, arrayService) {
|
|
17
|
+
this.dialog = dialog;
|
|
18
|
+
this.arrayService = arrayService;
|
|
19
|
+
}
|
|
20
|
+
onAddElementClicked() {
|
|
21
|
+
const dialogRef = this.dialog.open(DialogNestedFormComponent, this.elementDialogConfig());
|
|
22
|
+
dialogRef.afterClosed().subscribe(formData => {
|
|
23
|
+
if (!formData)
|
|
24
|
+
return;
|
|
25
|
+
this.section.dynamic_layout_table_columns_attributes.push(formData);
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
elementDialogConfig() {
|
|
29
|
+
const dialogConfig = new MatDialogConfig();
|
|
30
|
+
dialogConfig.data = {
|
|
31
|
+
title: 'New Table Column',
|
|
32
|
+
data: {
|
|
33
|
+
label: '',
|
|
34
|
+
attr_type: 'string',
|
|
35
|
+
ordinal: this.arrayService.maxValueForAttribute(this.section.dynamic_layout_table_columns_attributes, 'ordinal') + 1,
|
|
36
|
+
user_specified: true
|
|
37
|
+
},
|
|
38
|
+
section: {
|
|
39
|
+
singleColumn: true,
|
|
40
|
+
elements: [
|
|
41
|
+
{ label: 'Label', attr: 'label', type: 'string', required: true },
|
|
42
|
+
{ label: 'Type', attr: 'attr_type', type: 'dropdown', required: true,
|
|
43
|
+
options: {
|
|
44
|
+
values: [
|
|
45
|
+
{ value: 'string', label: 'String' },
|
|
46
|
+
{ value: 'string-lg', label: 'Wide String' },
|
|
47
|
+
{ value: 'text', label: 'Text Area' },
|
|
48
|
+
{ value: 'chips', label: 'Chips' },
|
|
49
|
+
{ value: 'number', label: 'Number' },
|
|
50
|
+
{ value: 'date', label: 'Date' },
|
|
51
|
+
{ value: 'datetime', label: 'Date & Time' },
|
|
52
|
+
]
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
dialogConfig.width = '40%';
|
|
59
|
+
return dialogConfig;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
TableLayoutEditorSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TableLayoutEditorSectionComponent, deps: [{ token: i1.MatDialog }, { token: i2.ArrayService }], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
+
TableLayoutEditorSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TableLayoutEditorSectionComponent, selector: "mantle-table-layout-editor-section", inputs: { section: "section" }, ngImport: i0, template: "<div class=\"table-layout-editor-section\">\n <h4 class=\"section-type-label\">Table</h4>\n <mat-grid-list rowHeight=\"120px\" [cols]=\"section.dynamic_layout_table_columns_attributes.length\" [class.multi-column]=\"true\" [ngStyle]=\"{ 'width.px': section.dynamic_layout_table_columns_attributes.length * 300 }\">\n\n <ng-container *ngFor=\"let element of section.dynamic_layout_table_columns_attributes\">\n <mat-grid-tile *ngIf=\"!element._destroy\" colspan=\"1\" rowspan=\"1\">\n <mantle-dynamic-layout-editor-element\n elementType=\"table-column\"\n [element]=\"element\"\n [showControls]=\"!section.elements_locked\">\n </mantle-dynamic-layout-editor-element>\n </mat-grid-tile>\n </ng-container>\n\n </mat-grid-list>\n</div>\n\n<div fxLayout=\"row\" fxLayoutAlign=\"center start\" fxLayoutGap=\"16px\" class=\"section-controls\">\n <div fxFlex=\"1 1 auto\"></div>\n <div fxFlex=\"0 0 auto\" *ngIf=\"!section.elements_locked\">\n <button mat-raised-button\n color=\"primary\"\n type=\"button\"\n (click)=\"onAddElementClicked()\">\n <mat-icon>add</mat-icon>\n </button>\n </div>\n</div>\n", styles: [".section-controls{margin-top:16px}.section-controls button{padding:0;min-width:36px}\n"], components: [{ type: i3.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i3.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }, { type: i4.DynamicLayoutEditorElementComponent, selector: "mantle-dynamic-layout-editor-element", inputs: ["element", "elementType", "showControls"] }, { 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"] }], directives: [{ type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i8.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: 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: 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"] }] });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TableLayoutEditorSectionComponent, decorators: [{
|
|
65
|
+
type: Component,
|
|
66
|
+
args: [{
|
|
67
|
+
selector: 'mantle-table-layout-editor-section',
|
|
68
|
+
templateUrl: './table-layout-editor-section.component.html',
|
|
69
|
+
styleUrls: ['./table-layout-editor-section.component.scss']
|
|
70
|
+
}]
|
|
71
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: i2.ArrayService }]; }, propDecorators: { section: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}] } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy90YWJsZS1sYXlvdXQtZWRpdG9yLXNlY3Rpb24vdGFibGUtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0LWVkaXRvci9zZWN0aW9ucy90YWJsZS1sYXlvdXQtZWRpdG9yLXNlY3Rpb24vdGFibGUtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkVBQTZFLENBQUM7QUFDeEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7OztBQU9sRSxNQUFNLE9BQU8saUNBQWlDO0lBSTVDLFlBQW9CLE1BQWlCLEVBQVUsWUFBMEI7UUFBckQsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQUksQ0FBQztJQUU5RSxtQkFBbUI7UUFDakIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztRQUUxRixTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNDLElBQUksQ0FBQyxRQUFRO2dCQUFFLE9BQU87WUFFdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE1BQU0sWUFBWSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDM0MsWUFBWSxDQUFDLElBQUksR0FBRztZQUNsQixLQUFLLEVBQUUsa0JBQWtCO1lBQ3pCLElBQUksRUFBRTtnQkFDSixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsUUFBUTtnQkFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDO2dCQUNwSCxjQUFjLEVBQUUsSUFBSTthQUNyQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxZQUFZLEVBQUUsSUFBSTtnQkFDbEIsUUFBUSxFQUFFO29CQUNSLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtvQkFDakUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSTt3QkFDbEUsT0FBTyxFQUFFOzRCQUNQLE1BQU0sRUFBRTtnQ0FDTixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtnQ0FDcEMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7Z0NBQzVDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFO2dDQUNyQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQ0FDbEMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0NBQ3BDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO2dDQUNoQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRTs2QkFDNUM7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7UUFDRixZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUUzQixPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDOzsrSEFqRFUsaUNBQWlDO21IQUFqQyxpQ0FBaUMsMEdDWDlDLDZxQ0E0QkE7NEZEakJhLGlDQUFpQztrQkFMN0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0NBQW9DO29CQUM5QyxXQUFXLEVBQUUsOENBQThDO29CQUMzRCxTQUFTLEVBQUUsQ0FBQyw4Q0FBOEMsQ0FBQztpQkFDNUQ7MkhBR1UsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dDb25maWcgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgRHluYW1pY0xheW91dEVkaXRvclNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9kYXRhLXN0cnVjdHVyZXMvZHluYW1pYy1sYXlvdXQuc3RydWN0dXJlJztcbmltcG9ydCB7IERpYWxvZ05lc3RlZEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2Zvcm0vZGlhbG9nLW5lc3RlZC1mb3JtL2RpYWxvZy1uZXN0ZWQtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXJyYXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvYXJyYXkuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS10YWJsZS1sYXlvdXQtZWRpdG9yLXNlY3Rpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtbGF5b3V0LWVkaXRvci1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVGFibGVMYXlvdXRFZGl0b3JTZWN0aW9uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBzZWN0aW9uITogRHluYW1pY0xheW91dEVkaXRvclNlY3Rpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZywgcHJpdmF0ZSBhcnJheVNlcnZpY2U6IEFycmF5U2VydmljZSkgeyB9XG5cbiAgb25BZGRFbGVtZW50Q2xpY2tlZCgpIHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ05lc3RlZEZvcm1Db21wb25lbnQsIHRoaXMuZWxlbWVudERpYWxvZ0NvbmZpZygpKTtcblxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShmb3JtRGF0YSA9PiB7XG4gICAgICBpZiAoIWZvcm1EYXRhKSByZXR1cm47XG5cbiAgICAgIHRoaXMuc2VjdGlvbi5keW5hbWljX2xheW91dF90YWJsZV9jb2x1bW5zX2F0dHJpYnV0ZXMucHVzaChmb3JtRGF0YSk7XG4gICAgfSk7XG4gIH1cblxuICBlbGVtZW50RGlhbG9nQ29uZmlnKCk6IE1hdERpYWxvZ0NvbmZpZyB7XG4gICAgY29uc3QgZGlhbG9nQ29uZmlnID0gbmV3IE1hdERpYWxvZ0NvbmZpZygpO1xuICAgIGRpYWxvZ0NvbmZpZy5kYXRhID0ge1xuICAgICAgdGl0bGU6ICdOZXcgVGFibGUgQ29sdW1uJyxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgbGFiZWw6ICcnLFxuICAgICAgICBhdHRyX3R5cGU6ICdzdHJpbmcnLFxuICAgICAgICBvcmRpbmFsOiB0aGlzLmFycmF5U2VydmljZS5tYXhWYWx1ZUZvckF0dHJpYnV0ZSh0aGlzLnNlY3Rpb24uZHluYW1pY19sYXlvdXRfdGFibGVfY29sdW1uc19hdHRyaWJ1dGVzLCAnb3JkaW5hbCcpICsgMSxcbiAgICAgICAgdXNlcl9zcGVjaWZpZWQ6IHRydWVcbiAgICAgIH0sXG4gICAgICBzZWN0aW9uOiB7XG4gICAgICAgIHNpbmdsZUNvbHVtbjogdHJ1ZSxcbiAgICAgICAgZWxlbWVudHM6IFtcbiAgICAgICAgICB7IGxhYmVsOiAnTGFiZWwnLCBhdHRyOiAnbGFiZWwnLCB0eXBlOiAnc3RyaW5nJywgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgICB7IGxhYmVsOiAnVHlwZScsIGF0dHI6ICdhdHRyX3R5cGUnLCB0eXBlOiAnZHJvcGRvd24nLCByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVzOiBbXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ3N0cmluZycsIGxhYmVsOiAnU3RyaW5nJyB9LFxuICAgICAgICAgICAgICAgIHsgdmFsdWU6ICdzdHJpbmctbGcnLCBsYWJlbDogJ1dpZGUgU3RyaW5nJyB9LFxuICAgICAgICAgICAgICAgIHsgdmFsdWU6ICd0ZXh0JywgbGFiZWw6ICdUZXh0IEFyZWEnIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ2NoaXBzJywgbGFiZWw6ICdDaGlwcycgfSxcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAnbnVtYmVyJywgbGFiZWw6ICdOdW1iZXInIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ2RhdGUnLCBsYWJlbDogJ0RhdGUnIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ2RhdGV0aW1lJywgbGFiZWw6ICdEYXRlICYgVGltZScgfSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfVxuICAgIH07XG4gICAgZGlhbG9nQ29uZmlnLndpZHRoID0gJzQwJSc7XG5cbiAgICByZXR1cm4gZGlhbG9nQ29uZmlnO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWJsZS1sYXlvdXQtZWRpdG9yLXNlY3Rpb25cIj5cbiAgPGg0IGNsYXNzPVwic2VjdGlvbi10eXBlLWxhYmVsXCI+VGFibGU8L2g0PlxuICA8bWF0LWdyaWQtbGlzdCByb3dIZWlnaHQ9XCIxMjBweFwiIFtjb2xzXT1cInNlY3Rpb24uZHluYW1pY19sYXlvdXRfdGFibGVfY29sdW1uc19hdHRyaWJ1dGVzLmxlbmd0aFwiIFtjbGFzcy5tdWx0aS1jb2x1bW5dPVwidHJ1ZVwiIFtuZ1N0eWxlXT1cInsgJ3dpZHRoLnB4Jzogc2VjdGlvbi5keW5hbWljX2xheW91dF90YWJsZV9jb2x1bW5zX2F0dHJpYnV0ZXMubGVuZ3RoICogMzAwIH1cIj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVsZW1lbnQgb2Ygc2VjdGlvbi5keW5hbWljX2xheW91dF90YWJsZV9jb2x1bW5zX2F0dHJpYnV0ZXNcIj5cbiAgICAgIDxtYXQtZ3JpZC10aWxlICpuZ0lmPVwiIWVsZW1lbnQuX2Rlc3Ryb3lcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgIDxtYW50bGUtZHluYW1pYy1sYXlvdXQtZWRpdG9yLWVsZW1lbnRcbiAgICAgICAgICAgIGVsZW1lbnRUeXBlPVwidGFibGUtY29sdW1uXCJcbiAgICAgICAgICAgIFtlbGVtZW50XT1cImVsZW1lbnRcIlxuICAgICAgICAgICAgW3Nob3dDb250cm9sc109XCIhc2VjdGlvbi5lbGVtZW50c19sb2NrZWRcIj5cbiAgICAgICAgPC9tYW50bGUtZHluYW1pYy1sYXlvdXQtZWRpdG9yLWVsZW1lbnQ+XG4gICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgPC9tYXQtZ3JpZC1saXN0PlxuPC9kaXY+XG5cbjxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIHN0YXJ0XCIgZnhMYXlvdXRHYXA9XCIxNnB4XCIgY2xhc3M9XCJzZWN0aW9uLWNvbnRyb2xzXCI+XG4gIDxkaXYgZnhGbGV4PVwiMSAxIGF1dG9cIj48L2Rpdj5cbiAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiICpuZ0lmPVwiIXNlY3Rpb24uZWxlbWVudHNfbG9ja2VkXCI+XG4gICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQWRkRWxlbWVudENsaWNrZWQoKVwiPlxuICAgICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree';
|
|
3
|
+
import { FlatTreeControl } from '@angular/cdk/tree';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/tree";
|
|
6
|
+
import * as i2 from "@angular/material/divider";
|
|
7
|
+
import * as i3 from "@angular/material/button";
|
|
8
|
+
import * as i4 from "@angular/material/icon";
|
|
9
|
+
import * as i5 from "@angular/flex-layout/flex";
|
|
10
|
+
import * as i6 from "@angular/common";
|
|
11
|
+
import * as i7 from "@angular/router";
|
|
12
|
+
import * as i8 from "@angular/material/badge";
|
|
13
|
+
export class NavTreeComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.reminderCount = 0;
|
|
16
|
+
this.navTreeFeatures = [];
|
|
17
|
+
this.treeFlattener = new MatTreeFlattener(this.transformer, this.getLevel, this.isExpandable, this.getChildren);
|
|
18
|
+
this.treeControl = new FlatTreeControl(this.getLevel, this.isExpandable);
|
|
19
|
+
this.dataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener);
|
|
20
|
+
}
|
|
21
|
+
ngOnChanges() {
|
|
22
|
+
this.dataSource.data = this.navTreeFeatures;
|
|
23
|
+
}
|
|
24
|
+
/** Transform the data to something the tree can read. */
|
|
25
|
+
transformer(node, level) {
|
|
26
|
+
return {
|
|
27
|
+
name: node.name,
|
|
28
|
+
icon: node.icon,
|
|
29
|
+
link: node.link,
|
|
30
|
+
level,
|
|
31
|
+
expandable: !!node.children && node.children.length > 0
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/** Get the level of the node */
|
|
35
|
+
getLevel(node) {
|
|
36
|
+
return node.level;
|
|
37
|
+
}
|
|
38
|
+
/** Get whether the node is expanded or not. */
|
|
39
|
+
isExpandable(node) {
|
|
40
|
+
return node.expandable;
|
|
41
|
+
}
|
|
42
|
+
/** Get whether the node has children or not. */
|
|
43
|
+
hasChild(index, node) {
|
|
44
|
+
return node.expandable;
|
|
45
|
+
}
|
|
46
|
+
/** Get the children for the node. */
|
|
47
|
+
getChildren(node) {
|
|
48
|
+
return node.children;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
NavTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
+
NavTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NavTreeComponent, selector: "mantle-nav-tree", inputs: { reminderCount: "reminderCount", navTreeFeatures: "navTreeFeatures" }, usesOnChanges: true, ngImport: i0, template: "<mat-tree [dataSource]=\"dataSource\" [treeControl]=\"treeControl\">\n\n <!-- This is the tree node template for leaf nodes -->\n <mat-tree-node *matTreeNodeDef=\"let node\" [class.leaf-node]=\"node.level > 0\">\n <div fxLayout=\"row\" class=\"tree-node-content\">\n <div fxFlex=\"0 0 28px\" *ngIf=\"node.level > 0\" class=\"tree-node-indent\">\n <mat-divider [vertical]=\"true\" color=\"primary\"></mat-divider>\n </div>\n <div fxFlex=\"1 0 1px\">\n <button mat-button [routerLink]=\"node.link\" routerLinkActive=\"active\" class=\"tree-node-button\">\n <mat-icon *ngIf=\"node.icon\"\n [matBadge]=\"(node.name == 'Reminders' && reminderCount > 0) ? reminderCount : undefined\"\n matBadgeColor=\"warn\"\n matBadgeSize=\"small\">\n {{ node.icon }}\n </mat-icon>\n <div class=\"node-label\">{{ node.name }}</div>\n </button>\n </div>\n </div>\n </mat-tree-node>\n\n <!-- This is the tree node template for expandable nodes -->\n <mat-tree-node *matTreeNodeDef=\"let node; when: hasChild\" fxLayout=\"row\" [class.leaf-node]=\"node.level > 0\">\n <div fxLayout=\"row\" class=\"tree-node-content\">\n <div fxFlex=\"0 0 28px\" *ngIf=\"node.level > 0\" class=\"tree-node-indent\">\n <mat-divider [vertical]=\"true\" color=\"primary\"></mat-divider>\n </div>\n <div fxFlex=\"1 0 1px\">\n <button fxFlex=\"1 0 1px\" mat-button matTreeNodeToggle class=\"tree-node-button\">\n <mat-icon *ngIf=\"node.icon\">{{ node.icon }}</mat-icon>\n <div class=\"node-label\">{{ node.name }}</div>\n </button>\n </div>\n </div>\n </mat-tree-node>\n\n</mat-tree>\n", styles: [".mat-tree-node .tree-node-content{min-height:48px}.mat-tree-node .tree-node-content .tree-node-button{text-align:left;border-radius:0;width:239px;margin:6px 0}.mat-tree-node .tree-node-content .tree-node-button .mat-icon{margin-right:8px}.mat-tree-node .tree-node-content .tree-node-button .node-label{display:inline-block;text-align:left;white-space:normal;line-height:1.25rem;width:calc(100% - 32px)}.mat-tree-node.leaf-node .tree-node-indent{position:relative}.mat-tree-node.leaf-node .tree-node-indent .mat-divider{position:absolute;top:0;bottom:0;right:0;border-width:2px}.mat-tree-node.leaf-node .tree-node-button{width:calc(211px - 20px)!important;margin:6px 0 6px 20px!important}\n"], components: [{ type: i1.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { type: i2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i1.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { type: i1.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { type: i5.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: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.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.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: i7.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["routerLink", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i8.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgePosition", "matBadgeSize", "matBadgeColor", "matBadgeOverlap", "matBadgeDescription", "matBadgeHidden", "matBadge"] }, { type: i1.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }] });
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavTreeComponent, decorators: [{
|
|
54
|
+
type: Component,
|
|
55
|
+
args: [{
|
|
56
|
+
selector: 'mantle-nav-tree',
|
|
57
|
+
templateUrl: './nav-tree.component.html',
|
|
58
|
+
styleUrls: ['./nav-tree.component.scss']
|
|
59
|
+
}]
|
|
60
|
+
}], ctorParameters: function () { return []; }, propDecorators: { reminderCount: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], navTreeFeatures: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}] } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFudGxlL3NyYy9saWIvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdi10cmVlL25hdi10cmVlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hbnRsZS9zcmMvbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXYtdHJlZS9uYXYtdHJlZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7QUEyQnBELE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0I7UUFIUyxrQkFBYSxHQUFXLENBQUMsQ0FBQztRQUMxQixvQkFBZSxHQUFVLEVBQUUsQ0FBQztRQUduQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksZ0JBQWdCLENBQ3ZDLElBQUksQ0FBQyxXQUFXLEVBQ2hCLElBQUksQ0FBQyxRQUFRLEVBQ2IsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXBCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QyxDQUFDO0lBRUQseURBQXlEO0lBQ3pELFdBQVcsQ0FBQyxJQUFvQixFQUFFLEtBQWE7UUFDN0MsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLEtBQUs7WUFDTCxVQUFVLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQztTQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUVELGdDQUFnQztJQUNoQyxRQUFRLENBQUMsSUFBa0I7UUFDekIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCwrQ0FBK0M7SUFDL0MsWUFBWSxDQUFDLElBQWtCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsZ0RBQWdEO0lBQ2hELFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBa0I7UUFDeEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxxQ0FBcUM7SUFDckMsV0FBVyxDQUFDLElBQW9CO1FBQzlCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOzs4R0ExRFUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsNEpDN0I3Qix3c0RBc0NBOzRGRFRhLGdCQUFnQjtrQkFMNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixXQUFXLEVBQUUsMkJBQTJCO29CQUN4QyxTQUFTLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztpQkFDekM7MEVBWVUsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUcmVlRmxhdERhdGFTb3VyY2UsIE1hdFRyZWVGbGF0dGVuZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJztcbmltcG9ydCB7IEZsYXRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcblxuLyoqIEZpbGUgbm9kZSBkYXRhIHdpdGggcG9zc2libGUgY2hpbGQgbm9kZXMuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdmlnYXRpb25Ob2RlIHtcbiAgbmFtZTogc3RyaW5nO1xuICBpY29uPzogc3RyaW5nO1xuICBsaW5rPzogc3RyaW5nO1xuICBjaGlsZHJlbj86IE5hdmlnYXRpb25Ob2RlW107XG59XG5cbi8qKlxuICogRmxhdHRlbmVkIHRyZWUgbm9kZSB0aGF0IGhhcyBiZWVuIGNyZWF0ZWQgZnJvbSBhIE5hdmlnYXRpb25Ob2RlIHRocm91Z2ggdGhlIGZsYXR0ZW5lci4gRmxhdHRlbmVkXG4gKiBub2RlcyBpbmNsdWRlIGxldmVsIGluZGV4IGFuZCB3aGV0aGVyIHRoZXkgY2FuIGJlIGV4cGFuZGVkIG9yIG5vdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbGF0VHJlZU5vZGUge1xuICBuYW1lOiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIGxpbms/OiBzdHJpbmc7XG4gIGxldmVsOiBudW1iZXI7XG4gIGV4cGFuZGFibGU6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1uYXYtdHJlZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uYXYtdHJlZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25hdi10cmVlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmF2VHJlZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgLyoqIFRoZSBUcmVlQ29udHJvbCBjb250cm9scyB0aGUgZXhwYW5kL2NvbGxhcHNlIHN0YXRlIG9mIHRyZWUgbm9kZXMuICAqL1xuICB0cmVlQ29udHJvbDogRmxhdFRyZWVDb250cm9sPEZsYXRUcmVlTm9kZT47XG5cbiAgLyoqIFRoZSBUcmVlRmxhdHRlbmVyIGlzIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIGZsYXQgbGlzdCBvZiBpdGVtcyBmcm9tIGhpZXJhcmNoaWNhbCBkYXRhLiAqL1xuICB0cmVlRmxhdHRlbmVyOiBNYXRUcmVlRmxhdHRlbmVyPE5hdmlnYXRpb25Ob2RlLCBGbGF0VHJlZU5vZGU+O1xuXG4gIC8qKiBUaGUgTWF0VHJlZUZsYXREYXRhU291cmNlIGNvbm5lY3RzIHRoZSBjb250cm9sIGFuZCBmbGF0dGVuZXIgdG8gcHJvdmlkZSBkYXRhLiAqL1xuICBkYXRhU291cmNlOiBNYXRUcmVlRmxhdERhdGFTb3VyY2U8TmF2aWdhdGlvbk5vZGUsIEZsYXRUcmVlTm9kZT47XG5cbiAgQElucHV0KCkgcmVtaW5kZXJDb3VudDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgbmF2VHJlZUZlYXR1cmVzOiBhbnlbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMudHJlZUZsYXR0ZW5lciA9IG5ldyBNYXRUcmVlRmxhdHRlbmVyKFxuICAgICAgdGhpcy50cmFuc2Zvcm1lcixcbiAgICAgIHRoaXMuZ2V0TGV2ZWwsXG4gICAgICB0aGlzLmlzRXhwYW5kYWJsZSxcbiAgICAgIHRoaXMuZ2V0Q2hpbGRyZW4pO1xuXG4gICAgdGhpcy50cmVlQ29udHJvbCA9IG5ldyBGbGF0VHJlZUNvbnRyb2wodGhpcy5nZXRMZXZlbCwgdGhpcy5pc0V4cGFuZGFibGUpO1xuICAgIHRoaXMuZGF0YVNvdXJjZSA9IG5ldyBNYXRUcmVlRmxhdERhdGFTb3VyY2UodGhpcy50cmVlQ29udHJvbCwgdGhpcy50cmVlRmxhdHRlbmVyKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gdGhpcy5uYXZUcmVlRmVhdHVyZXM7XG4gIH1cblxuICAvKiogVHJhbnNmb3JtIHRoZSBkYXRhIHRvIHNvbWV0aGluZyB0aGUgdHJlZSBjYW4gcmVhZC4gKi9cbiAgdHJhbnNmb3JtZXIobm9kZTogTmF2aWdhdGlvbk5vZGUsIGxldmVsOiBudW1iZXIpOiBGbGF0VHJlZU5vZGUge1xuICAgIHJldHVybiB7XG4gICAgICBuYW1lOiBub2RlLm5hbWUsXG4gICAgICBpY29uOiBub2RlLmljb24sXG4gICAgICBsaW5rOiBub2RlLmxpbmssXG4gICAgICBsZXZlbCxcbiAgICAgIGV4cGFuZGFibGU6ICEhbm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCA+IDBcbiAgICB9O1xuICB9XG5cbiAgLyoqIEdldCB0aGUgbGV2ZWwgb2YgdGhlIG5vZGUgKi9cbiAgZ2V0TGV2ZWwobm9kZTogRmxhdFRyZWVOb2RlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gbm9kZS5sZXZlbDtcbiAgfVxuXG4gIC8qKiBHZXQgd2hldGhlciB0aGUgbm9kZSBpcyBleHBhbmRlZCBvciBub3QuICovXG4gIGlzRXhwYW5kYWJsZShub2RlOiBGbGF0VHJlZU5vZGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gbm9kZS5leHBhbmRhYmxlO1xuICB9XG5cbiAgLyoqIEdldCB3aGV0aGVyIHRoZSBub2RlIGhhcyBjaGlsZHJlbiBvciBub3QuICovXG4gIGhhc0NoaWxkKGluZGV4OiBudW1iZXIsIG5vZGU6IEZsYXRUcmVlTm9kZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBub2RlLmV4cGFuZGFibGU7XG4gIH1cblxuICAvKiogR2V0IHRoZSBjaGlsZHJlbiBmb3IgdGhlIG5vZGUuICovXG4gIGdldENoaWxkcmVuKG5vZGU6IE5hdmlnYXRpb25Ob2RlKTogTmF2aWdhdGlvbk5vZGVbXSB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBub2RlLmNoaWxkcmVuO1xuICB9XG59XG4iLCI8bWF0LXRyZWUgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJ0cmVlQ29udHJvbFwiPlxuXG4gIDwhLS0gVGhpcyBpcyB0aGUgdHJlZSBub2RlIHRlbXBsYXRlIGZvciBsZWFmIG5vZGVzIC0tPlxuICA8bWF0LXRyZWUtbm9kZSAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZVwiIFtjbGFzcy5sZWFmLW5vZGVdPVwibm9kZS5sZXZlbCA+IDBcIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJ0cmVlLW5vZGUtY29udGVudFwiPlxuICAgICAgPGRpdiBmeEZsZXg9XCIwIDAgMjhweFwiICpuZ0lmPVwibm9kZS5sZXZlbCA+IDBcIiBjbGFzcz1cInRyZWUtbm9kZS1pbmRlbnRcIj5cbiAgICAgICAgPG1hdC1kaXZpZGVyIFt2ZXJ0aWNhbF09XCJ0cnVlXCIgY29sb3I9XCJwcmltYXJ5XCI+PC9tYXQtZGl2aWRlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBmeEZsZXg9XCIxIDAgMXB4XCI+XG4gICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBbcm91dGVyTGlua109XCJub2RlLmxpbmtcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCIgY2xhc3M9XCJ0cmVlLW5vZGUtYnV0dG9uXCI+XG4gICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwibm9kZS5pY29uXCJcbiAgICAgICAgICAgICAgW21hdEJhZGdlXT1cIihub2RlLm5hbWUgPT0gJ1JlbWluZGVycycgJiYgcmVtaW5kZXJDb3VudCA+IDApID8gcmVtaW5kZXJDb3VudCA6IHVuZGVmaW5lZFwiXG4gICAgICAgICAgICAgIG1hdEJhZGdlQ29sb3I9XCJ3YXJuXCJcbiAgICAgICAgICAgICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIj5cbiAgICAgICAgICAgIHt7IG5vZGUuaWNvbiB9fVxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGUtbGFiZWxcIj57eyBub2RlLm5hbWUgfX08L2Rpdj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtdHJlZS1ub2RlPlxuXG4gIDwhLS0gVGhpcyBpcyB0aGUgdHJlZSBub2RlIHRlbXBsYXRlIGZvciBleHBhbmRhYmxlIG5vZGVzIC0tPlxuICA8bWF0LXRyZWUtbm9kZSAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZTsgd2hlbjogaGFzQ2hpbGRcIiBmeExheW91dD1cInJvd1wiIFtjbGFzcy5sZWFmLW5vZGVdPVwibm9kZS5sZXZlbCA+IDBcIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJ0cmVlLW5vZGUtY29udGVudFwiPlxuICAgICAgPGRpdiBmeEZsZXg9XCIwIDAgMjhweFwiICpuZ0lmPVwibm9kZS5sZXZlbCA+IDBcIiBjbGFzcz1cInRyZWUtbm9kZS1pbmRlbnRcIj5cbiAgICAgICAgPG1hdC1kaXZpZGVyIFt2ZXJ0aWNhbF09XCJ0cnVlXCIgY29sb3I9XCJwcmltYXJ5XCI+PC9tYXQtZGl2aWRlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBmeEZsZXg9XCIxIDAgMXB4XCI+XG4gICAgICAgIDxidXR0b24gZnhGbGV4PVwiMSAwIDFweFwiIG1hdC1idXR0b24gbWF0VHJlZU5vZGVUb2dnbGUgY2xhc3M9XCJ0cmVlLW5vZGUtYnV0dG9uXCI+XG4gICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwibm9kZS5pY29uXCI+e3sgbm9kZS5pY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kZS1sYWJlbFwiPnt7IG5vZGUubmFtZSB9fTwvZGl2PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L21hdC10cmVlLW5vZGU+XG5cbjwvbWF0LXRyZWU+XG4iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component, Injector } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute } from '@angular/router';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
export class RerouteComponent {
|
|
6
|
+
constructor(route, injector) {
|
|
7
|
+
this.route = route;
|
|
8
|
+
this.injector = injector;
|
|
9
|
+
const rerouteServiceInjectionToken = this.route.snapshot.data['rerouteService'];
|
|
10
|
+
this.rerouteService = this.injector.get(rerouteServiceInjectionToken);
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
this.reroute();
|
|
14
|
+
}
|
|
15
|
+
reroute() {
|
|
16
|
+
this.rerouteService.reroute();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
RerouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RerouteComponent, deps: [{ token: i1.ActivatedRoute }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
RerouteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: RerouteComponent, selector: "mantle-reroute", ngImport: i0, template: '', isInline: true });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RerouteComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{
|
|
24
|
+
selector: 'mantle-reroute',
|
|
25
|
+
template: ''
|
|
26
|
+
}]
|
|
27
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i0.Injector }]; } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVyb3V0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vcmVyb3V0ZS9yZXJvdXRlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQU9qRCxNQUFNLE9BQU8sZ0JBQWdCO0lBSTNCLFlBQW9CLEtBQXFCLEVBQVUsUUFBa0I7UUFBakQsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ25FLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBaUIsNEJBQTRCLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDaEMsQ0FBQzs7OEdBZlUsZ0JBQWdCO2tHQUFoQixnQkFBZ0Isc0RBRmpCLEVBQUU7NEZBRUQsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBSZXJvdXRlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ludGVyZmFjZXMvcmVyb3V0ZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFudGxlLXJlcm91dGUnLFxuICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgY2xhc3MgUmVyb3V0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIHJlcm91dGVTZXJ2aWNlOiBSZXJvdXRlU2VydmljZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBjb25zdCByZXJvdXRlU2VydmljZUluamVjdGlvblRva2VuID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydyZXJvdXRlU2VydmljZSddO1xuICAgIHRoaXMucmVyb3V0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldDxSZXJvdXRlU2VydmljZT4ocmVyb3V0ZVNlcnZpY2VJbmplY3Rpb25Ub2tlbik7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlcm91dGUoKTtcbiAgfVxuXG4gIHJlcm91dGUoKSB7XG4gICAgdGhpcy5yZXJvdXRlU2VydmljZS5yZXJvdXRlKCk7XG4gIH1cblxufVxuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Component, Injector } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute } from '@angular/router';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/router";
|
|
6
|
+
import * as i2 from "../../titles/page-title/page-title.component";
|
|
7
|
+
import * as i3 from "../../dashboard/dynamic-dashboard/dynamic-dashboard.component";
|
|
8
|
+
import * as i4 from "@angular/flex-layout/flex";
|
|
9
|
+
import * as i5 from "@angular/common";
|
|
10
|
+
export class DashboardPageComponent {
|
|
11
|
+
constructor(route, injector) {
|
|
12
|
+
this.route = route;
|
|
13
|
+
this.injector = injector;
|
|
14
|
+
const dashboardPageServiceInjectionToken = this.route.snapshot.data['dashboardPageService'];
|
|
15
|
+
this.dashboardPageService = this.injector.get(dashboardPageServiceInjectionToken);
|
|
16
|
+
this.pageTitle = this.route.snapshot.data['pageTitle'];
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.content$ = this.dashboardPageService.getWidgetItems({}).pipe(map(res => {
|
|
20
|
+
return res.content;
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
DashboardPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DashboardPageComponent, deps: [{ token: i1.ActivatedRoute }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
+
DashboardPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DashboardPageComponent, selector: "mantle-dashboard-page", ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"stretch\" fxLayoutGap=\"16px\" class=\"page dashboard-page full-height-only vertically-scrollable\">\n\n <div fxFlex=\"0 0 auto\">\n <mantle-page-title>{{ pageTitle }}</mantle-page-title>\n </div>\n\n <div fxFlex=\"1 0 auto\">\n <mantle-dynamic-dashboard [content]=\"content$ | async\" [dashboardPageService]=\"dashboardPageService\"></mantle-dynamic-dashboard>\n </div>\n\n</div>\n", styles: [""], components: [{ type: i2.PageTitleComponent, selector: "mantle-page-title" }, { type: i3.DynamicDashboardComponent, selector: "mantle-dynamic-dashboard", inputs: ["dashboardPageService", "content"] }], directives: [{ type: i4.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: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i4.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: i4.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"] }], pipes: { "async": i5.AsyncPipe } });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DashboardPageComponent, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{
|
|
29
|
+
selector: 'mantle-dashboard-page',
|
|
30
|
+
templateUrl: './dashboard-page.component.html',
|
|
31
|
+
styleUrls: ['./dashboard-page.component.scss']
|
|
32
|
+
}]
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i0.Injector }]; } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFudGxlL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9kYXNoYm9hcmQtcGFnZS9kYXNoYm9hcmQtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYW50bGUvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL2Rhc2hib2FyZC1wYWdlL2Rhc2hib2FyZC1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFRckMsTUFBTSxPQUFPLHNCQUFzQjtJQU1qQyxZQUFvQixLQUFxQixFQUFVLFFBQWtCO1FBQWpELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNuRSxNQUFNLGtDQUFrQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzVGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBdUIsa0NBQWtDLENBQUMsQ0FBQztRQUN4RyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQy9ELEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNSLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7b0hBbEJVLHNCQUFzQjt3R0FBdEIsc0JBQXNCLDZEQ1huQyxtYkFXQTs0RkRBYSxzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsV0FBVyxFQUFFLGlDQUFpQztvQkFDOUMsU0FBUyxFQUFFLENBQUMsaUNBQWlDLENBQUM7aUJBQy9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYXNoYm9hcmRQYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ludGVyZmFjZXMvZGFzaGJvYXJkLXBhZ2Uuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbnRsZS1kYXNoYm9hcmQtcGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXNoYm9hcmQtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Rhc2hib2FyZC1wYWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIGRhc2hib2FyZFBhZ2VTZXJ2aWNlOiBEYXNoYm9hcmRQYWdlU2VydmljZTtcbiAgcHVibGljIHBhZ2VUaXRsZTogc3RyaW5nO1xuICBwdWJsaWMgY29udGVudCQhOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgY29uc3QgZGFzaGJvYXJkUGFnZVNlcnZpY2VJbmplY3Rpb25Ub2tlbiA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YVsnZGFzaGJvYXJkUGFnZVNlcnZpY2UnXTtcbiAgICB0aGlzLmRhc2hib2FyZFBhZ2VTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8RGFzaGJvYXJkUGFnZVNlcnZpY2U+KGRhc2hib2FyZFBhZ2VTZXJ2aWNlSW5qZWN0aW9uVG9rZW4pO1xuICAgIHRoaXMucGFnZVRpdGxlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhWydwYWdlVGl0bGUnXTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGVudCQgPSB0aGlzLmRhc2hib2FyZFBhZ2VTZXJ2aWNlLmdldFdpZGdldEl0ZW1zKHt9KS5waXBlKFxuICAgICAgbWFwKHJlcyA9PiB7XG4gICAgICAgIHJldHVybiByZXMuY29udGVudDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdHJldGNoXCIgZnhMYXlvdXRHYXA9XCIxNnB4XCIgY2xhc3M9XCJwYWdlIGRhc2hib2FyZC1wYWdlIGZ1bGwtaGVpZ2h0LW9ubHkgdmVydGljYWxseS1zY3JvbGxhYmxlXCI+XG5cbiAgPGRpdiBmeEZsZXg9XCIwIDAgYXV0b1wiPlxuICAgIDxtYW50bGUtcGFnZS10aXRsZT57eyBwYWdlVGl0bGUgfX08L21hbnRsZS1wYWdlLXRpdGxlPlxuICA8L2Rpdj5cblxuICA8ZGl2IGZ4RmxleD1cIjEgMCBhdXRvXCI+XG4gICAgPG1hbnRsZS1keW5hbWljLWRhc2hib2FyZCBbY29udGVudF09XCJjb250ZW50JCB8IGFzeW5jXCIgW2Rhc2hib2FyZFBhZ2VTZXJ2aWNlXT1cImRhc2hib2FyZFBhZ2VTZXJ2aWNlXCI+PC9tYW50bGUtZHluYW1pYy1kYXNoYm9hcmQ+XG4gIDwvZGl2PlxuXG48L2Rpdj5cbiJdfQ==
|