@theseam/ui-common 0.4.28 → 0.4.30
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/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
- package/datatable/datatable/datatable.component.d.ts +61 -9
- package/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.d.ts +25 -0
- package/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.d.ts +18 -0
- package/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.d.ts +16 -0
- package/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.d.ts +15 -0
- package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -2
- package/datatable/datatable.module.d.ts +29 -20
- package/datatable/directives/datatable-column-filter-tpl.directive.d.ts +8 -0
- package/datatable/directives/datatable-column-filter.directive.d.ts +10 -0
- package/datatable/models/action-item-column-position.d.ts +13 -0
- package/datatable/models/columns-data-filter.d.ts +57 -0
- package/datatable/models/columns-data-filters/models.d.ts +65 -0
- package/datatable/models/columns-data-filters/search-date.columns-data-filter.d.ts +23 -0
- package/datatable/models/columns-data-filters/search-numeric.columns-data-filter.d.ts +22 -0
- package/datatable/models/columns-data-filters/search-text.columns-data-filter.d.ts +21 -0
- package/datatable/models/columns-data-filters/utils.d.ts +15 -0
- package/datatable/models/datatable-config.d.ts +97 -0
- package/datatable/models/table-column.d.ts +22 -1
- package/datatable/public-api.d.ts +14 -0
- package/datatable/services/columns-filters.service.d.ts +29 -0
- package/datatable/services/columns-manager.service.d.ts +7 -0
- package/datatable/utils/create-action-menu-column.d.ts +1 -1
- package/esm2020/asset-reader/asset-reader-helper.service.mjs +4 -4
- package/esm2020/asset-reader/asset-reader.module.mjs +5 -5
- package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +4 -4
- package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +5 -5
- package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
- package/esm2020/breadcrumbs/breadcrumbs.service.mjs +4 -4
- package/esm2020/buttons/badge-button/badge-button.component.mjs +7 -7
- package/esm2020/buttons/button/button.component.mjs +10 -10
- package/esm2020/buttons/buttons.module.mjs +5 -5
- package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
- package/esm2020/buttons/toggle-button/toggle-button.component.mjs +4 -4
- package/esm2020/card/card-action/card-action.component.mjs +4 -4
- package/esm2020/card/card-body/card-body.component.mjs +4 -4
- package/esm2020/card/card-footer/card-footer.component.mjs +4 -4
- package/esm2020/card/card-header/card-header.component.mjs +4 -4
- package/esm2020/card/card.component.mjs +4 -4
- package/esm2020/card/card.module.mjs +5 -5
- package/esm2020/carousel/carousel-slide.directive.mjs +4 -4
- package/esm2020/carousel/carousel.component.mjs +4 -4
- package/esm2020/carousel/carousel.module.mjs +5 -5
- package/esm2020/checkbox/checkbox.component.mjs +4 -4
- package/esm2020/checkbox/checkbox.module.mjs +5 -5
- package/esm2020/confirm-dialog/confirm-click.directive.mjs +4 -4
- package/esm2020/confirm-dialog/confirm-dialog.component.mjs +4 -4
- package/esm2020/confirm-dialog/confirm-dialog.module.mjs +5 -5
- package/esm2020/confirm-dialog/confirm-dialog.service.mjs +4 -4
- package/esm2020/data-exporter/data-exporter.module.mjs +5 -5
- package/esm2020/data-exporter/exporters/csv-exporter.mjs +4 -4
- package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +4 -4
- package/esm2020/data-filters/data-filters.module.mjs +5 -5
- package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +4 -4
- package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +4 -4
- package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +4 -4
- package/esm2020/datatable/datatable/datatable.component.mjs +241 -32
- package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +5 -5
- package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +4 -4
- package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -4
- package/esm2020/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.mjs +55 -0
- package/esm2020/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.mjs +54 -0
- package/esm2020/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.mjs +48 -0
- package/esm2020/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.mjs +44 -0
- package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +4 -4
- package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -4
- package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +4 -4
- package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +4 -4
- package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -4
- package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +4 -4
- package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +4 -4
- package/esm2020/datatable/datatable.module.mjs +53 -11
- package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-column-filter-tpl.directive.mjs +16 -0
- package/esm2020/datatable/directives/datatable-column-filter.directive.mjs +26 -0
- package/esm2020/datatable/directives/datatable-filter.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +4 -4
- package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
- package/esm2020/datatable/models/columns-data-filter.mjs +10 -0
- package/esm2020/datatable/models/columns-data-filters/models.mjs +74 -0
- package/esm2020/datatable/models/columns-data-filters/search-date.columns-data-filter.mjs +113 -0
- package/esm2020/datatable/models/columns-data-filters/search-numeric.columns-data-filter.mjs +104 -0
- package/esm2020/datatable/models/columns-data-filters/search-text.columns-data-filter.mjs +86 -0
- package/esm2020/datatable/models/columns-data-filters/utils.mjs +28 -0
- package/esm2020/datatable/models/datatable-config.mjs +3 -0
- package/esm2020/datatable/models/table-column.mjs +1 -1
- package/esm2020/datatable/public-api.mjs +15 -1
- package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
- package/esm2020/datatable/services/columns-filters.service.mjs +109 -0
- package/esm2020/datatable/services/columns-manager.service.mjs +30 -5
- package/esm2020/datatable/services/datatable-column-changes.service.mjs +4 -4
- package/esm2020/datatable/services/datatable-preferences.service.mjs +4 -4
- package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +4 -4
- package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
- package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +4 -4
- package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
- package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +4 -4
- package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +5 -5
- package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +5 -5
- package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +4 -4
- package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +4 -4
- package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +4 -4
- package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +4 -4
- package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +4 -4
- package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
- package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
- package/esm2020/dynamic/dynamic-value-helper.service.mjs +4 -4
- package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
- package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +4 -4
- package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +5 -5
- package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +4 -4
- package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +4 -4
- package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
- package/esm2020/form-field/form-field-error.directive.mjs +4 -4
- package/esm2020/form-field/form-field-help-text.directive.mjs +4 -4
- package/esm2020/form-field/form-field-label-tpl.directive.mjs +4 -4
- package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
- package/esm2020/form-field/form-field.component.mjs +4 -4
- package/esm2020/form-field/form-field.module.mjs +5 -5
- package/esm2020/form-field/input.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +4 -4
- package/esm2020/form-field-error/form-field-error.module.mjs +5 -5
- package/esm2020/framework/base-layout/base-layout.component.mjs +16 -6
- package/esm2020/framework/base-layout/base-layout.module.mjs +10 -5
- package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +22 -6
- package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
- package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +4 -4
- package/esm2020/framework/base-layout/index.mjs +2 -1
- package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard.module.mjs +5 -5
- package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
- package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +4 -4
- package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +4 -4
- package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
- package/esm2020/framework/nav/index.mjs +6 -0
- package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
- package/esm2020/framework/nav/nav-utils.mjs +107 -0
- package/esm2020/framework/nav/nav.models.mjs +2 -0
- package/esm2020/framework/nav/nav.module.mjs +67 -0
- package/esm2020/framework/nav/nav.service.mjs +204 -0
- package/esm2020/framework/public-api.mjs +2 -1
- package/esm2020/framework/schema-form/schema-form-framework.component.mjs +4 -4
- package/esm2020/framework/schema-form/schema-form-framework.mjs +4 -4
- package/esm2020/framework/schema-form/schema-form.module.mjs +5 -5
- package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.mjs +4 -4
- package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +29 -68
- package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +14 -7
- package/esm2020/framework/side-nav/side-nav.component.mjs +117 -39
- package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
- package/esm2020/framework/side-nav/side-nav.module.mjs +11 -41
- package/esm2020/framework/side-nav/side-nav.service.mjs +4 -4
- package/esm2020/framework/top-bar/index.mjs +3 -1
- package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
- package/esm2020/framework/top-bar/top-bar-item.directive.mjs +12 -6
- package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +4 -4
- package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +8 -6
- package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +4 -4
- package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
- package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +4 -4
- package/esm2020/framework/top-bar/top-bar.component.mjs +57 -13
- package/esm2020/framework/top-bar/top-bar.module.mjs +19 -9
- package/esm2020/google-maps/google-maps/google-maps.component.mjs +4 -4
- package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +4 -4
- package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +4 -4
- package/esm2020/google-maps/google-maps-controls.service.mjs +4 -4
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +5 -5
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +4 -4
- package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +4 -4
- package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +4 -4
- package/esm2020/google-maps/google-maps.module.mjs +5 -5
- package/esm2020/google-maps/google-maps.service.mjs +4 -4
- package/esm2020/google-maps/map-control.component.mjs +4 -4
- package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
- package/esm2020/google-maps/map-value-manager.service.mjs +4 -4
- package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
- package/esm2020/graphql/datatable/index.mjs +4 -1
- package/esm2020/graphql/datatable/map-filter-states.mjs +1 -1
- package/esm2020/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.mjs +139 -0
- package/esm2020/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.mjs +75 -0
- package/esm2020/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.mjs +44 -0
- package/esm2020/icon/icon/icon.component.mjs +4 -4
- package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -4
- package/esm2020/icon/icon-notification/icon-notification.component.mjs +4 -4
- package/esm2020/icon/icon.module.mjs +5 -5
- package/esm2020/layout/layout.module.mjs +5 -5
- package/esm2020/layout/layout.service.mjs +15 -5
- package/esm2020/loading/loading/loading.component.mjs +4 -4
- package/esm2020/loading/loading-overlay.service.mjs +4 -4
- package/esm2020/loading/loading.module.mjs +5 -5
- package/esm2020/menu/menu-divider.component.mjs +4 -4
- package/esm2020/menu/menu-footer/menu-footer.component.mjs +4 -4
- package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
- package/esm2020/menu/menu-header/menu-header.component.mjs +4 -4
- package/esm2020/menu/menu-item.component.mjs +4 -4
- package/esm2020/menu/menu-toggle.directive.mjs +9 -4
- package/esm2020/menu/menu.component.mjs +4 -4
- package/esm2020/menu/menu.module.mjs +5 -5
- package/esm2020/modal/directives/modal-close.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-title.directive.mjs +4 -4
- package/esm2020/modal/directives/modal.directive.mjs +4 -4
- package/esm2020/modal/modal/modal.component.mjs +4 -4
- package/esm2020/modal/modal-body/modal-body.component.mjs +4 -4
- package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
- package/esm2020/modal/modal-footer/modal-footer.component.mjs +4 -4
- package/esm2020/modal/modal-header/modal-header.component.mjs +4 -4
- package/esm2020/modal/modal.module.mjs +5 -5
- package/esm2020/modal/modal.service.mjs +4 -4
- package/esm2020/modal/route-modal/route-modal.component.mjs +4 -4
- package/esm2020/navigation-reload/navigation-reload.service.mjs +5 -5
- package/esm2020/popover/popover/popover.component.mjs +9 -5
- package/esm2020/popover/popover.directive.mjs +8 -4
- package/esm2020/popover/popover.module.mjs +5 -5
- package/esm2020/progress/progress-circle/progress-circle.component.mjs +4 -4
- package/esm2020/progress/progress.module.mjs +5 -5
- package/esm2020/rich-text/rich-text/rich-text.component.mjs +4 -4
- package/esm2020/rich-text/rich-text.module.mjs +5 -5
- package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -4
- package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
- package/esm2020/scrollbar/scrollbar.module.mjs +5 -5
- package/esm2020/services/asset-loader.service.mjs +4 -4
- package/esm2020/services/font-loader.service.mjs +4 -4
- package/esm2020/services/preferences/preferences-manager.service.mjs +4 -4
- package/esm2020/services/router-helpers.service.mjs +4 -4
- package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +4 -4
- package/esm2020/shared/directives/auto-focus.directive.mjs +4 -4
- package/esm2020/shared/directives/click-outside.directive.mjs +4 -4
- package/esm2020/shared/directives/disable-control.directive.mjs +4 -4
- package/esm2020/shared/directives/elem-resized.directive.mjs +4 -4
- package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
- package/esm2020/shared/directives/hover-class.directive.mjs +4 -4
- package/esm2020/shared/directives/ng-select-extra.directive.mjs +4 -4
- package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +4 -4
- package/esm2020/shared/pipes/mask-chars.pipe.mjs +4 -4
- package/esm2020/shared/pipes/truncate.pipe.mjs +4 -4
- package/esm2020/shared/shared.module.mjs +5 -5
- package/esm2020/storage/local-storage.service.mjs +4 -4
- package/esm2020/story-helpers/initial-route.service.mjs +4 -4
- package/esm2020/story-helpers/story-empty-with-route.component.mjs +4 -4
- package/esm2020/story-helpers/story-empty.component.mjs +4 -4
- package/esm2020/story-helpers/story-helper-components.module.mjs +5 -5
- package/esm2020/story-helpers/story-initial-route.mjs +5 -5
- package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
- package/esm2020/story-helpers/story-preferences-accessor.service.mjs +4 -4
- package/esm2020/story-helpers/story-toastr.service.mjs +4 -4
- package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +4 -4
- package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +4 -4
- package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +4 -4
- package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +4 -4
- package/esm2020/tabbed/tabbed.component.mjs +4 -4
- package/esm2020/tabbed/tabbed.module.mjs +5 -5
- package/esm2020/tabbed/tabbed.service.mjs +4 -4
- package/esm2020/table/public-api.mjs +4 -1
- package/esm2020/table/table/table.component.mjs +92 -7
- package/esm2020/table/table-cell-tpl.directive.mjs +17 -0
- package/esm2020/table/table-column-header-tpl.directive.mjs +17 -0
- package/esm2020/table/table-column.component.mjs +68 -0
- package/esm2020/table/table.module.mjs +25 -9
- package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +4 -4
- package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +4 -4
- package/esm2020/table-cell-type/table-cell-type.module.mjs +5 -5
- package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +7 -5
- package/esm2020/table-cell-types/table-cell-types.module.mjs +5 -5
- package/esm2020/tel-input/phone-number.pipe.mjs +4 -4
- package/esm2020/tel-input/tel-input/tel-input.component.mjs +4 -4
- package/esm2020/tel-input/tel-input.directive.mjs +4 -4
- package/esm2020/tel-input/tel-input.module.mjs +5 -5
- package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +4 -4
- package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -4
- package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +4 -4
- package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +4 -4
- package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +4 -4
- package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +4 -4
- package/esm2020/tiled-select/tiled-select.module.mjs +5 -5
- package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit.component.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit.module.mjs +5 -5
- package/esm2020/toggle-group/toggle-group-option.directive.mjs +4 -4
- package/esm2020/toggle-group/toggle-group.directive.mjs +4 -4
- package/esm2020/toggle-group/toggle-group.module.mjs +5 -5
- package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +5 -5
- package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
- package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
- package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
- package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
- package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
- package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
- package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +4 -4
- package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
- package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +5 -5
- package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +5 -5
- package/esm2020/widget/directives/widget-drag-handle.directive.mjs +4 -4
- package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +4 -4
- package/esm2020/widget/directives/widget-title-tpl.directive.mjs +4 -4
- package/esm2020/widget/preferences/widget-preferences.service.mjs +4 -4
- package/esm2020/widget/widget/widget.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -16
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +7 -7
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +5 -5
- package/esm2020/widget/widget-footer/widget-footer.component.mjs +4 -4
- package/esm2020/widget/widget-registry.service.mjs +4 -4
- package/esm2020/widget/widget.module.mjs +5 -5
- package/fesm2015/theseam-ui-common-asset-reader.mjs +10 -10
- package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs +11 -11
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-buttons.mjs +25 -25
- package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-card.mjs +19 -19
- package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-carousel.mjs +10 -10
- package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-checkbox.mjs +7 -7
- package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-confirm-dialog.mjs +13 -13
- package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
- package/fesm2015/theseam-ui-common-data-exporter.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-data-filters.mjs +13 -13
- package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +26 -26
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable.mjs +1112 -139
- package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +7 -7
- package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-dynamic.mjs +21 -21
- package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-footer-bar.mjs +7 -7
- package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field-error.mjs +16 -16
- package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field.mjs +22 -22
- package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-framework.mjs +1026 -277
- package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-google-maps.mjs +41 -41
- package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-graphql.mjs +257 -4
- package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-icon.mjs +13 -13
- package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-layout.mjs +18 -9
- package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-loading.mjs +10 -10
- package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-menu.mjs +30 -25
- package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-modal.mjs +43 -43
- package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-navigation-reload.mjs +4 -4
- package/fesm2015/theseam-ui-common-navigation-reload.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-popover.mjs +19 -11
- package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-progress.mjs +7 -7
- package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-rich-text.mjs +7 -7
- package/fesm2015/theseam-ui-common-rich-text.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -10
- package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-services.mjs +12 -12
- package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-shared.mjs +37 -37
- package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-storage.mjs +3 -3
- package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-story-helpers.mjs +26 -26
- package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tabbed.mjs +22 -22
- package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-type.mjs +10 -10
- package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-types.mjs +34 -32
- package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table.mjs +207 -15
- package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tel-input.mjs +13 -13
- package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tiled-select.mjs +22 -22
- package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-edit.mjs +16 -16
- package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-group.mjs +10 -10
- package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +3 -3
- package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-viewers.mjs +20 -20
- package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-widget.mjs +135 -135
- package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-asset-reader.mjs +10 -10
- package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs +11 -11
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-buttons.mjs +25 -25
- package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-card.mjs +19 -19
- package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-carousel.mjs +10 -10
- package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-checkbox.mjs +7 -7
- package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-confirm-dialog.mjs +13 -13
- package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
- package/fesm2020/theseam-ui-common-data-exporter.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-data-filters.mjs +13 -13
- package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +26 -26
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable.mjs +1096 -139
- package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +7 -7
- package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-dynamic.mjs +21 -21
- package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-footer-bar.mjs +7 -7
- package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field-error.mjs +16 -16
- package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field.mjs +22 -22
- package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-framework.mjs +1028 -277
- package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-google-maps.mjs +41 -41
- package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-graphql.mjs +257 -4
- package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-icon.mjs +13 -13
- package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-layout.mjs +18 -9
- package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-loading.mjs +10 -10
- package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-menu.mjs +30 -25
- package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-modal.mjs +43 -43
- package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-navigation-reload.mjs +4 -4
- package/fesm2020/theseam-ui-common-navigation-reload.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-popover.mjs +19 -11
- package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-progress.mjs +7 -7
- package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-rich-text.mjs +7 -7
- package/fesm2020/theseam-ui-common-rich-text.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -10
- package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-services.mjs +12 -12
- package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-shared.mjs +37 -37
- package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-storage.mjs +3 -3
- package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-story-helpers.mjs +26 -26
- package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tabbed.mjs +22 -22
- package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-type.mjs +10 -10
- package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-types.mjs +34 -32
- package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table.mjs +205 -15
- package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tel-input.mjs +13 -13
- package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tiled-select.mjs +22 -22
- package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-toggle-edit.mjs +16 -16
- package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-toggle-group.mjs +10 -10
- package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
- package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +3 -3
- package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-viewers.mjs +20 -20
- package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-widget.mjs +135 -135
- package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
- package/framework/base-layout/base-layout.component.d.ts +4 -2
- package/framework/base-layout/base-layout.component.scss +18 -10
- package/framework/base-layout/base-layout.module.d.ts +11 -10
- package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
- package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
- package/framework/base-layout/index.d.ts +1 -0
- package/framework/base-layout/styles/_variables.scss +21 -0
- package/framework/nav/_nav-theme.scss +4 -0
- package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
- package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
- package/framework/nav/index.d.ts +5 -0
- package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
- package/framework/nav/nav-item/nav-item.component.scss +203 -0
- package/framework/nav/nav-utils.d.ts +20 -0
- package/framework/nav/nav.models.d.ts +77 -0
- package/framework/nav/nav.module.d.ts +17 -0
- package/framework/nav/nav.service.d.ts +27 -0
- package/framework/nav/styles/_themes/light/_variables.scss +56 -0
- package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
- package/framework/nav/styles/_utilities.scss +3 -0
- package/framework/nav/styles/_variables.scss +2 -0
- package/framework/public-api.d.ts +1 -0
- package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
- package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
- package/framework/side-nav/side-nav.component.d.ts +13 -1
- package/framework/side-nav/side-nav.component.scss +0 -1
- package/framework/side-nav/side-nav.models.d.ts +7 -1
- package/framework/side-nav/side-nav.module.d.ts +1 -9
- package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
- package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
- package/framework/top-bar/index.d.ts +2 -0
- package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
- package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
- package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
- package/framework/top-bar/top-bar.component.d.ts +25 -3
- package/framework/top-bar/top-bar.component.scss +7 -2
- package/framework/top-bar/top-bar.module.d.ts +10 -8
- package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
- package/graphql/datatable/index.d.ts +3 -0
- package/graphql/datatable/map-filter-states.d.ts +2 -2
- package/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.d.ts +4 -0
- package/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.d.ts +4 -0
- package/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.d.ts +4 -0
- package/layout/layout.service.d.ts +9 -1
- package/menu/menu-toggle.directive.d.ts +2 -1
- package/package.json +3 -3
- package/popover/popover/popover.component.d.ts +4 -1
- package/popover/popover.directive.d.ts +2 -1
- package/styles/vendor/ngx-datatable/_ngx-datatable.scss +83 -14
- package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +38 -3
- package/table/public-api.d.ts +3 -0
- package/table/table/table.component.d.ts +21 -3
- package/table/table-cell-tpl.directive.d.ts +7 -0
- package/table/table-column-header-tpl.directive.d.ts +7 -0
- package/table/table-column.component.d.ts +24 -0
- package/table/table.module.d.ts +4 -1
|
@@ -4,56 +4,59 @@ import { coerceArray } from '@angular/cdk/coercion';
|
|
|
4
4
|
import { DataSource, isDataSource } from '@angular/cdk/collections';
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
6
|
import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, ViewChild, ContentChildren, Directive, Injectable, TemplateRef, ContentChild, Self, Inject, forwardRef, InjectionToken, isDevMode, Optional, ElementRef, HostListener, HostBinding, NgModule } from '@angular/core';
|
|
7
|
-
import { Subject, BehaviorSubject, of, defer, combineLatest, EMPTY, Subscription, from, isObservable } from 'rxjs';
|
|
7
|
+
import { Subject, BehaviorSubject, of, defer, combineLatest, EMPTY, startWith as startWith$1, map as map$1, switchMap as switchMap$1, debounceTime, tap as tap$1, Subscription, from, isObservable } from 'rxjs';
|
|
8
8
|
import { switchMap, map, startWith, auditTime, shareReplay, take, tap, distinctUntilChanged, takeUntil, concatMap, catchError } from 'rxjs/operators';
|
|
9
|
-
import { faEllipsisH, faChevronDown, faChevronRight, faSpinner, faColumns, faFileDownload } from '@fortawesome/free-solid-svg-icons';
|
|
10
|
-
import * as
|
|
9
|
+
import { faEllipsisH, faChevronDown, faChevronRight, faSpinner, faFilter, faColumns, faFileDownload } from '@fortawesome/free-solid-svg-icons';
|
|
10
|
+
import * as i6 from '@marklb/ngx-datatable';
|
|
11
11
|
import { camelCase, setColumnDefaults as setColumnDefaults$1, translateTemplates, SelectionType, SortType, ColumnMode, DatatableComponent as DatatableComponent$1, DatatableRowDetailDirective, NgxDatatableModule, ScrollbarHelper } from '@marklb/ngx-datatable';
|
|
12
12
|
import { InputBoolean, InputNumber } from '@theseam/ui-common/core';
|
|
13
|
-
import { THESEAM_DATA_FILTER, THESEAM_DATA_FILTER_CONTAINER, composeDataFilterStates, composeDataFilters } from '@theseam/ui-common/data-filters';
|
|
14
|
-
import { notNullOrUndefined, hasProperty, arrayMoveMutable, waitOnConditionAsync, observeControlValue } from '@theseam/ui-common/utils';
|
|
15
|
-
import * as i4
|
|
13
|
+
import { THESEAM_DATA_FILTER, THESEAM_DATA_FILTER_CONTAINER, composeDataFilterStates, composeDataFilters, TheSeamDataFiltersModule } from '@theseam/ui-common/data-filters';
|
|
14
|
+
import { notNullOrUndefined, hasProperty, arrayMoveMutable, isNullOrUndefined, isNullOrUndefinedOrEmpty, notNullOrUndefinedOrEmpty, waitOnConditionAsync, observeControlValue } from '@theseam/ui-common/utils';
|
|
15
|
+
import * as i4 from '@theseam/ui-common/menu';
|
|
16
16
|
import { MenuComponent, TheSeamMenuModule } from '@theseam/ui-common/menu';
|
|
17
17
|
import * as i1 from '@theseam/ui-common/confirm-dialog';
|
|
18
18
|
import { TheSeamConfirmDialogModule } from '@theseam/ui-common/confirm-dialog';
|
|
19
19
|
import * as i2 from '@angular/router';
|
|
20
20
|
import { RouterModule } from '@angular/router';
|
|
21
|
-
import * as
|
|
21
|
+
import * as i2$1 from '@angular/common';
|
|
22
22
|
import { CommonModule } from '@angular/common';
|
|
23
23
|
import * as i5 from '@theseam/ui-common/icon';
|
|
24
24
|
import { TheSeamIconModule } from '@theseam/ui-common/icon';
|
|
25
|
+
import * as i4$1 from '@angular/forms';
|
|
26
|
+
import { FormGroup, FormControl, ControlContainer, FormGroupDirective, UntypedFormControl, ReactiveFormsModule } from '@angular/forms';
|
|
25
27
|
import * as i1$1 from '@theseam/ui-common/services';
|
|
26
|
-
import * as
|
|
28
|
+
import * as i7 from '@fortawesome/angular-fontawesome';
|
|
27
29
|
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
|
|
28
|
-
import * as
|
|
30
|
+
import * as i2$2 from '@theseam/ui-common/shared';
|
|
29
31
|
import { TheSeamSharedModule } from '@theseam/ui-common/shared';
|
|
30
|
-
import * as
|
|
32
|
+
import * as i3$1 from '@theseam/ui-common/buttons';
|
|
33
|
+
import { TheSeamButtonsModule } from '@theseam/ui-common/buttons';
|
|
34
|
+
import * as i11 from '@theseam/ui-common/popover';
|
|
35
|
+
import { TheSeamPopoverModule } from '@theseam/ui-common/popover';
|
|
36
|
+
import * as i12 from '@theseam/ui-common/table-cell-type';
|
|
31
37
|
import { TheSeamTableCellTypeModule } from '@theseam/ui-common/table-cell-type';
|
|
32
|
-
import * as
|
|
33
|
-
import {
|
|
38
|
+
import * as i3 from '@theseam/ui-common/form-field';
|
|
39
|
+
import { TheSeamFormFieldModule } from '@theseam/ui-common/form-field';
|
|
40
|
+
import * as i5$1 from '@ng-select/ng-select';
|
|
41
|
+
import { NgSelectModule } from '@ng-select/ng-select';
|
|
34
42
|
import * as i1$2 from '@theseam/ui-common/scrollbar';
|
|
35
43
|
import * as i5$2 from '@theseam/ui-common/checkbox';
|
|
36
44
|
import { TheSeamCheckboxComponent } from '@theseam/ui-common/checkbox';
|
|
37
|
-
import * as
|
|
38
|
-
import { TheSeamFormFieldModule } from '@theseam/ui-common/form-field';
|
|
39
|
-
import * as i4$2 from '@theseam/ui-common/popover';
|
|
40
|
-
import { TheSeamPopoverModule } from '@theseam/ui-common/popover';
|
|
41
|
-
import * as i3 from '@theseam/ui-common/dynamic';
|
|
45
|
+
import * as i3$2 from '@theseam/ui-common/dynamic';
|
|
42
46
|
import { THESEAM_DYNAMIC_DATA } from '@theseam/ui-common/dynamic';
|
|
43
47
|
import * as i1$3 from 'ngx-toastr';
|
|
44
48
|
import { ToastrModule } from 'ngx-toastr';
|
|
45
|
-
import * as i2$
|
|
49
|
+
import * as i2$3 from '@theseam/ui-common/loading';
|
|
46
50
|
import { TheSeamLoadingModule } from '@theseam/ui-common/loading';
|
|
47
|
-
import * as i7$2 from '@theseam/ui-common/buttons';
|
|
48
|
-
import { TheSeamButtonsModule } from '@theseam/ui-common/buttons';
|
|
49
51
|
import * as i1$4 from '@theseam/ui-common/modal';
|
|
50
|
-
import * as i2$
|
|
51
|
-
import * as i3$
|
|
52
|
+
import * as i2$4 from '@theseam/ui-common/dynamic-component-loader';
|
|
53
|
+
import * as i3$3 from '@angular/common/http';
|
|
52
54
|
import { ESCAPE } from '@angular/cdk/keycodes';
|
|
53
55
|
import { TemplatePortal, PortalModule } from '@angular/cdk/portal';
|
|
54
56
|
import * as i1$5 from '@angular/cdk/overlay';
|
|
55
57
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
56
58
|
import { A11yModule } from '@angular/cdk/a11y';
|
|
59
|
+
import { TheSeamToggleGroupModule } from '@theseam/ui-common/toggle-group';
|
|
57
60
|
|
|
58
61
|
class DatatableActionMenuItemComponent {
|
|
59
62
|
constructor() {
|
|
@@ -61,9 +64,9 @@ class DatatableActionMenuItemComponent {
|
|
|
61
64
|
this.click = new EventEmitter();
|
|
62
65
|
}
|
|
63
66
|
}
|
|
64
|
-
DatatableActionMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
65
|
-
DatatableActionMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
66
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
67
|
+
DatatableActionMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
68
|
+
DatatableActionMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableActionMenuItemComponent, selector: "seam-datatable-action-menu-item", inputs: { label: "label", href: ["attr.href", "href"], target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", preserveFragment: "preserveFragment", skipLocationChange: "skipLocationChange", replaceUrl: "replaceUrl", state: "state", routerLink: "routerLink", confirmDialog: "confirmDialog", disabled: "disabled", subMenu: "subMenu" }, outputs: { click: "click" }, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuItemComponent, decorators: [{
|
|
67
70
|
type: Component,
|
|
68
71
|
args: [{
|
|
69
72
|
selector: 'seam-datatable-action-menu-item',
|
|
@@ -185,14 +188,14 @@ class DatatableActionMenuComponent {
|
|
|
185
188
|
}
|
|
186
189
|
}
|
|
187
190
|
}
|
|
188
|
-
DatatableActionMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
189
|
-
DatatableActionMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
191
|
+
DatatableActionMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuComponent, deps: [{ token: i1.SeamConfirmDialogService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
192
|
+
DatatableActionMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableActionMenuComponent, selector: "seam-datatable-action-menu", inputs: { isSubMenu: "isSubMenu" }, queries: [{ propertyName: "items", predicate: DatatableActionMenuItemComponent }], viewQueries: [{ propertyName: "menu", first: true, predicate: MenuComponent, descendants: true, static: true }], exportAs: ["seamDatatableActionMenu"], ngImport: i0, 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 item of items\">\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 [disabled]=\"item.disabled\"\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 [disabled]=\"item.disabled\"\n [queryParams]=\"item.queryParams\"\n [fragment]=\"$any(item.fragment)\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"$any(item.preserveFragment)\"\n [skipLocationChange]=\"$any(item.skipLocationChange)\"\n [replaceUrl]=\"$any(item.replaceUrl)\"\n [state]=\"$any(item.state)\"\n [routerLink]=\"item.routerLink\"\n [target]=\"$any(item.target)\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </a>\n </ng-template>\n </ng-container>\n <ng-template #noRouterLink>\n <ng-container *ngIf=\"!!item.subMenu; else noSubMenu\">\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [disabled]=\"item.disabled\"\n [seamMenuToggle]=\"item.subMenu.menu\"\n [seamMenuTogglePositionsOffsetY]=\"-3\">\n {{ item.label }}\n </button>\n </ng-container>\n <ng-template #noSubMenu>\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [disabled]=\"item.disabled\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</seam-menu>\n\n<ng-container *ngIf=\"!isSubMenu && items?.length\">\n <button type=\"button\" class=\"datatable-action-button btn\"\n [seamMenuToggle]=\"menu\"\n [positions]=\"_actionMenuPositions || []\"\n title=\"Row Actions\">\n <seam-icon [icon]=\"faEllipsisH\"></seam-icon>\n </button>\n</ng-container>\n", styles: [":host{position:relative;display:flex;align-items:center;justify-content:center;height:100%}.datatable-action-button::ng-deep .svg-inline--fa{vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.MenuComponent, selector: "seam-menu", inputs: ["menuClass", "baseWidth", "animationType"], outputs: ["closed"], exportAs: ["seamMenu"] }, { kind: "directive", type: i4.MenuToggleDirective, selector: "[seamMenuToggle]", inputs: ["seamMenuToggle", "positions", "seamMenuTogglePositionsOffsetY"], outputs: ["menuToggle", "menuOpened", "menuClosed"], exportAs: ["seamMenuToggle"] }, { kind: "component", type: i4.MenuItemComponent, selector: "[seamMenuItem]", inputs: ["disabled", "role", "icon", "iconClass", "sublevelIcon", "subLevelIconClass", "badgeText", "badgeTheme"], exportAs: ["seamMenuItem"] }, { kind: "component", type: i5.IconComponent, selector: "seam-icon", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "defaultIcon", "iconType"] }] });
|
|
190
193
|
__decorate([
|
|
191
194
|
InputBoolean()
|
|
192
195
|
], DatatableActionMenuComponent.prototype, "isSubMenu", void 0);
|
|
193
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
196
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuComponent, decorators: [{
|
|
194
197
|
type: Component,
|
|
195
|
-
args: [{ selector: 'seam-datatable-action-menu', exportAs: 'seamDatatableActionMenu', 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 item of items\">\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 [disabled]=\"item.disabled\"\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 [disabled]=\"item.disabled\"\n [queryParams]=\"item.queryParams\"\n [fragment]=\"$any(item.fragment)\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"$any(item.preserveFragment)\"\n [skipLocationChange]=\"$any(item.skipLocationChange)\"\n [replaceUrl]=\"$any(item.replaceUrl)\"\n [state]=\"$any(item.state)\"\n [routerLink]=\"item.routerLink\"\n [target]=\"$any(item.target)\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </a>\n </ng-template>\n </ng-container>\n <ng-template #noRouterLink>\n <ng-container *ngIf=\"!!item.subMenu; else noSubMenu\">\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [disabled]=\"item.disabled\"\n [seamMenuToggle]=\"item.subMenu.menu\"\n [seamMenuTogglePositionsOffsetY]=\"-3\">\n {{ item.label }}\n </button>\n </ng-container>\n <ng-template #noSubMenu>\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [disabled]=\"item.disabled\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</seam-menu>\n\n<ng-container *ngIf=\"!isSubMenu && items?.length\">\n <button type=\"button\" class=\"datatable-action-button btn\"\n [seamMenuToggle]=\"menu\"\n [positions]=\"_actionMenuPositions || []\"\n title=\"Row Actions\">\n <seam-icon [icon]=\"faEllipsisH\"></seam-icon>\n </button>\n</ng-container>\n", styles: [":host{
|
|
198
|
+
args: [{ selector: 'seam-datatable-action-menu', exportAs: 'seamDatatableActionMenu', 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 item of items\">\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 [disabled]=\"item.disabled\"\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 [disabled]=\"item.disabled\"\n [queryParams]=\"item.queryParams\"\n [fragment]=\"$any(item.fragment)\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"$any(item.preserveFragment)\"\n [skipLocationChange]=\"$any(item.skipLocationChange)\"\n [replaceUrl]=\"$any(item.replaceUrl)\"\n [state]=\"$any(item.state)\"\n [routerLink]=\"item.routerLink\"\n [target]=\"$any(item.target)\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </a>\n </ng-template>\n </ng-container>\n <ng-template #noRouterLink>\n <ng-container *ngIf=\"!!item.subMenu; else noSubMenu\">\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [disabled]=\"item.disabled\"\n [seamMenuToggle]=\"item.subMenu.menu\"\n [seamMenuTogglePositionsOffsetY]=\"-3\">\n {{ item.label }}\n </button>\n </ng-container>\n <ng-template #noSubMenu>\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [disabled]=\"item.disabled\"\n (click)=\"activateItem($event, item)\">\n {{ item.label }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</seam-menu>\n\n<ng-container *ngIf=\"!isSubMenu && items?.length\">\n <button type=\"button\" class=\"datatable-action-button btn\"\n [seamMenuToggle]=\"menu\"\n [positions]=\"_actionMenuPositions || []\"\n title=\"Row Actions\">\n <seam-icon [icon]=\"faEllipsisH\"></seam-icon>\n </button>\n</ng-container>\n", styles: [":host{position:relative;display:flex;align-items:center;justify-content:center;height:100%}.datatable-action-button::ng-deep .svg-inline--fa{vertical-align:middle}\n"] }]
|
|
196
199
|
}], ctorParameters: function () { return [{ type: i1.SeamConfirmDialogService }, { type: i2.Router }]; }, propDecorators: { menu: [{
|
|
197
200
|
type: ViewChild,
|
|
198
201
|
args: [MenuComponent, { static: true }]
|
|
@@ -208,9 +211,9 @@ class DatatableCellTplDirective {
|
|
|
208
211
|
this.template = template;
|
|
209
212
|
}
|
|
210
213
|
}
|
|
211
|
-
DatatableCellTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
212
|
-
DatatableCellTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
213
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
214
|
+
DatatableCellTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableCellTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
215
|
+
DatatableCellTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableCellTplDirective, selector: "[seamDatatableCellTpl]", ngImport: i0 });
|
|
216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableCellTplDirective, decorators: [{
|
|
214
217
|
type: Directive,
|
|
215
218
|
args: [{
|
|
216
219
|
selector: '[seamDatatableCellTpl]'
|
|
@@ -228,9 +231,9 @@ class DatatableColumnChangesService {
|
|
|
228
231
|
this.columnInputChanges.next(undefined);
|
|
229
232
|
}
|
|
230
233
|
}
|
|
231
|
-
DatatableColumnChangesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
232
|
-
DatatableColumnChangesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
233
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
234
|
+
DatatableColumnChangesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnChangesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
235
|
+
DatatableColumnChangesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnChangesService });
|
|
236
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnChangesService, decorators: [{
|
|
234
237
|
type: Injectable
|
|
235
238
|
}] });
|
|
236
239
|
|
|
@@ -273,9 +276,9 @@ class DatatableColumnComponent {
|
|
|
273
276
|
return null;
|
|
274
277
|
}
|
|
275
278
|
}
|
|
276
|
-
DatatableColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
277
|
-
DatatableColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
278
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
279
|
+
DatatableColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnComponent, deps: [{ token: DatatableColumnChangesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
280
|
+
DatatableColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnComponent, selector: "seam-datatable-column", inputs: { name: "name", prop: "prop", flexGrow: "flexGrow", minWidth: "minWidth", maxWidth: "maxWidth", width: "width", resizeable: "resizeable", sortable: "sortable", draggable: "draggable", canAutoResize: "canAutoResize", comparator: "comparator", headerTemplate: "headerTemplate", checkboxable: "checkboxable", headerCheckboxable: "headerCheckboxable", headerClass: "headerClass", cellClass: "cellClass", frozenLeft: "frozenLeft", frozenRight: "frozenRight", pipe: "pipe", isTreeColumn: "isTreeColumn", treeLevelIndent: "treeLevelIndent", summaryFunc: "summaryFunc", summaryTemplate: "summaryTemplate", hidden: "hidden", _cellTemplateInput: ["cellTemplate", "_cellTemplateInput"] }, queries: [{ propertyName: "cellTplDirective", first: true, predicate: DatatableCellTplDirective, descendants: true, static: true }, { propertyName: "_cellTemplateQuery", first: true, predicate: DatatableCellTplDirective, descendants: true, read: TemplateRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<p>\n datatable-column works!\n</p>\n", styles: [""] });
|
|
281
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnComponent, decorators: [{
|
|
279
282
|
type: Component,
|
|
280
283
|
args: [{ selector: 'seam-datatable-column', template: "<p>\n datatable-column works!\n</p>\n" }]
|
|
281
284
|
}], ctorParameters: function () { return [{ type: DatatableColumnChangesService }]; }, propDecorators: { name: [{
|
|
@@ -342,9 +345,9 @@ class DatatableFooterTplDirective {
|
|
|
342
345
|
this.template = template;
|
|
343
346
|
}
|
|
344
347
|
}
|
|
345
|
-
DatatableFooterTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
346
|
-
DatatableFooterTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
347
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
348
|
+
DatatableFooterTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableFooterTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
349
|
+
DatatableFooterTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableFooterTplDirective, selector: "[seamDatatableFooterTpl]", ngImport: i0 });
|
|
350
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableFooterTplDirective, decorators: [{
|
|
348
351
|
type: Directive,
|
|
349
352
|
args: [{
|
|
350
353
|
selector: '[seamDatatableFooterTpl]'
|
|
@@ -356,9 +359,9 @@ class TheSeamDatatableFooterDirective {
|
|
|
356
359
|
return this._templateInput || this._templateQuery;
|
|
357
360
|
}
|
|
358
361
|
}
|
|
359
|
-
TheSeamDatatableFooterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
360
|
-
TheSeamDatatableFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
361
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
362
|
+
TheSeamDatatableFooterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
363
|
+
TheSeamDatatableFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamDatatableFooterDirective, selector: "seam-datatable-footer", inputs: { _templateInput: ["template", "_templateInput"] }, queries: [{ propertyName: "_templateQuery", first: true, predicate: DatatableFooterTplDirective, descendants: true, read: TemplateRef, static: true }], ngImport: i0 });
|
|
364
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableFooterDirective, decorators: [{
|
|
362
365
|
type: Directive,
|
|
363
366
|
args: [{
|
|
364
367
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -382,9 +385,9 @@ class DatatableFilterDirective {
|
|
|
382
385
|
return this._filter;
|
|
383
386
|
}
|
|
384
387
|
}
|
|
385
|
-
DatatableFilterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
386
|
-
DatatableFilterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
387
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
388
|
+
DatatableFilterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableFilterDirective, deps: [{ token: THESEAM_DATA_FILTER, self: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
389
|
+
DatatableFilterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableFilterDirective, selector: "[seamDatatableFilter]", ngImport: i0 });
|
|
390
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableFilterDirective, decorators: [{
|
|
388
391
|
type: Directive,
|
|
389
392
|
args: [{
|
|
390
393
|
selector: '[seamDatatableFilter]'
|
|
@@ -430,9 +433,9 @@ class DatatableMenuBarComponent {
|
|
|
430
433
|
this.filtersChanged.emit(this.filters());
|
|
431
434
|
}
|
|
432
435
|
}
|
|
433
|
-
DatatableMenuBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
434
|
-
DatatableMenuBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
435
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
436
|
+
DatatableMenuBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
437
|
+
DatatableMenuBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableMenuBarComponent, selector: "seam-datatable-menu-bar", providers: [_THESEAM_DATA_FILTER_CONTAINER], queries: [{ propertyName: "filterDirectives", predicate: DatatableFilterDirective }], ngImport: i0, template: "<div class=\"bg-light border rounded p-2\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block}\n"] });
|
|
438
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarComponent, decorators: [{
|
|
436
439
|
type: Component,
|
|
437
440
|
args: [{ selector: 'seam-datatable-menu-bar', providers: [_THESEAM_DATA_FILTER_CONTAINER], template: "<div class=\"bg-light border rounded p-2\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block}\n"] }]
|
|
438
441
|
}], propDecorators: { filterDirectives: [{
|
|
@@ -445,9 +448,9 @@ class DatatableRowDetailTplDirective {
|
|
|
445
448
|
this.template = template;
|
|
446
449
|
}
|
|
447
450
|
}
|
|
448
|
-
DatatableRowDetailTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
449
|
-
DatatableRowDetailTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
450
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
451
|
+
DatatableRowDetailTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableRowDetailTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
452
|
+
DatatableRowDetailTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableRowDetailTplDirective, selector: "[seamDatatableRowDetailTpl]", ngImport: i0 });
|
|
453
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableRowDetailTplDirective, decorators: [{
|
|
451
454
|
type: Directive,
|
|
452
455
|
args: [{
|
|
453
456
|
selector: '[seamDatatableRowDetailTpl]'
|
|
@@ -508,9 +511,9 @@ class TheSeamDatatableRowDetailDirective {
|
|
|
508
511
|
});
|
|
509
512
|
}
|
|
510
513
|
}
|
|
511
|
-
TheSeamDatatableRowDetailDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
512
|
-
TheSeamDatatableRowDetailDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
513
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
514
|
+
TheSeamDatatableRowDetailDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableRowDetailDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
515
|
+
TheSeamDatatableRowDetailDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamDatatableRowDetailDirective, selector: "seam-datatable-row-detail", inputs: { rowHeight: "rowHeight", _templateInput: ["template", "_templateInput"] }, outputs: { toggle: "toggle" }, queries: [{ propertyName: "_templateQuery", first: true, predicate: DatatableRowDetailTplDirective, descendants: true, read: TemplateRef, static: true }], ngImport: i0 });
|
|
516
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableRowDetailDirective, decorators: [{
|
|
514
517
|
type: Directive,
|
|
515
518
|
args: [{
|
|
516
519
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -533,9 +536,9 @@ class DatatableRowActionItemDirective {
|
|
|
533
536
|
this.template = template;
|
|
534
537
|
}
|
|
535
538
|
}
|
|
536
|
-
DatatableRowActionItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
537
|
-
DatatableRowActionItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
538
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
539
|
+
DatatableRowActionItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableRowActionItemDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
540
|
+
DatatableRowActionItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableRowActionItemDirective, selector: "[seamDatatableRowActionItem]", ngImport: i0 });
|
|
541
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableRowActionItemDirective, decorators: [{
|
|
539
542
|
type: Directive,
|
|
540
543
|
args: [{
|
|
541
544
|
selector: '[seamDatatableRowActionItem]'
|
|
@@ -582,7 +585,7 @@ class DatatableDataSource extends DataSource {
|
|
|
582
585
|
}
|
|
583
586
|
|
|
584
587
|
const ACTION_MENU_COLUMN_PROP = '$$__actionMenu__';
|
|
585
|
-
function createActionMenuColumn(cellTemplate, headerTemplate) {
|
|
588
|
+
function createActionMenuColumn(cellTemplate, headerTemplate, frozenLeft, frozenRight) {
|
|
586
589
|
return {
|
|
587
590
|
prop: ACTION_MENU_COLUMN_PROP,
|
|
588
591
|
name: '',
|
|
@@ -593,7 +596,8 @@ function createActionMenuColumn(cellTemplate, headerTemplate) {
|
|
|
593
596
|
sortable: false,
|
|
594
597
|
draggable: false,
|
|
595
598
|
// TODO: Fix column auto sizing with fixed column and cell overlay before enabling.
|
|
596
|
-
|
|
599
|
+
frozenLeft: frozenLeft,
|
|
600
|
+
frozenRight: frozenRight,
|
|
597
601
|
cellTemplate,
|
|
598
602
|
headerTemplate,
|
|
599
603
|
};
|
|
@@ -708,6 +712,13 @@ class ColumnsManagerService {
|
|
|
708
712
|
this._updateColumns.next(undefined);
|
|
709
713
|
}
|
|
710
714
|
}
|
|
715
|
+
setActionItemColumnPosition(actionItemColumnPosition) {
|
|
716
|
+
const changed = this._actionItemColumnPosition !== actionItemColumnPosition;
|
|
717
|
+
this._actionItemColumnPosition = actionItemColumnPosition;
|
|
718
|
+
if (changed) {
|
|
719
|
+
this._updateColumns.next(undefined);
|
|
720
|
+
}
|
|
721
|
+
}
|
|
711
722
|
setActionMenuCellTpl(actionMenuCellTpl) {
|
|
712
723
|
const changed = this._actionMenuCellTpl !== actionMenuCellTpl;
|
|
713
724
|
this._actionMenuCellTpl = actionMenuCellTpl;
|
|
@@ -786,7 +797,13 @@ class ColumnsManagerService {
|
|
|
786
797
|
cols.push(_col);
|
|
787
798
|
}
|
|
788
799
|
if (this._shouldAddRowActionColumn()) {
|
|
789
|
-
|
|
800
|
+
const actionMenuColumn = createActionMenuColumn(this._actionMenuCellTpl, this._blankHeaderTpl, this._rowActionColumnIsFrozenLeft(), this._rowActionColumnIsFrozenRight());
|
|
801
|
+
if (this._rowActionColumnIsStaticLeft()) {
|
|
802
|
+
cols.unshift(actionMenuColumn);
|
|
803
|
+
}
|
|
804
|
+
else {
|
|
805
|
+
cols.push(actionMenuColumn);
|
|
806
|
+
}
|
|
790
807
|
}
|
|
791
808
|
// Make sure the default for any missing props are set.
|
|
792
809
|
// TODO: Determine if this should be done earlier, because I don't like
|
|
@@ -872,6 +889,18 @@ class ColumnsManagerService {
|
|
|
872
889
|
_shouldAddRowActionColumn() {
|
|
873
890
|
return this._rowActionItem !== undefined;
|
|
874
891
|
}
|
|
892
|
+
_rowActionColumnIsFrozenLeft() {
|
|
893
|
+
return this._actionItemColumnPosition === 'frozenLeft';
|
|
894
|
+
}
|
|
895
|
+
_rowActionColumnIsFrozenRight() {
|
|
896
|
+
return this._actionItemColumnPosition === 'frozenRight';
|
|
897
|
+
}
|
|
898
|
+
_rowActionColumnIsStaticLeft() {
|
|
899
|
+
return this._actionItemColumnPosition === 'staticLeft';
|
|
900
|
+
}
|
|
901
|
+
_rowActionColumnIsStaticRight() {
|
|
902
|
+
return this._actionItemColumnPosition === 'staticRight';
|
|
903
|
+
}
|
|
875
904
|
_shouldAddTreeToggleColumn(column) {
|
|
876
905
|
return column.isTreeColumn !== undefined && column.isTreeColumn &&
|
|
877
906
|
(!hasProperty(column, 'treeToggleTemplate') || !notNullOrUndefined(column.treeToggleTemplate));
|
|
@@ -883,9 +912,9 @@ class ColumnsManagerService {
|
|
|
883
912
|
return hasProperty(column, 'cellType');
|
|
884
913
|
}
|
|
885
914
|
}
|
|
886
|
-
ColumnsManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
887
|
-
ColumnsManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
888
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
915
|
+
ColumnsManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsManagerService, deps: [{ token: i0.KeyValueDiffers }, { token: DatatableColumnChangesService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
916
|
+
ColumnsManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsManagerService });
|
|
917
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsManagerService, decorators: [{
|
|
889
918
|
type: Injectable
|
|
890
919
|
}], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: DatatableColumnChangesService }]; } });
|
|
891
920
|
|
|
@@ -1164,9 +1193,9 @@ class ColumnsAlterationsManagerService {
|
|
|
1164
1193
|
this._changesSubject.next(event);
|
|
1165
1194
|
}
|
|
1166
1195
|
}
|
|
1167
|
-
ColumnsAlterationsManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
1168
|
-
ColumnsAlterationsManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
1169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
1196
|
+
ColumnsAlterationsManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsAlterationsManagerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1197
|
+
ColumnsAlterationsManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsAlterationsManagerService });
|
|
1198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsAlterationsManagerService, decorators: [{
|
|
1170
1199
|
type: Injectable
|
|
1171
1200
|
}], ctorParameters: function () { return []; } });
|
|
1172
1201
|
|
|
@@ -1297,6 +1326,544 @@ function mapColumnsAlterationsStates(states) {
|
|
|
1297
1326
|
return alterations;
|
|
1298
1327
|
}
|
|
1299
1328
|
|
|
1329
|
+
const ActionItemColumnPosition = ['frozenLeft', 'frozenRight', 'staticLeft', 'staticRight'];
|
|
1330
|
+
function isActionItemColumnPosition(input) {
|
|
1331
|
+
return ActionItemColumnPosition.indexOf(input) != -1;
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
class ColumnsDataFilter {
|
|
1335
|
+
constructor(prop, initialValue, column) {
|
|
1336
|
+
this.prop = prop;
|
|
1337
|
+
this.initialValue = initialValue;
|
|
1338
|
+
this.column = column;
|
|
1339
|
+
}
|
|
1340
|
+
}
|
|
1341
|
+
const THESEAM_COLUMNS_DATA_FILTER = new InjectionToken('ColumnsDataFilter');
|
|
1342
|
+
|
|
1343
|
+
const THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_NAME = 'search-date';
|
|
1344
|
+
const THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_TYPES = [
|
|
1345
|
+
'lt',
|
|
1346
|
+
'lte',
|
|
1347
|
+
'gt',
|
|
1348
|
+
'gte',
|
|
1349
|
+
'eq',
|
|
1350
|
+
'blank',
|
|
1351
|
+
'not-blank',
|
|
1352
|
+
'between',
|
|
1353
|
+
'not-between'
|
|
1354
|
+
];
|
|
1355
|
+
const THESEAM_COLUMNS_DATA_FILTER_DATE_TEXT_SEARCH_TYPES = [
|
|
1356
|
+
'lt',
|
|
1357
|
+
'lte',
|
|
1358
|
+
'gt',
|
|
1359
|
+
'gte',
|
|
1360
|
+
'eq',
|
|
1361
|
+
];
|
|
1362
|
+
const THESEAM_COLUMNS_DATA_FILTER_DATE_RANGE_SEARCH_TYPES = [
|
|
1363
|
+
'between',
|
|
1364
|
+
'not-between'
|
|
1365
|
+
];
|
|
1366
|
+
const THESEAM_COLUMNS_DATA_FILTER_DATE_SELECT_SEARCH_TYPES = [
|
|
1367
|
+
'blank',
|
|
1368
|
+
'not-blank',
|
|
1369
|
+
];
|
|
1370
|
+
const THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_NAME = 'search-numeric';
|
|
1371
|
+
const THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_TYPES = [
|
|
1372
|
+
'gt',
|
|
1373
|
+
'lt',
|
|
1374
|
+
'eq',
|
|
1375
|
+
'gte',
|
|
1376
|
+
'lte',
|
|
1377
|
+
'blank',
|
|
1378
|
+
'not-blank',
|
|
1379
|
+
'between',
|
|
1380
|
+
'not-between'
|
|
1381
|
+
];
|
|
1382
|
+
const THESEAM_COLUMNS_DATA_FILTER_NUMERIC_TEXT_SEARCH_TYPES = [
|
|
1383
|
+
'gt',
|
|
1384
|
+
'lt',
|
|
1385
|
+
'eq',
|
|
1386
|
+
'gte',
|
|
1387
|
+
'lte',
|
|
1388
|
+
];
|
|
1389
|
+
const THESEAM_COLUMNS_DATA_FILTER_NUMERIC_RANGE_SEARCH_TYPES = [
|
|
1390
|
+
'between',
|
|
1391
|
+
'not-between'
|
|
1392
|
+
];
|
|
1393
|
+
const THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SELECT_SEARCH_TYPES = [
|
|
1394
|
+
'blank',
|
|
1395
|
+
'not-blank',
|
|
1396
|
+
];
|
|
1397
|
+
const THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_NAME = 'search-text';
|
|
1398
|
+
const THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_TYPES = [
|
|
1399
|
+
'contains',
|
|
1400
|
+
'ncontains',
|
|
1401
|
+
'eq',
|
|
1402
|
+
'neq',
|
|
1403
|
+
'blank',
|
|
1404
|
+
'not-blank'
|
|
1405
|
+
];
|
|
1406
|
+
const THESEAM_COLUMNS_DATA_FILTER_TEXT_TEXT_SEARCH_TYPES = [
|
|
1407
|
+
'contains',
|
|
1408
|
+
'ncontains',
|
|
1409
|
+
'eq',
|
|
1410
|
+
'neq',
|
|
1411
|
+
];
|
|
1412
|
+
const THESEAM_COLUMNS_DATA_FILTER_TEXT_SELECT_SEARCH_TYPES = [
|
|
1413
|
+
'blank',
|
|
1414
|
+
'not-blank'
|
|
1415
|
+
];
|
|
1416
|
+
|
|
1417
|
+
class SearchDateColumnsDataFilter extends ColumnsDataFilter {
|
|
1418
|
+
constructor(prop, initialValue, column) {
|
|
1419
|
+
super(prop, initialValue, column);
|
|
1420
|
+
this.name = THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_NAME;
|
|
1421
|
+
this._updateFilterValue = new Subject;
|
|
1422
|
+
this.form = new FormGroup({
|
|
1423
|
+
searchType: new FormControl(notNullOrUndefined(initialValue) ? initialValue.searchType : 'eq'),
|
|
1424
|
+
searchText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.searchText : null),
|
|
1425
|
+
fromText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.fromText : null),
|
|
1426
|
+
toText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.toText : null),
|
|
1427
|
+
});
|
|
1428
|
+
this.uid = `${this.name}--${prop}`;
|
|
1429
|
+
this.filterStateChanges = this._updateFilterValue.pipe(startWith$1(undefined), map$1(() => this.filterState()));
|
|
1430
|
+
this.options = {
|
|
1431
|
+
dateType: this.column.filterOptions?.dateType || 'date'
|
|
1432
|
+
};
|
|
1433
|
+
}
|
|
1434
|
+
dataFilter(data, filterValue, options) {
|
|
1435
|
+
if (isNullOrUndefined(filterValue) || this.isDefault()) {
|
|
1436
|
+
return data;
|
|
1437
|
+
}
|
|
1438
|
+
return this._dateSearchDataFilter(this.prop, data, filterValue.searchText, filterValue.fromText, filterValue.toText, filterValue.searchType || null);
|
|
1439
|
+
}
|
|
1440
|
+
_isInvalidDate(dateString) {
|
|
1441
|
+
return isNullOrUndefinedOrEmpty(dateString) || isNaN(new Date(dateString).valueOf());
|
|
1442
|
+
}
|
|
1443
|
+
_isInvalidSearchTerm(searchText, fromText, toText, comparator) {
|
|
1444
|
+
if (THESEAM_COLUMNS_DATA_FILTER_DATE_TEXT_SEARCH_TYPES.includes(comparator) && this._isInvalidDate(searchText)) {
|
|
1445
|
+
return true;
|
|
1446
|
+
}
|
|
1447
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_DATE_RANGE_SEARCH_TYPES.includes(comparator) && (this._isInvalidDate(fromText) || this._isInvalidDate(toText))) {
|
|
1448
|
+
return true;
|
|
1449
|
+
}
|
|
1450
|
+
return false;
|
|
1451
|
+
}
|
|
1452
|
+
_dateSearchDataFilter(prop, data, text, fromText, toText, comparator) {
|
|
1453
|
+
if (!data || data.length <= 0 || isNullOrUndefined(comparator)) {
|
|
1454
|
+
console.warn('No filter applied - invalid options.');
|
|
1455
|
+
return data;
|
|
1456
|
+
}
|
|
1457
|
+
if (this._isInvalidSearchTerm(text, fromText, toText, comparator)) {
|
|
1458
|
+
console.warn('No filter applied - invalid search terms.');
|
|
1459
|
+
return data;
|
|
1460
|
+
}
|
|
1461
|
+
const useLocalTime = this.column.filterOptions?.useLocalTime === true;
|
|
1462
|
+
const textDate = getFormattedDateForComparison(text, this.options.dateType, true);
|
|
1463
|
+
const fromTextDate = getFormattedDateForComparison(fromText, this.options.dateType, true);
|
|
1464
|
+
const toTextDate = getFormattedDateForComparison(toText, this.options.dateType, true);
|
|
1465
|
+
return data.filter(item => {
|
|
1466
|
+
let propDate = getFormattedDateForComparison(item[prop], this.options.dateType, useLocalTime);
|
|
1467
|
+
if ((comparator === 'blank' && (isNullOrUndefined(item[prop]) || isNullOrUndefinedOrEmpty(`${item[prop]}`))) ||
|
|
1468
|
+
(comparator === 'not-blank' && notNullOrUndefined(item[prop]) && notNullOrUndefinedOrEmpty(`${item[prop]}`)) ||
|
|
1469
|
+
(comparator === 'lt' && propDate.valueOf() < textDate.valueOf()) ||
|
|
1470
|
+
(comparator === 'lte' && propDate.valueOf() <= textDate.valueOf()) ||
|
|
1471
|
+
(comparator === 'gt' && propDate.valueOf() > textDate.valueOf()) ||
|
|
1472
|
+
(comparator === 'gte' && propDate.valueOf() >= textDate.valueOf()) ||
|
|
1473
|
+
(comparator === 'eq' && propDate.valueOf() === textDate.valueOf()) ||
|
|
1474
|
+
(comparator === 'between' && propDate.valueOf() >= fromTextDate.valueOf() && propDate.valueOf() <= toTextDate.valueOf()) ||
|
|
1475
|
+
(comparator === 'not-between' && !(propDate.valueOf() >= fromTextDate.valueOf() && propDate.valueOf() <= toTextDate.valueOf()))) {
|
|
1476
|
+
return true;
|
|
1477
|
+
}
|
|
1478
|
+
return false;
|
|
1479
|
+
});
|
|
1480
|
+
}
|
|
1481
|
+
filter(data) {
|
|
1482
|
+
return this._updateFilterValue.pipe(startWith$1(undefined), map$1(() => this.dataFilter(data, this.form.value, undefined)));
|
|
1483
|
+
}
|
|
1484
|
+
filterState() {
|
|
1485
|
+
return {
|
|
1486
|
+
name: this.name,
|
|
1487
|
+
state: {
|
|
1488
|
+
prop: this.prop,
|
|
1489
|
+
formValue: this.form.value,
|
|
1490
|
+
options: this.options
|
|
1491
|
+
}
|
|
1492
|
+
};
|
|
1493
|
+
}
|
|
1494
|
+
applyFilter() {
|
|
1495
|
+
this._updateFilterValue.next();
|
|
1496
|
+
}
|
|
1497
|
+
clearFilter() {
|
|
1498
|
+
this.form.setValue({
|
|
1499
|
+
searchType: 'eq',
|
|
1500
|
+
searchText: null,
|
|
1501
|
+
fromText: null,
|
|
1502
|
+
toText: null
|
|
1503
|
+
});
|
|
1504
|
+
this._updateFilterValue.next();
|
|
1505
|
+
}
|
|
1506
|
+
isDefault() {
|
|
1507
|
+
const formValue = this.form.value;
|
|
1508
|
+
if (isNullOrUndefinedOrEmpty(formValue.searchType)) {
|
|
1509
|
+
return true;
|
|
1510
|
+
}
|
|
1511
|
+
if (THESEAM_COLUMNS_DATA_FILTER_DATE_SELECT_SEARCH_TYPES.includes(formValue.searchType)) {
|
|
1512
|
+
return false;
|
|
1513
|
+
}
|
|
1514
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_DATE_TEXT_SEARCH_TYPES.includes(formValue.searchType) && notNullOrUndefinedOrEmpty(formValue.searchText)) {
|
|
1515
|
+
return false;
|
|
1516
|
+
}
|
|
1517
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_DATE_RANGE_SEARCH_TYPES.includes(formValue.searchType) && notNullOrUndefinedOrEmpty(formValue.fromText) && notNullOrUndefinedOrEmpty(formValue.toText)) {
|
|
1518
|
+
return false;
|
|
1519
|
+
}
|
|
1520
|
+
return true;
|
|
1521
|
+
}
|
|
1522
|
+
}
|
|
1523
|
+
|
|
1524
|
+
class SearchNumericColumnsDataFilter extends ColumnsDataFilter {
|
|
1525
|
+
constructor(prop, initialValue, column) {
|
|
1526
|
+
super(prop, initialValue, column);
|
|
1527
|
+
this.name = THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_NAME;
|
|
1528
|
+
this._updateFilterValue = new Subject;
|
|
1529
|
+
this.form = new FormGroup({
|
|
1530
|
+
searchType: new FormControl(notNullOrUndefined(initialValue) ? initialValue.searchType : 'eq'),
|
|
1531
|
+
searchText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.searchText : null),
|
|
1532
|
+
fromText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.fromText : null),
|
|
1533
|
+
toText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.toText : null),
|
|
1534
|
+
});
|
|
1535
|
+
this.uid = `${this.name}--${prop}`;
|
|
1536
|
+
this.filterStateChanges = this._updateFilterValue.pipe(startWith$1(undefined), map$1(() => this.filterState()));
|
|
1537
|
+
}
|
|
1538
|
+
dataFilter(data, filterValue, options) {
|
|
1539
|
+
if (isNullOrUndefined(filterValue) || this.isDefault()) {
|
|
1540
|
+
return data;
|
|
1541
|
+
}
|
|
1542
|
+
return this.numberSearchDataFilter(this.prop, data, filterValue.searchText, filterValue.fromText, filterValue.toText, filterValue.searchType || null);
|
|
1543
|
+
}
|
|
1544
|
+
_isInvalidSearchTerm(searchText, fromText, toText, comparator) {
|
|
1545
|
+
if (isNaN(searchText) && THESEAM_COLUMNS_DATA_FILTER_NUMERIC_TEXT_SEARCH_TYPES.includes(comparator)) {
|
|
1546
|
+
return true;
|
|
1547
|
+
}
|
|
1548
|
+
else if ((isNaN(fromText) || isNaN(toText)) && THESEAM_COLUMNS_DATA_FILTER_NUMERIC_RANGE_SEARCH_TYPES.includes(comparator)) {
|
|
1549
|
+
return true;
|
|
1550
|
+
}
|
|
1551
|
+
return false;
|
|
1552
|
+
}
|
|
1553
|
+
numberSearchDataFilter(prop, data, text, fromText, toText, comparator) {
|
|
1554
|
+
if (!data || data.length <= 0 || isNullOrUndefined(comparator)) {
|
|
1555
|
+
console.warn('No filter applied - invalid options.');
|
|
1556
|
+
return data;
|
|
1557
|
+
}
|
|
1558
|
+
const textNumeric = notNullOrUndefinedOrEmpty(text) ? parseFloat(text) : NaN;
|
|
1559
|
+
const toTextNumeric = notNullOrUndefinedOrEmpty(toText) ? parseFloat(toText) : NaN;
|
|
1560
|
+
const fromTextNumeric = notNullOrUndefinedOrEmpty(fromText) ? parseFloat(fromText) : NaN;
|
|
1561
|
+
if (this._isInvalidSearchTerm(textNumeric, fromTextNumeric, toTextNumeric, comparator)) {
|
|
1562
|
+
console.warn('No filter applied - invalid search terms.');
|
|
1563
|
+
return data;
|
|
1564
|
+
}
|
|
1565
|
+
return data.filter(item => {
|
|
1566
|
+
let propNumeric = parseFloat(item[prop]);
|
|
1567
|
+
if ((comparator === 'blank' && (isNullOrUndefined(item[prop]) || isNullOrUndefinedOrEmpty(`${item[prop]}`))) ||
|
|
1568
|
+
(comparator === 'not-blank' && notNullOrUndefined(item[prop]) && notNullOrUndefinedOrEmpty(`${item[prop]}`)) ||
|
|
1569
|
+
(comparator === 'lt' && propNumeric < textNumeric) ||
|
|
1570
|
+
(comparator === 'lte' && propNumeric <= textNumeric) ||
|
|
1571
|
+
(comparator === 'gt' && propNumeric > textNumeric) ||
|
|
1572
|
+
(comparator === 'gte' && propNumeric >= textNumeric) ||
|
|
1573
|
+
(comparator === 'eq' && propNumeric === textNumeric) ||
|
|
1574
|
+
(comparator === 'between' && propNumeric >= fromTextNumeric && propNumeric <= toTextNumeric) ||
|
|
1575
|
+
(comparator === 'not-between' && !(propNumeric >= fromTextNumeric && propNumeric <= toTextNumeric))) {
|
|
1576
|
+
return true;
|
|
1577
|
+
}
|
|
1578
|
+
return false;
|
|
1579
|
+
});
|
|
1580
|
+
}
|
|
1581
|
+
filter(data) {
|
|
1582
|
+
return this._updateFilterValue.pipe(startWith$1(undefined), map$1(() => this.dataFilter(data, this.form.value, undefined)));
|
|
1583
|
+
}
|
|
1584
|
+
filterState() {
|
|
1585
|
+
return {
|
|
1586
|
+
name: this.name,
|
|
1587
|
+
state: {
|
|
1588
|
+
prop: this.prop,
|
|
1589
|
+
formValue: this.form.value
|
|
1590
|
+
}
|
|
1591
|
+
};
|
|
1592
|
+
}
|
|
1593
|
+
applyFilter() {
|
|
1594
|
+
this._updateFilterValue.next();
|
|
1595
|
+
}
|
|
1596
|
+
clearFilter() {
|
|
1597
|
+
this.form.setValue({
|
|
1598
|
+
searchType: 'eq',
|
|
1599
|
+
searchText: null,
|
|
1600
|
+
fromText: null,
|
|
1601
|
+
toText: null
|
|
1602
|
+
});
|
|
1603
|
+
this._updateFilterValue.next();
|
|
1604
|
+
}
|
|
1605
|
+
isDefault() {
|
|
1606
|
+
const formValue = this.form.value;
|
|
1607
|
+
if (isNullOrUndefinedOrEmpty(formValue.searchType)) {
|
|
1608
|
+
return true;
|
|
1609
|
+
}
|
|
1610
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SELECT_SEARCH_TYPES.includes(formValue.searchType)) {
|
|
1611
|
+
return false;
|
|
1612
|
+
}
|
|
1613
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_NUMERIC_TEXT_SEARCH_TYPES.includes(formValue.searchType) && notNullOrUndefinedOrEmpty(formValue.searchText)) {
|
|
1614
|
+
return false;
|
|
1615
|
+
}
|
|
1616
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_NUMERIC_RANGE_SEARCH_TYPES.includes(formValue.searchType) && notNullOrUndefinedOrEmpty(formValue.fromText) && notNullOrUndefinedOrEmpty(formValue.toText)) {
|
|
1617
|
+
return false;
|
|
1618
|
+
}
|
|
1619
|
+
return true;
|
|
1620
|
+
}
|
|
1621
|
+
}
|
|
1622
|
+
|
|
1623
|
+
class SearchTextColumnsDataFilter extends ColumnsDataFilter {
|
|
1624
|
+
constructor(prop, initialValue, column) {
|
|
1625
|
+
super(prop, initialValue, column);
|
|
1626
|
+
this.name = THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_NAME;
|
|
1627
|
+
this._updateFilterValue = new Subject;
|
|
1628
|
+
this.form = new FormGroup({
|
|
1629
|
+
searchType: new FormControl(notNullOrUndefined(initialValue) ? initialValue.searchType : 'contains'),
|
|
1630
|
+
searchText: new FormControl(notNullOrUndefined(initialValue) ? initialValue.searchText : null),
|
|
1631
|
+
// caseSensitive: new FormControl<boolean | null>(notNullOrUndefined(initialValue) ? initialValue.caseSensitive : null),
|
|
1632
|
+
});
|
|
1633
|
+
this.uid = `${this.name}--${prop}`;
|
|
1634
|
+
this.filterStateChanges = this._updateFilterValue.pipe(startWith$1(undefined), map$1(() => this.filterState()));
|
|
1635
|
+
}
|
|
1636
|
+
dataFilter(data, filterValue, options) {
|
|
1637
|
+
if (isNullOrUndefined(filterValue) || this.isDefault()) {
|
|
1638
|
+
return data;
|
|
1639
|
+
}
|
|
1640
|
+
return this._textSearchDataFilter(this.prop, data, filterValue.searchText, filterValue.searchType || null);
|
|
1641
|
+
}
|
|
1642
|
+
_textSearchDataFilter(prop, data, text, comparator) {
|
|
1643
|
+
if (!data || data.length < 0 || isNullOrUndefined(comparator)) {
|
|
1644
|
+
return data;
|
|
1645
|
+
}
|
|
1646
|
+
return data.filter(item => {
|
|
1647
|
+
let value1 = `${notNullOrUndefined(item[prop]) ? item[prop] : ''}`;
|
|
1648
|
+
let value2 = text || '';
|
|
1649
|
+
// if (!options.caseSensitive) {
|
|
1650
|
+
// value1 = value1.toLowerCase()
|
|
1651
|
+
// value2 = value2.toLowerCase()
|
|
1652
|
+
// }
|
|
1653
|
+
value1 = value1.toLowerCase();
|
|
1654
|
+
value2 = value2.toLowerCase();
|
|
1655
|
+
if ((comparator === 'eq' && value1 === value2) ||
|
|
1656
|
+
(comparator === 'neq' && value1 !== value2) ||
|
|
1657
|
+
(comparator === 'contains' && value1.indexOf(value2) !== -1) ||
|
|
1658
|
+
(comparator === 'ncontains' && value1.indexOf(value2) === -1) ||
|
|
1659
|
+
(comparator === 'blank' && isNullOrUndefinedOrEmpty(value1)) ||
|
|
1660
|
+
(comparator === 'not-blank' && notNullOrUndefinedOrEmpty(value1))) {
|
|
1661
|
+
return true;
|
|
1662
|
+
}
|
|
1663
|
+
return false;
|
|
1664
|
+
});
|
|
1665
|
+
}
|
|
1666
|
+
filter(data) {
|
|
1667
|
+
return this._updateFilterValue.pipe(startWith$1(undefined), map$1(() => this.dataFilter(data, this.form.value, undefined)));
|
|
1668
|
+
}
|
|
1669
|
+
filterState() {
|
|
1670
|
+
return {
|
|
1671
|
+
name: this.name,
|
|
1672
|
+
state: {
|
|
1673
|
+
prop: this.prop,
|
|
1674
|
+
formValue: this.form.value,
|
|
1675
|
+
}
|
|
1676
|
+
};
|
|
1677
|
+
}
|
|
1678
|
+
applyFilter() {
|
|
1679
|
+
this._updateFilterValue.next();
|
|
1680
|
+
}
|
|
1681
|
+
clearFilter() {
|
|
1682
|
+
this.form.setValue({
|
|
1683
|
+
searchType: 'contains',
|
|
1684
|
+
searchText: null,
|
|
1685
|
+
// caseSensitive: null
|
|
1686
|
+
});
|
|
1687
|
+
this._updateFilterValue.next();
|
|
1688
|
+
}
|
|
1689
|
+
isDefault() {
|
|
1690
|
+
const formValue = this.form.value;
|
|
1691
|
+
if (isNullOrUndefinedOrEmpty(formValue.searchType)) {
|
|
1692
|
+
return true;
|
|
1693
|
+
}
|
|
1694
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_TEXT_TEXT_SEARCH_TYPES.includes(formValue.searchType) && notNullOrUndefinedOrEmpty(formValue.searchText)) {
|
|
1695
|
+
return false;
|
|
1696
|
+
}
|
|
1697
|
+
else if (THESEAM_COLUMNS_DATA_FILTER_TEXT_SELECT_SEARCH_TYPES.includes(formValue.searchType)) {
|
|
1698
|
+
return false;
|
|
1699
|
+
}
|
|
1700
|
+
return true;
|
|
1701
|
+
}
|
|
1702
|
+
}
|
|
1703
|
+
|
|
1704
|
+
const THESEAM_COLUMNS_DATA_FILTERS_DEFAULT = [
|
|
1705
|
+
{ name: THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_NAME, class: SearchTextColumnsDataFilter },
|
|
1706
|
+
{ name: THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_NAME, class: SearchNumericColumnsDataFilter },
|
|
1707
|
+
{ name: THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_NAME, class: SearchDateColumnsDataFilter },
|
|
1708
|
+
];
|
|
1709
|
+
const getFormattedDateForComparison = (date, dateType, setToLocalTime = false) => {
|
|
1710
|
+
const dateObj = new Date(notNullOrUndefined(date) ? date : '');
|
|
1711
|
+
if (dateType === 'datetime-local') {
|
|
1712
|
+
// reset seconds and ms, since they can't be specified from the search input
|
|
1713
|
+
dateObj.setSeconds(0);
|
|
1714
|
+
dateObj.setMilliseconds(0);
|
|
1715
|
+
}
|
|
1716
|
+
else if (dateType === 'date') {
|
|
1717
|
+
if (setToLocalTime) {
|
|
1718
|
+
// set date from input type="date" to current timezone, to match expected behavior
|
|
1719
|
+
dateObj.setMinutes(dateObj.getMinutes() + dateObj.getTimezoneOffset());
|
|
1720
|
+
}
|
|
1721
|
+
// reset hours/minutes/seconds/ms, since they can't be specified from the search input
|
|
1722
|
+
dateObj.setHours(0, 0, 0, 0);
|
|
1723
|
+
}
|
|
1724
|
+
return dateObj;
|
|
1725
|
+
};
|
|
1726
|
+
|
|
1727
|
+
class ColumnsFiltersService {
|
|
1728
|
+
constructor(_customColumnsDataFilters) {
|
|
1729
|
+
this._customColumnsDataFilters = _customColumnsDataFilters;
|
|
1730
|
+
this._columnFilterTemplates = new BehaviorSubject([]);
|
|
1731
|
+
this.columnFilterTemplates$ = this._columnFilterTemplates.asObservable();
|
|
1732
|
+
this._columnsFilters = new BehaviorSubject([]);
|
|
1733
|
+
this.columnsFilters$ = this._columnsFilters.asObservable();
|
|
1734
|
+
this.columnActiveFilterProps$ = this.columnsFilters$.pipe(switchMap$1(filters => {
|
|
1735
|
+
if (!filters.length) {
|
|
1736
|
+
return of([]);
|
|
1737
|
+
}
|
|
1738
|
+
return combineLatest(filters.map(f => f.filterStateChanges.pipe(map$1(filterState => !f.isDefault() ? filterState.state.prop : null))));
|
|
1739
|
+
}), map$1(props => props.filter(notNullOrUndefined)));
|
|
1740
|
+
}
|
|
1741
|
+
registerColumnFilters(columns) {
|
|
1742
|
+
this._columnsFilters.next([]);
|
|
1743
|
+
const filters = columns
|
|
1744
|
+
.filter(col => col.filterable)
|
|
1745
|
+
.map(col => this.createColumnDataFilter(col, null));
|
|
1746
|
+
this._columnsFilters.next(filters.filter(notNullOrUndefined));
|
|
1747
|
+
}
|
|
1748
|
+
setFilterTemplates(tpls) {
|
|
1749
|
+
this._columnFilterTemplates.next(tpls);
|
|
1750
|
+
}
|
|
1751
|
+
createColumnDataFilter(column, initialValue) {
|
|
1752
|
+
const prop = this.getColumnFilterProp(column);
|
|
1753
|
+
if (isNullOrUndefined(prop)) {
|
|
1754
|
+
return null;
|
|
1755
|
+
}
|
|
1756
|
+
return this._getColumnsDataFilter(prop, column, initialValue);
|
|
1757
|
+
}
|
|
1758
|
+
_getColumnsDataFilter(prop, column, initialValue) {
|
|
1759
|
+
const filterClass = this._getColumnsDataFilterType(column);
|
|
1760
|
+
let filter;
|
|
1761
|
+
if (notNullOrUndefined(this._customColumnsDataFilters)) {
|
|
1762
|
+
filter = this._customColumnsDataFilters.find(x => x.name === filterClass);
|
|
1763
|
+
}
|
|
1764
|
+
if (isNullOrUndefined(filter)) {
|
|
1765
|
+
filter = THESEAM_COLUMNS_DATA_FILTERS_DEFAULT.find(x => x.name === filterClass);
|
|
1766
|
+
}
|
|
1767
|
+
if (notNullOrUndefined(filter)) {
|
|
1768
|
+
return new filter.class(prop, initialValue, column);
|
|
1769
|
+
}
|
|
1770
|
+
return null;
|
|
1771
|
+
}
|
|
1772
|
+
_getColumnsDataFilterType(column) {
|
|
1773
|
+
if (notNullOrUndefined(column.filterOptions) && notNullOrUndefined(column.filterOptions.filterType)) {
|
|
1774
|
+
return column.filterOptions.filterType;
|
|
1775
|
+
}
|
|
1776
|
+
else if (notNullOrUndefined(column.cellType)) {
|
|
1777
|
+
switch (column.cellType) {
|
|
1778
|
+
case 'string':
|
|
1779
|
+
case 'phone':
|
|
1780
|
+
return THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_NAME;
|
|
1781
|
+
case 'currency':
|
|
1782
|
+
case 'decimal':
|
|
1783
|
+
case 'integer':
|
|
1784
|
+
return THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_NAME;
|
|
1785
|
+
case 'date':
|
|
1786
|
+
return THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_NAME;
|
|
1787
|
+
}
|
|
1788
|
+
}
|
|
1789
|
+
return THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_NAME;
|
|
1790
|
+
}
|
|
1791
|
+
getColumnFilterProp(column) {
|
|
1792
|
+
if (isNullOrUndefined(column)) {
|
|
1793
|
+
return null;
|
|
1794
|
+
}
|
|
1795
|
+
const prop = column.filterOptions?.filterProp || column.prop || (notNullOrUndefined(column.name) ? camelCase(column.name) : undefined);
|
|
1796
|
+
if (isNullOrUndefined(prop)) {
|
|
1797
|
+
return null;
|
|
1798
|
+
}
|
|
1799
|
+
return `${prop}`;
|
|
1800
|
+
}
|
|
1801
|
+
getColumnFilter(prop) {
|
|
1802
|
+
if (isNullOrUndefined(prop)) {
|
|
1803
|
+
return undefined;
|
|
1804
|
+
}
|
|
1805
|
+
return this._columnsFilters.value.find(f => f.prop === prop);
|
|
1806
|
+
}
|
|
1807
|
+
filters() {
|
|
1808
|
+
return this._columnsFilters.value;
|
|
1809
|
+
}
|
|
1810
|
+
addFilter(filter) {
|
|
1811
|
+
this._columnsFilters.next([...this._columnsFilters.value, filter]);
|
|
1812
|
+
}
|
|
1813
|
+
removeFilter(filter) {
|
|
1814
|
+
this._columnsFilters.next([...this._columnsFilters.value.filter(c => c.name !== filter.name)]);
|
|
1815
|
+
}
|
|
1816
|
+
}
|
|
1817
|
+
ColumnsFiltersService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsFiltersService, deps: [{ token: THESEAM_COLUMNS_DATA_FILTER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1818
|
+
ColumnsFiltersService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsFiltersService });
|
|
1819
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnsFiltersService, decorators: [{
|
|
1820
|
+
type: Injectable
|
|
1821
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1822
|
+
type: Optional
|
|
1823
|
+
}, {
|
|
1824
|
+
type: Inject,
|
|
1825
|
+
args: [THESEAM_COLUMNS_DATA_FILTER]
|
|
1826
|
+
}] }]; } });
|
|
1827
|
+
|
|
1828
|
+
const THESEAM_DATATABLE_CONFIG = new InjectionToken('TheSeamDatatableConfig');
|
|
1829
|
+
|
|
1830
|
+
class DatatableColumnFilterTplDirective {
|
|
1831
|
+
constructor(template) {
|
|
1832
|
+
this.template = template;
|
|
1833
|
+
}
|
|
1834
|
+
}
|
|
1835
|
+
DatatableColumnFilterTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1836
|
+
DatatableColumnFilterTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnFilterTplDirective, selector: "[seamDatatableColumnFilterTpl]", ngImport: i0 });
|
|
1837
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterTplDirective, decorators: [{
|
|
1838
|
+
type: Directive,
|
|
1839
|
+
args: [{
|
|
1840
|
+
selector: '[seamDatatableColumnFilterTpl]'
|
|
1841
|
+
}]
|
|
1842
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
1843
|
+
|
|
1844
|
+
class TheSeamDatatableColumnFilterDirective {
|
|
1845
|
+
get template() {
|
|
1846
|
+
return this._templateInput || this._templateQuery;
|
|
1847
|
+
}
|
|
1848
|
+
}
|
|
1849
|
+
TheSeamDatatableColumnFilterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableColumnFilterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1850
|
+
TheSeamDatatableColumnFilterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamDatatableColumnFilterDirective, selector: "seam-datatable-column-filter", inputs: { filterName: "filterName", _templateInput: ["template", "_templateInput"] }, queries: [{ propertyName: "_templateQuery", first: true, predicate: DatatableColumnFilterTplDirective, descendants: true, read: TemplateRef, static: true }], ngImport: i0 });
|
|
1851
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableColumnFilterDirective, decorators: [{
|
|
1852
|
+
type: Directive,
|
|
1853
|
+
args: [{
|
|
1854
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
1855
|
+
selector: 'seam-datatable-column-filter'
|
|
1856
|
+
}]
|
|
1857
|
+
}], propDecorators: { filterName: [{
|
|
1858
|
+
type: Input
|
|
1859
|
+
}], _templateInput: [{
|
|
1860
|
+
type: Input,
|
|
1861
|
+
args: ['template']
|
|
1862
|
+
}], _templateQuery: [{
|
|
1863
|
+
type: ContentChild,
|
|
1864
|
+
args: [DatatableColumnFilterTplDirective, { read: TemplateRef, static: true }]
|
|
1865
|
+
}] } });
|
|
1866
|
+
|
|
1300
1867
|
const CURRENT_DATATABLE_PREFERENCES_VERSION = 2;
|
|
1301
1868
|
const EMPTY_DATATABLE_PREFERENCES = {
|
|
1302
1869
|
version: 2,
|
|
@@ -1378,9 +1945,9 @@ class DatatablePreferencesService {
|
|
|
1378
1945
|
return prefs.version === CURRENT_DATATABLE_PREFERENCES_VERSION;
|
|
1379
1946
|
}
|
|
1380
1947
|
}
|
|
1381
|
-
DatatablePreferencesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
1382
|
-
DatatablePreferencesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
1383
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
1948
|
+
DatatablePreferencesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatablePreferencesService, deps: [{ token: i1$1.TheSeamPreferencesManagerService }, { token: THESEAM_DATATABLE_PREFERENCES_ACCESSOR, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1949
|
+
DatatablePreferencesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatablePreferencesService, providedIn: 'root' });
|
|
1950
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatablePreferencesService, decorators: [{
|
|
1384
1951
|
type: Injectable,
|
|
1385
1952
|
args: [{
|
|
1386
1953
|
providedIn: 'root'
|
|
@@ -1392,6 +1959,163 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
1392
1959
|
args: [THESEAM_DATATABLE_PREFERENCES_ACCESSOR]
|
|
1393
1960
|
}] }]; } });
|
|
1394
1961
|
|
|
1962
|
+
class DatatableColumnFilterSearchTextComponent {
|
|
1963
|
+
constructor() {
|
|
1964
|
+
this.searchTypes = [
|
|
1965
|
+
{ label: 'Contains', value: 'contains' },
|
|
1966
|
+
{ label: 'Does not contain', value: 'ncontains' },
|
|
1967
|
+
{ label: 'Matches exactly', value: 'eq' },
|
|
1968
|
+
{ label: 'Does not match exactly', value: 'neq' },
|
|
1969
|
+
{ label: 'Is blank', value: 'blank' },
|
|
1970
|
+
{ label: 'Is not blank', value: 'not-blank' },
|
|
1971
|
+
];
|
|
1972
|
+
}
|
|
1973
|
+
ngOnInit() {
|
|
1974
|
+
this.showTextbox$ = this.filterForm?.controls.searchType.valueChanges.pipe(startWith$1(this.filterForm?.controls.searchType.value), map$1(value => THESEAM_COLUMNS_DATA_FILTER_TEXT_TEXT_SEARCH_TYPES.includes(value || '')));
|
|
1975
|
+
}
|
|
1976
|
+
}
|
|
1977
|
+
DatatableColumnFilterSearchTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterSearchTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1978
|
+
DatatableColumnFilterSearchTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnFilterSearchTextComponent, selector: "seam-datatable-column-filter-search-text", inputs: { filterForm: "filterForm" }, ngImport: i0, template: "<ng-container *ngIf=\"filterForm\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <ng-select\n seamInput\n seamAutoFocus\n formControlName=\"searchType\"\n [clearable]=\"false\"\n placeholder=\"Select search type\"\n bindValue=\"value\"\n [items]=\"searchTypes\"></ng-select>\n </seam-form-field>\n <ng-container *ngIf=\"showTextbox$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"searchText\" placeholder=\"Type to search\" seamAutoFocus>\n </seam-form-field>\n <!-- TODO: implement this? Does not work with current Seam GraphQL/SQL Server implementation. -->\n <!-- <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <seam-checkbox seamInput formControlName=\"caseSensitive\">Case Sensitive</seam-checkbox>\n </seam-form-field> -->\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$2.AutoFocusDirective, selector: "[seamAutoFocus]", inputs: ["seamAutoFocus"], exportAs: ["seamAutoFocus"] }, { kind: "directive", type: i2$2.NgSelectExtraDirective, selector: "ng-select" }, { kind: "component", type: i3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput], seam-rich-text[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5$1.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }], viewProviders: [
|
|
1979
|
+
{
|
|
1980
|
+
provide: ControlContainer,
|
|
1981
|
+
useExisting: FormGroupDirective
|
|
1982
|
+
}
|
|
1983
|
+
] });
|
|
1984
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterSearchTextComponent, decorators: [{
|
|
1985
|
+
type: Component,
|
|
1986
|
+
args: [{ selector: 'seam-datatable-column-filter-search-text', viewProviders: [
|
|
1987
|
+
{
|
|
1988
|
+
provide: ControlContainer,
|
|
1989
|
+
useExisting: FormGroupDirective
|
|
1990
|
+
}
|
|
1991
|
+
], template: "<ng-container *ngIf=\"filterForm\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <ng-select\n seamInput\n seamAutoFocus\n formControlName=\"searchType\"\n [clearable]=\"false\"\n placeholder=\"Select search type\"\n bindValue=\"value\"\n [items]=\"searchTypes\"></ng-select>\n </seam-form-field>\n <ng-container *ngIf=\"showTextbox$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"searchText\" placeholder=\"Type to search\" seamAutoFocus>\n </seam-form-field>\n <!-- TODO: implement this? Does not work with current Seam GraphQL/SQL Server implementation. -->\n <!-- <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <seam-checkbox seamInput formControlName=\"caseSensitive\">Case Sensitive</seam-checkbox>\n </seam-form-field> -->\n </ng-container>\n</ng-container>\n" }]
|
|
1992
|
+
}], propDecorators: { filterForm: [{
|
|
1993
|
+
type: Input
|
|
1994
|
+
}] } });
|
|
1995
|
+
|
|
1996
|
+
class DatatableColumnFilterSearchNumericComponent {
|
|
1997
|
+
constructor() {
|
|
1998
|
+
this.searchTypes = [
|
|
1999
|
+
{ label: 'Less than (<)', value: 'lt' },
|
|
2000
|
+
{ label: 'Less than or equal to (<=)', value: 'lte' },
|
|
2001
|
+
{ label: 'Equal to (=)', value: 'eq' },
|
|
2002
|
+
{ label: 'Greater than (>)', value: 'gt' },
|
|
2003
|
+
{ label: 'Greater than or equal to (>=)', value: 'gte' },
|
|
2004
|
+
{ label: 'Between', value: 'between' },
|
|
2005
|
+
{ label: 'Not between', value: 'not-between' },
|
|
2006
|
+
{ label: 'Blank', value: 'blank' },
|
|
2007
|
+
{ label: 'Not blank', value: 'not-blank' },
|
|
2008
|
+
];
|
|
2009
|
+
}
|
|
2010
|
+
ngOnInit() {
|
|
2011
|
+
this.showSearchInput$ = this.filterForm?.controls.searchType.valueChanges.pipe(startWith$1(this.filterForm?.controls.searchType.value), map$1(searchType => THESEAM_COLUMNS_DATA_FILTER_NUMERIC_TEXT_SEARCH_TYPES.includes(searchType || '')));
|
|
2012
|
+
this.showRangeInputs$ = this.filterForm?.controls.searchType.valueChanges.pipe(startWith$1(this.filterForm?.controls.searchType.value), map$1(searchType => THESEAM_COLUMNS_DATA_FILTER_NUMERIC_RANGE_SEARCH_TYPES.includes(searchType || '')));
|
|
2013
|
+
}
|
|
2014
|
+
}
|
|
2015
|
+
DatatableColumnFilterSearchNumericComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterSearchNumericComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2016
|
+
DatatableColumnFilterSearchNumericComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnFilterSearchNumericComponent, selector: "seam-datatable-column-filter-search-numeric", inputs: { filterForm: "filterForm" }, ngImport: i0, template: "<ng-container *ngIf=\"filterForm\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <ng-select\n seamInput\n formControlName=\"searchType\"\n [clearable]=\"false\"\n placeholder=\"Select search type\"\n bindValue=\"value\"\n [items]=\"searchTypes\"></ng-select>\n </seam-form-field>\n\n <ng-container *ngIf=\"showSearchInput$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"searchText\" placeholder=\"Type to search\" seamAutoFocus>\n </seam-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"showRangeInputs$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"fromText\" placeholder=\"Range Start\" seamAutoFocus>\n </seam-form-field>\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"toText\" placeholder=\"Range End\">\n </seam-form-field>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$2.AutoFocusDirective, selector: "[seamAutoFocus]", inputs: ["seamAutoFocus"], exportAs: ["seamAutoFocus"] }, { kind: "directive", type: i2$2.NgSelectExtraDirective, selector: "ng-select" }, { kind: "component", type: i3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput], seam-rich-text[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5$1.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }], viewProviders: [
|
|
2017
|
+
{
|
|
2018
|
+
provide: ControlContainer,
|
|
2019
|
+
useExisting: FormGroupDirective
|
|
2020
|
+
}
|
|
2021
|
+
] });
|
|
2022
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterSearchNumericComponent, decorators: [{
|
|
2023
|
+
type: Component,
|
|
2024
|
+
args: [{ selector: 'seam-datatable-column-filter-search-numeric', viewProviders: [
|
|
2025
|
+
{
|
|
2026
|
+
provide: ControlContainer,
|
|
2027
|
+
useExisting: FormGroupDirective
|
|
2028
|
+
}
|
|
2029
|
+
], template: "<ng-container *ngIf=\"filterForm\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <ng-select\n seamInput\n formControlName=\"searchType\"\n [clearable]=\"false\"\n placeholder=\"Select search type\"\n bindValue=\"value\"\n [items]=\"searchTypes\"></ng-select>\n </seam-form-field>\n\n <ng-container *ngIf=\"showSearchInput$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"searchText\" placeholder=\"Type to search\" seamAutoFocus>\n </seam-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"showRangeInputs$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"fromText\" placeholder=\"Range Start\" seamAutoFocus>\n </seam-form-field>\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput formControlName=\"toText\" placeholder=\"Range End\">\n </seam-form-field>\n </ng-container>\n</ng-container>\n" }]
|
|
2030
|
+
}], propDecorators: { filterForm: [{
|
|
2031
|
+
type: Input
|
|
2032
|
+
}] } });
|
|
2033
|
+
|
|
2034
|
+
class DatatableColumnFilterSearchDateComponent {
|
|
2035
|
+
constructor() {
|
|
2036
|
+
this.searchTypes = [
|
|
2037
|
+
{ label: 'Before', value: 'lt' },
|
|
2038
|
+
{ label: 'Before or on', value: 'lte' },
|
|
2039
|
+
{ label: 'On', value: 'eq' },
|
|
2040
|
+
{ label: 'After', value: 'gt' },
|
|
2041
|
+
{ label: 'After or on', value: 'gte' },
|
|
2042
|
+
{ label: 'Between', value: 'between' },
|
|
2043
|
+
{ label: 'Not between', value: 'not-between' },
|
|
2044
|
+
{ label: 'Blank', value: 'blank' },
|
|
2045
|
+
{ label: 'Not blank', value: 'not-blank' },
|
|
2046
|
+
];
|
|
2047
|
+
}
|
|
2048
|
+
ngOnInit() {
|
|
2049
|
+
if (notNullOrUndefined(this.options?.dateType)) {
|
|
2050
|
+
this.dateFormat = this.options?.dateType;
|
|
2051
|
+
}
|
|
2052
|
+
this.showSearchInput$ = this.filterForm?.controls.searchType.valueChanges.pipe(startWith$1(this.filterForm?.controls.searchType.value), map$1(searchType => THESEAM_COLUMNS_DATA_FILTER_DATE_TEXT_SEARCH_TYPES.includes(searchType || '')));
|
|
2053
|
+
this.showRangeInputs$ = this.filterForm?.controls.searchType.valueChanges.pipe(startWith$1(this.filterForm?.controls.searchType.value), map$1(searchType => THESEAM_COLUMNS_DATA_FILTER_DATE_RANGE_SEARCH_TYPES.includes(searchType || '')));
|
|
2054
|
+
}
|
|
2055
|
+
}
|
|
2056
|
+
DatatableColumnFilterSearchDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterSearchDateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2057
|
+
DatatableColumnFilterSearchDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnFilterSearchDateComponent, selector: "seam-datatable-column-filter-search-date", inputs: { options: "options", filterForm: "filterForm" }, ngImport: i0, template: "<ng-container *ngIf=\"filterForm\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <ng-select\n seamInput\n formControlName=\"searchType\"\n [clearable]=\"false\"\n placeholder=\"Select search type\"\n bindValue=\"value\"\n [items]=\"searchTypes\"></ng-select>\n </seam-form-field>\n\n <ng-container *ngIf=\"showSearchInput$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput [type]=\"dateFormat\" formControlName=\"searchText\" placeholder=\"Type to search\" seamAutoFocus>\n </seam-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"showRangeInputs$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput [type]=\"dateFormat\" formControlName=\"fromText\" placeholder=\"Range Start\" seamAutoFocus>\n </seam-form-field>\n\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput [type]=\"dateFormat\" formControlName=\"toText\" placeholder=\"Range End\">\n </seam-form-field>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$2.AutoFocusDirective, selector: "[seamAutoFocus]", inputs: ["seamAutoFocus"], exportAs: ["seamAutoFocus"] }, { kind: "directive", type: i2$2.NgSelectExtraDirective, selector: "ng-select" }, { kind: "component", type: i3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput], seam-rich-text[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5$1.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }], viewProviders: [
|
|
2058
|
+
{
|
|
2059
|
+
provide: ControlContainer,
|
|
2060
|
+
useExisting: FormGroupDirective
|
|
2061
|
+
}
|
|
2062
|
+
] });
|
|
2063
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterSearchDateComponent, decorators: [{
|
|
2064
|
+
type: Component,
|
|
2065
|
+
args: [{ selector: 'seam-datatable-column-filter-search-date', viewProviders: [
|
|
2066
|
+
{
|
|
2067
|
+
provide: ControlContainer,
|
|
2068
|
+
useExisting: FormGroupDirective
|
|
2069
|
+
}
|
|
2070
|
+
], template: "<ng-container *ngIf=\"filterForm\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <ng-select\n seamInput\n formControlName=\"searchType\"\n [clearable]=\"false\"\n placeholder=\"Select search type\"\n bindValue=\"value\"\n [items]=\"searchTypes\"></ng-select>\n </seam-form-field>\n\n <ng-container *ngIf=\"showSearchInput$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput [type]=\"dateFormat\" formControlName=\"searchText\" placeholder=\"Type to search\" seamAutoFocus>\n </seam-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"showRangeInputs$ | async\">\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput [type]=\"dateFormat\" formControlName=\"fromText\" placeholder=\"Range Start\" seamAutoFocus>\n </seam-form-field>\n\n <seam-form-field [numPaddingErrors]=\"0\" class=\"mb-2\">\n <input seamInput [type]=\"dateFormat\" formControlName=\"toText\" placeholder=\"Range End\">\n </seam-form-field>\n </ng-container>\n</ng-container>\n" }]
|
|
2071
|
+
}], propDecorators: { options: [{
|
|
2072
|
+
type: Input
|
|
2073
|
+
}], filterForm: [{
|
|
2074
|
+
type: Input
|
|
2075
|
+
}] } });
|
|
2076
|
+
|
|
2077
|
+
class DatatableColumnFilterMenuComponent {
|
|
2078
|
+
constructor(_columnsFilters) {
|
|
2079
|
+
this._columnsFilters = _columnsFilters;
|
|
2080
|
+
this.closePopover = new EventEmitter();
|
|
2081
|
+
}
|
|
2082
|
+
ngOnInit() {
|
|
2083
|
+
this.columnFilterProp = this._columnsFilters.getColumnFilterProp(this.column);
|
|
2084
|
+
this.columnFilter = this._columnsFilters.getColumnFilter(this.columnFilterProp);
|
|
2085
|
+
if (notNullOrUndefined(this.columnFilter)) {
|
|
2086
|
+
this._filterForm = this.columnFilter.form;
|
|
2087
|
+
}
|
|
2088
|
+
this.customFilterTemplate$ = this._columnsFilters.columnFilterTemplates$.pipe(map$1(templates => templates.find(t => t.filterName === this.columnFilter?.name)));
|
|
2089
|
+
if (this.updateMethod === 'valueChanges' && notNullOrUndefined(this._filterForm)) {
|
|
2090
|
+
this._filterForm.valueChanges.pipe(debounceTime(this.debounce || 0), tap$1(() => this.columnFilter?.applyFilter())).subscribe();
|
|
2091
|
+
}
|
|
2092
|
+
}
|
|
2093
|
+
submit() {
|
|
2094
|
+
this.columnFilter?.applyFilter();
|
|
2095
|
+
this.closePopover.emit();
|
|
2096
|
+
}
|
|
2097
|
+
clearFilter() {
|
|
2098
|
+
this.columnFilter?.clearFilter();
|
|
2099
|
+
}
|
|
2100
|
+
}
|
|
2101
|
+
DatatableColumnFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterMenuComponent, deps: [{ token: ColumnsFiltersService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2102
|
+
DatatableColumnFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnFilterMenuComponent, selector: "seam-datatable-column-filter-menu", inputs: { column: "column", updateMethod: "updateMethod", debounce: "debounce" }, outputs: { closePopover: "closePopover" }, ngImport: i0, template: "<ng-container *ngIf=\"_filterForm && columnFilter\">\n <form [formGroup]=\"_filterForm\" (ngSubmit)=\"submit()\">\n <ng-container [ngSwitch]=\"columnFilter.name\">\n <div *ngSwitchCase=\"'search-text'\">\n <seam-datatable-column-filter-search-text [filterForm]=\"_filterForm\"></seam-datatable-column-filter-search-text>\n </div>\n <div *ngSwitchCase=\"'search-numeric'\">\n <seam-datatable-column-filter-search-numeric [filterForm]=\"_filterForm\"></seam-datatable-column-filter-search-numeric>\n </div>\n <div *ngSwitchCase=\"'search-date'\">\n <seam-datatable-column-filter-search-date [filterForm]=\"_filterForm\" [options]=\"columnFilter.options\"></seam-datatable-column-filter-search-date>\n </div>\n <div *ngSwitchDefault>\n <ng-container *ngIf=\"customFilterTemplate$ | async as filterTpl\">\n <ng-container *ngIf=\"filterTpl.template\">\n <ng-container\n [ngTemplateOutlet]=\"filterTpl.template\"\n [ngTemplateOutletContext]=\"{ $implicit: _filterForm, filterForm: _filterForm, options: columnFilter.options, column: column, columnFilter: columnFilter }\">\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\n\n <hr class=\"mb-1\">\n <div class=\"d-flex align-items-center\" [class.justify-content-between]=\"updateMethod === 'submit'\" [class.text-right]=\"updateMethod === 'valueChanges'\">\n <button seamButton size=\"sm\" class=\"text-primary p-0\" (click)=\"clearFilter()\" [disabled]=\"columnFilter?.isDefault() === true\">Clear</button>\n <button\n *ngIf=\"updateMethod === 'submit'\"\n seamButton\n size=\"sm\"\n class=\"text-primary p-0\"\n type=\"submit\"\n [disabled]=\"columnFilter?.isDefault() === true\">\n Apply\n </button>\n </div>\n </form>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i3$1.TheSeamButtonComponent, selector: "button[seamButton]", inputs: ["disabled", "theme", "size", "type"], exportAs: ["seamButton"] }, { kind: "directive", type: i4$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DatatableColumnFilterSearchTextComponent, selector: "seam-datatable-column-filter-search-text", inputs: ["filterForm"] }, { kind: "component", type: DatatableColumnFilterSearchNumericComponent, selector: "seam-datatable-column-filter-search-numeric", inputs: ["filterForm"] }, { kind: "component", type: DatatableColumnFilterSearchDateComponent, selector: "seam-datatable-column-filter-search-date", inputs: ["options", "filterForm"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }] });
|
|
2103
|
+
__decorate([
|
|
2104
|
+
InputNumber()
|
|
2105
|
+
], DatatableColumnFilterMenuComponent.prototype, "debounce", void 0);
|
|
2106
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnFilterMenuComponent, decorators: [{
|
|
2107
|
+
type: Component,
|
|
2108
|
+
args: [{ selector: 'seam-datatable-column-filter-menu', template: "<ng-container *ngIf=\"_filterForm && columnFilter\">\n <form [formGroup]=\"_filterForm\" (ngSubmit)=\"submit()\">\n <ng-container [ngSwitch]=\"columnFilter.name\">\n <div *ngSwitchCase=\"'search-text'\">\n <seam-datatable-column-filter-search-text [filterForm]=\"_filterForm\"></seam-datatable-column-filter-search-text>\n </div>\n <div *ngSwitchCase=\"'search-numeric'\">\n <seam-datatable-column-filter-search-numeric [filterForm]=\"_filterForm\"></seam-datatable-column-filter-search-numeric>\n </div>\n <div *ngSwitchCase=\"'search-date'\">\n <seam-datatable-column-filter-search-date [filterForm]=\"_filterForm\" [options]=\"columnFilter.options\"></seam-datatable-column-filter-search-date>\n </div>\n <div *ngSwitchDefault>\n <ng-container *ngIf=\"customFilterTemplate$ | async as filterTpl\">\n <ng-container *ngIf=\"filterTpl.template\">\n <ng-container\n [ngTemplateOutlet]=\"filterTpl.template\"\n [ngTemplateOutletContext]=\"{ $implicit: _filterForm, filterForm: _filterForm, options: columnFilter.options, column: column, columnFilter: columnFilter }\">\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\n\n <hr class=\"mb-1\">\n <div class=\"d-flex align-items-center\" [class.justify-content-between]=\"updateMethod === 'submit'\" [class.text-right]=\"updateMethod === 'valueChanges'\">\n <button seamButton size=\"sm\" class=\"text-primary p-0\" (click)=\"clearFilter()\" [disabled]=\"columnFilter?.isDefault() === true\">Clear</button>\n <button\n *ngIf=\"updateMethod === 'submit'\"\n seamButton\n size=\"sm\"\n class=\"text-primary p-0\"\n type=\"submit\"\n [disabled]=\"columnFilter?.isDefault() === true\">\n Apply\n </button>\n </div>\n </form>\n</ng-container>\n" }]
|
|
2109
|
+
}], ctorParameters: function () { return [{ type: ColumnsFiltersService }]; }, propDecorators: { column: [{
|
|
2110
|
+
type: Input
|
|
2111
|
+
}], updateMethod: [{
|
|
2112
|
+
type: Input
|
|
2113
|
+
}], debounce: [{
|
|
2114
|
+
type: Input
|
|
2115
|
+
}], closePopover: [{
|
|
2116
|
+
type: Output
|
|
2117
|
+
}] } });
|
|
2118
|
+
|
|
1395
2119
|
/**
|
|
1396
2120
|
* Intended for internal classes declared by the `TheSeamDatatableModule`.
|
|
1397
2121
|
*/
|
|
@@ -1407,11 +2131,17 @@ const _THESEAM_DATATABLE_ACCESSOR = {
|
|
|
1407
2131
|
useExisting: forwardRef(() => DatatableComponent)
|
|
1408
2132
|
};
|
|
1409
2133
|
class DatatableComponent {
|
|
1410
|
-
get filters() {
|
|
2134
|
+
get filters() {
|
|
2135
|
+
return [
|
|
2136
|
+
...this._menuBarsFiltersSubject.value,
|
|
2137
|
+
...this._columnsFilters.filters()
|
|
2138
|
+
];
|
|
2139
|
+
}
|
|
1411
2140
|
get preferencesKey() { return this._preferencesKey.value; }
|
|
1412
2141
|
set preferencesKey(value) { this._preferencesKey.next(value || undefined); }
|
|
1413
2142
|
set columns(value) {
|
|
1414
2143
|
this._columnsManager.setInputColumns(Array.isArray(value) ? value : []);
|
|
2144
|
+
this._columnsFilters.registerColumnFilters(Array.isArray(value) ? value : []);
|
|
1415
2145
|
}
|
|
1416
2146
|
get rows() { return this._rows.value; }
|
|
1417
2147
|
set rows(value) {
|
|
@@ -1436,12 +2166,145 @@ class DatatableComponent {
|
|
|
1436
2166
|
set sorts(value) {
|
|
1437
2167
|
this._sorts = notNullOrUndefined(value) ? coerceArray(value) : [];
|
|
1438
2168
|
}
|
|
2169
|
+
get cssClasses() {
|
|
2170
|
+
return this._cssClasses;
|
|
2171
|
+
}
|
|
2172
|
+
set cssClasses(value) {
|
|
2173
|
+
if (notNullOrUndefined(value)) {
|
|
2174
|
+
this._cssClasses = value;
|
|
2175
|
+
}
|
|
2176
|
+
else if (notNullOrUndefined(this._config?.cssClasses)) {
|
|
2177
|
+
this._cssClasses = this._config?.cssClasses;
|
|
2178
|
+
}
|
|
2179
|
+
else {
|
|
2180
|
+
this._cssClasses = this._cssClassesDefault;
|
|
2181
|
+
}
|
|
2182
|
+
}
|
|
2183
|
+
get messages() {
|
|
2184
|
+
return this._messages;
|
|
2185
|
+
}
|
|
2186
|
+
set messages(value) {
|
|
2187
|
+
if (notNullOrUndefined(value)) {
|
|
2188
|
+
this._messages = value;
|
|
2189
|
+
}
|
|
2190
|
+
else if (notNullOrUndefined(this._config?.messages)) {
|
|
2191
|
+
this._messages = {
|
|
2192
|
+
...this._messagesDefault,
|
|
2193
|
+
...this._config?.messages
|
|
2194
|
+
};
|
|
2195
|
+
}
|
|
2196
|
+
else {
|
|
2197
|
+
this._messages = this._messagesDefault;
|
|
2198
|
+
}
|
|
2199
|
+
}
|
|
2200
|
+
get headerHeight() {
|
|
2201
|
+
return this._headerHeight;
|
|
2202
|
+
}
|
|
2203
|
+
set headerHeight(value) {
|
|
2204
|
+
if (notNullOrUndefined(value)) {
|
|
2205
|
+
this._headerHeight = value;
|
|
2206
|
+
}
|
|
2207
|
+
else if (notNullOrUndefined(this._config?.headerHeight)) {
|
|
2208
|
+
this._headerHeight = this._config?.headerHeight;
|
|
2209
|
+
}
|
|
2210
|
+
else {
|
|
2211
|
+
this._headerHeight = this._headerHeightDefault;
|
|
2212
|
+
}
|
|
2213
|
+
}
|
|
2214
|
+
get rowHeight() {
|
|
2215
|
+
return this._rowHeight;
|
|
2216
|
+
}
|
|
2217
|
+
set rowHeight(value) {
|
|
2218
|
+
if (notNullOrUndefined(value)) {
|
|
2219
|
+
this._rowHeight = value;
|
|
2220
|
+
}
|
|
2221
|
+
else if (notNullOrUndefined(this._config?.rowHeight)) {
|
|
2222
|
+
this._rowHeight = this._config?.rowHeight;
|
|
2223
|
+
}
|
|
2224
|
+
else {
|
|
2225
|
+
this._rowHeight = this._rowHeightDefault;
|
|
2226
|
+
}
|
|
2227
|
+
}
|
|
2228
|
+
get footerHeight() {
|
|
2229
|
+
return this._footerHeight;
|
|
2230
|
+
}
|
|
2231
|
+
set footerHeight(value) {
|
|
2232
|
+
if (notNullOrUndefined(value)) {
|
|
2233
|
+
this._footerHeight = value;
|
|
2234
|
+
}
|
|
2235
|
+
else if (notNullOrUndefined(this._config?.footerHeight)) {
|
|
2236
|
+
this._footerHeight = this._config?.footerHeight;
|
|
2237
|
+
}
|
|
2238
|
+
else {
|
|
2239
|
+
this._footerHeight = this._footerHeightDefault;
|
|
2240
|
+
}
|
|
2241
|
+
}
|
|
1439
2242
|
set dataSource(value) {
|
|
1440
2243
|
if (value instanceof DatatableDataSource) {
|
|
1441
2244
|
value.setDatatableAccessor(this);
|
|
1442
2245
|
}
|
|
1443
2246
|
this._dataSourceSubject.next(value || undefined);
|
|
1444
2247
|
}
|
|
2248
|
+
/**
|
|
2249
|
+
* Sets position behavior for optional Action Menu Button column.
|
|
2250
|
+
*
|
|
2251
|
+
* Defaults to `frozenRight`.
|
|
2252
|
+
*/
|
|
2253
|
+
get actionItemColumnPosition() { return this._actionItemColumnPosition; }
|
|
2254
|
+
set actionItemColumnPosition(value) {
|
|
2255
|
+
if (notNullOrUndefined(value) && isActionItemColumnPosition(value)) {
|
|
2256
|
+
this._actionItemColumnPosition = value;
|
|
2257
|
+
}
|
|
2258
|
+
else if (notNullOrUndefined(this._config?.actionItemColumnPosition) && isActionItemColumnPosition(this._config?.actionItemColumnPosition)) {
|
|
2259
|
+
this._actionItemColumnPosition = this._config?.actionItemColumnPosition;
|
|
2260
|
+
}
|
|
2261
|
+
else {
|
|
2262
|
+
this._actionItemColumnPosition = this._actionItemColumnPositionDefault;
|
|
2263
|
+
}
|
|
2264
|
+
this._columnsManager.setActionItemColumnPosition(this._actionItemColumnPosition);
|
|
2265
|
+
}
|
|
2266
|
+
get columnFilterIcon() {
|
|
2267
|
+
return this._columnFilterIcon;
|
|
2268
|
+
}
|
|
2269
|
+
set columnFilterIcon(value) {
|
|
2270
|
+
if (notNullOrUndefined(value)) {
|
|
2271
|
+
this._columnFilterIcon = value;
|
|
2272
|
+
}
|
|
2273
|
+
else if (notNullOrUndefined(this._config?.columnFilterIcon)) {
|
|
2274
|
+
this._columnFilterIcon = this._config?.columnFilterIcon;
|
|
2275
|
+
}
|
|
2276
|
+
else {
|
|
2277
|
+
this._columnFilterIcon = this._columnFilterIconDefault;
|
|
2278
|
+
}
|
|
2279
|
+
}
|
|
2280
|
+
get columnFilterUpdateMethod() {
|
|
2281
|
+
return this._columnFilterUpdateMethod;
|
|
2282
|
+
}
|
|
2283
|
+
set columnFilterUpdateMethod(value) {
|
|
2284
|
+
if (notNullOrUndefined(value)) {
|
|
2285
|
+
this._columnFilterUpdateMethod = value;
|
|
2286
|
+
}
|
|
2287
|
+
else if (notNullOrUndefined(this._config?.columnFilterUpdateMethod)) {
|
|
2288
|
+
this._columnFilterUpdateMethod = this._config?.columnFilterUpdateMethod;
|
|
2289
|
+
}
|
|
2290
|
+
else {
|
|
2291
|
+
this._columnFilterUpdateMethod = this._columnFilterUpdateMethodDefault;
|
|
2292
|
+
}
|
|
2293
|
+
}
|
|
2294
|
+
get columnFilterUpdateDebounce() {
|
|
2295
|
+
return this._columnFilterUpdateDebounce;
|
|
2296
|
+
}
|
|
2297
|
+
set columnFilterUpdateDebounce(value) {
|
|
2298
|
+
if (notNullOrUndefined(value)) {
|
|
2299
|
+
this._columnFilterUpdateDebounce = value;
|
|
2300
|
+
}
|
|
2301
|
+
else if (notNullOrUndefined(this._config?.columnFilterUpdateDebounce)) {
|
|
2302
|
+
this._columnFilterUpdateDebounce = this._config?.columnFilterUpdateDebounce;
|
|
2303
|
+
}
|
|
2304
|
+
else {
|
|
2305
|
+
this._columnFilterUpdateDebounce = this._columnFilterUpdateDebounceDefault;
|
|
2306
|
+
}
|
|
2307
|
+
}
|
|
1445
2308
|
set columnComponents(value) {
|
|
1446
2309
|
this._columnsManager.setTemplateColumns(translateTemplateColumns(value?.toArray() ?? []));
|
|
1447
2310
|
}
|
|
@@ -1462,6 +2325,9 @@ class DatatableComponent {
|
|
|
1462
2325
|
.subscribe(v => { this._setMenuBarFilters(value.filters()); });
|
|
1463
2326
|
}
|
|
1464
2327
|
}
|
|
2328
|
+
set columnFilterTemplates(value) {
|
|
2329
|
+
this._columnsFilters.setFilterTemplates(value?.toArray() ?? []);
|
|
2330
|
+
}
|
|
1465
2331
|
get actionMenuCellTpl() { return this._actionMenuCellTpl; }
|
|
1466
2332
|
set actionMenuCellTpl(value) {
|
|
1467
2333
|
this._actionMenuCellTpl = value;
|
|
@@ -1511,15 +2377,17 @@ class DatatableComponent {
|
|
|
1511
2377
|
}
|
|
1512
2378
|
}
|
|
1513
2379
|
}
|
|
1514
|
-
constructor(_preferences, _columnsManager, _columnsAlterationsManager) {
|
|
2380
|
+
constructor(_preferences, _columnsManager, _columnsAlterationsManager, _columnsFilters, _config) {
|
|
1515
2381
|
this._preferences = _preferences;
|
|
1516
2382
|
this._columnsManager = _columnsManager;
|
|
1517
2383
|
this._columnsAlterationsManager = _columnsAlterationsManager;
|
|
2384
|
+
this._columnsFilters = _columnsFilters;
|
|
2385
|
+
this._config = _config;
|
|
1518
2386
|
this._faChevronDown = faChevronDown;
|
|
1519
2387
|
this._faChevronRight = faChevronRight;
|
|
1520
2388
|
this._faSpinner = faSpinner;
|
|
1521
2389
|
this._ngUnsubscribe = new Subject();
|
|
1522
|
-
this.
|
|
2390
|
+
this._menuBarsFiltersSubject = new BehaviorSubject([]);
|
|
1523
2391
|
this._dataSourceSubject = new BehaviorSubject(undefined);
|
|
1524
2392
|
this._resizing = {};
|
|
1525
2393
|
this._preferencesKey = new BehaviorSubject(undefined);
|
|
@@ -1536,7 +2404,7 @@ class DatatableComponent {
|
|
|
1536
2404
|
this.swapColumns = false;
|
|
1537
2405
|
this._sortType = SortType.single;
|
|
1538
2406
|
this._sorts = [];
|
|
1539
|
-
this.
|
|
2407
|
+
this._cssClassesDefault = {
|
|
1540
2408
|
sortAscending: 'datatable-icon-up',
|
|
1541
2409
|
sortDescending: 'datatable-icon-down',
|
|
1542
2410
|
pagerLeftArrow: 'datatable-icon-left',
|
|
@@ -1544,7 +2412,7 @@ class DatatableComponent {
|
|
|
1544
2412
|
pagerPrevious: 'datatable-icon-prev',
|
|
1545
2413
|
pagerNext: 'datatable-icon-skip'
|
|
1546
2414
|
};
|
|
1547
|
-
this.
|
|
2415
|
+
this._messagesDefault = {
|
|
1548
2416
|
// Message to show when array is presented
|
|
1549
2417
|
// but contains no values
|
|
1550
2418
|
emptyMessage: 'No records found',
|
|
@@ -1560,11 +2428,15 @@ class DatatableComponent {
|
|
|
1560
2428
|
this.summaryHeight = 30;
|
|
1561
2429
|
this.summaryPosition = 'top';
|
|
1562
2430
|
this.virtualization = true;
|
|
1563
|
-
this.
|
|
1564
|
-
this.
|
|
1565
|
-
this.
|
|
2431
|
+
this._headerHeightDefault = 50;
|
|
2432
|
+
this._rowHeightDefault = 50;
|
|
2433
|
+
this._footerHeightDefault = 40;
|
|
1566
2434
|
this.scrollbarV = true;
|
|
1567
2435
|
this.scrollbarH = true;
|
|
2436
|
+
this._actionItemColumnPositionDefault = 'frozenRight';
|
|
2437
|
+
this._columnFilterIconDefault = faFilter;
|
|
2438
|
+
this._columnFilterUpdateMethodDefault = 'valueChanges';
|
|
2439
|
+
this._columnFilterUpdateDebounceDefault = 400;
|
|
1568
2440
|
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
1569
2441
|
this.scroll = new EventEmitter();
|
|
1570
2442
|
this.activate = new EventEmitter();
|
|
@@ -1617,10 +2489,13 @@ class DatatableComponent {
|
|
|
1617
2489
|
this._columnsAlterationsManager.add(alterations);
|
|
1618
2490
|
}));
|
|
1619
2491
|
}), takeUntil(this._ngUnsubscribe)).subscribe();
|
|
1620
|
-
this.columns$ = this._columnsManager.columns
|
|
2492
|
+
this.columns$ = combineLatest([this._columnsManager.columns$, this._columnsFilters.columnActiveFilterProps$]).pipe(map(([columns, columnActiveFilterProps]) => columns.map(col => ({
|
|
2493
|
+
...col,
|
|
2494
|
+
filterActive: columnActiveFilterProps.includes(this._columnsFilters.getColumnFilterProp(col) || '')
|
|
2495
|
+
}))));
|
|
1621
2496
|
this.displayColumns$ = this.columns$.pipe(switchMap(cols => applyPrefs(cols)), map(cols => cols.filter(c => !c.hidden)), tap(v => removeUnusedDiffs(v, this._colDiffersInp, this._colDiffersTpl)));
|
|
1622
|
-
this.filters$ = this.
|
|
1623
|
-
this.filterStates = this.
|
|
2497
|
+
this.filters$ = combineLatest([this._menuBarsFiltersSubject.asObservable(), this._columnsFilters.columnsFilters$]).pipe(map(([menuFilters, columnsFilters]) => [...menuFilters, ...columnsFilters]));
|
|
2498
|
+
this.filterStates = this.filters$.pipe(switchMap(filters => composeDataFilterStates(filters)));
|
|
1624
2499
|
this.rows$ = this._dataSourceSubject.pipe(switchMap(dataSource => {
|
|
1625
2500
|
// console.log('dataSource', dataSource)
|
|
1626
2501
|
let dataStream;
|
|
@@ -1643,7 +2518,7 @@ class DatatableComponent {
|
|
|
1643
2518
|
}
|
|
1644
2519
|
if (!this.externalFiltering) {
|
|
1645
2520
|
// console.log('not using externalFiltering')
|
|
1646
|
-
dataStream = dataStream.pipe(switchMap(rows => this.
|
|
2521
|
+
dataStream = dataStream.pipe(switchMap(rows => this.filters$.pipe(
|
|
1647
2522
|
// tap(v => console.log('filters', v)),
|
|
1648
2523
|
concatMap(filters => of(rows).pipe(composeDataFilters(filters))))));
|
|
1649
2524
|
// dataStream = this._filtersSubject.pipe(
|
|
@@ -1667,12 +2542,43 @@ class DatatableComponent {
|
|
|
1667
2542
|
}
|
|
1668
2543
|
});
|
|
1669
2544
|
}
|
|
2545
|
+
this._setDatatableConfigOrDefault();
|
|
2546
|
+
}
|
|
2547
|
+
/** Sets missing inputs from config */
|
|
2548
|
+
_setDatatableConfigOrDefault() {
|
|
2549
|
+
if (isNullOrUndefined(this.messages)) {
|
|
2550
|
+
this.messages = undefined;
|
|
2551
|
+
}
|
|
2552
|
+
if (isNullOrUndefined(this.headerHeight)) {
|
|
2553
|
+
this.headerHeight = undefined;
|
|
2554
|
+
}
|
|
2555
|
+
if (isNullOrUndefined(this.rowHeight)) {
|
|
2556
|
+
this.rowHeight = undefined;
|
|
2557
|
+
}
|
|
2558
|
+
if (isNullOrUndefined(this.footerHeight)) {
|
|
2559
|
+
this.footerHeight = undefined;
|
|
2560
|
+
}
|
|
2561
|
+
if (isNullOrUndefined(this.cssClasses)) {
|
|
2562
|
+
this.cssClasses = undefined;
|
|
2563
|
+
}
|
|
2564
|
+
if (isNullOrUndefined(this.columnFilterIcon)) {
|
|
2565
|
+
this.columnFilterIcon = undefined;
|
|
2566
|
+
}
|
|
2567
|
+
if (isNullOrUndefined(this.columnFilterUpdateMethod)) {
|
|
2568
|
+
this.columnFilterUpdateMethod = undefined;
|
|
2569
|
+
}
|
|
2570
|
+
if (isNullOrUndefined(this.columnFilterUpdateDebounce)) {
|
|
2571
|
+
this.columnFilterUpdateDebounce = undefined;
|
|
2572
|
+
}
|
|
2573
|
+
if (isNullOrUndefined(this.actionItemColumnPosition)) {
|
|
2574
|
+
this.actionItemColumnPosition = undefined;
|
|
2575
|
+
}
|
|
1670
2576
|
}
|
|
1671
2577
|
ngOnDestroy() {
|
|
1672
2578
|
this._rowDetailToggleSubscription.unsubscribe();
|
|
1673
2579
|
}
|
|
1674
2580
|
_setMenuBarFilters(filters) {
|
|
1675
|
-
this.
|
|
2581
|
+
this._menuBarsFiltersSubject.next(filters || []);
|
|
1676
2582
|
}
|
|
1677
2583
|
getColumnComponent(propName) {
|
|
1678
2584
|
if (!this.columnComponents || this.columnComponents.length === 0) {
|
|
@@ -1776,14 +2682,15 @@ class DatatableComponent {
|
|
|
1776
2682
|
};
|
|
1777
2683
|
}
|
|
1778
2684
|
}
|
|
1779
|
-
DatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
1780
|
-
DatatableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2685
|
+
DatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableComponent, deps: [{ token: DatatablePreferencesService }, { token: ColumnsManagerService }, { token: ColumnsAlterationsManagerService }, { token: ColumnsFiltersService }, { token: THESEAM_DATATABLE_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
2686
|
+
DatatableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableComponent, selector: "seam-datatable", inputs: { preferencesKey: "preferencesKey", targetMarkerTemplate: "targetMarkerTemplate", columns: "columns", rows: "rows", columnMode: "columnMode", groupRowsBy: "groupRowsBy", groupedRows: "groupedRows", selected: "selected", externalPaging: "externalPaging", externalSorting: "externalSorting", externalFiltering: "externalFiltering", limit: "limit", count: "count", offset: "offset", loadingIndicator: "loadingIndicator", selectionType: "selectionType", reorderable: "reorderable", swapColumns: "swapColumns", sortType: "sortType", sorts: "sorts", cssClasses: "cssClasses", messages: "messages", rowIdentity: "rowIdentity", rowClass: "rowClass", selectCheck: "selectCheck", displayCheck: "displayCheck", groupExpansionDefault: "groupExpansionDefault", trackByProp: "trackByProp", selectAllRowsOnPage: "selectAllRowsOnPage", treeFromRelation: "treeFromRelation", treeToRelation: "treeToRelation", summaryRow: "summaryRow", summaryHeight: "summaryHeight", summaryPosition: "summaryPosition", virtualization: "virtualization", headerHeight: "headerHeight", rowHeight: "rowHeight", footerHeight: "footerHeight", scrollbarV: "scrollbarV", scrollbarH: "scrollbarH", dataSource: "dataSource", actionItemColumnPosition: "actionItemColumnPosition", columnFilterIcon: "columnFilterIcon", columnFilterUpdateMethod: "columnFilterUpdateMethod", columnFilterUpdateDebounce: "columnFilterUpdateDebounce" }, outputs: { scroll: "scroll", activate: "activate", select: "select", sort: "sort", page: "page", reorder: "reorder", resize: "resize", tableContextmenu: "tableContextmenu", treeAction: "treeAction", actionRefreshRequest: "actionRefreshRequest", hiddenColumnsChange: "hiddenColumnsChange" }, host: { listeners: { "dblclick": "_dblClick($event)" } }, providers: [
|
|
1781
2687
|
_THESEAM_DATATABLE,
|
|
1782
2688
|
DatatableColumnChangesService,
|
|
1783
2689
|
_THESEAM_DATATABLE_ACCESSOR,
|
|
1784
2690
|
ColumnsManagerService,
|
|
1785
2691
|
ColumnsAlterationsManagerService,
|
|
1786
|
-
], queries: [{ propertyName: "actionMenu", first: true, predicate: DatatableActionMenuComponent, descendants: true, static: true }, { propertyName: "rowActionItem", first: true, predicate: DatatableRowActionItemDirective, descendants: true }, { propertyName: "rowDetail", first: true, predicate: TheSeamDatatableRowDetailDirective, descendants: true, static: true }, { propertyName: "footer", first: true, predicate: TheSeamDatatableFooterDirective, descendants: true, static: true }, { propertyName: "menuBarComponent", first: true, predicate: DatatableMenuBarComponent, descendants: true }, { propertyName: "columnComponents", predicate: DatatableColumnComponent }], viewQueries: [{ propertyName: "ngxDatatable", first: true, predicate: DatatableComponent$1, descendants: true }, { propertyName: "ngxDatatableElement", first: true, predicate: DatatableComponent$1, descendants: true, read: ElementRef }, { propertyName: "ngxRowDetail", first: true, predicate: DatatableRowDetailDirective, descendants: true }, { propertyName: "actionMenuCellTpl", first: true, predicate: ["actionMenuCellTpl"], descendants: true, static: true }, { propertyName: "treeToggleTpl", first: true, predicate: ["treeToggleTpl"], descendants: true, static: true }, { propertyName: "headerTpl", first: true, predicate: ["headerTpl"], descendants: true, static: true }, { propertyName: "blankHeaderTpl", first: true, predicate: ["blankHeaderTpl"], descendants: true, static: true }, { propertyName: "cellTypeSelectorTpl", first: true, predicate: ["cellTypeSelectorTpl"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"datatable-wrapper\">\n <ng-content select=\"seam-datatable-menu-bar\"></ng-content>\n <div class=\"datatable-table-wrapper\">\n <ng-container>\n <ngx-datatable\n [columnMode]=\"$any(columnMode)\"\n [scrollbarV]=\"scrollbarV\"\n [scrollbarH]=\"scrollbarH\"\n [virtualization]=\"virtualization\"\n [targetMarkerTemplate]=\"targetMarkerTemplate\"\n [groupRowsBy]=\"$any(groupRowsBy)\"\n [groupedRows]=\"$any(groupedRows)\"\n [selected]=\"$any(selected)\"\n [externalPaging]=\"externalPaging\"\n [externalSorting]=\"externalSorting\"\n [limit]=\"$any(limit)\"\n [count]=\"$any(count)\"\n [offset]=\"$any(offset)\"\n [loadingIndicator]=\"loadingIndicator\"\n [selectionType]=\"$any(selectionType)\"\n [reorderable]=\"reorderable\"\n [swapColumns]=\"swapColumns\"\n [sortType]=\"$any(sortType)\"\n [sorts]=\"$any(_sorts)\"\n [cssClasses]=\"cssClasses\"\n [messages]=\"messages\"\n [rowIdentity]=\"$any(rowIdentity)\"\n [rowClass]=\"rowClass\"\n [selectCheck]=\"selectCheck\"\n [displayCheck]=\"$any(displayCheck)\"\n [groupExpansionDefault]=\"groupExpansionDefault\"\n [trackByProp]=\"$any(trackByProp)\"\n [selectAllRowsOnPage]=\"selectAllRowsOnPage\"\n [treeFromRelation]=\"$any(treeFromRelation)\"\n [treeToRelation]=\"$any(treeToRelation)\"\n [summaryRow]=\"summaryRow\"\n [summaryHeight]=\"$any(summaryHeight)\"\n [summaryPosition]=\"$any(summaryPosition)\"\n [rows]=\"rows$ | async\"\n [columns]=\"$any(displayColumns$ | async)\"\n [headerHeight]=\"$any(headerHeight)\"\n [rowHeight]=\"$any(rowHeight)\"\n [footerHeight]=\"$any(footerHeight)\"\n (scroll)=\"scroll.emit($event)\"\n (activate)=\"activate.emit($event)\"\n (select)=\"select.emit($event)\"\n (sort)=\"_onSort($event)\"\n (page)=\"page.emit($event)\"\n (reorder)=\"_onReorder($event)\"\n (resize)=\"_onResize($event)\"\n (tableContextmenu)=\"tableContextmenu.emit($event)\"\n (treeAction)=\"treeAction.emit($event)\"\n (seamElemResized)=\"onDatatableResize($event)\"\n (treeAction)=\"_onTreeAction($event)\">\n\n <ngx-datatable-group-header [rowHeight]=\"50\" #myGroupHeader *ngIf=\"groupRowsBy\">\n <ng-template let-group=\"group\" let-expanded=\"expanded\" ngx-datatable-group-header-template>\n <div\n class=\"w-100 bg-light p-1\"\n [class.border-bottom]=\"!expanded\"\n [class.datatable-icon-right]=\"!expanded\"\n [class.datatable-icon-down]=\"expanded\"\n title=\"Expand/Collapse Group\"\n (click)=\"ngxDatatable?.groupHeader?.toggleExpandGroup(group)\">\n <b>Age: {{ group.age }}</b>\n </div>\n </ng-template>\n </ngx-datatable-group-header>\n\n <ngx-datatable-row-detail *ngIf=\"rowDetail && rowDetail.template\"\n [rowHeight]=\"rowDetail.rowHeight || 0\"\n [template]=\"$any(rowDetail.template)\"\n (toggle)=\"rowDetail.toggle.emit($event)\">\n </ngx-datatable-row-detail>\n\n <ngx-datatable-footer *ngIf=\"footer && footer.template\"\n [template]=\"$any(footer.template)\">\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n </div>\n</div>\n\n<ng-template #blankHeaderTpl ngx-datatable-header-template></ng-template>\n\n<ng-template #headerTpl ngx-datatable-header-template\n let-column=\"column\" let-sortFn=\"sortFn\">\n <strong *ngIf=\"!column.sortable\" class=\"draggable\">{{column.name}}</strong>\n <strong *ngIf=\"column.sortable\" class=\"datatable-sort-target draggable\" (click)=\"sortFn()\">{{column.name}}</strong>\n <div class=\"datatable-column-header-separator\" [attr.data-column-id]=\"column.$$id\"></div>\n</ng-template>\n\n<ng-template #cellTypeSelectorTpl ngx-datatable-cell-template\n let-value=\"value\" let-rowIndex=\"rowIndex\" let-row=\"row\" let-column=\"column\">\n <seam-table-cell-type-selector *ngIf=\"row\"\n [type]=\"column.cellType\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"column\">\n </seam-table-cell-type-selector>\n</ng-template>\n\n<ng-template #actionMenuCellTpl ngx-datatable-cell-template\n let-value=\"value\" let-rowIndex=\"rowIndex\" let-row=\"row\">\n\n <ng-container *ngIf=\"row && rowActionItem?.template\">\n <ng-template\n [ngTemplateOutlet]=\"$any(rowActionItem?.template)\"\n [ngTemplateOutletContext]=\"{ $implicit: row, row: row, rowIndex: rowIndex }\">\n </ng-template>\n </ng-container>\n\n</ng-template>\n\n<ng-template #treeToggleTpl ngx-datatable-tree-toggle let-tree=\"cellContext\">\n <button\n class=\"p-0 bg-transparent border-0 btn\"\n [disabled]=\"tree.treeStatus==='disabled'\"\n (click)=\"tree.onTreeAction()\">\n <span *ngIf=\"tree.treeStatus==='loading'\">\n <fa-icon [icon]=\"_faSpinner\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='collapsed'\">\n <fa-icon [icon]=\"_faChevronRight\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='expanded'\">\n <fa-icon [icon]=\"_faChevronDown\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='disabled'\">\n <fa-icon [icon]=\"_faChevronRight\"></fa-icon>\n </span>\n </button>\n</ng-template>\n", styles: [":host{display:flex;flex-grow:1;flex-direction:column}::ng-deep .seam-datatable-action-menu{min-width:auto!important}ngx-datatable{position:absolute!important;inset:0}.datatable-wrapper{display:flex;flex-direction:column;flex-grow:1}.datatable-wrapper .datatable-table-wrapper{position:relative;flex:1 1 100%}.datatable-column-header-separator{position:absolute}.datatable-sort-target{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5$1.DatatableComponent, selector: "ngx-datatable", inputs: ["selected", "scrollbarV", "scrollbarH", "rowHeight", "columnMode", "headerHeight", "footerHeight", "externalPaging", "externalSorting", "loadingIndicator", "reorderable", "swapColumns", "sortType", "sorts", "cssClasses", "messages", "groupExpansionDefault", "selectAllRowsOnPage", "virtualization", "summaryRow", "summaryHeight", "summaryPosition", "displayPageCount", "displayPager", "rowIdentity", "rows", "groupedRows", "groupRowsBy", "columns", "limit", "count", "offset", "targetMarkerTemplate", "selectionType", "rowClass", "selectCheck", "displayCheck", "trackByProp", "treeFromRelation", "treeToRelation"], outputs: ["scroll", "activate", "select", "sort", "page", "reorder", "resize", "tableContextmenu", "treeAction"] }, { kind: "directive", type: i5$1.DatatableRowDetailDirective, selector: "ngx-datatable-row-detail", inputs: ["rowHeight", "template"], outputs: ["toggle"] }, { kind: "directive", type: i5$1.DatatableGroupHeaderDirective, selector: "ngx-datatable-group-header", inputs: ["rowHeight", "template"], outputs: ["toggle"] }, { kind: "directive", type: i5$1.DataTableColumnHeaderDirective, selector: "[ngx-datatable-header-template]" }, { kind: "directive", type: i5$1.DataTableColumnCellDirective, selector: "[ngx-datatable-cell-template]" }, { kind: "directive", type: i5$1.DataTableColumnCellTreeToggle, selector: "[ngx-datatable-tree-toggle]" }, { kind: "directive", type: i5$1.DatatableFooterDirective, selector: "ngx-datatable-footer", inputs: ["footerHeight", "totalMessage", "selectedMessage", "pagerLeftArrowIcon", "pagerRightArrowIcon", "pagerPreviousIcon", "pagerNextIcon", "template"] }, { kind: "directive", type: i5$1.DatatableGroupHeaderTemplateDirective, selector: "[ngx-datatable-group-header-template]" }, { kind: "component", type: i6.FaIconComponent, selector: "fa-icon", inputs: ["classes", "icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: i7.ElemResizedDirective, selector: "[seamElemResized]", outputs: ["seamElemResized"] }, { kind: "component", type: i8.TableCellTypeSelectorComponent, selector: "seam-table-cell-type-selector", inputs: ["type", "value", "rowIndex", "row", "colData"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], animations: [
|
|
2692
|
+
ColumnsFiltersService
|
|
2693
|
+
], queries: [{ propertyName: "actionMenu", first: true, predicate: DatatableActionMenuComponent, descendants: true, static: true }, { propertyName: "rowActionItem", first: true, predicate: DatatableRowActionItemDirective, descendants: true }, { propertyName: "rowDetail", first: true, predicate: TheSeamDatatableRowDetailDirective, descendants: true, static: true }, { propertyName: "footer", first: true, predicate: TheSeamDatatableFooterDirective, descendants: true, static: true }, { propertyName: "menuBarComponent", first: true, predicate: DatatableMenuBarComponent, descendants: true }, { propertyName: "columnComponents", predicate: DatatableColumnComponent }, { propertyName: "columnFilterTemplates", predicate: TheSeamDatatableColumnFilterDirective }], viewQueries: [{ propertyName: "ngxDatatable", first: true, predicate: DatatableComponent$1, descendants: true }, { propertyName: "ngxDatatableElement", first: true, predicate: DatatableComponent$1, descendants: true, read: ElementRef }, { propertyName: "ngxRowDetail", first: true, predicate: DatatableRowDetailDirective, descendants: true }, { propertyName: "actionMenuCellTpl", first: true, predicate: ["actionMenuCellTpl"], descendants: true, static: true }, { propertyName: "treeToggleTpl", first: true, predicate: ["treeToggleTpl"], descendants: true, static: true }, { propertyName: "headerTpl", first: true, predicate: ["headerTpl"], descendants: true, static: true }, { propertyName: "blankHeaderTpl", first: true, predicate: ["blankHeaderTpl"], descendants: true, static: true }, { propertyName: "cellTypeSelectorTpl", first: true, predicate: ["cellTypeSelectorTpl"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"datatable-wrapper\">\n <ng-content select=\"seam-datatable-menu-bar\"></ng-content>\n <div class=\"datatable-table-wrapper\">\n <ng-container>\n <ngx-datatable\n [columnMode]=\"$any(columnMode)\"\n [scrollbarV]=\"scrollbarV\"\n [scrollbarH]=\"scrollbarH\"\n [virtualization]=\"virtualization\"\n [targetMarkerTemplate]=\"targetMarkerTemplate\"\n [groupRowsBy]=\"$any(groupRowsBy)\"\n [groupedRows]=\"$any(groupedRows)\"\n [selected]=\"$any(selected)\"\n [externalPaging]=\"externalPaging\"\n [externalSorting]=\"externalSorting\"\n [limit]=\"$any(limit)\"\n [count]=\"$any(count)\"\n [offset]=\"$any(offset)\"\n [loadingIndicator]=\"loadingIndicator\"\n [selectionType]=\"$any(selectionType)\"\n [reorderable]=\"reorderable\"\n [swapColumns]=\"swapColumns\"\n [sortType]=\"$any(sortType)\"\n [sorts]=\"$any(_sorts)\"\n [cssClasses]=\"cssClasses\"\n [messages]=\"messages\"\n [rowIdentity]=\"$any(rowIdentity)\"\n [rowClass]=\"rowClass\"\n [selectCheck]=\"selectCheck\"\n [displayCheck]=\"$any(displayCheck)\"\n [groupExpansionDefault]=\"groupExpansionDefault\"\n [trackByProp]=\"$any(trackByProp)\"\n [selectAllRowsOnPage]=\"selectAllRowsOnPage\"\n [treeFromRelation]=\"$any(treeFromRelation)\"\n [treeToRelation]=\"$any(treeToRelation)\"\n [summaryRow]=\"summaryRow\"\n [summaryHeight]=\"$any(summaryHeight)\"\n [summaryPosition]=\"$any(summaryPosition)\"\n [rows]=\"rows$ | async\"\n [columns]=\"$any(displayColumns$ | async)\"\n [headerHeight]=\"$any(headerHeight)\"\n [rowHeight]=\"$any(rowHeight)\"\n [footerHeight]=\"$any(footerHeight)\"\n (scroll)=\"scroll.emit($event)\"\n (activate)=\"activate.emit($event)\"\n (select)=\"select.emit($event)\"\n (sort)=\"_onSort($event)\"\n (page)=\"page.emit($event)\"\n (reorder)=\"_onReorder($event)\"\n (resize)=\"_onResize($event)\"\n (tableContextmenu)=\"tableContextmenu.emit($event)\"\n (treeAction)=\"treeAction.emit($event)\"\n (seamElemResized)=\"onDatatableResize($event)\"\n (treeAction)=\"_onTreeAction($event)\">\n\n <ngx-datatable-group-header [rowHeight]=\"50\" #myGroupHeader *ngIf=\"groupRowsBy\">\n <ng-template let-group=\"group\" let-expanded=\"expanded\" ngx-datatable-group-header-template>\n <div\n class=\"w-100 bg-light p-1\"\n [class.border-bottom]=\"!expanded\"\n [class.datatable-icon-right]=\"!expanded\"\n [class.datatable-icon-down]=\"expanded\"\n title=\"Expand/Collapse Group\"\n (click)=\"ngxDatatable?.groupHeader?.toggleExpandGroup(group)\">\n <b>Age: {{ group.age }}</b>\n </div>\n </ng-template>\n </ngx-datatable-group-header>\n\n <ngx-datatable-row-detail *ngIf=\"rowDetail && rowDetail.template\"\n [rowHeight]=\"rowDetail.rowHeight || 0\"\n [template]=\"$any(rowDetail.template)\"\n (toggle)=\"rowDetail.toggle.emit($event)\">\n </ngx-datatable-row-detail>\n\n <ngx-datatable-footer *ngIf=\"footer && footer.template\"\n [template]=\"$any(footer.template)\">\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n </div>\n</div>\n\n<ng-template #blankHeaderTpl ngx-datatable-header-template></ng-template>\n\n<ng-template\n #headerTpl\n ngx-datatable-header-template\n let-column=\"column\"\n let-sortFn=\"sortFn\"\n>\n <div class=\"d-inline-flex align-items-center\">\n <ng-container *ngIf=\"column.filterable\">\n <button\n seamIconBtn\n [icon]=\"columnFilterIcon\"\n size=\"sm\"\n [seamPopover]=\"filterMenu\"\n [seamPopoverBaseWidth]=\"300\"\n class=\"datatable-column-header-filter-button d-flex align-items-center mr-2\"\n [class.datatable-column-header-filter-button-active]=\"column.filterActive\"\n style=\"width: 1rem;\"\n title=\"Click to see filter options\"></button>\n </ng-container>\n <strong *ngIf=\"!column.sortable\" class=\"draggable\">{{column.name}}</strong>\n <button\n seamButton\n *ngIf=\"column.sortable\"\n class=\"datatable-sort-target p-0\"\n (click)=\"sortFn()\"\n title=\"Click to sort\">\n <strong class=\"draggable\">{{column.name}}</strong>\n </button>\n <div class=\"datatable-column-header-separator\" [attr.data-column-id]=\"column.$$id\"></div>\n </div>\n <ng-template #filterMenu let-popover=\"popover\">\n <seam-datatable-column-filter-menu\n [column]=\"column\"\n [updateMethod]=\"columnFilterUpdateMethod\"\n [debounce]=\"columnFilterUpdateDebounce\"\n (closePopover)=\"popover?.closePopover()\"></seam-datatable-column-filter-menu>\n </ng-template>\n</ng-template>\n\n<ng-template #cellTypeSelectorTpl ngx-datatable-cell-template\n let-value=\"value\" let-rowIndex=\"rowIndex\" let-row=\"row\" let-column=\"column\">\n <seam-table-cell-type-selector *ngIf=\"row\"\n [type]=\"column.cellType\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"column\">\n </seam-table-cell-type-selector>\n</ng-template>\n\n<ng-template #actionMenuCellTpl ngx-datatable-cell-template\n let-value=\"value\" let-rowIndex=\"rowIndex\" let-row=\"row\">\n\n <ng-container *ngIf=\"row && rowActionItem?.template\">\n <ng-template\n [ngTemplateOutlet]=\"$any(rowActionItem?.template)\"\n [ngTemplateOutletContext]=\"{ $implicit: row, row: row, rowIndex: rowIndex }\">\n </ng-template>\n </ng-container>\n\n</ng-template>\n\n<ng-template #treeToggleTpl ngx-datatable-tree-toggle let-tree=\"cellContext\">\n <button\n class=\"p-0 bg-transparent border-0 btn\"\n [disabled]=\"tree.treeStatus==='disabled'\"\n (click)=\"tree.onTreeAction()\">\n <span *ngIf=\"tree.treeStatus==='loading'\">\n <fa-icon [icon]=\"_faSpinner\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='collapsed'\">\n <fa-icon [icon]=\"_faChevronRight\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='expanded'\">\n <fa-icon [icon]=\"_faChevronDown\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='disabled'\">\n <fa-icon [icon]=\"_faChevronRight\"></fa-icon>\n </span>\n </button>\n</ng-template>\n", styles: [":host{display:flex;flex-grow:1;flex-direction:column}::ng-deep .seam-datatable-action-menu{min-width:auto!important}ngx-datatable{position:absolute!important;inset:0}.datatable-wrapper{display:flex;flex-direction:column;flex-grow:1}.datatable-wrapper .datatable-table-wrapper{position:relative;flex:1 1 100%}.datatable-column-header-separator{position:absolute}.datatable-sort-target{cursor:pointer}::ng-deep .ngx-datatable .datatable-body-row{position:relative}::ng-deep .ngx-datatable .datatable-row-right{position:absolute!important;top:0}::ng-deep .ngx-datatable .datatable-row-right{right:0}\n"], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i6.DatatableComponent, selector: "ngx-datatable", inputs: ["selected", "scrollbarV", "scrollbarH", "rowHeight", "columnMode", "headerHeight", "footerHeight", "externalPaging", "externalSorting", "loadingIndicator", "reorderable", "swapColumns", "sortType", "sorts", "cssClasses", "messages", "groupExpansionDefault", "selectAllRowsOnPage", "virtualization", "summaryRow", "summaryHeight", "summaryPosition", "displayPageCount", "displayPager", "rowIdentity", "rows", "groupedRows", "groupRowsBy", "columns", "limit", "count", "offset", "targetMarkerTemplate", "selectionType", "rowClass", "selectCheck", "displayCheck", "trackByProp", "treeFromRelation", "treeToRelation"], outputs: ["scroll", "activate", "select", "sort", "page", "reorder", "resize", "tableContextmenu", "treeAction"] }, { kind: "directive", type: i6.DatatableRowDetailDirective, selector: "ngx-datatable-row-detail", inputs: ["rowHeight", "template"], outputs: ["toggle"] }, { kind: "directive", type: i6.DatatableGroupHeaderDirective, selector: "ngx-datatable-group-header", inputs: ["rowHeight", "template"], outputs: ["toggle"] }, { kind: "directive", type: i6.DataTableColumnHeaderDirective, selector: "[ngx-datatable-header-template]" }, { kind: "directive", type: i6.DataTableColumnCellDirective, selector: "[ngx-datatable-cell-template]" }, { kind: "directive", type: i6.DataTableColumnCellTreeToggle, selector: "[ngx-datatable-tree-toggle]" }, { kind: "directive", type: i6.DatatableFooterDirective, selector: "ngx-datatable-footer", inputs: ["footerHeight", "totalMessage", "selectedMessage", "pagerLeftArrowIcon", "pagerRightArrowIcon", "pagerPreviousIcon", "pagerNextIcon", "template"] }, { kind: "directive", type: i6.DatatableGroupHeaderTemplateDirective, selector: "[ngx-datatable-group-header-template]" }, { kind: "component", type: i7.FaIconComponent, selector: "fa-icon", inputs: ["classes", "icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: i2$2.ElemResizedDirective, selector: "[seamElemResized]", outputs: ["seamElemResized"] }, { kind: "component", type: i5.IconBtnComponent, selector: "button[seamIconBtn]", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "iconType", "btnTheme", "badgeTheme", "badgeText", "btnSize", "type", "role"] }, { kind: "component", type: i3$1.TheSeamButtonComponent, selector: "button[seamButton]", inputs: ["disabled", "theme", "size", "type"], exportAs: ["seamButton"] }, { kind: "directive", type: i11.TheSeamPopoverDirective, selector: "[seamPopover]", inputs: ["seamPopover", "seamPopoverContext", "seamPopoverBaseWidth", "seamPopoverDisabled"], exportAs: ["seamPopover"] }, { kind: "component", type: i12.TableCellTypeSelectorComponent, selector: "seam-table-cell-type-selector", inputs: ["type", "value", "rowIndex", "row", "colData"] }, { kind: "component", type: DatatableColumnFilterMenuComponent, selector: "seam-datatable-column-filter-menu", inputs: ["column", "updateMethod", "debounce"], outputs: ["closePopover"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }], animations: [
|
|
1787
2694
|
trigger('slideDown', [
|
|
1788
2695
|
transition(':enter', [
|
|
1789
2696
|
style({ transform: 'translateY(-20%)', opacity: '0' }),
|
|
@@ -1839,20 +2746,20 @@ __decorate([
|
|
|
1839
2746
|
], DatatableComponent.prototype, "virtualization", void 0);
|
|
1840
2747
|
__decorate([
|
|
1841
2748
|
InputNumber()
|
|
1842
|
-
], DatatableComponent.prototype, "headerHeight",
|
|
2749
|
+
], DatatableComponent.prototype, "headerHeight", null);
|
|
1843
2750
|
__decorate([
|
|
1844
2751
|
InputNumber()
|
|
1845
|
-
], DatatableComponent.prototype, "rowHeight",
|
|
2752
|
+
], DatatableComponent.prototype, "rowHeight", null);
|
|
1846
2753
|
__decorate([
|
|
1847
2754
|
InputNumber()
|
|
1848
|
-
], DatatableComponent.prototype, "footerHeight",
|
|
2755
|
+
], DatatableComponent.prototype, "footerHeight", null);
|
|
1849
2756
|
__decorate([
|
|
1850
2757
|
InputBoolean()
|
|
1851
2758
|
], DatatableComponent.prototype, "scrollbarV", void 0);
|
|
1852
2759
|
__decorate([
|
|
1853
2760
|
InputBoolean()
|
|
1854
2761
|
], DatatableComponent.prototype, "scrollbarH", void 0);
|
|
1855
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
2762
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableComponent, decorators: [{
|
|
1856
2763
|
type: Component,
|
|
1857
2764
|
args: [{ selector: 'seam-datatable', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
1858
2765
|
trigger('slideDown', [
|
|
@@ -1871,8 +2778,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
1871
2778
|
_THESEAM_DATATABLE_ACCESSOR,
|
|
1872
2779
|
ColumnsManagerService,
|
|
1873
2780
|
ColumnsAlterationsManagerService,
|
|
1874
|
-
|
|
1875
|
-
|
|
2781
|
+
ColumnsFiltersService
|
|
2782
|
+
], template: "<div class=\"datatable-wrapper\">\n <ng-content select=\"seam-datatable-menu-bar\"></ng-content>\n <div class=\"datatable-table-wrapper\">\n <ng-container>\n <ngx-datatable\n [columnMode]=\"$any(columnMode)\"\n [scrollbarV]=\"scrollbarV\"\n [scrollbarH]=\"scrollbarH\"\n [virtualization]=\"virtualization\"\n [targetMarkerTemplate]=\"targetMarkerTemplate\"\n [groupRowsBy]=\"$any(groupRowsBy)\"\n [groupedRows]=\"$any(groupedRows)\"\n [selected]=\"$any(selected)\"\n [externalPaging]=\"externalPaging\"\n [externalSorting]=\"externalSorting\"\n [limit]=\"$any(limit)\"\n [count]=\"$any(count)\"\n [offset]=\"$any(offset)\"\n [loadingIndicator]=\"loadingIndicator\"\n [selectionType]=\"$any(selectionType)\"\n [reorderable]=\"reorderable\"\n [swapColumns]=\"swapColumns\"\n [sortType]=\"$any(sortType)\"\n [sorts]=\"$any(_sorts)\"\n [cssClasses]=\"cssClasses\"\n [messages]=\"messages\"\n [rowIdentity]=\"$any(rowIdentity)\"\n [rowClass]=\"rowClass\"\n [selectCheck]=\"selectCheck\"\n [displayCheck]=\"$any(displayCheck)\"\n [groupExpansionDefault]=\"groupExpansionDefault\"\n [trackByProp]=\"$any(trackByProp)\"\n [selectAllRowsOnPage]=\"selectAllRowsOnPage\"\n [treeFromRelation]=\"$any(treeFromRelation)\"\n [treeToRelation]=\"$any(treeToRelation)\"\n [summaryRow]=\"summaryRow\"\n [summaryHeight]=\"$any(summaryHeight)\"\n [summaryPosition]=\"$any(summaryPosition)\"\n [rows]=\"rows$ | async\"\n [columns]=\"$any(displayColumns$ | async)\"\n [headerHeight]=\"$any(headerHeight)\"\n [rowHeight]=\"$any(rowHeight)\"\n [footerHeight]=\"$any(footerHeight)\"\n (scroll)=\"scroll.emit($event)\"\n (activate)=\"activate.emit($event)\"\n (select)=\"select.emit($event)\"\n (sort)=\"_onSort($event)\"\n (page)=\"page.emit($event)\"\n (reorder)=\"_onReorder($event)\"\n (resize)=\"_onResize($event)\"\n (tableContextmenu)=\"tableContextmenu.emit($event)\"\n (treeAction)=\"treeAction.emit($event)\"\n (seamElemResized)=\"onDatatableResize($event)\"\n (treeAction)=\"_onTreeAction($event)\">\n\n <ngx-datatable-group-header [rowHeight]=\"50\" #myGroupHeader *ngIf=\"groupRowsBy\">\n <ng-template let-group=\"group\" let-expanded=\"expanded\" ngx-datatable-group-header-template>\n <div\n class=\"w-100 bg-light p-1\"\n [class.border-bottom]=\"!expanded\"\n [class.datatable-icon-right]=\"!expanded\"\n [class.datatable-icon-down]=\"expanded\"\n title=\"Expand/Collapse Group\"\n (click)=\"ngxDatatable?.groupHeader?.toggleExpandGroup(group)\">\n <b>Age: {{ group.age }}</b>\n </div>\n </ng-template>\n </ngx-datatable-group-header>\n\n <ngx-datatable-row-detail *ngIf=\"rowDetail && rowDetail.template\"\n [rowHeight]=\"rowDetail.rowHeight || 0\"\n [template]=\"$any(rowDetail.template)\"\n (toggle)=\"rowDetail.toggle.emit($event)\">\n </ngx-datatable-row-detail>\n\n <ngx-datatable-footer *ngIf=\"footer && footer.template\"\n [template]=\"$any(footer.template)\">\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n </div>\n</div>\n\n<ng-template #blankHeaderTpl ngx-datatable-header-template></ng-template>\n\n<ng-template\n #headerTpl\n ngx-datatable-header-template\n let-column=\"column\"\n let-sortFn=\"sortFn\"\n>\n <div class=\"d-inline-flex align-items-center\">\n <ng-container *ngIf=\"column.filterable\">\n <button\n seamIconBtn\n [icon]=\"columnFilterIcon\"\n size=\"sm\"\n [seamPopover]=\"filterMenu\"\n [seamPopoverBaseWidth]=\"300\"\n class=\"datatable-column-header-filter-button d-flex align-items-center mr-2\"\n [class.datatable-column-header-filter-button-active]=\"column.filterActive\"\n style=\"width: 1rem;\"\n title=\"Click to see filter options\"></button>\n </ng-container>\n <strong *ngIf=\"!column.sortable\" class=\"draggable\">{{column.name}}</strong>\n <button\n seamButton\n *ngIf=\"column.sortable\"\n class=\"datatable-sort-target p-0\"\n (click)=\"sortFn()\"\n title=\"Click to sort\">\n <strong class=\"draggable\">{{column.name}}</strong>\n </button>\n <div class=\"datatable-column-header-separator\" [attr.data-column-id]=\"column.$$id\"></div>\n </div>\n <ng-template #filterMenu let-popover=\"popover\">\n <seam-datatable-column-filter-menu\n [column]=\"column\"\n [updateMethod]=\"columnFilterUpdateMethod\"\n [debounce]=\"columnFilterUpdateDebounce\"\n (closePopover)=\"popover?.closePopover()\"></seam-datatable-column-filter-menu>\n </ng-template>\n</ng-template>\n\n<ng-template #cellTypeSelectorTpl ngx-datatable-cell-template\n let-value=\"value\" let-rowIndex=\"rowIndex\" let-row=\"row\" let-column=\"column\">\n <seam-table-cell-type-selector *ngIf=\"row\"\n [type]=\"column.cellType\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"column\">\n </seam-table-cell-type-selector>\n</ng-template>\n\n<ng-template #actionMenuCellTpl ngx-datatable-cell-template\n let-value=\"value\" let-rowIndex=\"rowIndex\" let-row=\"row\">\n\n <ng-container *ngIf=\"row && rowActionItem?.template\">\n <ng-template\n [ngTemplateOutlet]=\"$any(rowActionItem?.template)\"\n [ngTemplateOutletContext]=\"{ $implicit: row, row: row, rowIndex: rowIndex }\">\n </ng-template>\n </ng-container>\n\n</ng-template>\n\n<ng-template #treeToggleTpl ngx-datatable-tree-toggle let-tree=\"cellContext\">\n <button\n class=\"p-0 bg-transparent border-0 btn\"\n [disabled]=\"tree.treeStatus==='disabled'\"\n (click)=\"tree.onTreeAction()\">\n <span *ngIf=\"tree.treeStatus==='loading'\">\n <fa-icon [icon]=\"_faSpinner\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='collapsed'\">\n <fa-icon [icon]=\"_faChevronRight\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='expanded'\">\n <fa-icon [icon]=\"_faChevronDown\"></fa-icon>\n </span>\n <span *ngIf=\"tree.treeStatus==='disabled'\">\n <fa-icon [icon]=\"_faChevronRight\"></fa-icon>\n </span>\n </button>\n</ng-template>\n", styles: [":host{display:flex;flex-grow:1;flex-direction:column}::ng-deep .seam-datatable-action-menu{min-width:auto!important}ngx-datatable{position:absolute!important;inset:0}.datatable-wrapper{display:flex;flex-direction:column;flex-grow:1}.datatable-wrapper .datatable-table-wrapper{position:relative;flex:1 1 100%}.datatable-column-header-separator{position:absolute}.datatable-sort-target{cursor:pointer}::ng-deep .ngx-datatable .datatable-body-row{position:relative}::ng-deep .ngx-datatable .datatable-row-right{position:absolute!important;top:0}::ng-deep .ngx-datatable .datatable-row-right{right:0}\n"] }]
|
|
2783
|
+
}], ctorParameters: function () { return [{ type: DatatablePreferencesService }, { type: ColumnsManagerService }, { type: ColumnsAlterationsManagerService }, { type: ColumnsFiltersService }, { type: undefined, decorators: [{
|
|
2784
|
+
type: Optional
|
|
2785
|
+
}, {
|
|
2786
|
+
type: Inject,
|
|
2787
|
+
args: [THESEAM_DATATABLE_CONFIG]
|
|
2788
|
+
}] }]; }, propDecorators: { preferencesKey: [{
|
|
1876
2789
|
type: Input
|
|
1877
2790
|
}], targetMarkerTemplate: [{
|
|
1878
2791
|
type: Input
|
|
@@ -1954,6 +2867,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
1954
2867
|
type: Input
|
|
1955
2868
|
}], dataSource: [{
|
|
1956
2869
|
type: Input
|
|
2870
|
+
}], actionItemColumnPosition: [{
|
|
2871
|
+
type: Input
|
|
2872
|
+
}], columnFilterIcon: [{
|
|
2873
|
+
type: Input
|
|
2874
|
+
}], columnFilterUpdateMethod: [{
|
|
2875
|
+
type: Input
|
|
2876
|
+
}], columnFilterUpdateDebounce: [{
|
|
2877
|
+
type: Input
|
|
1957
2878
|
}], scroll: [{
|
|
1958
2879
|
type: Output
|
|
1959
2880
|
}], activate: [{
|
|
@@ -1994,6 +2915,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
1994
2915
|
}], menuBarComponent: [{
|
|
1995
2916
|
type: ContentChild,
|
|
1996
2917
|
args: [DatatableMenuBarComponent]
|
|
2918
|
+
}], columnFilterTemplates: [{
|
|
2919
|
+
type: ContentChildren,
|
|
2920
|
+
args: [TheSeamDatatableColumnFilterDirective]
|
|
1997
2921
|
}], ngxDatatable: [{
|
|
1998
2922
|
type: ViewChild,
|
|
1999
2923
|
args: [DatatableComponent$1]
|
|
@@ -2062,9 +2986,9 @@ class DatatableColumnPreferencesComponent {
|
|
|
2062
2986
|
this._columnsAlterationsManager.add([alteration]);
|
|
2063
2987
|
}
|
|
2064
2988
|
}
|
|
2065
|
-
DatatableColumnPreferencesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2066
|
-
DatatableColumnPreferencesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2067
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
2989
|
+
DatatableColumnPreferencesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnPreferencesComponent, deps: [{ token: THESEAM_DATATABLE }, { token: ColumnsAlterationsManagerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2990
|
+
DatatableColumnPreferencesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnPreferencesComponent, selector: "seam-datatable-column-preferences", ngImport: i0, template: "<h3>Columns</h3>\n\n<seam-form-field [numPaddingErrors]=\"0\" >\n <input seamInput [formControl]=\"_filterControl\" seamInputSize=\"sm\" placeholder=\"Search\" seamAutoFocus>\n</seam-form-field>\n\n<div seamOverlayScrollbar style=\"min-height: 200px; max-height: 600px; min-width: 250px;\" class=\"flex-grow-1 mb-2\">\n <div class=\"p-2\">\n <ng-container *ngFor=\"let col of _columns$ | async\">\n <seam-checkbox [checked]=\"!col.hidden\" (change)=\"_onChange($event, col)\">{{ col.name || col.prop }}</seam-checkbox>\n </ng-container>\n </div>\n\n</div>\n<div class=\"d-flex flex-row justify-content-end\">\n <!-- <button seamButton size=\"sm\" theme=\"lightgray\" (click)=\"_onCloseClick()\">Close</button> -->\n <!-- <button seamButton size=\"sm\" theme=\"lightgray\" class=\"mr-1\">Cancel</button>\n <button seamButton size=\"sm\" theme=\"success\">Done</button> -->\n</div>\n", styles: [":host{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$2.AutoFocusDirective, selector: "[seamAutoFocus]", inputs: ["seamAutoFocus"], exportAs: ["seamAutoFocus"] }, { kind: "directive", type: i1$2.OverlayScrollbarDirective, selector: "[seamOverlayScrollbar]", inputs: ["seamOverlayScrollbar", "overlayScrollbarEnabled"], exportAs: ["seamOverlayScrollbar"] }, { kind: "component", type: i5$2.TheSeamCheckboxComponent, selector: "seam-checkbox", inputs: ["tabIndex", "id", "aria-label", "aria-labelledby", "required", "checked", "disabled", "indeterminate", "name", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["seamCheckbox"] }, { kind: "component", type: i3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput], seam-rich-text[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2991
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnPreferencesComponent, decorators: [{
|
|
2068
2992
|
type: Component,
|
|
2069
2993
|
args: [{ selector: 'seam-datatable-column-preferences', changeDetection: ChangeDetectionStrategy.OnPush, template: "<h3>Columns</h3>\n\n<seam-form-field [numPaddingErrors]=\"0\" >\n <input seamInput [formControl]=\"_filterControl\" seamInputSize=\"sm\" placeholder=\"Search\" seamAutoFocus>\n</seam-form-field>\n\n<div seamOverlayScrollbar style=\"min-height: 200px; max-height: 600px; min-width: 250px;\" class=\"flex-grow-1 mb-2\">\n <div class=\"p-2\">\n <ng-container *ngFor=\"let col of _columns$ | async\">\n <seam-checkbox [checked]=\"!col.hidden\" (change)=\"_onChange($event, col)\">{{ col.name || col.prop }}</seam-checkbox>\n </ng-container>\n </div>\n\n</div>\n<div class=\"d-flex flex-row justify-content-end\">\n <!-- <button seamButton size=\"sm\" theme=\"lightgray\" (click)=\"_onCloseClick()\">Close</button> -->\n <!-- <button seamButton size=\"sm\" theme=\"lightgray\" class=\"mr-1\">Cancel</button>\n <button seamButton size=\"sm\" theme=\"success\">Done</button> -->\n</div>\n", styles: [":host{display:flex;flex-direction:column}\n"] }]
|
|
2070
2994
|
}], ctorParameters: function () { return [{ type: DatatableComponent, decorators: [{
|
|
@@ -2108,9 +3032,9 @@ class DatatableColumnPreferencesButtonComponent {
|
|
|
2108
3032
|
this._columnsAlterationsManager.clear();
|
|
2109
3033
|
}
|
|
2110
3034
|
}
|
|
2111
|
-
DatatableColumnPreferencesButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2112
|
-
DatatableColumnPreferencesButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2113
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3035
|
+
DatatableColumnPreferencesButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnPreferencesButtonComponent, deps: [{ token: ColumnsAlterationsManagerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3036
|
+
DatatableColumnPreferencesButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableColumnPreferencesButtonComponent, selector: "seam-datatable-column-preferences-button", ngImport: i0, template: "<ng-template #colPrefsTpl>\n <seam-datatable-column-preferences></seam-datatable-column-preferences>\n</ng-template>\n\n<seam-menu #menu\n menuClass=\"list-group py-0 border-0 seam-datatable-action-menu\"\n animationType=\"fade\">\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [seamPopover]=\"colPrefsTpl\">\n Show/Hide Columns\n </button>\n\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n (click)=\"_resetColumns($event)\">\n Reset Columns\n </button>\n</seam-menu>\n\n<button type=\"button\" class=\"btn btn-lightgray btn-sm\"\n [seamMenuToggle]=\"menu\"\n [positions]=\"_actionMenuPositions || []\"\n style=\"padding-left: 10px; padding-right: 10px;\"\n title=\"Column Preferences\">\n <seam-icon [icon]=\"icon\"></seam-icon>\n <span class=\"sr-only\">Column Preferences</span>\n</button>\n\n", styles: [""], dependencies: [{ kind: "component", type: i4.MenuComponent, selector: "seam-menu", inputs: ["menuClass", "baseWidth", "animationType"], outputs: ["closed"], exportAs: ["seamMenu"] }, { kind: "directive", type: i4.MenuToggleDirective, selector: "[seamMenuToggle]", inputs: ["seamMenuToggle", "positions", "seamMenuTogglePositionsOffsetY"], outputs: ["menuToggle", "menuOpened", "menuClosed"], exportAs: ["seamMenuToggle"] }, { kind: "component", type: i4.MenuItemComponent, selector: "[seamMenuItem]", inputs: ["disabled", "role", "icon", "iconClass", "sublevelIcon", "subLevelIconClass", "badgeText", "badgeTheme"], exportAs: ["seamMenuItem"] }, { kind: "component", type: i5.IconComponent, selector: "seam-icon", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "defaultIcon", "iconType"] }, { kind: "directive", type: i11.TheSeamPopoverDirective, selector: "[seamPopover]", inputs: ["seamPopover", "seamPopoverContext", "seamPopoverBaseWidth", "seamPopoverDisabled"], exportAs: ["seamPopover"] }, { kind: "component", type: DatatableColumnPreferencesComponent, selector: "seam-datatable-column-preferences" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3037
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableColumnPreferencesButtonComponent, decorators: [{
|
|
2114
3038
|
type: Component,
|
|
2115
3039
|
args: [{ selector: 'seam-datatable-column-preferences-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #colPrefsTpl>\n <seam-datatable-column-preferences></seam-datatable-column-preferences>\n</ng-template>\n\n<seam-menu #menu\n menuClass=\"list-group py-0 border-0 seam-datatable-action-menu\"\n animationType=\"fade\">\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n [seamPopover]=\"colPrefsTpl\">\n Show/Hide Columns\n </button>\n\n <button seamMenuItem\n type=\"button\"\n class=\"list-group-item list-group-item-action py-1\"\n (click)=\"_resetColumns($event)\">\n Reset Columns\n </button>\n</seam-menu>\n\n<button type=\"button\" class=\"btn btn-lightgray btn-sm\"\n [seamMenuToggle]=\"menu\"\n [positions]=\"_actionMenuPositions || []\"\n style=\"padding-left: 10px; padding-right: 10px;\"\n title=\"Column Preferences\">\n <seam-icon [icon]=\"icon\"></seam-icon>\n <span class=\"sr-only\">Column Preferences</span>\n</button>\n\n" }]
|
|
2116
3040
|
}], ctorParameters: function () { return [{ type: ColumnsAlterationsManagerService }]; } });
|
|
@@ -2187,15 +3111,15 @@ class DatatableExportButtonComponent {
|
|
|
2187
3111
|
return undefined;
|
|
2188
3112
|
}
|
|
2189
3113
|
}
|
|
2190
|
-
DatatableExportButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2191
|
-
DatatableExportButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3114
|
+
DatatableExportButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableExportButtonComponent, deps: [{ token: THESEAM_DATATABLE }, { token: i1$3.ToastrService }, { token: i2$3.TheSeamLoadingOverlayService }, { token: i3$2.DynamicValueHelperService }, { token: THESEAM_DYNAMIC_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
3115
|
+
DatatableExportButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableExportButtonComponent, selector: "seam-datatable-export-button", inputs: { exporters: "exporters" }, ngImport: i0, template: "<seam-menu #menu>\n <button *ngFor=\"let exp of exporters\"\n seamMenuItem\n [icon]=\"exp?.icon\"\n (click)=\"_onExporterClicked(exp)\">\n {{ exp.label }}\n </button>\n</seam-menu>\n<button\n [seamMenuToggle]=\"menu\"\n seamButton\n theme=\"lightgray\"\n size=\"sm\"\n class=\"dropdown-toggle\"\n style=\"padding-left: 10px; padding-right: 10px;\"\n title=\"Export\"\n [disabled]=\"disabled\"\n >\n <seam-icon [icon]=\"icon\" class=\"mr-2\"></seam-icon>\n</button>\n", styles: [":host{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i4.MenuComponent, selector: "seam-menu", inputs: ["menuClass", "baseWidth", "animationType"], outputs: ["closed"], exportAs: ["seamMenu"] }, { kind: "directive", type: i4.MenuToggleDirective, selector: "[seamMenuToggle]", inputs: ["seamMenuToggle", "positions", "seamMenuTogglePositionsOffsetY"], outputs: ["menuToggle", "menuOpened", "menuClosed"], exportAs: ["seamMenuToggle"] }, { kind: "component", type: i4.MenuItemComponent, selector: "[seamMenuItem]", inputs: ["disabled", "role", "icon", "iconClass", "sublevelIcon", "subLevelIconClass", "badgeText", "badgeTheme"], exportAs: ["seamMenuItem"] }, { kind: "component", type: i5.IconComponent, selector: "seam-icon", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "defaultIcon", "iconType"] }, { kind: "component", type: i3$1.TheSeamButtonComponent, selector: "button[seamButton]", inputs: ["disabled", "theme", "size", "type"], exportAs: ["seamButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableExportButtonComponent, decorators: [{
|
|
2193
3117
|
type: Component,
|
|
2194
3118
|
args: [{ selector: 'seam-datatable-export-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-menu #menu>\n <button *ngFor=\"let exp of exporters\"\n seamMenuItem\n [icon]=\"exp?.icon\"\n (click)=\"_onExporterClicked(exp)\">\n {{ exp.label }}\n </button>\n</seam-menu>\n<button\n [seamMenuToggle]=\"menu\"\n seamButton\n theme=\"lightgray\"\n size=\"sm\"\n class=\"dropdown-toggle\"\n style=\"padding-left: 10px; padding-right: 10px;\"\n title=\"Export\"\n [disabled]=\"disabled\"\n >\n <seam-icon [icon]=\"icon\" class=\"mr-2\"></seam-icon>\n</button>\n", styles: [":host{display:inline-block}\n"] }]
|
|
2195
3119
|
}], ctorParameters: function () { return [{ type: DatatableComponent, decorators: [{
|
|
2196
3120
|
type: Inject,
|
|
2197
3121
|
args: [THESEAM_DATATABLE]
|
|
2198
|
-
}] }, { type: i1$3.ToastrService }, { type: i2$
|
|
3122
|
+
}] }, { type: i1$3.ToastrService }, { type: i2$3.TheSeamLoadingOverlayService }, { type: i3$2.DynamicValueHelperService }, { type: undefined, decorators: [{
|
|
2199
3123
|
type: Optional
|
|
2200
3124
|
}, {
|
|
2201
3125
|
type: Inject,
|
|
@@ -2206,36 +3130,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2206
3130
|
|
|
2207
3131
|
class DatatableMenuBarColumnCenterComponent {
|
|
2208
3132
|
}
|
|
2209
|
-
DatatableMenuBarColumnCenterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2210
|
-
DatatableMenuBarColumnCenterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2211
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3133
|
+
DatatableMenuBarColumnCenterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarColumnCenterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3134
|
+
DatatableMenuBarColumnCenterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableMenuBarColumnCenterComponent, selector: "seam-datatable-menu-bar-column-center", ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex:1 1 auto;justify-content:center}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarColumnCenterComponent, decorators: [{
|
|
2212
3136
|
type: Component,
|
|
2213
3137
|
args: [{ selector: 'seam-datatable-menu-bar-column-center', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex:1 1 auto;justify-content:center}\n"] }]
|
|
2214
3138
|
}] });
|
|
2215
3139
|
|
|
2216
3140
|
class DatatableMenuBarColumnLeftComponent {
|
|
2217
3141
|
}
|
|
2218
|
-
DatatableMenuBarColumnLeftComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2219
|
-
DatatableMenuBarColumnLeftComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2220
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3142
|
+
DatatableMenuBarColumnLeftComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarColumnLeftComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3143
|
+
DatatableMenuBarColumnLeftComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableMenuBarColumnLeftComponent, selector: "seam-datatable-menu-bar-column-left", ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex:1 1 0%;justify-content:flex-start}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3144
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarColumnLeftComponent, decorators: [{
|
|
2221
3145
|
type: Component,
|
|
2222
3146
|
args: [{ selector: 'seam-datatable-menu-bar-column-left', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex:1 1 0%;justify-content:flex-start}\n"] }]
|
|
2223
3147
|
}] });
|
|
2224
3148
|
|
|
2225
3149
|
class DatatableMenuBarColumnRightComponent {
|
|
2226
3150
|
}
|
|
2227
|
-
DatatableMenuBarColumnRightComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2228
|
-
DatatableMenuBarColumnRightComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2229
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3151
|
+
DatatableMenuBarColumnRightComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarColumnRightComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3152
|
+
DatatableMenuBarColumnRightComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableMenuBarColumnRightComponent, selector: "seam-datatable-menu-bar-column-right", ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex:1 1 0%;justify-content:flex-end}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3153
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarColumnRightComponent, decorators: [{
|
|
2230
3154
|
type: Component,
|
|
2231
3155
|
args: [{ selector: 'seam-datatable-menu-bar-column-right', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex:1 1 0%;justify-content:flex-end}\n"] }]
|
|
2232
3156
|
}] });
|
|
2233
3157
|
|
|
2234
3158
|
class DatatableMenuBarRowComponent {
|
|
2235
3159
|
}
|
|
2236
|
-
DatatableMenuBarRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2237
|
-
DatatableMenuBarRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2238
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3160
|
+
DatatableMenuBarRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3161
|
+
DatatableMenuBarRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableMenuBarRowComponent, selector: "seam-datatable-menu-bar-row", ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3162
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarRowComponent, decorators: [{
|
|
2239
3163
|
type: Component,
|
|
2240
3164
|
args: [{ selector: 'seam-datatable-menu-bar-row', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap}\n"] }]
|
|
2241
3165
|
}] });
|
|
@@ -2253,9 +3177,9 @@ class DatatableMenuBarTextComponent {
|
|
|
2253
3177
|
}
|
|
2254
3178
|
}
|
|
2255
3179
|
}
|
|
2256
|
-
DatatableMenuBarTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2257
|
-
DatatableMenuBarTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
2258
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3180
|
+
DatatableMenuBarTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarTextComponent, deps: [{ token: DatatableMenuBarComponent }, { token: THESEAM_MENUBAR_ITEM_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
3181
|
+
DatatableMenuBarTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DatatableMenuBarTextComponent, selector: "seam-datatable-menu-bar-text", inputs: { value: "value" }, ngImport: i0, template: "{{ value }}\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3182
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableMenuBarTextComponent, decorators: [{
|
|
2259
3183
|
type: Component,
|
|
2260
3184
|
args: [{ selector: 'seam-datatable-menu-bar-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "{{ value }}\n" }]
|
|
2261
3185
|
}], ctorParameters: function () { return [{ type: DatatableMenuBarComponent }, { type: undefined, decorators: [{
|
|
@@ -2278,14 +3202,14 @@ class DatatableActionMenuItemDirective {
|
|
|
2278
3202
|
this.click = new EventEmitter();
|
|
2279
3203
|
}
|
|
2280
3204
|
}
|
|
2281
|
-
DatatableActionMenuItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2282
|
-
DatatableActionMenuItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
2283
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3205
|
+
DatatableActionMenuItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuItemDirective, deps: [{ token: i1$4.Modal }, { token: i2$4.TheSeamDynamicComponentLoader }, { token: i3$3.HttpClient, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3206
|
+
DatatableActionMenuItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableActionMenuItemDirective, selector: "[seamDatatableActionMenuItem]", inputs: { label: "label", href: ["attr.href", "href"], target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", preserveFragment: "preserveFragment", skipLocationChange: "skipLocationChange", replaceUrl: "replaceUrl", state: "state", routerLink: "routerLink", confirmDialog: "confirmDialog", row: "row" }, outputs: { click: "click" }, host: { properties: { "class.list-group-item": "this._listGroupItem", "class.list-group-item-action": "this._listGroupItemAction" } }, ngImport: i0 });
|
|
3207
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuItemDirective, decorators: [{
|
|
2284
3208
|
type: Directive,
|
|
2285
3209
|
args: [{
|
|
2286
3210
|
selector: '[seamDatatableActionMenuItem]'
|
|
2287
3211
|
}]
|
|
2288
|
-
}], ctorParameters: function () { return [{ type: i1$4.Modal }, { type: i2$
|
|
3212
|
+
}], ctorParameters: function () { return [{ type: i1$4.Modal }, { type: i2$4.TheSeamDynamicComponentLoader }, { type: i3$3.HttpClient, decorators: [{
|
|
2289
3213
|
type: Optional
|
|
2290
3214
|
}] }]; }, propDecorators: { _listGroupItem: [{
|
|
2291
3215
|
type: HostBinding,
|
|
@@ -2426,9 +3350,9 @@ class DatatableActionMenuToggleDirective {
|
|
|
2426
3350
|
this._actionDown = false;
|
|
2427
3351
|
}
|
|
2428
3352
|
}
|
|
2429
|
-
DatatableActionMenuToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2430
|
-
DatatableActionMenuToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
2431
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3353
|
+
DatatableActionMenuToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuToggleDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1$5.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3354
|
+
DatatableActionMenuToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DatatableActionMenuToggleDirective, selector: "[seamDatatableActionMenuToggle]", inputs: { seamDatatableActionMenuToggle: "seamDatatableActionMenuToggle" }, host: { listeners: { "document:keydown": "_onKeydown($event)", "click": "_onClick($event)", "mousedown": "_mouseDown($event)", "pointerdown": "_pointerDown($event)", "mouseup": "_mouseUp($event)", "pointerup": "_pointerUp($event)" } }, exportAs: ["seamDatatableActionMenuToggle"], ngImport: i0 });
|
|
3355
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DatatableActionMenuToggleDirective, decorators: [{
|
|
2432
3356
|
type: Directive,
|
|
2433
3357
|
args: [{
|
|
2434
3358
|
selector: '[seamDatatableActionMenuToggle]',
|
|
@@ -2511,9 +3435,9 @@ class TheSeamDatatableScrollbarHelperService {
|
|
|
2511
3435
|
});
|
|
2512
3436
|
}
|
|
2513
3437
|
}
|
|
2514
|
-
TheSeamDatatableScrollbarHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2515
|
-
TheSeamDatatableScrollbarHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
2516
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
3438
|
+
TheSeamDatatableScrollbarHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableScrollbarHelperService, deps: [{ token: i0.NgZone }, { token: i1$2.OverlayScrollbarsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3439
|
+
TheSeamDatatableScrollbarHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableScrollbarHelperService });
|
|
3440
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableScrollbarHelperService, decorators: [{
|
|
2517
3441
|
type: Injectable
|
|
2518
3442
|
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1$2.OverlayScrollbarsService }]; } });
|
|
2519
3443
|
|
|
@@ -2538,8 +3462,8 @@ function withStoredColumnInfo(columns, preferenceColumns) {
|
|
|
2538
3462
|
|
|
2539
3463
|
class TheSeamDatatableModule {
|
|
2540
3464
|
}
|
|
2541
|
-
TheSeamDatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
2542
|
-
TheSeamDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
3465
|
+
TheSeamDatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3466
|
+
TheSeamDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableModule, declarations: [DatatableComponent,
|
|
2543
3467
|
DatatableCellTplDirective,
|
|
2544
3468
|
DatatableColumnComponent,
|
|
2545
3469
|
DatatableActionMenuComponent,
|
|
@@ -2560,7 +3484,13 @@ TheSeamDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
|
|
|
2560
3484
|
DatatableMenuBarColumnLeftComponent,
|
|
2561
3485
|
DatatableMenuBarColumnCenterComponent,
|
|
2562
3486
|
DatatableMenuBarColumnRightComponent,
|
|
2563
|
-
DatatableMenuBarTextComponent
|
|
3487
|
+
DatatableMenuBarTextComponent,
|
|
3488
|
+
DatatableColumnFilterMenuComponent,
|
|
3489
|
+
DatatableColumnFilterSearchTextComponent,
|
|
3490
|
+
DatatableColumnFilterSearchNumericComponent,
|
|
3491
|
+
DatatableColumnFilterSearchDateComponent,
|
|
3492
|
+
DatatableColumnFilterTplDirective,
|
|
3493
|
+
TheSeamDatatableColumnFilterDirective], imports: [CommonModule,
|
|
2564
3494
|
NgxDatatableModule,
|
|
2565
3495
|
FontAwesomeModule,
|
|
2566
3496
|
OverlayModule,
|
|
@@ -2578,7 +3508,10 @@ TheSeamDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
|
|
|
2578
3508
|
TheSeamCheckboxComponent,
|
|
2579
3509
|
TheSeamFormFieldModule,
|
|
2580
3510
|
ReactiveFormsModule,
|
|
2581
|
-
TheSeamTableCellTypeModule
|
|
3511
|
+
TheSeamTableCellTypeModule,
|
|
3512
|
+
TheSeamDataFiltersModule,
|
|
3513
|
+
NgSelectModule,
|
|
3514
|
+
TheSeamToggleGroupModule], exports: [DatatableComponent,
|
|
2582
3515
|
DatatableCellTplDirective,
|
|
2583
3516
|
DatatableColumnComponent,
|
|
2584
3517
|
DatatableActionMenuComponent,
|
|
@@ -2598,8 +3531,14 @@ TheSeamDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
|
|
|
2598
3531
|
DatatableMenuBarColumnLeftComponent,
|
|
2599
3532
|
DatatableMenuBarColumnCenterComponent,
|
|
2600
3533
|
DatatableMenuBarColumnRightComponent,
|
|
2601
|
-
DatatableMenuBarTextComponent
|
|
2602
|
-
|
|
3534
|
+
DatatableMenuBarTextComponent,
|
|
3535
|
+
DatatableColumnFilterMenuComponent,
|
|
3536
|
+
DatatableColumnFilterSearchTextComponent,
|
|
3537
|
+
DatatableColumnFilterSearchNumericComponent,
|
|
3538
|
+
DatatableColumnFilterSearchDateComponent,
|
|
3539
|
+
DatatableColumnFilterTplDirective,
|
|
3540
|
+
TheSeamDatatableColumnFilterDirective] });
|
|
3541
|
+
TheSeamDatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableModule, providers: [
|
|
2603
3542
|
{ provide: ScrollbarHelper, useClass: TheSeamDatatableScrollbarHelperService }
|
|
2604
3543
|
], imports: [CommonModule,
|
|
2605
3544
|
NgxDatatableModule,
|
|
@@ -2619,8 +3558,11 @@ TheSeamDatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
|
|
|
2619
3558
|
TheSeamCheckboxComponent,
|
|
2620
3559
|
TheSeamFormFieldModule,
|
|
2621
3560
|
ReactiveFormsModule,
|
|
2622
|
-
TheSeamTableCellTypeModule
|
|
2623
|
-
|
|
3561
|
+
TheSeamTableCellTypeModule,
|
|
3562
|
+
TheSeamDataFiltersModule,
|
|
3563
|
+
NgSelectModule,
|
|
3564
|
+
TheSeamToggleGroupModule] });
|
|
3565
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDatatableModule, decorators: [{
|
|
2624
3566
|
type: NgModule,
|
|
2625
3567
|
args: [{
|
|
2626
3568
|
declarations: [
|
|
@@ -2646,6 +3588,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2646
3588
|
DatatableMenuBarColumnCenterComponent,
|
|
2647
3589
|
DatatableMenuBarColumnRightComponent,
|
|
2648
3590
|
DatatableMenuBarTextComponent,
|
|
3591
|
+
DatatableColumnFilterMenuComponent,
|
|
3592
|
+
DatatableColumnFilterSearchTextComponent,
|
|
3593
|
+
DatatableColumnFilterSearchNumericComponent,
|
|
3594
|
+
DatatableColumnFilterSearchDateComponent,
|
|
3595
|
+
DatatableColumnFilterTplDirective,
|
|
3596
|
+
TheSeamDatatableColumnFilterDirective
|
|
2649
3597
|
],
|
|
2650
3598
|
imports: [
|
|
2651
3599
|
CommonModule,
|
|
@@ -2666,7 +3614,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2666
3614
|
TheSeamCheckboxComponent,
|
|
2667
3615
|
TheSeamFormFieldModule,
|
|
2668
3616
|
ReactiveFormsModule,
|
|
2669
|
-
TheSeamTableCellTypeModule
|
|
3617
|
+
TheSeamTableCellTypeModule,
|
|
3618
|
+
TheSeamDataFiltersModule,
|
|
3619
|
+
NgSelectModule,
|
|
3620
|
+
TheSeamToggleGroupModule
|
|
2670
3621
|
],
|
|
2671
3622
|
exports: [
|
|
2672
3623
|
DatatableComponent,
|
|
@@ -2689,7 +3640,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2689
3640
|
DatatableMenuBarColumnLeftComponent,
|
|
2690
3641
|
DatatableMenuBarColumnCenterComponent,
|
|
2691
3642
|
DatatableMenuBarColumnRightComponent,
|
|
2692
|
-
DatatableMenuBarTextComponent
|
|
3643
|
+
DatatableMenuBarTextComponent,
|
|
3644
|
+
DatatableColumnFilterMenuComponent,
|
|
3645
|
+
DatatableColumnFilterSearchTextComponent,
|
|
3646
|
+
DatatableColumnFilterSearchNumericComponent,
|
|
3647
|
+
DatatableColumnFilterSearchDateComponent,
|
|
3648
|
+
DatatableColumnFilterTplDirective,
|
|
3649
|
+
TheSeamDatatableColumnFilterDirective
|
|
2693
3650
|
],
|
|
2694
3651
|
providers: [
|
|
2695
3652
|
{ provide: ScrollbarHelper, useClass: TheSeamDatatableScrollbarHelperService }
|
|
@@ -2701,5 +3658,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2701
3658
|
* Generated bundle index. Do not edit.
|
|
2702
3659
|
*/
|
|
2703
3660
|
|
|
2704
|
-
export { CURRENT_DATATABLE_PREFERENCES_VERSION, DatatableActionMenuComponent, DatatableActionMenuItemComponent, DatatableActionMenuItemDirective, DatatableActionMenuToggleDirective, DatatableCellTplDirective, DatatableColumnChangesService, DatatableColumnComponent, DatatableColumnPreferencesButtonComponent, DatatableColumnPreferencesComponent, DatatableComponent, DatatableDataSource, DatatableExportButtonComponent, DatatableFilterDirective, DatatableFooterTplDirective, DatatableGqlDataSource, DatatableMenuBarColumnCenterComponent, DatatableMenuBarColumnLeftComponent, DatatableMenuBarColumnRightComponent, DatatableMenuBarComponent, DatatableMenuBarRowComponent, DatatableMenuBarTextComponent, DatatablePreferencesService, DatatableRowActionItemDirective, DatatableRowDetailTplDirective, EMPTY_DATATABLE_PREFERENCES, THESEAM_DATATABLE, THESEAM_DATATABLE_PREFERENCES_ACCESSOR, THESEAM_MENUBAR_ITEM_DATA, TheSeamDatatableFooterDirective, TheSeamDatatableModule, TheSeamDatatableRowDetailDirective, TheSeamDatatableScrollbarHelperService, _THESEAM_DATATABLE, _THESEAM_DATATABLE_ACCESSOR, _THESEAM_DATA_FILTER_CONTAINER, withStoredColumnInfo };
|
|
3661
|
+
export { CURRENT_DATATABLE_PREFERENCES_VERSION, ColumnsDataFilter, ColumnsFiltersService, DatatableActionMenuComponent, DatatableActionMenuItemComponent, DatatableActionMenuItemDirective, DatatableActionMenuToggleDirective, DatatableCellTplDirective, DatatableColumnChangesService, DatatableColumnComponent, DatatableColumnFilterMenuComponent, DatatableColumnFilterSearchDateComponent, DatatableColumnFilterSearchNumericComponent, DatatableColumnFilterSearchTextComponent, DatatableColumnFilterTplDirective, DatatableColumnPreferencesButtonComponent, DatatableColumnPreferencesComponent, DatatableComponent, DatatableDataSource, DatatableExportButtonComponent, DatatableFilterDirective, DatatableFooterTplDirective, DatatableGqlDataSource, DatatableMenuBarColumnCenterComponent, DatatableMenuBarColumnLeftComponent, DatatableMenuBarColumnRightComponent, DatatableMenuBarComponent, DatatableMenuBarRowComponent, DatatableMenuBarTextComponent, DatatablePreferencesService, DatatableRowActionItemDirective, DatatableRowDetailTplDirective, EMPTY_DATATABLE_PREFERENCES, SearchDateColumnsDataFilter, SearchNumericColumnsDataFilter, SearchTextColumnsDataFilter, THESEAM_COLUMNS_DATA_FILTER, THESEAM_COLUMNS_DATA_FILTERS_DEFAULT, THESEAM_COLUMNS_DATA_FILTER_DATE_RANGE_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_NAME, THESEAM_COLUMNS_DATA_FILTER_DATE_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_DATE_SELECT_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_DATE_TEXT_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_NUMERIC_RANGE_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_NAME, THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_NUMERIC_SELECT_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_NUMERIC_TEXT_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_NAME, THESEAM_COLUMNS_DATA_FILTER_TEXT_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_TEXT_SELECT_SEARCH_TYPES, THESEAM_COLUMNS_DATA_FILTER_TEXT_TEXT_SEARCH_TYPES, THESEAM_DATATABLE, THESEAM_DATATABLE_CONFIG, THESEAM_DATATABLE_PREFERENCES_ACCESSOR, THESEAM_MENUBAR_ITEM_DATA, TheSeamDatatableColumnFilterDirective, TheSeamDatatableFooterDirective, TheSeamDatatableModule, TheSeamDatatableRowDetailDirective, TheSeamDatatableScrollbarHelperService, _THESEAM_DATATABLE, _THESEAM_DATATABLE_ACCESSOR, _THESEAM_DATA_FILTER_CONTAINER, getFormattedDateForComparison, withStoredColumnInfo };
|
|
2705
3662
|
//# sourceMappingURL=theseam-ui-common-datatable.mjs.map
|