@biit-solutions/wizardry-theme 1.21.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -0
- package/assets/i18n/chart/de.json +3 -0
- package/assets/i18n/chart/en.json +3 -0
- package/assets/i18n/chart/es.json +3 -0
- package/assets/i18n/chart/fr.json +3 -0
- package/assets/i18n/chart/nl.json +3 -0
- package/assets/i18n/info/de.json +4 -0
- package/assets/i18n/info/en.json +4 -0
- package/assets/i18n/info/es.json +4 -0
- package/assets/i18n/info/fr.json +4 -0
- package/assets/i18n/info/nl.json +1 -0
- package/assets/i18n/inputs/de.json +8 -0
- package/assets/i18n/inputs/en.json +8 -0
- package/assets/i18n/inputs/es.json +8 -0
- package/assets/i18n/inputs/fr.json +8 -0
- package/assets/i18n/inputs/nl.json +4 -0
- package/assets/i18n/login/de.json +32 -0
- package/assets/i18n/login/en.json +32 -0
- package/assets/i18n/login/es.json +32 -0
- package/assets/i18n/login/fr.json +32 -0
- package/assets/i18n/login/nl.json +32 -0
- package/assets/i18n/login-welcome/en.json +6 -0
- package/assets/i18n/login-welcome/es.json +6 -0
- package/assets/i18n/login-welcome/nl.json +6 -0
- package/assets/i18n/table/de.json +14 -0
- package/assets/i18n/table/en.json +14 -0
- package/assets/i18n/table/es.json +14 -0
- package/assets/i18n/table/fr.json +14 -0
- package/assets/i18n/table/nl.json +11 -0
- package/assets/i18n/utils/en.json +69 -0
- package/assets/i18n/utils/es.json +69 -0
- package/assets/i18n/utils/nl.json +1 -0
- package/assets/styles/context-menu/base.scss +131 -0
- package/assets/styles/context-menu/button-reset.scss +31 -0
- package/assets/styles/context-menu/dark-theme.scss +29 -0
- package/button/biit-action-button/biit-action-button.component.d.ts +18 -0
- package/button/biit-action-button/biit-action-button.module.d.ts +10 -0
- package/button/biit-button/biit-button.component.d.ts +25 -0
- package/button/biit-button/biit-button.module.d.ts +9 -0
- package/button/biit-icon-button/biit-icon-button.component.d.ts +8 -0
- package/button/biit-icon-button/biit-icon-button.module.d.ts +8 -0
- package/button/index.d.ts +5 -0
- package/button/public-api.d.ts +6 -0
- package/calendar/biit-calendar/biit-calendar.component.d.ts +52 -0
- package/calendar/biit-calendar/biit-calendar.module.d.ts +12 -0
- package/calendar/biit-calendar/calendar-utility.d.ts +3 -0
- package/calendar/biit-calendar/models/calendar-configuration.d.ts +5 -0
- package/calendar/biit-calendar/models/calendar-event-click-event.d.ts +6 -0
- package/calendar/biit-calendar/models/calendar-event.d.ts +22 -0
- package/calendar/index.d.ts +5 -0
- package/calendar/public-api.d.ts +7 -0
- package/calendar/utils/event-color.d.ts +105 -0
- package/charts/bar-chart/bar-chart.component.d.ts +46 -0
- package/charts/bar-chart/bar-chart.module.d.ts +9 -0
- package/charts/bar-chart/models/bar-chart-data.d.ts +33 -0
- package/charts/heatmap-chart/heatmap-chart-data.d.ts +22 -0
- package/charts/heatmap-chart/heatmap-chart-range.d.ts +6 -0
- package/charts/heatmap-chart/heatmap-chart.component.d.ts +42 -0
- package/charts/heatmap-chart/heatmap-chart.module.d.ts +10 -0
- package/charts/index.d.ts +5 -0
- package/charts/line-chart/line-chart.component.d.ts +38 -0
- package/charts/line-chart/line-chart.module.d.ts +9 -0
- package/charts/line-chart/models/line-chart-data.d.ts +12 -0
- package/charts/meta-view-chart/components/bar-range/bar-range.component.d.ts +14 -0
- package/charts/meta-view-chart/components/bar-range/bar-range.module.d.ts +12 -0
- package/charts/meta-view-chart/components/boolean-filter/boolean-filter.component.d.ts +10 -0
- package/charts/meta-view-chart/components/boolean-filter/boolean-filter.module.d.ts +10 -0
- package/charts/meta-view-chart/components/date-filter-selector/date-filter-selector.component.d.ts +28 -0
- package/charts/meta-view-chart/components/date-filter-selector/date-filter-selector.module.d.ts +12 -0
- package/charts/meta-view-chart/components/meta-board/meta-board.component.d.ts +12 -0
- package/charts/meta-view-chart/components/meta-board/meta-board.module.d.ts +9 -0
- package/charts/meta-view-chart/components/meta-element/meta-element.component.d.ts +8 -0
- package/charts/meta-view-chart/components/meta-element/meta-element.module.d.ts +9 -0
- package/charts/meta-view-chart/components/meta-sorter/meta-filter.component.d.ts +28 -0
- package/charts/meta-view-chart/components/meta-sorter/meta-filter.module.d.ts +17 -0
- package/charts/meta-view-chart/components/meta-sorter/model/FieldType.d.ts +8 -0
- package/charts/meta-view-chart/components/metadata-viewer/metadata-viewer.component.d.ts +13 -0
- package/charts/meta-view-chart/components/metadata-viewer/metadata-viewer.module.d.ts +14 -0
- package/charts/meta-view-chart/components/text-filter/text-filter.component.d.ts +11 -0
- package/charts/meta-view-chart/components/text-filter/text-filter.module.d.ts +10 -0
- package/charts/meta-view-chart/meta-view-chart.component.d.ts +32 -0
- package/charts/meta-view-chart/meta-view-chart.module.d.ts +16 -0
- package/charts/meta-view-chart/model/meta-view-data.d.ts +10 -0
- package/charts/meta-view-chart/model/meta-view-element-data.d.ts +9 -0
- package/charts/meta-view-chart/model/meta-view-preselection.d.ts +5 -0
- package/charts/meta-view-chart/model/view.d.ts +4 -0
- package/charts/meta-view-chart/pipes/auto-format.pipe.d.ts +7 -0
- package/charts/meta-view-chart/pipes/extract-data.pipe.d.ts +8 -0
- package/charts/meta-view-chart/pipes/field-type.pipe.d.ts +8 -0
- package/charts/meta-view-chart/pipes/filter-by.pipe.d.ts +7 -0
- package/charts/meta-view-chart/pipes/has.pipe.d.ts +7 -0
- package/charts/meta-view-chart/pipes/meta-element-max-value.pipe.d.ts +8 -0
- package/charts/meta-view-chart/pipes/meta-element-min-value.pipe.d.ts +8 -0
- package/charts/meta-view-chart/pipes/meta-element-to-bar-chart.pipe.d.ts +9 -0
- package/charts/meta-view-chart/pipes/month-name.pipe.d.ts +7 -0
- package/charts/meta-view-chart/pipes/pipes.module.d.ts +20 -0
- package/charts/meta-view-chart/pipes/printf.pipe.d.ts +7 -0
- package/charts/meta-view-chart/pipes/remove-from-array.pipe.d.ts +7 -0
- package/charts/meta-view-chart/pipes/safe-html.pipe.d.ts +10 -0
- package/charts/meta-view-chart/pipes/step-value-extractor.pipe.d.ts +9 -0
- package/charts/pie-chart/models/pie-chart-data.d.ts +5 -0
- package/charts/pie-chart/pie-chart.component.d.ts +39 -0
- package/charts/pie-chart/pie-chart.module.d.ts +9 -0
- package/charts/public-api.d.ts +28 -0
- package/charts/radar-chart/models/radar-chart-data.d.ts +11 -0
- package/charts/radar-chart/radar-chart.component.d.ts +38 -0
- package/charts/radar-chart/radar-chart.module.d.ts +9 -0
- package/charts/radial-chart/models/radial-chart-data.d.ts +5 -0
- package/charts/radial-chart/radial-chart.component.d.ts +40 -0
- package/charts/radial-chart/radial-chart.module.d.ts +9 -0
- package/charts/timeline-viewer-chart/models/timeline-viewer-chart-data.d.ts +17 -0
- package/charts/timeline-viewer-chart/models/timeline-viewer-chart-options.d.ts +9 -0
- package/charts/timeline-viewer-chart/timeline-viewer-chart.component.d.ts +40 -0
- package/charts/timeline-viewer-chart/timeline-viewer-chart.module.d.ts +9 -0
- package/esm2020/biit-solutions-wizardry-theme.mjs +5 -0
- package/esm2020/button/biit-action-button/biit-action-button.component.mjs +68 -0
- package/esm2020/button/biit-action-button/biit-action-button.module.mjs +32 -0
- package/esm2020/button/biit-button/biit-button.component.mjs +57 -0
- package/esm2020/button/biit-button/biit-button.module.mjs +40 -0
- package/esm2020/button/biit-icon-button/biit-icon-button.component.mjs +19 -0
- package/esm2020/button/biit-icon-button/biit-icon-button.module.mjs +24 -0
- package/esm2020/button/biit-solutions-wizardry-theme-button.mjs +5 -0
- package/esm2020/button/public-api.mjs +10 -0
- package/esm2020/calendar/biit-calendar/biit-calendar.component.mjs +166 -0
- package/esm2020/calendar/biit-calendar/biit-calendar.module.mjs +44 -0
- package/esm2020/calendar/biit-calendar/calendar-utility.mjs +2 -0
- package/esm2020/calendar/biit-calendar/models/calendar-configuration.mjs +9 -0
- package/esm2020/calendar/biit-calendar/models/calendar-event-click-event.mjs +7 -0
- package/esm2020/calendar/biit-calendar/models/calendar-event.mjs +38 -0
- package/esm2020/calendar/biit-solutions-wizardry-theme-calendar.mjs +5 -0
- package/esm2020/calendar/public-api.mjs +11 -0
- package/esm2020/calendar/utils/event-color.mjs +101 -0
- package/esm2020/charts/bar-chart/bar-chart.component.mjs +190 -0
- package/esm2020/charts/bar-chart/bar-chart.module.mjs +24 -0
- package/esm2020/charts/bar-chart/models/bar-chart-data.mjs +39 -0
- package/esm2020/charts/biit-solutions-wizardry-theme-charts.mjs +5 -0
- package/esm2020/charts/heatmap-chart/heatmap-chart-data.mjs +65 -0
- package/esm2020/charts/heatmap-chart/heatmap-chart-range.mjs +8 -0
- package/esm2020/charts/heatmap-chart/heatmap-chart.component.mjs +242 -0
- package/esm2020/charts/heatmap-chart/heatmap-chart.module.mjs +28 -0
- package/esm2020/charts/line-chart/line-chart.component.mjs +191 -0
- package/esm2020/charts/line-chart/line-chart.module.mjs +24 -0
- package/esm2020/charts/line-chart/models/line-chart-data.mjs +15 -0
- package/esm2020/charts/meta-view-chart/components/bar-range/bar-range.component.mjs +46 -0
- package/esm2020/charts/meta-view-chart/components/bar-range/bar-range.module.mjs +43 -0
- package/esm2020/charts/meta-view-chart/components/boolean-filter/boolean-filter.component.mjs +27 -0
- package/esm2020/charts/meta-view-chart/components/boolean-filter/boolean-filter.module.mjs +35 -0
- package/esm2020/charts/meta-view-chart/components/date-filter-selector/date-filter-selector.component.mjs +156 -0
- package/esm2020/charts/meta-view-chart/components/date-filter-selector/date-filter-selector.module.mjs +40 -0
- package/esm2020/charts/meta-view-chart/components/meta-board/meta-board.component.mjs +49 -0
- package/esm2020/charts/meta-view-chart/components/meta-board/meta-board.module.mjs +28 -0
- package/esm2020/charts/meta-view-chart/components/meta-element/meta-element.component.mjs +19 -0
- package/esm2020/charts/meta-view-chart/components/meta-element/meta-element.module.mjs +28 -0
- package/esm2020/charts/meta-view-chart/components/meta-sorter/meta-filter.component.mjs +92 -0
- package/esm2020/charts/meta-view-chart/components/meta-sorter/meta-filter.module.mjs +60 -0
- package/esm2020/charts/meta-view-chart/components/meta-sorter/model/FieldType.mjs +10 -0
- package/esm2020/charts/meta-view-chart/components/metadata-viewer/metadata-viewer.component.mjs +37 -0
- package/esm2020/charts/meta-view-chart/components/metadata-viewer/metadata-viewer.module.mjs +48 -0
- package/esm2020/charts/meta-view-chart/components/text-filter/text-filter.component.mjs +28 -0
- package/esm2020/charts/meta-view-chart/components/text-filter/text-filter.module.mjs +32 -0
- package/esm2020/charts/meta-view-chart/meta-view-chart.component.mjs +141 -0
- package/esm2020/charts/meta-view-chart/meta-view-chart.module.mjs +56 -0
- package/esm2020/charts/meta-view-chart/model/meta-view-data.mjs +13 -0
- package/esm2020/charts/meta-view-chart/model/meta-view-element-data.mjs +7 -0
- package/esm2020/charts/meta-view-chart/model/meta-view-preselection.mjs +7 -0
- package/esm2020/charts/meta-view-chart/model/view.mjs +6 -0
- package/esm2020/charts/meta-view-chart/pipes/auto-format.pipe.mjs +19 -0
- package/esm2020/charts/meta-view-chart/pipes/extract-data.pipe.mjs +16 -0
- package/esm2020/charts/meta-view-chart/pipes/field-type.pipe.mjs +34 -0
- package/esm2020/charts/meta-view-chart/pipes/filter-by.pipe.mjs +16 -0
- package/esm2020/charts/meta-view-chart/pipes/has.pipe.mjs +16 -0
- package/esm2020/charts/meta-view-chart/pipes/meta-element-max-value.pipe.mjs +20 -0
- package/esm2020/charts/meta-view-chart/pipes/meta-element-min-value.pipe.mjs +20 -0
- package/esm2020/charts/meta-view-chart/pipes/meta-element-to-bar-chart.pipe.mjs +29 -0
- package/esm2020/charts/meta-view-chart/pipes/month-name.pipe.mjs +18 -0
- package/esm2020/charts/meta-view-chart/pipes/pipes.module.mjs +84 -0
- package/esm2020/charts/meta-view-chart/pipes/printf.pipe.mjs +19 -0
- package/esm2020/charts/meta-view-chart/pipes/remove-from-array.pipe.mjs +16 -0
- package/esm2020/charts/meta-view-chart/pipes/safe-html.pipe.mjs +20 -0
- package/esm2020/charts/meta-view-chart/pipes/step-value-extractor.pipe.mjs +34 -0
- package/esm2020/charts/pie-chart/models/pie-chart-data.mjs +7 -0
- package/esm2020/charts/pie-chart/pie-chart.component.mjs +132 -0
- package/esm2020/charts/pie-chart/pie-chart.module.mjs +24 -0
- package/esm2020/charts/public-api.mjs +32 -0
- package/esm2020/charts/radar-chart/models/radar-chart-data.mjs +14 -0
- package/esm2020/charts/radar-chart/radar-chart.component.mjs +140 -0
- package/esm2020/charts/radar-chart/radar-chart.module.mjs +24 -0
- package/esm2020/charts/radial-chart/models/radial-chart-data.mjs +7 -0
- package/esm2020/charts/radial-chart/radial-chart.component.mjs +145 -0
- package/esm2020/charts/radial-chart/radial-chart.module.mjs +24 -0
- package/esm2020/charts/timeline-viewer-chart/models/timeline-viewer-chart-data.mjs +23 -0
- package/esm2020/charts/timeline-viewer-chart/models/timeline-viewer-chart-options.mjs +6 -0
- package/esm2020/charts/timeline-viewer-chart/timeline-viewer-chart.component.mjs +206 -0
- package/esm2020/charts/timeline-viewer-chart/timeline-viewer-chart.module.mjs +25 -0
- package/esm2020/i18n/biit-solutions-wizardry-theme-i18n.mjs +5 -0
- package/esm2020/i18n/i18n/http-loader.mjs +19 -0
- package/esm2020/i18n/i18n/supported-languages.mjs +9 -0
- package/esm2020/i18n/i18n/transloco-root.module.mjs +83 -0
- package/esm2020/i18n/public-api.mjs +7 -0
- package/esm2020/icon/biit-icon/biit-icon.component.mjs +92 -0
- package/esm2020/icon/biit-icon/biit-icon.module.mjs +24 -0
- package/esm2020/icon/biit-icon/biit-icon.service.mjs +25 -0
- package/esm2020/icon/biit-solutions-wizardry-theme-icon.mjs +5 -0
- package/esm2020/icon/public-api.mjs +7 -0
- package/esm2020/info/biit-cookies-consent/biit-cookies-consent.component.mjs +36 -0
- package/esm2020/info/biit-cookies-consent/biit-cookies-consent.module.mjs +36 -0
- package/esm2020/info/biit-gallery-card/biit-gallery-card.component.mjs +23 -0
- package/esm2020/info/biit-gallery-card/biit-gallery-card.module.mjs +28 -0
- package/esm2020/info/biit-progress-bar/biit-progress-bar.component.mjs +31 -0
- package/esm2020/info/biit-progress-bar/biit-progress-bar.module.mjs +24 -0
- package/esm2020/info/biit-snackbar/biit-notification/biit-notification.component.mjs +38 -0
- package/esm2020/info/biit-snackbar/biit-snackbar.component.mjs +50 -0
- package/esm2020/info/biit-snackbar/biit-snackbar.module.mjs +41 -0
- package/esm2020/info/biit-snackbar/biit-snackbar.service.mjs +64 -0
- package/esm2020/info/biit-snackbar/models/biit-snackbar-horizontal-position.mjs +7 -0
- package/esm2020/info/biit-snackbar/models/biit-snackbar-vertical-position.mjs +6 -0
- package/esm2020/info/biit-snackbar/models/notification-type.mjs +8 -0
- package/esm2020/info/biit-snackbar/models/notification.mjs +23 -0
- package/esm2020/info/biit-solutions-wizardry-theme-info.mjs +5 -0
- package/esm2020/info/biit-tooltip/biit-tooltip.component.mjs +19 -0
- package/esm2020/info/biit-tooltip/biit-tooltip.directive.mjs +106 -0
- package/esm2020/info/biit-tooltip/biit-tooltip.module.mjs +29 -0
- package/esm2020/info/biit-tooltip-icon/biit-tooltip-icon.component.mjs +23 -0
- package/esm2020/info/biit-tooltip-icon/biit-tooltip-icon.module.mjs +28 -0
- package/esm2020/info/public-api.mjs +23 -0
- package/esm2020/inputs/biit-checkbox/biit-checkbox.component.mjs +52 -0
- package/esm2020/inputs/biit-checkbox/biit-checkbox.module.mjs +32 -0
- package/esm2020/inputs/biit-datepicker/biit-datepicker.component.mjs +251 -0
- package/esm2020/inputs/biit-datepicker/biit-datepicker.module.mjs +68 -0
- package/esm2020/inputs/biit-datepicker/models/view.mjs +6 -0
- package/esm2020/inputs/biit-datepicker/pipes/calendar-date-pipe.mjs +18 -0
- package/esm2020/inputs/biit-datepicker/pipes/is-disabled-pipe.mjs +35 -0
- package/esm2020/inputs/biit-datepicker/pipes/is-same-day-pipe.mjs +19 -0
- package/esm2020/inputs/biit-datepicker/pipes/is-today-pipe.mjs +19 -0
- package/esm2020/inputs/biit-datepicker/pipes/month-selector-label-pipe.mjs +22 -0
- package/esm2020/inputs/biit-datepicker/pipes/out-of-month-pipe.mjs +19 -0
- package/esm2020/inputs/biit-dropdown/biit-dropdown.component.mjs +269 -0
- package/esm2020/inputs/biit-dropdown/biit-dropdown.module.mjs +36 -0
- package/esm2020/inputs/biit-group/biit-group.component.mjs +38 -0
- package/esm2020/inputs/biit-group/biit-group.module.mjs +32 -0
- package/esm2020/inputs/biit-input-text/biit-input-text.component.mjs +142 -0
- package/esm2020/inputs/biit-input-text/biit-input-text.module.mjs +40 -0
- package/esm2020/inputs/biit-multiselect/biit-multiselect.component.mjs +321 -0
- package/esm2020/inputs/biit-multiselect/biit-multiselect.module.mjs +40 -0
- package/esm2020/inputs/biit-radio-button/biit-radio-button.component.mjs +62 -0
- package/esm2020/inputs/biit-radio-button/biit-radio-button.module.mjs +36 -0
- package/esm2020/inputs/biit-slider/biit-slider.component.mjs +85 -0
- package/esm2020/inputs/biit-slider/biit-slider.module.mjs +32 -0
- package/esm2020/inputs/biit-slider-option/biit-slider-option.component.mjs +99 -0
- package/esm2020/inputs/biit-slider-option/biit-slider-option.module.mjs +36 -0
- package/esm2020/inputs/biit-slider-option-vertical/biit-slider-option-vertical.component.mjs +97 -0
- package/esm2020/inputs/biit-slider-option-vertical/biit-slider-option-vertical.module.mjs +36 -0
- package/esm2020/inputs/biit-slider-range/biit-slider-range.component.mjs +108 -0
- package/esm2020/inputs/biit-slider-range/biit-slider-range.module.mjs +32 -0
- package/esm2020/inputs/biit-solutions-wizardry-theme-inputs.mjs +5 -0
- package/esm2020/inputs/biit-ternary-togle/biit-ternary-toggle.component.mjs +65 -0
- package/esm2020/inputs/biit-ternary-togle/biit-ternary-toggle.module.mjs +31 -0
- package/esm2020/inputs/biit-textarea/biit-textarea.component.mjs +99 -0
- package/esm2020/inputs/biit-textarea/biit-textarea.module.mjs +36 -0
- package/esm2020/inputs/biit-toggle/biit-toggle.component.mjs +45 -0
- package/esm2020/inputs/biit-toggle/biit-toggle.module.mjs +28 -0
- package/esm2020/inputs/biit-toggle-group/biit-toggle-button.component.mjs +23 -0
- package/esm2020/inputs/biit-toggle-group/biit-toggle-group.component.mjs +69 -0
- package/esm2020/inputs/biit-toggle-group/biit-toggle-group.module.mjs +37 -0
- package/esm2020/inputs/public-api.mjs +36 -0
- package/esm2020/login/biit-login/biit-login.component.mjs +238 -0
- package/esm2020/login/biit-login/biit-login.module.mjs +53 -0
- package/esm2020/login/biit-login/models/LoginErrors.mjs +10 -0
- package/esm2020/login/biit-login/models/biit-login-service-support.mjs +2 -0
- package/esm2020/login/biit-login/models/sign-up-request.mjs +11 -0
- package/esm2020/login/biit-solutions-wizardry-theme-login.mjs +5 -0
- package/esm2020/login/public-api.mjs +8 -0
- package/esm2020/models/BiitLogin.mjs +14 -0
- package/esm2020/models/biit-solutions-wizardry-theme-models.mjs +5 -0
- package/esm2020/models/public-api.mjs +5 -0
- package/esm2020/navigation/biit-nav-menu/biit-nav-menu.component.mjs +87 -0
- package/esm2020/navigation/biit-nav-menu/biit-nav-menu.module.mjs +32 -0
- package/esm2020/navigation/biit-nav-user/biit-nav-user.component.mjs +26 -0
- package/esm2020/navigation/biit-nav-user/biit-nav-user.module.mjs +24 -0
- package/esm2020/navigation/biit-solutions-wizardry-theme-navigation.mjs +5 -0
- package/esm2020/navigation/biit-tab-group/biit-tab-group.component.mjs +54 -0
- package/esm2020/navigation/biit-tab-group/biit-tab-group.module.mjs +36 -0
- package/esm2020/navigation/biit-tab-group/biit-tab.component.mjs +21 -0
- package/esm2020/navigation/biit-vertical-menu/biit-vertical-menu.component.mjs +30 -0
- package/esm2020/navigation/biit-vertical-menu/biit-vertical-menu.module.mjs +36 -0
- package/esm2020/navigation/public-api.mjs +13 -0
- package/esm2020/popup/biit-popup/biit-popup.component.mjs +156 -0
- package/esm2020/popup/biit-popup/biit-popup.module.mjs +52 -0
- package/esm2020/popup/biit-solutions-wizardry-theme-popup.mjs +5 -0
- package/esm2020/popup/public-api.mjs +6 -0
- package/esm2020/public-api.mjs +6 -0
- package/esm2020/table/biit-datatable/biit-datatable.component.mjs +138 -0
- package/esm2020/table/biit-datatable/biit-datatable.module.mjs +62 -0
- package/esm2020/table/biit-datatable/models/datatable-column.mjs +15 -0
- package/esm2020/table/biit-datatable/models/page.mjs +11 -0
- package/esm2020/table/biit-datatable-pager/biit-datatable-pager.component.mjs +35 -0
- package/esm2020/table/biit-datatable-pager/biit-datatable-pager.module.mjs +40 -0
- package/esm2020/table/biit-paginator/biit-paginator.component.mjs +196 -0
- package/esm2020/table/biit-paginator/biit-paginator.module.mjs +48 -0
- package/esm2020/table/biit-paginator/models/biit-paginator-options.mjs +11 -0
- package/esm2020/table/biit-solutions-wizardry-theme-table.mjs +5 -0
- package/esm2020/table/biit-table/biit-table.component.mjs +301 -0
- package/esm2020/table/biit-table/biit-table.module.mjs +95 -0
- package/esm2020/table/biit-table/models/biit-table-action-response.mjs +7 -0
- package/esm2020/table/biit-table/models/biit-table-column.mjs +21 -0
- package/esm2020/table/biit-table/models/biit-table-data.mjs +7 -0
- package/esm2020/table/biit-table/models/biit-table-response.mjs +9 -0
- package/esm2020/table/biit-table/models/biit-table-sorting.mjs +12 -0
- package/esm2020/table/biit-table/models/column-resize-handler.mjs +3 -0
- package/esm2020/table/biit-table/pipes/column-data-pipe.mjs +21 -0
- package/esm2020/table/biit-table/pipes/visible-columns-pipe.mjs +16 -0
- package/esm2020/table/public-api.mjs +20 -0
- package/esm2020/table/utils/generic-filter.mjs +47 -0
- package/esm2020/table/utils/generic-sort.mjs +42 -0
- package/esm2020/utils/biit-solutions-wizardry-theme-utils.mjs +5 -0
- package/esm2020/utils/error-handler.mjs +24 -0
- package/esm2020/utils/i-stack.mjs +2 -0
- package/esm2020/utils/input-limits.mjs +8 -0
- package/esm2020/utils/pipes/localized-date-pipe.mjs +23 -0
- package/esm2020/utils/pipes/localized-date-pipe.module.mjs +17 -0
- package/esm2020/utils/pipes/map-get-pipe.mjs +21 -0
- package/esm2020/utils/pipes/map-get-pipe.module.mjs +17 -0
- package/esm2020/utils/public-api.mjs +11 -0
- package/esm2020/utils/stack.mjs +22 -0
- package/fesm2015/biit-solutions-wizardry-theme-button.mjs +233 -0
- package/fesm2015/biit-solutions-wizardry-theme-button.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-calendar.mjs +369 -0
- package/fesm2015/biit-solutions-wizardry-theme-calendar.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-charts.mjs +2780 -0
- package/fesm2015/biit-solutions-wizardry-theme-charts.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-i18n.mjs +118 -0
- package/fesm2015/biit-solutions-wizardry-theme-i18n.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-icon.mjs +147 -0
- package/fesm2015/biit-solutions-wizardry-theme-icon.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-info.mjs +572 -0
- package/fesm2015/biit-solutions-wizardry-theme-info.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-inputs.mjs +2317 -0
- package/fesm2015/biit-solutions-wizardry-theme-inputs.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-login.mjs +318 -0
- package/fesm2015/biit-solutions-wizardry-theme-login.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-models.mjs +24 -0
- package/fesm2015/biit-solutions-wizardry-theme-models.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-navigation.mjs +330 -0
- package/fesm2015/biit-solutions-wizardry-theme-navigation.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-popup.mjs +216 -0
- package/fesm2015/biit-solutions-wizardry-theme-popup.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-table.mjs +1067 -0
- package/fesm2015/biit-solutions-wizardry-theme-table.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme-utils.mjs +136 -0
- package/fesm2015/biit-solutions-wizardry-theme-utils.mjs.map +1 -0
- package/fesm2015/biit-solutions-wizardry-theme.mjs +12 -0
- package/fesm2015/biit-solutions-wizardry-theme.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-button.mjs +233 -0
- package/fesm2020/biit-solutions-wizardry-theme-button.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-calendar.mjs +369 -0
- package/fesm2020/biit-solutions-wizardry-theme-calendar.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-charts.mjs +2746 -0
- package/fesm2020/biit-solutions-wizardry-theme-charts.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-i18n.mjs +118 -0
- package/fesm2020/biit-solutions-wizardry-theme-i18n.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-icon.mjs +145 -0
- package/fesm2020/biit-solutions-wizardry-theme-icon.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-info.mjs +572 -0
- package/fesm2020/biit-solutions-wizardry-theme-info.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-inputs.mjs +2313 -0
- package/fesm2020/biit-solutions-wizardry-theme-inputs.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-login.mjs +317 -0
- package/fesm2020/biit-solutions-wizardry-theme-login.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-models.mjs +24 -0
- package/fesm2020/biit-solutions-wizardry-theme-models.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-navigation.mjs +328 -0
- package/fesm2020/biit-solutions-wizardry-theme-navigation.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-popup.mjs +216 -0
- package/fesm2020/biit-solutions-wizardry-theme-popup.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-table.mjs +1064 -0
- package/fesm2020/biit-solutions-wizardry-theme-table.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme-utils.mjs +135 -0
- package/fesm2020/biit-solutions-wizardry-theme-utils.mjs.map +1 -0
- package/fesm2020/biit-solutions-wizardry-theme.mjs +12 -0
- package/fesm2020/biit-solutions-wizardry-theme.mjs.map +1 -0
- package/i18n/i18n/http-loader.d.ts +11 -0
- package/i18n/i18n/supported-languages.d.ts +10 -0
- package/i18n/i18n/transloco-root.module.d.ts +8 -0
- package/i18n/index.d.ts +5 -0
- package/i18n/public-api.d.ts +3 -0
- package/icon/biit-icon/biit-icon.component.d.ts +23 -0
- package/icon/biit-icon/biit-icon.module.d.ts +8 -0
- package/icon/biit-icon/biit-icon.service.d.ts +10 -0
- package/icon/index.d.ts +5 -0
- package/icon/public-api.d.ts +3 -0
- package/index.d.ts +5 -0
- package/info/biit-cookies-consent/biit-cookies-consent.component.d.ts +8 -0
- package/info/biit-cookies-consent/biit-cookies-consent.module.d.ts +11 -0
- package/info/biit-gallery-card/biit-gallery-card.component.d.ts +9 -0
- package/info/biit-gallery-card/biit-gallery-card.module.d.ts +9 -0
- package/info/biit-progress-bar/biit-progress-bar.component.d.ts +13 -0
- package/info/biit-progress-bar/biit-progress-bar.module.d.ts +8 -0
- package/info/biit-snackbar/biit-notification/biit-notification.component.d.ts +12 -0
- package/info/biit-snackbar/biit-snackbar.component.d.ts +12 -0
- package/info/biit-snackbar/biit-snackbar.module.d.ts +12 -0
- package/info/biit-snackbar/biit-snackbar.service.d.ts +21 -0
- package/info/biit-snackbar/models/biit-snackbar-horizontal-position.d.ts +5 -0
- package/info/biit-snackbar/models/biit-snackbar-vertical-position.d.ts +4 -0
- package/info/biit-snackbar/models/notification-type.d.ts +6 -0
- package/info/biit-snackbar/models/notification.d.ts +12 -0
- package/info/biit-tooltip/biit-tooltip.component.d.ts +11 -0
- package/info/biit-tooltip/biit-tooltip.directive.d.ts +16 -0
- package/info/biit-tooltip/biit-tooltip.module.d.ts +9 -0
- package/info/biit-tooltip-icon/biit-tooltip-icon.component.d.ts +8 -0
- package/info/biit-tooltip-icon/biit-tooltip-icon.module.d.ts +9 -0
- package/info/index.d.ts +5 -0
- package/info/public-api.d.ts +19 -0
- package/inputs/biit-checkbox/biit-checkbox.component.d.ts +16 -0
- package/inputs/biit-checkbox/biit-checkbox.module.d.ts +10 -0
- package/inputs/biit-datepicker/biit-datepicker.component.d.ts +59 -0
- package/inputs/biit-datepicker/biit-datepicker.module.d.ts +20 -0
- package/inputs/biit-datepicker/models/view.d.ts +4 -0
- package/inputs/biit-datepicker/pipes/calendar-date-pipe.d.ts +8 -0
- package/inputs/biit-datepicker/pipes/is-disabled-pipe.d.ts +8 -0
- package/inputs/biit-datepicker/pipes/is-same-day-pipe.d.ts +8 -0
- package/inputs/biit-datepicker/pipes/is-today-pipe.d.ts +8 -0
- package/inputs/biit-datepicker/pipes/month-selector-label-pipe.d.ts +11 -0
- package/inputs/biit-datepicker/pipes/out-of-month-pipe.d.ts +8 -0
- package/inputs/biit-dropdown/biit-dropdown.component.d.ts +52 -0
- package/inputs/biit-dropdown/biit-dropdown.module.d.ts +11 -0
- package/inputs/biit-group/biit-group.component.d.ts +14 -0
- package/inputs/biit-group/biit-group.module.d.ts +10 -0
- package/inputs/biit-input-text/biit-input-text.component.d.ts +44 -0
- package/inputs/biit-input-text/biit-input-text.module.d.ts +12 -0
- package/inputs/biit-multiselect/biit-multiselect.component.d.ts +63 -0
- package/inputs/biit-multiselect/biit-multiselect.module.d.ts +12 -0
- package/inputs/biit-radio-button/biit-radio-button.component.d.ts +22 -0
- package/inputs/biit-radio-button/biit-radio-button.module.d.ts +11 -0
- package/inputs/biit-slider/biit-slider.component.d.ts +27 -0
- package/inputs/biit-slider/biit-slider.module.d.ts +10 -0
- package/inputs/biit-slider-option/biit-slider-option.component.d.ts +32 -0
- package/inputs/biit-slider-option/biit-slider-option.module.d.ts +11 -0
- package/inputs/biit-slider-option-vertical/biit-slider-option-vertical.component.d.ts +32 -0
- package/inputs/biit-slider-option-vertical/biit-slider-option-vertical.module.d.ts +11 -0
- package/inputs/biit-slider-range/biit-slider-range.component.d.ts +28 -0
- package/inputs/biit-slider-range/biit-slider-range.module.d.ts +10 -0
- package/inputs/biit-ternary-togle/biit-ternary-toggle.component.d.ts +15 -0
- package/inputs/biit-ternary-togle/biit-ternary-toggle.module.d.ts +9 -0
- package/inputs/biit-textarea/biit-textarea.component.d.ts +31 -0
- package/inputs/biit-textarea/biit-textarea.module.d.ts +11 -0
- package/inputs/biit-toggle/biit-toggle.component.d.ts +14 -0
- package/inputs/biit-toggle/biit-toggle.module.d.ts +9 -0
- package/inputs/biit-toggle-group/biit-toggle-button.component.d.ts +12 -0
- package/inputs/biit-toggle-group/biit-toggle-group.component.d.ts +19 -0
- package/inputs/biit-toggle-group/biit-toggle-group.module.d.ts +11 -0
- package/inputs/index.d.ts +5 -0
- package/inputs/public-api.d.ts +32 -0
- package/login/biit-login/biit-login.component.d.ts +59 -0
- package/login/biit-login/biit-login.module.d.ts +14 -0
- package/login/biit-login/models/LoginErrors.d.ts +8 -0
- package/login/biit-login/models/biit-login-service-support.d.ts +3 -0
- package/login/biit-login/models/sign-up-request.d.ts +10 -0
- package/login/index.d.ts +5 -0
- package/login/public-api.d.ts +4 -0
- package/models/BiitLogin.d.ts +6 -0
- package/models/index.d.ts +5 -0
- package/models/public-api.d.ts +1 -0
- package/navigation/biit-nav-menu/biit-nav-menu.component.d.ts +31 -0
- package/navigation/biit-nav-menu/biit-nav-menu.module.d.ts +10 -0
- package/navigation/biit-nav-user/biit-nav-user.component.d.ts +10 -0
- package/navigation/biit-nav-user/biit-nav-user.module.d.ts +8 -0
- package/navigation/biit-tab-group/biit-tab-group.component.d.ts +18 -0
- package/navigation/biit-tab-group/biit-tab-group.module.d.ts +10 -0
- package/navigation/biit-tab-group/biit-tab.component.d.ts +8 -0
- package/navigation/biit-vertical-menu/biit-vertical-menu.component.d.ts +11 -0
- package/navigation/biit-vertical-menu/biit-vertical-menu.module.d.ts +12 -0
- package/navigation/index.d.ts +5 -0
- package/navigation/public-api.d.ts +9 -0
- package/package.json +151 -0
- package/popup/biit-popup/biit-popup.component.d.ts +66 -0
- package/popup/biit-popup/biit-popup.module.d.ts +9 -0
- package/popup/index.d.ts +5 -0
- package/popup/public-api.d.ts +2 -0
- package/public-api.d.ts +1 -0
- package/styles.scss +128 -0
- package/table/biit-datatable/biit-datatable.component.d.ts +57 -0
- package/table/biit-datatable/biit-datatable.module.d.ts +15 -0
- package/table/biit-datatable/models/datatable-column.d.ts +192 -0
- package/table/biit-datatable/models/page.d.ts +6 -0
- package/table/biit-datatable-pager/biit-datatable-pager.component.d.ts +10 -0
- package/table/biit-datatable-pager/biit-datatable-pager.module.d.ts +13 -0
- package/table/biit-paginator/biit-paginator.component.d.ts +31 -0
- package/table/biit-paginator/biit-paginator.module.d.ts +13 -0
- package/table/biit-paginator/models/biit-paginator-options.d.ts +9 -0
- package/table/biit-table/biit-table.component.d.ts +87 -0
- package/table/biit-table/biit-table.module.d.ts +19 -0
- package/table/biit-table/models/biit-table-action-response.d.ts +5 -0
- package/table/biit-table/models/biit-table-column.d.ts +18 -0
- package/table/biit-table/models/biit-table-data.d.ts +5 -0
- package/table/biit-table/models/biit-table-response.d.ts +8 -0
- package/table/biit-table/models/biit-table-sorting.d.ts +9 -0
- package/table/biit-table/models/column-resize-handler.d.ts +7 -0
- package/table/biit-table/pipes/column-data-pipe.d.ts +7 -0
- package/table/biit-table/pipes/visible-columns-pipe.d.ts +8 -0
- package/table/index.d.ts +5 -0
- package/table/public-api.d.ts +16 -0
- package/table/utils/generic-filter.d.ts +3 -0
- package/table/utils/generic-sort.d.ts +5 -0
- package/utils/error-handler.d.ts +6 -0
- package/utils/i-stack.d.ts +6 -0
- package/utils/index.d.ts +5 -0
- package/utils/input-limits.d.ts +7 -0
- package/utils/pipes/localized-date-pipe.d.ts +10 -0
- package/utils/pipes/localized-date-pipe.module.d.ts +7 -0
- package/utils/pipes/map-get-pipe.d.ts +7 -0
- package/utils/pipes/map-get-pipe.module.d.ts +7 -0
- package/utils/public-api.d.ts +7 -0
- package/utils/stack.d.ts +10 -0
|
@@ -0,0 +1,1067 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { forwardRef, Component, ViewChild, Pipe, Directive, EventEmitter, Input, ContentChild, Output, NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
3
|
+
import * as i4 from '@biit-solutions/wizardry-theme/inputs';
|
|
4
|
+
import { BiitMultiselectType, BiitMultiselectModule, BiitInputTextModule, BiitCheckboxModule } from '@biit-solutions/wizardry-theme/inputs';
|
|
5
|
+
import * as i5 from '@ngneat/transloco';
|
|
6
|
+
import { TRANSLOCO_SCOPE, provideTranslocoScope, TranslocoModule } from '@ngneat/transloco';
|
|
7
|
+
import * as i1 from '@angular/common';
|
|
8
|
+
import { CommonModule, NgTemplateOutlet, NgForOf, NgIf } from '@angular/common';
|
|
9
|
+
import * as i2 from '@angular/forms';
|
|
10
|
+
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
11
|
+
import * as i1$1 from '@biit-solutions/wizardry-theme/icon';
|
|
12
|
+
import { BiitIconModule } from '@biit-solutions/wizardry-theme/icon';
|
|
13
|
+
import * as i8 from '@biit-solutions/wizardry-theme/button';
|
|
14
|
+
import { BiitIconButtonModule, BiitButtonModule } from '@biit-solutions/wizardry-theme/button';
|
|
15
|
+
import * as i5$1 from '@biit-solutions/wizardry-theme/info';
|
|
16
|
+
import { BiitTooltipModule, BiitProgressBarModule } from '@biit-solutions/wizardry-theme/info';
|
|
17
|
+
import * as i9 from '@biit-solutions/wizardry-theme/navigation';
|
|
18
|
+
import { BiitVerticalMenuModule } from '@biit-solutions/wizardry-theme/navigation';
|
|
19
|
+
import * as i10 from '@biit-solutions/wizardry-theme/utils';
|
|
20
|
+
import { LocalizedDatePipeModule } from '@biit-solutions/wizardry-theme/utils';
|
|
21
|
+
import { TranslocoRootModule } from '@biit-solutions/wizardry-theme/i18n';
|
|
22
|
+
import * as i6 from '@siemens/ngx-datatable';
|
|
23
|
+
import { DataTablePagerComponent, ColumnMode, SelectionType, NgxDatatableModule } from '@siemens/ngx-datatable';
|
|
24
|
+
import { completeIconSet } from '@biit-solutions/biit-icons-collection';
|
|
25
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
26
|
+
|
|
27
|
+
class BiitPaginatorOptions {
|
|
28
|
+
constructor(currentPage, pageSize, pageSizeOptions, totalItems, hidePageSize, hideFirstLastButtons) {
|
|
29
|
+
this.currentPage = currentPage;
|
|
30
|
+
this.pageSize = pageSize;
|
|
31
|
+
this.pageSizeOptions = pageSizeOptions;
|
|
32
|
+
this.totalItems = totalItems;
|
|
33
|
+
this.hidePageSize = hidePageSize || totalItems == undefined;
|
|
34
|
+
this.hideFirstLastButtons = hideFirstLastButtons;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
class BiitTableColumn {
|
|
39
|
+
constructor(name, label, width, format, visible) {
|
|
40
|
+
this.name = name;
|
|
41
|
+
this.label = label;
|
|
42
|
+
this.width = width ? width : 0;
|
|
43
|
+
this.format = format ? format : BiitTableColumnFormat.DEFAULT;
|
|
44
|
+
this.visible = visible == undefined ? true : visible;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
var BiitTableColumnFormat;
|
|
48
|
+
(function (BiitTableColumnFormat) {
|
|
49
|
+
BiitTableColumnFormat["DEFAULT"] = "default";
|
|
50
|
+
BiitTableColumnFormat["BOOLEAN"] = "boolean";
|
|
51
|
+
BiitTableColumnFormat["DATE"] = "date";
|
|
52
|
+
BiitTableColumnFormat["DATETIME"] = "datetime";
|
|
53
|
+
BiitTableColumnFormat["BUTTON"] = "button";
|
|
54
|
+
BiitTableColumnFormat["ICON_BUTTON"] = "icon_button";
|
|
55
|
+
BiitTableColumnFormat["ICON"] = "icon";
|
|
56
|
+
BiitTableColumnFormat["CUSTOM_HTML"] = "custom_html";
|
|
57
|
+
})(BiitTableColumnFormat || (BiitTableColumnFormat = {}));
|
|
58
|
+
|
|
59
|
+
class ColumnResizeHandler {
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
class BiitTableResponse {
|
|
63
|
+
constructor(currentPage, pageSize, search, sorting) {
|
|
64
|
+
this.currentPage = currentPage;
|
|
65
|
+
this.pageSize = pageSize;
|
|
66
|
+
this.search = search;
|
|
67
|
+
this.sorting = sorting;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
class BiitTableSorting {
|
|
72
|
+
constructor(name, order) {
|
|
73
|
+
this.name = name;
|
|
74
|
+
this.order = order;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
var BiitTableSortingOrder;
|
|
78
|
+
(function (BiitTableSortingOrder) {
|
|
79
|
+
BiitTableSortingOrder["ASC"] = "asc";
|
|
80
|
+
BiitTableSortingOrder["DESC"] = "desc";
|
|
81
|
+
})(BiitTableSortingOrder || (BiitTableSortingOrder = {}));
|
|
82
|
+
|
|
83
|
+
class BiitTableActionResponse {
|
|
84
|
+
constructor(item, column) {
|
|
85
|
+
this.item = item;
|
|
86
|
+
this.column = column;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
class BiitPaginatorComponent {
|
|
91
|
+
constructor() {
|
|
92
|
+
this.dropdownOpen = false;
|
|
93
|
+
this.onChange = (value) => { };
|
|
94
|
+
this.onTouched = () => { };
|
|
95
|
+
}
|
|
96
|
+
registerOnChange(fn) {
|
|
97
|
+
this.onChange = fn;
|
|
98
|
+
}
|
|
99
|
+
registerOnTouched(fn) {
|
|
100
|
+
this.onTouched = fn;
|
|
101
|
+
}
|
|
102
|
+
writeValue(value) {
|
|
103
|
+
if (value) {
|
|
104
|
+
this.paginator = value;
|
|
105
|
+
this.calculateTotalPages();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
onModelChange() {
|
|
109
|
+
this.closeDropdown();
|
|
110
|
+
this.onChange(this.paginator);
|
|
111
|
+
}
|
|
112
|
+
handleMouseEvents($event) {
|
|
113
|
+
var _a, _b;
|
|
114
|
+
if (!((_a = this.selectorList.nativeElement) === null || _a === void 0 ? void 0 : _a.contains($event.target)) &&
|
|
115
|
+
!((_b = this.selectorBtn.nativeElement) === null || _b === void 0 ? void 0 : _b.contains($event.target)) &&
|
|
116
|
+
this.dropdownOpen) {
|
|
117
|
+
this.closeDropdown();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
handleKeyboardEvents($event) {
|
|
121
|
+
var _a, _b;
|
|
122
|
+
switch ($event.key) {
|
|
123
|
+
case 'ArrowUp':
|
|
124
|
+
if (document.activeElement === this.selectorBtn.nativeElement) {
|
|
125
|
+
if (this.paginator.pageSizeOptions.findIndex(i => i == this.paginator.pageSize) > 0) {
|
|
126
|
+
this.paginator.pageSize = this.paginator.pageSizeOptions[this.paginator.pageSizeOptions.findIndex(i => i == this.paginator.pageSize) - 1];
|
|
127
|
+
this.paginator.currentPage = 1;
|
|
128
|
+
this.onChange(this.paginator);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
(_a = document.activeElement.previousElementSibling) === null || _a === void 0 ? void 0 : _a.focus();
|
|
133
|
+
}
|
|
134
|
+
$event.preventDefault();
|
|
135
|
+
break;
|
|
136
|
+
case 'ArrowDown':
|
|
137
|
+
if (document.activeElement === this.selectorBtn.nativeElement) {
|
|
138
|
+
if (this.paginator.pageSizeOptions.findIndex(i => i == this.paginator.pageSize) < this.paginator.pageSizeOptions.length - 1) {
|
|
139
|
+
this.paginator.pageSize = this.paginator.pageSizeOptions[this.paginator.pageSizeOptions.findIndex(i => i == this.paginator.pageSize) + 1];
|
|
140
|
+
this.paginator.currentPage = 1;
|
|
141
|
+
this.onChange(this.paginator);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
(_b = document.activeElement.nextElementSibling) === null || _b === void 0 ? void 0 : _b.focus();
|
|
146
|
+
}
|
|
147
|
+
$event.preventDefault();
|
|
148
|
+
break;
|
|
149
|
+
case 'Escape':
|
|
150
|
+
this.closeDropdown();
|
|
151
|
+
break;
|
|
152
|
+
default:
|
|
153
|
+
break;
|
|
154
|
+
}
|
|
155
|
+
$event.stopPropagation();
|
|
156
|
+
}
|
|
157
|
+
setTooltipComponentProperties() {
|
|
158
|
+
let dropdown = this.selectorList.nativeElement;
|
|
159
|
+
let button = this.selectorBtn.nativeElement;
|
|
160
|
+
dropdown.style.display = 'block';
|
|
161
|
+
// Checking available screen space
|
|
162
|
+
const fitsBottom = bottomCheck();
|
|
163
|
+
const fitsRight = rightCheck();
|
|
164
|
+
const fitsLeft = leftCheck();
|
|
165
|
+
if (!fitsRight && fitsLeft) {
|
|
166
|
+
dropdown.style.marginLeft = button.offsetWidth - dropdown.offsetWidth + 'px';
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
dropdown.style.marginLeft = null;
|
|
170
|
+
}
|
|
171
|
+
dropdown.classList.remove('onwards');
|
|
172
|
+
dropdown.classList.remove('downwards');
|
|
173
|
+
if (!fitsBottom) {
|
|
174
|
+
dropdown.classList.add('onwards');
|
|
175
|
+
dropdown.style.marginTop = -(dropdown.offsetHeight + button.offsetHeight) + 'px';
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
dropdown.classList.add('downwards');
|
|
179
|
+
dropdown.style.marginTop = null;
|
|
180
|
+
}
|
|
181
|
+
// Support inner functions
|
|
182
|
+
function bottomCheck() {
|
|
183
|
+
return button.getBoundingClientRect().bottom + dropdown.offsetHeight <= window.innerHeight ||
|
|
184
|
+
button.getBoundingClientRect().top - dropdown.offsetHeight <= 0;
|
|
185
|
+
}
|
|
186
|
+
function rightCheck() {
|
|
187
|
+
return button.getBoundingClientRect().right + dropdown.offsetWidth <= window.innerWidth;
|
|
188
|
+
}
|
|
189
|
+
function leftCheck() {
|
|
190
|
+
return button.getBoundingClientRect().right - dropdown.offsetWidth >= 0;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
openDropdown() {
|
|
194
|
+
this.setTooltipComponentProperties();
|
|
195
|
+
// Setting a timeout because it doesn't load upwards/downwards css classes on execution time
|
|
196
|
+
setTimeout(() => {
|
|
197
|
+
this.dropdownOpen = true;
|
|
198
|
+
this.selectorList.nativeElement.setAttribute('aria-expanded', "true");
|
|
199
|
+
}, 100);
|
|
200
|
+
}
|
|
201
|
+
closeDropdown() {
|
|
202
|
+
this.dropdownOpen = false;
|
|
203
|
+
this.selectorList.nativeElement.setAttribute('aria-expanded', "false");
|
|
204
|
+
}
|
|
205
|
+
calculateTotalPages() {
|
|
206
|
+
var _a, _b, _c, _d;
|
|
207
|
+
if (!((_a = this.paginator) === null || _a === void 0 ? void 0 : _a.hidePageSize) && !isNaN((_b = this.paginator) === null || _b === void 0 ? void 0 : _b.totalItems)) {
|
|
208
|
+
const tempTotalPages = this.paginator.totalItems ?
|
|
209
|
+
this.paginator.totalItems / this.paginator.pageSize : 0;
|
|
210
|
+
if (Number.isInteger(tempTotalPages) && tempTotalPages > 0) {
|
|
211
|
+
this.totalPages = tempTotalPages;
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
this.totalPages = Math.trunc(tempTotalPages) + 1;
|
|
215
|
+
}
|
|
216
|
+
if ((_c = this.totalPagesLabel) === null || _c === void 0 ? void 0 : _c.nativeElement) {
|
|
217
|
+
this.totalPagesLabel.nativeElement.innerText = '/' + this.totalPages;
|
|
218
|
+
}
|
|
219
|
+
if ((_d = this.pageInput) === null || _d === void 0 ? void 0 : _d.nativeElement) {
|
|
220
|
+
this.pageInput.nativeElement.style.width =
|
|
221
|
+
this.totalPagesLabel.nativeElement.offsetWidth * 2
|
|
222
|
+
+ 2.1 * parseFloat(getComputedStyle(document.documentElement).fontSize)
|
|
223
|
+
+ 'px';
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
this.refreshCenterStyle();
|
|
227
|
+
}
|
|
228
|
+
setInputValue(event) {
|
|
229
|
+
let selectedPage = parseFloat(event.target.value);
|
|
230
|
+
if (selectedPage > this.totalPages) {
|
|
231
|
+
event.target.value = this.totalPages.toString();
|
|
232
|
+
selectedPage = this.totalPages;
|
|
233
|
+
}
|
|
234
|
+
this.paginator.currentPage = selectedPage;
|
|
235
|
+
}
|
|
236
|
+
resetInputValue(event) {
|
|
237
|
+
event.target.value = this.paginator.currentPage.toString();
|
|
238
|
+
}
|
|
239
|
+
refreshCenterStyle() {
|
|
240
|
+
const width = this.pageSelector.nativeElement.offsetWidth;
|
|
241
|
+
this.pageSelector.nativeElement.style.setProperty("--center-fix", -(width / 2) + 'px');
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
BiitPaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitPaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
245
|
+
BiitPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BiitPaginatorComponent, selector: "biit-paginator", host: { listeners: { "document:pointerdown": "handleMouseEvents($event)" } }, providers: [
|
|
246
|
+
{
|
|
247
|
+
provide: NG_VALUE_ACCESSOR,
|
|
248
|
+
useExisting: forwardRef(() => BiitPaginatorComponent),
|
|
249
|
+
multi: true
|
|
250
|
+
}
|
|
251
|
+
], viewQueries: [{ propertyName: "pageSelector", first: true, predicate: ["pageSelector"], descendants: true }, { propertyName: "selectorBtn", first: true, predicate: ["pageSizeBtn"], descendants: true }, { propertyName: "selectorList", first: true, predicate: ["pageSizeList"], descendants: true }, { propertyName: "pageInput", first: true, predicate: ["pageInput"], descendants: true }, { propertyName: "totalPagesLabel", first: true, predicate: ["totalPagesLabel"], descendants: true }], ngImport: i0, template: "<div style=\"display: flex; justify-content: space-between\" *transloco=\"let t\">\n <!-- PAGE SELECTOR -->\n <div #pageSelector class=\"page-selector\" id=\"page-selector\">\n <button biit-icon id=\"arrow-first\"\n icon='right_double_arrow'\n class=\"horizontal-flip\"\n (click)=\"paginator.currentPage = 1; onModelChange();\"\n [disabled]=\"paginator?.currentPage <= 1\"\n tooltip=\"{{t('table.first-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-previous\"\n icon='right_arrow'\n class=\"compact horizontal-flip\"\n (click)=\"paginator.currentPage = paginator.currentPage - 1; onModelChange();\"\n [disabled]=\"paginator?.currentPage <= 1\"\n tooltip=\"{{t('table.previous-page')}}\"\n ></button>\n <div class=\"page-display\" style=\"position: relative\">\n <input #pageInput id=\"current-page\"\n [ngModel]=\"paginator?.currentPage\"\n type=\"number\"\n [min]=\"1\"\n [max]=\"totalPages\"\n (keydown.enter)=\"setInputValue($event); onModelChange()\"\n (focusout)=\"resetInputValue($event)\"\n class=\"page-input\"/>\n <a #totalPagesLabel class=\"total-pages\">/</a>\n <div class=\"bottom-bar\"></div>\n </div>\n <button biit-icon id=\"arrow-next\"\n icon='right_arrow'\n class=\"compact\"\n (click)=\"paginator.currentPage = paginator.currentPage + 1; onModelChange();\"\n [disabled]=\"paginator?.currentPage >= totalPages\"\n tooltip=\"{{t('table.next-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-last\"\n icon='right_double_arrow'\n (click)=\"paginator.currentPage = totalPages; onModelChange();\"\n [disabled]=\"paginator?.currentPage >= totalPages\"\n tooltip=\"{{t('table.last-page')}}\"\n ></button>\n </div>\n\n <!-- PAGE SIZE SELECTOR -->\n <div class=\"page-size-selector\">\n <a\n [tooltip]=\"t('table.rows-per-page')\">{{ t('table.rows-per-page') }}</a>\n <button #pageSizeBtn\n (click)=\"!dropdownOpen ? openDropdown() : closeDropdown()\"\n (keydown)=\"handleKeyboardEvents($event)\">\n <a>{{ paginator?.pageSize }}</a>\n <biit-icon class=\"icon\"\n [name]=\"'right_arrow'\"\n [pathStyle]=\"{fill: dropdownOpen ? '#F20D5E' : '#262626'}\"\n [class.rotate]=\"dropdownOpen\"\n ></biit-icon>\n </button>\n <div class=\"dropdown\" [style.overflow]=\"dropdownOpen ? 'visible' : 'hidden'\">\n <div #pageSizeList\n class=\"list\"\n [class.dropdown-open]=\"dropdownOpen\">\n <button *ngFor=\"let pageSize of paginator?.pageSizeOptions; index as i\"\n (click)=\"paginator.currentPage = 1; paginator.pageSize = pageSize; onModelChange()\"\n (keydown)=\"handleKeyboardEvents($event)\"\n [class.selected]=\"paginator.pageSize === pageSize\"\n class=\"item\"\n role=\"option\"\n aria-selected=\"false\"\n [id]=\"i\"\n [tabindex]=\"!dropdownOpen? -1 : 0\"\n [disabled]=\"!dropdownOpen\"\n >\n {{ pageSize }}\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".page-selector{--center-fix: 0px;display:flex;position:relative;left:var(--center-fix)}.page-selector button[biit-icon].horizontal-flip{rotate:-180deg}.page-selector button[biit-icon].compact ::ng-deep .icon-button-svg{width:.6rem}.page-selector .page-display{display:block;position:relative;font-size:1rem;color:#262626;font-weight:700}.page-selector .page-display input{border:none;box-sizing:border-box;padding-left:.7rem;padding-right:calc(50% + .35rem);height:2.1rem;min-width:4.1rem;font-size:1rem;color:#262626;font-weight:700;text-align:right}.page-selector .page-display input:focus,.page-selector .page-display input:active,.page-selector .page-display input:hover{outline:none;background:#D9D9D9}.page-selector .page-display input:disabled{pointer-events:none;color:#d9d9d9}.page-selector .page-display input::-webkit-outer-spin-button,.page-selector .page-display input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.page-selector .page-display input[type=number]{-moz-appearance:textfield}.page-selector .page-display .total-pages{position:absolute;left:calc(50% + .35rem);top:.95rem;transform:translateY(-50%);pointer-events:none}.page-selector .page-display .bottom-bar{position:absolute;bottom:0;width:100%;height:.2rem;background:#262626}.page-size-selector{display:flex;align-items:center;color:#262626}.page-size-selector button{background:none;color:inherit;border:none;padding:0;font:inherit;outline:inherit;display:flex;align-items:center;justify-content:flex-end;width:3rem;height:2.1rem;cursor:pointer}.page-size-selector button:hover,.page-size-selector button:focus,.page-size-selector button:focus-visible{background:#D9D9D9}.page-size-selector .wh-100{display:inline-flex;width:.3rem;height:.3rem;padding:.2rem;transition:transform .5s ease;transform:rotate(90deg)}.page-size-selector .wh-100.rotate{transform:rotate(-90deg)}.page-size-selector .dropdown{position:relative;right:3rem;top:1.05rem;z-index:1}.page-size-selector .dropdown .list{width:3rem;background:white;position:absolute;display:flex;flex-direction:column;cursor:pointer;transform-origin:top;opacity:0;pointer-events:none;transform:translateY(var(--origin));transition:opacity .5s ease,transform .5s ease}.page-size-selector .dropdown .list.dropdown-open{opacity:1;pointer-events:auto;transform:translate(0)}.page-size-selector .dropdown .list .item{width:100%;height:1.4rem;display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;border-left:.2rem solid black;border-right:.2rem solid black;padding-right:.5rem}.page-size-selector .dropdown .list .item:first-child{border-top:.2rem solid black}.page-size-selector .dropdown .list .item:last-child{border-bottom:.2rem solid black}.page-size-selector .dropdown .list .item.selected{background:#D9D9D9}.page-size-selector .dropdown .list .item:hover,.page-size-selector .dropdown .list .item:focus,.page-size-selector .dropdown .list .item:focus-visible{border-left:none;border-right:none;background:#EDEDED;padding-right:.7rem}.onwards{--origin: 1rem}.downwards{--origin: -1rem}@media screen and (max-width: 600px){.page-size-selector{display:none!important}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.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: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$1.BiitIconComponent, selector: "biit-icon", inputs: ["name", "svgStyle", "pathStyle"] }, { kind: "component", type: i8.BiitIconButtonComponent, selector: "button[biit-icon]", inputs: ["icon", "checked"] }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: i5$1.BiitTooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "ignorePadding"] }] });
|
|
252
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitPaginatorComponent, decorators: [{
|
|
253
|
+
type: Component,
|
|
254
|
+
args: [{ selector: 'biit-paginator', providers: [
|
|
255
|
+
{
|
|
256
|
+
provide: NG_VALUE_ACCESSOR,
|
|
257
|
+
useExisting: forwardRef(() => BiitPaginatorComponent),
|
|
258
|
+
multi: true
|
|
259
|
+
}
|
|
260
|
+
], host: {
|
|
261
|
+
'(document:pointerdown)': 'handleMouseEvents($event)'
|
|
262
|
+
}, template: "<div style=\"display: flex; justify-content: space-between\" *transloco=\"let t\">\n <!-- PAGE SELECTOR -->\n <div #pageSelector class=\"page-selector\" id=\"page-selector\">\n <button biit-icon id=\"arrow-first\"\n icon='right_double_arrow'\n class=\"horizontal-flip\"\n (click)=\"paginator.currentPage = 1; onModelChange();\"\n [disabled]=\"paginator?.currentPage <= 1\"\n tooltip=\"{{t('table.first-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-previous\"\n icon='right_arrow'\n class=\"compact horizontal-flip\"\n (click)=\"paginator.currentPage = paginator.currentPage - 1; onModelChange();\"\n [disabled]=\"paginator?.currentPage <= 1\"\n tooltip=\"{{t('table.previous-page')}}\"\n ></button>\n <div class=\"page-display\" style=\"position: relative\">\n <input #pageInput id=\"current-page\"\n [ngModel]=\"paginator?.currentPage\"\n type=\"number\"\n [min]=\"1\"\n [max]=\"totalPages\"\n (keydown.enter)=\"setInputValue($event); onModelChange()\"\n (focusout)=\"resetInputValue($event)\"\n class=\"page-input\"/>\n <a #totalPagesLabel class=\"total-pages\">/</a>\n <div class=\"bottom-bar\"></div>\n </div>\n <button biit-icon id=\"arrow-next\"\n icon='right_arrow'\n class=\"compact\"\n (click)=\"paginator.currentPage = paginator.currentPage + 1; onModelChange();\"\n [disabled]=\"paginator?.currentPage >= totalPages\"\n tooltip=\"{{t('table.next-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-last\"\n icon='right_double_arrow'\n (click)=\"paginator.currentPage = totalPages; onModelChange();\"\n [disabled]=\"paginator?.currentPage >= totalPages\"\n tooltip=\"{{t('table.last-page')}}\"\n ></button>\n </div>\n\n <!-- PAGE SIZE SELECTOR -->\n <div class=\"page-size-selector\">\n <a\n [tooltip]=\"t('table.rows-per-page')\">{{ t('table.rows-per-page') }}</a>\n <button #pageSizeBtn\n (click)=\"!dropdownOpen ? openDropdown() : closeDropdown()\"\n (keydown)=\"handleKeyboardEvents($event)\">\n <a>{{ paginator?.pageSize }}</a>\n <biit-icon class=\"icon\"\n [name]=\"'right_arrow'\"\n [pathStyle]=\"{fill: dropdownOpen ? '#F20D5E' : '#262626'}\"\n [class.rotate]=\"dropdownOpen\"\n ></biit-icon>\n </button>\n <div class=\"dropdown\" [style.overflow]=\"dropdownOpen ? 'visible' : 'hidden'\">\n <div #pageSizeList\n class=\"list\"\n [class.dropdown-open]=\"dropdownOpen\">\n <button *ngFor=\"let pageSize of paginator?.pageSizeOptions; index as i\"\n (click)=\"paginator.currentPage = 1; paginator.pageSize = pageSize; onModelChange()\"\n (keydown)=\"handleKeyboardEvents($event)\"\n [class.selected]=\"paginator.pageSize === pageSize\"\n class=\"item\"\n role=\"option\"\n aria-selected=\"false\"\n [id]=\"i\"\n [tabindex]=\"!dropdownOpen? -1 : 0\"\n [disabled]=\"!dropdownOpen\"\n >\n {{ pageSize }}\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".page-selector{--center-fix: 0px;display:flex;position:relative;left:var(--center-fix)}.page-selector button[biit-icon].horizontal-flip{rotate:-180deg}.page-selector button[biit-icon].compact ::ng-deep .icon-button-svg{width:.6rem}.page-selector .page-display{display:block;position:relative;font-size:1rem;color:#262626;font-weight:700}.page-selector .page-display input{border:none;box-sizing:border-box;padding-left:.7rem;padding-right:calc(50% + .35rem);height:2.1rem;min-width:4.1rem;font-size:1rem;color:#262626;font-weight:700;text-align:right}.page-selector .page-display input:focus,.page-selector .page-display input:active,.page-selector .page-display input:hover{outline:none;background:#D9D9D9}.page-selector .page-display input:disabled{pointer-events:none;color:#d9d9d9}.page-selector .page-display input::-webkit-outer-spin-button,.page-selector .page-display input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.page-selector .page-display input[type=number]{-moz-appearance:textfield}.page-selector .page-display .total-pages{position:absolute;left:calc(50% + .35rem);top:.95rem;transform:translateY(-50%);pointer-events:none}.page-selector .page-display .bottom-bar{position:absolute;bottom:0;width:100%;height:.2rem;background:#262626}.page-size-selector{display:flex;align-items:center;color:#262626}.page-size-selector button{background:none;color:inherit;border:none;padding:0;font:inherit;outline:inherit;display:flex;align-items:center;justify-content:flex-end;width:3rem;height:2.1rem;cursor:pointer}.page-size-selector button:hover,.page-size-selector button:focus,.page-size-selector button:focus-visible{background:#D9D9D9}.page-size-selector .wh-100{display:inline-flex;width:.3rem;height:.3rem;padding:.2rem;transition:transform .5s ease;transform:rotate(90deg)}.page-size-selector .wh-100.rotate{transform:rotate(-90deg)}.page-size-selector .dropdown{position:relative;right:3rem;top:1.05rem;z-index:1}.page-size-selector .dropdown .list{width:3rem;background:white;position:absolute;display:flex;flex-direction:column;cursor:pointer;transform-origin:top;opacity:0;pointer-events:none;transform:translateY(var(--origin));transition:opacity .5s ease,transform .5s ease}.page-size-selector .dropdown .list.dropdown-open{opacity:1;pointer-events:auto;transform:translate(0)}.page-size-selector .dropdown .list .item{width:100%;height:1.4rem;display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;border-left:.2rem solid black;border-right:.2rem solid black;padding-right:.5rem}.page-size-selector .dropdown .list .item:first-child{border-top:.2rem solid black}.page-size-selector .dropdown .list .item:last-child{border-bottom:.2rem solid black}.page-size-selector .dropdown .list .item.selected{background:#D9D9D9}.page-size-selector .dropdown .list .item:hover,.page-size-selector .dropdown .list .item:focus,.page-size-selector .dropdown .list .item:focus-visible{border-left:none;border-right:none;background:#EDEDED;padding-right:.7rem}.onwards{--origin: 1rem}.downwards{--origin: -1rem}@media screen and (max-width: 600px){.page-size-selector{display:none!important}}\n"] }]
|
|
263
|
+
}], ctorParameters: function () { return []; }, propDecorators: { pageSelector: [{
|
|
264
|
+
type: ViewChild,
|
|
265
|
+
args: ['pageSelector']
|
|
266
|
+
}], selectorBtn: [{
|
|
267
|
+
type: ViewChild,
|
|
268
|
+
args: ['pageSizeBtn']
|
|
269
|
+
}], selectorList: [{
|
|
270
|
+
type: ViewChild,
|
|
271
|
+
args: ['pageSizeList']
|
|
272
|
+
}], pageInput: [{
|
|
273
|
+
type: ViewChild,
|
|
274
|
+
args: ['pageInput']
|
|
275
|
+
}], totalPagesLabel: [{
|
|
276
|
+
type: ViewChild,
|
|
277
|
+
args: ['totalPagesLabel']
|
|
278
|
+
}] } });
|
|
279
|
+
|
|
280
|
+
class VisibleColumnsPipe {
|
|
281
|
+
transform(value) {
|
|
282
|
+
return value.filter(column => column.visible);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
VisibleColumnsPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: VisibleColumnsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
286
|
+
VisibleColumnsPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: VisibleColumnsPipe, name: "visibleColumns" });
|
|
287
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: VisibleColumnsPipe, decorators: [{
|
|
288
|
+
type: Pipe,
|
|
289
|
+
args: [{
|
|
290
|
+
name: 'visibleColumns'
|
|
291
|
+
}]
|
|
292
|
+
}] });
|
|
293
|
+
|
|
294
|
+
class ColumnDataPipe {
|
|
295
|
+
transform(value, columnName) {
|
|
296
|
+
const dataTree = columnName.split('.');
|
|
297
|
+
let data = value;
|
|
298
|
+
dataTree.forEach(variable => {
|
|
299
|
+
data = data[variable];
|
|
300
|
+
});
|
|
301
|
+
return data;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
ColumnDataPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnDataPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
305
|
+
ColumnDataPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: ColumnDataPipe, name: "columnData" });
|
|
306
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnDataPipe, decorators: [{
|
|
307
|
+
type: Pipe,
|
|
308
|
+
args: [{
|
|
309
|
+
name: 'columnData'
|
|
310
|
+
}]
|
|
311
|
+
}] });
|
|
312
|
+
|
|
313
|
+
class BiitTableSelectableDirective {
|
|
314
|
+
constructor(parent) {
|
|
315
|
+
this.parent = parent;
|
|
316
|
+
parent.isSelectable = true;
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
BiitTableSelectableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableSelectableDirective, deps: [{ token: BiitTableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
320
|
+
BiitTableSelectableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: BiitTableSelectableDirective, selector: "[selectable]", ngImport: i0 });
|
|
321
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableSelectableDirective, decorators: [{
|
|
322
|
+
type: Directive,
|
|
323
|
+
args: [{
|
|
324
|
+
selector: '[selectable]'
|
|
325
|
+
}]
|
|
326
|
+
}], ctorParameters: function () { return [{ type: BiitTableComponent }]; } });
|
|
327
|
+
class BiitTableSelectableSingleDirective {
|
|
328
|
+
constructor(parent) {
|
|
329
|
+
this.parent = parent;
|
|
330
|
+
parent.isSelectableSingle = true;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
BiitTableSelectableSingleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableSelectableSingleDirective, deps: [{ token: BiitTableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
334
|
+
BiitTableSelectableSingleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: BiitTableSelectableSingleDirective, selector: "[selectableSingle]", ngImport: i0 });
|
|
335
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableSelectableSingleDirective, decorators: [{
|
|
336
|
+
type: Directive,
|
|
337
|
+
args: [{
|
|
338
|
+
selector: '[selectableSingle]'
|
|
339
|
+
}]
|
|
340
|
+
}], ctorParameters: function () { return [{ type: BiitTableComponent }]; } });
|
|
341
|
+
class BiitTableSortableDirective {
|
|
342
|
+
constructor(parent) {
|
|
343
|
+
this.parent = parent;
|
|
344
|
+
parent.isSortable = true;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
BiitTableSortableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableSortableDirective, deps: [{ token: BiitTableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
348
|
+
BiitTableSortableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: BiitTableSortableDirective, selector: "[sortable]", ngImport: i0 });
|
|
349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableSortableDirective, decorators: [{
|
|
350
|
+
type: Directive,
|
|
351
|
+
args: [{
|
|
352
|
+
selector: '[sortable]'
|
|
353
|
+
}]
|
|
354
|
+
}], ctorParameters: function () { return [{ type: BiitTableComponent }]; } });
|
|
355
|
+
class BiitTableHeaderlessDirective {
|
|
356
|
+
constructor(parent) {
|
|
357
|
+
this.parent = parent;
|
|
358
|
+
parent.hideHeader = true;
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
BiitTableHeaderlessDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableHeaderlessDirective, deps: [{ token: BiitTableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
362
|
+
BiitTableHeaderlessDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: BiitTableHeaderlessDirective, selector: "[hideHeader]", ngImport: i0 });
|
|
363
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableHeaderlessDirective, decorators: [{
|
|
364
|
+
type: Directive,
|
|
365
|
+
args: [{
|
|
366
|
+
selector: '[hideHeader]'
|
|
367
|
+
}]
|
|
368
|
+
}], ctorParameters: function () { return [{ type: BiitTableComponent }]; } });
|
|
369
|
+
class BiitTableFooterlessDirective {
|
|
370
|
+
constructor(parent) {
|
|
371
|
+
this.parent = parent;
|
|
372
|
+
parent.hideFooter = true;
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
BiitTableFooterlessDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableFooterlessDirective, deps: [{ token: BiitTableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
376
|
+
BiitTableFooterlessDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: BiitTableFooterlessDirective, selector: "[hideFooter]", ngImport: i0 });
|
|
377
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableFooterlessDirective, decorators: [{
|
|
378
|
+
type: Directive,
|
|
379
|
+
args: [{
|
|
380
|
+
selector: '[hideFooter]'
|
|
381
|
+
}]
|
|
382
|
+
}], ctorParameters: function () { return [{ type: BiitTableComponent }]; } });
|
|
383
|
+
class BiitTableComponent {
|
|
384
|
+
set _data(data) {
|
|
385
|
+
if (data) {
|
|
386
|
+
this.data = data;
|
|
387
|
+
this.selectedRows.clear();
|
|
388
|
+
if (this.paginator) {
|
|
389
|
+
this.paginator = new BiitPaginatorOptions(this.paginator.currentPage, this.paginator.pageSize, this.pageSizes, data.totalItems);
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
set _loading(loading) {
|
|
394
|
+
if (loading) {
|
|
395
|
+
this.loading = loading;
|
|
396
|
+
this.setLoadingBar();
|
|
397
|
+
}
|
|
398
|
+
else {
|
|
399
|
+
this.loading = false;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
constructor(renderer, elem) {
|
|
403
|
+
this.renderer = renderer;
|
|
404
|
+
this.elem = elem;
|
|
405
|
+
this.columns = [];
|
|
406
|
+
this.pageSizes = [];
|
|
407
|
+
this.isSelectable = false;
|
|
408
|
+
this.isSelectableSingle = false;
|
|
409
|
+
this.isSortable = false;
|
|
410
|
+
this.hideHeader = false;
|
|
411
|
+
this.hideFooter = false;
|
|
412
|
+
this.onUpdate = new EventEmitter();
|
|
413
|
+
this.onCellAction = new EventEmitter();
|
|
414
|
+
this.onRowClick = new EventEmitter();
|
|
415
|
+
this.selectedRows = new Set();
|
|
416
|
+
this.columnResize = new ColumnResizeHandler();
|
|
417
|
+
this.loading = false;
|
|
418
|
+
this.search = '';
|
|
419
|
+
this.currentSearch = '';
|
|
420
|
+
this.BiitMultiselectType = BiitMultiselectType;
|
|
421
|
+
this.BiitTableColumnFormat = BiitTableColumnFormat;
|
|
422
|
+
}
|
|
423
|
+
ngOnInit() {
|
|
424
|
+
this.paginator = new BiitPaginatorOptions(1, this.defaultPageSize, this.pageSizes, this.data ? this.data.totalItems : 1);
|
|
425
|
+
}
|
|
426
|
+
ngAfterViewChecked() {
|
|
427
|
+
this.setColumnSize();
|
|
428
|
+
}
|
|
429
|
+
// Fix for resizable columns
|
|
430
|
+
setColumnSize() {
|
|
431
|
+
// Takes scrollbar padding in mind before hardcoding widths
|
|
432
|
+
this.elem.nativeElement.querySelector('.content').style.paddingRight = '0.7rem';
|
|
433
|
+
Array.from(this.elem.nativeElement.querySelector('thead').firstChild.children).forEach(ogColumn => {
|
|
434
|
+
const column = ogColumn;
|
|
435
|
+
if (column.classList.contains('select')) {
|
|
436
|
+
return;
|
|
437
|
+
}
|
|
438
|
+
if (column.style.width == '' && !column.classList.contains('select')) {
|
|
439
|
+
column.style.width = column.offsetWidth - 10 + 'px';
|
|
440
|
+
}
|
|
441
|
+
this.columnInnerWordFitCheck(column);
|
|
442
|
+
});
|
|
443
|
+
this.elem.nativeElement.querySelector('.content').style.paddingRight = null;
|
|
444
|
+
this.setLoadingBar();
|
|
445
|
+
}
|
|
446
|
+
columnInnerWordFitCheck(column) {
|
|
447
|
+
const minColumnSize = column.firstElementChild.offsetWidth
|
|
448
|
+
+ 2.4 * parseFloat(getComputedStyle(document.documentElement).fontSize) * 2;
|
|
449
|
+
// If inner text width plus header paddings are less than the current header width (set by user column properties)
|
|
450
|
+
if (minColumnSize > column.offsetWidth) {
|
|
451
|
+
column.style.width = minColumnSize + 'px';
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
setLoadingBar() {
|
|
455
|
+
const progressBar = this.elem.nativeElement.querySelector('biit-progress-bar');
|
|
456
|
+
if (progressBar) {
|
|
457
|
+
progressBar.style.top =
|
|
458
|
+
this.elem.nativeElement.querySelector('thead').offsetHeight + 'px';
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
onTableUpdate(force = false) {
|
|
462
|
+
if (this.findTimeout) {
|
|
463
|
+
clearTimeout(this.findTimeout);
|
|
464
|
+
}
|
|
465
|
+
this.findTimeout = setTimeout(() => {
|
|
466
|
+
this.currentSearch = this.search;
|
|
467
|
+
this.selectedRows.clear();
|
|
468
|
+
this.onUpdate.emit(new BiitTableResponse(this.paginator.currentPage, this.paginator.pageSize, this.search, this.sorting));
|
|
469
|
+
clearTimeout(this.findTimeout);
|
|
470
|
+
this.findTimeout = null;
|
|
471
|
+
}, force ? 0 : 500);
|
|
472
|
+
}
|
|
473
|
+
onTableSort(column) {
|
|
474
|
+
if (this.sorting && this.sorting.name == column.name) {
|
|
475
|
+
switch (this.sorting.order) {
|
|
476
|
+
case BiitTableSortingOrder.ASC:
|
|
477
|
+
this.sorting.order = BiitTableSortingOrder.DESC;
|
|
478
|
+
break;
|
|
479
|
+
case BiitTableSortingOrder.DESC:
|
|
480
|
+
this.sorting = undefined;
|
|
481
|
+
break;
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
else {
|
|
485
|
+
this.sorting = new BiitTableSorting(column.name, BiitTableSortingOrder.ASC);
|
|
486
|
+
}
|
|
487
|
+
this.onTableUpdate();
|
|
488
|
+
}
|
|
489
|
+
snakeToCamel(string) {
|
|
490
|
+
return string.toLowerCase().replace(/[-_][a-z]/g, (group) => group.slice(-1).toUpperCase());
|
|
491
|
+
}
|
|
492
|
+
resizeColumn(event, column, index) {
|
|
493
|
+
this.columnResize.start = event.target;
|
|
494
|
+
this.columnResize.pressed = true;
|
|
495
|
+
this.columnResize.startX = event.x;
|
|
496
|
+
this.columnResize.startWidth = this.columnResize.start.parentNode.offsetWidth;
|
|
497
|
+
let columnElem = this.elem.nativeElement.querySelector('thead').firstChild.children[this.isSelectable ? index + 1 : index];
|
|
498
|
+
this.columnResize.minWidth = columnElem.firstElementChild.offsetWidth
|
|
499
|
+
+ 2.4 * parseFloat(getComputedStyle(document.documentElement).fontSize) * 2;
|
|
500
|
+
this.initResizableColumns(column);
|
|
501
|
+
}
|
|
502
|
+
initResizableColumns(column) {
|
|
503
|
+
const moveListener = this.renderer.listen('window', 'mousemove', (event) => {
|
|
504
|
+
if (this.columnResize.pressed) {
|
|
505
|
+
let width = this.columnResize.startWidth + (event.x - this.columnResize.startX);
|
|
506
|
+
if (width > this.columnResize.minWidth) {
|
|
507
|
+
column.width = width;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
event.preventDefault();
|
|
511
|
+
event.stopPropagation();
|
|
512
|
+
event.stopImmediatePropagation();
|
|
513
|
+
return false;
|
|
514
|
+
});
|
|
515
|
+
const releaseListener = this.renderer.listen('window', 'mouseup', (event) => {
|
|
516
|
+
if (this.columnResize.pressed) {
|
|
517
|
+
this.columnResize.pressed = false;
|
|
518
|
+
event.preventDefault();
|
|
519
|
+
event.stopPropagation();
|
|
520
|
+
event.stopImmediatePropagation();
|
|
521
|
+
moveListener();
|
|
522
|
+
releaseListener();
|
|
523
|
+
}
|
|
524
|
+
return false;
|
|
525
|
+
});
|
|
526
|
+
}
|
|
527
|
+
setColumnVisibility(response) {
|
|
528
|
+
this.columns.forEach(c => response.some(e => e.name == c.name) ? c.visible = true : c.visible = false);
|
|
529
|
+
}
|
|
530
|
+
selectRow(item, holdCtrl) {
|
|
531
|
+
if (!holdCtrl || this.isSelectableSingle) {
|
|
532
|
+
this.selectedRows.clear();
|
|
533
|
+
this.selectedRows.add(item);
|
|
534
|
+
}
|
|
535
|
+
else {
|
|
536
|
+
if (!this.selectedRows.has(item)) {
|
|
537
|
+
this.selectedRows.add(item);
|
|
538
|
+
}
|
|
539
|
+
else {
|
|
540
|
+
this.selectedRows.delete(item);
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
getSelectedRows() {
|
|
545
|
+
return [...this.selectedRows];
|
|
546
|
+
}
|
|
547
|
+
emitCellAction(item, column, event) {
|
|
548
|
+
event.stopPropagation();
|
|
549
|
+
this.onCellAction.emit(new BiitTableActionResponse(item, column));
|
|
550
|
+
}
|
|
551
|
+
emitRowClick(item) {
|
|
552
|
+
this.onRowClick.emit(item);
|
|
553
|
+
}
|
|
554
|
+
resetInputValue() {
|
|
555
|
+
this.search = this.currentSearch;
|
|
556
|
+
}
|
|
557
|
+
}
|
|
558
|
+
BiitTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
559
|
+
BiitTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BiitTableComponent, selector: "biit-table", inputs: { _data: ["metadata", "_data"], _loading: ["loading", "_loading"], columns: "columns", pageSizes: "pageSizes", defaultPageSize: "defaultPageSize" }, outputs: { onUpdate: "onUpdate", onCellAction: "onCellAction", onRowClick: "onRowClick" }, providers: [{
|
|
560
|
+
provide: TRANSLOCO_SCOPE,
|
|
561
|
+
useValue: { scope: 'wizardry-theme/table', alias: "table" }
|
|
562
|
+
}], queries: [{ propertyName: "actionsTpl", first: true, predicate: ["actions"], descendants: true }], ngImport: i0, template: "<div class=\"canvas\" *transloco=\"let t\">\n <div class=\"header\" *ngIf=\"!hideHeader\">\n <div class=\"buttons\" id=\"menu\">\n <biit-vertical-menu *ngIf=\"actionsTpl\" class=\"vertical-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </biit-vertical-menu>\n <div *ngIf=\"actionsTpl\" class=\"horizontal-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </div>\n <div *ngIf=\"!actionsTpl\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"forms\">\n <biit-input-text id=\"search-field\" [(ngModel)]=\"search\"\n (onActionPerformed)=\"\n paginator.currentPage = 1;\n onTableUpdate(true);\n \"\n (focusout)=\"resetInputValue()\"\n (ngModelChange)=\"onTableUpdate()\"\n icon=\"search\"\n [placeholder]=\"t('table.search')\"\n ></biit-input-text>\n <biit-multiselect id=\"column-selector\" [ngModel]=\"columns | visibleColumns\"\n (ngModelChange)=\"setColumnVisibility($event)\"\n [data]=\"columns\"\n label=\"label\"\n value=\"visible\"\n [title]=\"t('table.column-selector')\"\n [type]=\"BiitMultiselectType.ICON\"\n [compact]=\"true\"\n ></biit-multiselect>\n </div>\n </div>\n\n <div class=\"content\">\n <div *ngIf=\"loading\" style=\"position: relative\">\n <biit-progress-bar style=\"position: absolute; top: 2.1rem; left: 0.2rem; width: calc(100% - 0.1rem);\"></biit-progress-bar>\n </div>\n <table>\n <thead>\n <tr>\n <th *ngIf=\"isSelectable || isSelectableSingle\" class=\"select\">\n <biit-checkbox *ngIf=\"isSelectable\"\n [ngModel]=\"data?.data.length && selectedRows.size == data?.data.length\"\n (ngModelChange)=\"$event ? data?.data.forEach(selectedRows.add, selectedRows) : selectedRows.clear()\"\n ></biit-checkbox>\n </th>\n <th *ngFor=\"let column of columns, index as i\"\n [class.sortable]=\"isSortable\"\n [style.display]=\"!column.visible ? 'none' : null\"\n [style.width]=\"column.width ? column.width + 'px' : ''\"\n (click)=\"isSortable ? onTableSort(column) : false\"\n >\n <div class=\"label\">\n {{column.label}}\n </div>\n <biit-icon *ngIf=\"isSortable\"\n [name]=\"sorting?.name == column.name ? 'right_arrow' : 'up_down_arrow'\"\n [pathStyle]=\"{fill: '#FFFFFF'}\"\n class=\"sort\"\n [class.asc]=\"sorting?.name == column.name && sorting?.order == 'asc'\"\n [class.desc]=\"sorting?.name == column.name && sorting?.order == 'desc'\"\n ></biit-icon>\n <div class=\"column-resizer\"\n (mousedown)=\"resizeColumn($event, column, i)\"\n (click)=\"$event.preventDefault();\n $event.stopPropagation();\n $event.stopImmediatePropagation();\"\n ></div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data?.data; index as i\"\n [class.selectable]=\"isSelectable\"\n [class.selected]=\"selectedRows.has(item)\"\n (pointerdown)=\"emitRowClick(item)\"\n >\n <td *ngIf=\"isSelectable || isSelectableSingle\" class=\"select\">\n <biit-checkbox id=\"select{{i}}\"\n [ngModel]=\"selectedRows.has(item)\"\n (ngModelChange)=\"selectRow(item, true)\"\n ></biit-checkbox>\n </td>\n <td *ngFor=\"let column of columns\"\n (pointerdown)=\"selectRow(item, $event.ctrlKey)\"\n [style.display]=\"!column.visible ? 'none' : null\"\n [style.width]=\"column.width ? column.width + 'px' : null\"\n >\n <div *ngIf=\"column.format == BiitTableColumnFormat.DEFAULT\">\n {{item | columnData: column.name}}\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.BOOLEAN\">\n {{(item | columnData: column.name) ? t('table.yes') : t('table.no') }}\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.DATE\">\n {{(item | columnData: column.name) | localizedDate}}\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.BUTTON\"\n style=\"width: auto; text-align: -webkit-center; text-align: -moz-center;\">\n <button biit-button tertiary\n (pointerdown)=\"emitCellAction(item, column.name, $event)\">\n {{item | columnData: column.name}}\n </button>\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.ICON_BUTTON\"\n style=\"width: auto; text-align: -webkit-center; text-align: -moz-center;\">\n <button biit-icon [icon]=\"item | columnData: column.name\"\n (pointerdown)=\"emitCellAction(item, column.name, $event);\"></button>\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.ICON\"\n style=\"width: auto; height: 1.05rem;\">\n <biit-icon [name]=\"item | columnData: column.name\"></biit-icon>\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.CUSTOM_HTML\"\n style=\"width: auto; text-align: -webkit-center; text-align: -moz-center;\">\n <div [innerHTML]=\"item | columnData: column.name\"></div>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n </div>\n\n <div class=\"footer\" *ngIf=\"!hideFooter\">\n <div class=\"selected\">\n <a style=\"margin-right: 0.7rem\" *ngIf=\"selectedRows.size\">Selected:</a>\n <a *ngIf=\"selectedRows.size\">{{selectedRows.size}}</a>\n </div>\n <biit-paginator *ngIf=\"paginator\"\n [ngModel]=\"paginator\" (ngModelChange)=\"paginator = $event; onTableUpdate()\"></biit-paginator>\n </div>\n</div>\n", styles: [".canvas{height:100%;display:flex;flex-direction:column;box-sizing:border-box;row-gap:1.05rem}.canvas>.header{display:flex;flex-direction:row;justify-content:space-between}.canvas>.header>*{display:flex;flex-direction:row}.canvas>.header>.buttons ::ng-deep>*{height:2.1rem;min-width:2.1rem;display:flex;align-items:center;justify-content:center}.canvas>.header>.forms{column-gap:.7rem}.canvas>.header>.forms ::ng-deep biit-input-text .biit-input{min-height:0;padding-top:0}.canvas>.content{overflow:auto;display:flex;flex-grow:1;flex-direction:column;box-sizing:border-box}.canvas>.content *{box-sizing:border-box}.canvas>.content>table{width:100%;height:-moz-fit-content;height:fit-content;margin-top:-.2rem;table-layout:fixed;border-spacing:.2rem}.canvas>.content>table thead{text-transform:uppercase;position:sticky;top:0;background:white;z-index:1}.canvas>.content>table thead th{position:relative;height:2.1rem;color:#fff;font-weight:500;background:#262626;padding:.4rem 2.4rem;text-align:center;text-align:-moz-center;text-align:-webkit-center;cursor:default}.canvas>.content>table thead th.select{width:2.1rem;padding:.3rem .7rem;background:white}.canvas>.content>table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.canvas>.content>table thead th>.column-resizer{position:absolute;right:-.2rem;top:0;height:100%;width:.6rem;cursor:col-resize}.canvas>.content>table thead th>.label{width:-moz-fit-content;width:fit-content}.canvas>.content>table thead th>.sort{position:absolute;width:.7rem;height:.7rem;top:calc(50% - .35rem);right:.7rem;pointer-events:none}.canvas>.content>table thead th>.sort.asc{rotate:-90deg}.canvas>.content>table thead th>.sort.desc{rotate:90deg}.canvas>.content>table tbody tr{cursor:default}.canvas>.content>table tbody tr.selected{background:#D9D9D9}.canvas>.content>table tbody tr:hover{background:#EDEDED}.canvas>.content>table tbody tr:hover.selectable{cursor:pointer}.canvas>.content>table tbody tr>td{height:2.1rem;border-bottom:.2rem solid #262626;padding:.3rem .7rem;overflow:hidden}.canvas>.content>table tbody tr>td.select{width:2.1rem;padding:.3rem .7rem}.canvas>.footer{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.canvas>.footer>biit-paginator{width:50%;display:block}@media screen and (max-width: 600px){.page-size-selector,.horizontal-menu{display:none!important}}@media screen and (min-width: 601px){.vertical-menu{display:none!important}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: BiitPaginatorComponent, selector: "biit-paginator" }, { kind: "component", type: i4.BiitMultiselectComponent, selector: "biit-multiselect", inputs: ["title", "type", "icon", "label", "value", "descriptionField", "description", "data", "primitive", "compact", "disabled", "required", "sort-asc", "sort-desc"], outputs: ["onCreate"] }, { kind: "component", type: i4.BiitInputTextComponent, selector: "biit-input-text", inputs: ["placeholder", "error", "description", "info", "type", "icon", "fieldName", "disabled", "required", "readonly", "min", "max", "minLength", "maxLength", "regEx"], outputs: ["onActionPerformed"] }, { kind: "component", type: i4.BiitCheckboxComponent, selector: "biit-checkbox", inputs: ["disabled", "description", "showAlwaysDescription"] }, { kind: "component", type: i5$1.BiitProgressBarComponent, selector: "biit-progress-bar", inputs: ["type", "_value", "value"] }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "component", type: i1$1.BiitIconComponent, selector: "biit-icon", inputs: ["name", "svgStyle", "pathStyle"] }, { kind: "component", type: i8.BiitButtonComponent, selector: "button[biit-button]" }, { kind: "directive", type: i8.BiitButtonTertiaryDirective, selector: "[tertiary]" }, { kind: "component", type: i8.BiitIconButtonComponent, selector: "button[biit-icon]", inputs: ["icon", "checked"] }, { kind: "component", type: i9.BiitVerticalMenuComponent, selector: "biit-vertical-menu" }, { kind: "directive", type: BiitTableSelectableDirective, selector: "[selectable]" }, { kind: "directive", type: BiitTableSortableDirective, selector: "[sortable]" }, { kind: "pipe", type: i10.LocalizedDatePipe, name: "localizedDate" }, { kind: "pipe", type: VisibleColumnsPipe, name: "visibleColumns" }, { kind: "pipe", type: ColumnDataPipe, name: "columnData" }] });
|
|
563
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableComponent, decorators: [{
|
|
564
|
+
type: Component,
|
|
565
|
+
args: [{ selector: 'biit-table', providers: [{
|
|
566
|
+
provide: TRANSLOCO_SCOPE,
|
|
567
|
+
useValue: { scope: 'wizardry-theme/table', alias: "table" }
|
|
568
|
+
}], template: "<div class=\"canvas\" *transloco=\"let t\">\n <div class=\"header\" *ngIf=\"!hideHeader\">\n <div class=\"buttons\" id=\"menu\">\n <biit-vertical-menu *ngIf=\"actionsTpl\" class=\"vertical-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </biit-vertical-menu>\n <div *ngIf=\"actionsTpl\" class=\"horizontal-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </div>\n <div *ngIf=\"!actionsTpl\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"forms\">\n <biit-input-text id=\"search-field\" [(ngModel)]=\"search\"\n (onActionPerformed)=\"\n paginator.currentPage = 1;\n onTableUpdate(true);\n \"\n (focusout)=\"resetInputValue()\"\n (ngModelChange)=\"onTableUpdate()\"\n icon=\"search\"\n [placeholder]=\"t('table.search')\"\n ></biit-input-text>\n <biit-multiselect id=\"column-selector\" [ngModel]=\"columns | visibleColumns\"\n (ngModelChange)=\"setColumnVisibility($event)\"\n [data]=\"columns\"\n label=\"label\"\n value=\"visible\"\n [title]=\"t('table.column-selector')\"\n [type]=\"BiitMultiselectType.ICON\"\n [compact]=\"true\"\n ></biit-multiselect>\n </div>\n </div>\n\n <div class=\"content\">\n <div *ngIf=\"loading\" style=\"position: relative\">\n <biit-progress-bar style=\"position: absolute; top: 2.1rem; left: 0.2rem; width: calc(100% - 0.1rem);\"></biit-progress-bar>\n </div>\n <table>\n <thead>\n <tr>\n <th *ngIf=\"isSelectable || isSelectableSingle\" class=\"select\">\n <biit-checkbox *ngIf=\"isSelectable\"\n [ngModel]=\"data?.data.length && selectedRows.size == data?.data.length\"\n (ngModelChange)=\"$event ? data?.data.forEach(selectedRows.add, selectedRows) : selectedRows.clear()\"\n ></biit-checkbox>\n </th>\n <th *ngFor=\"let column of columns, index as i\"\n [class.sortable]=\"isSortable\"\n [style.display]=\"!column.visible ? 'none' : null\"\n [style.width]=\"column.width ? column.width + 'px' : ''\"\n (click)=\"isSortable ? onTableSort(column) : false\"\n >\n <div class=\"label\">\n {{column.label}}\n </div>\n <biit-icon *ngIf=\"isSortable\"\n [name]=\"sorting?.name == column.name ? 'right_arrow' : 'up_down_arrow'\"\n [pathStyle]=\"{fill: '#FFFFFF'}\"\n class=\"sort\"\n [class.asc]=\"sorting?.name == column.name && sorting?.order == 'asc'\"\n [class.desc]=\"sorting?.name == column.name && sorting?.order == 'desc'\"\n ></biit-icon>\n <div class=\"column-resizer\"\n (mousedown)=\"resizeColumn($event, column, i)\"\n (click)=\"$event.preventDefault();\n $event.stopPropagation();\n $event.stopImmediatePropagation();\"\n ></div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data?.data; index as i\"\n [class.selectable]=\"isSelectable\"\n [class.selected]=\"selectedRows.has(item)\"\n (pointerdown)=\"emitRowClick(item)\"\n >\n <td *ngIf=\"isSelectable || isSelectableSingle\" class=\"select\">\n <biit-checkbox id=\"select{{i}}\"\n [ngModel]=\"selectedRows.has(item)\"\n (ngModelChange)=\"selectRow(item, true)\"\n ></biit-checkbox>\n </td>\n <td *ngFor=\"let column of columns\"\n (pointerdown)=\"selectRow(item, $event.ctrlKey)\"\n [style.display]=\"!column.visible ? 'none' : null\"\n [style.width]=\"column.width ? column.width + 'px' : null\"\n >\n <div *ngIf=\"column.format == BiitTableColumnFormat.DEFAULT\">\n {{item | columnData: column.name}}\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.BOOLEAN\">\n {{(item | columnData: column.name) ? t('table.yes') : t('table.no') }}\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.DATE\">\n {{(item | columnData: column.name) | localizedDate}}\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.BUTTON\"\n style=\"width: auto; text-align: -webkit-center; text-align: -moz-center;\">\n <button biit-button tertiary\n (pointerdown)=\"emitCellAction(item, column.name, $event)\">\n {{item | columnData: column.name}}\n </button>\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.ICON_BUTTON\"\n style=\"width: auto; text-align: -webkit-center; text-align: -moz-center;\">\n <button biit-icon [icon]=\"item | columnData: column.name\"\n (pointerdown)=\"emitCellAction(item, column.name, $event);\"></button>\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.ICON\"\n style=\"width: auto; height: 1.05rem;\">\n <biit-icon [name]=\"item | columnData: column.name\"></biit-icon>\n </div>\n <div *ngIf=\"column.format == BiitTableColumnFormat.CUSTOM_HTML\"\n style=\"width: auto; text-align: -webkit-center; text-align: -moz-center;\">\n <div [innerHTML]=\"item | columnData: column.name\"></div>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n </div>\n\n <div class=\"footer\" *ngIf=\"!hideFooter\">\n <div class=\"selected\">\n <a style=\"margin-right: 0.7rem\" *ngIf=\"selectedRows.size\">Selected:</a>\n <a *ngIf=\"selectedRows.size\">{{selectedRows.size}}</a>\n </div>\n <biit-paginator *ngIf=\"paginator\"\n [ngModel]=\"paginator\" (ngModelChange)=\"paginator = $event; onTableUpdate()\"></biit-paginator>\n </div>\n</div>\n", styles: [".canvas{height:100%;display:flex;flex-direction:column;box-sizing:border-box;row-gap:1.05rem}.canvas>.header{display:flex;flex-direction:row;justify-content:space-between}.canvas>.header>*{display:flex;flex-direction:row}.canvas>.header>.buttons ::ng-deep>*{height:2.1rem;min-width:2.1rem;display:flex;align-items:center;justify-content:center}.canvas>.header>.forms{column-gap:.7rem}.canvas>.header>.forms ::ng-deep biit-input-text .biit-input{min-height:0;padding-top:0}.canvas>.content{overflow:auto;display:flex;flex-grow:1;flex-direction:column;box-sizing:border-box}.canvas>.content *{box-sizing:border-box}.canvas>.content>table{width:100%;height:-moz-fit-content;height:fit-content;margin-top:-.2rem;table-layout:fixed;border-spacing:.2rem}.canvas>.content>table thead{text-transform:uppercase;position:sticky;top:0;background:white;z-index:1}.canvas>.content>table thead th{position:relative;height:2.1rem;color:#fff;font-weight:500;background:#262626;padding:.4rem 2.4rem;text-align:center;text-align:-moz-center;text-align:-webkit-center;cursor:default}.canvas>.content>table thead th.select{width:2.1rem;padding:.3rem .7rem;background:white}.canvas>.content>table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.canvas>.content>table thead th>.column-resizer{position:absolute;right:-.2rem;top:0;height:100%;width:.6rem;cursor:col-resize}.canvas>.content>table thead th>.label{width:-moz-fit-content;width:fit-content}.canvas>.content>table thead th>.sort{position:absolute;width:.7rem;height:.7rem;top:calc(50% - .35rem);right:.7rem;pointer-events:none}.canvas>.content>table thead th>.sort.asc{rotate:-90deg}.canvas>.content>table thead th>.sort.desc{rotate:90deg}.canvas>.content>table tbody tr{cursor:default}.canvas>.content>table tbody tr.selected{background:#D9D9D9}.canvas>.content>table tbody tr:hover{background:#EDEDED}.canvas>.content>table tbody tr:hover.selectable{cursor:pointer}.canvas>.content>table tbody tr>td{height:2.1rem;border-bottom:.2rem solid #262626;padding:.3rem .7rem;overflow:hidden}.canvas>.content>table tbody tr>td.select{width:2.1rem;padding:.3rem .7rem}.canvas>.footer{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.canvas>.footer>biit-paginator{width:50%;display:block}@media screen and (max-width: 600px){.page-size-selector,.horizontal-menu{display:none!important}}@media screen and (min-width: 601px){.vertical-menu{display:none!important}}\n"] }]
|
|
569
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { _data: [{
|
|
570
|
+
type: Input,
|
|
571
|
+
args: ['metadata']
|
|
572
|
+
}], _loading: [{
|
|
573
|
+
type: Input,
|
|
574
|
+
args: ['loading']
|
|
575
|
+
}], columns: [{
|
|
576
|
+
type: Input
|
|
577
|
+
}], pageSizes: [{
|
|
578
|
+
type: Input
|
|
579
|
+
}], defaultPageSize: [{
|
|
580
|
+
type: Input
|
|
581
|
+
}], actionsTpl: [{
|
|
582
|
+
type: ContentChild,
|
|
583
|
+
args: ['actions']
|
|
584
|
+
}], onUpdate: [{
|
|
585
|
+
type: Output
|
|
586
|
+
}], onCellAction: [{
|
|
587
|
+
type: Output
|
|
588
|
+
}], onRowClick: [{
|
|
589
|
+
type: Output
|
|
590
|
+
}] } });
|
|
591
|
+
|
|
592
|
+
class BiitPaginatorModule {
|
|
593
|
+
}
|
|
594
|
+
BiitPaginatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitPaginatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
595
|
+
BiitPaginatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: BiitPaginatorModule, declarations: [BiitPaginatorComponent], imports: [CommonModule,
|
|
596
|
+
FormsModule,
|
|
597
|
+
BiitIconModule,
|
|
598
|
+
BiitIconButtonModule,
|
|
599
|
+
TranslocoRootModule,
|
|
600
|
+
BiitTooltipModule], exports: [BiitPaginatorComponent] });
|
|
601
|
+
BiitPaginatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitPaginatorModule, providers: [{
|
|
602
|
+
provide: TRANSLOCO_SCOPE,
|
|
603
|
+
useValue: { scope: 'wizardry-theme/table', alias: "table" }
|
|
604
|
+
}], imports: [CommonModule,
|
|
605
|
+
FormsModule,
|
|
606
|
+
BiitIconModule,
|
|
607
|
+
BiitIconButtonModule,
|
|
608
|
+
TranslocoRootModule,
|
|
609
|
+
BiitTooltipModule] });
|
|
610
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitPaginatorModule, decorators: [{
|
|
611
|
+
type: NgModule,
|
|
612
|
+
args: [{
|
|
613
|
+
declarations: [BiitPaginatorComponent],
|
|
614
|
+
exports: [BiitPaginatorComponent],
|
|
615
|
+
imports: [
|
|
616
|
+
CommonModule,
|
|
617
|
+
FormsModule,
|
|
618
|
+
BiitIconModule,
|
|
619
|
+
BiitIconButtonModule,
|
|
620
|
+
TranslocoRootModule,
|
|
621
|
+
BiitTooltipModule
|
|
622
|
+
],
|
|
623
|
+
providers: [{
|
|
624
|
+
provide: TRANSLOCO_SCOPE,
|
|
625
|
+
useValue: { scope: 'wizardry-theme/table', alias: "table" }
|
|
626
|
+
}]
|
|
627
|
+
}]
|
|
628
|
+
}] });
|
|
629
|
+
|
|
630
|
+
class BiitTableModule {
|
|
631
|
+
}
|
|
632
|
+
BiitTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
633
|
+
BiitTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: BiitTableModule, declarations: [BiitTableComponent,
|
|
634
|
+
BiitTableSelectableDirective,
|
|
635
|
+
BiitTableSelectableSingleDirective,
|
|
636
|
+
BiitTableSortableDirective,
|
|
637
|
+
BiitTableHeaderlessDirective,
|
|
638
|
+
BiitTableFooterlessDirective,
|
|
639
|
+
VisibleColumnsPipe,
|
|
640
|
+
ColumnDataPipe], imports: [CommonModule,
|
|
641
|
+
FormsModule,
|
|
642
|
+
BiitPaginatorModule,
|
|
643
|
+
BiitMultiselectModule,
|
|
644
|
+
BiitInputTextModule,
|
|
645
|
+
BiitCheckboxModule,
|
|
646
|
+
BiitProgressBarModule,
|
|
647
|
+
LocalizedDatePipeModule,
|
|
648
|
+
TranslocoRootModule,
|
|
649
|
+
BiitIconModule,
|
|
650
|
+
BiitButtonModule,
|
|
651
|
+
BiitIconButtonModule,
|
|
652
|
+
BiitVerticalMenuModule], exports: [BiitTableComponent,
|
|
653
|
+
BiitTableSelectableDirective,
|
|
654
|
+
BiitTableSelectableSingleDirective,
|
|
655
|
+
BiitTableSortableDirective,
|
|
656
|
+
BiitTableHeaderlessDirective,
|
|
657
|
+
BiitTableFooterlessDirective] });
|
|
658
|
+
BiitTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableModule, imports: [CommonModule,
|
|
659
|
+
FormsModule,
|
|
660
|
+
BiitPaginatorModule,
|
|
661
|
+
BiitMultiselectModule,
|
|
662
|
+
BiitInputTextModule,
|
|
663
|
+
BiitCheckboxModule,
|
|
664
|
+
BiitProgressBarModule,
|
|
665
|
+
LocalizedDatePipeModule,
|
|
666
|
+
TranslocoRootModule,
|
|
667
|
+
BiitIconModule,
|
|
668
|
+
BiitButtonModule,
|
|
669
|
+
BiitIconButtonModule,
|
|
670
|
+
BiitVerticalMenuModule] });
|
|
671
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitTableModule, decorators: [{
|
|
672
|
+
type: NgModule,
|
|
673
|
+
args: [{
|
|
674
|
+
declarations: [
|
|
675
|
+
BiitTableComponent,
|
|
676
|
+
BiitTableSelectableDirective,
|
|
677
|
+
BiitTableSelectableSingleDirective,
|
|
678
|
+
BiitTableSortableDirective,
|
|
679
|
+
BiitTableHeaderlessDirective,
|
|
680
|
+
BiitTableFooterlessDirective,
|
|
681
|
+
VisibleColumnsPipe,
|
|
682
|
+
ColumnDataPipe
|
|
683
|
+
],
|
|
684
|
+
exports: [
|
|
685
|
+
BiitTableComponent,
|
|
686
|
+
BiitTableSelectableDirective,
|
|
687
|
+
BiitTableSelectableSingleDirective,
|
|
688
|
+
BiitTableSortableDirective,
|
|
689
|
+
BiitTableHeaderlessDirective,
|
|
690
|
+
BiitTableFooterlessDirective
|
|
691
|
+
],
|
|
692
|
+
imports: [
|
|
693
|
+
CommonModule,
|
|
694
|
+
FormsModule,
|
|
695
|
+
BiitPaginatorModule,
|
|
696
|
+
BiitMultiselectModule,
|
|
697
|
+
BiitInputTextModule,
|
|
698
|
+
BiitCheckboxModule,
|
|
699
|
+
BiitProgressBarModule,
|
|
700
|
+
LocalizedDatePipeModule,
|
|
701
|
+
TranslocoRootModule,
|
|
702
|
+
BiitIconModule,
|
|
703
|
+
BiitButtonModule,
|
|
704
|
+
BiitIconButtonModule,
|
|
705
|
+
BiitVerticalMenuModule
|
|
706
|
+
]
|
|
707
|
+
}]
|
|
708
|
+
}] });
|
|
709
|
+
|
|
710
|
+
class BiitTableData {
|
|
711
|
+
constructor(data, totalItems) {
|
|
712
|
+
this.data = data;
|
|
713
|
+
this.totalItems = totalItems;
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
class GenericFilter {
|
|
718
|
+
static filter(object, value, includes = false, caseSensitive = false, params) {
|
|
719
|
+
const formattedValue = caseSensitive ? value : value === null || value === void 0 ? void 0 : value.toLowerCase();
|
|
720
|
+
for (let param in object) {
|
|
721
|
+
if (params && !params.includes(param))
|
|
722
|
+
continue;
|
|
723
|
+
let paramValue = object[param];
|
|
724
|
+
if (paramValue instanceof Array) {
|
|
725
|
+
if (paramValue.some((item) => {
|
|
726
|
+
return GenericFilter.filter(item, value, includes, caseSensitive);
|
|
727
|
+
})) {
|
|
728
|
+
return true;
|
|
729
|
+
}
|
|
730
|
+
continue;
|
|
731
|
+
}
|
|
732
|
+
if (typeof paramValue === 'string' || typeof paramValue === 'number' || typeof paramValue === 'boolean') {
|
|
733
|
+
let stringValue = paramValue.toString();
|
|
734
|
+
if (!caseSensitive) {
|
|
735
|
+
stringValue = stringValue.toLowerCase();
|
|
736
|
+
}
|
|
737
|
+
if (includes) {
|
|
738
|
+
if (stringValue.includes(formattedValue)) {
|
|
739
|
+
return true;
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
else {
|
|
743
|
+
if (stringValue === formattedValue) {
|
|
744
|
+
return true;
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
continue;
|
|
748
|
+
}
|
|
749
|
+
if (Object.keys(object).length === 0) {
|
|
750
|
+
if (object[param] === value) {
|
|
751
|
+
return true;
|
|
752
|
+
}
|
|
753
|
+
}
|
|
754
|
+
else {
|
|
755
|
+
if (GenericFilter.filter(paramValue, value, includes, caseSensitive)) {
|
|
756
|
+
return true;
|
|
757
|
+
}
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
return false;
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
|
|
764
|
+
class GenericSort {
|
|
765
|
+
static sort(data, sorting, columns) {
|
|
766
|
+
if (sorting) {
|
|
767
|
+
return data.sort((a, b) => {
|
|
768
|
+
switch (columns.find(i => i.name == sorting.name).format) {
|
|
769
|
+
case BiitTableColumnFormat.BOOLEAN:
|
|
770
|
+
if (a[sorting.name] == b[sorting.name])
|
|
771
|
+
return 0;
|
|
772
|
+
if (sorting.order == 'asc') {
|
|
773
|
+
return a[sorting.name] ? -1 : 1;
|
|
774
|
+
}
|
|
775
|
+
else {
|
|
776
|
+
return a[sorting.name] ? 1 : -1;
|
|
777
|
+
}
|
|
778
|
+
case BiitTableColumnFormat.DATE:
|
|
779
|
+
if (new Date(a[sorting.name]).getTime() == new Date(b[sorting.name]).getTime())
|
|
780
|
+
return 0;
|
|
781
|
+
if (sorting.order == 'asc') {
|
|
782
|
+
return (new Date(a[sorting.name]).getTime() > new Date(b[sorting.name]).getTime()) ? 1 : -1;
|
|
783
|
+
}
|
|
784
|
+
else {
|
|
785
|
+
return (new Date(a[sorting.name]).getTime() > new Date(b[sorting.name]).getTime()) ? -1 : 1;
|
|
786
|
+
}
|
|
787
|
+
default:
|
|
788
|
+
if (a[sorting.name] == b[sorting.name])
|
|
789
|
+
return 0;
|
|
790
|
+
if (sorting.order == 'asc') {
|
|
791
|
+
return a[sorting.name] > b[sorting.name] ? 1 : -1;
|
|
792
|
+
}
|
|
793
|
+
else {
|
|
794
|
+
return a[sorting.name] > b[sorting.name] ? -1 : 1;
|
|
795
|
+
}
|
|
796
|
+
}
|
|
797
|
+
});
|
|
798
|
+
}
|
|
799
|
+
else {
|
|
800
|
+
return data;
|
|
801
|
+
}
|
|
802
|
+
}
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
class Page {
|
|
806
|
+
constructor(pageNumber, pageSize, totalElements) {
|
|
807
|
+
this.totalElements = 0;
|
|
808
|
+
this.pageNumber = 0;
|
|
809
|
+
this.pageSize = 0;
|
|
810
|
+
this.pageNumber = pageNumber !== null && pageNumber !== void 0 ? pageNumber : 0;
|
|
811
|
+
this.pageSize = pageSize !== null && pageSize !== void 0 ? pageSize : 0;
|
|
812
|
+
this.totalElements = totalElements !== null && totalElements !== void 0 ? totalElements : 0;
|
|
813
|
+
}
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
class BiitDatatablePagerComponent extends DataTablePagerComponent {
|
|
817
|
+
constructor(biitIconService) {
|
|
818
|
+
super();
|
|
819
|
+
biitIconService.registerIcons(completeIconSet);
|
|
820
|
+
}
|
|
821
|
+
enforceMinMax(el) {
|
|
822
|
+
if (el.value != "") {
|
|
823
|
+
if (parseInt(el.value) < parseInt(el.min)) {
|
|
824
|
+
el.value = el.min;
|
|
825
|
+
}
|
|
826
|
+
if (parseInt(el.value) > parseInt(el.max)) {
|
|
827
|
+
el.value = el.max;
|
|
828
|
+
}
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
log(event) {
|
|
832
|
+
}
|
|
833
|
+
}
|
|
834
|
+
BiitDatatablePagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatablePagerComponent, deps: [{ token: i1$1.BiitIconService }], target: i0.ɵɵFactoryTarget.Component });
|
|
835
|
+
BiitDatatablePagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BiitDatatablePagerComponent, selector: "biit-datatable-pager", providers: [provideTranslocoScope({ scope: 'wizardry-theme/table', alias: 't' })], usesInheritance: true, ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <div id=\"page-selector\" class=\"page-selector\">\n <button biit-icon id=\"arrow-first\"\n icon='right_double_arrow'\n class=\"horizontal-flip\"\n (click)=\"selectPage(1)\"\n [disabled]=\"!canPrevious()\"\n tooltip=\"{{t('t.first-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-previous\"\n icon='right_arrow'\n class=\"compact horizontal-flip\"\n (click)=\"prevPage()\"\n [disabled]=\"!canPrevious()\"\n tooltip=\"{{t('t.previous-page')}}\"\n ></button>\n <div class=\"page-display\" (click)=\"input.focus()\">\n <input id=\"current-page\" #input\n [ngModel]=\"page\"\n readonly\n (keydown.arrowUp)=\"nextPage(); $event.stopPropagation(); $event.preventDefault();\"\n (keydown.arrowRight)=\"nextPage(); $event.stopPropagation(); $event.preventDefault();\"\n (keydown.arrowDown)=\"prevPage(); $event.stopPropagation(); $event.preventDefault();\"\n (keydown.arrowLeft)=\"prevPage(); $event.stopPropagation(); $event.preventDefault();\"\n type=\"number\"\n [min]=\"1\"\n [max]=\"totalPages\"\n style=\"width: 2.5rem\">\n <span #label id=\"total-pages\">/{{ totalPages }}</span>\n </div>\n <button biit-icon id=\"arrow-next\"\n icon='right_arrow'\n class=\"compact\"\n (click)=\"nextPage()\"\n [disabled]=\"!canNext()\"\n tooltip=\"{{t('t.next-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-last\"\n icon='right_double_arrow'\n (click)=\"selectPage(totalPages)\"\n [disabled]=\"!canNext()\"\n tooltip=\"{{t('t.last-page')}}\"\n ></button>\n </div>\n</ng-container>\n", styles: [".page-selector{display:flex;position:relative;align-items:center}.page-selector button[biit-icon].horizontal-flip{rotate:-180deg}.page-selector button[biit-icon].compact ::ng-deep .icon-button-svg{width:10px}.page-selector .page-display{position:relative;display:flex;align-items:baseline;padding:6px 14px;gap:14px;line-height:100%;font-weight:700;border-bottom:3px #262626 solid}.page-selector .page-display:hover{background:#D9D9D9}.page-selector .page-display:has(input:focus-visible){background:#D9D9D9}.page-selector .page-display input{all:unset;min-width:14px}.page-selector .page-display input[type=number]::-webkit-inner-spin-button,.page-selector .page-display input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.page-selector .page-display input[type=number]{-moz-appearance:textfield}.page-selector .page-display span{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i2.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: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.BiitIconButtonComponent, selector: "button[biit-icon]", inputs: ["icon", "checked"] }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: i5$1.BiitTooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "ignorePadding"] }] });
|
|
836
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatablePagerComponent, decorators: [{
|
|
837
|
+
type: Component,
|
|
838
|
+
args: [{ selector: 'biit-datatable-pager', providers: [provideTranslocoScope({ scope: 'wizardry-theme/table', alias: 't' })], template: "<ng-container *transloco=\"let t\">\n <div id=\"page-selector\" class=\"page-selector\">\n <button biit-icon id=\"arrow-first\"\n icon='right_double_arrow'\n class=\"horizontal-flip\"\n (click)=\"selectPage(1)\"\n [disabled]=\"!canPrevious()\"\n tooltip=\"{{t('t.first-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-previous\"\n icon='right_arrow'\n class=\"compact horizontal-flip\"\n (click)=\"prevPage()\"\n [disabled]=\"!canPrevious()\"\n tooltip=\"{{t('t.previous-page')}}\"\n ></button>\n <div class=\"page-display\" (click)=\"input.focus()\">\n <input id=\"current-page\" #input\n [ngModel]=\"page\"\n readonly\n (keydown.arrowUp)=\"nextPage(); $event.stopPropagation(); $event.preventDefault();\"\n (keydown.arrowRight)=\"nextPage(); $event.stopPropagation(); $event.preventDefault();\"\n (keydown.arrowDown)=\"prevPage(); $event.stopPropagation(); $event.preventDefault();\"\n (keydown.arrowLeft)=\"prevPage(); $event.stopPropagation(); $event.preventDefault();\"\n type=\"number\"\n [min]=\"1\"\n [max]=\"totalPages\"\n style=\"width: 2.5rem\">\n <span #label id=\"total-pages\">/{{ totalPages }}</span>\n </div>\n <button biit-icon id=\"arrow-next\"\n icon='right_arrow'\n class=\"compact\"\n (click)=\"nextPage()\"\n [disabled]=\"!canNext()\"\n tooltip=\"{{t('t.next-page')}}\"\n ></button>\n <button biit-icon id=\"arrow-last\"\n icon='right_double_arrow'\n (click)=\"selectPage(totalPages)\"\n [disabled]=\"!canNext()\"\n tooltip=\"{{t('t.last-page')}}\"\n ></button>\n </div>\n</ng-container>\n", styles: [".page-selector{display:flex;position:relative;align-items:center}.page-selector button[biit-icon].horizontal-flip{rotate:-180deg}.page-selector button[biit-icon].compact ::ng-deep .icon-button-svg{width:10px}.page-selector .page-display{position:relative;display:flex;align-items:baseline;padding:6px 14px;gap:14px;line-height:100%;font-weight:700;border-bottom:3px #262626 solid}.page-selector .page-display:hover{background:#D9D9D9}.page-selector .page-display:has(input:focus-visible){background:#D9D9D9}.page-selector .page-display input{all:unset;min-width:14px}.page-selector .page-display input[type=number]::-webkit-inner-spin-button,.page-selector .page-display input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.page-selector .page-display input[type=number]{-moz-appearance:textfield}.page-selector .page-display span{pointer-events:none}\n"] }]
|
|
839
|
+
}], ctorParameters: function () { return [{ type: i1$1.BiitIconService }]; } });
|
|
840
|
+
|
|
841
|
+
class BiitDatatableComponent {
|
|
842
|
+
set data(data) {
|
|
843
|
+
this._data = data !== null && data !== void 0 ? data : [];
|
|
844
|
+
this.allData = data !== null && data !== void 0 ? data : [];
|
|
845
|
+
this.selected = [];
|
|
846
|
+
}
|
|
847
|
+
get data() {
|
|
848
|
+
return this._data;
|
|
849
|
+
}
|
|
850
|
+
set columns(columns) {
|
|
851
|
+
this.allColumns = columns !== null && columns !== void 0 ? columns : [];
|
|
852
|
+
this._columns = columns.filter(c => c.visible);
|
|
853
|
+
}
|
|
854
|
+
get columns() {
|
|
855
|
+
return this._columns;
|
|
856
|
+
}
|
|
857
|
+
get selectedRows() {
|
|
858
|
+
return this.selected;
|
|
859
|
+
}
|
|
860
|
+
constructor(biitIconService) {
|
|
861
|
+
this._data = [];
|
|
862
|
+
this.allData = [];
|
|
863
|
+
this._columns = [];
|
|
864
|
+
this.allColumns = [];
|
|
865
|
+
this.selected = [];
|
|
866
|
+
this.pageSizeList = [];
|
|
867
|
+
this.loading = false;
|
|
868
|
+
this.search = "";
|
|
869
|
+
this.onSelection = new EventEmitter();
|
|
870
|
+
this.onPageChange = new EventEmitter();
|
|
871
|
+
this.ColumnMode = ColumnMode;
|
|
872
|
+
this.SelectionType = SelectionType;
|
|
873
|
+
this.BiitMultiselectType = BiitMultiselectType;
|
|
874
|
+
biitIconService.registerIcons(completeIconSet);
|
|
875
|
+
}
|
|
876
|
+
ngOnInit() {
|
|
877
|
+
this.selectable = coerceBooleanProperty(this.selectable);
|
|
878
|
+
this.singleSelection = coerceBooleanProperty(this.singleSelection);
|
|
879
|
+
this.scrollbarH = coerceBooleanProperty(this.scrollbarH);
|
|
880
|
+
this.hideHeader = coerceBooleanProperty(this.hideHeader);
|
|
881
|
+
this.hideFooter = coerceBooleanProperty(this.hideFooter);
|
|
882
|
+
this.serverSide = coerceBooleanProperty(this.serverSide);
|
|
883
|
+
}
|
|
884
|
+
onSelect({ selected }) {
|
|
885
|
+
this.selected.splice(0, this.selected.length);
|
|
886
|
+
this.selected.push(...selected);
|
|
887
|
+
this.onSelection.emit(this.selected);
|
|
888
|
+
}
|
|
889
|
+
onActivate(event) {
|
|
890
|
+
if (event.type == 'click' && event.column.name !== 'chkbox') {
|
|
891
|
+
this.selected = [event.row];
|
|
892
|
+
this.onSelection.emit(this.selected);
|
|
893
|
+
}
|
|
894
|
+
}
|
|
895
|
+
onFilter(value, force = false) {
|
|
896
|
+
if (this.findTimeout) {
|
|
897
|
+
clearTimeout(this.findTimeout);
|
|
898
|
+
}
|
|
899
|
+
this.findTimeout = setTimeout(() => {
|
|
900
|
+
this.search = value;
|
|
901
|
+
const val = value.toLowerCase();
|
|
902
|
+
// filter our data
|
|
903
|
+
const temp = this.allData.filter(item => GenericFilter.filter(item, val, true));
|
|
904
|
+
// update the rows
|
|
905
|
+
this._data = temp;
|
|
906
|
+
// Whenever the filter changes, always go back to the first page
|
|
907
|
+
this.table.offset = 0;
|
|
908
|
+
clearTimeout(this.findTimeout);
|
|
909
|
+
this.findTimeout = null;
|
|
910
|
+
}, force ? 0 : 500);
|
|
911
|
+
}
|
|
912
|
+
onFooterPageChange(event) {
|
|
913
|
+
const page = new Page(event.offset, event.pageSize, event.count);
|
|
914
|
+
this.onPageChange.emit(page);
|
|
915
|
+
}
|
|
916
|
+
setColumnVisibility(columns) {
|
|
917
|
+
this._columns = this.allColumns.filter(c => columns.includes(c));
|
|
918
|
+
}
|
|
919
|
+
}
|
|
920
|
+
BiitDatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatableComponent, deps: [{ token: i1$1.BiitIconService }], target: i0.ɵɵFactoryTarget.Component });
|
|
921
|
+
BiitDatatableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BiitDatatableComponent, selector: "biit-datatable", inputs: { data: "data", columns: "columns", pageSize: "pageSize", pageSizeList: "pageSizeList", loading: "loading", selectable: "selectable", singleSelection: "singleSelection", scrollbarH: "scrollbarH", hideHeader: "hideHeader", hideFooter: "hideFooter", serverSide: "serverSide", page: "page" }, outputs: { onSelection: "onSelection", onPageChange: "onPageChange" }, providers: [provideTranslocoScope({ scope: 'wizardry-theme/table', alias: 't' })], queries: [{ propertyName: "actionsTpl", first: true, predicate: ["actions"], descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<div id=\"biit-table\" class=\"table-canvas\" *transloco=\"let t\">\n <div class=\"top\" *ngIf=\"!hideHeader\">\n <div id=\"menu\" class=\"action-bar\">\n <biit-vertical-menu *ngIf=\"actionsTpl\" class=\"vertical-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </biit-vertical-menu>\n <div *ngIf=\"actionsTpl\" class=\"horizontal-menu default-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </div>\n <div class=\"default-menu\" *ngIf=\"!actionsTpl\">\n <ng-content></ng-content>\n </div>\n </div>\n <div id=\"options\" class=\"options\">\n <biit-input-text id=\"search\" #searchInput\n [ngModel]=\"search\"\n (onActionPerformed)=\"\n onFilter($event, true);\n \"\n (ngModelChange)=\"onFilter($event)\"\n (focusout)=\"searchInput.value = search\"\n icon=\"search\"\n [placeholder]=\"t('t.search')\"\n ></biit-input-text>\n <biit-multiselect id=\"column-selector\" [ngModel]=\"_columns\"\n (ngModelChange)=\"setColumnVisibility($event)\"\n [data]=\"allColumns\"\n label=\"name\"\n value=\"visible\"\n [type]=\"BiitMultiselectType.ICON\"\n [title]=\"t('t.column-selector')\"\n [compact]=\"true\"\n ></biit-multiselect>\n </div>\n </div>\n <div id=\"content\" class=\"table\">\n <biit-progress-bar *ngIf=\"loading\"></biit-progress-bar>\n <ng-container *ngIf=\"!serverSide\">\n <ngx-datatable #table\n [rows]=\"data\"\n [columns]=\"_columns\"\n [columnMode]=\"'force'\"\n [headerHeight]=\"42\"\n [footerHeight]=\"hideFooter ? 0 : 34\"\n [rowHeight]=\"'auto'\"\n [reorderable]=\"false\"\n [selectionType]=\"SelectionType.checkbox\"\n [selected]=\"selected\"\n (select)=\"onSelect($event)\"\n (activate)=\"onActivate($event)\"\n [virtualization]=\"false\"\n [scrollbarVDynamic]=\"true\"\n [limit]=\"pageSize\"\n [scrollbarH]=\"scrollbarH\"\n [messages]=\"{emptyMessage: t('t.empty-message')}\"\n >\n <ngx-datatable-column *ngIf=\"selectable && !singleSelection\"\n #chkbox\n [width]=\"42\"\n [sortable]=\"false\"\n [canAutoResize]=\"false\"\n [draggable]=\"false\"\n [resizeable]=\"false\"\n [name]=\"'chkbox'\"\n >\n <ng-template\n ngx-datatable-header-template\n let-value=\"value\"\n let-allRowsSelected=\"allRowsSelected\"\n let-selectFn=\"selectFn\"\n >\n <biit-checkbox [ngModel]=\"allRowsSelected\" (ngModelChange)=\"selectFn(!allRowsSelected)\"></biit-checkbox>\n </ng-template>\n <ng-template\n ngx-datatable-cell-template\n let-value=\"value\"\n let-isSelected=\"isSelected\"\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\"\n >\n <biit-checkbox [ngModel]=\"isSelected\" (ngModelChange)=\"onCheckboxChangeFn($event)\"></biit-checkbox>\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column *ngFor=\"let column of _columns\"\n [name]=\"column.name\"\n [prop]=\"column.prop\"\n [checkboxable]=\"column.checkboxable\"\n [frozenLeft]=\"column.frozenLeft\"\n [frozenRight]=\"column.frozenRight\"\n [flexGrow]=\"column.flexGrow\"\n [minWidth]=\"column.minWidth\"\n [maxWidth]=\"column.maxWidth\"\n [width]=\"column.width\"\n [resizeable]=\"column.resizeable\"\n [comparator]=\"column.comparator\"\n [pipe]=\"column.pipe\"\n [sortable]=\"column.sortable\"\n [draggable]=\"column.draggable\"\n [canAutoResize]=\"column.canAutoResize\"\n [cellTemplate]=\"column.cellTemplate\"\n [ghostCellTemplate]=\"column.ghostCellTemplate\"\n [treeToggleTemplate]=\"column.treeToggleTemplate\"\n [cellClass]=\"column.cellClass\"\n [headerTemplate]=\"column.headerTemplate\"\n [headerClass]=\"column.headerClass\"\n [headerCheckboxable]=\"column.headerCheckboxable\"\n [isTreeColumn]=\"column.isTreeColumn\"\n [treeLevelIndent]=\"column.treeLevelIndent\"\n [summaryFunc]=\"column.summaryFunc\"\n [summaryTemplate]=\"column.summaryTemplate\"\n ></ngx-datatable-column>\n\n <ngx-datatable-footer id=\"datatable-footer\">\n <ng-template\n ngx-datatable-footer-template\n let-rowCount=\"rowCount\"\n let-pageSizeCurrent=\"pageSize\"\n let-selectedCount=\"selectedCount\"\n let-curPage=\"curPage\"\n let-offset=\"offset\"\n >\n <div class=\"label\">\n <span>{{ t('t.total') }}: </span><span id=\"total-number-of-items\">{{rowCount}}</span>\n <span *ngIf=\"selectedCount\"> | {{ t('t.selected') }}: </span><span *ngIf=\"selectedCount\" id=\"number-of-items-selected\">{{selectedCount}}</span>\n </div>\n <div class=\"pagination\" [style.display]=\"!((rowCount / pageSize) > 1) ? 'none' : null\">\n <biit-datatable-pager #pager\n [page]=\"curPage\"\n [size]=\"pageSizeCurrent\"\n [count]=\"rowCount\"\n [hidden]=\"!((rowCount / pageSize) > 1)\"\n (change)=\"table.onFooterPage($event)\">\n </biit-datatable-pager>\n </div>\n <div class=\"page-items\" *ngIf=\"pageSizeList\">\n <div *ngIf=\"pageSizeList?.length\">\n <span>{{ t('t.rows-per-page') }}:</span>\n <select [(ngModel)]=\"pageSize\"\n (ngModelChange)=\"pager.size = $event\">\n <option *ngFor=\"let size of pageSizeList\"\n [ngValue]=\"size\"\n >\n {{size}}\n </option>\n </select>\n </div>\n </div>\n </ng-template>\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n\n <ng-container *ngIf=\"serverSide\">\n <ngx-datatable #table\n [rows]=\"data\"\n [columns]=\"_columns\"\n [columnMode]=\"'force'\"\n [headerHeight]=\"42\"\n [footerHeight]=\"hideFooter ? 0 : 34\"\n [rowHeight]=\"'auto'\"\n [reorderable]=\"false\"\n [selectionType]=\"SelectionType.checkbox\"\n [selected]=\"selected\"\n (select)=\"onSelect($event)\"\n (activate)=\"onActivate($event)\"\n [virtualization]=\"false\"\n [scrollbarVDynamic]=\"true\"\n [scrollbarH]=\"scrollbarH\"\n [messages]=\"{emptyMessage: t('t.empty-message')}\"\n [externalPaging]=\"true\"\n [count]=\"page.totalElements\"\n [offset]=\"page.pageNumber\"\n [limit]=\"page.pageSize\"\n (page)=\"onFooterPageChange($event)\"\n >\n <ngx-datatable-column *ngIf=\"selectable && !singleSelection\"\n #chkbox\n [width]=\"42\"\n [sortable]=\"false\"\n [canAutoResize]=\"false\"\n [draggable]=\"false\"\n [resizeable]=\"false\"\n [name]=\"'chkbox'\"\n >\n <ng-template\n ngx-datatable-header-template\n let-value=\"value\"\n let-allRowsSelected=\"allRowsSelected\"\n let-selectFn=\"selectFn\"\n >\n <biit-checkbox [ngModel]=\"allRowsSelected\" (ngModelChange)=\"selectFn(!allRowsSelected)\"></biit-checkbox>\n </ng-template>\n <ng-template\n ngx-datatable-cell-template\n let-value=\"value\"\n let-isSelected=\"isSelected\"\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\"\n >\n <biit-checkbox [ngModel]=\"isSelected\" (ngModelChange)=\"onCheckboxChangeFn($event)\"></biit-checkbox>\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column *ngFor=\"let column of _columns\"\n [name]=\"column.name\"\n [prop]=\"column.prop\"\n [checkboxable]=\"column.checkboxable\"\n [frozenLeft]=\"column.frozenLeft\"\n [frozenRight]=\"column.frozenRight\"\n [flexGrow]=\"column.flexGrow\"\n [minWidth]=\"column.minWidth\"\n [maxWidth]=\"column.maxWidth\"\n [width]=\"column.width\"\n [resizeable]=\"column.resizeable\"\n [comparator]=\"column.comparator\"\n [pipe]=\"column.pipe\"\n [sortable]=\"column.sortable\"\n [draggable]=\"column.draggable\"\n [canAutoResize]=\"column.canAutoResize\"\n [cellTemplate]=\"column.cellTemplate\"\n [ghostCellTemplate]=\"column.ghostCellTemplate\"\n [treeToggleTemplate]=\"column.treeToggleTemplate\"\n [cellClass]=\"column.cellClass\"\n [headerTemplate]=\"column.headerTemplate\"\n [headerClass]=\"column.headerClass\"\n [headerCheckboxable]=\"column.headerCheckboxable\"\n [isTreeColumn]=\"column.isTreeColumn\"\n [treeLevelIndent]=\"column.treeLevelIndent\"\n [summaryFunc]=\"column.summaryFunc\"\n [summaryTemplate]=\"column.summaryTemplate\"\n ></ngx-datatable-column>\n\n <ngx-datatable-footer>\n <ng-template\n ngx-datatable-footer-template\n let-rowCount=\"rowCount\"\n let-pageSizeCurrent=\"pageSize\"\n let-selectedCount=\"selectedCount\"\n let-curPage=\"curPage\"\n let-offset=\"offset\"\n >\n <div class=\"label\" id=\"total-elements\">\n <span>{{ t('t.total') }}: {{rowCount}}</span>\n <span *ngIf=\"selectedCount\"> | {{ t('t.selected') }}: {{selectedCount}}</span>\n </div>\n <div class=\"pagination\" [style.display]=\"!((rowCount / pageSize) > 1) ? 'none' : null\">\n <biit-datatable-pager #pager\n [page]=\"curPage\"\n [size]=\"pageSizeCurrent\"\n [count]=\"rowCount\"\n [hidden]=\"!((rowCount / pageSize) > 1)\"\n (change)=\"table.onFooterPage($event)\">\n </biit-datatable-pager>\n </div>\n <div class=\"page-items\" *ngIf=\"pageSizeList\">\n <div *ngIf=\"pageSizeList?.length\">\n <span>{{ t('t.rows-per-page') }}:</span>\n <select [(ngModel)]=\"pageSize\"\n (ngModelChange)=\"pager.size = $event\">\n <option *ngFor=\"let size of pageSizeList\"\n [ngValue]=\"size\"\n >\n {{size}}\n </option>\n </select>\n </div>\n </div>\n </ng-template>\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n </div>\n</div>\n", styles: [".table-canvas{height:100%;display:flex;flex-direction:column;gap:14px;background:white}.table-canvas .top{display:flex;flex:0}.table-canvas .top .action-bar{display:flex;flex:1}.table-canvas .top .options{display:flex;flex:0}.table-canvas .table{position:relative;flex:1;min-height:0;min-width:0}.table-canvas .table biit-progress-bar{position:absolute;z-index:1;left:0;right:3px;top:42px}.table-canvas .table ::ng-deep ngx-datatable{height:100%;position:absolute;inset:0}.table-canvas .table ::ng-deep ngx-datatable>div{height:calc(100% - 42px)}.table-canvas .table ::ng-deep ngx-datatable>div>div{height:100%}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner{height:inherit}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap{height:100%!important;width:calc(100% - 3px);display:flex;align-items:center;justify-content:center;background:#262626}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap span{color:#ededed;font-size:16px;line-height:100%;font-weight:700;text-transform:uppercase}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap .sort-btn{position:absolute;right:14px}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap:has(biit-checkbox){background:white}.table-canvas .table ::ng-deep ngx-datatable datatable-body{height:100%!important;overflow-y:auto!important}.table-canvas .table ::ng-deep ngx-datatable datatable-body .empty-row{height:100%;display:flex;align-items:center;justify-content:center}.table-canvas .table ::ng-deep ngx-datatable datatable-body datatable-body-row .datatable-body-cell-label{display:flex;align-items:center;min-height:42px;border-bottom:3px solid #262626;width:calc(100% - 3px);padding:9px 14px;line-height:120%;height:100%}.table-canvas .table ::ng-deep ngx-datatable datatable-body datatable-body-row:hover .datatable-body-cell-label{background:#EDEDED}.table-canvas .table ::ng-deep ngx-datatable datatable-body datatable-body-row.active .datatable-body-cell-label{background:#D9D9D9}.table-canvas .table ::ng-deep ngx-datatable datatable-footer{position:absolute;bottom:0;background:white;z-index:10}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .label{flex:1 0}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .pagination{display:flex;margin:auto;flex:0;justify-content:center}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .pagination biit-datatable-pager{flex:none!important}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items{flex:1 0;display:flex;justify-content:flex-end;align-items:center}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select{appearance:none;border:none;height:34px;min-width:34px;padding:8px 14px;text-align:end;font-size:14px;font-family:Montserrat,serif;cursor:pointer;background:white}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select:focus-visible{outline:none;background:#D9D9D9}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select:hover{background:#D9D9D9}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select *{background:white;padding:5px}.table-canvas .table ::ng-deep ngx-datatable:has(datatable-footer) datatable-body{height:calc(100% - 48px)!important}::ng-deep ngx-datatable .auto-details-height .datatable-row-wrapper{height:unset!important}::ng-deep ngx-datatable .auto-details-height .datatable-row-wrapper .datatable-row-detail{height:unset!important}.default-menu{display:flex;flex-direction:row}@media screen and (max-width: 600px){.page-items,.page-size-selector,.horizontal-menu{display:none!important}}@media screen and (min-width: 601px){.vertical-menu{display:none!important}}\n"], dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.BiitCheckboxComponent, selector: "biit-checkbox", inputs: ["disabled", "description", "showAlwaysDescription"] }, { kind: "component", type: BiitDatatablePagerComponent, selector: "biit-datatable-pager" }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.DatatableComponent, selector: "ngx-datatable", inputs: ["targetMarkerTemplate", "rows", "groupRowsBy", "groupedRows", "columns", "selected", "scrollbarV", "scrollbarVDynamic", "scrollbarH", "rowHeight", "columnMode", "headerHeight", "footerHeight", "externalPaging", "externalSorting", "limit", "count", "offset", "loadingIndicator", "ghostLoadingIndicator", "selectionType", "reorderable", "swapColumns", "sortType", "sorts", "cssClasses", "messages", "rowClass", "selectCheck", "displayCheck", "groupExpansionDefault", "trackByProp", "selectAllRowsOnPage", "virtualization", "treeFromRelation", "treeToRelation", "summaryRow", "summaryHeight", "summaryPosition", "disableRowCheck", "rowIdentity"], outputs: ["scroll", "activate", "select", "sort", "page", "reorder", "resize", "tableContextmenu", "treeAction"] }, { kind: "directive", type: i6.DataTableColumnDirective, selector: "ngx-datatable-column", inputs: ["name", "prop", "frozenLeft", "frozenRight", "flexGrow", "resizeable", "comparator", "pipe", "sortable", "draggable", "canAutoResize", "minWidth", "width", "maxWidth", "checkboxable", "headerCheckboxable", "headerClass", "cellClass", "isTreeColumn", "treeLevelIndent", "summaryFunc", "summaryTemplate", "cellTemplate", "headerTemplate", "treeToggleTemplate", "ghostCellTemplate"] }, { kind: "directive", type: i6.DataTableColumnHeaderDirective, selector: "[ngx-datatable-header-template]" }, { kind: "directive", type: i6.DataTableColumnCellDirective, selector: "[ngx-datatable-cell-template]" }, { kind: "directive", type: i6.DataTableFooterTemplateDirective, selector: "[ngx-datatable-footer-template]" }, { kind: "directive", type: i6.DatatableFooterDirective, selector: "ngx-datatable-footer", inputs: ["footerHeight", "totalMessage", "selectedMessage", "pagerLeftArrowIcon", "pagerRightArrowIcon", "pagerPreviousIcon", "pagerNextIcon", "template"] }, { kind: "component", type: i5$1.BiitProgressBarComponent, selector: "biit-progress-bar", inputs: ["type", "_value", "value"] }, { kind: "component", type: i4.BiitMultiselectComponent, selector: "biit-multiselect", inputs: ["title", "type", "icon", "label", "value", "descriptionField", "description", "data", "primitive", "compact", "disabled", "required", "sort-asc", "sort-desc"], outputs: ["onCreate"] }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "component", type: i4.BiitInputTextComponent, selector: "biit-input-text", inputs: ["placeholder", "error", "description", "info", "type", "icon", "fieldName", "disabled", "required", "readonly", "min", "max", "minLength", "maxLength", "regEx"], outputs: ["onActionPerformed"] }, { kind: "component", type: i9.BiitVerticalMenuComponent, selector: "biit-vertical-menu" }] });
|
|
922
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatableComponent, decorators: [{
|
|
923
|
+
type: Component,
|
|
924
|
+
args: [{ selector: 'biit-datatable', providers: [provideTranslocoScope({ scope: 'wizardry-theme/table', alias: 't' })], template: "<div id=\"biit-table\" class=\"table-canvas\" *transloco=\"let t\">\n <div class=\"top\" *ngIf=\"!hideHeader\">\n <div id=\"menu\" class=\"action-bar\">\n <biit-vertical-menu *ngIf=\"actionsTpl\" class=\"vertical-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </biit-vertical-menu>\n <div *ngIf=\"actionsTpl\" class=\"horizontal-menu default-menu\">\n <ng-container *ngTemplateOutlet=\"actionsTpl\"></ng-container>\n </div>\n <div class=\"default-menu\" *ngIf=\"!actionsTpl\">\n <ng-content></ng-content>\n </div>\n </div>\n <div id=\"options\" class=\"options\">\n <biit-input-text id=\"search\" #searchInput\n [ngModel]=\"search\"\n (onActionPerformed)=\"\n onFilter($event, true);\n \"\n (ngModelChange)=\"onFilter($event)\"\n (focusout)=\"searchInput.value = search\"\n icon=\"search\"\n [placeholder]=\"t('t.search')\"\n ></biit-input-text>\n <biit-multiselect id=\"column-selector\" [ngModel]=\"_columns\"\n (ngModelChange)=\"setColumnVisibility($event)\"\n [data]=\"allColumns\"\n label=\"name\"\n value=\"visible\"\n [type]=\"BiitMultiselectType.ICON\"\n [title]=\"t('t.column-selector')\"\n [compact]=\"true\"\n ></biit-multiselect>\n </div>\n </div>\n <div id=\"content\" class=\"table\">\n <biit-progress-bar *ngIf=\"loading\"></biit-progress-bar>\n <ng-container *ngIf=\"!serverSide\">\n <ngx-datatable #table\n [rows]=\"data\"\n [columns]=\"_columns\"\n [columnMode]=\"'force'\"\n [headerHeight]=\"42\"\n [footerHeight]=\"hideFooter ? 0 : 34\"\n [rowHeight]=\"'auto'\"\n [reorderable]=\"false\"\n [selectionType]=\"SelectionType.checkbox\"\n [selected]=\"selected\"\n (select)=\"onSelect($event)\"\n (activate)=\"onActivate($event)\"\n [virtualization]=\"false\"\n [scrollbarVDynamic]=\"true\"\n [limit]=\"pageSize\"\n [scrollbarH]=\"scrollbarH\"\n [messages]=\"{emptyMessage: t('t.empty-message')}\"\n >\n <ngx-datatable-column *ngIf=\"selectable && !singleSelection\"\n #chkbox\n [width]=\"42\"\n [sortable]=\"false\"\n [canAutoResize]=\"false\"\n [draggable]=\"false\"\n [resizeable]=\"false\"\n [name]=\"'chkbox'\"\n >\n <ng-template\n ngx-datatable-header-template\n let-value=\"value\"\n let-allRowsSelected=\"allRowsSelected\"\n let-selectFn=\"selectFn\"\n >\n <biit-checkbox [ngModel]=\"allRowsSelected\" (ngModelChange)=\"selectFn(!allRowsSelected)\"></biit-checkbox>\n </ng-template>\n <ng-template\n ngx-datatable-cell-template\n let-value=\"value\"\n let-isSelected=\"isSelected\"\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\"\n >\n <biit-checkbox [ngModel]=\"isSelected\" (ngModelChange)=\"onCheckboxChangeFn($event)\"></biit-checkbox>\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column *ngFor=\"let column of _columns\"\n [name]=\"column.name\"\n [prop]=\"column.prop\"\n [checkboxable]=\"column.checkboxable\"\n [frozenLeft]=\"column.frozenLeft\"\n [frozenRight]=\"column.frozenRight\"\n [flexGrow]=\"column.flexGrow\"\n [minWidth]=\"column.minWidth\"\n [maxWidth]=\"column.maxWidth\"\n [width]=\"column.width\"\n [resizeable]=\"column.resizeable\"\n [comparator]=\"column.comparator\"\n [pipe]=\"column.pipe\"\n [sortable]=\"column.sortable\"\n [draggable]=\"column.draggable\"\n [canAutoResize]=\"column.canAutoResize\"\n [cellTemplate]=\"column.cellTemplate\"\n [ghostCellTemplate]=\"column.ghostCellTemplate\"\n [treeToggleTemplate]=\"column.treeToggleTemplate\"\n [cellClass]=\"column.cellClass\"\n [headerTemplate]=\"column.headerTemplate\"\n [headerClass]=\"column.headerClass\"\n [headerCheckboxable]=\"column.headerCheckboxable\"\n [isTreeColumn]=\"column.isTreeColumn\"\n [treeLevelIndent]=\"column.treeLevelIndent\"\n [summaryFunc]=\"column.summaryFunc\"\n [summaryTemplate]=\"column.summaryTemplate\"\n ></ngx-datatable-column>\n\n <ngx-datatable-footer id=\"datatable-footer\">\n <ng-template\n ngx-datatable-footer-template\n let-rowCount=\"rowCount\"\n let-pageSizeCurrent=\"pageSize\"\n let-selectedCount=\"selectedCount\"\n let-curPage=\"curPage\"\n let-offset=\"offset\"\n >\n <div class=\"label\">\n <span>{{ t('t.total') }}: </span><span id=\"total-number-of-items\">{{rowCount}}</span>\n <span *ngIf=\"selectedCount\"> | {{ t('t.selected') }}: </span><span *ngIf=\"selectedCount\" id=\"number-of-items-selected\">{{selectedCount}}</span>\n </div>\n <div class=\"pagination\" [style.display]=\"!((rowCount / pageSize) > 1) ? 'none' : null\">\n <biit-datatable-pager #pager\n [page]=\"curPage\"\n [size]=\"pageSizeCurrent\"\n [count]=\"rowCount\"\n [hidden]=\"!((rowCount / pageSize) > 1)\"\n (change)=\"table.onFooterPage($event)\">\n </biit-datatable-pager>\n </div>\n <div class=\"page-items\" *ngIf=\"pageSizeList\">\n <div *ngIf=\"pageSizeList?.length\">\n <span>{{ t('t.rows-per-page') }}:</span>\n <select [(ngModel)]=\"pageSize\"\n (ngModelChange)=\"pager.size = $event\">\n <option *ngFor=\"let size of pageSizeList\"\n [ngValue]=\"size\"\n >\n {{size}}\n </option>\n </select>\n </div>\n </div>\n </ng-template>\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n\n <ng-container *ngIf=\"serverSide\">\n <ngx-datatable #table\n [rows]=\"data\"\n [columns]=\"_columns\"\n [columnMode]=\"'force'\"\n [headerHeight]=\"42\"\n [footerHeight]=\"hideFooter ? 0 : 34\"\n [rowHeight]=\"'auto'\"\n [reorderable]=\"false\"\n [selectionType]=\"SelectionType.checkbox\"\n [selected]=\"selected\"\n (select)=\"onSelect($event)\"\n (activate)=\"onActivate($event)\"\n [virtualization]=\"false\"\n [scrollbarVDynamic]=\"true\"\n [scrollbarH]=\"scrollbarH\"\n [messages]=\"{emptyMessage: t('t.empty-message')}\"\n [externalPaging]=\"true\"\n [count]=\"page.totalElements\"\n [offset]=\"page.pageNumber\"\n [limit]=\"page.pageSize\"\n (page)=\"onFooterPageChange($event)\"\n >\n <ngx-datatable-column *ngIf=\"selectable && !singleSelection\"\n #chkbox\n [width]=\"42\"\n [sortable]=\"false\"\n [canAutoResize]=\"false\"\n [draggable]=\"false\"\n [resizeable]=\"false\"\n [name]=\"'chkbox'\"\n >\n <ng-template\n ngx-datatable-header-template\n let-value=\"value\"\n let-allRowsSelected=\"allRowsSelected\"\n let-selectFn=\"selectFn\"\n >\n <biit-checkbox [ngModel]=\"allRowsSelected\" (ngModelChange)=\"selectFn(!allRowsSelected)\"></biit-checkbox>\n </ng-template>\n <ng-template\n ngx-datatable-cell-template\n let-value=\"value\"\n let-isSelected=\"isSelected\"\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\"\n >\n <biit-checkbox [ngModel]=\"isSelected\" (ngModelChange)=\"onCheckboxChangeFn($event)\"></biit-checkbox>\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column *ngFor=\"let column of _columns\"\n [name]=\"column.name\"\n [prop]=\"column.prop\"\n [checkboxable]=\"column.checkboxable\"\n [frozenLeft]=\"column.frozenLeft\"\n [frozenRight]=\"column.frozenRight\"\n [flexGrow]=\"column.flexGrow\"\n [minWidth]=\"column.minWidth\"\n [maxWidth]=\"column.maxWidth\"\n [width]=\"column.width\"\n [resizeable]=\"column.resizeable\"\n [comparator]=\"column.comparator\"\n [pipe]=\"column.pipe\"\n [sortable]=\"column.sortable\"\n [draggable]=\"column.draggable\"\n [canAutoResize]=\"column.canAutoResize\"\n [cellTemplate]=\"column.cellTemplate\"\n [ghostCellTemplate]=\"column.ghostCellTemplate\"\n [treeToggleTemplate]=\"column.treeToggleTemplate\"\n [cellClass]=\"column.cellClass\"\n [headerTemplate]=\"column.headerTemplate\"\n [headerClass]=\"column.headerClass\"\n [headerCheckboxable]=\"column.headerCheckboxable\"\n [isTreeColumn]=\"column.isTreeColumn\"\n [treeLevelIndent]=\"column.treeLevelIndent\"\n [summaryFunc]=\"column.summaryFunc\"\n [summaryTemplate]=\"column.summaryTemplate\"\n ></ngx-datatable-column>\n\n <ngx-datatable-footer>\n <ng-template\n ngx-datatable-footer-template\n let-rowCount=\"rowCount\"\n let-pageSizeCurrent=\"pageSize\"\n let-selectedCount=\"selectedCount\"\n let-curPage=\"curPage\"\n let-offset=\"offset\"\n >\n <div class=\"label\" id=\"total-elements\">\n <span>{{ t('t.total') }}: {{rowCount}}</span>\n <span *ngIf=\"selectedCount\"> | {{ t('t.selected') }}: {{selectedCount}}</span>\n </div>\n <div class=\"pagination\" [style.display]=\"!((rowCount / pageSize) > 1) ? 'none' : null\">\n <biit-datatable-pager #pager\n [page]=\"curPage\"\n [size]=\"pageSizeCurrent\"\n [count]=\"rowCount\"\n [hidden]=\"!((rowCount / pageSize) > 1)\"\n (change)=\"table.onFooterPage($event)\">\n </biit-datatable-pager>\n </div>\n <div class=\"page-items\" *ngIf=\"pageSizeList\">\n <div *ngIf=\"pageSizeList?.length\">\n <span>{{ t('t.rows-per-page') }}:</span>\n <select [(ngModel)]=\"pageSize\"\n (ngModelChange)=\"pager.size = $event\">\n <option *ngFor=\"let size of pageSizeList\"\n [ngValue]=\"size\"\n >\n {{size}}\n </option>\n </select>\n </div>\n </div>\n </ng-template>\n </ngx-datatable-footer>\n </ngx-datatable>\n </ng-container>\n </div>\n</div>\n", styles: [".table-canvas{height:100%;display:flex;flex-direction:column;gap:14px;background:white}.table-canvas .top{display:flex;flex:0}.table-canvas .top .action-bar{display:flex;flex:1}.table-canvas .top .options{display:flex;flex:0}.table-canvas .table{position:relative;flex:1;min-height:0;min-width:0}.table-canvas .table biit-progress-bar{position:absolute;z-index:1;left:0;right:3px;top:42px}.table-canvas .table ::ng-deep ngx-datatable{height:100%;position:absolute;inset:0}.table-canvas .table ::ng-deep ngx-datatable>div{height:calc(100% - 42px)}.table-canvas .table ::ng-deep ngx-datatable>div>div{height:100%}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner{height:inherit}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap{height:100%!important;width:calc(100% - 3px);display:flex;align-items:center;justify-content:center;background:#262626}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap span{color:#ededed;font-size:16px;line-height:100%;font-weight:700;text-transform:uppercase}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap .sort-btn{position:absolute;right:14px}.table-canvas .table ::ng-deep ngx-datatable datatable-header .datatable-header-inner .datatable-header-cell-template-wrap:has(biit-checkbox){background:white}.table-canvas .table ::ng-deep ngx-datatable datatable-body{height:100%!important;overflow-y:auto!important}.table-canvas .table ::ng-deep ngx-datatable datatable-body .empty-row{height:100%;display:flex;align-items:center;justify-content:center}.table-canvas .table ::ng-deep ngx-datatable datatable-body datatable-body-row .datatable-body-cell-label{display:flex;align-items:center;min-height:42px;border-bottom:3px solid #262626;width:calc(100% - 3px);padding:9px 14px;line-height:120%;height:100%}.table-canvas .table ::ng-deep ngx-datatable datatable-body datatable-body-row:hover .datatable-body-cell-label{background:#EDEDED}.table-canvas .table ::ng-deep ngx-datatable datatable-body datatable-body-row.active .datatable-body-cell-label{background:#D9D9D9}.table-canvas .table ::ng-deep ngx-datatable datatable-footer{position:absolute;bottom:0;background:white;z-index:10}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .label{flex:1 0}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .pagination{display:flex;margin:auto;flex:0;justify-content:center}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .pagination biit-datatable-pager{flex:none!important}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items{flex:1 0;display:flex;justify-content:flex-end;align-items:center}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select{appearance:none;border:none;height:34px;min-width:34px;padding:8px 14px;text-align:end;font-size:14px;font-family:Montserrat,serif;cursor:pointer;background:white}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select:focus-visible{outline:none;background:#D9D9D9}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select:hover{background:#D9D9D9}.table-canvas .table ::ng-deep ngx-datatable datatable-footer .datatable-footer-inner .page-items select *{background:white;padding:5px}.table-canvas .table ::ng-deep ngx-datatable:has(datatable-footer) datatable-body{height:calc(100% - 48px)!important}::ng-deep ngx-datatable .auto-details-height .datatable-row-wrapper{height:unset!important}::ng-deep ngx-datatable .auto-details-height .datatable-row-wrapper .datatable-row-detail{height:unset!important}.default-menu{display:flex;flex-direction:row}@media screen and (max-width: 600px){.page-items,.page-size-selector,.horizontal-menu{display:none!important}}@media screen and (min-width: 601px){.vertical-menu{display:none!important}}\n"] }]
|
|
925
|
+
}], ctorParameters: function () { return [{ type: i1$1.BiitIconService }]; }, propDecorators: { table: [{
|
|
926
|
+
type: ViewChild,
|
|
927
|
+
args: ['table']
|
|
928
|
+
}], data: [{
|
|
929
|
+
type: Input
|
|
930
|
+
}], columns: [{
|
|
931
|
+
type: Input
|
|
932
|
+
}], pageSize: [{
|
|
933
|
+
type: Input
|
|
934
|
+
}], pageSizeList: [{
|
|
935
|
+
type: Input
|
|
936
|
+
}], loading: [{
|
|
937
|
+
type: Input
|
|
938
|
+
}], selectable: [{
|
|
939
|
+
type: Input
|
|
940
|
+
}], singleSelection: [{
|
|
941
|
+
type: Input
|
|
942
|
+
}], scrollbarH: [{
|
|
943
|
+
type: Input
|
|
944
|
+
}], hideHeader: [{
|
|
945
|
+
type: Input
|
|
946
|
+
}], hideFooter: [{
|
|
947
|
+
type: Input
|
|
948
|
+
}], serverSide: [{
|
|
949
|
+
type: Input
|
|
950
|
+
}], page: [{
|
|
951
|
+
type: Input
|
|
952
|
+
}], onSelection: [{
|
|
953
|
+
type: Output
|
|
954
|
+
}], onPageChange: [{
|
|
955
|
+
type: Output
|
|
956
|
+
}], actionsTpl: [{
|
|
957
|
+
type: ContentChild,
|
|
958
|
+
args: ['actions']
|
|
959
|
+
}] } });
|
|
960
|
+
|
|
961
|
+
class BiitDatatablePagerModule {
|
|
962
|
+
}
|
|
963
|
+
BiitDatatablePagerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatablePagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
964
|
+
BiitDatatablePagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatablePagerModule, declarations: [BiitDatatablePagerComponent], imports: [CommonModule,
|
|
965
|
+
FormsModule,
|
|
966
|
+
BiitIconModule,
|
|
967
|
+
BiitIconButtonModule,
|
|
968
|
+
TranslocoRootModule,
|
|
969
|
+
BiitTooltipModule], exports: [BiitDatatablePagerComponent] });
|
|
970
|
+
BiitDatatablePagerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatablePagerModule, imports: [CommonModule,
|
|
971
|
+
FormsModule,
|
|
972
|
+
BiitIconModule,
|
|
973
|
+
BiitIconButtonModule,
|
|
974
|
+
TranslocoRootModule,
|
|
975
|
+
BiitTooltipModule] });
|
|
976
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatablePagerModule, decorators: [{
|
|
977
|
+
type: NgModule,
|
|
978
|
+
args: [{
|
|
979
|
+
declarations: [BiitDatatablePagerComponent],
|
|
980
|
+
exports: [BiitDatatablePagerComponent],
|
|
981
|
+
imports: [
|
|
982
|
+
CommonModule,
|
|
983
|
+
FormsModule,
|
|
984
|
+
BiitIconModule,
|
|
985
|
+
BiitIconButtonModule,
|
|
986
|
+
TranslocoRootModule,
|
|
987
|
+
BiitTooltipModule
|
|
988
|
+
]
|
|
989
|
+
}]
|
|
990
|
+
}] });
|
|
991
|
+
|
|
992
|
+
class BiitDatatableModule {
|
|
993
|
+
}
|
|
994
|
+
BiitDatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
995
|
+
BiitDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatableModule, declarations: [BiitDatatableComponent], imports: [FormsModule,
|
|
996
|
+
NgTemplateOutlet,
|
|
997
|
+
BiitCheckboxModule,
|
|
998
|
+
BiitDatatablePagerModule,
|
|
999
|
+
NgForOf,
|
|
1000
|
+
NgIf,
|
|
1001
|
+
NgxDatatableModule,
|
|
1002
|
+
BiitProgressBarModule,
|
|
1003
|
+
BiitMultiselectModule,
|
|
1004
|
+
TranslocoModule,
|
|
1005
|
+
BiitInputTextModule,
|
|
1006
|
+
BiitVerticalMenuModule], exports: [BiitDatatableComponent] });
|
|
1007
|
+
BiitDatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatableModule, imports: [FormsModule,
|
|
1008
|
+
BiitCheckboxModule,
|
|
1009
|
+
BiitDatatablePagerModule,
|
|
1010
|
+
NgxDatatableModule,
|
|
1011
|
+
BiitProgressBarModule,
|
|
1012
|
+
BiitMultiselectModule,
|
|
1013
|
+
TranslocoModule,
|
|
1014
|
+
BiitInputTextModule,
|
|
1015
|
+
BiitVerticalMenuModule] });
|
|
1016
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BiitDatatableModule, decorators: [{
|
|
1017
|
+
type: NgModule,
|
|
1018
|
+
args: [{
|
|
1019
|
+
declarations: [
|
|
1020
|
+
BiitDatatableComponent
|
|
1021
|
+
],
|
|
1022
|
+
exports: [
|
|
1023
|
+
BiitDatatableComponent
|
|
1024
|
+
],
|
|
1025
|
+
imports: [
|
|
1026
|
+
FormsModule,
|
|
1027
|
+
NgTemplateOutlet,
|
|
1028
|
+
BiitCheckboxModule,
|
|
1029
|
+
BiitDatatablePagerModule,
|
|
1030
|
+
NgForOf,
|
|
1031
|
+
NgIf,
|
|
1032
|
+
NgxDatatableModule,
|
|
1033
|
+
BiitProgressBarModule,
|
|
1034
|
+
BiitMultiselectModule,
|
|
1035
|
+
TranslocoModule,
|
|
1036
|
+
BiitInputTextModule,
|
|
1037
|
+
BiitVerticalMenuModule
|
|
1038
|
+
],
|
|
1039
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
|
1040
|
+
}]
|
|
1041
|
+
}] });
|
|
1042
|
+
|
|
1043
|
+
class DatatableColumn {
|
|
1044
|
+
constructor(name, prop, visible, width, sortable, pipe, cellTemplate, cellClass, comparator) {
|
|
1045
|
+
this.name = name;
|
|
1046
|
+
this.prop = prop;
|
|
1047
|
+
this.visible = visible !== null && visible !== void 0 ? visible : true;
|
|
1048
|
+
this.width = width !== null && width !== void 0 ? width : undefined;
|
|
1049
|
+
this.minWidth = width !== null && width !== void 0 ? width : undefined;
|
|
1050
|
+
this.sortable = sortable !== null && sortable !== void 0 ? sortable : true;
|
|
1051
|
+
this.pipe = pipe !== null && pipe !== void 0 ? pipe : undefined;
|
|
1052
|
+
this.cellTemplate = cellTemplate !== null && cellTemplate !== void 0 ? cellTemplate : undefined;
|
|
1053
|
+
this.cellClass = cellClass !== null && cellClass !== void 0 ? cellClass : undefined;
|
|
1054
|
+
this.comparator = comparator !== null && comparator !== void 0 ? comparator : undefined;
|
|
1055
|
+
}
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
/*
|
|
1059
|
+
* Public API Surface of wizardry-theme/button
|
|
1060
|
+
*/
|
|
1061
|
+
|
|
1062
|
+
/**
|
|
1063
|
+
* Generated bundle index. Do not edit.
|
|
1064
|
+
*/
|
|
1065
|
+
|
|
1066
|
+
export { BiitDatatableComponent, BiitDatatableModule, BiitPaginatorComponent, BiitPaginatorModule, BiitPaginatorOptions, BiitTableActionResponse, BiitTableColumn, BiitTableColumnFormat, BiitTableComponent, BiitTableData, BiitTableFooterlessDirective, BiitTableHeaderlessDirective, BiitTableModule, BiitTableResponse, BiitTableSelectableDirective, BiitTableSelectableSingleDirective, BiitTableSortableDirective, BiitTableSorting, BiitTableSortingOrder, DatatableColumn, GenericFilter, GenericSort, Page };
|
|
1067
|
+
//# sourceMappingURL=biit-solutions-wizardry-theme-table.mjs.map
|