@theseam/ui-common 0.2.12 → 0.2.16
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/assets/vendor/intl-tel-input/js/utils.js +255 -254
- package/bundles/theseam-ui-common-asset-reader.umd.js +7 -9
- package/bundles/theseam-ui-common-asset-reader.umd.js.map +1 -1
- package/bundles/theseam-ui-common-breadcrumbs.umd.js +6 -8
- package/bundles/theseam-ui-common-breadcrumbs.umd.js.map +1 -1
- package/bundles/theseam-ui-common-buttons.umd.js +5 -5
- package/bundles/theseam-ui-common-buttons.umd.js.map +1 -1
- package/bundles/theseam-ui-common-card.umd.js +6 -6
- package/bundles/theseam-ui-common-card.umd.js.map +1 -1
- package/bundles/theseam-ui-common-checkbox.umd.js +4 -4
- package/bundles/theseam-ui-common-checkbox.umd.js.map +1 -1
- package/bundles/theseam-ui-common-confirm-dialog.umd.js +4 -4
- package/bundles/theseam-ui-common-confirm-dialog.umd.js.map +1 -1
- package/bundles/theseam-ui-common-core.umd.js +4 -4
- package/bundles/theseam-ui-common-core.umd.js.map +1 -1
- package/bundles/theseam-ui-common-data-exporter.umd.js +5 -5
- package/bundles/theseam-ui-common-data-filters.umd.js +9 -6
- package/bundles/theseam-ui-common-data-filters.umd.js.map +1 -1
- package/bundles/theseam-ui-common-datatable-dynamic.umd.js +7 -7
- package/bundles/theseam-ui-common-datatable-dynamic.umd.js.map +1 -1
- package/bundles/theseam-ui-common-datatable.umd.js +1308 -378
- package/bundles/theseam-ui-common-datatable.umd.js.map +1 -1
- package/bundles/theseam-ui-common-dynamic-component-loader.umd.js +5 -7
- package/bundles/theseam-ui-common-dynamic-component-loader.umd.js.map +1 -1
- package/bundles/theseam-ui-common-dynamic.umd.js +7 -9
- package/bundles/theseam-ui-common-dynamic.umd.js.map +1 -1
- package/bundles/theseam-ui-common-footer-bar.umd.js +3 -3
- package/bundles/theseam-ui-common-form-field-error.umd.js +5 -5
- package/bundles/theseam-ui-common-form-field-error.umd.js.map +1 -1
- package/bundles/theseam-ui-common-form-field.umd.js +5 -5
- package/bundles/theseam-ui-common-form-field.umd.js.map +1 -1
- package/bundles/theseam-ui-common-framework.umd.js +27 -29
- package/bundles/theseam-ui-common-framework.umd.js.map +1 -1
- package/bundles/theseam-ui-common-graphql.umd.js +958 -8
- package/bundles/theseam-ui-common-graphql.umd.js.map +1 -1
- package/bundles/theseam-ui-common-icon.umd.js +5 -5
- package/bundles/theseam-ui-common-icon.umd.js.map +1 -1
- package/bundles/theseam-ui-common-layout.umd.js +5 -7
- package/bundles/theseam-ui-common-layout.umd.js.map +1 -1
- package/bundles/theseam-ui-common-loading.umd.js +4 -4
- package/bundles/theseam-ui-common-menu.umd.js +5 -5
- package/bundles/theseam-ui-common-menu.umd.js.map +1 -1
- package/bundles/theseam-ui-common-modal.umd.js +6 -6
- package/bundles/theseam-ui-common-modal.umd.js.map +1 -1
- package/bundles/theseam-ui-common-models.umd.js +3 -3
- package/bundles/theseam-ui-common-popover.umd.js +4 -4
- package/bundles/theseam-ui-common-progress.umd.js +5 -5
- package/bundles/theseam-ui-common-progress.umd.js.map +1 -1
- package/bundles/theseam-ui-common-scrollbar.umd.js +7 -9
- package/bundles/theseam-ui-common-scrollbar.umd.js.map +1 -1
- package/bundles/theseam-ui-common-services.umd.js +6 -8
- package/bundles/theseam-ui-common-services.umd.js.map +1 -1
- package/bundles/theseam-ui-common-shared.umd.js +4 -4
- package/bundles/theseam-ui-common-shared.umd.js.map +1 -1
- package/bundles/theseam-ui-common-storage.umd.js +5 -7
- package/bundles/theseam-ui-common-storage.umd.js.map +1 -1
- package/bundles/theseam-ui-common-story-helpers.umd.js +4 -4
- package/bundles/theseam-ui-common-story-helpers.umd.js.map +1 -1
- package/bundles/theseam-ui-common-tabbed.umd.js +5 -5
- package/bundles/theseam-ui-common-tabbed.umd.js.map +1 -1
- package/bundles/theseam-ui-common-table-cell-type.umd.js +5 -7
- package/bundles/theseam-ui-common-table-cell-type.umd.js.map +1 -1
- package/bundles/theseam-ui-common-table-cell-types.umd.js +16 -16
- package/bundles/theseam-ui-common-table-cell-types.umd.js.map +1 -1
- package/bundles/theseam-ui-common-table.umd.js +5 -5
- package/bundles/theseam-ui-common-table.umd.js.map +1 -1
- package/bundles/theseam-ui-common-tel-input.umd.js +6 -6
- package/bundles/theseam-ui-common-tel-input.umd.js.map +1 -1
- package/bundles/theseam-ui-common-testing.umd.js +568 -0
- package/bundles/theseam-ui-common-testing.umd.js.map +1 -0
- package/bundles/theseam-ui-common-tiled-select.umd.js +56 -39
- package/bundles/theseam-ui-common-tiled-select.umd.js.map +1 -1
- package/bundles/theseam-ui-common-toggle-edit.umd.js +8 -10
- package/bundles/theseam-ui-common-toggle-edit.umd.js.map +1 -1
- package/bundles/theseam-ui-common-toggle-group.umd.js +4 -4
- package/bundles/theseam-ui-common-toggle-group.umd.js.map +1 -1
- package/bundles/theseam-ui-common-unsaved-changes-dialog.umd.js +5 -7
- package/bundles/theseam-ui-common-unsaved-changes-dialog.umd.js.map +1 -1
- package/bundles/theseam-ui-common-utils.umd.js +174 -81
- package/bundles/theseam-ui-common-utils.umd.js.map +1 -1
- package/bundles/theseam-ui-common-validators.umd.js +3 -3
- package/bundles/theseam-ui-common-viewers.umd.js +6 -8
- package/bundles/theseam-ui-common-viewers.umd.js.map +1 -1
- package/bundles/theseam-ui-common-widget.umd.js +18 -20
- package/bundles/theseam-ui-common-widget.umd.js.map +1 -1
- package/bundles/theseam-ui-common.umd.js +2 -2
- package/buttons/theseam-ui-common-buttons.metadata.json +1 -1
- package/card/theseam-ui-common-card.metadata.json +1 -1
- package/data-filters/data-filter.d.ts +10 -6
- package/data-filters/theseam-ui-common-data-filters.metadata.json +1 -1
- package/datatable/datatable/datatable.component.d.ts +46 -32
- package/datatable/datatable-column/datatable-column.component.d.ts +26 -25
- package/datatable/datatable-column-preferences/datatable-column-preferences.component.d.ts +6 -5
- package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +7 -1
- package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +1 -1
- package/datatable/directives/datatable-filter.directive.d.ts +1 -1
- package/datatable/models/columns-alteration.d.ts +61 -0
- package/datatable/models/columns-alterations/hide-column.columns-alteration.d.ts +15 -0
- package/datatable/models/columns-alterations/order.columns-alteration.d.ts +20 -0
- package/datatable/models/columns-alterations/sort.columns-alteration.d.ts +14 -0
- package/datatable/models/columns-alterations/width.columns-alteration.d.ts +16 -0
- package/datatable/models/datatable-accessor.d.ts +5 -3
- package/datatable/models/internal-column-props.d.ts +7 -0
- package/datatable/models/page-info.d.ts +12 -0
- package/datatable/models/preferences-accessor.d.ts +1 -1
- package/datatable/models/preferences.d.ts +11 -3
- package/datatable/models/sort-item.d.ts +2 -1
- package/datatable/services/columns-alterations-manager.service.d.ts +39 -0
- package/datatable/services/columns-manager.service.d.ts +55 -0
- package/datatable/services/datatable-preferences.service.d.ts +10 -7
- package/datatable/theseam-ui-common-datatable.d.ts +2 -0
- package/datatable/theseam-ui-common-datatable.metadata.json +1 -1
- package/datatable/tokens/datatable-preferences-accessor.d.ts +2 -2
- package/datatable/utils/create-action-menu-column.d.ts +3 -0
- package/datatable/utils/create-checkbox-column.d.ts +3 -0
- package/datatable/utils/get-column-prop.d.ts +5 -0
- package/datatable/utils/map-columns-alterations-states.d.ts +2 -0
- package/datatable/utils/remove-unused-diffs.d.ts +7 -0
- package/datatable/utils/set-column-defaults.d.ts +2 -0
- package/datatable/utils/translate-templates.d.ts +2 -0
- package/datatable/utils/with-stored-column-info.d.ts +2 -2
- package/datatable-dynamic/theseam-ui-common-datatable-dynamic.metadata.json +1 -1
- package/esm2015/buttons/progress-circle-button/progress-circle-button.component.js +1 -1
- package/esm2015/card/card-action/card-action.component.js +1 -1
- package/esm2015/card/card-body/card-body.component.js +1 -1
- package/esm2015/data-filters/data-filter.js +5 -2
- package/esm2015/data-filters/filters/data-filter-search/data-filter-search.component.js +1 -1
- package/esm2015/data-filters/filters/data-filter-text/data-filter-text.component.js +1 -1
- package/esm2015/datatable/datatable/datatable.component.js +195 -211
- package/esm2015/datatable/datatable-action-menu/datatable-action-menu.component.js +1 -1
- package/esm2015/datatable/datatable-column/datatable-column.component.js +1 -1
- package/esm2015/datatable/datatable-column-preferences/datatable-column-preferences.component.js +36 -19
- package/esm2015/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.js +38 -4
- package/esm2015/datatable/datatable-export-button/datatable-export-button.component.js +9 -6
- package/esm2015/datatable/datatable-menu-bar/datatable-menu-bar.component.js +1 -1
- package/esm2015/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.js +1 -1
- package/esm2015/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.js +1 -1
- package/esm2015/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.js +1 -1
- package/esm2015/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.js +1 -1
- package/esm2015/datatable/models/columns-alteration.js +38 -0
- package/esm2015/datatable/models/columns-alterations/hide-column.columns-alteration.js +38 -0
- package/esm2015/datatable/models/columns-alterations/order.columns-alteration.js +81 -0
- package/esm2015/datatable/models/columns-alterations/sort.columns-alteration.js +33 -0
- package/esm2015/datatable/models/columns-alterations/width.columns-alteration.js +41 -0
- package/esm2015/datatable/models/datatable-accessor.js +1 -1
- package/esm2015/datatable/models/internal-column-props.js +15 -0
- package/esm2015/datatable/models/page-info.js +1 -1
- package/esm2015/datatable/models/preferences-accessor.js +1 -1
- package/esm2015/datatable/models/preferences.js +6 -2
- package/esm2015/datatable/models/sort-item.js +1 -1
- package/esm2015/datatable/services/columns-alterations-manager.service.js +134 -0
- package/esm2015/datatable/services/columns-manager.service.js +257 -0
- package/esm2015/datatable/services/datatable-preferences.service.js +78 -32
- package/esm2015/datatable/theseam-ui-common-datatable.js +3 -1
- package/esm2015/datatable/tokens/datatable-preferences-accessor.js +2 -2
- package/esm2015/datatable/utils/create-action-menu-column.js +18 -0
- package/esm2015/datatable/utils/create-checkbox-column.js +15 -0
- package/esm2015/datatable/utils/get-column-prop.js +9 -0
- package/esm2015/datatable/utils/map-columns-alterations-states.js +39 -0
- package/esm2015/datatable/utils/remove-unused-diffs.js +9 -0
- package/esm2015/datatable/utils/set-column-defaults.js +10 -0
- package/esm2015/datatable/utils/translate-templates.js +12 -0
- package/esm2015/datatable/utils/with-stored-column-info.js +1 -1
- package/esm2015/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.js +1 -1
- package/esm2015/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.js +1 -1
- package/esm2015/datatable-dynamic/datatable-dynamic.component.js +1 -1
- package/esm2015/form-field/form-field.component.js +1 -1
- package/esm2015/form-field-error/form-field-error/form-field-error.component.js +1 -1
- package/esm2015/framework/base-layout/base-layout.component.js +1 -1
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets.component.js +1 -1
- package/esm2015/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.js +1 -1
- package/esm2015/framework/schema-form-controls/schema-form-input/schema-form-input.component.js +1 -1
- package/esm2015/framework/schema-form-controls/schema-form-number/schema-form-number.component.js +1 -1
- package/esm2015/framework/schema-form-controls/schema-form-select/schema-form-select.component.js +1 -1
- package/esm2015/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.js +1 -1
- package/esm2015/framework/side-nav/side-nav-item/side-nav-item.component.js +1 -1
- package/esm2015/framework/side-nav/side-nav-toggle/side-nav-toggle.component.js +1 -1
- package/esm2015/framework/side-nav/side-nav.component.js +1 -1
- package/esm2015/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.js +1 -1
- package/esm2015/framework/top-bar/top-bar-title/top-bar-title.component.js +1 -1
- package/esm2015/framework/top-bar/top-bar.component.js +1 -1
- package/esm2015/graphql/datatable/create-page-info-observable.js +38 -0
- package/esm2015/graphql/datatable/datatable-graphql-query-ref.js +236 -0
- package/esm2015/graphql/datatable/datatable-graphql.service.js +35 -0
- package/esm2015/graphql/datatable/datatable-helpers.js +170 -0
- package/esm2015/graphql/datatable/get-page-info.js +11 -0
- package/esm2015/graphql/datatable/index.js +7 -0
- package/esm2015/graphql/datatable/map-filter-states.js +64 -0
- package/esm2015/graphql/datatable/map-page-info.js +14 -0
- package/esm2015/graphql/datatable/mapper-context.js +2 -0
- package/esm2015/graphql/models/gql-datatable-accessor.js +2 -0
- package/esm2015/graphql/models/index.js +2 -1
- package/esm2015/graphql/models/query-processing-config.js +1 -1
- package/esm2015/graphql/public-api.js +2 -1
- package/esm2015/graphql/utils/parse-hints.js +3 -3
- package/esm2015/icon/icon/icon.component.js +1 -1
- package/esm2015/loading/loading/loading.component.js +1 -1
- package/esm2015/menu/menu.component.js +1 -1
- package/esm2015/modal/modal-body/modal-body.component.js +1 -1
- package/esm2015/modal/modal-container/modal-container.component.js +1 -1
- package/esm2015/popover/popover/popover.component.js +1 -1
- package/esm2015/progress/progress-circle/progress-circle.component.js +1 -1
- package/esm2015/tabbed/tabbed.component.js +1 -1
- package/esm2015/table/table/table.component.js +1 -1
- package/esm2015/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.js +1 -1
- package/esm2015/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.js +1 -1
- package/esm2015/tel-input/tel-input/tel-input.component.js +1 -1
- package/esm2015/testing/current-tick-time.js +16 -0
- package/esm2015/testing/fake-toastr.js +29 -0
- package/esm2015/testing/get-harness.js +16 -0
- package/esm2015/testing/public-api.js +7 -0
- package/esm2015/testing/render-story.js +12 -0
- package/esm2015/testing/story-expect.js +39 -0
- package/esm2015/testing/theseam-ui-common-testing.js +5 -0
- package/esm2015/testing/tick-helper.js +74 -0
- package/esm2015/tiled-select/components/tiled-select/tiled-select.component.js +25 -17
- package/esm2015/tiled-select/components/tiled-select-tile/tiled-select-tile.component.js +5 -2
- package/esm2015/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.js +1 -1
- package/esm2015/tiled-select/public-api.js +2 -1
- package/esm2015/tiled-select/tiled-select.models.js +1 -1
- package/esm2015/tiled-select/tiled-select.module.js +4 -4
- package/esm2015/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.js +1 -1
- package/esm2015/toggle-edit/toggle-edit.component.js +1 -1
- package/esm2015/utils/array-move.js +62 -0
- package/esm2015/utils/public-api.js +2 -1
- package/esm2015/utils/router/is-empty-url-route.js +1 -1
- package/esm2015/utils/subscriber-count.js +31 -4
- package/esm2015/widget/widget/widget.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-button-group/widget-button-group.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-content-header/widget-content-header.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-empty-label/widget-empty-label.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-footer-link/widget-footer-link.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-footer-text/widget-footer-text.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-header-badge/widget-header-badge.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile.component.js +1 -1
- package/esm2015/widget/widget-content-components/widget-tile-list/widget-tile-list.component.js +1 -1
- package/esm2015/widget/widget-footer/widget-footer.component.js +1 -1
- package/fesm2015/theseam-ui-common-buttons.js +1 -1
- package/fesm2015/theseam-ui-common-card.js +2 -2
- package/fesm2015/theseam-ui-common-data-filters.js +6 -3
- package/fesm2015/theseam-ui-common-data-filters.js.map +1 -1
- package/fesm2015/theseam-ui-common-datatable-dynamic.js +3 -3
- package/fesm2015/theseam-ui-common-datatable.js +1100 -319
- package/fesm2015/theseam-ui-common-datatable.js.map +1 -1
- package/fesm2015/theseam-ui-common-form-field-error.js +1 -1
- package/fesm2015/theseam-ui-common-form-field.js +1 -1
- package/fesm2015/theseam-ui-common-framework.js +13 -13
- package/fesm2015/theseam-ui-common-graphql.js +555 -5
- package/fesm2015/theseam-ui-common-graphql.js.map +1 -1
- package/fesm2015/theseam-ui-common-icon.js +1 -1
- package/fesm2015/theseam-ui-common-loading.js +1 -1
- package/fesm2015/theseam-ui-common-menu.js +1 -1
- package/fesm2015/theseam-ui-common-modal.js +2 -2
- package/fesm2015/theseam-ui-common-popover.js +1 -1
- package/fesm2015/theseam-ui-common-progress.js +1 -1
- package/fesm2015/theseam-ui-common-tabbed.js +1 -1
- package/fesm2015/theseam-ui-common-table-cell-types.js +2 -2
- package/fesm2015/theseam-ui-common-table.js +1 -1
- package/fesm2015/theseam-ui-common-tel-input.js +1 -1
- package/fesm2015/theseam-ui-common-testing.js +191 -0
- package/fesm2015/theseam-ui-common-testing.js.map +1 -0
- package/fesm2015/theseam-ui-common-tiled-select.js +34 -21
- package/fesm2015/theseam-ui-common-tiled-select.js.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-edit.js +2 -2
- package/fesm2015/theseam-ui-common-utils.js +92 -4
- package/fesm2015/theseam-ui-common-utils.js.map +1 -1
- package/fesm2015/theseam-ui-common-widget.js +12 -12
- package/form-field/theseam-ui-common-form-field.metadata.json +1 -1
- package/form-field-error/theseam-ui-common-form-field-error.metadata.json +1 -1
- package/framework/theseam-ui-common-framework.metadata.json +1 -1
- package/graphql/datatable/create-page-info-observable.d.ts +4 -0
- package/graphql/datatable/datatable-graphql-query-ref.d.ts +65 -0
- package/graphql/datatable/datatable-graphql.service.d.ts +26 -0
- package/graphql/datatable/datatable-helpers.d.ts +12 -0
- package/graphql/datatable/get-page-info.d.ts +4 -0
- package/graphql/datatable/index.d.ts +6 -0
- package/graphql/datatable/map-filter-states.d.ts +18 -0
- package/graphql/datatable/map-page-info.d.ts +11 -0
- package/graphql/datatable/mapper-context.d.ts +6 -0
- package/graphql/models/gql-datatable-accessor.d.ts +9 -0
- package/graphql/models/index.d.ts +1 -0
- package/graphql/models/query-processing-config.d.ts +4 -0
- package/graphql/public-api.d.ts +1 -0
- package/graphql/theseam-ui-common-graphql.metadata.json +1 -1
- package/icon/theseam-ui-common-icon.metadata.json +1 -1
- package/loading/theseam-ui-common-loading.metadata.json +1 -1
- package/menu/theseam-ui-common-menu.metadata.json +1 -1
- package/modal/theseam-ui-common-modal.metadata.json +1 -1
- package/package.json +1 -1
- package/popover/theseam-ui-common-popover.metadata.json +1 -1
- package/progress/theseam-ui-common-progress.metadata.json +1 -1
- package/styles/vendor/ngx-datatable/_ngx-datatable.scss +54 -52
- package/tabbed/theseam-ui-common-tabbed.metadata.json +1 -1
- package/table/theseam-ui-common-table.metadata.json +1 -1
- package/table-cell-types/theseam-ui-common-table-cell-types.metadata.json +1 -1
- package/tel-input/theseam-ui-common-tel-input.metadata.json +1 -1
- package/testing/current-tick-time.d.ts +13 -0
- package/testing/fake-toastr.d.ts +30 -0
- package/testing/get-harness.d.ts +7 -0
- package/testing/package.json +11 -0
- package/testing/public-api.d.ts +6 -0
- package/testing/render-story.d.ts +2 -0
- package/testing/story-expect.d.ts +5 -0
- package/{test-helpers/theseam-ui-common-test-helpers.d.ts → testing/theseam-ui-common-testing.d.ts} +0 -0
- package/testing/theseam-ui-common-testing.metadata.json +1 -0
- package/{test-helpers → testing}/tick-helper.d.ts +0 -0
- package/tiled-select/components/tiled-select/tiled-select.component.d.ts +7 -3
- package/tiled-select/components/tiled-select-tile/tiled-select-tile.component.d.ts +1 -0
- package/tiled-select/theseam-ui-common-tiled-select.metadata.json +1 -1
- package/tiled-select/tiled-select.models.d.ts +3 -1
- package/toggle-edit/theseam-ui-common-toggle-edit.metadata.json +1 -1
- package/utils/array-move.d.ts +49 -0
- package/utils/public-api.d.ts +1 -0
- package/utils/subscriber-count.d.ts +13 -1
- package/utils/theseam-ui-common-utils.metadata.json +1 -1
- package/widget/theseam-ui-common-widget.metadata.json +1 -1
- package/bundles/theseam-ui-common-test-helpers.umd.js +0 -94
- package/bundles/theseam-ui-common-test-helpers.umd.js.map +0 -1
- package/esm2015/test-helpers/public-api.js +0 -2
- package/esm2015/test-helpers/theseam-ui-common-test-helpers.js +0 -5
- package/esm2015/test-helpers/tick-helper.js +0 -74
- package/fesm2015/theseam-ui-common-test-helpers.js +0 -81
- package/fesm2015/theseam-ui-common-test-helpers.js.map +0 -1
- package/test-helpers/package.json +0 -11
- package/test-helpers/public-api.d.ts +0 -1
- package/test-helpers/theseam-ui-common-test-helpers.metadata.json +0 -1
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import { Inject, Injectable, isDevMode, Optional } from '@angular/core';
|
|
2
2
|
import { of, Subject } from 'rxjs';
|
|
3
3
|
import { map, shareReplay, startWith, switchMap, take, tap } from 'rxjs/operators';
|
|
4
|
-
import {
|
|
4
|
+
import { notNullOrUndefined } from '@theseam/ui-common/utils';
|
|
5
|
+
import { EMPTY_DATATABLE_PREFERENCES } from '../models/preferences';
|
|
5
6
|
import { THESEAM_DATATABLE_PREFERENCES_ACCESSOR } from '../tokens/datatable-preferences-accessor';
|
|
6
|
-
import { withStoredColumnInfo } from '../utils/with-stored-column-info';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "../tokens/datatable-preferences-accessor";
|
|
9
|
+
// TODO: Add per key status
|
|
9
10
|
export class DatatablePreferencesService {
|
|
10
11
|
constructor(_prefsAccessor) {
|
|
11
12
|
this._prefsAccessor = _prefsAccessor;
|
|
12
13
|
this._tablePrefsMap = new Map();
|
|
13
14
|
this._pending = false;
|
|
15
|
+
this._loaded = false;
|
|
14
16
|
}
|
|
15
17
|
get pending() { return this._pending; }
|
|
18
|
+
get loaded() { return this._loaded; }
|
|
16
19
|
preferences(preferenceKey) {
|
|
17
20
|
let prefs = this._tablePrefsMap.get(preferenceKey);
|
|
18
21
|
if (!prefs) {
|
|
@@ -27,16 +30,17 @@ export class DatatablePreferencesService {
|
|
|
27
30
|
}
|
|
28
31
|
_createObservable(refreshSubject, prefKey) {
|
|
29
32
|
if (!this._prefsAccessor) {
|
|
30
|
-
return of(
|
|
33
|
+
return of(EMPTY_DATATABLE_PREFERENCES);
|
|
31
34
|
}
|
|
32
|
-
const accessor = (key) => this._prefsAccessor ? this._prefsAccessor.get(key) : of(
|
|
33
|
-
return refreshSubject.pipe(startWith(
|
|
35
|
+
const accessor = (key) => this._prefsAccessor ? this._prefsAccessor.get(key) : of(JSON.stringify(EMPTY_DATATABLE_PREFERENCES));
|
|
36
|
+
return refreshSubject.pipe(startWith(undefined), switchMap(() => accessor(prefKey).pipe(map(v => {
|
|
34
37
|
if (!v) {
|
|
35
38
|
return null;
|
|
36
39
|
}
|
|
37
40
|
// TODO: Add a schema validator and migration tool to avoid parsing issues.
|
|
38
41
|
try {
|
|
39
|
-
return JSON.parse(v)
|
|
42
|
+
// return JSON.parse(v) as TheSeamDatatablePreferences
|
|
43
|
+
return this._descerializePreferences(v);
|
|
40
44
|
}
|
|
41
45
|
catch (error) {
|
|
42
46
|
if (isDevMode()) {
|
|
@@ -44,7 +48,12 @@ export class DatatablePreferencesService {
|
|
|
44
48
|
}
|
|
45
49
|
return null;
|
|
46
50
|
}
|
|
47
|
-
}), map(v =>
|
|
51
|
+
}), map(v => notNullOrUndefined(v) ? v : EMPTY_DATATABLE_PREFERENCES),
|
|
52
|
+
// tap(v => console.log('preferences$', v)),
|
|
53
|
+
tap(() => {
|
|
54
|
+
this._pending = false;
|
|
55
|
+
this._loaded = true;
|
|
56
|
+
}))), shareReplay({ bufferSize: 1, refCount: true }));
|
|
48
57
|
}
|
|
49
58
|
refresh(preferenceKey) {
|
|
50
59
|
const prefs = this._tablePrefsMap.get(preferenceKey);
|
|
@@ -60,7 +69,40 @@ export class DatatablePreferencesService {
|
|
|
60
69
|
// out of order updates. This shouldn't be an issue, with how fast preferences
|
|
61
70
|
// will most likely be changing, but it could happen in situations, such as
|
|
62
71
|
// network issues.
|
|
63
|
-
setColumnPreference(preferenceKey, column) {
|
|
72
|
+
// public setColumnPreference(preferenceKey: string, column: TheSeamDatatablePreferencesColumn): void {
|
|
73
|
+
// if (!this._prefsAccessor) {
|
|
74
|
+
// return
|
|
75
|
+
// }
|
|
76
|
+
// this._pending = true
|
|
77
|
+
// this.preferences(preferenceKey).pipe(
|
|
78
|
+
// map(prefs => {
|
|
79
|
+
// // Making the preferences immutable may not be necessary, but for now
|
|
80
|
+
// // this obj->str->obj will work as a naive clone.
|
|
81
|
+
// const columns = JSON.parse(JSON.stringify(prefs.columns || []))
|
|
82
|
+
// const _colPref = columns.find((c: any) => c.prop === column.prop)
|
|
83
|
+
// // console.log('has', _colPref)
|
|
84
|
+
// if (_colPref) {
|
|
85
|
+
// // console.log('hasProperty(column, "width"))', hasProperty(column, 'width'))
|
|
86
|
+
// if (hasProperty(column, 'width')) { _colPref.width = column.width }
|
|
87
|
+
// if (hasProperty(column, 'canAutoResize')) { _colPref.canAutoResize = column.canAutoResize }
|
|
88
|
+
// if (hasProperty(column, 'hidden')) { _colPref.hidden = column.hidden }
|
|
89
|
+
// } else {
|
|
90
|
+
// columns.push({ ...column })
|
|
91
|
+
// }
|
|
92
|
+
// const newPrefs: TheSeamDatatablePreferences = { ...prefs, columns }
|
|
93
|
+
// return newPrefs
|
|
94
|
+
// }),
|
|
95
|
+
// // tap(v => console.log('newPrefs', v)),
|
|
96
|
+
// take(1),
|
|
97
|
+
// switchMap(newPrefs => this._prefsAccessor
|
|
98
|
+
// ? this._prefsAccessor.update(preferenceKey, JSON.stringify(newPrefs))
|
|
99
|
+
// : of(newPrefs)
|
|
100
|
+
// ),
|
|
101
|
+
// tap(() => this.refresh(preferenceKey))
|
|
102
|
+
// )
|
|
103
|
+
// .subscribe()
|
|
104
|
+
// }
|
|
105
|
+
setAlterations(preferenceKey, alterations) {
|
|
64
106
|
if (!this._prefsAccessor) {
|
|
65
107
|
return;
|
|
66
108
|
}
|
|
@@ -68,25 +110,20 @@ export class DatatablePreferencesService {
|
|
|
68
110
|
this.preferences(preferenceKey).pipe(map(prefs => {
|
|
69
111
|
// Making the preferences immutable may not be necessary, but for now
|
|
70
112
|
// this obj->str->obj will work as a naive clone.
|
|
71
|
-
const columns = JSON.parse(JSON.stringify(prefs.columns || []))
|
|
72
|
-
const _colPref = columns.find((c) => c.prop === column.prop)
|
|
73
|
-
// console.log('has', _colPref)
|
|
74
|
-
if (_colPref) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
columns.push(Object.assign({}, column));
|
|
88
|
-
}
|
|
89
|
-
const newPrefs = Object.assign(Object.assign({}, prefs), { columns });
|
|
113
|
+
// const columns = JSON.parse(JSON.stringify(prefs.columns || []))
|
|
114
|
+
// const _colPref = columns.find((c: any) => c.prop === column.prop)
|
|
115
|
+
// // console.log('has', _colPref)
|
|
116
|
+
// if (_colPref) {
|
|
117
|
+
// // console.log('hasProperty(column, "width"))', hasProperty(column, 'width'))
|
|
118
|
+
// if (hasProperty(column, 'width')) { _colPref.width = column.width }
|
|
119
|
+
// if (hasProperty(column, 'canAutoResize')) { _colPref.canAutoResize = column.canAutoResize }
|
|
120
|
+
// if (hasProperty(column, 'hidden')) { _colPref.hidden = column.hidden }
|
|
121
|
+
// } else {
|
|
122
|
+
// columns.push({ ...column })
|
|
123
|
+
// }
|
|
124
|
+
// const newPrefs: TheSeamDatatablePreferences = { ...prefs, columns }
|
|
125
|
+
// return newPrefs
|
|
126
|
+
const newPrefs = Object.assign(Object.assign({}, EMPTY_DATATABLE_PREFERENCES), { alterations });
|
|
90
127
|
return newPrefs;
|
|
91
128
|
}),
|
|
92
129
|
// tap(v => console.log('newPrefs', v)),
|
|
@@ -95,10 +132,19 @@ export class DatatablePreferencesService {
|
|
|
95
132
|
: of(newPrefs)), tap(() => this.refresh(preferenceKey)))
|
|
96
133
|
.subscribe();
|
|
97
134
|
}
|
|
98
|
-
withColumnPreferences(preferenceKey, columns) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
135
|
+
// public withColumnPreferences<T>(preferenceKey: string, columns: T[]): Observable<T[]> {
|
|
136
|
+
// return this.preferences(preferenceKey).pipe(
|
|
137
|
+
// startWith(EMPTY_DATATABLE_PREFERENCES),
|
|
138
|
+
// map(preferences => preferences && preferences.columns
|
|
139
|
+
// ? withStoredColumnInfo(columns, preferences.columns) as T[]
|
|
140
|
+
// : columns
|
|
141
|
+
// )
|
|
142
|
+
// )
|
|
143
|
+
// }
|
|
144
|
+
_descerializePreferences(serialized) {
|
|
145
|
+
const prefs = JSON.parse(serialized);
|
|
146
|
+
// TODO: Implement migration
|
|
147
|
+
return prefs;
|
|
102
148
|
}
|
|
103
149
|
}
|
|
104
150
|
DatatablePreferencesService.ɵprov = i0.ɵɵdefineInjectable({ factory: function DatatablePreferencesService_Factory() { return new DatatablePreferencesService(i0.ɵɵinject(i1.THESEAM_DATATABLE_PREFERENCES_ACCESSOR, 8)); }, token: DatatablePreferencesService, providedIn: "root" });
|
|
@@ -110,4 +156,4 @@ DatatablePreferencesService.decorators = [
|
|
|
110
156
|
DatatablePreferencesService.ctorParameters = () => [
|
|
111
157
|
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [THESEAM_DATATABLE_PREFERENCES_ACCESSOR,] }] }
|
|
112
158
|
];
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXRhYmxlLXByZWZlcmVuY2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZGF0YXRhYmxlL3NlcnZpY2VzL2RhdGF0YWJsZS1wcmVmZXJlbmNlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDdkUsT0FBTyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBR3RELE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBQ2pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBOzs7QUFVdkUsTUFBTSxPQUFPLDJCQUEyQjtJQU90QyxZQUNzRSxjQUFxRDtRQUFyRCxtQkFBYyxHQUFkLGNBQWMsQ0FBdUM7UUFOMUcsbUJBQWMsR0FBRyxJQUFJLEdBQUcsRUFBMEMsQ0FBQTtRQUMzRSxhQUFRLEdBQUcsS0FBSyxDQUFBO0lBTXBCLENBQUM7SUFKTCxJQUFXLE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUEsQ0FBQyxDQUFDO0lBTXRDLFdBQVcsQ0FBQyxhQUFxQjtRQUN0QyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNsRCxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsTUFBTSxjQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQTtZQUMx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LEVBQUUsQ0FBQyxXQUFXLElBQUksV0FBVyxDQUFDLE9BQU87WUFDbkQsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTyxDQUFRO1lBQzNELENBQUMsQ0FBQyxPQUFPLENBQ1YsQ0FDRixDQUFBO0lBQ0gsQ0FBQzs7OztZQXZIRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs0Q0FTSSxRQUFRLFlBQUksTUFBTSxTQUFDLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgaXNEZXZNb2RlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IGhhc1Byb3BlcnR5IH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuaW1wb3J0IHsgSVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcywgSVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0NvbHVtbiB9IGZyb20gJy4uL21vZGVscy9wcmVmZXJlbmNlcydcbmltcG9ydCB0eXBlIHsgSVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0FjY2Vzc29yIH0gZnJvbSAnLi4vbW9kZWxzL3ByZWZlcmVuY2VzLWFjY2Vzc29yJ1xuaW1wb3J0IHsgVEhFU0VBTV9EQVRBVEFCTEVfUFJFRkVSRU5DRVNfQUNDRVNTT1IgfSBmcm9tICcuLi90b2tlbnMvZGF0YXRhYmxlLXByZWZlcmVuY2VzLWFjY2Vzc29yJ1xuaW1wb3J0IHsgd2l0aFN0b3JlZENvbHVtbkluZm8gfSBmcm9tICcuLi91dGlscy93aXRoLXN0b3JlZC1jb2x1bW4taW5mbydcblxuZXhwb3J0IGludGVyZmFjZSBJRGF0YXRhYmxlUHJlZmVyZW5jZXNNYXBSZWNvcmQge1xuICBvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPElUaGVTZWFtRGF0YXRhYmxlUHJlZmVyZW5jZXM+XG4gIHJlZnJlc2g6IFN1YmplY3Q8dm9pZD5cbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGF0YXRhYmxlUHJlZmVyZW5jZXNTZXJ2aWNlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZVByZWZzTWFwID0gbmV3IE1hcDxzdHJpbmcsIElEYXRhdGFibGVQcmVmZXJlbmNlc01hcFJlY29yZD4oKVxuICBwcml2YXRlIF9wZW5kaW5nID0gZmFsc2VcblxuICBwdWJsaWMgZ2V0IHBlbmRpbmcoKSB7IHJldHVybiB0aGlzLl9wZW5kaW5nIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fREFUQVRBQkxFX1BSRUZFUkVOQ0VTX0FDQ0VTU09SKSBwcml2YXRlIF9wcmVmc0FjY2Vzc29yPzogSVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0FjY2Vzc29yXG4gICkgeyB9XG5cbiAgcHVibGljIHByZWZlcmVuY2VzKHByZWZlcmVuY2VLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8SVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcz4ge1xuICAgIGxldCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXG4gICAgaWYgKCFwcmVmcykge1xuICAgICAgY29uc3QgcmVmcmVzaFN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpXG4gICAgICBwcmVmcyA9IHtcbiAgICAgICAgb2JzZXJ2YWJsZTogdGhpcy5fY3JlYXRlT2JzZXJ2YWJsZShyZWZyZXNoU3ViamVjdCwgcHJlZmVyZW5jZUtleSksXG4gICAgICAgIHJlZnJlc2g6IHJlZnJlc2hTdWJqZWN0XG4gICAgICB9XG4gICAgICB0aGlzLl90YWJsZVByZWZzTWFwLnNldChwcmVmZXJlbmNlS2V5LCBwcmVmcylcbiAgICB9XG4gICAgcmV0dXJuIHByZWZzLm9ic2VydmFibGVcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU9ic2VydmFibGUocmVmcmVzaFN1YmplY3Q6IFN1YmplY3Q8dm9pZD4sIHByZWZLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8SVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcz4ge1xuICAgIGlmICghdGhpcy5fcHJlZnNBY2Nlc3Nvcikge1xuICAgICAgcmV0dXJuIG9mKHt9KVxuICAgIH1cblxuICAgIGNvbnN0IGFjY2Vzc29yID0gKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+XG4gICAgICB0aGlzLl9wcmVmc0FjY2Vzc29yID8gdGhpcy5fcHJlZnNBY2Nlc3Nvci5nZXQoa2V5KSA6IG9mKCd7fScpXG5cbiAgICByZXR1cm4gcmVmcmVzaFN1YmplY3QucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh7fSksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gYWNjZXNzb3IocHJlZktleSkucGlwZShcbiAgICAgICAgbWFwKHYgPT4ge1xuICAgICAgICAgIGlmICghdikge1xuICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBUT0RPOiBBZGQgYSBzY2hlbWEgdmFsaWRhdG9yIGFuZCBtaWdyYXRpb24gdG9vbCB0byBhdm9pZCBwYXJzaW5nIGlzc3Vlcy5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UodikgYXMgSVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc1xuICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgbWFwKHYgPT4gISF2ID8gdiA6IHt9KSxcbiAgICAgICAgLy8gdGFwKHYgPT4gY29uc29sZS5sb2coJ3ByZWZlcmVuY2VzJCcsIHYpKVxuICAgICAgICAvLyB0YXAodiA9PiB0aGlzLl9wZW5kaW5nID0gZmFsc2UpXG4gICAgICApKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKVxuICB9XG5cbiAgcHVibGljIHJlZnJlc2gocHJlZmVyZW5jZUtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcHJlZnMgPSB0aGlzLl90YWJsZVByZWZzTWFwLmdldChwcmVmZXJlbmNlS2V5KVxuICAgIGlmIChwcmVmcykge1xuICAgICAgdGhpcy5fcGVuZGluZyA9IHRydWVcbiAgICAgIHByZWZzLnJlZnJlc2gubmV4dCgpXG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogSW1wcm92ZSB0aGlzIHVwZGF0aW5nIHRvIGJlIG1vcmUgZ2VuZXJpYywgc28gd2UgY2FuIHF1aWNrbHkgYWRkXG4gIC8vIGVkaXRzIGZvciBkaWZmZXJlbnQgcHJlZmVyZW5jZSBzY2hlbWEncy5cbiAgLy9cbiAgLy8gVE9ETzogRGVjaWRlIGlmIGEgc2VuZCBxdWV1ZS9tZXJnaW5nIG9mIHBlbmRpbmcgcXVldWUgaXMgbmVlZGVkIHRvIGF2b2lkXG4gIC8vIG91dCBvZiBvcmRlciB1cGRhdGVzLiBUaGlzIHNob3VsZG4ndCBiZSBhbiBpc3N1ZSwgd2l0aCBob3cgZmFzdCBwcmVmZXJlbmNlc1xuICAvLyB3aWxsIG1vc3QgbGlrZWx5IGJlIGNoYW5naW5nLCBidXQgaXQgY291bGQgaGFwcGVuIGluIHNpdHVhdGlvbnMsIHN1Y2ggYXNcbiAgLy8gbmV0d29yayBpc3N1ZXMuXG4gIHB1YmxpYyBzZXRDb2x1bW5QcmVmZXJlbmNlKHByZWZlcmVuY2VLZXk6IHN0cmluZywgY29sdW1uOiBJVGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzQ29sdW1uKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9wcmVmc0FjY2Vzc29yKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9wZW5kaW5nID0gdHJ1ZVxuICAgIHRoaXMucHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleSkucGlwZShcbiAgICAgIG1hcChwcmVmcyA9PiB7XG4gICAgICAgIC8vIE1ha2luZyB0aGUgcHJlZmVyZW5jZXMgaW1tdXRhYmxlIG1heSBub3QgYmUgbmVjZXNzYXJ5LCBidXQgZm9yIG5vd1xuICAgICAgICAvLyB0aGlzIG9iai0+c3RyLT5vYmogd2lsbCB3b3JrIGFzIGEgbmFpdmUgY2xvbmUuXG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHByZWZzLmNvbHVtbnMgfHwgW10pKVxuICAgICAgICBjb25zdCBfY29sUHJlZiA9IGNvbHVtbnMuZmluZCgoYzogYW55KSA9PiBjLnByb3AgPT09IGNvbHVtbi5wcm9wKVxuICAgICAgICAvLyBjb25zb2xlLmxvZygnaGFzJywgX2NvbFByZWYpXG4gICAgICAgIGlmIChfY29sUHJlZikge1xuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdoYXNQcm9wZXJ0eShjb2x1bW4sIFwid2lkdGhcIikpJywgaGFzUHJvcGVydHkoY29sdW1uLCAnd2lkdGgnKSlcbiAgICAgICAgICBpZiAoaGFzUHJvcGVydHkoY29sdW1uLCAnd2lkdGgnKSkgeyBfY29sUHJlZi53aWR0aCA9IGNvbHVtbi53aWR0aCB9XG4gICAgICAgICAgaWYgKGhhc1Byb3BlcnR5KGNvbHVtbiwgJ2NhbkF1dG9SZXNpemUnKSkgeyBfY29sUHJlZi5jYW5BdXRvUmVzaXplID0gY29sdW1uLmNhbkF1dG9SZXNpemUgfVxuICAgICAgICAgIGlmIChoYXNQcm9wZXJ0eShjb2x1bW4sICdoaWRkZW4nKSkgeyBfY29sUHJlZi5oaWRkZW4gPSBjb2x1bW4uaGlkZGVuIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb2x1bW5zLnB1c2goeyAuLi5jb2x1bW4gfSlcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdQcmVmczogSVRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcyA9IHsgLi4ucHJlZnMsIGNvbHVtbnMgfVxuICAgICAgICByZXR1cm4gbmV3UHJlZnNcbiAgICAgIH0pLFxuICAgICAgLy8gdGFwKHYgPT4gY29uc29sZS5sb2coJ25ld1ByZWZzJywgdikpLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHN3aXRjaE1hcChuZXdQcmVmcyA9PiB0aGlzLl9wcmVmc0FjY2Vzc29yXG4gICAgICAgID8gdGhpcy5fcHJlZnNBY2Nlc3Nvci51cGRhdGUocHJlZmVyZW5jZUtleSwgSlNPTi5zdHJpbmdpZnkobmV3UHJlZnMpKVxuICAgICAgICA6IG9mKG5ld1ByZWZzKVxuICAgICAgKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLnJlZnJlc2gocHJlZmVyZW5jZUtleSkpXG4gICAgKVxuICAgIC5zdWJzY3JpYmUoKVxuICB9XG5cbiAgcHVibGljIHdpdGhDb2x1bW5QcmVmZXJlbmNlczxUPihwcmVmZXJlbmNlS2V5OiBzdHJpbmcsIGNvbHVtbnM6IFRbXSk6IE9ic2VydmFibGU8VFtdPiB7XG4gICAgcmV0dXJuIHRoaXMucHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleSkucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh7fSBhcyBJVGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzKSxcbiAgICAgIG1hcChwcmVmZXJlbmNlcyA9PiBwcmVmZXJlbmNlcyAmJiBwcmVmZXJlbmNlcy5jb2x1bW5zXG4gICAgICAgID8gd2l0aFN0b3JlZENvbHVtbkluZm8oY29sdW1ucywgcHJlZmVyZW5jZXMuY29sdW1ucykgYXMgVFtdXG4gICAgICAgIDogY29sdW1uc1xuICAgICAgKVxuICAgIClcbiAgfVxuXG59XG4iXX0=
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXRhYmxlLXByZWZlcmVuY2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZGF0YXRhYmxlL3NlcnZpY2VzL2RhdGF0YWJsZS1wcmVmZXJlbmNlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDdkUsT0FBTyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFbEYsT0FBTyxFQUFlLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDMUUsT0FBTyxFQUFFLDJCQUEyQixFQUFrRSxNQUFNLHVCQUF1QixDQUFBO0FBRW5JLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFBOzs7QUFTakcsMkJBQTJCO0FBSzNCLE1BQU0sT0FBTywyQkFBMkI7SUFTdEMsWUFDc0UsY0FBb0Q7UUFBcEQsbUJBQWMsR0FBZCxjQUFjLENBQXNDO1FBUnpHLG1CQUFjLEdBQUcsSUFBSSxHQUFHLEVBQTBDLENBQUE7UUFDM0UsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFBO0lBT25CLENBQUM7SUFMTCxJQUFXLE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUEsQ0FBQyxDQUFDO0lBQzdDLElBQVcsTUFBTSxLQUFLLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQSxDQUFDLENBQUM7SUFNcEMsV0FBVyxDQUFDLGFBQXFCO1FBQ3RDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENB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Q0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FDZixFQUNELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQ3ZDO2FBQ0EsU0FBUyxFQUFFLENBQUE7SUFDaEIsQ0FBQztJQUVELDBGQUEwRjtJQUMxRixpREFBaUQ7SUFDakQsOENBQThDO0lBQzlDLDREQUE0RDtJQUM1RCxvRUFBb0U7SUFDcEUsa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixNQUFNO0lBQ04sSUFBSTtJQUVJLHdCQUF3QixDQUFDLFVBQWtCO1FBQ2pELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7UUFFcEMsNEJBQTRCO1FBRTVCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQzs7OztZQTlLRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs0Q0FXSSxRQUFRLFlBQUksTUFBTSxTQUFDLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgaXNEZXZNb2RlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IGhhc1Byb3BlcnR5LCBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5pbXBvcnQgeyBFTVBUWV9EQVRBVEFCTEVfUFJFRkVSRU5DRVMsIFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcywgVGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzQ29sdW1uIH0gZnJvbSAnLi4vbW9kZWxzL3ByZWZlcmVuY2VzJ1xuaW1wb3J0IHR5cGUgeyBUaGVTZWFtRGF0YXRhYmxlUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJy4uL21vZGVscy9wcmVmZXJlbmNlcy1hY2Nlc3NvcidcbmltcG9ydCB7IFRIRVNFQU1fREFUQVRBQkxFX1BSRUZFUkVOQ0VTX0FDQ0VTU09SIH0gZnJvbSAnLi4vdG9rZW5zL2RhdGF0YWJsZS1wcmVmZXJlbmNlcy1hY2Nlc3NvcidcbmltcG9ydCB7IHdpdGhTdG9yZWRDb2x1bW5JbmZvIH0gZnJvbSAnLi4vdXRpbHMvd2l0aC1zdG9yZWQtY29sdW1uLWluZm8nXG5pbXBvcnQgeyBDb2x1bW5zQWx0ZXJhdGlvblN0YXRlIH0gZnJvbSAnLi4vbW9kZWxzL2NvbHVtbnMtYWx0ZXJhdGlvbidcblxuZXhwb3J0IGludGVyZmFjZSBJRGF0YXRhYmxlUHJlZmVyZW5jZXNNYXBSZWNvcmQge1xuICBvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcz5cbiAgcmVmcmVzaDogU3ViamVjdDx2b2lkPlxufVxuXG4vLyBUT0RPOiBBZGQgcGVyIGtleSBzdGF0dXNcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGF0YXRhYmxlUHJlZmVyZW5jZXNTZXJ2aWNlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZVByZWZzTWFwID0gbmV3IE1hcDxzdHJpbmcsIElEYXRhdGFibGVQcmVmZXJlbmNlc01hcFJlY29yZD4oKVxuICBwcml2YXRlIF9wZW5kaW5nID0gZmFsc2VcbiAgcHJpdmF0ZSBfbG9hZGVkID0gZmFsc2VcblxuICBwdWJsaWMgZ2V0IHBlbmRpbmcoKSB7IHJldHVybiB0aGlzLl9wZW5kaW5nIH1cbiAgcHVibGljIGdldCBsb2FkZWQoKSB7IHJldHVybiB0aGlzLl9sb2FkZWQgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVEhFU0VBTV9EQVRBVEFCTEVfUFJFRkVSRU5DRVNfQUNDRVNTT1IpIHByaXZhdGUgX3ByZWZzQWNjZXNzb3I/OiBUaGVTZWFtRGF0YXRhYmxlUHJlZmVyZW5jZXNBY2Nlc3NvclxuICApIHsgfVxuXG4gIHB1YmxpYyBwcmVmZXJlbmNlcyhwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlcz4ge1xuICAgIGxldCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXG4gICAgaWYgKCFwcmVmcykge1xuICAgICAgY29uc3QgcmVmcmVzaFN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpXG4gICAgICBwcmVmcyA9IHtcbiAgICAgICAgb2JzZXJ2YWJsZTogdGhpcy5fY3JlYXRlT2JzZXJ2YWJsZShyZWZyZXNoU3ViamVjdCwgcHJlZmVyZW5jZUtleSksXG4gICAgICAgIHJlZnJlc2g6IHJlZnJlc2hTdWJqZWN0XG4gICAgICB9XG4gICAgICB0aGlzLl90YWJsZVByZWZzTWFwLnNldChwcmVmZXJlbmNlS2V5LCBwcmVmcylcbiAgICB9XG4gICAgcmV0dXJuIHByZWZzLm9ic2VydmFibGVcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU9ic2VydmFibGUocmVmcmVzaFN1YmplY3Q6IFN1YmplY3Q8dm9pZD4sIHByZWZLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8VGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzPiB7XG4gICAgaWYgKCF0aGlzLl9wcmVmc0FjY2Vzc29yKSB7XG4gICAgICByZXR1cm4gb2YoRU1QVFlfREFUQVRBQkxFX1BSRUZFUkVOQ0VTKVxuICAgIH1cblxuICAgIGNvbnN0IGFjY2Vzc29yID0gKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+XG4gICAgICB0aGlzLl9wcmVmc0FjY2Vzc29yID8gdGhpcy5fcHJlZnNBY2Nlc3Nvci5nZXQoa2V5KSA6IG9mKEpTT04uc3RyaW5naWZ5KEVNUFRZX0RBVEFUQUJMRV9QUkVGRVJFTkNFUykpXG5cbiAgICByZXR1cm4gcmVmcmVzaFN1YmplY3QucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh1bmRlZmluZWQpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IGFjY2Vzc29yKHByZWZLZXkpLnBpcGUoXG4gICAgICAgIG1hcCh2ID0+IHtcbiAgICAgICAgICBpZiAoIXYpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gVE9ETzogQWRkIGEgc2NoZW1hIHZhbGlkYXRvciBhbmQgbWlncmF0aW9uIHRvb2wgdG8gYXZvaWQgcGFyc2luZyBpc3N1ZXMuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIHJldHVybiBKU09OLnBhcnNlKHYpIGFzIFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NlcmlhbGl6ZVByZWZlcmVuY2VzKHYpXG4gICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBtYXAodiA9PiBub3ROdWxsT3JVbmRlZmluZWQodikgPyB2IDogRU1QVFlfREFUQVRBQkxFX1BSRUZFUkVOQ0VTKSxcbiAgICAgICAgLy8gdGFwKHYgPT4gY29uc29sZS5sb2coJ3ByZWZlcmVuY2VzJCcsIHYpKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9wZW5kaW5nID0gZmFsc2VcbiAgICAgICAgICB0aGlzLl9sb2FkZWQgPSB0cnVlXG4gICAgICAgIH0pXG4gICAgICApKSxcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICAgKVxuICB9XG5cbiAgcHVibGljIHJlZnJlc2gocHJlZmVyZW5jZUtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcHJlZnMgPSB0aGlzLl90YWJsZVByZWZzTWFwLmdldChwcmVmZXJlbmNlS2V5KVxuICAgIGlmIChwcmVmcykge1xuICAgICAgdGhpcy5fcGVuZGluZyA9IHRydWVcbiAgICAgIHByZWZzLnJlZnJlc2gubmV4dCgpXG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogSW1wcm92ZSB0aGlzIHVwZGF0aW5nIHRvIGJlIG1vcmUgZ2VuZXJpYywgc28gd2UgY2FuIHF1aWNrbHkgYWRkXG4gIC8vIGVkaXRzIGZvciBkaWZmZXJlbnQgcHJlZmVyZW5jZSBzY2hlbWEncy5cbiAgLy9cbiAgLy8gVE9ETzogRGVjaWRlIGlmIGEgc2VuZCBxdWV1ZS9tZXJnaW5nIG9mIHBlbmRpbmcgcXVldWUgaXMgbmVlZGVkIHRvIGF2b2lkXG4gIC8vIG91dCBvZiBvcmRlciB1cGRhdGVzLiBUaGlzIHNob3VsZG4ndCBiZSBhbiBpc3N1ZSwgd2l0aCBob3cgZmFzdCBwcmVmZXJlbmNlc1xuICAvLyB3aWxsIG1vc3QgbGlrZWx5IGJlIGNoYW5naW5nLCBidXQgaXQgY291bGQgaGFwcGVuIGluIHNpdHVhdGlvbnMsIHN1Y2ggYXNcbiAgLy8gbmV0d29yayBpc3N1ZXMuXG4gIC8vIHB1YmxpYyBzZXRDb2x1bW5QcmVmZXJlbmNlKHByZWZlcmVuY2VLZXk6IHN0cmluZywgY29sdW1uOiBUaGVTZWFtRGF0YXRhYmxlUHJlZmVyZW5jZXNDb2x1bW4pOiB2b2lkIHtcbiAgLy8gICBpZiAoIXRoaXMuX3ByZWZzQWNjZXNzb3IpIHtcbiAgLy8gICAgIHJldHVyblxuICAvLyAgIH1cblxuICAvLyAgIHRoaXMuX3BlbmRpbmcgPSB0cnVlXG4gIC8vICAgdGhpcy5wcmVmZXJlbmNlcyhwcmVmZXJlbmNlS2V5KS5waXBlKFxuICAvLyAgICAgbWFwKHByZWZzID0+IHtcbiAgLy8gICAgICAgLy8gTWFraW5nIHRoZSBwcmVmZXJlbmNlcyBpbW11dGFibGUgbWF5IG5vdCBiZSBuZWNlc3NhcnksIGJ1dCBmb3Igbm93XG4gIC8vICAgICAgIC8vIHRoaXMgb2JqLT5zdHItPm9iaiB3aWxsIHdvcmsgYXMgYSBuYWl2ZSBjbG9uZS5cbiAgLy8gICAgICAgY29uc3QgY29sdW1ucyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkocHJlZnMuY29sdW1ucyB8fCBbXSkpXG4gIC8vICAgICAgIGNvbnN0IF9jb2xQcmVmID0gY29sdW1ucy5maW5kKChjOiBhbnkpID0+IGMucHJvcCA9PT0gY29sdW1uLnByb3ApXG4gIC8vICAgICAgIC8vIGNvbnNvbGUubG9nKCdoYXMnLCBfY29sUHJlZilcbiAgLy8gICAgICAgaWYgKF9jb2xQcmVmKSB7XG4gIC8vICAgICAgICAgLy8gY29uc29sZS5sb2coJ2hhc1Byb3BlcnR5KGNvbHVtbiwgXCJ3aWR0aFwiKSknLCBoYXNQcm9wZXJ0eShjb2x1bW4sICd3aWR0aCcpKVxuICAvLyAgICAgICAgIGlmIChoYXNQcm9wZXJ0eShjb2x1bW4sICd3aWR0aCcpKSB7IF9jb2xQcmVmLndpZHRoID0gY29sdW1uLndpZHRoIH1cbiAgLy8gICAgICAgICBpZiAoaGFzUHJvcGVydHkoY29sdW1uLCAnY2FuQXV0b1Jlc2l6ZScpKSB7IF9jb2xQcmVmLmNhbkF1dG9SZXNpemUgPSBjb2x1bW4uY2FuQXV0b1Jlc2l6ZSB9XG4gIC8vICAgICAgICAgaWYgKGhhc1Byb3BlcnR5KGNvbHVtbiwgJ2hpZGRlbicpKSB7IF9jb2xQcmVmLmhpZGRlbiA9IGNvbHVtbi5oaWRkZW4gfVxuICAvLyAgICAgICB9IGVsc2Uge1xuICAvLyAgICAgICAgIGNvbHVtbnMucHVzaCh7IC4uLmNvbHVtbiB9KVxuICAvLyAgICAgICB9XG4gIC8vICAgICAgIGNvbnN0IG5ld1ByZWZzOiBUaGVTZWFtRGF0YXRhYmxlUHJlZmVyZW5jZXMgPSB7IC4uLnByZWZzLCBjb2x1bW5zIH1cbiAgLy8gICAgICAgcmV0dXJuIG5ld1ByZWZzXG4gIC8vICAgICB9KSxcbiAgLy8gICAgIC8vIHRhcCh2ID0+IGNvbnNvbGUubG9nKCduZXdQcmVmcycsIHYpKSxcbiAgLy8gICAgIHRha2UoMSksXG4gIC8vICAgICBzd2l0Y2hNYXAobmV3UHJlZnMgPT4gdGhpcy5fcHJlZnNBY2Nlc3NvclxuICAvLyAgICAgICA/IHRoaXMuX3ByZWZzQWNjZXNzb3IudXBkYXRlKHByZWZlcmVuY2VLZXksIEpTT04uc3RyaW5naWZ5KG5ld1ByZWZzKSlcbiAgLy8gICAgICAgOiBvZihuZXdQcmVmcylcbiAgLy8gICAgICksXG4gIC8vICAgICB0YXAoKCkgPT4gdGhpcy5yZWZyZXNoKHByZWZlcmVuY2VLZXkpKVxuICAvLyAgIClcbiAgLy8gICAuc3Vic2NyaWJlKClcbiAgLy8gfVxuXG4gIHB1YmxpYyBzZXRBbHRlcmF0aW9ucyhwcmVmZXJlbmNlS2V5OiBzdHJpbmcsIGFsdGVyYXRpb25zOiBDb2x1bW5zQWx0ZXJhdGlvblN0YXRlW10pOiB2b2lkIHtcbiAgICAgIGlmICghdGhpcy5fcHJlZnNBY2Nlc3Nvcikge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgdGhpcy5fcGVuZGluZyA9IHRydWVcbiAgICAgIHRoaXMucHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleSkucGlwZShcbiAgICAgICAgbWFwKHByZWZzID0+IHtcbiAgICAgICAgICAvLyBNYWtpbmcgdGhlIHByZWZlcmVuY2VzIGltbXV0YWJsZSBtYXkgbm90IGJlIG5lY2Vzc2FyeSwgYnV0IGZvciBub3dcbiAgICAgICAgICAvLyB0aGlzIG9iai0+c3RyLT5vYmogd2lsbCB3b3JrIGFzIGEgbmFpdmUgY2xvbmUuXG4gICAgICAgICAgLy8gY29uc3QgY29sdW1ucyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkocHJlZnMuY29sdW1ucyB8fCBbXSkpXG4gICAgICAgICAgLy8gY29uc3QgX2NvbFByZWYgPSBjb2x1bW5zLmZpbmQoKGM6IGFueSkgPT4gYy5wcm9wID09PSBjb2x1bW4ucHJvcClcbiAgICAgICAgICAvLyAvLyBjb25zb2xlLmxvZygnaGFzJywgX2NvbFByZWYpXG4gICAgICAgICAgLy8gaWYgKF9jb2xQcmVmKSB7XG4gICAgICAgICAgLy8gICAvLyBjb25zb2xlLmxvZygnaGFzUHJvcGVydHkoY29sdW1uLCBcIndpZHRoXCIpKScsIGhhc1Byb3BlcnR5KGNvbHVtbiwgJ3dpZHRoJykpXG4gICAgICAgICAgLy8gICBpZiAoaGFzUHJvcGVydHkoY29sdW1uLCAnd2lkdGgnKSkgeyBfY29sUHJlZi53aWR0aCA9IGNvbHVtbi53aWR0aCB9XG4gICAgICAgICAgLy8gICBpZiAoaGFzUHJvcGVydHkoY29sdW1uLCAnY2FuQXV0b1Jlc2l6ZScpKSB7IF9jb2xQcmVmLmNhbkF1dG9SZXNpemUgPSBjb2x1bW4uY2FuQXV0b1Jlc2l6ZSB9XG4gICAgICAgICAgLy8gICBpZiAoaGFzUHJvcGVydHkoY29sdW1uLCAnaGlkZGVuJykpIHsgX2NvbFByZWYuaGlkZGVuID0gY29sdW1uLmhpZGRlbiB9XG4gICAgICAgICAgLy8gfSBlbHNlIHtcbiAgICAgICAgICAvLyAgIGNvbHVtbnMucHVzaCh7IC4uLmNvbHVtbiB9KVxuICAgICAgICAgIC8vIH1cbiAgICAgICAgICAvLyBjb25zdCBuZXdQcmVmczogVGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzID0geyAuLi5wcmVmcywgY29sdW1ucyB9XG4gICAgICAgICAgLy8gcmV0dXJuIG5ld1ByZWZzXG5cbiAgICAgICAgICBjb25zdCBuZXdQcmVmczogVGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzID0ge1xuICAgICAgICAgICAgLi4uRU1QVFlfREFUQVRBQkxFX1BSRUZFUkVOQ0VTLFxuICAgICAgICAgICAgYWx0ZXJhdGlvbnNcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG5ld1ByZWZzXG4gICAgICAgIH0pLFxuICAgICAgICAvLyB0YXAodiA9PiBjb25zb2xlLmxvZygnbmV3UHJlZnMnLCB2KSksXG4gICAgICAgIHRha2UoMSksXG4gICAgICAgIHN3aXRjaE1hcChuZXdQcmVmcyA9PiB0aGlzLl9wcmVmc0FjY2Vzc29yXG4gICAgICAgICAgPyB0aGlzLl9wcmVmc0FjY2Vzc29yLnVwZGF0ZShwcmVmZXJlbmNlS2V5LCBKU09OLnN0cmluZ2lmeShuZXdQcmVmcykpXG4gICAgICAgICAgOiBvZihuZXdQcmVmcylcbiAgICAgICAgKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMucmVmcmVzaChwcmVmZXJlbmNlS2V5KSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKVxuICB9XG5cbiAgLy8gcHVibGljIHdpdGhDb2x1bW5QcmVmZXJlbmNlczxUPihwcmVmZXJlbmNlS2V5OiBzdHJpbmcsIGNvbHVtbnM6IFRbXSk6IE9ic2VydmFibGU8VFtdPiB7XG4gIC8vICAgcmV0dXJuIHRoaXMucHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleSkucGlwZShcbiAgLy8gICAgIHN0YXJ0V2l0aChFTVBUWV9EQVRBVEFCTEVfUFJFRkVSRU5DRVMpLFxuICAvLyAgICAgbWFwKHByZWZlcmVuY2VzID0+IHByZWZlcmVuY2VzICYmIHByZWZlcmVuY2VzLmNvbHVtbnNcbiAgLy8gICAgICAgPyB3aXRoU3RvcmVkQ29sdW1uSW5mbyhjb2x1bW5zLCBwcmVmZXJlbmNlcy5jb2x1bW5zKSBhcyBUW11cbiAgLy8gICAgICAgOiBjb2x1bW5zXG4gIC8vICAgICApXG4gIC8vICAgKVxuICAvLyB9XG5cbiAgcHJpdmF0ZSBfZGVzY2VyaWFsaXplUHJlZmVyZW5jZXMoc2VyaWFsaXplZDogc3RyaW5nKTogVGhlU2VhbURhdGF0YWJsZVByZWZlcmVuY2VzIHtcbiAgICBjb25zdCBwcmVmcyA9IEpTT04ucGFyc2Uoc2VyaWFsaXplZClcblxuICAgIC8vIFRPRE86IEltcGxlbWVudCBtaWdyYXRpb25cblxuICAgIHJldHVybiBwcmVmc1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -2,5 +2,7 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './public-api';
|
|
5
|
+
export { ColumnsAlterationsManagerService as ɵc } from './services/columns-alterations-manager.service';
|
|
6
|
+
export { ColumnsManagerService as ɵb } from './services/columns-manager.service';
|
|
5
7
|
export { THESEAM_DATATABLE_ACCESSOR as ɵa } from './tokens/datatable-accessor';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlc2VhbS11aS1jb21tb24tZGF0YXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2RhdGF0YWJsZS90aGVzZWFtLXVpLWNvbW1vbi1kYXRhdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsZ0NBQWdDLElBQUksRUFBRSxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdEcsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQy9FLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtDb2x1bW5zQWx0ZXJhdGlvbnNNYW5hZ2VyU2VydmljZSBhcyDJtWN9IGZyb20gJy4vc2VydmljZXMvY29sdW1ucy1hbHRlcmF0aW9ucy1tYW5hZ2VyLnNlcnZpY2UnO1xuZXhwb3J0IHtDb2x1bW5zTWFuYWdlclNlcnZpY2UgYXMgybVifSBmcm9tICcuL3NlcnZpY2VzL2NvbHVtbnMtbWFuYWdlci5zZXJ2aWNlJztcbmV4cG9ydCB7VEhFU0VBTV9EQVRBVEFCTEVfQUNDRVNTT1IgYXMgybVhfSBmcm9tICcuL3Rva2Vucy9kYXRhdGFibGUtYWNjZXNzb3InOyJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const THESEAM_DATATABLE_PREFERENCES_ACCESSOR = new InjectionToken('
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
export const THESEAM_DATATABLE_PREFERENCES_ACCESSOR = new InjectionToken('TheSeamDatatablePreferencesAccessor');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXRhYmxlLXByZWZlcmVuY2VzLWFjY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2RhdGF0YWJsZS90b2tlbnMvZGF0YXRhYmxlLXByZWZlcmVuY2VzLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFJOUMsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQUcsSUFBSSxjQUFjLENBQ3RFLHFDQUFxQyxDQUN0QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5pbXBvcnQgeyBUaGVTZWFtRGF0YXRhYmxlUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJy4uL21vZGVscy9wcmVmZXJlbmNlcy1hY2Nlc3NvcidcblxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fREFUQVRBQkxFX1BSRUZFUkVOQ0VTX0FDQ0VTU09SID0gbmV3IEluamVjdGlvblRva2VuPFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0FjY2Vzc29yPihcbiAgJ1RoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0FjY2Vzc29yJ1xuKVxuIl19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const ACTION_MENU_COLUMN_PROP = '$$__actionMenu__';
|
|
2
|
+
export function createActionMenuColumn(cellTemplate, headerTemplate) {
|
|
3
|
+
return {
|
|
4
|
+
prop: ACTION_MENU_COLUMN_PROP,
|
|
5
|
+
name: '',
|
|
6
|
+
width: 50,
|
|
7
|
+
minWidth: 50,
|
|
8
|
+
maxWidth: 50,
|
|
9
|
+
resizeable: false,
|
|
10
|
+
sortable: false,
|
|
11
|
+
draggable: false,
|
|
12
|
+
// TODO: Fix column auto sizing with fixed column and cell overlay before enabling.
|
|
13
|
+
// frozenRight: true,
|
|
14
|
+
cellTemplate,
|
|
15
|
+
headerTemplate,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWFjdGlvbi1tZW51LWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9kYXRhdGFibGUvdXRpbHMvY3JlYXRlLWFjdGlvbi1tZW51LWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxrQkFBa0IsQ0FBQTtBQUV6RCxNQUFNLFVBQVUsc0JBQXNCLENBQ3BDLFlBQWlCLEVBQ2pCLGNBQW1CO0lBRW5CLE9BQU87UUFDTCxJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLElBQUksRUFBRSxFQUFFO1FBQ1IsS0FBSyxFQUFFLEVBQUU7UUFDVCxRQUFRLEVBQUUsRUFBRTtRQUNaLFFBQVEsRUFBRSxFQUFFO1FBQ1osVUFBVSxFQUFFLEtBQUs7UUFDakIsUUFBUSxFQUFFLEtBQUs7UUFDZixTQUFTLEVBQUUsS0FBSztRQUNoQixtRkFBbUY7UUFDbkYscUJBQXFCO1FBQ3JCLFlBQVk7UUFDWixjQUFjO0tBQ2YsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVTZWFtRGF0YXRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWNvbHVtbidcblxuZXhwb3J0IGNvbnN0IEFDVElPTl9NRU5VX0NPTFVNTl9QUk9QID0gJyQkX19hY3Rpb25NZW51X18nXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBY3Rpb25NZW51Q29sdW1uKFxuICBjZWxsVGVtcGxhdGU6IGFueSxcbiAgaGVhZGVyVGVtcGxhdGU6IGFueVxuKTogVGhlU2VhbURhdGF0YWJsZUNvbHVtbiB7XG4gIHJldHVybiB7XG4gICAgcHJvcDogQUNUSU9OX01FTlVfQ09MVU1OX1BST1AsXG4gICAgbmFtZTogJycsXG4gICAgd2lkdGg6IDUwLFxuICAgIG1pbldpZHRoOiA1MCxcbiAgICBtYXhXaWR0aDogNTAsXG4gICAgcmVzaXplYWJsZTogZmFsc2UsXG4gICAgc29ydGFibGU6IGZhbHNlLFxuICAgIGRyYWdnYWJsZTogZmFsc2UsXG4gICAgLy8gVE9ETzogRml4IGNvbHVtbiBhdXRvIHNpemluZyB3aXRoIGZpeGVkIGNvbHVtbiBhbmQgY2VsbCBvdmVybGF5IGJlZm9yZSBlbmFibGluZy5cbiAgICAvLyBmcm96ZW5SaWdodDogdHJ1ZSxcbiAgICBjZWxsVGVtcGxhdGUsXG4gICAgaGVhZGVyVGVtcGxhdGUsXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const CHECKBOX_COLUMN_PROP = '$$__checkbox__';
|
|
2
|
+
export function createCheckboxColumn() {
|
|
3
|
+
return {
|
|
4
|
+
prop: CHECKBOX_COLUMN_PROP,
|
|
5
|
+
name: '',
|
|
6
|
+
width: 40,
|
|
7
|
+
sortable: false,
|
|
8
|
+
canAutoResize: false,
|
|
9
|
+
draggable: false,
|
|
10
|
+
resizeable: false,
|
|
11
|
+
headerCheckboxable: true,
|
|
12
|
+
checkboxable: true,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNoZWNrYm94LWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9kYXRhdGFibGUvdXRpbHMvY3JlYXRlLWNoZWNrYm94LWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FBQTtBQUVwRCxNQUFNLFVBQVUsb0JBQW9CO0lBQ2xDLE9BQU87UUFDTCxJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLElBQUksRUFBRSxFQUFFO1FBQ1IsS0FBSyxFQUFFLEVBQUU7UUFDVCxRQUFRLEVBQUUsS0FBSztRQUNmLGFBQWEsRUFBRSxLQUFLO1FBQ3BCLFNBQVMsRUFBRSxLQUFLO1FBQ2hCLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLGtCQUFrQixFQUFFLElBQUk7UUFDeEIsWUFBWSxFQUFFLElBQUk7S0FDbkIsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVTZWFtRGF0YXRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWNvbHVtbidcblxuZXhwb3J0IGNvbnN0IENIRUNLQk9YX0NPTFVNTl9QUk9QID0gJyQkX19jaGVja2JveF9fJ1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ2hlY2tib3hDb2x1bW4oKTogVGhlU2VhbURhdGF0YWJsZUNvbHVtbiB7XG4gIHJldHVybiB7XG4gICAgcHJvcDogQ0hFQ0tCT1hfQ09MVU1OX1BST1AsXG4gICAgbmFtZTogJycsXG4gICAgd2lkdGg6IDQwLFxuICAgIHNvcnRhYmxlOiBmYWxzZSxcbiAgICBjYW5BdXRvUmVzaXplOiBmYWxzZSxcbiAgICBkcmFnZ2FibGU6IGZhbHNlLFxuICAgIHJlc2l6ZWFibGU6IGZhbHNlLFxuICAgIGhlYWRlckNoZWNrYm94YWJsZTogdHJ1ZSxcbiAgICBjaGVja2JveGFibGU6IHRydWUsXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { camelCase } from '@marklb/ngx-datatable';
|
|
2
|
+
import { notNullOrUndefined } from '@theseam/ui-common/utils';
|
|
3
|
+
export function getColumnProp(col) {
|
|
4
|
+
if (!notNullOrUndefined(col.prop) && col.name) {
|
|
5
|
+
return camelCase(col.name);
|
|
6
|
+
}
|
|
7
|
+
return col.prop === null ? undefined : col.prop;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNvbHVtbi1wcm9wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2RhdGF0YWJsZS91dGlscy9nZXQtY29sdW1uLXByb3AudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZ0MsTUFBTSx1QkFBdUIsQ0FBQTtBQUUvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUU3RCxNQUFNLFVBQVUsYUFBYSxDQUMzQixHQUFNO0lBRU4sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFO1FBQzdDLE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtLQUMzQjtJQUVELE9BQU8sR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQTtBQUNqRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2FtZWxDYXNlLCBUYWJsZUNvbHVtbiwgVGFibGVDb2x1bW5Qcm9wIH0gZnJvbSAnQG1hcmtsYi9uZ3gtZGF0YXRhYmxlJ1xuXG5pbXBvcnQgeyBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2x1bW5Qcm9wPFQgZXh0ZW5kcyB7IHByb3A/OiBUYWJsZUNvbHVtblByb3AgfCBudWxsLCBuYW1lPzogc3RyaW5nIHwgbnVsbCB9PihcbiAgY29sOiBUXG4pOiBUYWJsZUNvbHVtblByb3AgfCB1bmRlZmluZWQge1xuICBpZiAoIW5vdE51bGxPclVuZGVmaW5lZChjb2wucHJvcCkgJiYgY29sLm5hbWUpIHtcbiAgICByZXR1cm4gY2FtZWxDYXNlKGNvbC5uYW1lKVxuICB9XG5cbiAgcmV0dXJuIGNvbC5wcm9wID09PSBudWxsID8gdW5kZWZpbmVkIDogY29sLnByb3Bcbn1cbiJdfQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { isDevMode } from '@angular/core';
|
|
2
|
+
import { HideColumnColumnsAlteration } from '../models/columns-alterations/hide-column.columns-alteration';
|
|
3
|
+
import { OrderColumnsAlteration } from '../models/columns-alterations/order.columns-alteration';
|
|
4
|
+
import { SortColumnsAlteration } from '../models/columns-alterations/sort.columns-alteration';
|
|
5
|
+
import { WidthColumnsAlteration } from '../models/columns-alterations/width.columns-alteration';
|
|
6
|
+
export function mapColumnsAlterationsStates(states) {
|
|
7
|
+
const alterations = [];
|
|
8
|
+
for (const state of states) {
|
|
9
|
+
try {
|
|
10
|
+
switch (state.type) {
|
|
11
|
+
case 'hide-column':
|
|
12
|
+
alterations.push(new HideColumnColumnsAlteration(state.state, true));
|
|
13
|
+
break;
|
|
14
|
+
case 'width':
|
|
15
|
+
alterations.push(new WidthColumnsAlteration(state.state, true));
|
|
16
|
+
break;
|
|
17
|
+
case 'order':
|
|
18
|
+
alterations.push(new OrderColumnsAlteration(state.state, true));
|
|
19
|
+
break;
|
|
20
|
+
case 'sort':
|
|
21
|
+
alterations.push(new SortColumnsAlteration(state.state, true));
|
|
22
|
+
break;
|
|
23
|
+
default: {
|
|
24
|
+
if (isDevMode()) {
|
|
25
|
+
console.warn('Unrecognized ColumnsAlteration state', state);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
catch (e) {
|
|
31
|
+
if (isDevMode()) {
|
|
32
|
+
console.warn('Unable to map ColumnsAlteration state', state);
|
|
33
|
+
console.warn(e);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return alterations;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWNvbHVtbnMtYWx0ZXJhdGlvbnMtc3RhdGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2RhdGF0YWJsZS91dGlscy9tYXAtY29sdW1ucy1hbHRlcmF0aW9ucy1zdGF0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUd6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQTtBQUMxRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUVoRyxNQUFNLFVBQVUsMkJBQTJCLENBQUMsTUFBZ0M7SUFDMUUsTUFBTSxXQUFXLEdBQXdCLEVBQUUsQ0FBQTtJQUUzQyxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRTtRQUMxQixJQUFJO1lBQ0YsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO2dCQUNsQixLQUFLLGFBQWE7b0JBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFBQyxNQUFNO2dCQUNoRyxLQUFLLE9BQU87b0JBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFBQyxNQUFNO2dCQUNyRixLQUFLLE9BQU87b0JBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFBQyxNQUFNO2dCQUNyRixLQUFLLE1BQU07b0JBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFBQyxNQUFNO2dCQUNuRixPQUFPLENBQUMsQ0FBQztvQkFDUCxJQUFJLFNBQVMsRUFBRSxFQUFFO3dCQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0NBQXNDLEVBQUUsS0FBSyxDQUFDLENBQUE7cUJBQzVEO2lCQUNGO2FBQ0Y7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsSUFBSSxTQUFTLEVBQUUsRUFBRTtnQkFDZixPQUFPLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxFQUFFLEtBQUssQ0FBQyxDQUFBO2dCQUM1RCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1NBQ0Y7S0FDRjtJQUVELE9BQU8sV0FBVyxDQUFBO0FBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5cclxuaW1wb3J0IHsgQ29sdW1uc0FsdGVyYXRpb24sIENvbHVtbnNBbHRlcmF0aW9uU3RhdGUgfSBmcm9tICcuLi9tb2RlbHMvY29sdW1ucy1hbHRlcmF0aW9uJ1xyXG5pbXBvcnQgeyBIaWRlQ29sdW1uQ29sdW1uc0FsdGVyYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29sdW1ucy1hbHRlcmF0aW9ucy9oaWRlLWNvbHVtbi5jb2x1bW5zLWFsdGVyYXRpb24nXHJcbmltcG9ydCB7IE9yZGVyQ29sdW1uc0FsdGVyYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29sdW1ucy1hbHRlcmF0aW9ucy9vcmRlci5jb2x1bW5zLWFsdGVyYXRpb24nO1xyXG5pbXBvcnQgeyBTb3J0Q29sdW1uc0FsdGVyYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29sdW1ucy1hbHRlcmF0aW9ucy9zb3J0LmNvbHVtbnMtYWx0ZXJhdGlvbic7XHJcbmltcG9ydCB7IFdpZHRoQ29sdW1uc0FsdGVyYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29sdW1ucy1hbHRlcmF0aW9ucy93aWR0aC5jb2x1bW5zLWFsdGVyYXRpb24nO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcENvbHVtbnNBbHRlcmF0aW9uc1N0YXRlcyhzdGF0ZXM6IENvbHVtbnNBbHRlcmF0aW9uU3RhdGVbXSk6IENvbHVtbnNBbHRlcmF0aW9uW10ge1xyXG4gIGNvbnN0IGFsdGVyYXRpb25zOiBDb2x1bW5zQWx0ZXJhdGlvbltdID0gW11cclxuXHJcbiAgZm9yIChjb25zdCBzdGF0ZSBvZiBzdGF0ZXMpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIHN3aXRjaCAoc3RhdGUudHlwZSkge1xyXG4gICAgICAgIGNhc2UgJ2hpZGUtY29sdW1uJzogYWx0ZXJhdGlvbnMucHVzaChuZXcgSGlkZUNvbHVtbkNvbHVtbnNBbHRlcmF0aW9uKHN0YXRlLnN0YXRlLCB0cnVlKSk7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3dpZHRoJzogYWx0ZXJhdGlvbnMucHVzaChuZXcgV2lkdGhDb2x1bW5zQWx0ZXJhdGlvbihzdGF0ZS5zdGF0ZSwgdHJ1ZSkpOyBicmVhaztcclxuICAgICAgICBjYXNlICdvcmRlcic6IGFsdGVyYXRpb25zLnB1c2gobmV3IE9yZGVyQ29sdW1uc0FsdGVyYXRpb24oc3RhdGUuc3RhdGUsIHRydWUpKTsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnc29ydCc6IGFsdGVyYXRpb25zLnB1c2gobmV3IFNvcnRDb2x1bW5zQWx0ZXJhdGlvbihzdGF0ZS5zdGF0ZSwgdHJ1ZSkpOyBicmVhaztcclxuICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICAgICAgY29uc29sZS53YXJuKCdVbnJlY29nbml6ZWQgQ29sdW1uc0FsdGVyYXRpb24gc3RhdGUnLCBzdGF0ZSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS53YXJuKCdVbmFibGUgdG8gbWFwIENvbHVtbnNBbHRlcmF0aW9uIHN0YXRlJywgc3RhdGUpXHJcbiAgICAgICAgY29uc29sZS53YXJuKGUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBhbHRlcmF0aW9uc1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export function removeUnusedDiffs(cols, colDiffersInp, colDiffersTpl) {
|
|
2
|
+
const inpKeys = Object.keys(colDiffersInp);
|
|
3
|
+
inpKeys.filter(k => cols.findIndex(c => c.prop === k) === -1)
|
|
4
|
+
.forEach(k => { delete colDiffersInp[k]; });
|
|
5
|
+
const tplKeys = Object.keys(colDiffersTpl);
|
|
6
|
+
tplKeys.filter(k => cols.findIndex(c => c.prop === k) === -1)
|
|
7
|
+
.forEach(k => { delete colDiffersTpl[k]; });
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXVudXNlZC1kaWZmcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9kYXRhdGFibGUvdXRpbHMvcmVtb3ZlLXVudXNlZC1kaWZmcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLElBQThCLEVBQzlCLGFBQStELEVBQy9ELGFBQStEO0lBRS9ELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7SUFDMUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzFELE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFFNUMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUMxQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDMUQsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5VmFsdWVEaWZmZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5pbXBvcnQgeyBUaGVTZWFtRGF0YXRhYmxlQ29sdW1uIH0gZnJvbSAnLi8uLi9tb2RlbHMvdGFibGUtY29sdW1uJ1xuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlVW51c2VkRGlmZnMoXG4gIGNvbHM6IFRoZVNlYW1EYXRhdGFibGVDb2x1bW5bXSxcbiAgY29sRGlmZmVyc0lucDogeyBbcHJvcE5hbWU6IHN0cmluZ106IEtleVZhbHVlRGlmZmVyPGFueSwgYW55PiB9LFxuICBjb2xEaWZmZXJzVHBsOiB7IFtwcm9wTmFtZTogc3RyaW5nXTogS2V5VmFsdWVEaWZmZXI8YW55LCBhbnk+IH1cbik6IHZvaWQge1xuICBjb25zdCBpbnBLZXlzID0gT2JqZWN0LmtleXMoY29sRGlmZmVyc0lucClcbiAgaW5wS2V5cy5maWx0ZXIoayA9PiBjb2xzLmZpbmRJbmRleChjID0+IGMucHJvcCA9PT0gaykgPT09IC0xKVxuICAgIC5mb3JFYWNoKGsgPT4geyBkZWxldGUgY29sRGlmZmVyc0lucFtrXSB9KVxuXG4gIGNvbnN0IHRwbEtleXMgPSBPYmplY3Qua2V5cyhjb2xEaWZmZXJzVHBsKVxuICB0cGxLZXlzLmZpbHRlcihrID0+IGNvbHMuZmluZEluZGV4KGMgPT4gYy5wcm9wID09PSBrKSA9PT0gLTEpXG4gICAgLmZvckVhY2goayA9PiB7IGRlbGV0ZSBjb2xEaWZmZXJzVHBsW2tdIH0pXG59XG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { setColumnDefaults as _scd } from '@marklb/ngx-datatable';
|
|
2
|
+
export function setColumnDefaults(columns) {
|
|
3
|
+
for (const column of columns) {
|
|
4
|
+
if (!column.hasOwnProperty('hidden')) {
|
|
5
|
+
column.hidden = false;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
_scd(columns);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWNvbHVtbi1kZWZhdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9kYXRhdGFibGUvdXRpbHMvc2V0LWNvbHVtbi1kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLElBQUksSUFBSSxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFJakUsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE9BQWlDO0lBQ2pFLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3BDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFBO1NBQ3RCO0tBQ0Y7SUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2V0Q29sdW1uRGVmYXVsdHMgYXMgX3NjZCB9IGZyb20gJ0BtYXJrbGIvbmd4LWRhdGF0YWJsZSdcblxuaW1wb3J0IHsgVGhlU2VhbURhdGF0YWJsZUNvbHVtbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1jb2x1bW4nXG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRDb2x1bW5EZWZhdWx0cyhjb2x1bW5zOiBUaGVTZWFtRGF0YXRhYmxlQ29sdW1uW10pOiB2b2lkIHtcbiAgZm9yIChjb25zdCBjb2x1bW4gb2YgY29sdW1ucykge1xuICAgIGlmICghY29sdW1uLmhhc093blByb3BlcnR5KCdoaWRkZW4nKSkge1xuICAgICAgY29sdW1uLmhpZGRlbiA9IGZhbHNlXG4gICAgfVxuICB9XG4gIF9zY2QoY29sdW1ucylcbn1cbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { translateTemplates } from '@marklb/ngx-datatable';
|
|
2
|
+
import { getColumnProp } from '../utils/get-column-prop';
|
|
3
|
+
// TODO: Replace with a `translateTemplates` function that fits the
|
|
4
|
+
// wrapper component better.
|
|
5
|
+
export function translateTemplateColumns(v) {
|
|
6
|
+
const cols = translateTemplates(v);
|
|
7
|
+
for (const col of cols) {
|
|
8
|
+
col.prop = getColumnProp(col);
|
|
9
|
+
}
|
|
10
|
+
return cols;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLXRlbXBsYXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9kYXRhdGFibGUvdXRpbHMvdHJhbnNsYXRlLXRlbXBsYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUcxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFeEQsbUVBQW1FO0FBQ25FLDRCQUE0QjtBQUM1QixNQUFNLFVBQVUsd0JBQXdCLENBQUMsQ0FBNkI7SUFDcEUsTUFBTSxJQUFJLEdBQUcsa0JBQWtCLENBQUMsQ0FBUSxDQUErQixDQUFBO0lBRXZFLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFO1FBQ3RCLEdBQUcsQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0tBQzlCO0lBRUQsT0FBTyxJQUFJLENBQUE7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHJhbnNsYXRlVGVtcGxhdGVzIH0gZnJvbSAnQG1hcmtsYi9uZ3gtZGF0YXRhYmxlJ1xuXG5pbXBvcnQgeyBEYXRhdGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi9kYXRhdGFibGUtY29sdW1uL2RhdGF0YWJsZS1jb2x1bW4uY29tcG9uZW50J1xuaW1wb3J0IHsgZ2V0Q29sdW1uUHJvcCB9IGZyb20gJy4uL3V0aWxzL2dldC1jb2x1bW4tcHJvcCdcblxuLy8gVE9ETzogUmVwbGFjZSB3aXRoIGEgYHRyYW5zbGF0ZVRlbXBsYXRlc2AgZnVuY3Rpb24gdGhhdCBmaXRzIHRoZVxuLy8gd3JhcHBlciBjb21wb25lbnQgYmV0dGVyLlxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zbGF0ZVRlbXBsYXRlQ29sdW1ucyh2OiBEYXRhdGFibGVDb2x1bW5Db21wb25lbnRbXSk6IERhdGF0YWJsZUNvbHVtbkNvbXBvbmVudFtdIHtcbiAgY29uc3QgY29scyA9IHRyYW5zbGF0ZVRlbXBsYXRlcyh2IGFzIGFueSkgYXMgRGF0YXRhYmxlQ29sdW1uQ29tcG9uZW50W11cblxuICBmb3IgKGNvbnN0IGNvbCBvZiBjb2xzKSB7XG4gICAgY29sLnByb3AgPSBnZXRDb2x1bW5Qcm9wKGNvbClcbiAgfVxuXG4gIHJldHVybiBjb2xzXG59XG4iXX0=
|
|
@@ -17,4 +17,4 @@ export function withStoredColumnInfo(columns, preferenceColumns) {
|
|
|
17
17
|
}
|
|
18
18
|
return _columns;
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdG9yZWQtY29sdW1uLWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZGF0YXRhYmxlL3V0aWxzL3dpdGgtc3RvcmVkLWNvbHVtbi1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUt0RCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLE9BQWlDLEVBQ2pDLGlCQUFzRDtJQUV0RCxNQUFNLFFBQVEsR0FBNkIsRUFBRSxDQUFBO0lBQzdDLEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxFQUFFO1FBQ3pCLE1BQU0sU0FBUyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2xFLElBQUksU0FBUyxFQUFFO1lBQ2IsTUFBTSxJQUFJLHFCQUFRLEdBQUcsQ0FBRSxDQUFBO1lBQ3ZCLElBQUksV0FBVyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRTtnQkFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTthQUFFO1lBQ2xGLElBQUksQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQTtZQUM1QyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQ3BCO2FBQU07WUFDTCxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1NBQ25CO0tBQ0Y7SUFDRCxPQUFPLFFBQVEsQ0FBQTtBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFzUHJvcGVydHkgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0NvbHVtbiB9IGZyb20gJy4uL21vZGVscy9wcmVmZXJlbmNlcydcbmltcG9ydCB7IFRoZVNlYW1EYXRhdGFibGVDb2x1bW4gfSBmcm9tICcuLi9tb2RlbHMvdGFibGUtY29sdW1uJ1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFN0b3JlZENvbHVtbkluZm8oXG4gIGNvbHVtbnM6IFRoZVNlYW1EYXRhdGFibGVDb2x1bW5bXSxcbiAgcHJlZmVyZW5jZUNvbHVtbnM6IFRoZVNlYW1EYXRhdGFibGVQcmVmZXJlbmNlc0NvbHVtbltdXG4pOiBUaGVTZWFtRGF0YXRhYmxlQ29sdW1uW10ge1xuICBjb25zdCBfY29sdW1uczogVGhlU2VhbURhdGF0YWJsZUNvbHVtbltdID0gW11cbiAgZm9yIChjb25zdCBjb2wgb2YgY29sdW1ucykge1xuICAgIGNvbnN0IHN0b3JlZENvbCA9IHByZWZlcmVuY2VDb2x1bW5zLmZpbmQodiA9PiB2LnByb3AgPT09IGNvbC5wcm9wKVxuICAgIGlmIChzdG9yZWRDb2wpIHtcbiAgICAgIGNvbnN0IF9jb2wgPSB7IC4uLmNvbCB9XG4gICAgICBpZiAoaGFzUHJvcGVydHkoc3RvcmVkQ29sLCAnd2lkdGgnKSkgeyBfY29sLndpZHRoID0gTWF0aC5tYXgoc3RvcmVkQ29sLndpZHRoLCAwKSB9XG4gICAgICBfY29sLmNhbkF1dG9SZXNpemUgPSBzdG9yZWRDb2wuY2FuQXV0b1Jlc2l6ZVxuICAgICAgX2NvbHVtbnMucHVzaChfY29sKVxuICAgIH0gZWxzZSB7XG4gICAgICBfY29sdW1ucy5wdXNoKGNvbClcbiAgICB9XG4gIH1cbiAgcmV0dXJuIF9jb2x1bW5zXG59XG4iXX0=
|
|
@@ -105,7 +105,7 @@ DatatableDynamicActionMenuComponent.decorators = [
|
|
|
105
105
|
selector: 'seam-datatable-dynamic-action-menu',
|
|
106
106
|
template: "<seam-menu #menu\n menuClass=\"list-group py-0 border-0 seam-datatable-action-menu\"\n animationType=\"fade\">\n\n <ng-container *ngFor=\"let record of _menuRecords$ | async\">\n\n <a *ngIf=\"record.elementType === 'a'\"\n seamMenuItem\n [seamDatatableDynamicActionMenuItem]=\"record\"\n class=\"list-group-item list-group-item-action py-1\">{{ record.rowAction.label }}</a>\n\n <button *ngIf=\"record.elementType === 'button'\"\n seamMenuItem\n [seamDatatableDynamicActionMenuItem]=\"record\"\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\">{{ record.rowAction.label }}</button>\n\n </ng-container>\n\n <!-- <ng-container *ngIf=\"(item.routerLink || item.href) && !item.confirmDialog; else noRouterLink\">\n <a *ngIf=\"item.href; else noHref\"\n seamMenuItem\n class=\"list-group-item list-group-item-action py-1\"\n [attr.href]=\"item.href\"\n [target]=\"item.target\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </a>\n <ng-template #noHref>\n <a seamMenuItem\n class=\"list-group-item list-group-item-action py-1\"\n [queryParams]=\"item.queryParams\"\n [fragment]=\"item.fragment\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"item.preserveFragment\"\n [skipLocationChange]=\"item.skipLocationChange\"\n [replaceUrl]=\"item.replaceUrl\"\n [state]=\"item.state\"\n [routerLink]=\"item.routerLink\"\n [target]=\"item.target\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </a>\n </ng-template>\n </ng-container>\n <ng-template #noRouterLink>\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </button>\n </ng-template>\n </ng-container> -->\n</seam-menu>\n\n<button type=\"button\" class=\"datatable-action-button btn\"\n [seamMenuToggle]=\"menu\"\n [positions]=\"$any(_actionMenuPositions)\"\n title=\"Row Actions\">\n <seam-icon [icon]=\"faEllipsisH\"></seam-icon>\n</button>\n",
|
|
107
107
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
108
|
-
styles: [":host{display:block;position:relative}.datatable-action-button{font-size:20px;line-height:20px;width:30px;height:30px;padding:0;border-radius:15px;text-align:center}.datatable-action-button::ng-deep .svg-inline--fa{vertical-align:middle}"]
|
|
108
|
+
styles: [":host{display:block;position:relative}.datatable-action-button{font-size:20px;line-height:20px;width:30px;height:30px;padding:0;border-radius:15px;text-align:center}.datatable-action-button::ng-deep .svg-inline--fa{vertical-align:middle}\n"]
|
|
109
109
|
},] }
|
|
110
110
|
];
|
|
111
111
|
DatatableDynamicActionMenuComponent.ctorParameters = () => [
|
|
@@ -40,7 +40,7 @@ DatatableDynamicFilterContainerComponent.decorators = [
|
|
|
40
40
|
selector: 'seam-datatable-dynamic-filter-container',
|
|
41
41
|
template: "<ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\n",
|
|
42
42
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
43
|
-
styles: [":host{display:block}"]
|
|
43
|
+
styles: [":host{display:block}\n"]
|
|
44
44
|
},] }
|
|
45
45
|
];
|
|
46
46
|
DatatableDynamicFilterContainerComponent.ctorParameters = () => [
|
|
@@ -63,7 +63,7 @@ DatatableDynamicComponent.decorators = [
|
|
|
63
63
|
DynamicDatatableRowActionsService
|
|
64
64
|
],
|
|
65
65
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
66
|
-
styles: [":host{display:flex;flex-direction:column}"]
|
|
66
|
+
styles: [":host{display:flex;flex-direction:column}\n"]
|
|
67
67
|
},] }
|
|
68
68
|
];
|
|
69
69
|
DatatableDynamicComponent.ctorParameters = () => [
|
|
@@ -165,7 +165,7 @@ TheSeamFormFieldComponent.decorators = [
|
|
|
165
165
|
{ type: Component, args: [{
|
|
166
166
|
selector: 'seam-form-field',
|
|
167
167
|
template: "<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label *ngIf=\"label || labelTpl\"\n #labelElem\n [attr.id]=\"labelId\"\n [attr.for]=\"contentInput?.id\"\n class=\"control-label {{ labelClass }}\"\n (seamElemResized)=\"_labelElemResized(labelElem)\">\n <ng-container *ngIf=\"labelTpl; else noLabelTpl\">\n <ng-template [ngTemplateOutlet]=\"labelTpl.template\" [ngTemplateOutletContext]=\"{ $implicit: label, label: label, required: contentInput?.required || false }\"></ng-template>\n </ng-container>\n <ng-template #noLabelTpl>\n {{ label }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-template>\n </label>\n <ng-container *ngIf=\"!isPasswordInput\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isPasswordInput\">\n <div class=\"position-relative\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n <seam-password-input-reveal [inputRef]=\"$any(passwordInputElement)\"></seam-password-input-reveal>\n </div>\n </ng-container>\n </div>\n <!-- Need `.d-block` to make errors show without input sibling selector -->\n <ng-container *ngIf=\"contentInput\">\n <seam-form-field-error-list *ngIf=\"fieldErrors$ | async as fieldErrors\"\n [style.paddingLeft]=\"(label || labelTpl) && inline ? _errorPadding : undefined\"\n [control]=\"contentInput.ngControl\"\n [errors]=\"fieldErrors2$ | async\"\n [maxErrors]=\"maxErrors\"\n [numPaddingErrors]=\"numPaddingErrors\"\n class=\"invalid-feedback\">\n </seam-form-field-error-list>\n </ng-container>\n</div>\n\n<ng-template #content><ng-content></ng-content></ng-template>\n",
|
|
168
|
-
styles: [".seam-form-field-inline{display:flex;flex-direction:row}.seam-form-field-inline .control-label{margin-bottom:0;display:flex;flex-direction:column;justify-content:center}"]
|
|
168
|
+
styles: [".seam-form-field-inline{display:flex;flex-direction:row}.seam-form-field-inline .control-label{margin-bottom:0;display:flex;flex-direction:column;justify-content:center}\n"]
|
|
169
169
|
},] }
|
|
170
170
|
];
|
|
171
171
|
TheSeamFormFieldComponent.ctorParameters = () => [
|
|
@@ -12,7 +12,7 @@ FormFieldErrorComponent.decorators = [
|
|
|
12
12
|
{ type: Component, args: [{
|
|
13
13
|
selector: 'seam-form-field-error',
|
|
14
14
|
template: "<em style=\"display: block;\">\n <span *ngIf=\"showValidatorName && validatorName\"\n style=\"font-weight: bold;\">{{ validatorName }}: </span>\n <span class=\"msg-text\">{{ message }}</span>\n</em>\n",
|
|
15
|
-
styles: ["@charset \"UTF-8\";.msg-text:empty:after{content:\"\
|
|
15
|
+
styles: ["@charset \"UTF-8\";.msg-text:empty:after{content:\"\\200b\"}\n"]
|
|
16
16
|
},] }
|
|
17
17
|
];
|
|
18
18
|
FormFieldErrorComponent.ctorParameters = () => [];
|
|
@@ -99,7 +99,7 @@ TheSeamBaseLayoutComponent.decorators = [
|
|
|
99
99
|
providers: [THE_SEAM_BASE_LAYOUT],
|
|
100
100
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
101
101
|
encapsulation: ViewEncapsulation.None,
|
|
102
|
-
styles: ["seam-base-layout{display:flex;flex-direction:column;height:100%;width:100%}seam-base-layout .base-layout-side-bar-nav-content-mobile{position:absolute;top:0;bottom:0;left:0;float:left;z-index:9999}seam-base-layout .base-layout-side-bar-container{flex:0 0 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-side-bar-container .base-layout-side-bar-nav-content{flex:1 1 0}seam-base-layout .base-layout-main-container{flex:1 1 100%;display:flex;flex-direction:row;transform:translateZ(0)}seam-base-layout .base-layout-top-bar-container{flex:0 0 auto}seam-base-layout .base-layout-content-container{flex:1 1 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-content-container .base-layout-content-container-header{flex:0 0 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-inner{flex:1 1 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-footer{flex:0 0 auto}seam-base-layout .base-layout-content-container-header{margin:.25rem}seam-base-layout .btn-baselayout-action{margin:0 0 0 .25rem;color:#212529;background-color:#e9ecef;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;border:none;color:#6c757d}seam-base-layout .btn-baselayout-action:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}seam-base-layout .btn-baselayout-action
|
|
102
|
+
styles: ["seam-base-layout{display:flex;flex-direction:column;height:100%;width:100%}seam-base-layout .base-layout-side-bar-nav-content-mobile{position:absolute;top:0;bottom:0;left:0;float:left;z-index:9999}seam-base-layout .base-layout-side-bar-container{flex:0 0 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-side-bar-container .base-layout-side-bar-nav-content{flex:1 1 0}seam-base-layout .base-layout-main-container{flex:1 1 100%;display:flex;flex-direction:row;transform:translateZ(0)}seam-base-layout .base-layout-top-bar-container{flex:0 0 auto}seam-base-layout .base-layout-content-container{flex:1 1 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-content-container .base-layout-content-container-header{flex:0 0 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-inner{flex:1 1 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-footer{flex:0 0 auto}seam-base-layout .base-layout-content-container-header{margin:.25rem}seam-base-layout .btn-baselayout-action{margin:0 0 0 .25rem;color:#212529;background-color:#e9ecef;border-color:#e9ecef;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;border:none;color:#6c757d}seam-base-layout .btn-baselayout-action:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#212529;background-color:#d3d9df;border-color:#cbd3da;box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action.disabled,seam-base-layout .btn-baselayout-action:disabled{color:#212529;background-color:#e9ecef;border-color:#e9ecef}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle{color:#212529;background-color:#d3d9df;border-color:#c4ccd4}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active:focus,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active:focus,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle:focus{box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action:hover{color:#6c757d}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#6c757d}\n"]
|
|
103
103
|
},] }
|
|
104
104
|
];
|
|
105
105
|
TheSeamBaseLayoutComponent.ctorParameters = () => [
|
|
@@ -150,7 +150,7 @@ DashboardWidgetsComponent.decorators = [
|
|
|
150
150
|
],
|
|
151
151
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
152
152
|
encapsulation: ViewEncapsulation.None,
|
|
153
|
-
styles: ["seam-dashboard-widgets{display:flex;justify-content:center}seam-dashboard-widgets .dashboard-widgets-base{max-width:1410px}seam-dashboard-widgets .dashboard-widgets-list{flex-basis:400px;max-width:500px}seam-dashboard-widgets .dashboard-widgets-list.cdk-drop-list-dragging .dashboard-widgets-list-item:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.dashboard-widgets-list-item.cdk-drag-preview{box-sizing:border-box}.dashboard-widgets-list-item.cdk-drag-preview>div{border-radius:.25rem;box-shadow:0 5px 5px -3px
|
|
153
|
+
styles: ["seam-dashboard-widgets{display:flex;justify-content:center}seam-dashboard-widgets .dashboard-widgets-base{max-width:1410px}seam-dashboard-widgets .dashboard-widgets-list{flex-basis:400px;max-width:500px}seam-dashboard-widgets .dashboard-widgets-list.cdk-drop-list-dragging .dashboard-widgets-list-item:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.dashboard-widgets-list-item.cdk-drag-preview{box-sizing:border-box}.dashboard-widgets-list-item.cdk-drag-preview>div{border-radius:.25rem;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.dashboard-widgets-list-item.cdk-drag-disabled .cdk-drag-handle{cursor:default}.dashboard-widgets-list-item .cdk-drag-handle{cursor:move}.dashboard-widgets-list-item.cdk-drag-placeholder{opacity:0}.dashboard-widgets-list-item.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"]
|
|
154
154
|
},] }
|
|
155
155
|
];
|
|
156
156
|
DashboardWidgetsComponent.ctorParameters = () => [
|
|
@@ -104,7 +104,7 @@ HierarchyRouterOutletComponent.decorators = [
|
|
|
104
104
|
// contentLeave
|
|
105
105
|
],
|
|
106
106
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
107
|
-
styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}"]
|
|
107
|
+
styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}\n"]
|
|
108
108
|
},] }
|
|
109
109
|
];
|
|
110
110
|
HierarchyRouterOutletComponent.ctorParameters = () => [
|
package/esm2015/framework/schema-form-controls/schema-form-input/schema-form-input.component.js
CHANGED
|
@@ -20,7 +20,7 @@ TheSeamSchemaFormInputComponent.decorators = [
|
|
|
20
20
|
selector: 'seam-schema-form-input',
|
|
21
21
|
template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n",
|
|
22
22
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
23
|
-
styles: [":host{display:block}"]
|
|
23
|
+
styles: [":host{display:block}\n"]
|
|
24
24
|
},] }
|
|
25
25
|
];
|
|
26
26
|
TheSeamSchemaFormInputComponent.ctorParameters = () => [
|
package/esm2015/framework/schema-form-controls/schema-form-number/schema-form-number.component.js
CHANGED
|
@@ -26,7 +26,7 @@ TheSeamSchemaFormNumberComponent.decorators = [
|
|
|
26
26
|
selector: 'seam-schema-form-number',
|
|
27
27
|
template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n",
|
|
28
28
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
29
|
-
styles: [":host{display:block}"]
|
|
29
|
+
styles: [":host{display:block}\n"]
|
|
30
30
|
},] }
|
|
31
31
|
];
|
|
32
32
|
TheSeamSchemaFormNumberComponent.ctorParameters = () => [
|
package/esm2015/framework/schema-form-controls/schema-form-select/schema-form-select.component.js
CHANGED
|
@@ -22,7 +22,7 @@ TheSeamSchemaFormSelectComponent.decorators = [
|
|
|
22
22
|
selector: 'seam-schema-form-select',
|
|
23
23
|
template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n",
|
|
24
24
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
25
|
-
styles: [":host{display:block}"]
|
|
25
|
+
styles: [":host{display:block}\n"]
|
|
26
26
|
},] }
|
|
27
27
|
];
|
|
28
28
|
TheSeamSchemaFormSelectComponent.ctorParameters = () => [
|
|
@@ -128,7 +128,7 @@ TheSeamSchemaFormSubmitSplitComponent.decorators = [
|
|
|
128
128
|
{ type: Component, args: [{
|
|
129
129
|
selector: 'seam-schema-form-submit-split',
|
|
130
130
|
template: "<div\n [class]=\"options?.htmlClass || ''\">\n <div [class.btn-group]=\"_dropdownObj\">\n <button seamButton theme=\"primary\" type=\"submit\"\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.readonly]=\"options?.readonly ? 'readonly' : null\"\n [attr.required]=\"options?.required\"\n [class]=\"'btn btn-primary ' + (options?.fieldHtmlClass || '')\"\n [disabled]=\"controlDisabled\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [value]=\"controlValue\"\n (click)=\"updateValue($event)\">\n {{ _buttonLabel }}\n <span *ngIf=\"_selectedItem\">\n [{{ _selectedItem.name }}]\n </span>\n </button>\n <ng-container *ngIf=\"_dropdownObj\">\n <button\n [seamMenuToggle]=\"menu\" seamButton theme=\"primary\"\n class=\"dropdown-toggle dropdown-toggle-split\"\n [disabled]=\"_dropdownDisabled\">\n <span class=\"sr-only\">Toggle Dropdown</span>\n </button>\n <seam-menu #menu>\n <ng-container *ngFor=\"let item of _selectList\">\n <button seamMenuItem\n [class.active]=\"item.checked\"\n (click)=\"_setDropdownValue(item.value)\">\n {{ item.name }}\n </button>\n </ng-container>\n </seam-menu>\n </ng-container>\n </div>\n</div>\n",
|
|
131
|
-
styles: [":host{display:block}"]
|
|
131
|
+
styles: [":host{display:block}\n"]
|
|
132
132
|
},] }
|
|
133
133
|
];
|
|
134
134
|
TheSeamSchemaFormSubmitSplitComponent.ctorParameters = () => [
|