@siemens/element-ng 49.16.0 → 51.0.0-rc.10
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 +1 -1
- package/fesm2022/siemens-element-ng-about.mjs +41 -25
- package/fesm2022/siemens-element-ng-about.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-accordion.mjs +59 -41
- package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-action-modal.mjs +83 -53
- package/fesm2022/siemens-element-ng-action-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ag-grid.mjs +143 -148
- package/fesm2022/siemens-element-ng-ag-grid.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-application-header.mjs +180 -188
- package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs +34 -28
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-autocomplete.mjs +27 -22
- package/fesm2022/siemens-element-ng-autocomplete.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-avatar.mjs +34 -24
- package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-badge.mjs +9 -8
- package/fesm2022/siemens-element-ng-badge.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb-router.mjs +17 -14
- package/fesm2022/siemens-element-ng-breadcrumb-router.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb.mjs +21 -17
- package/fesm2022/siemens-element-ng-breadcrumb.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-card.mjs +72 -47
- package/fesm2022/siemens-element-ng-card.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-carousel.mjs +58 -34
- package/fesm2022/siemens-element-ng-carousel.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-chat-messages.mjs +323 -215
- package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-circle-status.mjs +39 -25
- package/fesm2022/siemens-element-ng-circle-status.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-color-picker.mjs +44 -34
- package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +58 -37
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-common.mjs +22 -22
- package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-connection-strength.mjs +14 -12
- package/fesm2022/siemens-element-ng-connection-strength.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-content-action-bar.mjs +37 -28
- package/fesm2022/siemens-element-ng-content-action-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-copyright-notice.mjs +19 -14
- package/fesm2022/siemens-element-ng-copyright-notice.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-dashboard.mjs +337 -223
- package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datatable.mjs +12 -15
- package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-date-range-filter.mjs +126 -76
- package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datepicker.mjs +393 -251
- package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-electron-titlebar.mjs +22 -17
- package/fesm2022/siemens-element-ng-electron-titlebar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-empty-state.mjs +15 -12
- package/fesm2022/siemens-element-ng-empty-state.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-file-uploader.mjs +105 -91
- package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filter-bar.mjs +33 -25
- package/fesm2022/siemens-element-ng-filter-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filtered-search.mjs +274 -165
- package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-footer.mjs +12 -10
- package/fesm2022/siemens-element-ng-footer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-form.mjs +361 -116
- package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-formly-legacy.mjs +99 -0
- package/fesm2022/siemens-element-ng-formly-legacy.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-formly.mjs +224 -318
- package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-header-dropdown.mjs +40 -30
- package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-help-button.mjs +6 -6
- package/fesm2022/siemens-element-ng-help-button.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-icon.mjs +56 -57
- package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-info-page.mjs +17 -11
- package/fesm2022/siemens-element-ng-info-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-inline-notification.mjs +19 -14
- package/fesm2022/siemens-element-ng-inline-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ip-input.mjs +19 -15
- package/fesm2022/siemens-element-ng-ip-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-landing-page.mjs +121 -75
- package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-language-switcher.mjs +16 -12
- package/fesm2022/siemens-element-ng-language-switcher.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-link.mjs +31 -21
- package/fesm2022/siemens-element-ng-link.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-list-details.mjs +132 -66
- package/fesm2022/siemens-element-ng-list-details.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-loading-spinner.mjs +51 -64
- package/fesm2022/siemens-element-ng-loading-spinner.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-localization.mjs +14 -12
- package/fesm2022/siemens-element-ng-localization.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-main-detail-container.mjs +116 -51
- package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-maplibre.mjs +401 -0
- package/fesm2022/siemens-element-ng-maplibre.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-directives-tabs.mjs +70 -0
- package/fesm2022/siemens-element-ng-markdown-directives-tabs.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-citations.mjs +215 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-citations.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-katex.mjs +76 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-katex.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-mermaid.mjs +86 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-mermaid.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs +130 -0
- package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown.mjs +800 -0
- package/fesm2022/siemens-element-ng-markdown.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-menu.mjs +71 -57
- package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-modal.mjs +14 -11
- package/fesm2022/siemens-element-ng-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs +251 -206
- package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs +123 -86
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar.mjs +72 -45
- package/fesm2022/siemens-element-ng-navbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-notification-item.mjs +19 -11
- package/fesm2022/siemens-element-ng-notification-item.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-number-input.mjs +41 -29
- package/fesm2022/siemens-element-ng-number-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pagination.mjs +31 -20
- package/fesm2022/siemens-element-ng-pagination.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-password-strength.mjs +33 -24
- package/fesm2022/siemens-element-ng-password-strength.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-password-toggle.mjs +19 -14
- package/fesm2022/siemens-element-ng-password-toggle.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-phone-number.mjs +144 -139
- package/fesm2022/siemens-element-ng-phone-number.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-photo-upload.mjs +85 -52
- package/fesm2022/siemens-element-ng-photo-upload.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pills-input.mjs +56 -41
- package/fesm2022/siemens-element-ng-pills-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover-legacy.mjs +43 -28
- package/fesm2022/siemens-element-ng-popover-legacy.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover.mjs +35 -27
- package/fesm2022/siemens-element-ng-popover.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-progressbar.mjs +23 -16
- package/fesm2022/siemens-element-ng-progressbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-resize-observer.mjs +32 -43
- package/fesm2022/siemens-element-ng-resize-observer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-result-details-list.mjs +12 -10
- package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-search-bar.mjs +38 -37
- package/fesm2022/siemens-element-ng-search-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-select.mjs +265 -170
- package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-shadow-root.mjs +4 -4
- package/fesm2022/siemens-element-ng-shadow-root.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-side-panel.mjs +181 -104
- package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-skip-links.mjs +21 -24
- package/fesm2022/siemens-element-ng-skip-links.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-slider.mjs +45 -30
- package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-source-chip.mjs +79 -0
- package/fesm2022/siemens-element-ng-source-chip.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-split.mjs +290 -306
- package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-bar.mjs +66 -52
- package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-counter.mjs +15 -11
- package/fesm2022/siemens-element-ng-status-counter.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-toggle.mjs +26 -16
- package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-summary-chip.mjs +25 -16
- package/fesm2022/siemens-element-ng-summary-chip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-summary-widget.mjs +27 -17
- package/fesm2022/siemens-element-ng-summary-widget.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-system-banner.mjs +13 -10
- package/fesm2022/siemens-element-ng-system-banner.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs-legacy.mjs +20 -17
- package/fesm2022/siemens-element-ng-tabs-legacy.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs.mjs +156 -131
- package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-theme.mjs +29 -6
- package/fesm2022/siemens-element-ng-theme.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-threshold.mjs +62 -42
- package/fesm2022/siemens-element-ng-threshold.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-toast-notification.mjs +59 -40
- package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tooltip.mjs +108 -82
- package/fesm2022/siemens-element-ng-tooltip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tour.mjs +36 -19
- package/fesm2022/siemens-element-ng-tour.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-translate.mjs +0 -1
- package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tree-view.mjs +113 -84
- package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-typeahead.mjs +69 -49
- package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-wizard.mjs +95 -54
- package/fesm2022/siemens-element-ng-wizard.mjs.map +1 -1
- package/formly-legacy/package.json +4 -0
- package/maplibre/package.json +4 -0
- package/maplibre/styles/_index.scss +1 -0
- package/maplibre/styles/maplibre-gl.scss +724 -0
- package/markdown/directives/tabs/package.json +4 -0
- package/markdown/extensions/citations/package.json +4 -0
- package/markdown/extensions/katex/package.json +4 -0
- package/markdown/extensions/mermaid/package.json +4 -0
- package/markdown/hightlighter/highlightjs/package.json +4 -0
- package/markdown/package.json +4 -0
- package/package.json +96 -25
- package/schematics/collection.json +5 -0
- package/schematics/{migrations/icon-path-migration → migrate-tabs-legacy}/index.js +1 -1
- package/schematics/migrate-tabs-legacy/migrate-tabs-legacy-rule.js +675 -0
- package/schematics/migrate-tabs-legacy/schema.json +14 -0
- package/schematics/migration.json +4 -4
- package/schematics/migrations/data/class-member-replacement.js +1 -19
- package/schematics/migrations/data/component-property-names.js +1 -25
- package/schematics/migrations/data/component-property-to-child.js +11 -0
- package/schematics/migrations/data/css-custom-properties.js +224 -0
- package/schematics/migrations/data/element-class-changes.js +116 -18
- package/schematics/migrations/data/element-migration-data.js +6 -0
- package/schematics/migrations/data/element-selectors.js +1 -9
- package/schematics/migrations/data/index.js +0 -4
- package/schematics/migrations/data/migration-test-data.js +49 -6
- package/schematics/migrations/data/provider-function-removals.js +7 -0
- package/schematics/migrations/data/symbol-removals.js +17 -7
- package/schematics/migrations/data/symbol-renaming.js +3 -44
- package/schematics/migrations/element-migration/element-migration.js +6 -6
- package/schematics/migrations/utilities/component-property-to-child.migration.js +73 -0
- package/schematics/migrations/utilities/css-custom-property.migration.js +51 -0
- package/schematics/migrations/utilities/element-class-change.migration.js +10 -5
- package/schematics/migrations/utilities/import-removal.js +39 -0
- package/schematics/migrations/utilities/index.js +4 -0
- package/schematics/migrations/utilities/provider-function-removal.migration.js +116 -0
- package/schematics/ng-update/index.js +1 -1
- package/schematics/ng-update/migrate-content-formatter.js +288 -0
- package/schematics/ng-update/migrate-list-details-units.js +86 -0
- package/schematics/ng-update/migrate-main-detail-units.js +89 -0
- package/schematics/ng-update/migrate-markdown-renderer.js +106 -0
- package/schematics/ng-update/migrate-spacers.js +32 -0
- package/schematics/ng-update/migrate-split-collapse.js +276 -0
- package/schematics/ng-update/migrate-split-scale.js +524 -0
- package/schematics/ng-update/migrate-split-sizes.js +107 -0
- package/schematics/ng-update/migrate-to-v51.js +35 -0
- package/schematics/utils/index.js +1 -0
- package/schematics/utils/template-edit-utils.js +35 -0
- package/schematics/utils/template-utils.js +31 -45
- package/source-chip/package.json +4 -0
- package/template-i18n.json +78 -47
- package/types/siemens-element-ng-application-header.d.ts +7 -33
- package/types/siemens-element-ng-avatar.d.ts +1 -1
- package/types/siemens-element-ng-breadcrumb.d.ts +1 -1
- package/types/siemens-element-ng-chat-messages.d.ts +118 -70
- package/types/siemens-element-ng-circle-status.d.ts +1 -1
- package/types/siemens-element-ng-content-action-bar.d.ts +1 -1
- package/types/siemens-element-ng-dashboard.d.ts +2 -2
- package/types/siemens-element-ng-datatable.d.ts +5 -56
- package/types/siemens-element-ng-date-range-filter.d.ts +1 -1
- package/types/siemens-element-ng-datepicker.d.ts +8 -15
- package/types/siemens-element-ng-electron-titlebar.d.ts +1 -1
- package/types/siemens-element-ng-file-uploader.d.ts +13 -31
- package/types/siemens-element-ng-filter-bar.d.ts +1 -1
- package/types/siemens-element-ng-filtered-search.d.ts +4 -4
- package/types/siemens-element-ng-form.d.ts +183 -44
- package/types/siemens-element-ng-formly-legacy.d.ts +40 -0
- package/types/siemens-element-ng-formly.d.ts +34 -167
- package/types/siemens-element-ng-icon.d.ts +2 -19
- package/types/siemens-element-ng-landing-page.d.ts +2 -2
- package/types/siemens-element-ng-list-details.d.ts +25 -3
- package/types/siemens-element-ng-loading-spinner.d.ts +11 -17
- package/types/siemens-element-ng-main-detail-container.d.ts +23 -3
- package/types/siemens-element-ng-maplibre.d.ts +190 -0
- package/types/siemens-element-ng-markdown-directives-tabs.d.ts +10 -0
- package/types/siemens-element-ng-markdown-extensions-citations.d.ts +11 -0
- package/types/siemens-element-ng-markdown-extensions-katex.d.ts +19 -0
- package/types/siemens-element-ng-markdown-extensions-mermaid.d.ts +11 -0
- package/types/siemens-element-ng-markdown-hightlighter-highlightjs.d.ts +48 -0
- package/types/siemens-element-ng-markdown.d.ts +367 -0
- package/types/siemens-element-ng-menu.d.ts +2 -0
- package/types/siemens-element-ng-navbar-vertical-next.d.ts +87 -39
- package/types/siemens-element-ng-navbar-vertical.d.ts +1 -1
- package/types/siemens-element-ng-navbar.d.ts +3 -3
- package/types/siemens-element-ng-notification-item.d.ts +12 -0
- package/types/siemens-element-ng-phone-number.d.ts +28 -10
- package/types/siemens-element-ng-photo-upload.d.ts +4 -4
- package/types/siemens-element-ng-resize-observer.d.ts +0 -17
- package/types/siemens-element-ng-search-bar.d.ts +2 -9
- package/types/siemens-element-ng-select.d.ts +32 -5
- package/types/siemens-element-ng-side-panel.d.ts +25 -11
- package/types/siemens-element-ng-source-chip.d.ts +53 -0
- package/types/siemens-element-ng-split.d.ts +101 -78
- package/types/siemens-element-ng-status-bar.d.ts +5 -13
- package/types/siemens-element-ng-status-counter.d.ts +1 -1
- package/types/siemens-element-ng-system-banner.d.ts +2 -2
- package/types/siemens-element-ng-tabs.d.ts +1 -2
- package/types/siemens-element-ng-theme.d.ts +12 -2
- package/types/siemens-element-ng-threshold.d.ts +1 -1
- package/types/siemens-element-ng-toast-notification.d.ts +0 -1
- package/types/siemens-element-ng-tooltip.d.ts +7 -7
- package/types/siemens-element-ng-translate.d.ts +35 -5
- package/types/siemens-element-ng-tree-view.d.ts +3 -0
- package/types/siemens-element-ng-wizard.d.ts +18 -3
- package/fesm2022/siemens-element-ng-icon-status.mjs +0 -46
- package/fesm2022/siemens-element-ng-icon-status.mjs.map +0 -1
- package/fesm2022/siemens-element-ng-markdown-renderer.mjs +0 -263
- package/fesm2022/siemens-element-ng-markdown-renderer.mjs.map +0 -1
- package/fesm2022/siemens-element-ng-sort-bar.mjs +0 -99
- package/fesm2022/siemens-element-ng-sort-bar.mjs.map +0 -1
- package/icon-status/package.json +0 -4
- package/markdown-renderer/package.json +0 -4
- package/schematics/migrations/icon-path-migration/icon-path-migration.js +0 -95
- package/schematics/ng-update/migrate-to-v49.js +0 -21
- package/schematics/vitest-setup.js +0 -5
- package/sort-bar/package.json +0 -4
- package/types/siemens-element-ng-icon-status.d.ts +0 -25
- package/types/siemens-element-ng-markdown-renderer.d.ts +0 -36
- package/types/siemens-element-ng-sort-bar.d.ts +0 -59
- /package/{LICENSE.md → LICENSE} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getLocaleDayPeriods, FormStyle, TranslationWidth, getLocaleId, getLocaleDateTimeFormat, FormatWidth, getLocaleTimeFormat, getLocaleDateFormat, formatDate, DatePipe, NgTemplateOutlet, getLocaleFirstDayOfWeek, WeekDay } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { input, model, output, booleanAttribute, computed, signal, inject, LOCALE_ID, Directive, ElementRef, viewChildren,
|
|
3
|
+
import { input, model, output, booleanAttribute, computed, signal, inject, LOCALE_ID, Directive, ElementRef, viewChildren, Component, viewChild, HostListener, HostAttributeToken, effect, ChangeDetectorRef, SimpleChange, ChangeDetectionStrategy, DOCUMENT, DestroyRef, contentChild, NgModule } from '@angular/core';
|
|
4
4
|
import * as i2 from '@angular/forms';
|
|
5
5
|
import { Validators, NG_VALUE_ACCESSOR, NG_VALIDATORS, FormBuilder, ReactiveFormsModule, FormControl, FormsModule, NgControl } from '@angular/forms';
|
|
6
6
|
import { SI_FORM_ITEM_CONTROL } from '@siemens/element-ng/form';
|
|
@@ -749,7 +749,8 @@ class SiDateInputDirective {
|
|
|
749
749
|
* `si-date-input-${SiDateInputDirective.idCounter++}`
|
|
750
750
|
* ```
|
|
751
751
|
*/
|
|
752
|
-
id = input(`si-date-input-${SiDateInputDirective.idCounter++}`,
|
|
752
|
+
id = input(`si-date-input-${SiDateInputDirective.idCounter++}`, /* @ts-ignore */
|
|
753
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
753
754
|
/**
|
|
754
755
|
* Configuration object for the datepicker.
|
|
755
756
|
*
|
|
@@ -758,7 +759,8 @@ class SiDateInputDirective {
|
|
|
758
759
|
* {}
|
|
759
760
|
* ```
|
|
760
761
|
*/
|
|
761
|
-
siDatepickerConfig = model({},
|
|
762
|
+
siDatepickerConfig = model({}, /* @ts-ignore */
|
|
763
|
+
...(ngDevMode ? [{ debugName: "siDatepickerConfig" }] : /* istanbul ignore next */ []));
|
|
762
764
|
/**
|
|
763
765
|
* Emits an event to notify about disabling the time from the datepicker.
|
|
764
766
|
* When time is disable, we construct a pure date object in UTC 00:00:00 time.
|
|
@@ -773,12 +775,12 @@ class SiDateInputDirective {
|
|
|
773
775
|
* @defaultValue false
|
|
774
776
|
*/
|
|
775
777
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
776
|
-
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : {}), alias: 'disabled' });
|
|
778
|
+
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : /* istanbul ignore next */ {}), alias: 'disabled' });
|
|
777
779
|
/**
|
|
778
780
|
* Whether the date range input is readonly.
|
|
779
781
|
* @defaultValue false
|
|
780
782
|
*/
|
|
781
|
-
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : {}), transform: booleanAttribute });
|
|
783
|
+
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
782
784
|
/**
|
|
783
785
|
* This ID will be bound to the `aria-describedby` attribute of the date-input.
|
|
784
786
|
* Use this to reference the element containing the error message(s) for the date-input.
|
|
@@ -789,9 +791,12 @@ class SiDateInputDirective {
|
|
|
789
791
|
* `${this.id()}-errormessage`
|
|
790
792
|
* ```
|
|
791
793
|
*/
|
|
792
|
-
errormessageId = input(`${this.id()}-errormessage`,
|
|
794
|
+
errormessageId = input(`${this.id()}-errormessage`, /* @ts-ignore */
|
|
795
|
+
...(ngDevMode ? [{ debugName: "errormessageId" }] : /* istanbul ignore next */ []));
|
|
793
796
|
/** @internal */
|
|
794
797
|
validatorOnChange = () => { };
|
|
798
|
+
/** @internal */
|
|
799
|
+
validationChange = output();
|
|
795
800
|
/**
|
|
796
801
|
* Date form input validator function, validating text format, min and max value.
|
|
797
802
|
*/
|
|
@@ -806,11 +811,14 @@ class SiDateInputDirective {
|
|
|
806
811
|
*/
|
|
807
812
|
dateChange = output();
|
|
808
813
|
/** @internal */
|
|
809
|
-
disabled = computed(() => this.disabledInput() || this.disabledNgControl(),
|
|
814
|
+
disabled = computed(() => this.disabledInput() || this.disabledNgControl(), /* @ts-ignore */
|
|
815
|
+
...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
|
|
810
816
|
onTouched = () => { };
|
|
811
817
|
onModelChange = () => { };
|
|
812
|
-
dateString = signal('',
|
|
813
|
-
|
|
818
|
+
dateString = signal('', /* @ts-ignore */
|
|
819
|
+
...(ngDevMode ? [{ debugName: "dateString" }] : /* istanbul ignore next */ []));
|
|
820
|
+
disabledNgControl = signal(false, /* @ts-ignore */
|
|
821
|
+
...(ngDevMode ? [{ debugName: "disabledNgControl" }] : /* istanbul ignore next */ []));
|
|
814
822
|
locale = inject(LOCALE_ID).toString();
|
|
815
823
|
format = '';
|
|
816
824
|
ngOnChanges(changes) {
|
|
@@ -829,6 +837,8 @@ class SiDateInputDirective {
|
|
|
829
837
|
if (this.date && formatChanged) {
|
|
830
838
|
this.updateNativeValue();
|
|
831
839
|
}
|
|
840
|
+
this.validatorOnChange();
|
|
841
|
+
this.validationChange.emit();
|
|
832
842
|
}
|
|
833
843
|
}
|
|
834
844
|
validate(c) {
|
|
@@ -969,8 +979,8 @@ class SiDateInputDirective {
|
|
|
969
979
|
}
|
|
970
980
|
};
|
|
971
981
|
}
|
|
972
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
973
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
982
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDateInputDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
983
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: SiDateInputDirective, isStandalone: true, selector: "input[siDateInput]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, siDatepickerConfig: { classPropertyName: "siDatepickerConfig", publicName: "siDatepickerConfig", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, errormessageId: { classPropertyName: "errormessageId", publicName: "errormessageId", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { siDatepickerConfig: "siDatepickerConfigChange", siDatepickerDisabledTime: "siDatepickerDisabledTime", stateChange: "stateChange", validationChange: "validationChange", dateChange: "dateChange" }, host: { listeners: { "input": "onInput($event)", "blur": "onBlur($event)" }, properties: { "attr.id": "id()", "attr.disabled": "disabled() || null", "attr.readonly": "readonly() || null", "class.readonly": "readonly()", "attr.aria-describedby": "errormessageId()", "value": "dateString()" } }, providers: [
|
|
974
984
|
{
|
|
975
985
|
provide: NG_VALUE_ACCESSOR,
|
|
976
986
|
useExisting: SiDateInputDirective,
|
|
@@ -987,7 +997,7 @@ class SiDateInputDirective {
|
|
|
987
997
|
}
|
|
988
998
|
], exportAs: ["siDateInput"], usesOnChanges: true, ngImport: i0 });
|
|
989
999
|
}
|
|
990
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1000
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDateInputDirective, decorators: [{
|
|
991
1001
|
type: Directive,
|
|
992
1002
|
args: [{
|
|
993
1003
|
selector: 'input[siDateInput]',
|
|
@@ -1019,7 +1029,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
1019
1029
|
},
|
|
1020
1030
|
exportAs: 'siDateInput'
|
|
1021
1031
|
}]
|
|
1022
|
-
}], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], siDatepickerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "siDatepickerConfig", required: false }] }, { type: i0.Output, args: ["siDatepickerConfigChange"] }], siDatepickerDisabledTime: [{ type: i0.Output, args: ["siDatepickerDisabledTime"] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], errormessageId: [{ type: i0.Input, args: [{ isSignal: true, alias: "errormessageId", required: false }] }], dateChange: [{ type: i0.Output, args: ["dateChange"] }] } });
|
|
1032
|
+
}], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], siDatepickerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "siDatepickerConfig", required: false }] }, { type: i0.Output, args: ["siDatepickerConfigChange"] }], siDatepickerDisabledTime: [{ type: i0.Output, args: ["siDatepickerDisabledTime"] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], errormessageId: [{ type: i0.Input, args: [{ isSignal: true, alias: "errormessageId", required: false }] }], validationChange: [{ type: i0.Output, args: ["validationChange"] }], dateChange: [{ type: i0.Output, args: ["dateChange"] }] } });
|
|
1023
1033
|
|
|
1024
1034
|
/**
|
|
1025
1035
|
* Copyright (c) Siemens 2016 - 2026
|
|
@@ -1027,15 +1037,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
1027
1037
|
*/
|
|
1028
1038
|
class SiCalendarDateCellDirective {
|
|
1029
1039
|
/** Calendar cell data used to render its state and accessible label. */
|
|
1030
|
-
cell = input.required(
|
|
1040
|
+
cell = input.required(/* @ts-ignore */
|
|
1041
|
+
...(ngDevMode ? [{ debugName: "cell" }] : /* istanbul ignore next */ []));
|
|
1031
1042
|
/** Date comparison strategy used by the containing calendar view. */
|
|
1032
|
-
compareAdapter = input.required(
|
|
1043
|
+
compareAdapter = input.required(/* @ts-ignore */
|
|
1044
|
+
...(ngDevMode ? [{ debugName: "compareAdapter" }] : /* istanbul ignore next */ []));
|
|
1033
1045
|
/** @defaultValue inject(ElementRef) */
|
|
1034
1046
|
ref = inject(ElementRef);
|
|
1035
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1036
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
1047
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarDateCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1048
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: SiCalendarDateCellDirective, isStandalone: true, selector: "[siCalendarDateCell]", inputs: { cell: { classPropertyName: "cell", publicName: "cell", isSignal: true, isRequired: true, transformFunction: null }, compareAdapter: { classPropertyName: "compareAdapter", publicName: "compareAdapter", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "attr.aria-disabled": "cell().disabled", "class.disabled": "cell().disabled", "attr.aria-label": "cell().ariaLabel", "class.today": "this.cell().isToday", "attr.aria-current": "this.cell().isToday ? \"date\" : null" }, classAttribute: "si-calendar-date-cell focus-inside" }, ngImport: i0 });
|
|
1037
1049
|
}
|
|
1038
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1050
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarDateCellDirective, decorators: [{
|
|
1039
1051
|
type: Directive,
|
|
1040
1052
|
args: [{
|
|
1041
1053
|
selector: '[siCalendarDateCell]',
|
|
@@ -1181,54 +1193,65 @@ class RangeSelectionStrategy extends SelectionStrategy {
|
|
|
1181
1193
|
}
|
|
1182
1194
|
class SiCalendarBodyComponent {
|
|
1183
1195
|
/** The active date, the cell which will receive the focus. */
|
|
1184
|
-
focusedDate = model.required(
|
|
1196
|
+
focusedDate = model.required(/* @ts-ignore */
|
|
1197
|
+
...(ngDevMode ? [{ debugName: "focusedDate" }] : /* istanbul ignore next */ []));
|
|
1185
1198
|
/** The date which shall be indicated as currently selected. */
|
|
1186
|
-
startDate = input(
|
|
1199
|
+
startDate = input(/* @ts-ignore */
|
|
1200
|
+
...(ngDevMode ? [undefined, { debugName: "startDate" }] : /* istanbul ignore next */ []));
|
|
1187
1201
|
/** Selected end value which is only considered with enableRangeSelection. */
|
|
1188
|
-
endDate = input(
|
|
1202
|
+
endDate = input(/* @ts-ignore */
|
|
1203
|
+
...(ngDevMode ? [undefined, { debugName: "endDate" }] : /* istanbul ignore next */ []));
|
|
1189
1204
|
/**
|
|
1190
1205
|
* The cells to display in the table.
|
|
1191
1206
|
*
|
|
1192
1207
|
* @defaultValue []
|
|
1193
1208
|
*/
|
|
1194
|
-
rows = input([],
|
|
1209
|
+
rows = input([], /* @ts-ignore */
|
|
1210
|
+
...(ngDevMode ? [{ debugName: "rows" }] : /* istanbul ignore next */ []));
|
|
1195
1211
|
/**
|
|
1196
1212
|
* Labels for each row, which can be used to display the week number.
|
|
1197
1213
|
* @defaultValue undefined
|
|
1198
1214
|
*/
|
|
1199
|
-
rowLabels = input(undefined,
|
|
1215
|
+
rowLabels = input(undefined, /* @ts-ignore */
|
|
1216
|
+
...(ngDevMode ? [{ debugName: "rowLabels" }] : /* istanbul ignore next */ []));
|
|
1200
1217
|
/**
|
|
1201
1218
|
* Additional row label CSS class(es).
|
|
1202
1219
|
*
|
|
1203
1220
|
* @defaultValue []
|
|
1204
1221
|
*/
|
|
1205
|
-
rowLabelCssClasses = input([],
|
|
1222
|
+
rowLabelCssClasses = input([], /* @ts-ignore */
|
|
1223
|
+
...(ngDevMode ? [{ debugName: "rowLabelCssClasses" }] : /* istanbul ignore next */ []));
|
|
1206
1224
|
/**
|
|
1207
1225
|
* Choose the selection strategy between single or range selection.
|
|
1208
1226
|
* @defaultValue false
|
|
1209
1227
|
*/
|
|
1210
|
-
enableRangeSelection = input(false,
|
|
1228
|
+
enableRangeSelection = input(false, /* @ts-ignore */
|
|
1229
|
+
...(ngDevMode ? [{ debugName: "enableRangeSelection" }] : /* istanbul ignore next */ []));
|
|
1211
1230
|
/**
|
|
1212
1231
|
* Indicate whether a range preview shall be displayed.
|
|
1213
1232
|
* It's necessary since to display a preview also datepicker has a valid endDate.
|
|
1214
1233
|
*
|
|
1215
1234
|
* @defaultValue true
|
|
1216
1235
|
*/
|
|
1217
|
-
previewRange = input(true, { ...(ngDevMode ? { debugName: "previewRange" } : {}), transform: booleanAttribute });
|
|
1236
|
+
previewRange = input(true, { ...(ngDevMode ? { debugName: "previewRange" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
1218
1237
|
/** The cell which which has the mouse hover. */
|
|
1219
|
-
activeHover = model(
|
|
1238
|
+
activeHover = model(/* @ts-ignore */
|
|
1239
|
+
...(ngDevMode ? [undefined, { debugName: "activeHover" }] : /* istanbul ignore next */ []));
|
|
1220
1240
|
/**
|
|
1221
1241
|
* Compare date functions which are necessary to compare a the dates according the current view.
|
|
1222
1242
|
*
|
|
1223
1243
|
* @defaultValue new DayCompareAdapter()
|
|
1224
1244
|
*/
|
|
1225
|
-
compareAdapter = input(new DayCompareAdapter(),
|
|
1245
|
+
compareAdapter = input(new DayCompareAdapter(), /* @ts-ignore */
|
|
1246
|
+
...(ngDevMode ? [{ debugName: "compareAdapter" }] : /* istanbul ignore next */ []));
|
|
1226
1247
|
/** Emits when a user select a cell via click, space or enter. */
|
|
1227
1248
|
selectedValueChange = output();
|
|
1228
|
-
calendarDateCells = viewChildren(SiCalendarDateCellDirective,
|
|
1249
|
+
calendarDateCells = viewChildren(SiCalendarDateCellDirective, /* @ts-ignore */
|
|
1250
|
+
...(ngDevMode ? [{ debugName: "calendarDateCells" }] : /* istanbul ignore next */ []));
|
|
1229
1251
|
selection = computed(() => this.enableRangeSelection()
|
|
1230
1252
|
? new RangeSelectionStrategy(this.compareAdapter())
|
|
1231
|
-
: new SingleSelectionStrategy(this.compareAdapter()),
|
|
1253
|
+
: new SingleSelectionStrategy(this.compareAdapter()), /* @ts-ignore */
|
|
1254
|
+
...(ngDevMode ? [{ debugName: "selection" }] : /* istanbul ignore next */ []));
|
|
1232
1255
|
cellRangeClasses = computed(() => {
|
|
1233
1256
|
const sel = this.selection();
|
|
1234
1257
|
const rows = this.rows();
|
|
@@ -1258,7 +1281,8 @@ class SiCalendarBodyComponent {
|
|
|
1258
1281
|
}
|
|
1259
1282
|
return classes;
|
|
1260
1283
|
}));
|
|
1261
|
-
},
|
|
1284
|
+
}, /* @ts-ignore */
|
|
1285
|
+
...(ngDevMode ? [{ debugName: "cellRangeClasses" }] : /* istanbul ignore next */ []));
|
|
1262
1286
|
/**
|
|
1263
1287
|
* Focus calendar cell which is marked as active cell.
|
|
1264
1288
|
*/
|
|
@@ -1292,12 +1316,12 @@ class SiCalendarBodyComponent {
|
|
|
1292
1316
|
this.focusedDate.set(cell.valueRaw);
|
|
1293
1317
|
}
|
|
1294
1318
|
}
|
|
1295
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1296
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1319
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1320
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiCalendarBodyComponent, isStandalone: true, selector: "[si-calendar-body]", inputs: { focusedDate: { classPropertyName: "focusedDate", publicName: "focusedDate", isSignal: true, isRequired: true, transformFunction: null }, startDate: { classPropertyName: "startDate", publicName: "startDate", isSignal: true, isRequired: false, transformFunction: null }, endDate: { classPropertyName: "endDate", publicName: "endDate", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, rowLabels: { classPropertyName: "rowLabels", publicName: "rowLabels", isSignal: true, isRequired: false, transformFunction: null }, rowLabelCssClasses: { classPropertyName: "rowLabelCssClasses", publicName: "rowLabelCssClasses", isSignal: true, isRequired: false, transformFunction: null }, enableRangeSelection: { classPropertyName: "enableRangeSelection", publicName: "enableRangeSelection", isSignal: true, isRequired: false, transformFunction: null }, previewRange: { classPropertyName: "previewRange", publicName: "previewRange", isSignal: true, isRequired: false, transformFunction: null }, activeHover: { classPropertyName: "activeHover", publicName: "activeHover", isSignal: true, isRequired: false, transformFunction: null }, compareAdapter: { classPropertyName: "compareAdapter", publicName: "compareAdapter", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { focusedDate: "focusedDateChange", activeHover: "activeHoverChange", selectedValueChange: "selectedValueChange" }, host: { classAttribute: "si-calendar-body" }, viewQueries: [{ propertyName: "calendarDateCells", predicate: SiCalendarDateCellDirective, descendants: true, isSignal: true }], exportAs: ["siCalendarBody"], ngImport: i0, template: "@for (row of rows(); track rowIndex; let rowIndex = $index) {\n <tr role=\"row\">\n <!-- Typically used for week numbers -->\n @if (rowLabels()) {\n <td class=\"si-calendar-row-label\" [attr.data-row]=\"rowIndex\">\n <div [class]=\"rowLabelCssClasses()\">{{ rowLabels()?.at(rowIndex) ?? '' }}</div>\n </td>\n }\n @for (col of row; track colIndex; let colIndex = $index) {\n <td\n role=\"gridcell\"\n class=\"si-calendar-cell\"\n [attr.data-row]=\"rowIndex\"\n [attr.data-col]=\"colIndex\"\n [class]=\"cellRangeClasses()[rowIndex][colIndex]\"\n >\n <button\n siCalendarDateCell\n type=\"button\"\n [cell]=\"col\"\n [compareAdapter]=\"compareAdapter()\"\n [attr.cdkFocusInitial]=\"isActive(col) ? '' : null\"\n [class]=\"cellCss(col)\"\n [class.selected]=\"selection().isSelected(col, startDate(), endDate())\"\n [class.text-secondary]=\"\n col.isPreview &&\n !col.disabled &&\n !selection().isRangeSelected(col, startDate()) &&\n !selection().isRangeSelected(col, endDate()) &&\n !selection().inRange(col, startDate(), endDate())\n \"\n [tabindex]=\"isActive(col) ? '0' : '-1'\"\n (mouseover)=\"emitActiveHover(col)\"\n (click)=\"emitSelectCell(col)\"\n (focus)=\"emitActiveDateChange(col)\"\n >\n {{ col.displayValue }}\n </button>\n </td>\n }\n </tr>\n}\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: SiCalendarDateCellDirective, selector: "[siCalendarDateCell]", inputs: ["cell", "compareAdapter"] }] });
|
|
1297
1321
|
}
|
|
1298
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1322
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarBodyComponent, decorators: [{
|
|
1299
1323
|
type: Component,
|
|
1300
|
-
args: [{ selector: '[si-calendar-body]', imports: [A11yModule, SiCalendarDateCellDirective],
|
|
1324
|
+
args: [{ selector: '[si-calendar-body]', imports: [A11yModule, SiCalendarDateCellDirective], host: {
|
|
1301
1325
|
class: 'si-calendar-body'
|
|
1302
1326
|
}, exportAs: 'siCalendarBody', template: "@for (row of rows(); track rowIndex; let rowIndex = $index) {\n <tr role=\"row\">\n <!-- Typically used for week numbers -->\n @if (rowLabels()) {\n <td class=\"si-calendar-row-label\" [attr.data-row]=\"rowIndex\">\n <div [class]=\"rowLabelCssClasses()\">{{ rowLabels()?.at(rowIndex) ?? '' }}</div>\n </td>\n }\n @for (col of row; track colIndex; let colIndex = $index) {\n <td\n role=\"gridcell\"\n class=\"si-calendar-cell\"\n [attr.data-row]=\"rowIndex\"\n [attr.data-col]=\"colIndex\"\n [class]=\"cellRangeClasses()[rowIndex][colIndex]\"\n >\n <button\n siCalendarDateCell\n type=\"button\"\n [cell]=\"col\"\n [compareAdapter]=\"compareAdapter()\"\n [attr.cdkFocusInitial]=\"isActive(col) ? '' : null\"\n [class]=\"cellCss(col)\"\n [class.selected]=\"selection().isSelected(col, startDate(), endDate())\"\n [class.text-secondary]=\"\n col.isPreview &&\n !col.disabled &&\n !selection().isRangeSelected(col, startDate()) &&\n !selection().isRangeSelected(col, endDate()) &&\n !selection().inRange(col, startDate(), endDate())\n \"\n [tabindex]=\"isActive(col) ? '0' : '-1'\"\n (mouseover)=\"emitActiveHover(col)\"\n (click)=\"emitSelectCell(col)\"\n (focus)=\"emitActiveDateChange(col)\"\n >\n {{ col.displayValue }}\n </button>\n </td>\n }\n </tr>\n}\n" }]
|
|
1303
1327
|
}], propDecorators: { focusedDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusedDate", required: true }] }, { type: i0.Output, args: ["focusedDateChange"] }], startDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "startDate", required: false }] }], endDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "endDate", required: false }] }], rows: [{ type: i0.Input, args: [{ isSignal: true, alias: "rows", required: false }] }], rowLabels: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowLabels", required: false }] }], rowLabelCssClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowLabelCssClasses", required: false }] }], enableRangeSelection: [{ type: i0.Input, args: [{ isSignal: true, alias: "enableRangeSelection", required: false }] }], previewRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "previewRange", required: false }] }], activeHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "activeHover", required: false }] }, { type: i0.Output, args: ["activeHoverChange"] }], compareAdapter: [{ type: i0.Input, args: [{ isSignal: true, alias: "compareAdapter", required: false }] }], selectedValueChange: [{ type: i0.Output, args: ["selectedValueChange"] }], calendarDateCells: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => SiCalendarDateCellDirective), { isSignal: true }] }] } });
|
|
@@ -1308,29 +1332,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
1308
1332
|
*/
|
|
1309
1333
|
class SiCalendarDirectionButtonComponent {
|
|
1310
1334
|
/** Accessible label for the button. */
|
|
1311
|
-
ariaLabel = input.required(
|
|
1335
|
+
ariaLabel = input.required(/* @ts-ignore */
|
|
1336
|
+
...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
|
|
1312
1337
|
/**
|
|
1313
1338
|
* Whether the button is disabled.
|
|
1314
1339
|
*
|
|
1315
1340
|
* @defaultValue false
|
|
1316
1341
|
*/
|
|
1317
|
-
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
|
|
1342
|
+
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
1318
1343
|
/** Direction in which the button navigates. */
|
|
1319
|
-
direction = input(
|
|
1344
|
+
direction = input(/* @ts-ignore */
|
|
1345
|
+
...(ngDevMode ? [undefined, { debugName: "direction" }] : /* istanbul ignore next */ []));
|
|
1320
1346
|
/** Emits when the button is clicked. */
|
|
1321
1347
|
clicked = output();
|
|
1322
|
-
icon = computed(() => this.direction() === 'left' ? this.icons.elementLeft2 : this.icons.elementRight2,
|
|
1323
|
-
|
|
1348
|
+
icon = computed(() => this.direction() === 'left' ? this.icons.elementLeft2 : this.icons.elementRight2, /* @ts-ignore */
|
|
1349
|
+
...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
1350
|
+
buttonClass = computed(() => this.direction() === 'left' ? 'previous-button' : 'next-button', /* @ts-ignore */
|
|
1351
|
+
...(ngDevMode ? [{ debugName: "buttonClass" }] : /* istanbul ignore next */ []));
|
|
1324
1352
|
icons = addIcons({ elementLeft2, elementRight2 });
|
|
1325
1353
|
onClick() {
|
|
1326
1354
|
this.clicked.emit();
|
|
1327
1355
|
}
|
|
1328
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1329
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
1356
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarDirectionButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1357
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.8", type: SiCalendarDirectionButtonComponent, isStandalone: true, selector: "si-calendar-direction-button", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked" }, ngImport: i0, template: "<button\n type=\"button\"\n [class]=\"`btn btn-circle btn-tertiary ${buttonClass()}`\"\n [disabled]=\"disabled() || null\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"onClick()\"\n>\n <si-icon class=\"icon flip-rtl\" [icon]=\"icon()\" />\n</button>\n", dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
|
|
1330
1358
|
}
|
|
1331
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1359
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarDirectionButtonComponent, decorators: [{
|
|
1332
1360
|
type: Component,
|
|
1333
|
-
args: [{ selector: 'si-calendar-direction-button', imports: [SiIconComponent],
|
|
1361
|
+
args: [{ selector: 'si-calendar-direction-button', imports: [SiIconComponent], template: "<button\n type=\"button\"\n [class]=\"`btn btn-circle btn-tertiary ${buttonClass()}`\"\n [disabled]=\"disabled() || null\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"onClick()\"\n>\n <si-icon class=\"icon flip-rtl\" [icon]=\"icon()\" />\n</button>\n" }]
|
|
1334
1362
|
}], propDecorators: { ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: true }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], direction: [{ type: i0.Input, args: [{ isSignal: true, alias: "direction", required: false }] }], clicked: [{ type: i0.Output, args: ["clicked"] }] } });
|
|
1335
1363
|
|
|
1336
1364
|
/**
|
|
@@ -1342,59 +1370,70 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
1342
1370
|
*/
|
|
1343
1371
|
class SiInitialFocusComponent {
|
|
1344
1372
|
/** The cell which has the mouse hover. */
|
|
1345
|
-
activeHover = model(
|
|
1373
|
+
activeHover = model(/* @ts-ignore */
|
|
1374
|
+
...(ngDevMode ? [undefined, { debugName: "activeHover" }] : /* istanbul ignore next */ []));
|
|
1346
1375
|
/** The date which is displayed as selected. */
|
|
1347
|
-
startDate = input(
|
|
1376
|
+
startDate = input(/* @ts-ignore */
|
|
1377
|
+
...(ngDevMode ? [undefined, { debugName: "startDate" }] : /* istanbul ignore next */ []));
|
|
1348
1378
|
/** The date which is displayed as selected end. The value is only considered with enableRangeSelection. */
|
|
1349
|
-
endDate = input(
|
|
1379
|
+
endDate = input(/* @ts-ignore */
|
|
1380
|
+
...(ngDevMode ? [undefined, { debugName: "endDate" }] : /* istanbul ignore next */ []));
|
|
1350
1381
|
/**
|
|
1351
1382
|
* Guard to set the focus during ngAfterViewInit, we just set the focus after we first initialized the view
|
|
1352
1383
|
*
|
|
1353
1384
|
* @defaultValue true
|
|
1354
1385
|
*/
|
|
1355
|
-
initialFocus = input(true,
|
|
1386
|
+
initialFocus = input(true, /* @ts-ignore */
|
|
1387
|
+
...(ngDevMode ? [{ debugName: "initialFocus" }] : /* istanbul ignore next */ []));
|
|
1356
1388
|
/** The minimum selectable date. */
|
|
1357
|
-
minDate = input(
|
|
1389
|
+
minDate = input(/* @ts-ignore */
|
|
1390
|
+
...(ngDevMode ? [undefined, { debugName: "minDate" }] : /* istanbul ignore next */ []));
|
|
1358
1391
|
/** The maximum selectable date. */
|
|
1359
|
-
maxDate = input(
|
|
1392
|
+
maxDate = input(/* @ts-ignore */
|
|
1393
|
+
...(ngDevMode ? [undefined, { debugName: "maxDate" }] : /* istanbul ignore next */ []));
|
|
1360
1394
|
/**
|
|
1361
1395
|
* Optional input to control the minimum month the datepicker can show and the user can navigate.
|
|
1362
1396
|
* The `minMonth` can be larger than the `minDate` This option enables the usage of multiple
|
|
1363
1397
|
* datepickers next to each other while the more left calendar always
|
|
1364
1398
|
* shows an earlier month the more right one.
|
|
1365
1399
|
*/
|
|
1366
|
-
minMonth = input(
|
|
1400
|
+
minMonth = input(/* @ts-ignore */
|
|
1401
|
+
...(ngDevMode ? [undefined, { debugName: "minMonth" }] : /* istanbul ignore next */ []));
|
|
1367
1402
|
/**
|
|
1368
1403
|
* Optional input to control the maximum month the datepicker can show and the user can navigate.
|
|
1369
1404
|
* The `maxMonth` can be smaller than the `maxDate` This option enables the usage of multiple
|
|
1370
1405
|
* datepickers next to each other while the more left calendar always
|
|
1371
1406
|
* shows an earlier month the more right one.
|
|
1372
1407
|
*/
|
|
1373
|
-
maxMonth = input(
|
|
1408
|
+
maxMonth = input(/* @ts-ignore */
|
|
1409
|
+
...(ngDevMode ? [undefined, { debugName: "maxMonth" }] : /* istanbul ignore next */ []));
|
|
1374
1410
|
/** Aria label for the next button. Needed for a11y. */
|
|
1375
|
-
previousLabel = input.required(
|
|
1411
|
+
previousLabel = input.required(/* @ts-ignore */
|
|
1412
|
+
...(ngDevMode ? [{ debugName: "previousLabel" }] : /* istanbul ignore next */ []));
|
|
1376
1413
|
/** Aria label for the next button. Needed for a11y. */
|
|
1377
|
-
nextLabel = input.required(
|
|
1414
|
+
nextLabel = input.required(/* @ts-ignore */
|
|
1415
|
+
...(ngDevMode ? [{ debugName: "nextLabel" }] : /* istanbul ignore next */ []));
|
|
1378
1416
|
/**
|
|
1379
1417
|
* Is range selection enabled, when enabled it shows a preview between the startDate and the focused date.
|
|
1380
1418
|
*
|
|
1381
1419
|
* @defaultValue false
|
|
1382
1420
|
*/
|
|
1383
|
-
isRangeSelection = input(false, { ...(ngDevMode ? { debugName: "isRangeSelection" } : {}), transform: booleanAttribute });
|
|
1421
|
+
isRangeSelection = input(false, { ...(ngDevMode ? { debugName: "isRangeSelection" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
1384
1422
|
/**
|
|
1385
1423
|
* Indicate whether a range preview shall be displayed.
|
|
1386
1424
|
* When enabled a preview is visible between startDate and focusedDate.
|
|
1387
1425
|
*
|
|
1388
1426
|
* @defaultValue true
|
|
1389
1427
|
*/
|
|
1390
|
-
previewRange = input(true, { ...(ngDevMode ? { debugName: "previewRange" } : {}), transform: booleanAttribute });
|
|
1428
|
+
previewRange = input(true, { ...(ngDevMode ? { debugName: "previewRange" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
1391
1429
|
/**
|
|
1392
1430
|
* Emits when a new value is selected. In case where the value is null to
|
|
1393
1431
|
* user aborted the selection by Escape.
|
|
1394
1432
|
*/
|
|
1395
1433
|
selectedValueChange = output();
|
|
1396
1434
|
/** The body of calendar table */
|
|
1397
|
-
calendarBody = viewChild.required(SiCalendarBodyComponent
|
|
1435
|
+
calendarBody = viewChild.required(SiCalendarBodyComponent, /* @ts-ignore */
|
|
1436
|
+
...(ngDevMode ? [{ debugName: "calendarBody" }] : /* istanbul ignore next */ []));
|
|
1398
1437
|
ngAfterViewInit() {
|
|
1399
1438
|
if (this.initialFocus()) {
|
|
1400
1439
|
this.focusActiveCell();
|
|
@@ -1409,14 +1448,13 @@ class SiInitialFocusComponent {
|
|
|
1409
1448
|
onActiveHoverChange(event) {
|
|
1410
1449
|
this.activeHover.set(event);
|
|
1411
1450
|
}
|
|
1412
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1413
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
1451
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiInitialFocusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1452
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: SiInitialFocusComponent, isStandalone: true, selector: "ng-component", inputs: { activeHover: { classPropertyName: "activeHover", publicName: "activeHover", isSignal: true, isRequired: false, transformFunction: null }, startDate: { classPropertyName: "startDate", publicName: "startDate", isSignal: true, isRequired: false, transformFunction: null }, endDate: { classPropertyName: "endDate", publicName: "endDate", isSignal: true, isRequired: false, transformFunction: null }, initialFocus: { classPropertyName: "initialFocus", publicName: "initialFocus", isSignal: true, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: true, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: true, isRequired: false, transformFunction: null }, minMonth: { classPropertyName: "minMonth", publicName: "minMonth", isSignal: true, isRequired: false, transformFunction: null }, maxMonth: { classPropertyName: "maxMonth", publicName: "maxMonth", isSignal: true, isRequired: false, transformFunction: null }, previousLabel: { classPropertyName: "previousLabel", publicName: "previousLabel", isSignal: true, isRequired: true, transformFunction: null }, nextLabel: { classPropertyName: "nextLabel", publicName: "nextLabel", isSignal: true, isRequired: true, transformFunction: null }, isRangeSelection: { classPropertyName: "isRangeSelection", publicName: "isRangeSelection", isSignal: true, isRequired: false, transformFunction: null }, previewRange: { classPropertyName: "previewRange", publicName: "previewRange", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activeHover: "activeHoverChange", selectedValueChange: "selectedValueChange" }, viewQueries: [{ propertyName: "calendarBody", first: true, predicate: SiCalendarBodyComponent, descendants: true, isSignal: true }], ngImport: i0, template: '', isInline: true });
|
|
1414
1453
|
}
|
|
1415
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1454
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiInitialFocusComponent, decorators: [{
|
|
1416
1455
|
type: Component,
|
|
1417
1456
|
args: [{
|
|
1418
|
-
template: ''
|
|
1419
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
1457
|
+
template: ''
|
|
1420
1458
|
}]
|
|
1421
1459
|
}], propDecorators: { activeHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "activeHover", required: false }] }, { type: i0.Output, args: ["activeHoverChange"] }], startDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "startDate", required: false }] }], endDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "endDate", required: false }] }], initialFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialFocus", required: false }] }], minDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "minDate", required: false }] }], maxDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxDate", required: false }] }], minMonth: [{ type: i0.Input, args: [{ isSignal: true, alias: "minMonth", required: false }] }], maxMonth: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxMonth", required: false }] }], previousLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "previousLabel", required: true }] }], nextLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "nextLabel", required: true }] }], isRangeSelection: [{ type: i0.Input, args: [{ isSignal: true, alias: "isRangeSelection", required: false }] }], previewRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "previewRange", required: false }] }], selectedValueChange: [{ type: i0.Output, args: ["selectedValueChange"] }], calendarBody: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiCalendarBodyComponent), { isSignal: true }] }] } });
|
|
1422
1460
|
|
|
@@ -1435,31 +1473,38 @@ class SiDaySelectionComponent extends SiInitialFocusComponent {
|
|
|
1435
1473
|
*
|
|
1436
1474
|
* @defaultValue false
|
|
1437
1475
|
*/
|
|
1438
|
-
hideWeekNumbers = input(false, { ...(ngDevMode ? { debugName: "hideWeekNumbers" } : {}), transform: booleanAttribute });
|
|
1476
|
+
hideWeekNumbers = input(false, { ...(ngDevMode ? { debugName: "hideWeekNumbers" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
1439
1477
|
/**
|
|
1440
1478
|
* Defines the starting day of the week. Default is `monday`.
|
|
1441
1479
|
*
|
|
1442
1480
|
* @defaultValue 'monday'
|
|
1443
1481
|
*/
|
|
1444
|
-
weekStartDay = input('monday',
|
|
1482
|
+
weekStartDay = input('monday', /* @ts-ignore */
|
|
1483
|
+
...(ngDevMode ? [{ debugName: "weekStartDay" }] : /* istanbul ignore next */ []));
|
|
1445
1484
|
/**
|
|
1446
1485
|
* The active date, the cell which will receive the focus.
|
|
1447
1486
|
* @defaultValue calendarUtils.today()
|
|
1448
1487
|
*/
|
|
1449
|
-
focusedDate = model.required(
|
|
1488
|
+
focusedDate = model.required(/* @ts-ignore */
|
|
1489
|
+
...(ngDevMode ? [{ debugName: "focusedDate" }] : /* istanbul ignore next */ []));
|
|
1450
1490
|
/** Today button text */
|
|
1451
|
-
todayLabel = input(
|
|
1491
|
+
todayLabel = input(/* @ts-ignore */
|
|
1492
|
+
...(ngDevMode ? [undefined, { debugName: "todayLabel" }] : /* istanbul ignore next */ []));
|
|
1452
1493
|
/** Aria label for calendar week column */
|
|
1453
|
-
calendarWeekLabel = input(
|
|
1494
|
+
calendarWeekLabel = input(/* @ts-ignore */
|
|
1495
|
+
...(ngDevMode ? [undefined, { debugName: "calendarWeekLabel" }] : /* istanbul ignore next */ []));
|
|
1454
1496
|
/** Emits when the active focused date changed to another month / year, typically during keyboard navigation */
|
|
1455
1497
|
activeMonthChange = output();
|
|
1456
1498
|
/** Emits when the user requests a different to show a different view */
|
|
1457
1499
|
viewChange = output();
|
|
1458
|
-
today = computed(() => this.todayLabel() ?? this.todayDefaultText,
|
|
1500
|
+
today = computed(() => this.todayLabel() ?? this.todayDefaultText, /* @ts-ignore */
|
|
1501
|
+
...(ngDevMode ? [{ debugName: "today" }] : /* istanbul ignore next */ []));
|
|
1459
1502
|
/** The translated list of week days. */
|
|
1460
|
-
days = computed(() => getDayStrings(this.locale, this.weekStartDay()),
|
|
1503
|
+
days = computed(() => getDayStrings(this.locale, this.weekStartDay()), /* @ts-ignore */
|
|
1504
|
+
...(ngDevMode ? [{ debugName: "days" }] : /* istanbul ignore next */ []));
|
|
1461
1505
|
/** The week numbers which are shown as row label */
|
|
1462
|
-
weekNumbers = computed(() => this.weeks().map(w => getWeekOfYear(w[0].valueRaw, this.weekStartDay()).toString()),
|
|
1506
|
+
weekNumbers = computed(() => this.weeks().map(w => getWeekOfYear(w[0].valueRaw, this.weekStartDay()).toString()), /* @ts-ignore */
|
|
1507
|
+
...(ngDevMode ? [{ debugName: "weekNumbers" }] : /* istanbul ignore next */ []));
|
|
1463
1508
|
/**
|
|
1464
1509
|
* The current visible list of calendar days.
|
|
1465
1510
|
* Every time the focusedDate changes to either another month or year the list will be rebuild.
|
|
@@ -1496,11 +1541,13 @@ class SiDaySelectionComponent extends SiInitialFocusComponent {
|
|
|
1496
1541
|
});
|
|
1497
1542
|
}
|
|
1498
1543
|
return weeks;
|
|
1499
|
-
},
|
|
1544
|
+
}, /* @ts-ignore */
|
|
1545
|
+
...(ngDevMode ? [{ debugName: "weeks" }] : /* istanbul ignore next */ []));
|
|
1500
1546
|
/** Compare date based on the current view */
|
|
1501
1547
|
compareAdapter = new DayCompareAdapter();
|
|
1502
1548
|
/** Disable today button if it is the same month */
|
|
1503
|
-
isTodayButtonDisabled = computed(() => isSameMonth(today(), this.focusedDate()),
|
|
1549
|
+
isTodayButtonDisabled = computed(() => isSameMonth(today(), this.focusedDate()), /* @ts-ignore */
|
|
1550
|
+
...(ngDevMode ? [{ debugName: "isTodayButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1504
1551
|
/**
|
|
1505
1552
|
* Indicate the previous button shall be disabled.
|
|
1506
1553
|
* This happens when the focusedDate is equal or before the minDate.
|
|
@@ -1509,7 +1556,8 @@ class SiDaySelectionComponent extends SiInitialFocusComponent {
|
|
|
1509
1556
|
const minDate = this.minDate();
|
|
1510
1557
|
const focusedDate = this.focusedDate();
|
|
1511
1558
|
return minDate && (isSameMonth(focusedDate, minDate) || isAfterMonth(minDate, focusedDate));
|
|
1512
|
-
},
|
|
1559
|
+
}, /* @ts-ignore */
|
|
1560
|
+
...(ngDevMode ? [{ debugName: "isPreviousButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1513
1561
|
/**
|
|
1514
1562
|
* Indicate the next button shall be disabled.
|
|
1515
1563
|
* This happens when the focusedDate is equal or after the maxDate.
|
|
@@ -1518,7 +1566,8 @@ class SiDaySelectionComponent extends SiInitialFocusComponent {
|
|
|
1518
1566
|
const maxDate = this.maxDate();
|
|
1519
1567
|
const focusedDate = this.focusedDate();
|
|
1520
1568
|
return maxDate && (isSameMonth(focusedDate, maxDate) || isAfterMonth(focusedDate, maxDate));
|
|
1521
|
-
},
|
|
1569
|
+
}, /* @ts-ignore */
|
|
1570
|
+
...(ngDevMode ? [{ debugName: "isNextButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1522
1571
|
locale = inject(LOCALE_ID).toString();
|
|
1523
1572
|
calendarBodyKeyDown(event) {
|
|
1524
1573
|
const isRtl = isRTL();
|
|
@@ -1598,12 +1647,12 @@ class SiDaySelectionComponent extends SiInitialFocusComponent {
|
|
|
1598
1647
|
emitViewChange(view) {
|
|
1599
1648
|
this.viewChange.emit(view);
|
|
1600
1649
|
}
|
|
1601
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1602
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1650
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDaySelectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1651
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiDaySelectionComponent, isStandalone: true, selector: "si-day-selection", inputs: { hideWeekNumbers: { classPropertyName: "hideWeekNumbers", publicName: "hideWeekNumbers", isSignal: true, isRequired: false, transformFunction: null }, weekStartDay: { classPropertyName: "weekStartDay", publicName: "weekStartDay", isSignal: true, isRequired: false, transformFunction: null }, focusedDate: { classPropertyName: "focusedDate", publicName: "focusedDate", isSignal: true, isRequired: true, transformFunction: null }, todayLabel: { classPropertyName: "todayLabel", publicName: "todayLabel", isSignal: true, isRequired: false, transformFunction: null }, calendarWeekLabel: { classPropertyName: "calendarWeekLabel", publicName: "calendarWeekLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { focusedDate: "focusedDateChange", activeMonthChange: "activeMonthChange", viewChange: "viewChange" }, host: { classAttribute: "d-flex flex-column gap-6" }, usesInheritance: true, ngImport: i0, template: "<div class=\"header\">\n <si-calendar-direction-button\n direction=\"left\"\n [ariaLabel]=\"previousLabel() | translate\"\n [disabled]=\"isPreviousButtonDisabled()\"\n (clicked)=\"setMonthOffset(-1)\"\n />\n <div class=\"flex-fill\">\n <button\n type=\"button\"\n class=\"open-month-view flex-fill text-end px-4 btn btn-tertiary calendar-button\"\n (click)=\"emitViewChange('month')\"\n >\n {{ focusedDate() | date: 'MMMM' }}\n </button>\n <button\n type=\"button\"\n class=\"open-year-view flex-fill text-start px-4 btn btn-tertiary calendar-button\"\n (click)=\"emitViewChange('year')\"\n >\n {{ focusedDate() | date: 'yyyy' }}\n </button>\n </div>\n <si-calendar-direction-button\n direction=\"right\"\n [ariaLabel]=\"nextLabel() | translate\"\n [disabled]=\"isNextButtonDisabled()\"\n (clicked)=\"setMonthOffset(1)\"\n />\n</div>\n<div class=\"calendar-table\">\n <table class=\"px-9\" role=\"grid\">\n <thead class=\"si-calendar-table-header\">\n <tr>\n @if (!hideWeekNumbers()) {\n <th scope=\"col\" class=\"week-num\">\n <span class=\"visually-hidden\">{{ calendarWeekLabel() | translate }}</span>\n </th>\n }\n @for (day of days(); track $index) {\n <th scope=\"col\">\n <span class=\"si-hidden-xs si-hidden-sm\">{{ day }}</span>\n </th>\n }\n </tr>\n </thead>\n <tbody\n si-calendar-body\n rowLabelCssClasses=\"week-num\"\n [focusedDate]=\"focusedDate()\"\n [compareAdapter]=\"compareAdapter\"\n [startDate]=\"startDate()\"\n [endDate]=\"endDate()\"\n [enableRangeSelection]=\"isRangeSelection()\"\n [previewRange]=\"previewRange()\"\n [rows]=\"weeks()\"\n [rowLabels]=\"hideWeekNumbers() ? undefined : weekNumbers()\"\n [activeHover]=\"activeHover()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (selectedValueChange)=\"emitSelectedValue($event)\"\n (focusedDateChange)=\"emitActiveDate($event!)\"\n (keydown)=\"calendarBodyKeyDown($event)\"\n >\n </tbody>\n </table>\n</div>\n<div class=\"footer ps-8 pe-8\">\n <button\n type=\"button\"\n class=\"today-button btn btn-tertiary flex-fill\"\n [disabled]=\"isTodayButtonDisabled()\"\n (click)=\"goToToday()\"\n >\n {{ today() | translate }}\n </button>\n</div>\n", dependencies: [{ kind: "component", type: SiCalendarBodyComponent, selector: "[si-calendar-body]", inputs: ["focusedDate", "startDate", "endDate", "rows", "rowLabels", "rowLabelCssClasses", "enableRangeSelection", "previewRange", "activeHover", "compareAdapter"], outputs: ["focusedDateChange", "activeHoverChange", "selectedValueChange"], exportAs: ["siCalendarBody"] }, { kind: "component", type: SiCalendarDirectionButtonComponent, selector: "si-calendar-direction-button", inputs: ["ariaLabel", "disabled", "direction"], outputs: ["clicked"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
|
|
1603
1652
|
}
|
|
1604
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1653
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDaySelectionComponent, decorators: [{
|
|
1605
1654
|
type: Component,
|
|
1606
|
-
args: [{ selector: 'si-day-selection', imports: [DatePipe, SiCalendarBodyComponent, SiCalendarDirectionButtonComponent, SiTranslatePipe],
|
|
1655
|
+
args: [{ selector: 'si-day-selection', imports: [DatePipe, SiCalendarBodyComponent, SiCalendarDirectionButtonComponent, SiTranslatePipe], host: {
|
|
1607
1656
|
class: 'd-flex flex-column gap-6'
|
|
1608
1657
|
}, template: "<div class=\"header\">\n <si-calendar-direction-button\n direction=\"left\"\n [ariaLabel]=\"previousLabel() | translate\"\n [disabled]=\"isPreviousButtonDisabled()\"\n (clicked)=\"setMonthOffset(-1)\"\n />\n <div class=\"flex-fill\">\n <button\n type=\"button\"\n class=\"open-month-view flex-fill text-end px-4 btn btn-tertiary calendar-button\"\n (click)=\"emitViewChange('month')\"\n >\n {{ focusedDate() | date: 'MMMM' }}\n </button>\n <button\n type=\"button\"\n class=\"open-year-view flex-fill text-start px-4 btn btn-tertiary calendar-button\"\n (click)=\"emitViewChange('year')\"\n >\n {{ focusedDate() | date: 'yyyy' }}\n </button>\n </div>\n <si-calendar-direction-button\n direction=\"right\"\n [ariaLabel]=\"nextLabel() | translate\"\n [disabled]=\"isNextButtonDisabled()\"\n (clicked)=\"setMonthOffset(1)\"\n />\n</div>\n<div class=\"calendar-table\">\n <table class=\"px-9\" role=\"grid\">\n <thead class=\"si-calendar-table-header\">\n <tr>\n @if (!hideWeekNumbers()) {\n <th scope=\"col\" class=\"week-num\">\n <span class=\"visually-hidden\">{{ calendarWeekLabel() | translate }}</span>\n </th>\n }\n @for (day of days(); track $index) {\n <th scope=\"col\">\n <span class=\"si-hidden-xs si-hidden-sm\">{{ day }}</span>\n </th>\n }\n </tr>\n </thead>\n <tbody\n si-calendar-body\n rowLabelCssClasses=\"week-num\"\n [focusedDate]=\"focusedDate()\"\n [compareAdapter]=\"compareAdapter\"\n [startDate]=\"startDate()\"\n [endDate]=\"endDate()\"\n [enableRangeSelection]=\"isRangeSelection()\"\n [previewRange]=\"previewRange()\"\n [rows]=\"weeks()\"\n [rowLabels]=\"hideWeekNumbers() ? undefined : weekNumbers()\"\n [activeHover]=\"activeHover()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (selectedValueChange)=\"emitSelectedValue($event)\"\n (focusedDateChange)=\"emitActiveDate($event!)\"\n (keydown)=\"calendarBodyKeyDown($event)\"\n >\n </tbody>\n </table>\n</div>\n<div class=\"footer ps-8 pe-8\">\n <button\n type=\"button\"\n class=\"today-button btn btn-tertiary flex-fill\"\n [disabled]=\"isTodayButtonDisabled()\"\n (click)=\"goToToday()\"\n >\n {{ today() | translate }}\n </button>\n</div>\n" }]
|
|
1609
1658
|
}], propDecorators: { hideWeekNumbers: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideWeekNumbers", required: false }] }], weekStartDay: [{ type: i0.Input, args: [{ isSignal: true, alias: "weekStartDay", required: false }] }], focusedDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusedDate", required: true }] }, { type: i0.Output, args: ["focusedDateChange"] }], todayLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "todayLabel", required: false }] }], calendarWeekLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "calendarWeekLabel", required: false }] }], activeMonthChange: [{ type: i0.Output, args: ["activeMonthChange"] }], viewChange: [{ type: i0.Output, args: ["viewChange"] }] } });
|
|
@@ -1622,11 +1671,13 @@ class SiMonthSelectionComponent extends SiInitialFocusComponent {
|
|
|
1622
1671
|
*
|
|
1623
1672
|
* @defaultValue []
|
|
1624
1673
|
*/
|
|
1625
|
-
months = input([],
|
|
1674
|
+
months = input([], /* @ts-ignore */
|
|
1675
|
+
...(ngDevMode ? [{ debugName: "months" }] : /* istanbul ignore next */ []));
|
|
1626
1676
|
/**
|
|
1627
1677
|
* The active date, the cell which will receive the focus.
|
|
1628
1678
|
*/
|
|
1629
|
-
focusedDate = model.required(
|
|
1679
|
+
focusedDate = model.required(/* @ts-ignore */
|
|
1680
|
+
...(ngDevMode ? [{ debugName: "focusedDate" }] : /* istanbul ignore next */ []));
|
|
1630
1681
|
/** Emits when the active focused date is changed to another month / year, typically during keyboard navigation. */
|
|
1631
1682
|
activeMonthChange = output();
|
|
1632
1683
|
/** Emits when the user requests a different to show a different view. */
|
|
@@ -1653,7 +1704,8 @@ class SiMonthSelectionComponent extends SiInitialFocusComponent {
|
|
|
1653
1704
|
const minDate = this.minDate();
|
|
1654
1705
|
const focusedDate = this.focusedDate();
|
|
1655
1706
|
return minDate && (isSameYear(focusedDate, minDate) || isAfterYear(minDate, focusedDate));
|
|
1656
|
-
},
|
|
1707
|
+
}, /* @ts-ignore */
|
|
1708
|
+
...(ngDevMode ? [{ debugName: "isPreviousButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1657
1709
|
/**
|
|
1658
1710
|
* Indicate the next button shall be disabled.
|
|
1659
1711
|
* This happens when the focusedDate is equal or after the maxDate.
|
|
@@ -1662,7 +1714,8 @@ class SiMonthSelectionComponent extends SiInitialFocusComponent {
|
|
|
1662
1714
|
const maxDate = this.maxDate();
|
|
1663
1715
|
const focusedDate = this.focusedDate();
|
|
1664
1716
|
return maxDate && (isSameYear(focusedDate, maxDate) || isAfterYear(focusedDate, maxDate));
|
|
1665
|
-
},
|
|
1717
|
+
}, /* @ts-ignore */
|
|
1718
|
+
...(ngDevMode ? [{ debugName: "isNextButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1666
1719
|
ngOnChanges(changes) {
|
|
1667
1720
|
if (changes.maxDate ||
|
|
1668
1721
|
changes.minDate ||
|
|
@@ -1771,12 +1824,12 @@ class SiMonthSelectionComponent extends SiInitialFocusComponent {
|
|
|
1771
1824
|
}
|
|
1772
1825
|
this.monthCells.push(row);
|
|
1773
1826
|
}
|
|
1774
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1775
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
1827
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMonthSelectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1828
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.8", type: SiMonthSelectionComponent, isStandalone: true, selector: "si-month-selection", inputs: { months: { classPropertyName: "months", publicName: "months", isSignal: true, isRequired: false, transformFunction: null }, focusedDate: { classPropertyName: "focusedDate", publicName: "focusedDate", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { focusedDate: "focusedDateChange", activeMonthChange: "activeMonthChange", viewChange: "viewChange" }, host: { listeners: { "keydown.Escape": "triggerEsc($event)" }, classAttribute: "d-flex flex-column gap-6" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"header\">\n <si-calendar-direction-button\n direction=\"left\"\n [ariaLabel]=\"previousLabel()\"\n [disabled]=\"isPreviousButtonDisabled()\"\n (clicked)=\"setYearOffset(-1)\"\n />\n <button\n type=\"button\"\n class=\"open-year-view flex-fill mx-4 btn btn-tertiary calendar-button\"\n (click)=\"emitViewChange()\"\n >\n {{ focusedDate() | date: 'yyyy' }}\n </button>\n <si-calendar-direction-button\n direction=\"right\"\n [ariaLabel]=\"nextLabel()\"\n [disabled]=\"isNextButtonDisabled()\"\n (clicked)=\"setYearOffset(1)\"\n />\n</div>\n<div class=\"calendar-table\">\n <table class=\"px-9\" role=\"grid\">\n <tbody\n si-calendar-body\n [focusedDate]=\"focusedDate()\"\n [compareAdapter]=\"compareAdapter\"\n [startDate]=\"startDate()\"\n [endDate]=\"endDate()\"\n [enableRangeSelection]=\"isRangeSelection()\"\n [previewRange]=\"previewRange()\"\n [rows]=\"monthCells\"\n [activeHover]=\"activeHover()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (selectedValueChange)=\"emitSelectedValue($event)\"\n (focusedDateChange)=\"emitFocusedDate($event)\"\n (keydown)=\"calendarBodyKeyDown($event)\"\n >\n </tbody>\n </table>\n</div>\n<div class=\"footer\"></div>\n", dependencies: [{ kind: "component", type: SiCalendarDirectionButtonComponent, selector: "si-calendar-direction-button", inputs: ["ariaLabel", "disabled", "direction"], outputs: ["clicked"] }, { kind: "component", type: SiCalendarBodyComponent, selector: "[si-calendar-body]", inputs: ["focusedDate", "startDate", "endDate", "rows", "rowLabels", "rowLabelCssClasses", "enableRangeSelection", "previewRange", "activeHover", "compareAdapter"], outputs: ["focusedDateChange", "activeHoverChange", "selectedValueChange"], exportAs: ["siCalendarBody"] }, { kind: "pipe", type: DatePipe, name: "date" }] });
|
|
1776
1829
|
}
|
|
1777
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1830
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMonthSelectionComponent, decorators: [{
|
|
1778
1831
|
type: Component,
|
|
1779
|
-
args: [{ selector: 'si-month-selection', imports: [SiCalendarDirectionButtonComponent, SiCalendarBodyComponent, DatePipe],
|
|
1832
|
+
args: [{ selector: 'si-month-selection', imports: [SiCalendarDirectionButtonComponent, SiCalendarBodyComponent, DatePipe], host: {
|
|
1780
1833
|
class: 'd-flex flex-column gap-6'
|
|
1781
1834
|
}, template: "<div class=\"header\">\n <si-calendar-direction-button\n direction=\"left\"\n [ariaLabel]=\"previousLabel()\"\n [disabled]=\"isPreviousButtonDisabled()\"\n (clicked)=\"setYearOffset(-1)\"\n />\n <button\n type=\"button\"\n class=\"open-year-view flex-fill mx-4 btn btn-tertiary calendar-button\"\n (click)=\"emitViewChange()\"\n >\n {{ focusedDate() | date: 'yyyy' }}\n </button>\n <si-calendar-direction-button\n direction=\"right\"\n [ariaLabel]=\"nextLabel()\"\n [disabled]=\"isNextButtonDisabled()\"\n (clicked)=\"setYearOffset(1)\"\n />\n</div>\n<div class=\"calendar-table\">\n <table class=\"px-9\" role=\"grid\">\n <tbody\n si-calendar-body\n [focusedDate]=\"focusedDate()\"\n [compareAdapter]=\"compareAdapter\"\n [startDate]=\"startDate()\"\n [endDate]=\"endDate()\"\n [enableRangeSelection]=\"isRangeSelection()\"\n [previewRange]=\"previewRange()\"\n [rows]=\"monthCells\"\n [activeHover]=\"activeHover()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (selectedValueChange)=\"emitSelectedValue($event)\"\n (focusedDateChange)=\"emitFocusedDate($event)\"\n (keydown)=\"calendarBodyKeyDown($event)\"\n >\n </tbody>\n </table>\n</div>\n<div class=\"footer\"></div>\n" }]
|
|
1782
1835
|
}], propDecorators: { months: [{ type: i0.Input, args: [{ isSignal: true, alias: "months", required: false }] }], focusedDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusedDate", required: true }] }, { type: i0.Output, args: ["focusedDateChange"] }], activeMonthChange: [{ type: i0.Output, args: ["activeMonthChange"] }], viewChange: [{ type: i0.Output, args: ["viewChange"] }], triggerEsc: [{
|
|
@@ -1796,7 +1849,8 @@ class SiYearSelectionComponent extends SiInitialFocusComponent {
|
|
|
1796
1849
|
/**
|
|
1797
1850
|
* The active date, the cell which will receive the focus.
|
|
1798
1851
|
*/
|
|
1799
|
-
focusedDate = model.required(
|
|
1852
|
+
focusedDate = model.required(/* @ts-ignore */
|
|
1853
|
+
...(ngDevMode ? [{ debugName: "focusedDate" }] : /* istanbul ignore next */ []));
|
|
1800
1854
|
/** Emits when the active focused date changed to another month / year, typically during keyboard navigation. */
|
|
1801
1855
|
yearRangeChange = output();
|
|
1802
1856
|
/** Listen Escape event to switch view back */
|
|
@@ -1810,9 +1864,11 @@ class SiYearSelectionComponent extends SiInitialFocusComponent {
|
|
|
1810
1864
|
/** The number of years which shall be displayed, this number should be even and dividable by columnCount */
|
|
1811
1865
|
yearsToDisplay = 18;
|
|
1812
1866
|
/** Lower windows bound for displayed year range */
|
|
1813
|
-
fromYear = signal(undefined,
|
|
1867
|
+
fromYear = signal(undefined, /* @ts-ignore */
|
|
1868
|
+
...(ngDevMode ? [{ debugName: "fromYear" }] : /* istanbul ignore next */ []));
|
|
1814
1869
|
/** Upper windows bound for displayed year range */
|
|
1815
|
-
toYear = signal(undefined,
|
|
1870
|
+
toYear = signal(undefined, /* @ts-ignore */
|
|
1871
|
+
...(ngDevMode ? [{ debugName: "toYear" }] : /* istanbul ignore next */ []));
|
|
1816
1872
|
/**
|
|
1817
1873
|
* The current visible list of calendar years.
|
|
1818
1874
|
* Every time the focusedDate changes to another year the list will be rebuilt.
|
|
@@ -1829,7 +1885,8 @@ class SiYearSelectionComponent extends SiInitialFocusComponent {
|
|
|
1829
1885
|
const min = minDate(minDate$1, minMonth);
|
|
1830
1886
|
return (this.compareAdapter.isEqual(this.fromYear(), min) ||
|
|
1831
1887
|
this.compareAdapter.isAfter(min, this.fromYear()));
|
|
1832
|
-
},
|
|
1888
|
+
}, /* @ts-ignore */
|
|
1889
|
+
...(ngDevMode ? [{ debugName: "isPreviousButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1833
1890
|
/** Is next button disabled based on the maxDate */
|
|
1834
1891
|
isNextButtonDisabled = computed(() => {
|
|
1835
1892
|
const maxDate = this.maxDate();
|
|
@@ -1838,7 +1895,8 @@ class SiYearSelectionComponent extends SiInitialFocusComponent {
|
|
|
1838
1895
|
}
|
|
1839
1896
|
return (this.compareAdapter.isEqual(this.toYear(), maxDate) ||
|
|
1840
1897
|
this.compareAdapter.isAfter(this.toYear(), maxDate));
|
|
1841
|
-
},
|
|
1898
|
+
}, /* @ts-ignore */
|
|
1899
|
+
...(ngDevMode ? [{ debugName: "isNextButtonDisabled" }] : /* istanbul ignore next */ []));
|
|
1842
1900
|
ngOnChanges(changes) {
|
|
1843
1901
|
if (changes.startDate || changes.focusedDate || changes.maxDate || changes.minDate) {
|
|
1844
1902
|
this.initView();
|
|
@@ -1982,12 +2040,12 @@ class SiYearSelectionComponent extends SiInitialFocusComponent {
|
|
|
1982
2040
|
this.initView();
|
|
1983
2041
|
}
|
|
1984
2042
|
}
|
|
1985
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1986
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
2043
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiYearSelectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
2044
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.8", type: SiYearSelectionComponent, isStandalone: true, selector: "si-year-selection", inputs: { focusedDate: { classPropertyName: "focusedDate", publicName: "focusedDate", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { focusedDate: "focusedDateChange", yearRangeChange: "yearRangeChange" }, host: { listeners: { "keydown.Escape": "triggerEsc($event)" }, classAttribute: "d-flex flex-column gap-6" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"header\">\n <si-calendar-direction-button\n direction=\"left\"\n [ariaLabel]=\"previousLabel()\"\n [disabled]=\"isPreviousButtonDisabled()\"\n (clicked)=\"changeVisibleYearRange(-1)\"\n />\n <span class=\"year-range-label flex-fill mx-4 si-h4 text-secondary calendar-button\">\n {{ fromYear() | date: 'yyyy' }} - {{ toYear() | date: 'yyyy' }}\n </span>\n <si-calendar-direction-button\n direction=\"right\"\n [ariaLabel]=\"nextLabel()\"\n [disabled]=\"isNextButtonDisabled()\"\n (clicked)=\"changeVisibleYearRange(1)\"\n />\n</div>\n<div class=\"calendar-table\">\n <table class=\"px-9\" role=\"grid\">\n <tbody\n si-calendar-body\n [focusedDate]=\"focusedDate()\"\n [compareAdapter]=\"compareAdapter\"\n [startDate]=\"startDate()\"\n [endDate]=\"endDate()\"\n [enableRangeSelection]=\"isRangeSelection()\"\n [previewRange]=\"previewRange()\"\n [rows]=\"yearCells\"\n (selectedValueChange)=\"emitSelectedValue($event)\"\n (keydown)=\"calendarBodyKeyDown($event)\"\n >\n </tbody>\n </table>\n</div>\n<div class=\"footer\"></div>\n", dependencies: [{ kind: "component", type: SiCalendarDirectionButtonComponent, selector: "si-calendar-direction-button", inputs: ["ariaLabel", "disabled", "direction"], outputs: ["clicked"] }, { kind: "component", type: SiCalendarBodyComponent, selector: "[si-calendar-body]", inputs: ["focusedDate", "startDate", "endDate", "rows", "rowLabels", "rowLabelCssClasses", "enableRangeSelection", "previewRange", "activeHover", "compareAdapter"], outputs: ["focusedDateChange", "activeHoverChange", "selectedValueChange"], exportAs: ["siCalendarBody"] }, { kind: "pipe", type: DatePipe, name: "date" }] });
|
|
1987
2045
|
}
|
|
1988
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2046
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiYearSelectionComponent, decorators: [{
|
|
1989
2047
|
type: Component,
|
|
1990
|
-
args: [{ selector: 'si-year-selection', imports: [SiCalendarDirectionButtonComponent, SiCalendarBodyComponent, DatePipe],
|
|
2048
|
+
args: [{ selector: 'si-year-selection', imports: [SiCalendarDirectionButtonComponent, SiCalendarBodyComponent, DatePipe], host: {
|
|
1991
2049
|
class: 'd-flex flex-column gap-6'
|
|
1992
2050
|
}, template: "<div class=\"header\">\n <si-calendar-direction-button\n direction=\"left\"\n [ariaLabel]=\"previousLabel()\"\n [disabled]=\"isPreviousButtonDisabled()\"\n (clicked)=\"changeVisibleYearRange(-1)\"\n />\n <span class=\"year-range-label flex-fill mx-4 si-h4 text-secondary calendar-button\">\n {{ fromYear() | date: 'yyyy' }} - {{ toYear() | date: 'yyyy' }}\n </span>\n <si-calendar-direction-button\n direction=\"right\"\n [ariaLabel]=\"nextLabel()\"\n [disabled]=\"isNextButtonDisabled()\"\n (clicked)=\"changeVisibleYearRange(1)\"\n />\n</div>\n<div class=\"calendar-table\">\n <table class=\"px-9\" role=\"grid\">\n <tbody\n si-calendar-body\n [focusedDate]=\"focusedDate()\"\n [compareAdapter]=\"compareAdapter\"\n [startDate]=\"startDate()\"\n [endDate]=\"endDate()\"\n [enableRangeSelection]=\"isRangeSelection()\"\n [previewRange]=\"previewRange()\"\n [rows]=\"yearCells\"\n (selectedValueChange)=\"emitSelectedValue($event)\"\n (keydown)=\"calendarBodyKeyDown($event)\"\n >\n </tbody>\n </table>\n</div>\n<div class=\"footer\"></div>\n" }]
|
|
1993
2051
|
}], propDecorators: { focusedDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusedDate", required: true }] }, { type: i0.Output, args: ["focusedDateChange"] }], yearRangeChange: [{ type: i0.Output, args: ["yearRangeChange"] }], triggerEsc: [{
|
|
@@ -2010,7 +2068,8 @@ class SiTimepickerComponent {
|
|
|
2010
2068
|
* `__si-timepicker-${SiTimepickerComponent.idCounter++}`
|
|
2011
2069
|
* ```
|
|
2012
2070
|
*/
|
|
2013
|
-
id = input(`__si-timepicker-${SiTimepickerComponent.idCounter++}`,
|
|
2071
|
+
id = input(`__si-timepicker-${SiTimepickerComponent.idCounter++}`, /* @ts-ignore */
|
|
2072
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
2014
2073
|
labelledby = inject(new HostAttributeToken('aria-labelledby'), {
|
|
2015
2074
|
optional: true
|
|
2016
2075
|
}) ?? `${this.id()}-label`;
|
|
@@ -2020,146 +2079,165 @@ class SiTimepickerComponent {
|
|
|
2020
2079
|
* @defaultValue false
|
|
2021
2080
|
*/
|
|
2022
2081
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
2023
|
-
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : {}), alias: 'disabled' });
|
|
2082
|
+
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : /* istanbul ignore next */ {}), alias: 'disabled' });
|
|
2024
2083
|
/**
|
|
2025
2084
|
* Visible label for the hours input.
|
|
2026
2085
|
*
|
|
2027
2086
|
* @defaultValue 'hh'
|
|
2028
2087
|
*/
|
|
2029
|
-
hoursLabel = input('hh',
|
|
2088
|
+
hoursLabel = input('hh', /* @ts-ignore */
|
|
2089
|
+
...(ngDevMode ? [{ debugName: "hoursLabel" }] : /* istanbul ignore next */ []));
|
|
2030
2090
|
/**
|
|
2031
2091
|
* Visible label for the minutes input.
|
|
2032
2092
|
*
|
|
2033
2093
|
* @defaultValue 'mm'
|
|
2034
2094
|
*/
|
|
2035
|
-
minutesLabel = input('mm',
|
|
2095
|
+
minutesLabel = input('mm', /* @ts-ignore */
|
|
2096
|
+
...(ngDevMode ? [{ debugName: "minutesLabel" }] : /* istanbul ignore next */ []));
|
|
2036
2097
|
/**
|
|
2037
2098
|
* Visible label for the seconds input.
|
|
2038
2099
|
*
|
|
2039
2100
|
* @defaultValue 'ss'
|
|
2040
2101
|
*/
|
|
2041
|
-
secondsLabel = input('ss',
|
|
2102
|
+
secondsLabel = input('ss', /* @ts-ignore */
|
|
2103
|
+
...(ngDevMode ? [{ debugName: "secondsLabel" }] : /* istanbul ignore next */ []));
|
|
2042
2104
|
/**
|
|
2043
2105
|
* Visible label for the milliseconds input.
|
|
2044
2106
|
*
|
|
2045
2107
|
* @defaultValue 'ms'
|
|
2046
2108
|
*/
|
|
2047
|
-
millisecondsLabel = input('ms',
|
|
2109
|
+
millisecondsLabel = input('ms', /* @ts-ignore */
|
|
2110
|
+
...(ngDevMode ? [{ debugName: "millisecondsLabel" }] : /* istanbul ignore next */ []));
|
|
2048
2111
|
/**
|
|
2049
2112
|
* Hide the labels of the input fields.
|
|
2050
2113
|
* @defaultValue false
|
|
2051
2114
|
*/
|
|
2052
|
-
hideLabels = input(false, { ...(ngDevMode ? { debugName: "hideLabels" } : {}), transform: booleanAttribute });
|
|
2115
|
+
hideLabels = input(false, { ...(ngDevMode ? { debugName: "hideLabels" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
2053
2116
|
/**
|
|
2054
2117
|
* @defaultValue
|
|
2055
2118
|
* ```
|
|
2056
2119
|
* t(() => $localize`:@@SI_DATEPICKER.HOURS:Hours`)
|
|
2057
2120
|
* ```
|
|
2058
2121
|
*/
|
|
2059
|
-
hoursAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.HOURS:Hours`),
|
|
2122
|
+
hoursAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.HOURS:Hours`), /* @ts-ignore */
|
|
2123
|
+
...(ngDevMode ? [{ debugName: "hoursAriaLabel" }] : /* istanbul ignore next */ []));
|
|
2060
2124
|
/**
|
|
2061
2125
|
* @defaultValue
|
|
2062
2126
|
* ```
|
|
2063
2127
|
* t(() => $localize`:@@SI_DATEPICKER.MINUTES:Minutes`)
|
|
2064
2128
|
* ```
|
|
2065
2129
|
*/
|
|
2066
|
-
minutesAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.MINUTES:Minutes`),
|
|
2130
|
+
minutesAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.MINUTES:Minutes`), /* @ts-ignore */
|
|
2131
|
+
...(ngDevMode ? [{ debugName: "minutesAriaLabel" }] : /* istanbul ignore next */ []));
|
|
2067
2132
|
/**
|
|
2068
2133
|
* @defaultValue
|
|
2069
2134
|
* ```
|
|
2070
2135
|
* t(() => $localize`:@@SI_DATEPICKER.SECONDS:Seconds`)
|
|
2071
2136
|
* ```
|
|
2072
2137
|
*/
|
|
2073
|
-
secondsAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.SECONDS:Seconds`),
|
|
2138
|
+
secondsAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.SECONDS:Seconds`), /* @ts-ignore */
|
|
2139
|
+
...(ngDevMode ? [{ debugName: "secondsAriaLabel" }] : /* istanbul ignore next */ []));
|
|
2074
2140
|
/**
|
|
2075
2141
|
* @defaultValue
|
|
2076
2142
|
* ```
|
|
2077
2143
|
* t(() => $localize`:@@SI_DATEPICKER.MILLISECONDS:Milliseconds`)
|
|
2078
2144
|
* ```
|
|
2079
2145
|
*/
|
|
2080
|
-
millisecondsAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.MILLISECONDS:Milliseconds`),
|
|
2146
|
+
millisecondsAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.MILLISECONDS:Milliseconds`), /* @ts-ignore */
|
|
2147
|
+
...(ngDevMode ? [{ debugName: "millisecondsAriaLabel" }] : /* istanbul ignore next */ []));
|
|
2081
2148
|
/**
|
|
2082
2149
|
* Placeholder for the hours input.
|
|
2083
2150
|
*
|
|
2084
2151
|
* @defaultValue 'hh'
|
|
2085
2152
|
*/
|
|
2086
|
-
hoursPlaceholder = input('hh',
|
|
2153
|
+
hoursPlaceholder = input('hh', /* @ts-ignore */
|
|
2154
|
+
...(ngDevMode ? [{ debugName: "hoursPlaceholder" }] : /* istanbul ignore next */ []));
|
|
2087
2155
|
/**
|
|
2088
2156
|
* Placeholder for the minutes input.
|
|
2089
2157
|
*
|
|
2090
2158
|
* @defaultValue 'mm'
|
|
2091
2159
|
*/
|
|
2092
|
-
minutesPlaceholder = input('mm',
|
|
2160
|
+
minutesPlaceholder = input('mm', /* @ts-ignore */
|
|
2161
|
+
...(ngDevMode ? [{ debugName: "minutesPlaceholder" }] : /* istanbul ignore next */ []));
|
|
2093
2162
|
/**
|
|
2094
2163
|
* Placeholder for the seconds input.
|
|
2095
2164
|
*
|
|
2096
2165
|
* @defaultValue 'ss'
|
|
2097
2166
|
*/
|
|
2098
|
-
secondsPlaceholder = input('ss',
|
|
2167
|
+
secondsPlaceholder = input('ss', /* @ts-ignore */
|
|
2168
|
+
...(ngDevMode ? [{ debugName: "secondsPlaceholder" }] : /* istanbul ignore next */ []));
|
|
2099
2169
|
/**
|
|
2100
2170
|
* Placeholder for the milliseconds input.
|
|
2101
2171
|
*
|
|
2102
2172
|
* @defaultValue 'ms'
|
|
2103
2173
|
*/
|
|
2104
|
-
millisecondsPlaceholder = input('ms',
|
|
2174
|
+
millisecondsPlaceholder = input('ms', /* @ts-ignore */
|
|
2175
|
+
...(ngDevMode ? [{ debugName: "millisecondsPlaceholder" }] : /* istanbul ignore next */ []));
|
|
2105
2176
|
/** Custom labels for the AM and PM options. */
|
|
2106
|
-
meridians = input(
|
|
2177
|
+
meridians = input(/* @ts-ignore */
|
|
2178
|
+
...(ngDevMode ? [undefined, { debugName: "meridians" }] : /* istanbul ignore next */ []));
|
|
2107
2179
|
/**
|
|
2108
2180
|
* Visible label for the AM/PM selector.
|
|
2109
2181
|
*
|
|
2110
2182
|
* @defaultValue 'am/pm'
|
|
2111
2183
|
*/
|
|
2112
|
-
meridiansLabel = input('am/pm',
|
|
2184
|
+
meridiansLabel = input('am/pm', /* @ts-ignore */
|
|
2185
|
+
...(ngDevMode ? [{ debugName: "meridiansLabel" }] : /* istanbul ignore next */ []));
|
|
2113
2186
|
/**
|
|
2114
2187
|
* @defaultValue
|
|
2115
2188
|
* ```
|
|
2116
2189
|
* t(() => $localize`:@@SI_DATEPICKER.PERIOD:Period`)
|
|
2117
2190
|
* ```
|
|
2118
2191
|
*/
|
|
2119
|
-
meridiansAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.PERIOD:Period`),
|
|
2192
|
+
meridiansAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.PERIOD:Period`), /* @ts-ignore */
|
|
2193
|
+
...(ngDevMode ? [{ debugName: "meridiansAriaLabel" }] : /* istanbul ignore next */ []));
|
|
2120
2194
|
/**
|
|
2121
2195
|
* Whether the minutes input is displayed.
|
|
2122
2196
|
*
|
|
2123
2197
|
* @defaultValue true
|
|
2124
2198
|
*/
|
|
2125
|
-
showMinutes = input(true, { ...(ngDevMode ? { debugName: "showMinutes" } : {}), transform: booleanAttribute });
|
|
2199
|
+
showMinutes = input(true, { ...(ngDevMode ? { debugName: "showMinutes" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
2126
2200
|
/**
|
|
2127
2201
|
* Whether the seconds input is displayed.
|
|
2128
2202
|
*
|
|
2129
2203
|
* @defaultValue false
|
|
2130
2204
|
*/
|
|
2131
|
-
showSeconds = input(false, { ...(ngDevMode ? { debugName: "showSeconds" } : {}), transform: booleanAttribute });
|
|
2205
|
+
showSeconds = input(false, { ...(ngDevMode ? { debugName: "showSeconds" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
2132
2206
|
/**
|
|
2133
2207
|
* Whether the milliseconds input is displayed.
|
|
2134
2208
|
*
|
|
2135
2209
|
* @defaultValue false
|
|
2136
2210
|
*/
|
|
2137
|
-
showMilliseconds = input(false, { ...(ngDevMode ? { debugName: "showMilliseconds" } : {}), transform: booleanAttribute });
|
|
2211
|
+
showMilliseconds = input(false, { ...(ngDevMode ? { debugName: "showMilliseconds" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
2138
2212
|
/**
|
|
2139
2213
|
* Show time in 12-hour period including the select to toggle between AM/PM.
|
|
2140
2214
|
*/
|
|
2141
|
-
showMeridian = input(
|
|
2215
|
+
showMeridian = input(/* @ts-ignore */
|
|
2216
|
+
...(ngDevMode ? [undefined, { debugName: "showMeridian" }] : /* istanbul ignore next */ []));
|
|
2142
2217
|
/**
|
|
2143
2218
|
* A minimum time limit. The date part of the date object will be ignored.
|
|
2144
2219
|
*/
|
|
2145
|
-
min = input(
|
|
2220
|
+
min = input(/* @ts-ignore */
|
|
2221
|
+
...(ngDevMode ? [undefined, { debugName: "min" }] : /* istanbul ignore next */ []));
|
|
2146
2222
|
/**
|
|
2147
2223
|
* A maximum time limit. The date part of the date object will be ignored.
|
|
2148
2224
|
*/
|
|
2149
|
-
max = input(
|
|
2225
|
+
max = input(/* @ts-ignore */
|
|
2226
|
+
...(ngDevMode ? [undefined, { debugName: "max" }] : /* istanbul ignore next */ []));
|
|
2150
2227
|
/**
|
|
2151
2228
|
* Whether the time inputs are read-only.
|
|
2152
2229
|
*
|
|
2153
2230
|
* @defaultValue false
|
|
2154
2231
|
*/
|
|
2155
|
-
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : {}), transform: booleanAttribute });
|
|
2232
|
+
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
2156
2233
|
/** Emits whether the entered time components form a valid time. */
|
|
2157
2234
|
isValid = output();
|
|
2158
2235
|
/** Emits the selected meridian when it changes. */
|
|
2159
2236
|
meridianChange = output();
|
|
2160
2237
|
/** Emits when the user presses Enter in the final time input. */
|
|
2161
2238
|
inputCompleted = output();
|
|
2162
|
-
inputParts = viewChildren('inputPart',
|
|
2239
|
+
inputParts = viewChildren('inputPart', /* @ts-ignore */
|
|
2240
|
+
...(ngDevMode ? [{ debugName: "inputParts" }] : /* istanbul ignore next */ []));
|
|
2163
2241
|
/**
|
|
2164
2242
|
* This ID will be bound to the `aria-describedby` attribute of the timepicker.
|
|
2165
2243
|
* Use this to reference the element containing the error message(s) for the timepicker.
|
|
@@ -2170,17 +2248,22 @@ class SiTimepickerComponent {
|
|
|
2170
2248
|
* `${this.id()}-errormessage`
|
|
2171
2249
|
* ```
|
|
2172
2250
|
*/
|
|
2173
|
-
errormessageId = input(`${this.id()}-errormessage`,
|
|
2251
|
+
errormessageId = input(`${this.id()}-errormessage`, /* @ts-ignore */
|
|
2252
|
+
...(ngDevMode ? [{ debugName: "errormessageId" }] : /* istanbul ignore next */ []));
|
|
2174
2253
|
onChange = () => { };
|
|
2175
2254
|
onTouched = () => { };
|
|
2176
2255
|
// The following are the time values for the ui.
|
|
2177
2256
|
periods = computed(() => {
|
|
2178
2257
|
const meridians = this.meridians();
|
|
2179
2258
|
return meridians?.length ? meridians : this.periodDefaults;
|
|
2180
|
-
},
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2259
|
+
}, /* @ts-ignore */
|
|
2260
|
+
...(ngDevMode ? [{ debugName: "periods" }] : /* istanbul ignore next */ []));
|
|
2261
|
+
use12HourClock = computed(() => this.showMeridian() ?? getLocaleTimeFormat(this.locale, FormatWidth.Full).includes('a'), /* @ts-ignore */
|
|
2262
|
+
...(ngDevMode ? [{ debugName: "use12HourClock" }] : /* istanbul ignore next */ []));
|
|
2263
|
+
disabled = computed(() => this.disabledInput() || this.disabledNgControl(), /* @ts-ignore */
|
|
2264
|
+
...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
|
|
2265
|
+
meridian = signal('', /* @ts-ignore */
|
|
2266
|
+
...(ngDevMode ? [{ debugName: "meridian" }] : /* istanbul ignore next */ []));
|
|
2184
2267
|
units = computed(() => {
|
|
2185
2268
|
const config = [
|
|
2186
2269
|
{
|
|
@@ -2224,7 +2307,8 @@ class SiTimepickerComponent {
|
|
|
2224
2307
|
});
|
|
2225
2308
|
}
|
|
2226
2309
|
return config;
|
|
2227
|
-
},
|
|
2310
|
+
}, /* @ts-ignore */
|
|
2311
|
+
...(ngDevMode ? [{ debugName: "units" }] : /* istanbul ignore next */ []));
|
|
2228
2312
|
/* Input fields state */
|
|
2229
2313
|
timeControls = this.formBuilder.group({
|
|
2230
2314
|
hours: this.formBuilder.nonNullable.control('', [this.validateTime('hours')]),
|
|
@@ -2243,7 +2327,8 @@ class SiTimepickerComponent {
|
|
|
2243
2327
|
}
|
|
2244
2328
|
return false;
|
|
2245
2329
|
}
|
|
2246
|
-
disabledNgControl = signal(false,
|
|
2330
|
+
disabledNgControl = signal(false, /* @ts-ignore */
|
|
2331
|
+
...(ngDevMode ? [{ debugName: "disabledNgControl" }] : /* istanbul ignore next */ []));
|
|
2247
2332
|
/**
|
|
2248
2333
|
* Holds the time as date object that is presented by this control.
|
|
2249
2334
|
*/
|
|
@@ -2596,8 +2681,8 @@ class SiTimepickerComponent {
|
|
|
2596
2681
|
return null;
|
|
2597
2682
|
};
|
|
2598
2683
|
}
|
|
2599
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2600
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2684
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiTimepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2685
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiTimepickerComponent, isStandalone: true, selector: "si-timepicker", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, hoursLabel: { classPropertyName: "hoursLabel", publicName: "hoursLabel", isSignal: true, isRequired: false, transformFunction: null }, minutesLabel: { classPropertyName: "minutesLabel", publicName: "minutesLabel", isSignal: true, isRequired: false, transformFunction: null }, secondsLabel: { classPropertyName: "secondsLabel", publicName: "secondsLabel", isSignal: true, isRequired: false, transformFunction: null }, millisecondsLabel: { classPropertyName: "millisecondsLabel", publicName: "millisecondsLabel", isSignal: true, isRequired: false, transformFunction: null }, hideLabels: { classPropertyName: "hideLabels", publicName: "hideLabels", isSignal: true, isRequired: false, transformFunction: null }, hoursAriaLabel: { classPropertyName: "hoursAriaLabel", publicName: "hoursAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, minutesAriaLabel: { classPropertyName: "minutesAriaLabel", publicName: "minutesAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, secondsAriaLabel: { classPropertyName: "secondsAriaLabel", publicName: "secondsAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, millisecondsAriaLabel: { classPropertyName: "millisecondsAriaLabel", publicName: "millisecondsAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, hoursPlaceholder: { classPropertyName: "hoursPlaceholder", publicName: "hoursPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, minutesPlaceholder: { classPropertyName: "minutesPlaceholder", publicName: "minutesPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, secondsPlaceholder: { classPropertyName: "secondsPlaceholder", publicName: "secondsPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, millisecondsPlaceholder: { classPropertyName: "millisecondsPlaceholder", publicName: "millisecondsPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, meridians: { classPropertyName: "meridians", publicName: "meridians", isSignal: true, isRequired: false, transformFunction: null }, meridiansLabel: { classPropertyName: "meridiansLabel", publicName: "meridiansLabel", isSignal: true, isRequired: false, transformFunction: null }, meridiansAriaLabel: { classPropertyName: "meridiansAriaLabel", publicName: "meridiansAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, showMinutes: { classPropertyName: "showMinutes", publicName: "showMinutes", isSignal: true, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: true, isRequired: false, transformFunction: null }, showMilliseconds: { classPropertyName: "showMilliseconds", publicName: "showMilliseconds", isSignal: true, isRequired: false, transformFunction: null }, showMeridian: { classPropertyName: "showMeridian", publicName: "showMeridian", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, errormessageId: { classPropertyName: "errormessageId", publicName: "errormessageId", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isValid: "isValid", meridianChange: "meridianChange", inputCompleted: "inputCompleted" }, host: { attributes: { "role": "group" }, properties: { "class.readonly": "readonly()", "attr.aria-labelledby": "labelledby" }, classAttribute: "form-custom-control" }, providers: [
|
|
2601
2686
|
{
|
|
2602
2687
|
provide: NG_VALUE_ACCESSOR,
|
|
2603
2688
|
useExisting: SiTimepickerComponent,
|
|
@@ -2612,9 +2697,9 @@ class SiTimepickerComponent {
|
|
|
2612
2697
|
provide: SI_FORM_ITEM_CONTROL,
|
|
2613
2698
|
useExisting: SiTimepickerComponent
|
|
2614
2699
|
}
|
|
2615
|
-
], viewQueries: [{ propertyName: "inputParts", predicate: ["inputPart"], descendants: true, isSignal: true }], ngImport: i0, template: "<div\n class=\"d-flex flex-row flex-wrap\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"focusChange($event)\"\n>\n @for (config of units(); track $index) {\n @if (!$first) {\n <ng-container *ngTemplateOutlet=\"separator; context: { separator: config.separator }\" />\n }\n <label>\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (config.label | translate) || ' ' }}</span>\n }\n <input\n #inputPart\n autocomplete=\"off\"\n class=\"form-control hide-feedback-icon\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.aria-label]=\"config.ariaLabel | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [attr.maxlength]=\"config.maxLength\"\n [formControl]=\"timeControls.controls[config.name]\"\n [name]=\"config.name\"\n [placeholder]=\"config.placeholder\"\n [readonly]=\"readonly()\"\n (blur)=\"updateField(config.name, toHtmlInputElement($event.target).value)\"\n (keydown)=\"handleKeyPressEvent($event)\"\n />\n </label>\n }\n @if (use12HourClock()) {\n <label class=\"ms-2\">\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (meridiansLabel() | translate) || ' ' }}</span>\n }\n <select\n #inputPart\n class=\"form-control\"\n [attr.aria-label]=\"meridiansAriaLabel() | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [class.readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (change)=\"toggleMeridian()\"\n (keydown)=\"handleKeyPressEvent($event)\"\n >\n <option value=\"am\" [selected]=\"meridian() === 'am'\">{{ periods()[0] }}</option>\n <option value=\"pm\" [selected]=\"meridian() === 'pm'\">{{ periods()[1] }}</option>\n </select>\n </label>\n }\n</div>\n\n<ng-template #separator let-separator=\"separator\">\n <div class=\"align-self-end pb-3 px-1\" aria-hidden=\"true\">{{ separator ? separator : ':' }}</div>\n</ng-template>\n", styles: [":host{display:block}:host.ng-touched.ng-invalid:not(:has(.ng-touched.ng-invalid)) .form-control{--border-color: var(--
|
|
2700
|
+
], viewQueries: [{ propertyName: "inputParts", predicate: ["inputPart"], descendants: true, isSignal: true }], ngImport: i0, template: "<div\n class=\"d-flex flex-row flex-wrap\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"focusChange($event)\"\n>\n @for (config of units(); track $index) {\n @if (!$first) {\n <ng-container *ngTemplateOutlet=\"separator; context: { separator: config.separator }\" />\n }\n <label>\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (config.label | translate) || ' ' }}</span>\n }\n <input\n #inputPart\n autocomplete=\"off\"\n class=\"form-control hide-feedback-icon\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.aria-label]=\"config.ariaLabel | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [attr.maxlength]=\"config.maxLength\"\n [formControl]=\"timeControls.controls[config.name]\"\n [name]=\"config.name\"\n [placeholder]=\"config.placeholder\"\n [readonly]=\"readonly()\"\n (blur)=\"updateField(config.name, toHtmlInputElement($event.target).value)\"\n (keydown)=\"handleKeyPressEvent($event)\"\n />\n </label>\n }\n @if (use12HourClock()) {\n <label class=\"ms-2\">\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (meridiansLabel() | translate) || ' ' }}</span>\n }\n <select\n #inputPart\n class=\"form-control\"\n [attr.aria-label]=\"meridiansAriaLabel() | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [class.readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (change)=\"toggleMeridian()\"\n (keydown)=\"handleKeyPressEvent($event)\"\n >\n <option value=\"am\" [selected]=\"meridian() === 'am'\">{{ periods()[0] }}</option>\n <option value=\"pm\" [selected]=\"meridian() === 'pm'\">{{ periods()[1] }}</option>\n </select>\n </label>\n }\n</div>\n\n<ng-template #separator let-separator=\"separator\">\n <div class=\"align-self-end pb-3 px-1\" aria-hidden=\"true\">{{ separator ? separator : ':' }}</div>\n</ng-template>\n", styles: [":host{display:block}:host.ng-touched.ng-invalid:not(:has(.ng-touched.ng-invalid)) .form-control{--border-color: var(--si-sys-border-danger)}:host input{inline-size:calc(3ch + 2 * var(--si-sys-sizing-spacing-x-40))}\n"], dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
|
|
2616
2701
|
}
|
|
2617
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2702
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiTimepickerComponent, decorators: [{
|
|
2618
2703
|
type: Component,
|
|
2619
2704
|
args: [{ selector: 'si-timepicker', imports: [A11yModule, NgTemplateOutlet, ReactiveFormsModule, SiTranslatePipe], providers: [
|
|
2620
2705
|
{
|
|
@@ -2631,12 +2716,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
2631
2716
|
provide: SI_FORM_ITEM_CONTROL,
|
|
2632
2717
|
useExisting: SiTimepickerComponent
|
|
2633
2718
|
}
|
|
2634
|
-
],
|
|
2719
|
+
], host: {
|
|
2635
2720
|
role: 'group',
|
|
2636
2721
|
class: 'form-custom-control',
|
|
2637
2722
|
'[class.readonly]': 'readonly()',
|
|
2638
2723
|
'[attr.aria-labelledby]': 'labelledby'
|
|
2639
|
-
}, template: "<div\n class=\"d-flex flex-row flex-wrap\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"focusChange($event)\"\n>\n @for (config of units(); track $index) {\n @if (!$first) {\n <ng-container *ngTemplateOutlet=\"separator; context: { separator: config.separator }\" />\n }\n <label>\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (config.label | translate) || ' ' }}</span>\n }\n <input\n #inputPart\n autocomplete=\"off\"\n class=\"form-control hide-feedback-icon\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.aria-label]=\"config.ariaLabel | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [attr.maxlength]=\"config.maxLength\"\n [formControl]=\"timeControls.controls[config.name]\"\n [name]=\"config.name\"\n [placeholder]=\"config.placeholder\"\n [readonly]=\"readonly()\"\n (blur)=\"updateField(config.name, toHtmlInputElement($event.target).value)\"\n (keydown)=\"handleKeyPressEvent($event)\"\n />\n </label>\n }\n @if (use12HourClock()) {\n <label class=\"ms-2\">\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (meridiansLabel() | translate) || ' ' }}</span>\n }\n <select\n #inputPart\n class=\"form-control\"\n [attr.aria-label]=\"meridiansAriaLabel() | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [class.readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (change)=\"toggleMeridian()\"\n (keydown)=\"handleKeyPressEvent($event)\"\n >\n <option value=\"am\" [selected]=\"meridian() === 'am'\">{{ periods()[0] }}</option>\n <option value=\"pm\" [selected]=\"meridian() === 'pm'\">{{ periods()[1] }}</option>\n </select>\n </label>\n }\n</div>\n\n<ng-template #separator let-separator=\"separator\">\n <div class=\"align-self-end pb-3 px-1\" aria-hidden=\"true\">{{ separator ? separator : ':' }}</div>\n</ng-template>\n", styles: [":host{display:block}:host.ng-touched.ng-invalid:not(:has(.ng-touched.ng-invalid)) .form-control{--border-color: var(--
|
|
2724
|
+
}, template: "<div\n class=\"d-flex flex-row flex-wrap\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"focusChange($event)\"\n>\n @for (config of units(); track $index) {\n @if (!$first) {\n <ng-container *ngTemplateOutlet=\"separator; context: { separator: config.separator }\" />\n }\n <label>\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (config.label | translate) || ' ' }}</span>\n }\n <input\n #inputPart\n autocomplete=\"off\"\n class=\"form-control hide-feedback-icon\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.aria-label]=\"config.ariaLabel | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [attr.maxlength]=\"config.maxLength\"\n [formControl]=\"timeControls.controls[config.name]\"\n [name]=\"config.name\"\n [placeholder]=\"config.placeholder\"\n [readonly]=\"readonly()\"\n (blur)=\"updateField(config.name, toHtmlInputElement($event.target).value)\"\n (keydown)=\"handleKeyPressEvent($event)\"\n />\n </label>\n }\n @if (use12HourClock()) {\n <label class=\"ms-2\">\n @if (!hideLabels()) {\n <span class=\"form-label\">{{ (meridiansLabel() | translate) || ' ' }}</span>\n }\n <select\n #inputPart\n class=\"form-control\"\n [attr.aria-label]=\"meridiansAriaLabel() | translate\"\n [attr.aria-describedby]=\"errormessageId()\"\n [class.readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (change)=\"toggleMeridian()\"\n (keydown)=\"handleKeyPressEvent($event)\"\n >\n <option value=\"am\" [selected]=\"meridian() === 'am'\">{{ periods()[0] }}</option>\n <option value=\"pm\" [selected]=\"meridian() === 'pm'\">{{ periods()[1] }}</option>\n </select>\n </label>\n }\n</div>\n\n<ng-template #separator let-separator=\"separator\">\n <div class=\"align-self-end pb-3 px-1\" aria-hidden=\"true\">{{ separator ? separator : ':' }}</div>\n</ng-template>\n", styles: [":host{display:block}:host.ng-touched.ng-invalid:not(:has(.ng-touched.ng-invalid)) .form-control{--border-color: var(--si-sys-border-danger)}:host input{inline-size:calc(3ch + 2 * var(--si-sys-sizing-spacing-x-40))}\n"] }]
|
|
2640
2725
|
}], ctorParameters: () => [], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], hoursLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "hoursLabel", required: false }] }], minutesLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "minutesLabel", required: false }] }], secondsLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "secondsLabel", required: false }] }], millisecondsLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "millisecondsLabel", required: false }] }], hideLabels: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideLabels", required: false }] }], hoursAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "hoursAriaLabel", required: false }] }], minutesAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "minutesAriaLabel", required: false }] }], secondsAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "secondsAriaLabel", required: false }] }], millisecondsAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "millisecondsAriaLabel", required: false }] }], hoursPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "hoursPlaceholder", required: false }] }], minutesPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "minutesPlaceholder", required: false }] }], secondsPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "secondsPlaceholder", required: false }] }], millisecondsPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "millisecondsPlaceholder", required: false }] }], meridians: [{ type: i0.Input, args: [{ isSignal: true, alias: "meridians", required: false }] }], meridiansLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "meridiansLabel", required: false }] }], meridiansAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "meridiansAriaLabel", required: false }] }], showMinutes: [{ type: i0.Input, args: [{ isSignal: true, alias: "showMinutes", required: false }] }], showSeconds: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSeconds", required: false }] }], showMilliseconds: [{ type: i0.Input, args: [{ isSignal: true, alias: "showMilliseconds", required: false }] }], showMeridian: [{ type: i0.Input, args: [{ isSignal: true, alias: "showMeridian", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], isValid: [{ type: i0.Output, args: ["isValid"] }], meridianChange: [{ type: i0.Output, args: ["meridianChange"] }], inputCompleted: [{ type: i0.Output, args: ["inputCompleted"] }], inputParts: [{ type: i0.ViewChildren, args: ['inputPart', { isSignal: true }] }], errormessageId: [{ type: i0.Input, args: [{ isSignal: true, alias: "errormessageId", required: false }] }] } });
|
|
2641
2726
|
|
|
2642
2727
|
/**
|
|
@@ -2650,35 +2735,41 @@ class SiDatepickerComponent {
|
|
|
2650
2735
|
* The date which is currently focused
|
|
2651
2736
|
* Compare to the selected date or range the calendar requires to have one element to focus.
|
|
2652
2737
|
*/
|
|
2653
|
-
focusedDate = model(
|
|
2738
|
+
focusedDate = model(/* @ts-ignore */
|
|
2739
|
+
...(ngDevMode ? [undefined, { debugName: "focusedDate" }] : /* istanbul ignore next */ []));
|
|
2654
2740
|
/**
|
|
2655
2741
|
* The selected date of the datepicker. Use for
|
|
2656
2742
|
* initialization and for bidirectional binding.
|
|
2657
2743
|
*/
|
|
2658
|
-
date = model(
|
|
2744
|
+
date = model(/* @ts-ignore */
|
|
2745
|
+
...(ngDevMode ? [undefined, { debugName: "date" }] : /* istanbul ignore next */ []));
|
|
2659
2746
|
/**
|
|
2660
2747
|
* The selected date range of the datepicker. Use for
|
|
2661
2748
|
* initialization and for bidirectional binding.
|
|
2662
2749
|
*/
|
|
2663
|
-
dateRange = model(
|
|
2750
|
+
dateRange = model(/* @ts-ignore */
|
|
2751
|
+
...(ngDevMode ? [undefined, { debugName: "dateRange" }] : /* istanbul ignore next */ []));
|
|
2664
2752
|
/**
|
|
2665
2753
|
* Role of this calendar when a date range is displayed across two calendars.
|
|
2666
2754
|
*
|
|
2667
2755
|
* @internal
|
|
2668
2756
|
*/
|
|
2669
|
-
dateRangeRole = input(
|
|
2757
|
+
dateRangeRole = input(/* @ts-ignore */
|
|
2758
|
+
...(ngDevMode ? [undefined, { debugName: "dateRangeRole" }] : /* istanbul ignore next */ []));
|
|
2670
2759
|
/**
|
|
2671
2760
|
* Set initial focus to calendar body.
|
|
2672
2761
|
*
|
|
2673
2762
|
* @defaultValue false
|
|
2674
2763
|
*/
|
|
2675
|
-
initialFocus = input(false,
|
|
2764
|
+
initialFocus = input(false, /* @ts-ignore */
|
|
2765
|
+
...(ngDevMode ? [{ debugName: "initialFocus" }] : /* istanbul ignore next */ []));
|
|
2676
2766
|
/**
|
|
2677
2767
|
* Disabled the optional visible time picker.
|
|
2678
2768
|
*
|
|
2679
2769
|
* @defaultValue false
|
|
2680
2770
|
*/
|
|
2681
|
-
disabledTime = model(false,
|
|
2771
|
+
disabledTime = model(false, /* @ts-ignore */
|
|
2772
|
+
...(ngDevMode ? [{ debugName: "disabledTime" }] : /* istanbul ignore next */ []));
|
|
2682
2773
|
/**
|
|
2683
2774
|
* Object to configure the datepicker.
|
|
2684
2775
|
*
|
|
@@ -2687,7 +2778,8 @@ class SiDatepickerComponent {
|
|
|
2687
2778
|
* {}
|
|
2688
2779
|
* ```
|
|
2689
2780
|
*/
|
|
2690
|
-
config = model({},
|
|
2781
|
+
config = model({}, /* @ts-ignore */
|
|
2782
|
+
...(ngDevMode ? [{ debugName: "config" }] : /* istanbul ignore next */ []));
|
|
2691
2783
|
/**
|
|
2692
2784
|
* Aria label for the previous button. Needed for a11y.
|
|
2693
2785
|
*
|
|
@@ -2696,7 +2788,8 @@ class SiDatepickerComponent {
|
|
|
2696
2788
|
* t(() => $localize`:@@SI_DATEPICKER.PREVIOUS:Previous`)
|
|
2697
2789
|
* ```
|
|
2698
2790
|
*/
|
|
2699
|
-
previousLabel = input(t(() => $localize `:@@SI_DATEPICKER.PREVIOUS:Previous`),
|
|
2791
|
+
previousLabel = input(t(() => $localize `:@@SI_DATEPICKER.PREVIOUS:Previous`), /* @ts-ignore */
|
|
2792
|
+
...(ngDevMode ? [{ debugName: "previousLabel" }] : /* istanbul ignore next */ []));
|
|
2700
2793
|
/**
|
|
2701
2794
|
* Aria label for the next button. Needed for a11y.
|
|
2702
2795
|
*
|
|
@@ -2705,39 +2798,31 @@ class SiDatepickerComponent {
|
|
|
2705
2798
|
* t(() => $localize`:@@SI_DATEPICKER.NEXT:Next`)
|
|
2706
2799
|
* ```
|
|
2707
2800
|
*/
|
|
2708
|
-
nextLabel = input(t(() => $localize `:@@SI_DATEPICKER.NEXT:Next`),
|
|
2801
|
+
nextLabel = input(t(() => $localize `:@@SI_DATEPICKER.NEXT:Next`), /* @ts-ignore */
|
|
2802
|
+
...(ngDevMode ? [{ debugName: "nextLabel" }] : /* istanbul ignore next */ []));
|
|
2709
2803
|
/**
|
|
2710
2804
|
* Aria label for week number column
|
|
2711
2805
|
*
|
|
2712
|
-
* @deprecated Use `calendarWeekLabel` instead.
|
|
2713
2806
|
* @defaultValue
|
|
2714
2807
|
* ```
|
|
2715
2808
|
* t(() => $localize`:@@SI_DATEPICKER.CALENDAR_WEEK_LABEL:Calendar week`)
|
|
2716
2809
|
* ```
|
|
2717
2810
|
*/
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
* Aria label for week number column
|
|
2721
|
-
*
|
|
2722
|
-
* @defaultValue
|
|
2723
|
-
* ```
|
|
2724
|
-
* t(() => $localize`:@@SI_DATEPICKER.CALENDAR_WEEK_LABEL:Calendar week`)
|
|
2725
|
-
* ```
|
|
2726
|
-
*/
|
|
2727
|
-
calendarWeekLabel = input(t(() => $localize `:@@SI_DATEPICKER.CALENDAR_WEEK_LABEL:Calendar week`), ...(ngDevMode ? [{ debugName: "calendarWeekLabel" }] : []));
|
|
2728
|
-
derivedWeekLabel = computed(() => this.calenderWeekLabel() ?? this.calendarWeekLabel(), ...(ngDevMode ? [{ debugName: "derivedWeekLabel" }] : []));
|
|
2811
|
+
calendarWeekLabel = input(t(() => $localize `:@@SI_DATEPICKER.CALENDAR_WEEK_LABEL:Calendar week`), /* @ts-ignore */
|
|
2812
|
+
...(ngDevMode ? [{ debugName: "calendarWeekLabel" }] : /* istanbul ignore next */ []));
|
|
2729
2813
|
/**
|
|
2730
2814
|
* Enable/disable 12H mode in timepicker. Defaults to locale
|
|
2731
2815
|
*
|
|
2732
2816
|
* @defaultValue undefined
|
|
2733
2817
|
*/
|
|
2734
|
-
time12h = input(undefined, { ...(ngDevMode ? { debugName: "time12h" } : {}), transform: booleanAttribute });
|
|
2818
|
+
time12h = input(undefined, { ...(ngDevMode ? { debugName: "time12h" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
2735
2819
|
/**
|
|
2736
2820
|
* Use this to force date range operation to select either start date or end date.
|
|
2737
2821
|
*
|
|
2738
2822
|
* @defaultValue 'START'
|
|
2739
2823
|
*/
|
|
2740
|
-
rangeType = model('START',
|
|
2824
|
+
rangeType = model('START', /* @ts-ignore */
|
|
2825
|
+
...(ngDevMode ? [{ debugName: "rangeType" }] : /* istanbul ignore next */ []));
|
|
2741
2826
|
/**
|
|
2742
2827
|
* Optional input to control the minimum month the datepicker can show and the user can navigate.
|
|
2743
2828
|
* The `minMonth` can be larger than the `minDate` This option enables the usage of multiple
|
|
@@ -2745,7 +2830,8 @@ class SiDatepickerComponent {
|
|
|
2745
2830
|
* shows a earlier month the the more right one.
|
|
2746
2831
|
* @internal
|
|
2747
2832
|
*/
|
|
2748
|
-
minMonth = input(
|
|
2833
|
+
minMonth = input(/* @ts-ignore */
|
|
2834
|
+
...(ngDevMode ? [undefined, { debugName: "minMonth" }] : /* istanbul ignore next */ []));
|
|
2749
2835
|
/**
|
|
2750
2836
|
* Optional input to control the maximum month the datepicker can show and the user can navigate.
|
|
2751
2837
|
* The `maxMonth` can be smaller than the `maxDate` This option enables the usage of multiple
|
|
@@ -2753,23 +2839,27 @@ class SiDatepickerComponent {
|
|
|
2753
2839
|
* shows a earlier month the the more right one.
|
|
2754
2840
|
* @internal
|
|
2755
2841
|
*/
|
|
2756
|
-
maxMonth = input(
|
|
2842
|
+
maxMonth = input(/* @ts-ignore */
|
|
2843
|
+
...(ngDevMode ? [undefined, { debugName: "maxMonth" }] : /* istanbul ignore next */ []));
|
|
2757
2844
|
/**
|
|
2758
2845
|
* Option to hide the time switch.
|
|
2759
2846
|
*
|
|
2760
2847
|
* @defaultValue false
|
|
2761
2848
|
*/
|
|
2762
|
-
hideTimeToggle = input(false,
|
|
2849
|
+
hideTimeToggle = input(false, /* @ts-ignore */
|
|
2850
|
+
...(ngDevMode ? [{ debugName: "hideTimeToggle" }] : /* istanbul ignore next */ []));
|
|
2763
2851
|
/**
|
|
2764
2852
|
* Whether the calendar is hidden while retaining the optional timepicker.
|
|
2765
2853
|
*
|
|
2766
2854
|
* @internal
|
|
2767
2855
|
*/
|
|
2768
|
-
hideCalendar = input(false,
|
|
2856
|
+
hideCalendar = input(false, /* @ts-ignore */
|
|
2857
|
+
...(ngDevMode ? [{ debugName: "hideCalendar" }] : /* istanbul ignore next */ []));
|
|
2769
2858
|
/**
|
|
2770
2859
|
* Optional timepicker label.
|
|
2771
2860
|
*/
|
|
2772
|
-
timepickerLabel = input(
|
|
2861
|
+
timepickerLabel = input(/* @ts-ignore */
|
|
2862
|
+
...(ngDevMode ? [undefined, { debugName: "timepickerLabel" }] : /* istanbul ignore next */ []));
|
|
2773
2863
|
get startDate() {
|
|
2774
2864
|
return this.config().enableDateRange ? this.dateRange()?.start : this.date();
|
|
2775
2865
|
}
|
|
@@ -2792,7 +2882,8 @@ class SiDatepickerComponent {
|
|
|
2792
2882
|
defaultEnableTimeText = t(() => $localize `:@@SI_DATEPICKER.ENABLED_TIME_TEXT:Consider time`);
|
|
2793
2883
|
includeTimeLabel = computed(() => this.disabledTime()
|
|
2794
2884
|
? (this.config().disabledTimeText ?? this.defaultDisabledTimeText)
|
|
2795
|
-
: (this.config().enabledTimeText ?? this.defaultEnableTimeText),
|
|
2885
|
+
: (this.config().enabledTimeText ?? this.defaultEnableTimeText), /* @ts-ignore */
|
|
2886
|
+
...(ngDevMode ? [{ debugName: "includeTimeLabel" }] : /* istanbul ignore next */ []));
|
|
2796
2887
|
get weekStartDay() {
|
|
2797
2888
|
return this.config().weekStartDay ?? this.localeWeekStart;
|
|
2798
2889
|
}
|
|
@@ -2802,7 +2893,8 @@ class SiDatepickerComponent {
|
|
|
2802
2893
|
/**
|
|
2803
2894
|
* The active view
|
|
2804
2895
|
*/
|
|
2805
|
-
view = signal('week',
|
|
2896
|
+
view = signal('week', /* @ts-ignore */
|
|
2897
|
+
...(ngDevMode ? [{ debugName: "view" }] : /* istanbul ignore next */ []));
|
|
2806
2898
|
/**
|
|
2807
2899
|
* Get the current shown view.
|
|
2808
2900
|
*/
|
|
@@ -2815,11 +2907,15 @@ class SiDatepickerComponent {
|
|
|
2815
2907
|
default:
|
|
2816
2908
|
return this.daySelection();
|
|
2817
2909
|
}
|
|
2818
|
-
},
|
|
2819
|
-
|
|
2820
|
-
|
|
2910
|
+
}, /* @ts-ignore */
|
|
2911
|
+
...(ngDevMode ? [{ debugName: "activeView" }] : /* istanbul ignore next */ []));
|
|
2912
|
+
actualFocusedDate = computed(() => this.focusedDate() ?? today(), /* @ts-ignore */
|
|
2913
|
+
...(ngDevMode ? [{ debugName: "actualFocusedDate" }] : /* istanbul ignore next */ []));
|
|
2914
|
+
requireFocus = signal(this.initialFocus(), /* @ts-ignore */
|
|
2915
|
+
...(ngDevMode ? [{ debugName: "requireFocus" }] : /* istanbul ignore next */ []));
|
|
2821
2916
|
/** When the user switch from the year or month view via keyboard selection we force the focus. */
|
|
2822
|
-
forceFocus = computed(() => this.requireFocus() || this.initialFocus(),
|
|
2917
|
+
forceFocus = computed(() => this.requireFocus() || this.initialFocus(), /* @ts-ignore */
|
|
2918
|
+
...(ngDevMode ? [{ debugName: "forceFocus" }] : /* istanbul ignore next */ []));
|
|
2823
2919
|
months = [];
|
|
2824
2920
|
switchId = `__si-datepicker-switch-id-${idCounter++}`;
|
|
2825
2921
|
timepickerId = `__si-datepicker-timepicker-id-${idCounter++}`;
|
|
@@ -2846,16 +2942,20 @@ class SiDatepickerComponent {
|
|
|
2846
2942
|
*/
|
|
2847
2943
|
previousTime;
|
|
2848
2944
|
/** Reference to the current day selection component. Shown when view === 'week' */
|
|
2849
|
-
daySelection = viewChild(SiDaySelectionComponent,
|
|
2945
|
+
daySelection = viewChild(SiDaySelectionComponent, /* @ts-ignore */
|
|
2946
|
+
...(ngDevMode ? [{ debugName: "daySelection" }] : /* istanbul ignore next */ []));
|
|
2850
2947
|
/** Reference to the current month selection component. Shown when view === 'month' */
|
|
2851
|
-
monthSelection = viewChild(SiMonthSelectionComponent,
|
|
2948
|
+
monthSelection = viewChild(SiMonthSelectionComponent, /* @ts-ignore */
|
|
2949
|
+
...(ngDevMode ? [{ debugName: "monthSelection" }] : /* istanbul ignore next */ []));
|
|
2852
2950
|
/** Reference to the current year selection component. Shown when view === 'year' */
|
|
2853
|
-
yearSelection = viewChild(SiYearSelectionComponent,
|
|
2951
|
+
yearSelection = viewChild(SiYearSelectionComponent, /* @ts-ignore */
|
|
2952
|
+
...(ngDevMode ? [{ debugName: "yearSelection" }] : /* istanbul ignore next */ []));
|
|
2854
2953
|
/**
|
|
2855
2954
|
* The cell which which has the mouse hover.
|
|
2856
2955
|
* @internal
|
|
2857
2956
|
*/
|
|
2858
|
-
activeHover = model(
|
|
2957
|
+
activeHover = model(/* @ts-ignore */
|
|
2958
|
+
...(ngDevMode ? [undefined, { debugName: "activeHover" }] : /* istanbul ignore next */ []));
|
|
2859
2959
|
constructor() {
|
|
2860
2960
|
this.initCalendarLabels();
|
|
2861
2961
|
const weekStart = getLocaleFirstDayOfWeek(this.locale);
|
|
@@ -3166,10 +3266,10 @@ class SiDatepickerComponent {
|
|
|
3166
3266
|
onActiveHoverChange(event) {
|
|
3167
3267
|
this.activeHover.set(event);
|
|
3168
3268
|
}
|
|
3169
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3170
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: SiDatepickerComponent, isStandalone: true, selector: "si-datepicker", inputs: { focusedDate: { classPropertyName: "focusedDate", publicName: "focusedDate", isSignal: true, isRequired: false, transformFunction: null }, date: { classPropertyName: "date", publicName: "date", isSignal: true, isRequired: false, transformFunction: null }, dateRange: { classPropertyName: "dateRange", publicName: "dateRange", isSignal: true, isRequired: false, transformFunction: null }, dateRangeRole: { classPropertyName: "dateRangeRole", publicName: "dateRangeRole", isSignal: true, isRequired: false, transformFunction: null }, initialFocus: { classPropertyName: "initialFocus", publicName: "initialFocus", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, previousLabel: { classPropertyName: "previousLabel", publicName: "previousLabel", isSignal: true, isRequired: false, transformFunction: null }, nextLabel: { classPropertyName: "nextLabel", publicName: "nextLabel", isSignal: true, isRequired: false, transformFunction: null }, calenderWeekLabel: { classPropertyName: "calenderWeekLabel", publicName: "calenderWeekLabel", isSignal: true, isRequired: false, transformFunction: null }, calendarWeekLabel: { classPropertyName: "calendarWeekLabel", publicName: "calendarWeekLabel", isSignal: true, isRequired: false, transformFunction: null }, time12h: { classPropertyName: "time12h", publicName: "time12h", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, minMonth: { classPropertyName: "minMonth", publicName: "minMonth", isSignal: true, isRequired: false, transformFunction: null }, maxMonth: { classPropertyName: "maxMonth", publicName: "maxMonth", isSignal: true, isRequired: false, transformFunction: null }, hideTimeToggle: { classPropertyName: "hideTimeToggle", publicName: "hideTimeToggle", isSignal: true, isRequired: false, transformFunction: null }, hideCalendar: { classPropertyName: "hideCalendar", publicName: "hideCalendar", isSignal: true, isRequired: false, transformFunction: null }, timepickerLabel: { classPropertyName: "timepickerLabel", publicName: "timepickerLabel", isSignal: true, isRequired: false, transformFunction: null }, activeHover: { classPropertyName: "activeHover", publicName: "activeHover", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { focusedDate: "focusedDateChange", date: "dateChange", dateRange: "dateRangeChange", disabledTime: "disabledTimeChange", config: "configChange", rangeType: "rangeTypeChange", activeHover: "activeHoverChange" }, viewQueries: [{ propertyName: "daySelection", first: true, predicate: SiDaySelectionComponent, descendants: true, isSignal: true }, { propertyName: "monthSelection", first: true, predicate: SiMonthSelectionComponent, descendants: true, isSignal: true }, { propertyName: "yearSelection", first: true, predicate: SiYearSelectionComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "@if (!hideCalendar()) {\n <div class=\"text-center pb-6 calendar\">\n @switch (view()) {\n @case ('year') {\n <si-year-selection\n [focusedDate]=\"actualFocusedDate()\"\n [startDate]=\"startDate\"\n [endDate]=\"endDate\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [maxMonth]=\"maxMonth()\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n (selectedValueChange)=\"activeYearChange($event)\"\n />\n }\n @case ('month') {\n <si-month-selection\n [startDate]=\"startDate\"\n [endDate]=\"endDate\"\n [months]=\"months\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [maxMonth]=\"maxMonth()\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previewRange]=\"rangeType() === 'END'\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n [activeHover]=\"activeHover()\"\n [focusedDate]=\"actualFocusedDate()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (focusedDateChange)=\"focusedDate.set($event)\"\n (selectedValueChange)=\"activeMonthChange($event)\"\n (viewChange)=\"view.set($event)\"\n />\n }\n @case ('week') {\n <si-day-selection\n [initialFocus]=\"forceFocus()\"\n [startDate]=\"startDate\"\n [endDate]=\"dateRange()?.end\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previewRange]=\"rangeType() === 'END'\"\n [hideWeekNumbers]=\"hideWeekNumbers\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [weekStartDay]=\"weekStartDay\"\n [calendarWeekLabel]=\"derivedWeekLabel()\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n [todayLabel]=\"config().todayText\"\n [activeHover]=\"activeHover()\"\n [focusedDate]=\"actualFocusedDate()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (focusedDateChange)=\"focusedDate.set($event)\"\n (selectedValueChange)=\"selectionChange($event!)\"\n (viewChange)=\"view.set($event)\"\n />\n }\n }\n </div>\n}\n@if (this.config().showTime) {\n <div\n class=\"timepicker-container px-9 pb-6\"\n [class.pt-6]=\"!hideCalendar()\"\n [class.border-top]=\"!hideCalendar()\"\n >\n @if (!config().mandatoryTime && !hideTimeToggle()) {\n <div class=\"mb-5 form-check form-switch\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n role=\"switch\"\n [id]=\"switchId\"\n [checked]=\"!disabledTime()\"\n (change)=\"toggleDisabledTime()\"\n />\n <label class=\"form-check-label\" [for]=\"switchId\">{{\n includeTimeLabel() | translate\n }}</label>\n </div>\n }\n <div class=\"mt-auto\">\n @if (timepickerLabel()) {\n <label class=\"form-label\" [for]=\"timepickerId\">{{ timepickerLabel() | translate }}</label>\n }\n <si-timepicker\n #timePicker\n [id]=\"timepickerId\"\n [formControl]=\"time\"\n [hoursLabel]=\"config().hoursLabel ?? timePicker.hoursLabel()\"\n [minutesLabel]=\"config().minutesLabel ?? timePicker.minutesLabel()\"\n [secondsLabel]=\"config().secondsLabel ?? timePicker.secondsLabel()\"\n [millisecondsLabel]=\"config().millisecondsLabel ?? timePicker.millisecondsLabel()\"\n [hideLabels]=\"config().hideLabels ?? timePicker.hideLabels()\"\n [hoursAriaLabel]=\"config().hoursAriaLabel ?? timePicker.hoursAriaLabel()\"\n [minutesAriaLabel]=\"config().minutesAriaLabel ?? timePicker.minutesAriaLabel()\"\n [secondsAriaLabel]=\"config().secondsAriaLabel ?? timePicker.secondsAriaLabel()\"\n [millisecondsAriaLabel]=\"\n config().millisecondsAriaLabel ?? timePicker.millisecondsAriaLabel()\n \"\n [hoursPlaceholder]=\"config().hoursPlaceholder ?? timePicker.hoursPlaceholder()\"\n [minutesPlaceholder]=\"config().minutesPlaceholder ?? timePicker.minutesPlaceholder()\"\n [secondsPlaceholder]=\"config().secondsPlaceholder ?? timePicker.secondsPlaceholder()\"\n [millisecondsPlaceholder]=\"\n config().millisecondsPlaceholder ?? timePicker.millisecondsPlaceholder()\n \"\n [meridians]=\"config().meridians ?? timePicker.meridians()\"\n [meridiansLabel]=\"config().meridiansLabel ?? timePicker.meridiansLabel()\"\n [meridiansAriaLabel]=\"config().meridiansAriaLabel ?? timePicker.meridiansAriaLabel()\"\n [showMinutes]=\"config().showMinutes ?? true\"\n [showSeconds]=\"config().showSeconds ?? false\"\n [showMilliseconds]=\"config().showMilliseconds ?? false\"\n [showMeridian]=\"time12h()\"\n />\n </div>\n </div>\n}\n", styles: [":host ::ng-deep .year:not(.disabled):not(.selected):hover,:host ::ng-deep .month:not(.disabled):not(.selected):hover,:host ::ng-deep .day:not(.disabled):not(.selected):hover{background:var(--element-base-1-hover);color:var(--element-ui-0)}:host ::ng-deep .year,:host ::ng-deep .month,:host ::ng-deep td,:host ::ng-deep th,:host ::ng-deep .day{block-size:2rem;line-height:2rem}:host ::ng-deep td,:host ::ng-deep th,:host ::ng-deep .day{inline-size:2rem}:host ::ng-deep .year,:host ::ng-deep .month,:host ::ng-deep .day{display:block;margin-inline:auto;position:relative;border:unset;background-color:unset;padding:0;cursor:pointer;border-radius:var(--element-button-radius)}:host{background:var(--element-base-1);border-radius:var(--element-radius-2);display:flex;flex-direction:column}:host ::ng-deep .header,:host ::ng-deep .footer{display:flex;align-items:center;min-block-size:calc(1rem + 16px)}:host ::ng-deep .header{padding-block:12px;padding-inline:32px;border-block-end:1px solid var(--element-ui-4)}:host ::ng-deep .header a{text-decoration:none;cursor:pointer}:host ::ng-deep .footer{margin-block-start:4px}:host ::ng-deep .calendar-table{min-block-size:calc(14rem + 24px)}:host ::ng-deep table{border-collapse:separate;border-spacing:0 3px;table-layout:fixed;margin-block-end:-3px}:host ::ng-deep .day.selected{background:var(--element-ui-0);color:var(--element-base-1)}:host ::ng-deep .month{inline-size:8rem}:host ::ng-deep .month.selected{background:var(--element-ui-0);color:var(--element-base-1)}:host ::ng-deep .year{inline-size:5.3333333333rem}:host ::ng-deep .year.selected{background:var(--element-ui-0);color:var(--element-base-1)}:host ::ng-deep td,:host ::ng-deep th{padding:0;font-weight:400}:host ::ng-deep .week-num,:host ::ng-deep th{font-size:.75rem;color:var(--element-text-secondary);inline-size:2rem;cursor:default}:host ::ng-deep .today.selected:before{border-color:var(--element-ui-5)}:host ::ng-deep .today:before{position:absolute;content:\"\";inset:1px;border:1px solid var(--element-ui-1);border-radius:var(--element-radius-2);display:inline-block}:host ::ng-deep .disabled{color:var(--element-text-disabled);font-weight:400!important;cursor:default!important}:host ::ng-deep .range{background-color:var(--element-ui-4)}:host ::ng-deep .range:hover{background:var(--element-base-1-hover)}:host ::ng-deep .range:hover div.si-h4:hover{background:transparent}:host ::ng-deep .range-hover{background-color:var(--element-base-1-hover)}:host ::ng-deep .range-hover-end{border-start-end-radius:var(--element-button-radius);border-end-end-radius:var(--element-button-radius)}:host ::ng-deep td:is(.range-start,.range-end){background:var(--element-ui-0);color:var(--element-base-1)}:host ::ng-deep td:is(.range-start,.range-end) div.si-h4:hover,:host ::ng-deep td:is(.range-start,.range-end) div.si-body-lg:hover{background:transparent;color:var(--element-base-1)}:host ::ng-deep td:is(.range-start,.range-end) .today:before{border-color:var(--element-ui-5)}:host ::ng-deep td.range-start{border-start-start-radius:var(--element-button-radius);border-end-start-radius:var(--element-button-radius)}:host ::ng-deep td.range-end{border-start-end-radius:var(--element-button-radius);border-end-end-radius:var(--element-button-radius)}:host ::ng-deep .calendar-button{font-weight:600;font-size:.875rem;line-height:1.1428571429;color:var(--element-text-active);min-inline-size:0!important}:host ::ng-deep .timepicker-container{display:flex;flex:1 1 auto;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: SiYearSelectionComponent, selector: "si-year-selection", inputs: ["focusedDate"], outputs: ["focusedDateChange", "yearRangeChange"] }, { kind: "component", type: SiMonthSelectionComponent, selector: "si-month-selection", inputs: ["months", "focusedDate"], outputs: ["focusedDateChange", "activeMonthChange", "viewChange"] }, { kind: "component", type: SiDaySelectionComponent, selector: "si-day-selection", inputs: ["hideWeekNumbers", "weekStartDay", "focusedDate", "todayLabel", "calendarWeekLabel"], outputs: ["focusedDateChange", "activeMonthChange", "viewChange"] }, { kind: "component", type: SiTimepickerComponent, selector: "si-timepicker", inputs: ["id", "disabled", "hoursLabel", "minutesLabel", "secondsLabel", "millisecondsLabel", "hideLabels", "hoursAriaLabel", "minutesAriaLabel", "secondsAriaLabel", "millisecondsAriaLabel", "hoursPlaceholder", "minutesPlaceholder", "secondsPlaceholder", "millisecondsPlaceholder", "meridians", "meridiansLabel", "meridiansAriaLabel", "showMinutes", "showSeconds", "showMilliseconds", "showMeridian", "min", "max", "readonly", "errormessageId"], outputs: ["isValid", "meridianChange", "inputCompleted"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
3269
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3270
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiDatepickerComponent, isStandalone: true, selector: "si-datepicker", inputs: { focusedDate: { classPropertyName: "focusedDate", publicName: "focusedDate", isSignal: true, isRequired: false, transformFunction: null }, date: { classPropertyName: "date", publicName: "date", isSignal: true, isRequired: false, transformFunction: null }, dateRange: { classPropertyName: "dateRange", publicName: "dateRange", isSignal: true, isRequired: false, transformFunction: null }, dateRangeRole: { classPropertyName: "dateRangeRole", publicName: "dateRangeRole", isSignal: true, isRequired: false, transformFunction: null }, initialFocus: { classPropertyName: "initialFocus", publicName: "initialFocus", isSignal: true, isRequired: false, transformFunction: null }, disabledTime: { classPropertyName: "disabledTime", publicName: "disabledTime", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, previousLabel: { classPropertyName: "previousLabel", publicName: "previousLabel", isSignal: true, isRequired: false, transformFunction: null }, nextLabel: { classPropertyName: "nextLabel", publicName: "nextLabel", isSignal: true, isRequired: false, transformFunction: null }, calendarWeekLabel: { classPropertyName: "calendarWeekLabel", publicName: "calendarWeekLabel", isSignal: true, isRequired: false, transformFunction: null }, time12h: { classPropertyName: "time12h", publicName: "time12h", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, minMonth: { classPropertyName: "minMonth", publicName: "minMonth", isSignal: true, isRequired: false, transformFunction: null }, maxMonth: { classPropertyName: "maxMonth", publicName: "maxMonth", isSignal: true, isRequired: false, transformFunction: null }, hideTimeToggle: { classPropertyName: "hideTimeToggle", publicName: "hideTimeToggle", isSignal: true, isRequired: false, transformFunction: null }, hideCalendar: { classPropertyName: "hideCalendar", publicName: "hideCalendar", isSignal: true, isRequired: false, transformFunction: null }, timepickerLabel: { classPropertyName: "timepickerLabel", publicName: "timepickerLabel", isSignal: true, isRequired: false, transformFunction: null }, activeHover: { classPropertyName: "activeHover", publicName: "activeHover", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { focusedDate: "focusedDateChange", date: "dateChange", dateRange: "dateRangeChange", disabledTime: "disabledTimeChange", config: "configChange", rangeType: "rangeTypeChange", activeHover: "activeHoverChange" }, viewQueries: [{ propertyName: "daySelection", first: true, predicate: SiDaySelectionComponent, descendants: true, isSignal: true }, { propertyName: "monthSelection", first: true, predicate: SiMonthSelectionComponent, descendants: true, isSignal: true }, { propertyName: "yearSelection", first: true, predicate: SiYearSelectionComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "@if (!hideCalendar()) {\n <div class=\"text-center pb-6 calendar\">\n @switch (view()) {\n @case ('year') {\n <si-year-selection\n [focusedDate]=\"actualFocusedDate()\"\n [startDate]=\"startDate\"\n [endDate]=\"endDate\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [maxMonth]=\"maxMonth()\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n (selectedValueChange)=\"activeYearChange($event)\"\n />\n }\n @case ('month') {\n <si-month-selection\n [startDate]=\"startDate\"\n [endDate]=\"endDate\"\n [months]=\"months\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [maxMonth]=\"maxMonth()\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previewRange]=\"rangeType() === 'END'\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n [activeHover]=\"activeHover()\"\n [focusedDate]=\"actualFocusedDate()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (focusedDateChange)=\"focusedDate.set($event)\"\n (selectedValueChange)=\"activeMonthChange($event)\"\n (viewChange)=\"view.set($event)\"\n />\n }\n @case ('week') {\n <si-day-selection\n [initialFocus]=\"forceFocus()\"\n [startDate]=\"startDate\"\n [endDate]=\"dateRange()?.end\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previewRange]=\"rangeType() === 'END'\"\n [hideWeekNumbers]=\"hideWeekNumbers\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [weekStartDay]=\"weekStartDay\"\n [calendarWeekLabel]=\"calendarWeekLabel()\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n [todayLabel]=\"config().todayText\"\n [activeHover]=\"activeHover()\"\n [focusedDate]=\"actualFocusedDate()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (focusedDateChange)=\"focusedDate.set($event)\"\n (selectedValueChange)=\"selectionChange($event!)\"\n (viewChange)=\"view.set($event)\"\n />\n }\n }\n </div>\n}\n@if (this.config().showTime) {\n <div\n class=\"timepicker-container px-9 pb-6\"\n [class.pt-6]=\"!hideCalendar()\"\n [class.border-top]=\"!hideCalendar()\"\n >\n @if (!config().mandatoryTime && !hideTimeToggle()) {\n <div class=\"mb-5 form-check form-switch\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n role=\"switch\"\n [id]=\"switchId\"\n [checked]=\"!disabledTime()\"\n (change)=\"toggleDisabledTime()\"\n />\n <label class=\"form-check-label\" [for]=\"switchId\">{{\n includeTimeLabel() | translate\n }}</label>\n </div>\n }\n <div class=\"mt-auto\">\n @if (timepickerLabel()) {\n <label class=\"form-label\" [for]=\"timepickerId\">{{ timepickerLabel() | translate }}</label>\n }\n <si-timepicker\n #timePicker\n [id]=\"timepickerId\"\n [formControl]=\"time\"\n [hoursLabel]=\"config().hoursLabel ?? timePicker.hoursLabel()\"\n [minutesLabel]=\"config().minutesLabel ?? timePicker.minutesLabel()\"\n [secondsLabel]=\"config().secondsLabel ?? timePicker.secondsLabel()\"\n [millisecondsLabel]=\"config().millisecondsLabel ?? timePicker.millisecondsLabel()\"\n [hideLabels]=\"config().hideLabels ?? timePicker.hideLabels()\"\n [hoursAriaLabel]=\"config().hoursAriaLabel ?? timePicker.hoursAriaLabel()\"\n [minutesAriaLabel]=\"config().minutesAriaLabel ?? timePicker.minutesAriaLabel()\"\n [secondsAriaLabel]=\"config().secondsAriaLabel ?? timePicker.secondsAriaLabel()\"\n [millisecondsAriaLabel]=\"\n config().millisecondsAriaLabel ?? timePicker.millisecondsAriaLabel()\n \"\n [hoursPlaceholder]=\"config().hoursPlaceholder ?? timePicker.hoursPlaceholder()\"\n [minutesPlaceholder]=\"config().minutesPlaceholder ?? timePicker.minutesPlaceholder()\"\n [secondsPlaceholder]=\"config().secondsPlaceholder ?? timePicker.secondsPlaceholder()\"\n [millisecondsPlaceholder]=\"\n config().millisecondsPlaceholder ?? timePicker.millisecondsPlaceholder()\n \"\n [meridians]=\"config().meridians ?? timePicker.meridians()\"\n [meridiansLabel]=\"config().meridiansLabel ?? timePicker.meridiansLabel()\"\n [meridiansAriaLabel]=\"config().meridiansAriaLabel ?? timePicker.meridiansAriaLabel()\"\n [showMinutes]=\"config().showMinutes ?? true\"\n [showSeconds]=\"config().showSeconds ?? false\"\n [showMilliseconds]=\"config().showMilliseconds ?? false\"\n [showMeridian]=\"time12h()\"\n />\n </div>\n </div>\n}\n", styles: [":host ::ng-deep .year:not(.disabled):not(.selected):hover,:host ::ng-deep .month:not(.disabled):not(.selected):hover,:host ::ng-deep .day:not(.disabled):not(.selected):hover{background:var(--si-sys-background-hover);color:var(--si-sys-text-accent)}:host ::ng-deep .year,:host ::ng-deep .month,:host ::ng-deep td,:host ::ng-deep th,:host ::ng-deep .day{block-size:2rem;line-height:2rem}:host ::ng-deep td,:host ::ng-deep th,:host ::ng-deep .day{inline-size:2rem}:host ::ng-deep .year,:host ::ng-deep .month,:host ::ng-deep .day{display:block;margin-inline:auto;position:relative;border:unset;background-color:unset;padding:0;cursor:pointer;border-radius:var(--element-button-radius)}:host{background:var(--si-sys-background-1);border-radius:var(--element-radius-2);display:flex;flex-direction:column}:host ::ng-deep .header,:host ::ng-deep .footer{display:flex;align-items:center;min-block-size:calc(1rem + 2 * var(--si-sys-sizing-spacing-y-40))}:host ::ng-deep .header{padding-block:var(--si-sys-sizing-spacing-y-50);padding-inline:var(--si-sys-sizing-spacing-x-90);border-block-end:1px solid var(--si-sys-border-4)}:host ::ng-deep .header a{text-decoration:none;cursor:pointer}:host ::ng-deep .footer{margin-block-start:var(--si-sys-sizing-spacing-y-20)}:host ::ng-deep .calendar-table{min-block-size:calc(14rem + 24px)}:host ::ng-deep table{border-collapse:separate;border-spacing:0 3px;table-layout:fixed;margin-block-end:-3px}:host ::ng-deep .day.selected{background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep .month{inline-size:8rem}:host ::ng-deep .month.selected{background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep .year{inline-size:5.3333333333rem}:host ::ng-deep .year.selected{background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep td,:host ::ng-deep th{padding:0;font-weight:400}:host ::ng-deep .week-num,:host ::ng-deep th{font-size:var(--si-sys-typography-font-size-body-sm);color:var(--si-sys-text-secondary);inline-size:2rem;cursor:default}:host ::ng-deep .today.selected:before{border-color:var(--si-sys-border-inverse)}:host ::ng-deep .today:before{position:absolute;content:\"\";inset:1px;border:1px solid var(--si-sys-border-1);border-radius:var(--element-radius-2);display:inline-block}:host ::ng-deep .disabled{color:var(--si-sys-text-disabled);font-weight:400!important;cursor:default!important}:host ::ng-deep .range{background-color:var(--si-sys-background-active)}:host ::ng-deep .range:hover{background:var(--si-sys-background-hover)}:host ::ng-deep .range:hover div.si-h4:hover{background:transparent}:host ::ng-deep .range-hover{background-color:var(--si-sys-background-hover)}:host ::ng-deep .range-hover-end{border-start-end-radius:var(--element-button-radius);border-end-end-radius:var(--element-button-radius)}:host ::ng-deep td:is(.range-start,.range-end){background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep td:is(.range-start,.range-end) div.si-h4:hover,:host ::ng-deep td:is(.range-start,.range-end) div.si-body-lg:hover{background:transparent;color:var(--si-sys-text-on-accent)}:host ::ng-deep td:is(.range-start,.range-end) .today:before{border-color:var(--si-sys-border-inverse)}:host ::ng-deep td.range-start{border-start-start-radius:var(--element-button-radius);border-end-start-radius:var(--element-button-radius)}:host ::ng-deep td.range-end{border-start-end-radius:var(--element-button-radius);border-end-end-radius:var(--element-button-radius)}:host ::ng-deep .calendar-button{min-inline-size:0!important}:host ::ng-deep .timepicker-container{display:flex;flex:1 1 auto;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: SiYearSelectionComponent, selector: "si-year-selection", inputs: ["focusedDate"], outputs: ["focusedDateChange", "yearRangeChange"] }, { kind: "component", type: SiMonthSelectionComponent, selector: "si-month-selection", inputs: ["months", "focusedDate"], outputs: ["focusedDateChange", "activeMonthChange", "viewChange"] }, { kind: "component", type: SiDaySelectionComponent, selector: "si-day-selection", inputs: ["hideWeekNumbers", "weekStartDay", "focusedDate", "todayLabel", "calendarWeekLabel"], outputs: ["focusedDateChange", "activeMonthChange", "viewChange"] }, { kind: "component", type: SiTimepickerComponent, selector: "si-timepicker", inputs: ["id", "disabled", "hoursLabel", "minutesLabel", "secondsLabel", "millisecondsLabel", "hideLabels", "hoursAriaLabel", "minutesAriaLabel", "secondsAriaLabel", "millisecondsAriaLabel", "hoursPlaceholder", "minutesPlaceholder", "secondsPlaceholder", "millisecondsPlaceholder", "meridians", "meridiansLabel", "meridiansAriaLabel", "showMinutes", "showSeconds", "showMilliseconds", "showMeridian", "min", "max", "readonly", "errormessageId"], outputs: ["isValid", "meridianChange", "inputCompleted"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
|
|
3171
3271
|
}
|
|
3172
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3272
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerComponent, decorators: [{
|
|
3173
3273
|
type: Component,
|
|
3174
3274
|
args: [{ selector: 'si-datepicker', imports: [
|
|
3175
3275
|
ReactiveFormsModule,
|
|
@@ -3178,22 +3278,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
3178
3278
|
SiDaySelectionComponent,
|
|
3179
3279
|
SiTimepickerComponent,
|
|
3180
3280
|
SiTranslatePipe
|
|
3181
|
-
], changeDetection: ChangeDetectionStrategy.
|
|
3182
|
-
}], ctorParameters: () => [], propDecorators: { focusedDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusedDate", required: false }] }, { type: i0.Output, args: ["focusedDateChange"] }], date: [{ type: i0.Input, args: [{ isSignal: true, alias: "date", required: false }] }, { type: i0.Output, args: ["dateChange"] }], dateRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "dateRange", required: false }] }, { type: i0.Output, args: ["dateRangeChange"] }], dateRangeRole: [{ type: i0.Input, args: [{ isSignal: true, alias: "dateRangeRole", required: false }] }], initialFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialFocus", required: false }] }], disabledTime: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabledTime", required: false }] }, { type: i0.Output, args: ["disabledTimeChange"] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: false }] }, { type: i0.Output, args: ["configChange"] }], previousLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "previousLabel", required: false }] }], nextLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "nextLabel", required: false }] }],
|
|
3281
|
+
], changeDetection: ChangeDetectionStrategy.Eager, template: "@if (!hideCalendar()) {\n <div class=\"text-center pb-6 calendar\">\n @switch (view()) {\n @case ('year') {\n <si-year-selection\n [focusedDate]=\"actualFocusedDate()\"\n [startDate]=\"startDate\"\n [endDate]=\"endDate\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [maxMonth]=\"maxMonth()\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n (selectedValueChange)=\"activeYearChange($event)\"\n />\n }\n @case ('month') {\n <si-month-selection\n [startDate]=\"startDate\"\n [endDate]=\"endDate\"\n [months]=\"months\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [maxMonth]=\"maxMonth()\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previewRange]=\"rangeType() === 'END'\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n [activeHover]=\"activeHover()\"\n [focusedDate]=\"actualFocusedDate()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (focusedDateChange)=\"focusedDate.set($event)\"\n (selectedValueChange)=\"activeMonthChange($event)\"\n (viewChange)=\"view.set($event)\"\n />\n }\n @case ('week') {\n <si-day-selection\n [initialFocus]=\"forceFocus()\"\n [startDate]=\"startDate\"\n [endDate]=\"dateRange()?.end\"\n [isRangeSelection]=\"config().enableDateRange!\"\n [previewRange]=\"rangeType() === 'END'\"\n [hideWeekNumbers]=\"hideWeekNumbers\"\n [minDate]=\"config().minDate\"\n [maxDate]=\"config().maxDate\"\n [minMonth]=\"minMonth()\"\n [weekStartDay]=\"weekStartDay\"\n [calendarWeekLabel]=\"calendarWeekLabel()\"\n [previousLabel]=\"previousLabel() | translate\"\n [nextLabel]=\"nextLabel() | translate\"\n [todayLabel]=\"config().todayText\"\n [activeHover]=\"activeHover()\"\n [focusedDate]=\"actualFocusedDate()\"\n (activeHoverChange)=\"onActiveHoverChange($event)\"\n (focusedDateChange)=\"focusedDate.set($event)\"\n (selectedValueChange)=\"selectionChange($event!)\"\n (viewChange)=\"view.set($event)\"\n />\n }\n }\n </div>\n}\n@if (this.config().showTime) {\n <div\n class=\"timepicker-container px-9 pb-6\"\n [class.pt-6]=\"!hideCalendar()\"\n [class.border-top]=\"!hideCalendar()\"\n >\n @if (!config().mandatoryTime && !hideTimeToggle()) {\n <div class=\"mb-5 form-check form-switch\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n role=\"switch\"\n [id]=\"switchId\"\n [checked]=\"!disabledTime()\"\n (change)=\"toggleDisabledTime()\"\n />\n <label class=\"form-check-label\" [for]=\"switchId\">{{\n includeTimeLabel() | translate\n }}</label>\n </div>\n }\n <div class=\"mt-auto\">\n @if (timepickerLabel()) {\n <label class=\"form-label\" [for]=\"timepickerId\">{{ timepickerLabel() | translate }}</label>\n }\n <si-timepicker\n #timePicker\n [id]=\"timepickerId\"\n [formControl]=\"time\"\n [hoursLabel]=\"config().hoursLabel ?? timePicker.hoursLabel()\"\n [minutesLabel]=\"config().minutesLabel ?? timePicker.minutesLabel()\"\n [secondsLabel]=\"config().secondsLabel ?? timePicker.secondsLabel()\"\n [millisecondsLabel]=\"config().millisecondsLabel ?? timePicker.millisecondsLabel()\"\n [hideLabels]=\"config().hideLabels ?? timePicker.hideLabels()\"\n [hoursAriaLabel]=\"config().hoursAriaLabel ?? timePicker.hoursAriaLabel()\"\n [minutesAriaLabel]=\"config().minutesAriaLabel ?? timePicker.minutesAriaLabel()\"\n [secondsAriaLabel]=\"config().secondsAriaLabel ?? timePicker.secondsAriaLabel()\"\n [millisecondsAriaLabel]=\"\n config().millisecondsAriaLabel ?? timePicker.millisecondsAriaLabel()\n \"\n [hoursPlaceholder]=\"config().hoursPlaceholder ?? timePicker.hoursPlaceholder()\"\n [minutesPlaceholder]=\"config().minutesPlaceholder ?? timePicker.minutesPlaceholder()\"\n [secondsPlaceholder]=\"config().secondsPlaceholder ?? timePicker.secondsPlaceholder()\"\n [millisecondsPlaceholder]=\"\n config().millisecondsPlaceholder ?? timePicker.millisecondsPlaceholder()\n \"\n [meridians]=\"config().meridians ?? timePicker.meridians()\"\n [meridiansLabel]=\"config().meridiansLabel ?? timePicker.meridiansLabel()\"\n [meridiansAriaLabel]=\"config().meridiansAriaLabel ?? timePicker.meridiansAriaLabel()\"\n [showMinutes]=\"config().showMinutes ?? true\"\n [showSeconds]=\"config().showSeconds ?? false\"\n [showMilliseconds]=\"config().showMilliseconds ?? false\"\n [showMeridian]=\"time12h()\"\n />\n </div>\n </div>\n}\n", styles: [":host ::ng-deep .year:not(.disabled):not(.selected):hover,:host ::ng-deep .month:not(.disabled):not(.selected):hover,:host ::ng-deep .day:not(.disabled):not(.selected):hover{background:var(--si-sys-background-hover);color:var(--si-sys-text-accent)}:host ::ng-deep .year,:host ::ng-deep .month,:host ::ng-deep td,:host ::ng-deep th,:host ::ng-deep .day{block-size:2rem;line-height:2rem}:host ::ng-deep td,:host ::ng-deep th,:host ::ng-deep .day{inline-size:2rem}:host ::ng-deep .year,:host ::ng-deep .month,:host ::ng-deep .day{display:block;margin-inline:auto;position:relative;border:unset;background-color:unset;padding:0;cursor:pointer;border-radius:var(--element-button-radius)}:host{background:var(--si-sys-background-1);border-radius:var(--element-radius-2);display:flex;flex-direction:column}:host ::ng-deep .header,:host ::ng-deep .footer{display:flex;align-items:center;min-block-size:calc(1rem + 2 * var(--si-sys-sizing-spacing-y-40))}:host ::ng-deep .header{padding-block:var(--si-sys-sizing-spacing-y-50);padding-inline:var(--si-sys-sizing-spacing-x-90);border-block-end:1px solid var(--si-sys-border-4)}:host ::ng-deep .header a{text-decoration:none;cursor:pointer}:host ::ng-deep .footer{margin-block-start:var(--si-sys-sizing-spacing-y-20)}:host ::ng-deep .calendar-table{min-block-size:calc(14rem + 24px)}:host ::ng-deep table{border-collapse:separate;border-spacing:0 3px;table-layout:fixed;margin-block-end:-3px}:host ::ng-deep .day.selected{background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep .month{inline-size:8rem}:host ::ng-deep .month.selected{background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep .year{inline-size:5.3333333333rem}:host ::ng-deep .year.selected{background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep td,:host ::ng-deep th{padding:0;font-weight:400}:host ::ng-deep .week-num,:host ::ng-deep th{font-size:var(--si-sys-typography-font-size-body-sm);color:var(--si-sys-text-secondary);inline-size:2rem;cursor:default}:host ::ng-deep .today.selected:before{border-color:var(--si-sys-border-inverse)}:host ::ng-deep .today:before{position:absolute;content:\"\";inset:1px;border:1px solid var(--si-sys-border-1);border-radius:var(--element-radius-2);display:inline-block}:host ::ng-deep .disabled{color:var(--si-sys-text-disabled);font-weight:400!important;cursor:default!important}:host ::ng-deep .range{background-color:var(--si-sys-background-active)}:host ::ng-deep .range:hover{background:var(--si-sys-background-hover)}:host ::ng-deep .range:hover div.si-h4:hover{background:transparent}:host ::ng-deep .range-hover{background-color:var(--si-sys-background-hover)}:host ::ng-deep .range-hover-end{border-start-end-radius:var(--element-button-radius);border-end-end-radius:var(--element-button-radius)}:host ::ng-deep td:is(.range-start,.range-end){background:var(--si-sys-background-accent);color:var(--si-sys-text-on-accent)}:host ::ng-deep td:is(.range-start,.range-end) div.si-h4:hover,:host ::ng-deep td:is(.range-start,.range-end) div.si-body-lg:hover{background:transparent;color:var(--si-sys-text-on-accent)}:host ::ng-deep td:is(.range-start,.range-end) .today:before{border-color:var(--si-sys-border-inverse)}:host ::ng-deep td.range-start{border-start-start-radius:var(--element-button-radius);border-end-start-radius:var(--element-button-radius)}:host ::ng-deep td.range-end{border-start-end-radius:var(--element-button-radius);border-end-end-radius:var(--element-button-radius)}:host ::ng-deep .calendar-button{min-inline-size:0!important}:host ::ng-deep .timepicker-container{display:flex;flex:1 1 auto;flex-direction:column}\n"] }]
|
|
3282
|
+
}], ctorParameters: () => [], propDecorators: { focusedDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusedDate", required: false }] }, { type: i0.Output, args: ["focusedDateChange"] }], date: [{ type: i0.Input, args: [{ isSignal: true, alias: "date", required: false }] }, { type: i0.Output, args: ["dateChange"] }], dateRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "dateRange", required: false }] }, { type: i0.Output, args: ["dateRangeChange"] }], dateRangeRole: [{ type: i0.Input, args: [{ isSignal: true, alias: "dateRangeRole", required: false }] }], initialFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialFocus", required: false }] }], disabledTime: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabledTime", required: false }] }, { type: i0.Output, args: ["disabledTimeChange"] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: false }] }, { type: i0.Output, args: ["configChange"] }], previousLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "previousLabel", required: false }] }], nextLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "nextLabel", required: false }] }], calendarWeekLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "calendarWeekLabel", required: false }] }], time12h: [{ type: i0.Input, args: [{ isSignal: true, alias: "time12h", required: false }] }], rangeType: [{ type: i0.Input, args: [{ isSignal: true, alias: "rangeType", required: false }] }, { type: i0.Output, args: ["rangeTypeChange"] }], minMonth: [{ type: i0.Input, args: [{ isSignal: true, alias: "minMonth", required: false }] }], maxMonth: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxMonth", required: false }] }], hideTimeToggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideTimeToggle", required: false }] }], hideCalendar: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideCalendar", required: false }] }], timepickerLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "timepickerLabel", required: false }] }], daySelection: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiDaySelectionComponent), { isSignal: true }] }], monthSelection: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiMonthSelectionComponent), { isSignal: true }] }], yearSelection: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiYearSelectionComponent), { isSignal: true }] }], activeHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "activeHover", required: false }] }, { type: i0.Output, args: ["activeHoverChange"] }] } });
|
|
3183
3283
|
|
|
3184
3284
|
/**
|
|
3185
3285
|
* Copyright (c) Siemens 2016 - 2026
|
|
3186
3286
|
* SPDX-License-Identifier: MIT
|
|
3187
3287
|
*/
|
|
3188
3288
|
class SiDatepickerOverlayComponent {
|
|
3189
|
-
minMonth = signal(undefined,
|
|
3190
|
-
|
|
3191
|
-
|
|
3289
|
+
minMonth = signal(undefined, /* @ts-ignore */
|
|
3290
|
+
...(ngDevMode ? [{ debugName: "minMonth" }] : /* istanbul ignore next */ []));
|
|
3291
|
+
maxMonth = signal(undefined, /* @ts-ignore */
|
|
3292
|
+
...(ngDevMode ? [{ debugName: "maxMonth" }] : /* istanbul ignore next */ []));
|
|
3293
|
+
datepicker = viewChild.required(SiDatepickerComponent, /* @ts-ignore */
|
|
3294
|
+
...(ngDevMode ? [{ debugName: "datepicker" }] : /* istanbul ignore next */ []));
|
|
3192
3295
|
/**
|
|
3193
3296
|
* {@inheritDoc SiDatepickerComponent#initialFocus}
|
|
3194
3297
|
* @defaultValue false
|
|
3195
3298
|
*/
|
|
3196
|
-
initialFocus = input(false, { ...(ngDevMode ? { debugName: "initialFocus" } : {}), transform: booleanAttribute });
|
|
3299
|
+
initialFocus = input(false, { ...(ngDevMode ? { debugName: "initialFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
3197
3300
|
/**
|
|
3198
3301
|
* {@inheritDoc SiDatepickerComponent#config}
|
|
3199
3302
|
* @defaultValue
|
|
@@ -3201,24 +3304,28 @@ class SiDatepickerOverlayComponent {
|
|
|
3201
3304
|
* {}
|
|
3202
3305
|
* ```
|
|
3203
3306
|
*/
|
|
3204
|
-
config = input({},
|
|
3307
|
+
config = input({}, /* @ts-ignore */
|
|
3308
|
+
...(ngDevMode ? [{ debugName: "config" }] : /* istanbul ignore next */ []));
|
|
3205
3309
|
/**
|
|
3206
3310
|
* {@inheritDoc SiDatepickerComponent#date}
|
|
3207
3311
|
*/
|
|
3208
|
-
date = model(
|
|
3312
|
+
date = model(/* @ts-ignore */
|
|
3313
|
+
...(ngDevMode ? [undefined, { debugName: "date" }] : /* istanbul ignore next */ []));
|
|
3209
3314
|
/**
|
|
3210
3315
|
* {@inheritDoc SiDatepickerComponent#dateRange}
|
|
3211
3316
|
*/
|
|
3212
|
-
dateRange = model(
|
|
3317
|
+
dateRange = model(/* @ts-ignore */
|
|
3318
|
+
...(ngDevMode ? [undefined, { debugName: "dateRange" }] : /* istanbul ignore next */ []));
|
|
3213
3319
|
/**
|
|
3214
3320
|
* {@inheritDoc SiDatepickerComponent#rangeType}
|
|
3215
3321
|
*/
|
|
3216
|
-
rangeType = model(
|
|
3322
|
+
rangeType = model(/* @ts-ignore */
|
|
3323
|
+
...(ngDevMode ? [undefined, { debugName: "rangeType" }] : /* istanbul ignore next */ []));
|
|
3217
3324
|
/**
|
|
3218
3325
|
* {@inheritDoc SiDatepickerComponent#time12h}
|
|
3219
3326
|
* @defaultValue false
|
|
3220
3327
|
*/
|
|
3221
|
-
time12h = input(false, { ...(ngDevMode ? { debugName: "time12h" } : {}), transform: booleanAttribute });
|
|
3328
|
+
time12h = input(false, { ...(ngDevMode ? { debugName: "time12h" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
3222
3329
|
/**
|
|
3223
3330
|
* Emits an event to notify about disabling the time from the datepicker.
|
|
3224
3331
|
* When time is disable, we construct a pure date object in UTC 00:00:00 time.
|
|
@@ -3230,20 +3337,27 @@ class SiDatepickerOverlayComponent {
|
|
|
3230
3337
|
focusTrapFactory = inject(ConfigurableFocusTrapFactory);
|
|
3231
3338
|
focusTrap;
|
|
3232
3339
|
previousActiveElement;
|
|
3233
|
-
disableTime = signal(false,
|
|
3234
|
-
|
|
3340
|
+
disableTime = signal(false, /* @ts-ignore */
|
|
3341
|
+
...(ngDevMode ? [{ debugName: "disableTime" }] : /* istanbul ignore next */ []));
|
|
3342
|
+
activeHover = signal(undefined, /* @ts-ignore */
|
|
3343
|
+
...(ngDevMode ? [{ debugName: "activeHover" }] : /* istanbul ignore next */ []));
|
|
3235
3344
|
isTwoMonthDateRange = computed(() => !!this.config().enableDateRange &&
|
|
3236
|
-
(!!this.config().enableTwoMonthDateRange || !!this.config().showTime),
|
|
3237
|
-
|
|
3238
|
-
|
|
3345
|
+
(!!this.config().enableTwoMonthDateRange || !!this.config().showTime), /* @ts-ignore */
|
|
3346
|
+
...(ngDevMode ? [{ debugName: "isTwoMonthDateRange" }] : /* istanbul ignore next */ []));
|
|
3347
|
+
firstDatepickerConfig = signal({}, /* @ts-ignore */
|
|
3348
|
+
...(ngDevMode ? [{ debugName: "firstDatepickerConfig" }] : /* istanbul ignore next */ []));
|
|
3349
|
+
secondDatepickerConfig = signal({}, /* @ts-ignore */
|
|
3350
|
+
...(ngDevMode ? [{ debugName: "secondDatepickerConfig" }] : /* istanbul ignore next */ []));
|
|
3239
3351
|
/**
|
|
3240
3352
|
* Indicate that the overlay is opened in small screen.
|
|
3241
3353
|
* A modal dialog animation display when true and a wrapped two month calendar layout is displayed.
|
|
3242
3354
|
*
|
|
3243
3355
|
* @defaultValue false
|
|
3244
3356
|
*/
|
|
3245
|
-
isMobile = input(false,
|
|
3246
|
-
|
|
3357
|
+
isMobile = input(false, /* @ts-ignore */
|
|
3358
|
+
...(ngDevMode ? [{ debugName: "isMobile" }] : /* istanbul ignore next */ []));
|
|
3359
|
+
completeAnimation = signal(false, /* @ts-ignore */
|
|
3360
|
+
...(ngDevMode ? [{ debugName: "completeAnimation" }] : /* istanbul ignore next */ []));
|
|
3247
3361
|
ngOnChanges(changes) {
|
|
3248
3362
|
if (changes.config) {
|
|
3249
3363
|
const config = this.config();
|
|
@@ -3302,8 +3416,8 @@ class SiDatepickerOverlayComponent {
|
|
|
3302
3416
|
}
|
|
3303
3417
|
}
|
|
3304
3418
|
}
|
|
3305
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3306
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3419
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3420
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiDatepickerOverlayComponent, isStandalone: true, selector: "si-datepicker-overlay", inputs: { initialFocus: { classPropertyName: "initialFocus", publicName: "initialFocus", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, date: { classPropertyName: "date", publicName: "date", isSignal: true, isRequired: false, transformFunction: null }, dateRange: { classPropertyName: "dateRange", publicName: "dateRange", isSignal: true, isRequired: false, transformFunction: null }, rangeType: { classPropertyName: "rangeType", publicName: "rangeType", isSignal: true, isRequired: false, transformFunction: null }, time12h: { classPropertyName: "time12h", publicName: "time12h", isSignal: true, isRequired: false, transformFunction: null }, isMobile: { classPropertyName: "isMobile", publicName: "isMobile", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { date: "dateChange", dateRange: "dateRangeChange", rangeType: "rangeTypeChange", disabledTimeChange: "disabledTimeChange" }, host: { properties: { "class.flex-wrap": "isMobile()", "class.mobile-datepicker-overlay": "isMobile()", "class.fade": "isMobile()", "class.show": "completeAnimation()" }, classAttribute: "mt-md-1 d-flex shadow-3 rounded-2 overflow-auto align-items-stretch" }, viewQueries: [{ propertyName: "datepicker", first: true, predicate: SiDatepickerComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
3307
3421
|
<si-datepicker
|
|
3308
3422
|
#datepicker
|
|
3309
3423
|
tabindex="-1"
|
|
@@ -3350,9 +3464,9 @@ class SiDatepickerOverlayComponent {
|
|
|
3350
3464
|
(rangeTypeChange)="rangeType.set($event)"
|
|
3351
3465
|
/>
|
|
3352
3466
|
}
|
|
3353
|
-
`, isInline: true, styles: [":host{background:var(--
|
|
3467
|
+
`, isInline: true, styles: [":host{background:var(--si-sys-background-1);max-block-size:max-content;max-inline-size:min-content}:host.fade{transition:transform calc(.3s * var(--element-animations-enabled, 1)) ease-out;transform:translateY(-50px)}:host.show{transform:none}.mobile-datepicker-overlay{max-inline-size:43.5ch}.first-datepicker{border-inline-end:0;border-start-end-radius:0;border-end-end-radius:0}.second-datepicker{border-inline-start:0;border-start-start-radius:0;border-end-start-radius:0}.first-datepicker-mobile{border-block-end:0;border-end-start-radius:0;border-end-end-radius:0}.second-datepicker-mobile{border-block-start:0;border-start-start-radius:0;border-start-end-radius:0}\n"], dependencies: [{ kind: "component", type: SiDatepickerComponent, selector: "si-datepicker", inputs: ["focusedDate", "date", "dateRange", "dateRangeRole", "initialFocus", "disabledTime", "config", "previousLabel", "nextLabel", "calendarWeekLabel", "time12h", "rangeType", "minMonth", "maxMonth", "hideTimeToggle", "hideCalendar", "timepickerLabel", "activeHover"], outputs: ["focusedDateChange", "dateChange", "dateRangeChange", "disabledTimeChange", "configChange", "rangeTypeChange", "activeHoverChange"] }, { kind: "ngmodule", type: A11yModule }] });
|
|
3354
3468
|
}
|
|
3355
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3469
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerOverlayComponent, decorators: [{
|
|
3356
3470
|
type: Component,
|
|
3357
3471
|
args: [{ selector: 'si-datepicker-overlay', imports: [SiDatepickerComponent, A11yModule], template: `
|
|
3358
3472
|
<si-datepicker
|
|
@@ -3401,13 +3515,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
3401
3515
|
(rangeTypeChange)="rangeType.set($event)"
|
|
3402
3516
|
/>
|
|
3403
3517
|
}
|
|
3404
|
-
`,
|
|
3405
|
-
class: 'mt-md-1 d-flex
|
|
3518
|
+
`, host: {
|
|
3519
|
+
class: 'mt-md-1 d-flex shadow-3 rounded-2 overflow-auto align-items-stretch',
|
|
3406
3520
|
'[class.flex-wrap]': 'isMobile()',
|
|
3407
3521
|
'[class.mobile-datepicker-overlay]': 'isMobile()',
|
|
3408
3522
|
'[class.fade]': 'isMobile()',
|
|
3409
3523
|
'[class.show]': 'completeAnimation()'
|
|
3410
|
-
}, styles: [":host{background:var(--
|
|
3524
|
+
}, styles: [":host{background:var(--si-sys-background-1);max-block-size:max-content;max-inline-size:min-content}:host.fade{transition:transform calc(.3s * var(--element-animations-enabled, 1)) ease-out;transform:translateY(-50px)}:host.show{transform:none}.mobile-datepicker-overlay{max-inline-size:43.5ch}.first-datepicker{border-inline-end:0;border-start-end-radius:0;border-end-end-radius:0}.second-datepicker{border-inline-start:0;border-start-start-radius:0;border-end-start-radius:0}.first-datepicker-mobile{border-block-end:0;border-end-start-radius:0;border-end-end-radius:0}.second-datepicker-mobile{border-block-start:0;border-start-start-radius:0;border-start-end-radius:0}\n"] }]
|
|
3411
3525
|
}], propDecorators: { datepicker: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiDatepickerComponent), { isSignal: true }] }], initialFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialFocus", required: false }] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: false }] }], date: [{ type: i0.Input, args: [{ isSignal: true, alias: "date", required: false }] }, { type: i0.Output, args: ["dateChange"] }], dateRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "dateRange", required: false }] }, { type: i0.Output, args: ["dateRangeChange"] }], rangeType: [{ type: i0.Input, args: [{ isSignal: true, alias: "rangeType", required: false }] }, { type: i0.Output, args: ["rangeTypeChange"] }], time12h: [{ type: i0.Input, args: [{ isSignal: true, alias: "time12h", required: false }] }], disabledTimeChange: [{ type: i0.Output, args: ["disabledTimeChange"] }], isMobile: [{ type: i0.Input, args: [{ isSignal: true, alias: "isMobile", required: false }] }] } });
|
|
3412
3526
|
|
|
3413
3527
|
/**
|
|
@@ -3446,13 +3560,14 @@ class SiDatepickerOverlayDirective {
|
|
|
3446
3560
|
originX: 'start',
|
|
3447
3561
|
originY: 'top'
|
|
3448
3562
|
}
|
|
3449
|
-
],
|
|
3563
|
+
], /* @ts-ignore */
|
|
3564
|
+
...(ngDevMode ? [{ debugName: "placement" }] : /* istanbul ignore next */ []));
|
|
3450
3565
|
/**
|
|
3451
3566
|
* Optional CDK scroll strategy used for the datepicker overlay.
|
|
3452
3567
|
*
|
|
3453
3568
|
* @defaultValue defaultConnectedOverlayScrollStrategy()
|
|
3454
3569
|
*/
|
|
3455
|
-
scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), { ...(ngDevMode ? { debugName: "scrollStrategy" } : {}),
|
|
3570
|
+
scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), { ...(ngDevMode ? { debugName: "scrollStrategy" } : /* istanbul ignore next */ {}),
|
|
3456
3571
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
3457
3572
|
alias: 'siDatepickerScrollStrategy' // to be aligned with the `siDatepickerClose` output
|
|
3458
3573
|
});
|
|
@@ -3615,10 +3730,10 @@ class SiDatepickerOverlayDirective {
|
|
|
3615
3730
|
observeOn(asapScheduler), map(() => CloseCause.Select)), overlayRef.backdropClick().pipe(map(() => CloseCause.Backdrop)), overlayRef.detachments().pipe(map(() => CloseCause.Detach)), overlayRef.keydownEvents().pipe(filter(event => event.key === 'Escape'), tap(event => event.stopPropagation()), // ESC handled, prevent closing modal, etc.
|
|
3616
3731
|
map(() => CloseCause.Escape)));
|
|
3617
3732
|
}
|
|
3618
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3619
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
3733
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerOverlayDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3734
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: SiDatepickerOverlayDirective, isStandalone: true, selector: "[siDatepickerOverlay]", inputs: { scrollStrategy: { classPropertyName: "scrollStrategy", publicName: "siDatepickerScrollStrategy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { siDatepickerClose: "siDatepickerClose" }, exportAs: ["siDatepickerOverlay"], ngImport: i0 });
|
|
3620
3735
|
}
|
|
3621
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3736
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerOverlayDirective, decorators: [{
|
|
3622
3737
|
type: Directive,
|
|
3623
3738
|
args: [{
|
|
3624
3739
|
selector: '[siDatepickerOverlay]',
|
|
@@ -3638,7 +3753,7 @@ class SiDatepickerDirective extends SiDateInputDirective {
|
|
|
3638
3753
|
*
|
|
3639
3754
|
* @defaultValue false
|
|
3640
3755
|
*/
|
|
3641
|
-
autoClose = input(false, { ...(ngDevMode ? { debugName: "autoClose" } : {}), transform: booleanAttribute });
|
|
3756
|
+
autoClose = input(false, { ...(ngDevMode ? { debugName: "autoClose" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
3642
3757
|
/**
|
|
3643
3758
|
* During focus on close the datepicker will not show since we recover the focus on element.
|
|
3644
3759
|
* The focus on close is only relevant when the directive is configured without a calendar button.
|
|
@@ -3722,8 +3837,8 @@ class SiDatepickerDirective extends SiDateInputDirective {
|
|
|
3722
3837
|
this.overlayToggle.closeAfterSelection();
|
|
3723
3838
|
}
|
|
3724
3839
|
}
|
|
3725
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3726
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
3840
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
3841
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: SiDatepickerDirective, isStandalone: true, selector: "[siDatepicker]", inputs: { autoClose: { classPropertyName: "autoClose", publicName: "autoClose", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "onClick()", "keydown.tab": "onTab()", "focus": "focusChange()" } }, providers: [
|
|
3727
3842
|
{
|
|
3728
3843
|
provide: NG_VALUE_ACCESSOR,
|
|
3729
3844
|
useExisting: SiDatepickerDirective,
|
|
@@ -3740,7 +3855,7 @@ class SiDatepickerDirective extends SiDateInputDirective {
|
|
|
3740
3855
|
}
|
|
3741
3856
|
], exportAs: ["siDatepicker"], usesInheritance: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, inputs: ["siDatepickerScrollStrategy", "siDatepickerScrollStrategy"], outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0 });
|
|
3742
3857
|
}
|
|
3743
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3858
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerDirective, decorators: [{
|
|
3744
3859
|
type: Directive,
|
|
3745
3860
|
args: [{
|
|
3746
3861
|
selector: '[siDatepicker]',
|
|
@@ -3786,17 +3901,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
3786
3901
|
*/
|
|
3787
3902
|
class SiDateRangeComponent {
|
|
3788
3903
|
static idCounter = 0;
|
|
3789
|
-
inputDirectives = viewChildren(SiDateInputDirective,
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3904
|
+
inputDirectives = viewChildren(SiDateInputDirective, /* @ts-ignore */
|
|
3905
|
+
...(ngDevMode ? [{ debugName: "inputDirectives" }] : /* istanbul ignore next */ []));
|
|
3906
|
+
startInput = viewChild.required('startInput', /* @ts-ignore */
|
|
3907
|
+
...(ngDevMode ? [{ debugName: "startInput" }] : /* istanbul ignore next */ []));
|
|
3908
|
+
endInput = viewChild.required('endInput', /* @ts-ignore */
|
|
3909
|
+
...(ngDevMode ? [{ debugName: "endInput" }] : /* istanbul ignore next */ []));
|
|
3910
|
+
button = viewChild.required('button', /* @ts-ignore */
|
|
3911
|
+
...(ngDevMode ? [{ debugName: "button" }] : /* istanbul ignore next */ []));
|
|
3793
3912
|
/**
|
|
3794
3913
|
* @defaultValue
|
|
3795
3914
|
* ```
|
|
3796
3915
|
* `__si-date-range-${SiDateRangeComponent.idCounter++}`
|
|
3797
3916
|
* ```
|
|
3798
3917
|
*/
|
|
3799
|
-
id = input(`__si-date-range-${SiDateRangeComponent.idCounter++}`,
|
|
3918
|
+
id = input(`__si-date-range-${SiDateRangeComponent.idCounter++}`, /* @ts-ignore */
|
|
3919
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
3800
3920
|
labelledby = inject(new HostAttributeToken('aria-labelledby'), {
|
|
3801
3921
|
optional: true
|
|
3802
3922
|
}) ?? `${this.id()}-label`;
|
|
@@ -3808,7 +3928,8 @@ class SiDateRangeComponent {
|
|
|
3808
3928
|
* { enableDateRange: true }
|
|
3809
3929
|
* ```
|
|
3810
3930
|
*/
|
|
3811
|
-
siDatepickerConfig = model({ enableDateRange: true },
|
|
3931
|
+
siDatepickerConfig = model({ enableDateRange: true }, /* @ts-ignore */
|
|
3932
|
+
...(ngDevMode ? [{ debugName: "siDatepickerConfig" }] : /* istanbul ignore next */ []));
|
|
3812
3933
|
/**
|
|
3813
3934
|
* Placeholder of the start date input.
|
|
3814
3935
|
*
|
|
@@ -3817,7 +3938,8 @@ class SiDateRangeComponent {
|
|
|
3817
3938
|
* t(() => $localize`:@@SI_DATEPICKER.START_DATE_PLACEHOLDER:Start date`)
|
|
3818
3939
|
* ```
|
|
3819
3940
|
*/
|
|
3820
|
-
startDatePlaceholder = input(t(() => $localize `:@@SI_DATEPICKER.START_DATE_PLACEHOLDER:Start date`),
|
|
3941
|
+
startDatePlaceholder = input(t(() => $localize `:@@SI_DATEPICKER.START_DATE_PLACEHOLDER:Start date`), /* @ts-ignore */
|
|
3942
|
+
...(ngDevMode ? [{ debugName: "startDatePlaceholder" }] : /* istanbul ignore next */ []));
|
|
3821
3943
|
/**
|
|
3822
3944
|
* Placeholder of the end date input.
|
|
3823
3945
|
*
|
|
@@ -3826,7 +3948,8 @@ class SiDateRangeComponent {
|
|
|
3826
3948
|
* t(() => $localize`:@@SI_DATEPICKER.END_DATE_PLACEHOLDER:End date`)
|
|
3827
3949
|
* ```
|
|
3828
3950
|
*/
|
|
3829
|
-
endDatePlaceholder = input(t(() => $localize `:@@SI_DATEPICKER.END_DATE_PLACEHOLDER:End date`),
|
|
3951
|
+
endDatePlaceholder = input(t(() => $localize `:@@SI_DATEPICKER.END_DATE_PLACEHOLDER:End date`), /* @ts-ignore */
|
|
3952
|
+
...(ngDevMode ? [{ debugName: "endDatePlaceholder" }] : /* istanbul ignore next */ []));
|
|
3830
3953
|
/**
|
|
3831
3954
|
* Aria label of the date-range calendar toggle button.
|
|
3832
3955
|
*
|
|
@@ -3835,31 +3958,34 @@ class SiDateRangeComponent {
|
|
|
3835
3958
|
* t(() => $localize`:@@SI_DATEPICKER.CALENDAR_TOGGLE_BUTTON:Open calendar`)
|
|
3836
3959
|
* ```
|
|
3837
3960
|
*/
|
|
3838
|
-
ariaLabelCalendarButton = input(t(() => $localize `:@@SI_DATEPICKER.CALENDAR_TOGGLE_BUTTON:Open calendar`),
|
|
3961
|
+
ariaLabelCalendarButton = input(t(() => $localize `:@@SI_DATEPICKER.CALENDAR_TOGGLE_BUTTON:Open calendar`), /* @ts-ignore */
|
|
3962
|
+
...(ngDevMode ? [{ debugName: "ariaLabelCalendarButton" }] : /* istanbul ignore next */ []));
|
|
3839
3963
|
/**
|
|
3840
3964
|
* Form label of the start timepicker.
|
|
3841
3965
|
*
|
|
3842
3966
|
* @defaultValue
|
|
3843
3967
|
* ```
|
|
3844
|
-
* t(() => $localize`:@@SI_DATEPICKER.START_TIME_LABEL:
|
|
3968
|
+
* t(() => $localize`:@@SI_DATEPICKER.START_TIME_LABEL:From`)
|
|
3845
3969
|
* ```
|
|
3846
3970
|
*/
|
|
3847
|
-
startTimeLabel = input(t(() => $localize `:@@SI_DATEPICKER.START_TIME_LABEL:
|
|
3971
|
+
startTimeLabel = input(t(() => $localize `:@@SI_DATEPICKER.START_TIME_LABEL:From`), /* @ts-ignore */
|
|
3972
|
+
...(ngDevMode ? [{ debugName: "startTimeLabel" }] : /* istanbul ignore next */ []));
|
|
3848
3973
|
/**
|
|
3849
3974
|
* Form label of the start timepicker.
|
|
3850
3975
|
*
|
|
3851
3976
|
* @defaultValue
|
|
3852
3977
|
* ```
|
|
3853
|
-
* t(() => $localize`:@@SI_DATEPICKER.END_TIME_LABEL:
|
|
3978
|
+
* t(() => $localize`:@@SI_DATEPICKER.END_TIME_LABEL:To`)
|
|
3854
3979
|
* ```
|
|
3855
3980
|
*/
|
|
3856
|
-
endTimeLabel = input(t(() => $localize `:@@SI_DATEPICKER.END_TIME_LABEL:
|
|
3981
|
+
endTimeLabel = input(t(() => $localize `:@@SI_DATEPICKER.END_TIME_LABEL:To`), /* @ts-ignore */
|
|
3982
|
+
...(ngDevMode ? [{ debugName: "endTimeLabel" }] : /* istanbul ignore next */ []));
|
|
3857
3983
|
/**
|
|
3858
3984
|
* Automatically close overlay on date selection.
|
|
3859
3985
|
*
|
|
3860
3986
|
* @defaultValue false
|
|
3861
3987
|
*/
|
|
3862
|
-
autoClose = input(false, { ...(ngDevMode ? { debugName: "autoClose" } : {}), transform: booleanAttribute });
|
|
3988
|
+
autoClose = input(false, { ...(ngDevMode ? { debugName: "autoClose" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
3863
3989
|
/** Emits on the date range value changes. */
|
|
3864
3990
|
siDatepickerRangeChange = output();
|
|
3865
3991
|
/**
|
|
@@ -3873,18 +3999,19 @@ class SiDateRangeComponent {
|
|
|
3873
3999
|
* @defaultValue false
|
|
3874
4000
|
*/
|
|
3875
4001
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
3876
|
-
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : {}), alias: 'disabled' });
|
|
4002
|
+
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : /* istanbul ignore next */ {}), alias: 'disabled' });
|
|
3877
4003
|
/**
|
|
3878
4004
|
* Whether the date range input is readonly.
|
|
3879
4005
|
*
|
|
3880
4006
|
* @defaultValue false
|
|
3881
4007
|
*/
|
|
3882
|
-
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : {}), transform: booleanAttribute });
|
|
4008
|
+
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
3883
4009
|
/**
|
|
3884
4010
|
* Set the date-range object displayed in the control.
|
|
3885
4011
|
* The input can be used if the control is used outside Angular forms.
|
|
3886
4012
|
*/
|
|
3887
|
-
value = model(
|
|
4013
|
+
value = model(/* @ts-ignore */
|
|
4014
|
+
...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
|
|
3888
4015
|
/**
|
|
3889
4016
|
* This ID will be bound to the `aria-describedby` attribute of the date-range.
|
|
3890
4017
|
* Use this to reference the element containing the error message(s) for the date-range.
|
|
@@ -3895,13 +4022,17 @@ class SiDateRangeComponent {
|
|
|
3895
4022
|
* `${this.id()}-errormessage`
|
|
3896
4023
|
* ```
|
|
3897
4024
|
*/
|
|
3898
|
-
errormessageId = input(`${this.id()}-errormessage`,
|
|
4025
|
+
errormessageId = input(`${this.id()}-errormessage`, /* @ts-ignore */
|
|
4026
|
+
...(ngDevMode ? [{ debugName: "errormessageId" }] : /* istanbul ignore next */ []));
|
|
3899
4027
|
validator;
|
|
3900
4028
|
onChange = (val) => { };
|
|
3901
4029
|
onTouch = () => { };
|
|
4030
|
+
onValidatorChange = () => { };
|
|
3902
4031
|
icons = addIcons({ elementCalendar });
|
|
3903
|
-
disabled = computed(() => this.disabledInput() || this.disabledNgControl(),
|
|
3904
|
-
|
|
4032
|
+
disabled = computed(() => this.disabledInput() || this.disabledNgControl(), /* @ts-ignore */
|
|
4033
|
+
...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
|
|
4034
|
+
disabledNgControl = signal(false, /* @ts-ignore */
|
|
4035
|
+
...(ngDevMode ? [{ debugName: "disabledNgControl" }] : /* istanbul ignore next */ []));
|
|
3905
4036
|
cdRef = inject(ChangeDetectorRef);
|
|
3906
4037
|
locale = inject(LOCALE_ID).toString();
|
|
3907
4038
|
overlayToggle = inject(SiDatepickerOverlayDirective);
|
|
@@ -3926,6 +4057,7 @@ class SiDateRangeComponent {
|
|
|
3926
4057
|
this.updateValue(this.value());
|
|
3927
4058
|
}
|
|
3928
4059
|
}
|
|
4060
|
+
this.onValidatorChange();
|
|
3929
4061
|
this.overlayToggle.setInputs({ config: this.siDatepickerConfig(), dateRange: this.value() });
|
|
3930
4062
|
}
|
|
3931
4063
|
ngAfterViewInit() {
|
|
@@ -3955,6 +4087,9 @@ class SiDateRangeComponent {
|
|
|
3955
4087
|
registerOnTouched(fn) {
|
|
3956
4088
|
this.onTouch = fn;
|
|
3957
4089
|
}
|
|
4090
|
+
registerOnValidatorChange(fn) {
|
|
4091
|
+
this.onValidatorChange = fn;
|
|
4092
|
+
}
|
|
3958
4093
|
setDisabledState(isDisabled) {
|
|
3959
4094
|
this.disabledNgControl.set(isDisabled);
|
|
3960
4095
|
}
|
|
@@ -3979,6 +4114,7 @@ class SiDateRangeComponent {
|
|
|
3979
4114
|
onInputChanged(dateRange) {
|
|
3980
4115
|
this.updateValue(dateRange);
|
|
3981
4116
|
this.onChange(this.value());
|
|
4117
|
+
this.onValidatorChange();
|
|
3982
4118
|
this.siDatepickerRangeChange.emit(this.value());
|
|
3983
4119
|
}
|
|
3984
4120
|
show() {
|
|
@@ -4068,8 +4204,8 @@ class SiDateRangeComponent {
|
|
|
4068
4204
|
this.value.set(value);
|
|
4069
4205
|
}
|
|
4070
4206
|
}
|
|
4071
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4072
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
4207
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4208
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: SiDateRangeComponent, isStandalone: true, selector: "si-date-range", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, siDatepickerConfig: { classPropertyName: "siDatepickerConfig", publicName: "siDatepickerConfig", isSignal: true, isRequired: false, transformFunction: null }, startDatePlaceholder: { classPropertyName: "startDatePlaceholder", publicName: "startDatePlaceholder", isSignal: true, isRequired: false, transformFunction: null }, endDatePlaceholder: { classPropertyName: "endDatePlaceholder", publicName: "endDatePlaceholder", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelCalendarButton: { classPropertyName: "ariaLabelCalendarButton", publicName: "ariaLabelCalendarButton", isSignal: true, isRequired: false, transformFunction: null }, startTimeLabel: { classPropertyName: "startTimeLabel", publicName: "startTimeLabel", isSignal: true, isRequired: false, transformFunction: null }, endTimeLabel: { classPropertyName: "endTimeLabel", publicName: "endTimeLabel", isSignal: true, isRequired: false, transformFunction: null }, autoClose: { classPropertyName: "autoClose", publicName: "autoClose", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, errormessageId: { classPropertyName: "errormessageId", publicName: "errormessageId", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { siDatepickerConfig: "siDatepickerConfigChange", siDatepickerRangeChange: "siDatepickerRangeChange", disabledTimeChange: "disabledTimeChange", value: "valueChange" }, host: { attributes: { "role": "group" }, listeners: { "focusout": "onFocusOut($event)" }, properties: { "class.disabled": "disabled()", "class.readonly": "readonly()", "attr.aria-labelledby": "labelledby" }, classAttribute: "form-control d-flex align-items-center" }, providers: [
|
|
4073
4209
|
{
|
|
4074
4210
|
provide: NG_VALUE_ACCESSOR,
|
|
4075
4211
|
useExisting: SiDateRangeComponent,
|
|
@@ -4084,9 +4220,9 @@ class SiDateRangeComponent {
|
|
|
4084
4220
|
provide: SI_FORM_ITEM_CONTROL,
|
|
4085
4221
|
useExisting: SiDateRangeComponent
|
|
4086
4222
|
}
|
|
4087
|
-
], viewQueries: [{ propertyName: "inputDirectives", predicate: SiDateInputDirective, descendants: true, isSignal: true }, { propertyName: "startInput", first: true, predicate: ["startInput"], descendants: true, isSignal: true }, { propertyName: "endInput", first: true, predicate: ["endInput"], descendants: true, isSignal: true }, { propertyName: "button", first: true, predicate: ["button"], descendants: true, isSignal: true }], usesOnChanges: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, inputs: ["siDatepickerScrollStrategy", "scrollStrategy"], outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0, template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--
|
|
4223
|
+
], viewQueries: [{ propertyName: "inputDirectives", predicate: SiDateInputDirective, descendants: true, isSignal: true }, { propertyName: "startInput", first: true, predicate: ["startInput"], descendants: true, isSignal: true }, { propertyName: "endInput", first: true, predicate: ["endInput"], descendants: true, isSignal: true }, { propertyName: "button", first: true, predicate: ["button"], descendants: true, isSignal: true }], usesOnChanges: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, inputs: ["siDatepickerScrollStrategy", "scrollStrategy"], outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0, template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n (validationChange)=\"onValidatorChange()\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n (validationChange)=\"onValidatorChange()\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--si-sys-effects-focus);outline-offset:var(--element-button-focus-overlay-width)}input{flex-grow:1;background-color:transparent;min-inline-size:80px}input::placeholder{opacity:1;color:var(--si-sys-text-secondary)}input:disabled,input[readonly]{background-color:var(--si-sys-background-1);opacity:1}input:not([readonly]):focus::placeholder,input:focus:not([readonly]):focus::placeholder{color:transparent}.disabled,.disabled:hover,.disabled:focus{--border-color: var(--si-sys-border-3);color:var(--si-sys-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { 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: SiDateInputDirective, selector: "input[siDateInput]", inputs: ["id", "siDatepickerConfig", "disabled", "readonly", "errormessageId"], outputs: ["siDatepickerConfigChange", "siDatepickerDisabledTime", "stateChange", "validationChange", "dateChange"], exportAs: ["siDateInput"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "ngmodule", type: A11yModule }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
|
|
4088
4224
|
}
|
|
4089
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4225
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDateRangeComponent, decorators: [{
|
|
4090
4226
|
type: Component,
|
|
4091
4227
|
args: [{ selector: 'si-date-range', imports: [FormsModule, SiDateInputDirective, SiIconComponent, SiTranslatePipe, A11yModule], providers: [
|
|
4092
4228
|
{
|
|
@@ -4103,7 +4239,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
4103
4239
|
provide: SI_FORM_ITEM_CONTROL,
|
|
4104
4240
|
useExisting: SiDateRangeComponent
|
|
4105
4241
|
}
|
|
4106
|
-
], changeDetection: ChangeDetectionStrategy.
|
|
4242
|
+
], changeDetection: ChangeDetectionStrategy.Eager, host: {
|
|
4107
4243
|
class: 'form-control d-flex align-items-center',
|
|
4108
4244
|
role: 'group',
|
|
4109
4245
|
'[class.disabled]': 'disabled()',
|
|
@@ -4115,7 +4251,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
4115
4251
|
inputs: ['siDatepickerScrollStrategy: scrollStrategy'],
|
|
4116
4252
|
outputs: ['siDatepickerClose']
|
|
4117
4253
|
}
|
|
4118
|
-
], template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--
|
|
4254
|
+
], template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n (validationChange)=\"onValidatorChange()\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n (validationChange)=\"onValidatorChange()\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--si-sys-effects-focus);outline-offset:var(--element-button-focus-overlay-width)}input{flex-grow:1;background-color:transparent;min-inline-size:80px}input::placeholder{opacity:1;color:var(--si-sys-text-secondary)}input:disabled,input[readonly]{background-color:var(--si-sys-background-1);opacity:1}input:not([readonly]):focus::placeholder,input:focus:not([readonly]):focus::placeholder{color:transparent}.disabled,.disabled:hover,.disabled:focus{--border-color: var(--si-sys-border-3);color:var(--si-sys-text-disabled)}\n"] }]
|
|
4119
4255
|
}], propDecorators: { inputDirectives: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => SiDateInputDirective), { isSignal: true }] }], startInput: [{ type: i0.ViewChild, args: ['startInput', { isSignal: true }] }], endInput: [{ type: i0.ViewChild, args: ['endInput', { isSignal: true }] }], button: [{ type: i0.ViewChild, args: ['button', { isSignal: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], siDatepickerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "siDatepickerConfig", required: false }] }, { type: i0.Output, args: ["siDatepickerConfigChange"] }], startDatePlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "startDatePlaceholder", required: false }] }], endDatePlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "endDatePlaceholder", required: false }] }], ariaLabelCalendarButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelCalendarButton", required: false }] }], startTimeLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "startTimeLabel", required: false }] }], endTimeLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "endTimeLabel", required: false }] }], autoClose: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoClose", required: false }] }], siDatepickerRangeChange: [{ type: i0.Output, args: ["siDatepickerRangeChange"] }], disabledTimeChange: [{ type: i0.Output, args: ["disabledTimeChange"] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], errormessageId: [{ type: i0.Input, args: [{ isSignal: true, alias: "errormessageId", required: false }] }], onFocusOut: [{
|
|
4120
4256
|
type: HostListener,
|
|
4121
4257
|
args: ['focusout', ['$event']]
|
|
@@ -4149,13 +4285,19 @@ class SiCalendarButtonComponent {
|
|
|
4149
4285
|
* t(() => $localize`:@@SI_DATEPICKER.CALENDAR_TOGGLE_BUTTON:Open calendar`)
|
|
4150
4286
|
* ```
|
|
4151
4287
|
*/
|
|
4152
|
-
ariaLabel = input(t(() => $localize `:@@SI_DATEPICKER.CALENDAR_TOGGLE_BUTTON:Open calendar`),
|
|
4153
|
-
|
|
4288
|
+
ariaLabel = input(t(() => $localize `:@@SI_DATEPICKER.CALENDAR_TOGGLE_BUTTON:Open calendar`), /* @ts-ignore */
|
|
4289
|
+
...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
|
|
4290
|
+
button = viewChild.required('calendarButton', /* @ts-ignore */
|
|
4291
|
+
...(ngDevMode ? [{ debugName: "button" }] : /* istanbul ignore next */ []));
|
|
4154
4292
|
/** Datepicker input directive instance used to watch for state changes and required to open the calendar. */
|
|
4155
|
-
datepicker = contentChild.required(SiDatepickerDirective
|
|
4156
|
-
|
|
4157
|
-
|
|
4158
|
-
|
|
4293
|
+
datepicker = contentChild.required(SiDatepickerDirective, /* @ts-ignore */
|
|
4294
|
+
...(ngDevMode ? [{ debugName: "datepicker" }] : /* istanbul ignore next */ []));
|
|
4295
|
+
datepickerOverlay = contentChild.required(SiDatepickerOverlayDirective, /* @ts-ignore */
|
|
4296
|
+
...(ngDevMode ? [{ debugName: "datepickerOverlay" }] : /* istanbul ignore next */ []));
|
|
4297
|
+
ngControl = contentChild(NgControl, /* @ts-ignore */
|
|
4298
|
+
...(ngDevMode ? [{ debugName: "ngControl" }] : /* istanbul ignore next */ []));
|
|
4299
|
+
disabled = signal(false, /* @ts-ignore */
|
|
4300
|
+
...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
|
|
4159
4301
|
icons = addIcons({ elementCalendar });
|
|
4160
4302
|
destroyerRef = inject(DestroyRef);
|
|
4161
4303
|
focusMonitor = inject(FocusMonitor);
|
|
@@ -4183,8 +4325,8 @@ class SiCalendarButtonComponent {
|
|
|
4183
4325
|
const datepicker = this.datepicker();
|
|
4184
4326
|
this.disabled.set(datepicker.disabled() || datepicker.readonly());
|
|
4185
4327
|
}
|
|
4186
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4187
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
4328
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4329
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: SiCalendarButtonComponent, isStandalone: true, selector: "si-calendar-button", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "d-inline-block position-relative form-control-wrapper" }, queries: [{ propertyName: "datepicker", first: true, predicate: SiDatepickerDirective, descendants: true, isSignal: true }, { propertyName: "datepickerOverlay", first: true, predicate: SiDatepickerOverlayDirective, descendants: true, isSignal: true }, { propertyName: "ngControl", first: true, predicate: NgControl, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "button", first: true, predicate: ["calendarButton"], descendants: true, isSignal: true }], ngImport: i0, template: `<ng-content />
|
|
4188
4330
|
<div class="form-control-actions">
|
|
4189
4331
|
<button
|
|
4190
4332
|
#calendarButton
|
|
@@ -4197,9 +4339,9 @@ class SiCalendarButtonComponent {
|
|
|
4197
4339
|
>
|
|
4198
4340
|
<si-icon [icon]="icons.elementCalendar" />
|
|
4199
4341
|
</button>
|
|
4200
|
-
</div>`, isInline: true, styles: [":host{--si-action-icon-offset: calc(
|
|
4342
|
+
</div>`, isInline: true, styles: [":host{--si-action-icon-offset: calc( var(--si-sys-sizing-icon-md) + var(--si-sys-sizing-spacing-y-10) * 3 )}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
|
|
4201
4343
|
}
|
|
4202
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4344
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiCalendarButtonComponent, decorators: [{
|
|
4203
4345
|
type: Component,
|
|
4204
4346
|
args: [{ selector: 'si-calendar-button', imports: [SiIconComponent, SiTranslatePipe], template: `<ng-content />
|
|
4205
4347
|
<div class="form-control-actions">
|
|
@@ -4214,9 +4356,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
4214
4356
|
>
|
|
4215
4357
|
<si-icon [icon]="icons.elementCalendar" />
|
|
4216
4358
|
</button>
|
|
4217
|
-
</div>`,
|
|
4359
|
+
</div>`, host: {
|
|
4218
4360
|
class: 'd-inline-block position-relative form-control-wrapper'
|
|
4219
|
-
}, styles: [":host{--si-action-icon-offset: calc(
|
|
4361
|
+
}, styles: [":host{--si-action-icon-offset: calc( var(--si-sys-sizing-icon-md) + var(--si-sys-sizing-spacing-y-10) * 3 )}\n"] }]
|
|
4220
4362
|
}], propDecorators: { ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], button: [{ type: i0.ViewChild, args: ['calendarButton', { isSignal: true }] }], datepicker: [{ type: i0.ContentChild, args: [i0.forwardRef(() => SiDatepickerDirective), { isSignal: true }] }], datepickerOverlay: [{ type: i0.ContentChild, args: [i0.forwardRef(() => SiDatepickerOverlayDirective), { isSignal: true }] }], ngControl: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgControl), { isSignal: true }] }] } });
|
|
4221
4363
|
|
|
4222
4364
|
/**
|
|
@@ -4224,8 +4366,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
4224
4366
|
* SPDX-License-Identifier: MIT
|
|
4225
4367
|
*/
|
|
4226
4368
|
class SiDatepickerModule {
|
|
4227
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4228
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4369
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4370
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerModule, imports: [SiCalendarButtonComponent,
|
|
4229
4371
|
SiDateInputDirective,
|
|
4230
4372
|
SiDatepickerComponent,
|
|
4231
4373
|
SiDatepickerDirective,
|
|
@@ -4236,12 +4378,12 @@ class SiDatepickerModule {
|
|
|
4236
4378
|
SiDatepickerDirective,
|
|
4237
4379
|
SiDateRangeComponent,
|
|
4238
4380
|
SiTimepickerComponent] });
|
|
4239
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4381
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerModule, imports: [SiCalendarButtonComponent,
|
|
4240
4382
|
SiDatepickerComponent,
|
|
4241
4383
|
SiDateRangeComponent,
|
|
4242
4384
|
SiTimepickerComponent] });
|
|
4243
4385
|
}
|
|
4244
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4386
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiDatepickerModule, decorators: [{
|
|
4245
4387
|
type: NgModule,
|
|
4246
4388
|
args: [{
|
|
4247
4389
|
imports: [
|