@ukic/canary-web-components 3.0.0-canary.21 → 3.0.0-canary.23
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 +2 -1
- package/dist/cjs/clear-icon-547aa9b9.js +10 -0
- package/dist/cjs/clear-icon-547aa9b9.js.map +1 -0
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/helpers-da852478.js.map +1 -1
- package/dist/cjs/ic-action-chip.cjs.entry.js +116 -0
- package/dist/cjs/ic-action-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-back-to-top.cjs.entry.js +3 -3
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +2 -2
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +41 -86
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +4 -4
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox_3.cjs.entry.js +6 -6
- package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +11 -3
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table.cjs.entry.js +63 -68
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +25 -17
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +17 -10
- package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +3 -3
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +4 -4
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +224 -0
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/{ic-input-component-container_3.cjs.entry.js → ic-menu.cjs.entry.js} +41 -140
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +3 -10
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +6 -6
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +17 -17
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +4 -4
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +4 -4
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +9 -9
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +4 -4
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +13 -13
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +2 -2
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +4 -4
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-time-input.cjs.entry.js +943 -0
- package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +3 -3
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +15 -4
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +13 -4
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +4 -4
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +14 -8
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +23 -15
- package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-d337cd8a.js +12 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/assets/clock.svg +1 -0
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/ic-data-table/ic-data-table.css +3 -2
- package/dist/collection/components/ic-data-table/ic-data-table.js +62 -68
- package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.stories.js +5 -4
- package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
- package/dist/collection/components/ic-data-table/story-data.js +39 -130
- package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
- package/dist/collection/components/ic-date-input/ic-date-input.js +24 -12
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.js +37 -10
- package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
- package/dist/collection/components/ic-time-input/ic-time-input.css +648 -0
- package/dist/collection/components/ic-time-input/ic-time-input.js +1600 -0
- package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -0
- package/dist/collection/components/ic-time-input/ic-time-input.stories.js +320 -0
- package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -0
- package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js +45 -0
- package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -0
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +14 -8
- package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
- package/dist/collection/components/ic-tree-view/ic-tree-view.js +23 -15
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/clear-icon.js +8 -0
- package/dist/components/clear-icon.js.map +1 -0
- package/dist/components/helpers2.js.map +1 -1
- package/dist/components/ic-action-chip.js +160 -0
- package/dist/components/ic-action-chip.js.map +1 -0
- package/dist/components/ic-back-to-top.js +3 -3
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +2 -2
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +2 -2
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +2 -2
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-button2.js +3 -3
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +4 -4
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +2 -2
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox2.js +4 -4
- package/dist/components/ic-checkbox2.js.map +1 -1
- package/dist/components/ic-chip.js +12 -4
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-classification-banner.js +2 -2
- package/dist/components/ic-classification-banner.js.map +1 -1
- package/dist/components/ic-data-list.js +2 -2
- package/dist/components/ic-data-list.js.map +1 -1
- package/dist/components/ic-data-row.js +2 -2
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-data-table.js +63 -68
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +25 -17
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +18 -10
- package/dist/components/ic-date-picker.js.map +1 -1
- package/dist/components/ic-dialog.js +1 -1
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-empty-state2.js +2 -2
- package/dist/components/ic-empty-state2.js.map +1 -1
- package/dist/components/ic-footer-link.js +2 -2
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-footer.js +3 -3
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +4 -4
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +5 -5
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +3 -3
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-container2.js +2 -2
- package/dist/components/ic-input-container2.js.map +1 -1
- package/dist/components/ic-input-label2.js +2 -2
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation2.js +3 -3
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +6 -6
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-group.js +1 -1
- package/dist/components/ic-menu-group.js.map +1 -1
- package/dist/components/ic-menu2.js +42 -47
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +2 -2
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +1 -1
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +3 -10
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +4 -4
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +6 -6
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +1 -1
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +4 -4
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +4 -4
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +4 -4
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +4 -4
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +9 -9
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-section-container2.js +2 -2
- package/dist/components/ic-section-container2.js.map +1 -1
- package/dist/components/ic-select2.js +6 -6
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +4 -4
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +2 -2
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-skip-link.js +2 -2
- package/dist/components/ic-skip-link.js.map +1 -1
- package/dist/components/ic-status-tag.js +2 -2
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +13 -13
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +2 -2
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +4 -4
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +1 -1
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +2 -2
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +2 -2
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +2 -2
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +6 -6
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +1 -1
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-time-input.d.ts +11 -0
- package/dist/components/ic-time-input.js +1045 -0
- package/dist/components/ic-time-input.js.map +1 -0
- package/dist/components/ic-toast-region.js +1 -1
- package/dist/components/ic-toast-region.js.map +1 -1
- package/dist/components/ic-toast.js +3 -3
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +17 -4
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +14 -4
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +33 -78
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +4 -4
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.js +15 -9
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +24 -16
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/components/ic-typography2.js +2 -2
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/core.css +227 -7
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-137dd76e.entry.js → p-00a89919.entry.js} +2 -2
- package/dist/core/{p-137dd76e.entry.js.map → p-00a89919.entry.js.map} +1 -1
- package/dist/core/{p-e253a857.js → p-0f22f41e.js} +2 -2
- package/dist/core/p-0f22f41e.js.map +1 -0
- package/dist/core/{p-97abdbf7.entry.js → p-1521e96b.entry.js} +2 -2
- package/dist/core/{p-97abdbf7.entry.js.map → p-1521e96b.entry.js.map} +1 -1
- package/dist/core/{p-5d987f8f.entry.js → p-153d3597.entry.js} +2 -2
- package/dist/core/{p-5d987f8f.entry.js.map → p-153d3597.entry.js.map} +1 -1
- package/dist/core/{p-4b6818d9.entry.js → p-1cc402b8.entry.js} +2 -2
- package/dist/core/{p-4b6818d9.entry.js.map → p-1cc402b8.entry.js.map} +1 -1
- package/dist/core/{p-8d908a57.entry.js → p-22863d31.entry.js} +2 -2
- package/dist/core/{p-8d908a57.entry.js.map → p-22863d31.entry.js.map} +1 -1
- package/dist/core/{p-c94e7b0b.entry.js → p-27207aa3.entry.js} +2 -2
- package/dist/core/{p-c94e7b0b.entry.js.map → p-27207aa3.entry.js.map} +1 -1
- package/dist/core/{p-2c4bf16f.entry.js → p-2d6a1b50.entry.js} +2 -2
- package/dist/core/{p-2c4bf16f.entry.js.map → p-2d6a1b50.entry.js.map} +1 -1
- package/dist/core/{p-b6b7c15c.entry.js → p-307c13a1.entry.js} +2 -2
- package/dist/core/p-307c13a1.entry.js.map +1 -0
- package/dist/core/{p-2d8900bf.entry.js → p-30b3afb1.entry.js} +2 -2
- package/dist/core/{p-2d8900bf.entry.js.map → p-30b3afb1.entry.js.map} +1 -1
- package/dist/core/{p-bf93baea.entry.js → p-324862f7.entry.js} +2 -2
- package/dist/core/{p-bf93baea.entry.js.map → p-324862f7.entry.js.map} +1 -1
- package/dist/core/{p-0fe08a58.js → p-33927ee1.js} +2 -2
- package/dist/core/{p-1bcf49fa.entry.js → p-369f4536.entry.js} +2 -2
- package/dist/core/p-369f4536.entry.js.map +1 -0
- package/dist/core/{p-b6d1988d.entry.js → p-3a5da30c.entry.js} +2 -2
- package/dist/core/{p-b6d1988d.entry.js.map → p-3a5da30c.entry.js.map} +1 -1
- package/dist/core/{p-826a6c25.entry.js → p-3d10fa12.entry.js} +2 -2
- package/dist/core/{p-826a6c25.entry.js.map → p-3d10fa12.entry.js.map} +1 -1
- package/dist/core/{p-f569a91f.entry.js → p-48127d40.entry.js} +2 -2
- package/dist/core/{p-f569a91f.entry.js.map → p-48127d40.entry.js.map} +1 -1
- package/dist/core/{p-3448c713.entry.js → p-48db785a.entry.js} +2 -2
- package/dist/core/{p-3448c713.entry.js.map → p-48db785a.entry.js.map} +1 -1
- package/dist/core/{p-b27bc1a1.entry.js → p-4b212968.entry.js} +2 -2
- package/dist/core/{p-b27bc1a1.entry.js.map → p-4b212968.entry.js.map} +1 -1
- package/dist/core/p-53d50d9e.entry.js +2 -0
- package/dist/core/p-53d50d9e.entry.js.map +1 -0
- package/dist/core/p-558936fb.entry.js +2 -0
- package/dist/core/p-558936fb.entry.js.map +1 -0
- package/dist/core/{p-64372a57.entry.js → p-593cc594.entry.js} +2 -2
- package/dist/core/{p-64372a57.entry.js.map → p-593cc594.entry.js.map} +1 -1
- package/dist/core/{p-bbf39a76.entry.js → p-666a671b.entry.js} +2 -2
- package/dist/core/{p-bbf39a76.entry.js.map → p-666a671b.entry.js.map} +1 -1
- package/dist/core/{p-8397766e.entry.js → p-726144b4.entry.js} +2 -2
- package/dist/core/{p-8397766e.entry.js.map → p-726144b4.entry.js.map} +1 -1
- package/dist/core/p-74e0f41f.entry.js +2 -0
- package/dist/core/p-74e0f41f.entry.js.map +1 -0
- package/dist/core/{p-0dc0d839.entry.js → p-75f3038c.entry.js} +2 -2
- package/dist/core/{p-0dc0d839.entry.js.map → p-75f3038c.entry.js.map} +1 -1
- package/dist/core/p-7892130d.entry.js +2 -0
- package/dist/core/p-7892130d.entry.js.map +1 -0
- package/dist/core/{p-b6c3cc1c.entry.js → p-7e5e94a9.entry.js} +2 -2
- package/dist/core/p-7e5e94a9.entry.js.map +1 -0
- package/dist/core/p-8048c7da.entry.js +2 -0
- package/dist/core/{p-1e256460.entry.js.map → p-8048c7da.entry.js.map} +1 -1
- package/dist/core/p-80e43591.entry.js +2 -0
- package/dist/core/{p-8cb5deba.entry.js.map → p-80e43591.entry.js.map} +1 -1
- package/dist/core/{p-75901d06.entry.js → p-86ff903d.entry.js} +2 -2
- package/dist/core/{p-ead0acc3.entry.js → p-8908b8e6.entry.js} +2 -2
- package/dist/core/{p-832c7042.entry.js → p-8bf1022e.entry.js} +2 -2
- package/dist/core/{p-90364cef.entry.js → p-8fa7085e.entry.js} +2 -2
- package/dist/core/{p-90364cef.entry.js.map → p-8fa7085e.entry.js.map} +1 -1
- package/dist/core/{p-5237f3ac.entry.js → p-97c437bb.entry.js} +2 -2
- package/dist/core/p-9c8a98e8.entry.js +2 -0
- package/dist/core/p-9c8a98e8.entry.js.map +1 -0
- package/dist/core/{p-0f86ea09.entry.js → p-9f792a31.entry.js} +2 -2
- package/dist/core/{p-0f86ea09.entry.js.map → p-9f792a31.entry.js.map} +1 -1
- package/dist/core/{p-cd8178a9.entry.js → p-abcc90f0.entry.js} +2 -2
- package/dist/core/{p-cd8178a9.entry.js.map → p-abcc90f0.entry.js.map} +1 -1
- package/dist/core/p-ad48c77c.entry.js +2 -0
- package/dist/core/p-ad48c77c.entry.js.map +1 -0
- package/dist/core/p-b0462734.entry.js +2 -0
- package/dist/core/p-b0462734.entry.js.map +1 -0
- package/dist/core/{p-88c5ec78.entry.js → p-b2680959.entry.js} +2 -2
- package/dist/core/{p-88c5ec78.entry.js.map → p-b2680959.entry.js.map} +1 -1
- package/dist/core/{p-b1b27b7e.entry.js → p-b3ac38c5.entry.js} +2 -2
- package/dist/core/{p-b1b27b7e.entry.js.map → p-b3ac38c5.entry.js.map} +1 -1
- package/dist/core/p-b5ef2799.entry.js +2 -0
- package/dist/core/{p-497918fd.entry.js.map → p-b5ef2799.entry.js.map} +1 -1
- package/dist/core/{p-33404c14.entry.js → p-b7a0dc04.entry.js} +2 -2
- package/dist/core/{p-33404c14.entry.js.map → p-b7a0dc04.entry.js.map} +1 -1
- package/dist/core/p-b8938f93.entry.js +2 -0
- package/dist/core/p-b8938f93.entry.js.map +1 -0
- package/dist/core/{p-9097a16a.entry.js → p-b9d4c0db.entry.js} +2 -2
- package/dist/core/{p-9097a16a.entry.js.map → p-b9d4c0db.entry.js.map} +1 -1
- package/dist/core/{p-b3509380.entry.js → p-c4bf8742.entry.js} +2 -2
- package/dist/core/{p-3cf99186.entry.js → p-c6eabd53.entry.js} +2 -2
- package/dist/core/{p-6f72e6ac.entry.js → p-c7ccc52a.entry.js} +2 -2
- package/dist/core/{p-6f72e6ac.entry.js.map → p-c7ccc52a.entry.js.map} +1 -1
- package/dist/core/p-c82a2e84.entry.js +2 -0
- package/dist/core/p-c82a2e84.entry.js.map +1 -0
- package/dist/core/{p-94065f7a.entry.js → p-ca3c6653.entry.js} +2 -2
- package/dist/core/{p-94065f7a.entry.js.map → p-ca3c6653.entry.js.map} +1 -1
- package/dist/core/{p-d281c3cf.entry.js → p-d47acbd4.entry.js} +2 -2
- package/dist/core/{p-d281c3cf.entry.js.map → p-d47acbd4.entry.js.map} +1 -1
- package/dist/core/{p-a54eb1d1.entry.js → p-d5f8ef77.entry.js} +2 -2
- package/dist/core/{p-c77d6efc.entry.js → p-db3b0c0a.entry.js} +2 -2
- package/dist/core/{p-c77d6efc.entry.js.map → p-db3b0c0a.entry.js.map} +1 -1
- package/dist/core/{p-cc36abaa.entry.js → p-db6d0463.entry.js} +2 -2
- package/dist/core/p-dbde45ff.entry.js +2 -0
- package/dist/core/p-dbde45ff.entry.js.map +1 -0
- package/dist/core/p-dc8eede2.entry.js +2 -0
- package/dist/core/p-dc8eede2.entry.js.map +1 -0
- package/dist/core/p-dd7450fb.js +2 -0
- package/dist/core/p-dd7450fb.js.map +1 -0
- package/dist/core/{p-fc5661ac.entry.js → p-de43d375.entry.js} +2 -2
- package/dist/core/{p-fc5661ac.entry.js.map → p-de43d375.entry.js.map} +1 -1
- package/dist/core/p-de8081c6.entry.js +2 -0
- package/dist/core/{p-a26a60ff.entry.js.map → p-de8081c6.entry.js.map} +1 -1
- package/dist/core/p-e4906394.entry.js +2 -0
- package/dist/core/{p-032113b9.entry.js.map → p-e4906394.entry.js.map} +1 -1
- package/dist/core/p-e595bb87.entry.js +2 -0
- package/dist/core/p-e595bb87.entry.js.map +1 -0
- package/dist/core/{p-42913c5b.entry.js → p-e75514f1.entry.js} +2 -2
- package/dist/core/{p-42913c5b.entry.js.map → p-e75514f1.entry.js.map} +1 -1
- package/dist/core/{p-6dd73165.entry.js → p-ee6caf27.entry.js} +2 -2
- package/dist/core/{p-6dd73165.entry.js.map → p-ee6caf27.entry.js.map} +1 -1
- package/dist/core/{p-2de3287c.entry.js → p-f33eae3c.entry.js} +2 -2
- package/dist/core/{p-2de3287c.entry.js.map → p-f33eae3c.entry.js.map} +1 -1
- package/dist/core/{p-9e051db4.entry.js → p-f34eee68.entry.js} +2 -2
- package/dist/core/{p-9e051db4.entry.js.map → p-f34eee68.entry.js.map} +1 -1
- package/dist/core/{p-fb7f4e2e.entry.js → p-fbb0a74d.entry.js} +2 -2
- package/dist/core/{p-fb7f4e2e.entry.js.map → p-fbb0a74d.entry.js.map} +1 -1
- package/dist/core/{p-9fafa5fa.entry.js → p-fbd80981.entry.js} +2 -2
- package/dist/core/p-fbd80981.entry.js.map +1 -0
- package/dist/core/{p-e18ba5d6.entry.js → p-fffb98c9.entry.js} +2 -2
- package/dist/core/{p-e18ba5d6.entry.js.map → p-fffb98c9.entry.js.map} +1 -1
- package/dist/esm/clear-icon-1c79bda2.js +8 -0
- package/dist/esm/clear-icon-1c79bda2.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-d9387cd3.js → helpers-89cb996d.js} +2 -2
- package/dist/esm/helpers-89cb996d.js.map +1 -0
- package/dist/esm/{helpers-574534c9.js → helpers-dea3fd9b.js} +2 -2
- package/dist/esm/{helpers-574534c9.js.map → helpers-dea3fd9b.js.map} +1 -1
- package/dist/esm/ic-accordion-group.entry.js +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-action-chip.entry.js +112 -0
- package/dist/esm/ic-action-chip.entry.js.map +1 -0
- package/dist/esm/ic-alert.entry.js +1 -1
- package/dist/esm/ic-back-to-top.entry.js +4 -4
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +3 -3
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +3 -3
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +3 -3
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +42 -87
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-horizontal.entry.js +1 -1
- package/dist/esm/ic-card-vertical.entry.js +5 -5
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +3 -3
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox_3.entry.js +8 -8
- package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +12 -4
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +2 -2
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +2 -2
- package/dist/esm/ic-data-list.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +3 -3
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
- package/dist/esm/ic-data-table.entry.js +64 -69
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +26 -18
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-date-picker.entry.js +18 -11
- package/dist/esm/ic-date-picker.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +2 -2
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +3 -3
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +4 -4
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +5 -5
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_4.entry.js +217 -0
- package/dist/esm/ic-input-component-container_4.entry.js.map +1 -0
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +2 -2
- package/dist/esm/ic-menu-group.entry.js.map +1 -1
- package/dist/esm/ic-menu-item.entry.js +1 -1
- package/dist/esm/{ic-input-component-container_3.entry.js → ic-menu.entry.js} +43 -140
- package/dist/esm/ic-menu.entry.js.map +1 -0
- package/dist/esm/ic-navigation-button.entry.js +3 -3
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +4 -11
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +5 -5
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +7 -7
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination_4.entry.js +18 -18
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +5 -5
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +5 -5
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +5 -5
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +10 -10
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +2 -2
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +5 -5
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +2 -2
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-skip-link.entry.js +2 -2
- package/dist/esm/ic-skip-link.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +3 -3
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +14 -14
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +3 -3
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +5 -5
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +1 -1
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +3 -3
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +2 -2
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +3 -3
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +2 -2
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-time-input.entry.js +939 -0
- package/dist/esm/ic-time-input.entry.js.map +1 -0
- package/dist/esm/ic-toast-region.entry.js +1 -1
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +4 -4
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +16 -5
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +14 -5
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +5 -5
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +15 -9
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +24 -16
- package/dist/esm/ic-tree-view.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +3 -3
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-a7a720e7.js +12 -4
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.stories.d.ts +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +12 -7
- package/dist/types/components/ic-data-table/story-data.d.ts +11 -84
- package/dist/types/components/ic-date-input/ic-date-input.d.ts +2 -1
- package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +4 -0
- package/dist/types/components/ic-time-input/ic-time-input.d.ts +229 -0
- package/dist/types/components/ic-time-input/ic-time-input.stories.d.ts +121 -0
- package/dist/types/components/ic-time-input/test/helpers/ic-time-input.d.ts +23 -0
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +2 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +2 -1
- package/dist/types/components.d.ts +242 -2
- package/dist/types/utils/types.d.ts +5 -0
- package/hydrate/index.js +1611 -493
- package/hydrate/index.mjs +1611 -493
- package/package.json +3 -3
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +0 -133
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +0 -1
- package/dist/core/p-032113b9.entry.js +0 -2
- package/dist/core/p-145238fe.entry.js +0 -2
- package/dist/core/p-145238fe.entry.js.map +0 -1
- package/dist/core/p-1b20ab19.entry.js +0 -2
- package/dist/core/p-1b20ab19.entry.js.map +0 -1
- package/dist/core/p-1bcf49fa.entry.js.map +0 -1
- package/dist/core/p-1e256460.entry.js +0 -2
- package/dist/core/p-224b2e14.entry.js +0 -2
- package/dist/core/p-224b2e14.entry.js.map +0 -1
- package/dist/core/p-497918fd.entry.js +0 -2
- package/dist/core/p-5f8b09e4.entry.js +0 -2
- package/dist/core/p-5f8b09e4.entry.js.map +0 -1
- package/dist/core/p-7001f1c1.entry.js +0 -2
- package/dist/core/p-7001f1c1.entry.js.map +0 -1
- package/dist/core/p-8cb5deba.entry.js +0 -2
- package/dist/core/p-95881758.entry.js +0 -2
- package/dist/core/p-95881758.entry.js.map +0 -1
- package/dist/core/p-9fafa5fa.entry.js.map +0 -1
- package/dist/core/p-a26a60ff.entry.js +0 -2
- package/dist/core/p-b6b7c15c.entry.js.map +0 -1
- package/dist/core/p-b6c3cc1c.entry.js.map +0 -1
- package/dist/core/p-b9369ce5.entry.js +0 -2
- package/dist/core/p-b9369ce5.entry.js.map +0 -1
- package/dist/core/p-cbbba154.entry.js +0 -2
- package/dist/core/p-cbbba154.entry.js.map +0 -1
- package/dist/core/p-cdd6d5e8.entry.js +0 -2
- package/dist/core/p-cdd6d5e8.entry.js.map +0 -1
- package/dist/core/p-dc3aba7c.entry.js +0 -2
- package/dist/core/p-dc3aba7c.entry.js.map +0 -1
- package/dist/core/p-e253a857.js.map +0 -1
- package/dist/esm/helpers-d9387cd3.js.map +0 -1
- package/dist/esm/ic-input-component-container_3.entry.js.map +0 -1
- package/dist/esm/ic-input-label_2.entry.js +0 -128
- package/dist/esm/ic-input-label_2.entry.js.map +0 -1
- /package/dist/core/{p-0fe08a58.js.map → p-33927ee1.js.map} +0 -0
- /package/dist/core/{p-75901d06.entry.js.map → p-86ff903d.entry.js.map} +0 -0
- /package/dist/core/{p-ead0acc3.entry.js.map → p-8908b8e6.entry.js.map} +0 -0
- /package/dist/core/{p-832c7042.entry.js.map → p-8bf1022e.entry.js.map} +0 -0
- /package/dist/core/{p-5237f3ac.entry.js.map → p-97c437bb.entry.js.map} +0 -0
- /package/dist/core/{p-b3509380.entry.js.map → p-c4bf8742.entry.js.map} +0 -0
- /package/dist/core/{p-3cf99186.entry.js.map → p-c6eabd53.entry.js.map} +0 -0
- /package/dist/core/{p-a54eb1d1.entry.js.map → p-d5f8ef77.entry.js.map} +0 -0
- /package/dist/core/{p-cc36abaa.entry.js.map → p-db6d0463.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
|
|
1
|
-
import{h as t,r as e,c as i,H as s,g as a}from"./p-8e4e97b4.js";import{d as n,g as r,a as h,y as o,b as c,c as d,e as l,f as u,h as f}from"./p-c86ca475.js";import{s as b,k as p,l as m,m as y,r as w,o as k,n as g}from"./p-e253a857.js";const v=`<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M9.70687 6L8.29688 7.41L12.8769 12L8.29688 16.59L9.70687 18L15.7069 12L9.70687 6Z" fill="currentColor"/>\n</svg>\n`;const x=({focussed:e,today:i,day:s,monthInView:a,onFocusDay:n,onBlurDay:r,onSelectDay:h,selected:o,focussedDayRef:c,inRange:d,showDaysOutsideMonth:l,disableDay:u})=>{const f=()=>{h(s)};const y=()=>{n()};const w=()=>{r()};const k=b(p);const g=b(m);const v=!d||u;const x=a!==s.getMonth();const D=v||x&&!l;return t("div",{class:"day-button-container"},t("button",{class:{"day-button":true,"outside-month":x,"outside-range":!!v,hidden:x&&!l,disabled:D,today:i,selected:o,focussed:e},tabIndex:e?0:-1,"aria-hidden":x?"true":"false","aria-disabled":D?"true":"false","aria-current":i?"date":undefined,"aria-label":D||x||v?undefined:`Choose ${k[s.getDay()]}, ${s.getDate()} ${g[s.getMonth()]} ${s.getFullYear()}`,disabled:D,onClick:f,onBlur:w,onFocus:y,ref:t=>{if(e&&t&&c){c(t)}}},(!x||x&&l)&&t("ic-typography",{variant:"subtitle-small",italic:x},s.getDate())))};const D=({size:e,focussedMonth:i,monthInView:s,onSelectMonth:a,onKeyDown:o,focussedMonthRef:c,minDate:d,maxDate:l,yearInView:u})=>{const f=t=>{const e=t.target;a(Number(e.getAttribute("data-month")))};const p=b(m);return t("div",{class:{"month-picker":true},role:"list"},p.map(((a,b)=>{const p=s===b;const m=i===b;const y=!n(new Date(u,b,1),d?h(d):null,l?r(l):null);return t("ic-button",{role:"listitem",class:{"month-button":true,selected:p,focussed:m,disabled:y},"full-width":true,disabled:y,variant:p?"primary":"tertiary","data-month":b,size:e,tabIndex:m?0:-1,"aria-current":p?"true":"false","aria-label":p?"":`select ${a}`,onClick:f,onKeyDown:o,ref:t=>{if(m&&t){c(t)}}},a)})))};const z=({decadeView:e,size:i,focussedYear:s,yearInView:a,onSelectYear:n,onFocusYear:r,onBlurYear:h,onKeyDown:c,minDate:d,maxDate:l,focussedYearRef:u})=>{const f=t=>{const e=t.target;n(Number(e.getAttribute("data-year")))};const b=()=>{r()};const p=()=>{h()};const m=t=>{t.preventDefault()};const y=e[0];const w=e[11];const k=e.slice(1,11);return t("div",{class:"year-picker",role:"list"},t("div",{class:"prev-decade","aria-hidden":"true"},t("ic-button",{id:"prev-decade-button",class:{"year-button":true},disabled:!o(y,d,l),"data-year":y,tabIndex:-1,variant:"tertiary",onClick:f,onMouseDown:m,"aria-hidden":"true",size:i},`${y-9}s`,t("svg",{slot:"left-icon",width:"12",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"M11.3333 5.33341H3.21996L6.94663 1.60675L5.99996 0.666748L0.666626 6.00008L5.99996 11.3334L6.93996 10.3934L3.21996 6.66675H11.3333V5.33341Z",fill:"currentColor"})))),k.map((e=>{const n=a===e;const r=s===e;return t("ic-button",{class:{"year-button":true,selected:n,focussed:r},disabled:!o(e,d,l),"data-year":e,tabIndex:r?0:-1,variant:n?"primary":"tertiary",onClick:f,"aria-label":n?"":`select ${e}`,role:"listitem","aria-current":n?"true":"false",onKeyDown:c,onFocus:b,onBlur:p,size:i,ref:t=>{if(r&&t){u(t)}}},e)})),t("div",{class:"next-decade","aria-hidden":"true"},t("ic-button",{id:"next-decade-button",class:{"year-button":true,flip:true},disabled:!o(w,d,l),"data-year":w,tabIndex:-1,variant:"tertiary",onClick:f,onMouseDown:m,"aria-hidden":"true",size:i},`${w}s`,t("svg",{slot:"right-icon",width:"12",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"M11.3333 5.33341H3.21996L6.94663 1.60675L5.99996 0.666748L0.666626 6.00008L5.99996 11.3334L6.93996 10.3934L3.21996 6.66675H11.3333V5.33341Z",fill:"currentColor"})))))};const H='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;position:relative;--month-year-picker-button-width:5rem;--month-button-width:5.5rem;--input-field-width:var(--input-width, 19.125rem);--ic-input-label-helpertext-padding:var(--ic-space-xxs)}:host(.ic-date-picker-large){--month-button-width:6.3125rem;--input-field-width:var(--input-width, 21.125rem)}:host(.ic-date-picker-small){--month-button-width:6.25rem;--input-field-width:var(--input-width, 17.125rem)}:host .date-input-container{position:relative}ic-date-input{--input-width:var(--input-field-width)}:host .calendar-container{min-width:19rem;max-width:23.5rem;width:var(--input-width);display:flex;flex-direction:column;gap:var(--ic-space-xs);position:absolute;border:var(--ic-border-default);border-color:var(--ic-date-picker-calendar-border);border-radius:var(--ic-border-radius);align-items:center;background-color:var(--ic-date-picker-calendar-bg);z-index:var(--ic-z-index-date-picker);box-sizing:border-box;box-shadow:var(--ic-date-picker-calendar-elevation);margin-top:var(--ic-space-xxxs);padding:var(--ic-space-xs);animation:fade-in-calendar var(--ic-transition-duration-slow)}:host(.ic-date-picker-small) .calendar-container{min-width:17rem;max-width:21.5rem}:host(.ic-date-picker-large) .calendar-container{min-width:21rem;max-width:25.5rem}:host .calendar-container.above{bottom:calc(var(--ic-space-xxl) - var(--ic-space-xxs))}:host .month-year-nav-container{display:flex;justify-content:space-between;align-items:center;align-self:stretch}:host .month-year-nav-container.hidden{display:none}:host .month-year-nav{display:flex;justify-content:space-between;align-items:center;flex:1 0 0}:host .month-picker,:host .year-picker{flex-wrap:wrap;display:inline-flex;align-items:center;width:17.5rem;-moz-column-gap:var(--ic-space-xs);column-gap:var(--ic-space-xs);row-gap:var(--ic-space-xxs)}:host(.ic-date-picker-small) .month-picker,:host(.ic-date-picker-small) .year-picker{width:13.125rem}:host(.ic-date-picker-large) .month-picker,:host(.ic-date-picker-large) .year-picker{width:20rem}:host .month-picker-button,:host .year-picker-button{width:5rem;--min-width:5rem}:host .month-button,:host .year-button{width:var(--month-button-width)}:host .month-button.focussed,:host .year-button.focussed{z-index:1}:host .month-button::part(button),:host .year-button::part(button){min-width:var(--month-button-width)}:host .prev-decade .year-button svg{margin-right:calc(-1 * var(--ic-space-xl));padding-top:var(--ic-space-sm)}:host .prev-decade .year-button::part(button){padding-left:0;padding-right:var(--ic-space-lg)}:host(.ic-date-picker-small) .prev-decade .year-button::part(button){padding-left:0;padding-right:calc(var(--ic-space-lg) + var(--ic-space-xxs))}:host .next-decade .year-button svg{margin-left:calc(-1 * var(--ic-space-xl));padding-top:var(--ic-space-sm)}:host .next-decade .year-button::part(button){padding-right:0;padding-left:var(--ic-space-lg)}:host(.ic-date-picker-small) .next-decade .year-button::part(button),:host(.ic-date-picker-large) .next-decade .year-button::part(button){padding-left:var(--ic-space-xl)}:host .bottom-buttons{padding-top:var(--ic-space-xs);display:flex;justify-content:space-between;align-items:center;align-self:stretch;animation:fade-in-buttons var(--ic-transition-duration-slow)}:host(.ic-date-picker-small) .bottom-buttons{padding-top:var(--ic-space-xxs)}:host .bottom-buttons.no-today{align-items:flex-end;flex-direction:column}:host .bottom-buttons.hidden{display:none}:host .calendar{display:flex;flex-direction:column;align-items:flex-start;width:15.75rem;animation:fade-in-buttons var(--ic-transition-duration-slow)}:host(.ic-date-picker-large) .calendar{width:19.25rem}:host(.ic-date-picker-small) .calendar{padding-bottom:var(--ic-space-xxs);width:14rem}:host .hidden{display:none}:host .weekdays{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:var(--ic-space-xs);align-self:stretch}:host .calendar-days-container{display:flex;flex-wrap:wrap;justify-content:space-between;row-gap:var(--ic-space-xs);padding:var(--ic-space-xxs) 0}:host(.ic-date-picker-small) .calendar-days-container{padding:var(--ic-space-xxxs) 0}:host(.ic-date-picker-large) .calendar-days-container{padding:var(--ic-space-xs) 0}:host .calendar-day-header{display:flex;width:2rem;padding:var(--ic-space-xxs) 0;justify-content:center;align-items:center}:host(.ic-date-picker-small) .calendar-day-header,:host(.ic-date-picker-large) .calendar-day-header{padding:var(--ic-space-xxs)}:host .calendar-day-header ic-typography{--ic-typography-color:var(--ic-date-picker-calendar-label);text-align:center}:host .day-button-container{display:flex;justify-content:center;align-items:center;width:2.25rem;height:2.25rem}:host(.ic-date-picker-small) .day-button-container{width:2rem;height:2rem}:host(.ic-date-picker-large) .day-button-container{width:2.5rem;height:2.5rem}:host .day-button{display:flex;position:relative;justify-content:center;align-items:center;border:0;border-radius:2rem;background-color:var(--ic-date-picker-calendar-bg);width:2rem;height:2rem;cursor:pointer;transition:var(--ic-easing-transition-fast);z-index:0}:host .day-button.disabled{cursor:default}:host(.ic-date-picker-large) .day-button{width:2.25rem;height:2.25rem}:host(.ic-date-picker-small) .day-button{width:1.75rem;height:1.75rem}:host .day-button ic-typography{width:1.75rem;--ic-typography-color:var(--ic-date-picker-date-label-default)}:host .day-button.outside-range ic-typography{--ic-typography-color:var(--ic-date-picker-date-label-disabled)}:host .day-button.outside-month ic-typography{font-weight:var(--ic-font-weight-regular) !important}:host .day-button.outside-month:not(.outside-range):not(.selected) ic-typography{--ic-typography-color:var(--ic-date-picker-date-label-default)}:host .day-button:hover:not(.disabled){background-color:var(--ic-date-picker-date-default-bg-hover)}:host .day-button:active:not(.disabled){background-color:var(--ic-date-picker-date-default-bg-pressed)}@media (prefers-reduced-motion: no-preference){:host .day-button:hover:not(.disabled):not(.focussed),:host .day-button:active:not(.disabled):not(.focussed){transition:background-color var(--ic-transition-duration-slow) ease-in-out}}:host .day-button.selected:not(.hidden){background-color:var(--ic-date-picker-date-active-bg-default)}:host .day-button.selected ic-typography{--ic-typography-color:var(--ic-date-picker-date-label-selected)}:host .day-button.selected:not(.hidden):hover{background-color:var(--ic-date-picker-date-active-bg-hover)}:host .day-button.selected:not(.hidden):active{background-color:var(--ic-date-picker-date-active-bg-pressed)}:host .day-button.focussed{z-index:1}:host .day-button:focus{outline:none}:host .day-button.focussed:focus{box-shadow:var(--ic-border-focus)}:host .day-button.today:not(.hidden)::after{content:"";position:absolute;width:0.875rem;height:0.125rem;bottom:0.4rem;border-radius:var(--ic-border-radius);background-color:var(--ic-date-picker-default-underline)}:host(.ic-date-picker-small) .day-button.today::after{bottom:0.35rem}:host(.ic-date-picker-large) .day-button.today::after{width:1rem}:host .day-button.today.selected::after{background-color:var(--ic-date-picker-selected-underline)}:host #select-month-hint,:host #select-year-hint{display:none}.sr-only{position:absolute;left:-9999px}@media (prefers-reduced-motion: reduce){:host .calendar-container,:host .calendar,:host .bottom-buttons{animation:none}}@keyframes fade-in-buttons{0%{opacity:0}50%{opacity:0}100%{opacity:1}}@keyframes fade-in-calendar{0%{display:flex;max-height:0}100%{display:flex;max-height:600px}}@media (forced-colors: active){:host .day-button.today:not(.hidden)::after{background-color:highlight}:host .day-button.selected:not(.hidden){background-color:highlight}:host .day-button.focussed:focus{border:var(--ic-border-hc)}:host .month-button.selected::part(button),:host .year-button.selected::part(button){background-color:highlight}}';const M=H;const P="DD/MM/YYYY";const V="Dates in the future are not allowed. Please select a date in the past.";const L="Dates in the past are not allowed. Please select a date in the future.";const T="The date you have selected is on a day of the week that is not allowed. Please select another date.";const C=100;const I=360;const Y=400;const $=440;const A=class{constructor(s){e(this,s);this.icChange=i(this,"icChange",7);this.clearButtonEl=null;this.daysOfWeek=[];this.dayButtonFocussed=false;this.dayPickerKeyboardNav=false;this.dialogDescription="";this.focusDay=true;this.liveRegionEl=undefined;this.monthNames=[];this.monthInViewUpdateHandled=false;this.myCalendarButtonClicked=false;this.showPickerAbove=false;this.today=new Date;this.todayButtonEl=null;this.yearButtonFocussed=false;this.calendarOpen=false;this.currMonthView=[];this.currYearPickerView=[];this.decadeView=[];this.focussedDate=null;this.maxDate=null;this.minDate=null;this.monthPickerVisible=false;this.orderedDaysOfWeek=[];this.selectedDate=null;this.yearPickerVisible=false;this.dateFormat="DD/MM/YYYY";this.disabled=false;this.emitDatePartChange=false;this.disableDays=[];this.disableDaysMessage="The date you have selected is on a day of the week that is not allowed. Please select another date.";this.disableFuture=false;this.disableFutureMessage="Dates in the future are not allowed. Please select a date in the past.";this.disablePast=false;this.disablePastMessage="Dates in the past are not allowed. Please select a date in the future.";this.hideHelperText=false;this.hideLabel=false;this.invalidDateMessage="Please enter a valid date.";this.max="";this.min="";this.openAtDate="";this.required=false;this.showDaysOutsideMonth=true;this.showPickerClearButton=true;this.showPickerTodayButton=true;this.size="medium";this.startOfWeek=y.Monday;this.theme="inherit";this.validationStatus="";this.validationText="";this.value="";this.setDecadeView=t=>{let e=t-1;const i=[];while(e<=t+10){i.push(e);e++}this.decadeView=i;this.decadeStart=i[1];this.decadeEnd=i[10]};this.setSelectedDate=(t,e=true)=>{var i;if(t===null||!c(t,this.selectedDate)){this.selectedDate=t;this.value=t;if(e){(i=this.inputEl)===null||i===void 0?void 0:i.triggerIcChange(t)}}};this.handleCalendarMouseDown=t=>{const e=t.target;if(e.tagName!=="IC-BUTTON"){t.preventDefault()}};this.handleCalendarClick=t=>{this.clearDialogDescription();t.stopImmediatePropagation()};this.handleDocumentClick=()=>{this.calendarOpen=false};this.keyDownHandler=t=>{var e;if(t.key==="Escape"){if(this.calendarOpen){this.closeButtonClickHandler();(e=this.inputEl)===null||e===void 0?void 0:e.setCalendarFocus();t.stopImmediatePropagation()}}else{this.clearDialogDescription();t.stopImmediatePropagation()}};this.closeButtonClickHandler=()=>{this.calendarOpen=false};this.focusFirstElement=()=>{this.monthButtonEl.setFocus()};this.focusLastElement=()=>{if(this.showPickerClearButton&&this.clearButtonEl&&!this.clearButtonEl.disabled){this.clearButtonEl.setFocus()}else if(this.showPickerTodayButton&&this.todayButtonEl&&!this.todayButtonEl.disabled){this.todayButtonEl.setFocus()}else if(this.monthPickerVisible){this.focussedMonthEl.setFocus()}else if(this.yearPickerVisible){this.focussedYearEl.setFocus()}else{this.focussedDayEl.focus()}};this.focusFocussedDay=()=>{this.focussedDayEl.focus()};this.monthButtonClickHandler=()=>{this.yearPickerVisible=false;this.focusDay=false;this.monthPickerVisible=!this.monthPickerVisible;if(this.monthPickerVisible){this.setAriaLiveRegionText("Month picker view open")}else{this.setMonthSelectedLiveRegionText()}};this.yearButtonClickHandler=()=>{this.monthPickerVisible=false;this.focusDay=false;this.yearPickerVisible=!this.yearPickerVisible;if(this.yearPickerVisible){this.setAriaLiveRegionText(`Year picker view open. ${this.getDecadeInViewText()}`)}else{this.setYearSelectedLiveRegionText()}};this.todayButtonClickHandler=()=>{this.yearPickerVisible=false;this.monthPickerVisible=false;this.setFocussedDate(new Date);this.setAriaLiveRegionText(this.getMonthInViewText());setTimeout((()=>this.focusFocussedDay()),C)};this.todayButtonKeyDownHandler=t=>{var e;if(t.key==="Tab"&&!t.shiftKey&&((e=this.clearButtonEl)===null||e===void 0?void 0:e.disabled)){this.focusFirstElement();t.preventDefault()}};this.clearButtonClickHandler=()=>{this.setSelectedDate(null);let t="Selected date cleared.";if(!this.monthPickerVisible&&!this.yearPickerVisible){t+=` ${this.getMonthInViewText()}`}if(this.monthPickerVisible){this.focussedMonthEl.setFocus()}else if(this.yearPickerVisible){this.focussedYearEl.setFocus()}else{this.focusFocussedDay()}this.setAriaLiveRegionText(t)};this.setMonthSelectedLiveRegionText=()=>{this.setAriaLiveRegionText(`${this.monthNames[this.monthInView]} selected. ${this.getMonthInViewText()}`)};this.setYearSelectedLiveRegionText=()=>{this.setAriaLiveRegionText(`${this.yearInView} selected. ${this.getMonthInViewText()}`)};this.getMonthInViewText=()=>`${this.monthNames[this.monthInView]} ${this.yearInView} currently in view.`;this.getDecadeInViewText=()=>`${this.decadeStart} to ${this.decadeEnd} currently in view.`;this.setAriaLiveRegionText=t=>{this.liveRegionEl&&(this.liveRegionEl.innerText=t)};this.clearDialogDescription=()=>{this.dialogDescription=""};this.clearButtonKeyDownHandler=t=>{if(t.key==="Tab"&&!t.shiftKey){this.focusFirstElement();t.preventDefault()}};this.goToPreviousMonth=(t=false)=>{this.focusDay=t;this.moveMonths(-1)};this.goToNextMonth=(t=false)=>{this.focusDay=t;this.moveMonths(1)};this.goToPreviousYear=(t=false)=>{if(this.isPrevYearAllowed()){this.focusDay=t;this.moveYears(-1)}};this.goToNextYear=(t=false)=>{if(this.isNextYearAllowed()){this.focusDay=t;this.moveYears(1)}};this.navButtonMouseDownHandler=t=>{t.preventDefault()};this.renderMonthYearNavButton=(e,i,s)=>{const a=this.size;return t("div",{"aria-hidden":"true"},t("ic-button",{id:e,disableTooltip:true,disabled:s,onClick:this.monthYearNavClickHandler,class:{flip:i},variant:"icon-tertiary",innerHTML:v,size:a,tabIndex:-1,"aria-hidden":"true",onMouseDown:this.navButtonMouseDownHandler}))};this.monthYearNavClickHandler=t=>{const e=t.target;switch(e.id){case"previous-month-button":this.goToPreviousMonth(this.dayButtonFocussed);break;case"next-month-button":this.goToNextMonth(this.dayButtonFocussed);break;case"previous-year-button":this.goToPreviousYear(this.dayButtonFocussed);break;case"next-year-button":this.goToNextYear(this.dayButtonFocussed);break}};this.previousMonthButton=()=>{let t=false;if(this.focussedDate!==null&&this.minDate!==null){const e=this.focussedDate.getFullYear()===this.minDate.getFullYear();if(e){t=this.monthInView-1<this.minDate.getMonth()}}return this.renderMonthYearNavButton("previous-month-button",true,t)};this.nextMonthButton=()=>{let t=false;if(this.focussedDate!==null&&this.maxDate!==null){const e=this.focussedDate.getFullYear()===this.maxDate.getFullYear();if(e){t=this.monthInView+1>this.maxDate.getMonth()}}return this.renderMonthYearNavButton("next-month-button",false,t)};this.previousYearButton=()=>this.renderMonthYearNavButton("previous-year-button",true,!this.isPrevYearAllowed());this.nextYearButton=()=>this.renderMonthYearNavButton("next-year-button",false,!this.isNextYearAllowed());this.isPrevYearAllowed=()=>this.isYearAllowed(this.yearInView-1);this.isNextYearAllowed=()=>this.isYearAllowed(this.yearInView+1);this.isYearAllowed=t=>o(t,this.minDate,this.maxDate);this.getMonthView=t=>{const e=d(h(t),this.startOfWeek);const i=l(r(t),this.startOfWeek);const s=[];let a=e;while(!c(a,i)){s.push(a);a=new Date(a);a.setDate(a.getDate()+1)}s.push(a);return s};this.isCurrentMonth=()=>{const t=new Date;return t.getFullYear()===this.yearInView&&t.getMonth()===this.monthInView};this.updateMonthInView=()=>{if(this.focussedDate){this.currMonthView=this.getMonthView(this.focussedDate);this.focussedDay=this.focussedDate.getDate();this.monthInView=this.focussedDate.getMonth();this.yearInView=this.focussedDate.getFullYear();if(this.dayPickerKeyboardNav){this.monthInViewUpdateHandled=true;this.setAriaLiveRegionText(this.getMonthInViewText());this.dayPickerKeyboardNav=false}}};this.handleSelectDay=t=>{var e;this.setSelectedDate(t);this.calendarOpen=false;(e=this.inputEl)===null||e===void 0?void 0:e.setCalendarFocus()};this.handleSelectMonth=t=>{this.moveMonths(t-this.monthInView);setTimeout((()=>{this.monthButtonEl.setFocus();this.monthPickerVisible=false;this.setMonthSelectedLiveRegionText()}),C)};this.handleSelectYear=t=>{const e=this.decadeView.indexOf(t);if(e>0&&e<this.decadeView.length-1){this.moveYears(t-this.yearInView);this.focusDay=false;const e=this.monthNames[this.monthInView];this.setAriaLiveRegionText(`${t} selected. ${e} ${t} currently in view.`);setTimeout((()=>{this.yearButtonEl.setFocus();this.yearPickerVisible=false}),C)}else{const e=t-this.focussedYear>0?10:-10;this.updateFocussedYear(e,this.yearButtonFocussed);this.setAriaLiveRegionText(this.getDecadeInViewText())}};this.monthPickerKeyDownHandler=t=>{let e=true;switch(t.key){case"ArrowUp":case"ArrowLeft":this.updateFocussedMonth(-1);break;case"ArrowDown":case"ArrowRight":this.updateFocussedMonth(1);break;case"Home":this.updateFocussedMonth(-this.focussedMonth);break;case"End":this.updateFocussedMonth(11-this.focussedMonth);break;case"Tab":e=this.calendarTabHandler(t);break;case"Escape":t.stopImmediatePropagation();this.monthPickerVisible=false;setTimeout((()=>this.focusFocussedDay()),C);break;default:e=false}if(e){t.preventDefault()}};this.yearPickerKeyDownHandler=t=>{let e=true;switch(t.key){case"ArrowUp":case"ArrowLeft":this.updateFocussedYear(-1);break;case"ArrowDown":case"ArrowRight":this.updateFocussedYear(1);break;case"Home":if(this.focussedYear>this.decadeStart){this.updateFocussedYear(this.decadeStart-this.focussedYear)}break;case"End":if(this.focussedYear<this.decadeEnd){this.updateFocussedYear(this.decadeEnd-this.focussedYear)}break;case"PageUp":this.updateFocussedYear(-10);break;case"PageDown":this.updateFocussedYear(10);break;case"Tab":e=this.calendarTabHandler(t);break;case"Escape":t.stopImmediatePropagation();this.yearPickerVisible=false;setTimeout((()=>this.focusFocussedDay()),C);break;default:e=false}if(e){t.preventDefault()}};this.onYearButtonFocusHandler=()=>{this.yearButtonFocussed=true};this.onYearButtonBlurHandler=()=>{this.yearButtonFocussed=false};this.monthButtonKeyDownHandler=t=>{let e=false;switch(t.key){case"ArrowLeft":case"ArrowUp":e=true;this.goToPreviousMonth();break;case"ArrowRight":case"ArrowDown":e=true;this.goToNextMonth();break;case"Home":e=true;this.focusDay=false;this.moveMonths(-this.monthInView);break;case"End":e=true;this.focusDay=false;this.moveMonths(11-this.monthInView);break;case"Tab":if(t.shiftKey){e=true;this.focusLastElement()}break;case"Escape":if(this.monthPickerVisible){this.monthPickerVisible=false;t.stopImmediatePropagation()}break}if(e){t.preventDefault()}};this.yearButtonKeyDownHandler=t=>{let e=false;switch(t.key){case"ArrowLeft":case"ArrowUp":e=true;this.goToPreviousYear();break;case"ArrowRight":case"ArrowDown":e=true;this.goToNextYear();break;case"Home":if(this.yearPickerVisible&&this.yearInView>this.decadeStart){e=true;this.moveYears(this.decadeStart-this.yearInView)}break;case"End":if(this.yearPickerVisible&&this.yearInView<this.decadeEnd){e=true;this.moveYears(this.decadeEnd-this.focussedYear)}break;case"PageUp":e=true;this.focusDay=false;this.moveYears(-10);break;case"PageDown":e=true;this.focusDay=false;this.moveYears(10);break;case"Escape":if(this.yearPickerVisible){this.yearPickerVisible=false;t.stopImmediatePropagation()}break}if(e){t.preventDefault()}};this.handleCalendarKeyDown=t=>{let e=true;switch(t.key){case"ArrowDown":this.dayPickerKeyboardNav=true;this.moveDays(7);break;case"ArrowUp":this.dayPickerKeyboardNav=true;this.moveDays(-7);break;case"ArrowLeft":this.dayPickerKeyboardNav=true;if(this.focussedDate)this.moveDays(-1*this.getNextDayToFocus(this.focussedDate,false));break;case"ArrowRight":this.dayPickerKeyboardNav=true;if(this.focussedDate)this.moveDays(this.getNextDayToFocus(this.focussedDate,true));break;case"PageUp":this.dayPickerKeyboardNav=true;t.shiftKey?this.moveYears(-1):this.moveMonths(-1);break;case"PageDown":this.dayPickerKeyboardNav=true;t.shiftKey?this.moveYears(1):this.moveMonths(1);break;case"Home":this.dayPickerKeyboardNav=true;this.setFocussedDate(new Date(this.focussedYear,this.focussedMonth,1));break;case"End":this.dayPickerKeyboardNav=true;this.setFocussedDate(new Date(this.focussedYear,this.focussedMonth+1,0));break;case"Tab":e=this.calendarTabHandler(t);break;default:e=false;break}if(e){t.preventDefault()}};this.calendarTabHandler=t=>{var e;let i=false;if(!t.shiftKey&&(!this.showPickerTodayButton||this.isCurrentMonth())&&(!this.showPickerClearButton||((e=this.clearButtonEl)===null||e===void 0?void 0:e.disabled))){this.focusFirstElement();i=true}else if(t.shiftKey){this.yearButtonEl.setFocus();i=true}return i};this.onDayButtonFocusHandler=()=>{this.dayButtonFocussed=true};this.onDayButtonBlurHandler=()=>{this.dayButtonFocussed=false};this.getNextDayToFocus=(t,e,i=1)=>{var s;const a=e?1:-1;const n=new Date(t);n.setDate(n.getDate()+a);return((s=this.disableDays)===null||s===void 0?void 0:s.includes(Number(n.getDay())))?this.getNextDayToFocus(n,e,i+1):i};this.moveDays=t=>{if(this.focussedDate){const e=new Date(this.focussedDate);e.setDate(e.getDate()+t);this.setFocussedDate(e)}};this.moveMonths=t=>{if(this.focussedDate){const e=this.focussedDate.getMonth()+t;const i=new Date(new Date(h(this.focussedDate)).setMonth(e));const s=r(i);const a=new Date(new Date(this.focussedDate).setMonth(e));this.setFocussedDate(u(a,i,s));if(this.monthPickerVisible===false&&this.yearPickerVisible===false&&this.monthInViewUpdateHandled===false){this.setAriaLiveRegionText(this.getMonthInViewText())}this.monthInViewUpdateHandled=false}};this.moveYears=t=>{if(this.focussedDate){const e=this.focussedDate.getFullYear()+t;const i=new Date(new Date(h(this.focussedDate)).setFullYear(e));const s=r(i);const a=new Date(new Date(this.focussedDate).setFullYear(e));this.setFocussedDate(u(a,i,s));if(this.monthPickerVisible===false&&this.yearPickerVisible===false&&this.monthInViewUpdateHandled===false){this.setAriaLiveRegionText(this.getMonthInViewText())}this.monthInViewUpdateHandled=false}};this.updateFocussedMonth=t=>{const e=new Date(this.focussedYear,this.focussedMonth,1);e.setMonth(this.focussedMonth+t);const i=u(e,this.minDate,this.maxDate);this.focussedMonth=i.getMonth();setTimeout((()=>this.focussedMonthEl.setFocus()),C)};this.updateFocussedYear=(t,e=true)=>{const i=new Date((new Date).setFullYear(this.focussedYear+t));const s=u(i,this.minDate,this.maxDate);this.setFocussedYear(s.getFullYear(),e)};this.setFocussedDate=t=>{this.focussedDate=u(t,this.minDate,this.maxDate)};this.setFocussedDayEl=t=>{this.focussedDayEl=t};this.setFocussedMonthEl=t=>{this.focussedMonthEl=t};this.setFocussedYearEl=t=>{this.focussedYearEl=t};this.setFocussedYear=(t,e=true)=>{const i=this.focussedYear;this.focussedYear=t;if(this.yearPickerVisible){const s=Math.floor(t/10)*10;const a=Math.floor(i/10)*10;if(s!==a){this.setDecadeView(s);this.setAriaLiveRegionText(this.getDecadeInViewText())}if(e){setTimeout((()=>{if(this.focussedYearEl!==null)this.focussedYearEl.setFocus()}),C)}}else{this.setDecadeView(Math.floor(t/10)*10)}};this.setDateInputProps=()=>{const t={hideLabel:this.hideLabel,invalidDateMessage:this.invalidDateMessage,label:this.label,showClearButton:true,showCalendarButton:true,value:this.value,emitDatePartChange:this.emitDatePartChange};if(this.dateFormat!==P){t.dateFormat=this.dateFormat}if(this.disableFuture){t.disableFuture=this.disableFuture;if(this.disableFutureMessage!==V){t.disableFutureMessage=this.disableFutureMessage}}if(this.disablePast){t.disablePast=this.disablePast;if(this.disablePastMessage!==L){t.disablePastMessage=this.disablePastMessage}}if(this.disableDays&&this.disableDays.length>0){t.disableDays=this.disableDays;if(this.disableDaysMessage!==T){t.disableDaysMessage=this.disableDaysMessage}}if(this.max!==null&&this.max!==""&&this.maxDate){t.max=this.maxDate}if(this.min!==null&&this.min!==""&&this.minDate){t.min=this.minDate}if(this.helperText!==undefined){t.helperText=this.helperText}if(this.hideHelperText!==false){t.hideHelperText=this.hideHelperText}if(this.inputId!==undefined){t.inputId=this.inputId}if(this.name!==undefined){t.name=this.name}if(this.disabled){t.disabled=this.disabled}if(this.required){t.required=this.required}if(this.size!=="medium"){t.size=this.size}if(this.validationStatus!==""){t.validationStatus=this.validationStatus}if(this.validationText!==""){t.validationText=this.validationText}return t}}watchDisabledHandler(){w(this.disabled,this.el)}watchDisableFutureHandler(){this.watchMaxHandler()}watchDisablePastHandler(){this.watchMinHandler()}watchMaxHandler(){if(this.disableFuture){this.maxDate=new Date}else{this.maxDate=f(this.max,this.dateFormat)}}watchMinHandler(){if(this.disablePast){this.minDate=new Date}else{this.minDate=f(this.min,this.dateFormat)}}watchStartOfWeekHandler(){this.orderedDaysOfWeek=this.daysOfWeek.slice(this.startOfWeek).concat(this.daysOfWeek.slice(0,this.startOfWeek));if(this.calendarOpen){this.updateMonthInView()}}watchOpenHandler(){if(this.calendarOpen){if(this.inputEl){let t=Y;if(this.size==="small"){t=I}else if(this.size==="large"){t=$}if(this.el.offsetTop+this.inputEl.offsetHeight+t>window.innerHeight&&this.el.offsetTop>t){this.showPickerAbove=true}else{this.showPickerAbove=false}}if(this.selectedDate===null||!n(this.selectedDate,this.minDate,this.maxDate)){let t=new Date;if(this.openAtDate!==""){t=f(this.openAtDate,this.dateFormat)}this.setFocussedDate(t)}else{this.setFocussedDate(this.selectedDate)}let t=this.getMonthInViewText();if(this.selectedDate===null){t+=" No date selected."}t+=" Use arrow keys to change day. Press enter or space to select a date or press escape to close the picker";this.dialogDescription=t;setTimeout((()=>this.focusFocussedDay()),C);document.addEventListener("click",this.handleDocumentClick)}else{document.removeEventListener("click",this.handleDocumentClick);this.monthPickerVisible=false;this.yearPickerVisible=false}}watchFocussedDateHandler(t,e){if(e===null||!(e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth())){this.updateMonthInView()}}watchMonthInViewHandler(){this.focussedMonth=this.monthInView}watchYearInViewHandler(){this.setFocussedYear(this.yearInView,false)}watchYearPickerVisibleHandler(){if(!this.yearPickerVisible){this.setFocussedYear(this.yearInView)}}watchMonthPickerVisibleHandler(){if(!this.monthPickerVisible){this.focussedMonth=this.monthInView}}watchFocussedDayEl(){if(this.focusDay){setTimeout((()=>this.focusFocussedDay()),C)}this.focusDay=true}componentWillLoad(){k([{prop:this.label,propName:"label"}],"Date Picker");this.monthNames=b(m);this.daysOfWeek=b(g);this.watchStartOfWeekHandler();this.watchMaxHandler();this.watchMinHandler();w(this.disabled,this.el)}componentWillRender(){this.dateInputProps=this.setDateInputProps()}componentWillUpdate(){this.dateInputProps=this.setDateInputProps()}localCalendarButtonClickHandler(t){this.myCalendarButtonClicked=true;if(!this.calendarOpen){this.setSelectedDate(t.detail.value,false)}this.calendarOpen=!this.calendarOpen}calendarButtonClickHandler(){if(!this.myCalendarButtonClicked){this.calendarOpen=false}this.myCalendarButtonClicked=false}render(){const{calendarOpen:e,dateInputProps:i,monthNames:a,size:r,focussedMonth:h,focussedYear:o,monthInView:d,yearInView:l,monthPickerVisible:u,yearPickerVisible:f,orderedDaysOfWeek:b,decadeView:p,minDate:m,maxDate:y,showPickerClearButton:w,showPickerTodayButton:k,dialogDescription:g,theme:v}=this;let H="";if(u){H=`Use the arrow keys to change the selected month. To return to day picker view, press Enter or Space to select a month, or press Escape.`}else{H=`Press Enter or Space to open month picker view or use the arrow keys to change month.`}let M="";if(f){M=`Use the arrow keys to change the selected year. To return to day picker view, press Enter or Space to select a year, or press Escape.`}else{M=`Press Enter or Space to open year picker view or use the arrow keys to change the selected year.`}const P="choose date";const V=a&&a[d]?a[d]:"Open month picker";const L=this.yearInView?this.yearInView:"Open year picker";let T=m;if(m&&this.disablePast){const t=new Date(m);t.setDate(m.getDate()-1);T=t}return t(s,{key:"f3e096ad765455113084b5c26571383bda7d3d75",onKeyDown:this.keyDownHandler,class:{[`ic-date-picker-${r}`]:true,[`ic-theme-${v}`]:v!=="inherit"}},t("div",{key:"db290c92bf7a22901f7888693fdd4a501b75da0f",class:"date-input-container"},t("ic-date-input",Object.assign({key:"1f2b3537e582d1abb5370e4b73f7d6e4bfb7ff6c",ref:t=>this.inputEl=t},i),t("slot",{key:"e1bd896a33c3fe7468287e19c3959809d2e12831",name:"helper-text",slot:"helper-text"}))),e&&t("div",{key:"3e15ffe8f4e3859197f212c232641e48ed9977fa"},t("span",{key:"5840a049f8f278395fc09a9ed4d63ac00a1dc00e",id:"dialog-description",class:"sr-only"},g),t("div",{key:"4c0dcd3ba00e077ccc7feee92389cc1b6ab33e7e",role:"dialog","aria-modal":"true","aria-label":P,"aria-describedBy":"dialog-description",class:{"calendar-container":true,above:this.showPickerAbove},onMouseDown:this.handleCalendarMouseDown,onClick:this.handleCalendarClick},t("span",{key:"5b273eb2c9651d28343c6626c1493858c87c35ec",ref:t=>this.liveRegionEl=t,id:"live-region","aria-live":"assertive",class:"sr-only"}),t("div",{key:"1b8699fbe3f8de8b321f9bf2d84b26eee18b949a",class:{"month-year-nav-container":true}},t("div",{key:"f5390a3d685bc75bc220b5e6c25634301b3b3001",class:"month-year-nav"},this.previousMonthButton(),t("span",{key:"23323f66c1fa8a68019f1c4dc7341d8e6d672adc",id:"select-month-hint","aria-hidden":"true"},H),t("ic-button",{key:"1f6d75f9f18eee7acbb59359dab51eecb0051415",ref:t=>this.monthButtonEl=t,size:r,class:"month-picker-button","aria-haspopup":"menu","aria-expanded":u?"true":"false","full-width":"true",variant:"tertiary","aria-label":V,"aria-describedby":"select-month-hint",onKeyDown:this.monthButtonKeyDownHandler,onClick:this.monthButtonClickHandler},a[d]),this.nextMonthButton()),t("div",{key:"42a149729b419b69e976896a097bedd040879a09",class:"month-year-nav"},this.previousYearButton(),t("span",{key:"f94101cb4e146f26822856a009f9238109d8f9ce",id:"select-year-hint","aria-hidden":"true"},M),t("ic-button",{key:"f1edef2db467cabec041e67c72920ce07ef30738",ref:t=>this.yearButtonEl=t,size:r,class:"year-picker-button","aria-haspopup":"menu","aria-expanded":f?"true":"false","full-width":"true",variant:"tertiary","aria-label":L,"aria-describedby":"select-year-hint",onKeyDown:this.yearButtonKeyDownHandler,onClick:this.yearButtonClickHandler},this.yearInView),this.nextYearButton())),!(u||f)&&t("div",{key:"30d7102d463465b51cce6087f9a89d4875d121fc",class:{calendar:true,hidden:u||f},onKeyDown:this.handleCalendarKeyDown},t("div",{key:"4b4bfc6e263a68db7706310b87b0176b67652bbe",class:"weekdays","aria-hidden":"true"},b.map((e=>{const i=r==="small"?e.charAt(0):e;return t("div",{class:"calendar-day-header"},t("ic-typography",{variant:"caption"},i))}))),t("div",{key:"57ceb661dd3a493e49f7eea698c04125d81460d6",class:"calendar-days-container"},this.currMonthView.map((e=>{var i;return t(x,{day:e,disableDay:(i=this.disableDays)===null||i===void 0?void 0:i.includes(Number(e.getDay())),today:c(e,this.today),selected:c(e,this.selectedDate),focussed:c(e,this.focussedDate),inRange:n(e,T,y),monthInView:d,onSelectDay:this.handleSelectDay,focussedDayRef:this.setFocussedDayEl,onFocusDay:this.onDayButtonFocusHandler,onBlurDay:this.onDayButtonBlurHandler,showDaysOutsideMonth:this.showDaysOutsideMonth})})))),t("div",{key:"da06f9d055aa5e45a05e56171122ae63be7fc129",class:{"month-picker-container":true,hidden:!u}},u&&t(D,{key:"af37ea4853db314da047c8d8156564897898cf5f",size:r,onSelectMonth:this.handleSelectMonth,monthInView:d,focussedMonth:h,onKeyDown:this.monthPickerKeyDownHandler,focussedMonthRef:this.setFocussedMonthEl,minDate:m,maxDate:y,yearInView:l})),t("div",{key:"8d57c717c9e693ea67b41d08a990a898adeec130",class:{"year-picker-container":true,hidden:!f}},f&&t(z,{key:"71b214123bd08a4808f25eae9e3e90ad82d56460",decadeView:p,size:r,focussedYear:o,onSelectYear:this.handleSelectYear,onKeyDown:this.yearPickerKeyDownHandler,onFocusYear:this.onYearButtonFocusHandler,onBlurYear:this.onYearButtonBlurHandler,yearInView:l,minDate:m,maxDate:y,focussedYearRef:this.setFocussedYearEl})),t("div",{key:"9d6cd8b19f7adf76c8f5249e985cdcdb8dd1f0ca",class:{"bottom-buttons":true,"no-today":!k}},k&&t("ic-button",{key:"75ab2fd1ce1d41d805e4082fe5d8e215782b59b4",id:"today-button",variant:"tertiary",ref:t=>this.todayButtonEl=t,size:r,"aria-label":"Navigate to current date",onClick:this.todayButtonClickHandler,onKeyDown:this.todayButtonKeyDownHandler,disabled:this.isCurrentMonth()},"Go to today"),w&&t("ic-button",{key:"5a60dca9237999a2ecbaaad8c254527178bfc94c",id:"clear-button","aria-label":"clear selected date",ref:t=>this.clearButtonEl=t,variant:"tertiary",size:r,onClick:this.clearButtonClickHandler,onKeyDown:this.clearButtonKeyDownHandler,disabled:this.value===""||this.value===null||this.value===undefined},"Clear")))))}static get delegatesFocus(){return true}get el(){return a(this)}static get watchers(){return{disabled:["watchDisabledHandler"],disableFuture:["watchDisableFutureHandler"],disablePast:["watchDisablePastHandler"],max:["watchMaxHandler"],min:["watchMinHandler"],startOfWeek:["watchStartOfWeekHandler"],calendarOpen:["watchOpenHandler"],focussedDate:["watchFocussedDateHandler"],monthInView:["watchMonthInViewHandler"],yearInView:["watchYearInViewHandler"],yearPickerVisible:["watchYearPickerVisibleHandler"],monthPickerVisible:["watchMonthPickerVisibleHandler"],focussedDayEl:["watchFocussedDayEl"]}}};A.style=M;export{A as ic_date_picker};
|
2
|
-
//# sourceMappingURL=p-b9369ce5.entry.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"names":["DayButton","focussed","today","day","monthInView","onFocusDay","onBlurDay","onSelectDay","selected","focussedDayRef","inRange","showDaysOutsideMonth","disableDay","handleDayClick","handleDayFocus","handleDayBlur","dayNames","stringEnumToArray","IcDayNames","months","IcDateInputMonths","outsideRange","outsideMonth","getMonth","disabled","h","class","hidden","tabIndex","undefined","getDay","getDate","getFullYear","onClick","onBlur","onFocus","ref","el","variant","italic","MonthPicker","size","focussedMonth","onSelectMonth","onKeyDown","focussedMonthRef","minDate","maxDate","yearInView","handleMonthClick","ev","button","target","Number","getAttribute","monthNames","role","map","month","index","current","dateInRange","Date","getMonthStart","getMonthEnd","YearPicker","decadeView","focussedYear","onSelectYear","onFocusYear","onBlurYear","focussedYearRef","handleYearClick","handleYearFocus","handleYearBlur","navButtonMouseDownHandler","preventDefault","prevDecade","nextDecade","years","slice","id","yearInRange","onMouseDown","slot","width","height","fill","xmlns","d","yr","flip","icDatePickerCss","IcDatePickerStyle0","DEFAULT_DATE_FORMAT","DEFAULT_DISABLE_DATES_FROM_NOW_MSG","DEFAULT_DISABLE_DATES_UNTIL_NOW_MSG","DEFAULT_DISABLE_DAYS_MSG","FOCUS_TIMER","PICKER_HEIGHT_SMALL","PICKER_HEIGHT_DEFAULT","PICKER_HEIGHT_LARGE","DatePicker","constructor","hostRef","this","clearButtonEl","daysOfWeek","dayButtonFocussed","dayPickerKeyboardNav","dialogDescription","focusDay","liveRegionEl","monthInViewUpdateHandled","myCalendarButtonClicked","showPickerAbove","todayButtonEl","yearButtonFocussed","calendarOpen","currMonthView","currYearPickerView","focussedDate","monthPickerVisible","orderedDaysOfWeek","selectedDate","yearPickerVisible","dateFormat","emitDatePartChange","disableDays","disableDaysMessage","disableFuture","disableFutureMessage","disablePast","disablePastMessage","hideHelperText","hideLabel","invalidDateMessage","max","min","openAtDate","required","showPickerClearButton","showPickerTodayButton","startOfWeek","IcWeekDays","Monday","theme","validationStatus","validationText","value","setDecadeView","start","currYear","decadeArr","push","decadeStart","decadeEnd","setSelectedDate","emit","dateMatches","_a","inputEl","triggerIcChange","handleCalendarMouseDown","event","tagName","handleCalendarClick","clearDialogDescription","stopImmediatePropagation","handleDocumentClick","keyDownHandler","key","closeButtonClickHandler","setCalendarFocus","focusFirstElement","monthButtonEl","setFocus","focusLastElement","focussedMonthEl","focussedYearEl","focussedDayEl","focus","focusFocussedDay","monthButtonClickHandler","setAriaLiveRegionText","setMonthSelectedLiveRegionText","yearButtonClickHandler","getDecadeInViewText","setYearSelectedLiveRegionText","todayButtonClickHandler","setFocussedDate","getMonthInViewText","setTimeout","todayButtonKeyDownHandler","shiftKey","clearButtonClickHandler","text","innerText","clearButtonKeyDownHandler","goToPreviousMonth","moveMonths","goToNextMonth","goToPreviousYear","isPrevYearAllowed","moveYears","goToNextYear","isNextYearAllowed","renderMonthYearNavButton","buttonSize","disableTooltip","monthYearNavClickHandler","innerHTML","chevron","previousMonthButton","yearMatch","nextMonthButton","previousYearButton","nextYearButton","isYearAllowed","getMonthView","date","getWeekStart","end","getWeekEnd","days","setDate","isCurrentMonth","updateMonthInView","focussedDay","handleSelectDay","handleSelectMonth","handleSelectYear","year","yrPos","indexOf","length","monthName","yearButtonEl","updateFocussedYear","monthPickerKeyDownHandler","handled","updateFocussedMonth","calendarTabHandler","yearPickerKeyDownHandler","onYearButtonFocusHandler","onYearButtonBlurHandler","monthButtonKeyDownHandler","yearButtonKeyDownHandler","handleCalendarKeyDown","moveDays","getNextDayToFocus","onDayButtonFocusHandler","onDayButtonBlurHandler","currDay","forward","level","move","nextDay","includes","numDays","numMonths","newMonth","setMonth","newDate","clampDate","numYears","newYear","setFullYear","adjust","focusYear","setFocussedYear","setFocussedDayEl","element","setFocussedMonthEl","setFocussedYearEl","prevYear","newDecade","Math","floor","oldDecade","setDateInputProps","inputProps","label","showClearButton","showCalendarButton","helperText","inputId","name","watchDisabledHandler","removeDisabledFalse","watchDisableFutureHandler","watchMaxHandler","watchDisablePastHandler","watchMinHandler","createDate","watchStartOfWeekHandler","concat","watchOpenHandler","pickerHeight","offsetTop","offsetHeight","window","innerHeight","openAt","dialogDesc","document","addEventListener","removeEventListener","watchFocussedDateHandler","previous","watchMonthInViewHandler","watchYearInViewHandler","watchYearPickerVisibleHandler","watchMonthPickerVisibleHandler","watchFocussedDayEl","componentWillLoad","onComponentRequiredPropUndefined","prop","propName","IcShortDayNames","componentWillRender","dateInputProps","componentWillUpdate","localCalendarButtonClickHandler","detail","calendarButtonClickHandler","render","monthButtonText","yearButtonText","dialogLabel","monthLabel","yearLabel","minDay","yesterday","Host","Object","assign","above","calendar","dayName","header","charAt"],"sources":["src/components/ic-date-picker/ic-day-button.tsx","src/components/ic-date-picker/ic-month-picker.tsx","src/components/ic-date-picker/ic-year-picker.tsx","src/components/ic-date-picker/ic-date-picker.css?tag=ic-date-picker&encapsulation=shadow","src/components/ic-date-picker/ic-date-picker.tsx"],"sourcesContent":["import { h, FunctionalComponent } from \"@stencil/core\";\nimport { stringEnumToArray } from \"../../utils/helpers\";\nimport { IcDayNames, IcDateInputMonths } from \"../../utils/types\";\n\nexport type DayButtonProps = {\n focussed: boolean;\n today: boolean;\n day: Date;\n monthInView: number;\n onFocusDay: () => void;\n onBlurDay: () => void;\n onSelectDay: (day: Date) => void;\n selected: boolean;\n focussedDayRef?: (element: HTMLButtonElement) => void;\n inRange: boolean;\n showDaysOutsideMonth?: boolean;\n disableDay?: boolean;\n};\n\nexport const DayButton: FunctionalComponent<DayButtonProps> = ({\n focussed,\n today,\n day,\n monthInView,\n onFocusDay,\n onBlurDay,\n onSelectDay,\n selected,\n focussedDayRef,\n inRange,\n showDaysOutsideMonth,\n disableDay,\n}) => {\n const handleDayClick = (): void => {\n onSelectDay(day);\n };\n\n const handleDayFocus = (): void => {\n onFocusDay();\n };\n\n const handleDayBlur = (): void => {\n onBlurDay();\n };\n\n const dayNames = stringEnumToArray(IcDayNames);\n const months = stringEnumToArray(IcDateInputMonths);\n const outsideRange = !inRange || disableDay;\n const outsideMonth = monthInView !== day.getMonth();\n const disabled = outsideRange || (outsideMonth && !showDaysOutsideMonth);\n\n return (\n <div class=\"day-button-container\">\n <button\n class={{\n \"day-button\": true,\n \"outside-month\": outsideMonth,\n \"outside-range\": !!outsideRange,\n hidden: outsideMonth && !showDaysOutsideMonth,\n disabled: disabled,\n today: today,\n selected: selected,\n focussed: focussed,\n }}\n tabIndex={focussed ? 0 : -1}\n aria-hidden={outsideMonth ? \"true\" : \"false\"}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-current={today ? \"date\" : undefined}\n aria-label={\n disabled || outsideMonth || outsideRange\n ? undefined\n : `Choose ${dayNames[day.getDay()]}, ${day.getDate()} ${\n months[day.getMonth()]\n } ${day.getFullYear()}`\n }\n disabled={disabled}\n onClick={handleDayClick}\n onBlur={handleDayBlur}\n onFocus={handleDayFocus}\n ref={(el) => {\n if (focussed && el && focussedDayRef) {\n focussedDayRef(el);\n }\n }}\n >\n {(!outsideMonth || (outsideMonth && showDaysOutsideMonth)) && (\n <ic-typography variant=\"subtitle-small\" italic={outsideMonth}>\n {day.getDate()}\n </ic-typography>\n )}\n </button>\n </div>\n );\n};\n","import { h, FunctionalComponent } from \"@stencil/core\";\nimport {\n dateInRange,\n getMonthStart,\n getMonthEnd,\n} from \"../../utils/date-helpers\";\nimport { stringEnumToArray } from \"../../utils/helpers\";\nimport { IcSizes, IcDateInputMonths } from \"../../utils/types\";\n\nexport type MonthPickerProps = {\n focussedMonth: number;\n monthInView: number;\n yearInView: number;\n onSelectMonth: (month: number) => void;\n onKeyDown: (ev: KeyboardEvent) => void;\n focussedMonthRef: (element: HTMLIcButtonElement) => void;\n minDate: Date | null;\n maxDate: Date | null;\n size?: IcSizes;\n};\n\nexport const MonthPicker: FunctionalComponent<MonthPickerProps> = ({\n size,\n focussedMonth,\n monthInView,\n onSelectMonth,\n onKeyDown,\n focussedMonthRef,\n minDate,\n maxDate,\n yearInView,\n}) => {\n const handleMonthClick = (ev: MouseEvent): void => {\n const button = ev.target as HTMLElement;\n onSelectMonth(Number(button.getAttribute(\"data-month\")));\n };\n\n const monthNames = stringEnumToArray(IcDateInputMonths);\n\n return (\n <div\n class={{\n \"month-picker\": true,\n }}\n role=\"list\"\n >\n {monthNames.map((month, index) => {\n const current = monthInView === index;\n const focussed = focussedMonth === index;\n const outsideRange = !dateInRange(\n new Date(yearInView, index, 1),\n minDate ? getMonthStart(minDate) : null,\n maxDate ? getMonthEnd(maxDate) : null\n );\n\n return (\n <ic-button\n role=\"listitem\"\n class={{\n \"month-button\": true,\n selected: current,\n focussed: focussed,\n disabled: outsideRange,\n }}\n full-width\n disabled={outsideRange}\n variant={current ? \"primary\" : \"tertiary\"}\n data-month={index}\n size={size}\n tabIndex={focussed ? 0 : -1}\n aria-current={current ? \"true\" : \"false\"}\n aria-label={current ? \"\" : `select ${month}`}\n onClick={handleMonthClick}\n onKeyDown={onKeyDown}\n ref={(el?: HTMLIcButtonElement) => {\n if (focussed && el) {\n focussedMonthRef(el);\n }\n }}\n >\n {month}\n </ic-button>\n );\n })}\n </div>\n );\n};\n","import { h, FunctionalComponent } from \"@stencil/core\";\nimport { yearInRange } from \"../../utils/date-helpers\";\nimport { IcSizes } from \"../../utils/types\";\n\nexport type YearPickerProps = {\n decadeView: number[];\n focussedYear: number;\n yearInView: number;\n onSelectYear: (year: number) => void;\n onKeyDown: (ev: KeyboardEvent) => void;\n onFocusYear: () => void;\n onBlurYear: () => void;\n minDate: Date | null;\n maxDate: Date | null;\n focussedYearRef: (element: HTMLIcButtonElement) => void;\n size?: IcSizes;\n};\n\nexport const YearPicker: FunctionalComponent<YearPickerProps> = ({\n decadeView,\n size,\n focussedYear,\n yearInView,\n onSelectYear,\n onFocusYear,\n onBlurYear,\n onKeyDown,\n minDate,\n maxDate,\n focussedYearRef,\n}) => {\n const handleYearClick = (ev: MouseEvent): void => {\n const button = ev.target as HTMLElement;\n onSelectYear(Number(button.getAttribute(\"data-year\")));\n };\n\n const handleYearFocus = (): void => {\n onFocusYear();\n };\n\n const handleYearBlur = (): void => {\n onBlurYear();\n };\n\n const navButtonMouseDownHandler = (ev: MouseEvent): void => {\n ev.preventDefault();\n };\n\n const prevDecade = decadeView[0];\n const nextDecade = decadeView[11];\n const years = decadeView.slice(1, 11);\n\n return (\n <div class=\"year-picker\" role=\"list\">\n <div class=\"prev-decade\" aria-hidden=\"true\">\n <ic-button\n id=\"prev-decade-button\"\n class={{\n \"year-button\": true,\n }}\n disabled={!yearInRange(prevDecade, minDate, maxDate)}\n data-year={prevDecade}\n tabIndex={-1}\n variant=\"tertiary\"\n onClick={handleYearClick}\n onMouseDown={navButtonMouseDownHandler}\n aria-hidden=\"true\"\n size={size}\n >\n {`${prevDecade - 9}s`}\n <svg\n slot=\"left-icon\"\n width=\"12\"\n height=\"12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.3333 5.33341H3.21996L6.94663 1.60675L5.99996 0.666748L0.666626 6.00008L5.99996 11.3334L6.93996 10.3934L3.21996 6.66675H11.3333V5.33341Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-button>\n </div>\n {years.map((yr) => {\n const current = yearInView === yr;\n const focussed = focussedYear === yr;\n return (\n <ic-button\n class={{\n \"year-button\": true,\n selected: current,\n focussed: focussed,\n }}\n disabled={!yearInRange(yr, minDate, maxDate)}\n data-year={yr}\n tabIndex={focussed ? 0 : -1}\n variant={current ? \"primary\" : \"tertiary\"}\n onClick={handleYearClick}\n aria-label={current ? \"\" : `select ${yr}`}\n role=\"listitem\"\n aria-current={current ? \"true\" : \"false\"}\n onKeyDown={onKeyDown}\n onFocus={handleYearFocus}\n onBlur={handleYearBlur}\n size={size}\n ref={(el: HTMLIcButtonElement) => {\n if (focussed && el) {\n focussedYearRef(el);\n }\n }}\n >\n {yr}\n </ic-button>\n );\n })}\n <div class=\"next-decade\" aria-hidden=\"true\">\n <ic-button\n id=\"next-decade-button\"\n class={{\n \"year-button\": true,\n flip: true,\n }}\n disabled={!yearInRange(nextDecade, minDate, maxDate)}\n data-year={nextDecade}\n tabIndex={-1}\n variant=\"tertiary\"\n onClick={handleYearClick}\n onMouseDown={navButtonMouseDownHandler}\n aria-hidden=\"true\"\n size={size}\n >\n {`${nextDecade}s`}\n <svg\n slot=\"right-icon\"\n width=\"12\"\n height=\"12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.3333 5.33341H3.21996L6.94663 1.60675L5.99996 0.666748L0.666626 6.00008L5.99996 11.3334L6.93996 10.3934L3.21996 6.66675H11.3333V5.33341Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-button>\n </div>\n </div>\n );\n};\n","@import \"../../global/normalize.css\";\n\n/**\n* @prop --input-width: Width of the input field\n @prop --ic-z-index-date-picker: z-index of date picker.\n*/\n\n:host {\n display: block;\n position: relative;\n\n --month-year-picker-button-width: 5rem;\n --month-button-width: 5.5rem;\n --input-field-width: var(--input-width, 19.125rem);\n --ic-input-label-helpertext-padding: var(--ic-space-xxs);\n}\n\n:host(.ic-date-picker-large) {\n --month-button-width: 6.3125rem;\n --input-field-width: var(--input-width, 21.125rem);\n}\n\n:host(.ic-date-picker-small) {\n --month-button-width: 6.25rem;\n --input-field-width: var(--input-width, 17.125rem);\n}\n\n:host .date-input-container {\n position: relative;\n}\n\nic-date-input {\n --input-width: var(--input-field-width);\n}\n\n:host .calendar-container {\n min-width: 19rem;\n max-width: 23.5rem;\n width: var(--input-width);\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xs);\n position: absolute;\n border: var(--ic-border-default);\n border-color: var(--ic-date-picker-calendar-border);\n border-radius: var(--ic-border-radius);\n align-items: center;\n background-color: var(--ic-date-picker-calendar-bg);\n z-index: var(--ic-z-index-date-picker);\n box-sizing: border-box;\n box-shadow: var(--ic-date-picker-calendar-elevation);\n margin-top: var(--ic-space-xxxs);\n padding: var(--ic-space-xs);\n animation: fade-in-calendar var(--ic-transition-duration-slow);\n}\n\n:host(.ic-date-picker-small) .calendar-container {\n min-width: 17rem;\n max-width: 21.5rem;\n}\n\n:host(.ic-date-picker-large) .calendar-container {\n min-width: 21rem;\n max-width: 25.5rem;\n}\n\n:host .calendar-container.above {\n bottom: calc(var(--ic-space-xxl) - var(--ic-space-xxs));\n}\n\n:host .month-year-nav-container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n}\n\n:host .month-year-nav-container.hidden {\n display: none;\n}\n\n:host .month-year-nav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex: 1 0 0;\n}\n\n:host .month-picker,\n:host .year-picker {\n flex-wrap: wrap;\n display: inline-flex;\n align-items: center;\n width: 17.5rem;\n column-gap: var(--ic-space-xs);\n row-gap: var(--ic-space-xxs);\n}\n\n:host(.ic-date-picker-small) .month-picker,\n:host(.ic-date-picker-small) .year-picker {\n width: 13.125rem;\n}\n\n:host(.ic-date-picker-large) .month-picker,\n:host(.ic-date-picker-large) .year-picker {\n width: 20rem;\n}\n\n:host .month-picker-button,\n:host .year-picker-button {\n width: 5rem;\n\n --min-width: 5rem;\n}\n\n:host .month-button,\n:host .year-button {\n width: var(--month-button-width);\n}\n\n:host .month-button.focussed,\n:host .year-button.focussed {\n z-index: 1;\n}\n\n:host .month-button::part(button),\n:host .year-button::part(button) {\n min-width: var(--month-button-width);\n}\n\n:host .prev-decade .year-button svg {\n margin-right: calc(-1 * var(--ic-space-xl));\n padding-top: var(--ic-space-sm);\n}\n\n:host .prev-decade .year-button::part(button) {\n padding-left: 0;\n padding-right: var(--ic-space-lg);\n}\n\n:host(.ic-date-picker-small) .prev-decade .year-button::part(button) {\n padding-left: 0;\n padding-right: calc(var(--ic-space-lg) + var(--ic-space-xxs));\n}\n\n:host .next-decade .year-button svg {\n margin-left: calc(-1 * var(--ic-space-xl));\n padding-top: var(--ic-space-sm);\n}\n\n:host .next-decade .year-button::part(button) {\n padding-right: 0;\n padding-left: var(--ic-space-lg);\n}\n\n:host(.ic-date-picker-small) .next-decade .year-button::part(button),\n:host(.ic-date-picker-large) .next-decade .year-button::part(button) {\n padding-left: var(--ic-space-xl);\n}\n\n:host .bottom-buttons {\n padding-top: var(--ic-space-xs);\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n animation: fade-in-buttons var(--ic-transition-duration-slow);\n}\n\n:host(.ic-date-picker-small) .bottom-buttons {\n padding-top: var(--ic-space-xxs);\n}\n\n:host .bottom-buttons.no-today {\n align-items: flex-end;\n flex-direction: column;\n}\n\n:host .bottom-buttons.hidden {\n display: none;\n}\n\n:host .calendar {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n width: 15.75rem;\n animation: fade-in-buttons var(--ic-transition-duration-slow);\n}\n\n:host(.ic-date-picker-large) .calendar {\n width: 19.25rem;\n}\n\n:host(.ic-date-picker-small) .calendar {\n padding-bottom: var(--ic-space-xxs);\n width: 14rem;\n}\n\n:host .hidden {\n display: none;\n}\n\n:host .weekdays {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n padding-bottom: var(--ic-space-xs);\n align-self: stretch;\n}\n\n:host .calendar-days-container {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n row-gap: var(--ic-space-xs);\n padding: var(--ic-space-xxs) 0;\n}\n\n:host(.ic-date-picker-small) .calendar-days-container {\n padding: var(--ic-space-xxxs) 0;\n}\n\n:host(.ic-date-picker-large) .calendar-days-container {\n padding: var(--ic-space-xs) 0;\n}\n\n:host .calendar-day-header {\n display: flex;\n width: 2rem;\n padding: var(--ic-space-xxs) 0;\n justify-content: center;\n align-items: center;\n}\n\n:host(.ic-date-picker-small) .calendar-day-header,\n:host(.ic-date-picker-large) .calendar-day-header {\n padding: var(--ic-space-xxs);\n}\n\n:host .calendar-day-header ic-typography {\n --ic-typography-color: var(--ic-date-picker-calendar-label);\n\n text-align: center;\n}\n\n:host .day-button-container {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 2.25rem;\n height: 2.25rem;\n}\n\n:host(.ic-date-picker-small) .day-button-container {\n width: 2rem;\n height: 2rem;\n}\n\n:host(.ic-date-picker-large) .day-button-container {\n width: 2.5rem;\n height: 2.5rem;\n}\n\n:host .day-button {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n border: 0;\n border-radius: 2rem;\n background-color: var(--ic-date-picker-calendar-bg);\n width: 2rem;\n height: 2rem;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n z-index: 0;\n}\n\n:host .day-button.disabled {\n cursor: default;\n}\n\n:host(.ic-date-picker-large) .day-button {\n width: 2.25rem;\n height: 2.25rem;\n}\n\n:host(.ic-date-picker-small) .day-button {\n width: 1.75rem;\n height: 1.75rem;\n}\n\n:host .day-button ic-typography {\n width: 1.75rem;\n\n --ic-typography-color: var(--ic-date-picker-date-label-default);\n}\n\n:host .day-button.outside-range ic-typography {\n --ic-typography-color: var(--ic-date-picker-date-label-disabled);\n}\n\n:host .day-button.outside-month ic-typography {\n font-weight: var(--ic-font-weight-regular) !important;\n}\n\n:host\n .day-button.outside-month:not(.outside-range):not(.selected)\n ic-typography {\n --ic-typography-color: var(--ic-date-picker-date-label-default);\n}\n\n:host .day-button:hover:not(.disabled) {\n background-color: var(--ic-date-picker-date-default-bg-hover);\n}\n\n:host .day-button:active:not(.disabled) {\n background-color: var(--ic-date-picker-date-default-bg-pressed);\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host .day-button:hover:not(.disabled):not(.focussed),\n :host .day-button:active:not(.disabled):not(.focussed) {\n transition: background-color var(--ic-transition-duration-slow) ease-in-out;\n }\n}\n\n:host .day-button.selected:not(.hidden) {\n background-color: var(--ic-date-picker-date-active-bg-default);\n}\n\n:host .day-button.selected ic-typography {\n --ic-typography-color: var(--ic-date-picker-date-label-selected);\n}\n\n:host .day-button.selected:not(.hidden):hover {\n background-color: var(--ic-date-picker-date-active-bg-hover);\n}\n\n:host .day-button.selected:not(.hidden):active {\n background-color: var(--ic-date-picker-date-active-bg-pressed);\n}\n\n:host .day-button.focussed {\n z-index: 1;\n}\n\n:host .day-button:focus {\n outline: none;\n}\n\n:host .day-button.focussed:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n:host .day-button.today:not(.hidden)::after {\n content: \"\";\n position: absolute;\n width: 0.875rem;\n height: 0.125rem;\n bottom: 0.4rem;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-date-picker-default-underline);\n}\n\n:host(.ic-date-picker-small) .day-button.today::after {\n bottom: 0.35rem;\n}\n\n:host(.ic-date-picker-large) .day-button.today::after {\n width: 1rem;\n}\n\n:host .day-button.today.selected::after {\n background-color: var(--ic-date-picker-selected-underline);\n}\n\n:host #select-month-hint,\n:host #select-year-hint {\n display: none;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n@media (prefers-reduced-motion: reduce) {\n :host .calendar-container,\n :host .calendar,\n :host .bottom-buttons {\n animation: none;\n }\n}\n\n@keyframes fade-in-buttons {\n 0% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes fade-in-calendar {\n 0% {\n display: flex;\n max-height: 0;\n }\n\n 100% {\n display: flex;\n max-height: 600px;\n }\n}\n\n@media (forced-colors: active) {\n :host .day-button.today:not(.hidden)::after {\n background-color: highlight;\n }\n\n :host .day-button.selected:not(.hidden) {\n background-color: highlight;\n }\n\n :host .day-button.focussed:focus {\n border: var(--ic-border-hc);\n }\n\n :host .month-button.selected::part(button),\n :host .year-button.selected::part(button) {\n background-color: highlight;\n }\n}\n","import {\n Component,\n Element,\n Host,\n h,\n Prop,\n Listen,\n Watch,\n State,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\nimport {\n createDate,\n clampDate,\n dateMatches,\n dateInRange,\n getMonthStart,\n getMonthEnd,\n getWeekEnd,\n getWeekStart,\n yearInRange,\n} from \"../../utils/date-helpers\";\nimport {\n stringEnumToArray,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport {\n IcWeekDays,\n IcShortDayNames,\n IcDateInputMonths,\n IcDateFormat,\n IcSizes,\n IcInformationStatusOrEmpty,\n IcThemeMode,\n} from \"../../utils/types\";\nimport chevron from \"../../assets/chevron-icon.svg\";\nimport { DayButton } from \"./ic-day-button\";\nimport { MonthPicker } from \"./ic-month-picker\";\nimport { YearPicker } from \"./ic-year-picker\";\n\nconst DEFAULT_DATE_FORMAT = \"DD/MM/YYYY\";\nconst DEFAULT_DISABLE_DATES_FROM_NOW_MSG =\n \"Dates in the future are not allowed. Please select a date in the past.\";\nconst DEFAULT_DISABLE_DATES_UNTIL_NOW_MSG =\n \"Dates in the past are not allowed. Please select a date in the future.\";\nconst DEFAULT_DISABLE_DAYS_MSG =\n \"The date you have selected is on a day of the week that is not allowed. Please select another date.\";\nconst FOCUS_TIMER = 100;\nconst PICKER_HEIGHT_SMALL = 360;\nconst PICKER_HEIGHT_DEFAULT = 400;\nconst PICKER_HEIGHT_LARGE = 440;\n\ninterface IcDateInputProps {\n dateFormat?: IcDateFormat;\n disabled?: boolean;\n disableDays?: IcWeekDays[];\n disableDaysMessage?: string;\n disableFuture?: boolean;\n disableFutureMessage?: string;\n disablePast?: boolean;\n disablePastMessage?: string;\n emitDatePartChange?: boolean;\n helperText?: string;\n hideHelperText?: boolean;\n hideLabel?: boolean;\n inputId?: string;\n invalidDateMessage?: string;\n label: string;\n max?: string | Date;\n min?: string | Date;\n name?: string;\n required?: boolean;\n showClearButton?: boolean;\n showCalendarButton?: boolean;\n size?: IcSizes;\n value?: string | Date | null;\n validationStatus?: IcInformationStatusOrEmpty;\n validationText?: string;\n}\n\n/**\n * @slot helper-text - Content is set as the helper text for the date picker.\n */\n@Component({\n tag: \"ic-date-picker\",\n styleUrl: \"ic-date-picker.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class DatePicker {\n private inputEl?: HTMLIcDateInputElement;\n private clearButtonEl: HTMLIcButtonElement | null = null;\n private dateInputProps: IcDateInputProps;\n private daysOfWeek: string[] = [];\n private dayButtonFocussed: boolean = false;\n private dayPickerKeyboardNav: boolean = false;\n private decadeStart: number;\n private decadeEnd: number;\n private dialogDescription: string = \"\";\n private focusDay: boolean = true;\n private focussedYearEl: HTMLIcButtonElement;\n private liveRegionEl?: HTMLElement = undefined;\n private monthButtonEl: HTMLIcButtonElement;\n private monthNames: string[] = [];\n private monthInViewUpdateHandled: boolean = false;\n private myCalendarButtonClicked: boolean = false;\n private showPickerAbove: boolean = false;\n private today = new Date();\n private todayButtonEl: HTMLIcButtonElement | null = null;\n private yearButtonEl: HTMLIcButtonElement;\n private yearButtonFocussed: boolean = false;\n\n @Element() el: HTMLIcDatePickerElement;\n\n @State() calendarOpen: boolean = false;\n @State() currMonthView: Date[] = [];\n @State() currYearPickerView: number[] = [];\n @State() decadeView: number[] = [];\n @State() focussedDate: Date | null = null;\n @State() focussedDay: number;\n @State() focussedDayEl: HTMLButtonElement;\n @State() focussedMonth: number;\n @State() focussedMonthEl: HTMLIcButtonElement;\n @State() focussedYear: number;\n @State() maxDate: Date | null = null;\n @State() minDate: Date | null = null;\n @State() monthInView: number;\n @State() monthPickerVisible: boolean = false;\n @State() orderedDaysOfWeek: string[] = [];\n @State() selectedDate: Date | null = null;\n @State() yearInView: number;\n @State() yearPickerVisible: boolean = false;\n\n /**\n * The format in which the date will be displayed.\n */\n @Prop() dateFormat: IcDateFormat = \"DD/MM/YYYY\";\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, every individual input field completed will emit an icChange event.\n */\n @Prop() emitDatePartChange?: boolean = false;\n\n /**\n * The days of the week to disable.\n */\n @Prop() disableDays?: IcWeekDays[] = [];\n\n /**\n * The text to display as the validation message when `disableDays` is `true` and a disabled date is entered.\n */\n @Prop() disableDaysMessage?: string =\n \"The date you have selected is on a day of the week that is not allowed. Please select another date.\";\n\n /**\n * If `true`, dates in the future are not allowed. A validation message will appear if a date in the future is entered.\n */\n @Prop() disableFuture?: boolean = false;\n\n @Watch(\"disableFuture\")\n watchDisableFutureHandler(): void {\n this.watchMaxHandler();\n }\n\n /**\n * The text to display as the validation message when `disableFuture` is `true` and a date in the future is entered.\n */\n @Prop() disableFutureMessage?: string =\n \"Dates in the future are not allowed. Please select a date in the past.\";\n\n /**\n * If `true`, dates in the past are not allowed. A validation message will appear if a date in the past is entered.\n */\n @Prop() disablePast?: boolean = false;\n\n @Watch(\"disablePast\")\n watchDisablePastHandler(): void {\n this.watchMinHandler();\n }\n\n /**\n * The text to display as the validation message when `disablePast` is `true` and a date in the past is entered.\n */\n @Prop() disablePastMessage?: string =\n \"Dates in the past are not allowed. Please select a date in the future.\";\n\n /**\n * The helper text that will be displayed for additional field guidance. This will default to the text \"Use format\" along with the `dateFormat` value.\n */\n @Prop() helperText?: string;\n\n /**\n * If `true`, the helper text will be visually hidden, but still read out by screenreaders.\n */\n @Prop() hideHelperText: boolean = false;\n\n /**\n * If `true`, the label will be visually hidden, but the required label will still be read out by screen readers.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The ID for the input field. The default will be an automatically generated value.\n */\n @Prop() inputId?: string;\n\n /**\n * The text to display as the validation message when an invalid date is entered.\n */\n @Prop() invalidDateMessage?: string = \"Please enter a valid date.\";\n\n /**\n * The label for the date input.\n */\n @Prop() label!: string;\n\n /**\n * The latest date that will be allowed. The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n * The value of this prop is ignored if `disableFuture` is set to `true`.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n if (this.disableFuture) {\n this.maxDate = new Date();\n } else {\n this.maxDate = createDate(this.max, this.dateFormat);\n }\n }\n\n /**\n * The earliest date that will be allowed. The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n * The value of this prop is ignored if `disablePast` is set to `true`.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n if (this.disablePast) {\n this.minDate = new Date();\n } else {\n this.minDate = createDate(this.min, this.dateFormat);\n }\n }\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string;\n\n /**\n * The date visible when the calendar opens. Used if no date is currently selected.\n * The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n */\n @Prop() openAtDate: string | Date = \"\";\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, days outside the current month will be visible in the date picker.\n */\n @Prop() showDaysOutsideMonth?: boolean = true;\n\n /**\n * If `true`, the `Clear` button on the date picker will be visible.\n */\n @Prop() showPickerClearButton?: boolean = true;\n\n /**\n * If `true`, the `Go to today` button on the date picker will be visible.\n */\n @Prop() showPickerTodayButton?: boolean = true;\n\n /**\n * The size of the date picker to be displayed.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The first day of the week. `0` for Sunday, `1` for Monday, etc.\n * Default is Monday.\n */\n @Prop() startOfWeek: IcWeekDays = IcWeekDays.Monday;\n\n @Watch(\"startOfWeek\")\n watchStartOfWeekHandler(): void {\n this.orderedDaysOfWeek = this.daysOfWeek\n .slice(this.startOfWeek)\n .concat(this.daysOfWeek.slice(0, this.startOfWeek));\n if (this.calendarOpen) {\n this.updateMonthInView();\n }\n }\n\n /**\n * Sets the date picker to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in date validation.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message. This will override the built-in date validation.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * The value of the date picker. The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n\n @Watch(\"calendarOpen\")\n watchOpenHandler(): void {\n if (this.calendarOpen) {\n if (this.inputEl) {\n let pickerHeight = PICKER_HEIGHT_DEFAULT;\n if (this.size === \"small\") {\n pickerHeight = PICKER_HEIGHT_SMALL;\n } else if (this.size === \"large\") {\n pickerHeight = PICKER_HEIGHT_LARGE;\n }\n if (\n this.el.offsetTop + this.inputEl.offsetHeight + pickerHeight >\n window.innerHeight &&\n this.el.offsetTop > pickerHeight\n ) {\n this.showPickerAbove = true;\n } else {\n this.showPickerAbove = false;\n }\n }\n if (\n this.selectedDate === null ||\n !dateInRange(this.selectedDate, this.minDate, this.maxDate)\n ) {\n let openAt = new Date();\n if (this.openAtDate !== \"\") {\n openAt = createDate(this.openAtDate, this.dateFormat);\n }\n this.setFocussedDate(openAt);\n } else {\n this.setFocussedDate(this.selectedDate);\n }\n let dialogDesc = this.getMonthInViewText();\n if (this.selectedDate === null) {\n dialogDesc += \" No date selected.\";\n }\n dialogDesc +=\n \" Use arrow keys to change day. Press enter or space to select a date or press escape to close the picker\";\n this.dialogDescription = dialogDesc;\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n document.addEventListener(\"click\", this.handleDocumentClick);\n } else {\n document.removeEventListener(\"click\", this.handleDocumentClick);\n this.monthPickerVisible = false;\n this.yearPickerVisible = false;\n }\n }\n\n @Watch(\"focussedDate\")\n watchFocussedDateHandler(current: Date, previous: Date): void {\n if (\n previous === null ||\n !(\n previous.getFullYear() === current.getFullYear() &&\n previous.getMonth() === current.getMonth()\n )\n ) {\n this.updateMonthInView();\n }\n }\n\n @Watch(\"monthInView\")\n watchMonthInViewHandler(): void {\n this.focussedMonth = this.monthInView;\n }\n\n @Watch(\"yearInView\")\n watchYearInViewHandler(): void {\n this.setFocussedYear(this.yearInView, false);\n }\n\n @Watch(\"yearPickerVisible\")\n watchYearPickerVisibleHandler(): void {\n if (!this.yearPickerVisible) {\n this.setFocussedYear(this.yearInView);\n }\n }\n\n @Watch(\"monthPickerVisible\")\n watchMonthPickerVisibleHandler(): void {\n if (!this.monthPickerVisible) {\n this.focussedMonth = this.monthInView;\n }\n }\n\n @Watch(\"focussedDayEl\")\n watchFocussedDayEl(): void {\n if (this.focusDay) {\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n }\n\n this.focusDay = true;\n }\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{ value: Date }>;\n\n componentWillLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Date Picker\"\n );\n\n this.monthNames = stringEnumToArray(IcDateInputMonths);\n this.daysOfWeek = stringEnumToArray(IcShortDayNames);\n\n this.watchStartOfWeekHandler();\n this.watchMaxHandler();\n this.watchMinHandler();\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentWillRender(): void {\n this.dateInputProps = this.setDateInputProps();\n }\n\n componentWillUpdate(): void {\n this.dateInputProps = this.setDateInputProps();\n }\n\n @Listen(\"calendarButtonClicked\")\n localCalendarButtonClickHandler(\n ev: CustomEvent<{ value: Date | null }>\n ): void {\n this.myCalendarButtonClicked = true;\n if (!this.calendarOpen) {\n this.setSelectedDate(ev.detail.value, false);\n }\n\n this.calendarOpen = !this.calendarOpen;\n }\n\n @Listen(\"calendarButtonClicked\", { target: \"document\" })\n calendarButtonClickHandler(): void {\n //closes this picker if calendar button in another clicked\n if (!this.myCalendarButtonClicked) {\n this.calendarOpen = false;\n }\n this.myCalendarButtonClicked = false;\n }\n\n private setDecadeView = (start: number) => {\n let currYear = start - 1;\n const decadeArr = [];\n while (currYear <= start + 10) {\n decadeArr.push(currYear);\n currYear++;\n }\n this.decadeView = decadeArr;\n this.decadeStart = decadeArr[1];\n this.decadeEnd = decadeArr[10];\n };\n\n private setSelectedDate = (d: Date | null, emit = true): void => {\n if (d === null || !dateMatches(d, this.selectedDate)) {\n this.selectedDate = d;\n this.value = d;\n if (emit) {\n this.inputEl?.triggerIcChange(d);\n }\n }\n };\n\n private handleCalendarMouseDown = (event: MouseEvent): void => {\n const target = event.target as HTMLElement;\n if (target.tagName !== \"IC-BUTTON\") {\n event.preventDefault();\n }\n };\n\n private handleCalendarClick = (event: MouseEvent): void => {\n this.clearDialogDescription();\n event.stopImmediatePropagation();\n };\n\n private handleDocumentClick = (): void => {\n this.calendarOpen = false;\n };\n\n private keyDownHandler = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n if (this.calendarOpen) {\n this.closeButtonClickHandler();\n this.inputEl?.setCalendarFocus();\n event.stopImmediatePropagation();\n }\n } else {\n this.clearDialogDescription();\n event.stopImmediatePropagation();\n }\n };\n\n private closeButtonClickHandler = () => {\n this.calendarOpen = false;\n };\n\n private focusFirstElement = () => {\n this.monthButtonEl.setFocus();\n };\n\n private focusLastElement = () => {\n if (\n this.showPickerClearButton &&\n this.clearButtonEl &&\n !this.clearButtonEl.disabled\n ) {\n this.clearButtonEl.setFocus();\n } else if (\n this.showPickerTodayButton &&\n this.todayButtonEl &&\n !this.todayButtonEl.disabled\n ) {\n this.todayButtonEl.setFocus();\n } else if (this.monthPickerVisible) {\n this.focussedMonthEl.setFocus();\n } else if (this.yearPickerVisible) {\n this.focussedYearEl.setFocus();\n } else {\n this.focussedDayEl.focus();\n }\n };\n\n private focusFocussedDay = () => {\n this.focussedDayEl.focus();\n };\n\n private monthButtonClickHandler = () => {\n this.yearPickerVisible = false;\n this.focusDay = false;\n this.monthPickerVisible = !this.monthPickerVisible;\n if (this.monthPickerVisible) {\n this.setAriaLiveRegionText(\"Month picker view open\");\n } else {\n this.setMonthSelectedLiveRegionText();\n }\n };\n\n private yearButtonClickHandler = () => {\n this.monthPickerVisible = false;\n this.focusDay = false;\n this.yearPickerVisible = !this.yearPickerVisible;\n if (this.yearPickerVisible) {\n this.setAriaLiveRegionText(\n `Year picker view open. ${this.getDecadeInViewText()}`\n );\n } else {\n this.setYearSelectedLiveRegionText();\n }\n };\n\n private todayButtonClickHandler = () => {\n this.yearPickerVisible = false;\n this.monthPickerVisible = false;\n this.setFocussedDate(new Date());\n this.setAriaLiveRegionText(this.getMonthInViewText());\n\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n };\n\n private todayButtonKeyDownHandler = (ev: KeyboardEvent) => {\n if (ev.key === \"Tab\" && !ev.shiftKey && this.clearButtonEl?.disabled) {\n this.focusFirstElement();\n ev.preventDefault();\n }\n };\n\n private clearButtonClickHandler = () => {\n this.setSelectedDate(null);\n let text = \"Selected date cleared.\";\n if (!this.monthPickerVisible && !this.yearPickerVisible) {\n text += ` ${this.getMonthInViewText()}`;\n }\n if (this.monthPickerVisible) {\n this.focussedMonthEl.setFocus();\n } else if (this.yearPickerVisible) {\n this.focussedYearEl.setFocus();\n } else {\n this.focusFocussedDay();\n }\n this.setAriaLiveRegionText(text);\n };\n\n private setMonthSelectedLiveRegionText = () => {\n this.setAriaLiveRegionText(\n `${\n this.monthNames[this.monthInView]\n } selected. ${this.getMonthInViewText()}`\n );\n };\n\n private setYearSelectedLiveRegionText = () => {\n this.setAriaLiveRegionText(\n `${this.yearInView} selected. ${this.getMonthInViewText()}`\n );\n };\n\n private getMonthInViewText = () => {\n return `${this.monthNames[this.monthInView]} ${\n this.yearInView\n } currently in view.`;\n };\n\n private getDecadeInViewText = () => {\n return `${this.decadeStart} to ${this.decadeEnd} currently in view.`;\n };\n\n private setAriaLiveRegionText = (text: string) => {\n this.liveRegionEl && (this.liveRegionEl.innerText = text);\n };\n\n private clearDialogDescription = () => {\n this.dialogDescription = \"\";\n };\n\n private clearButtonKeyDownHandler = (ev: KeyboardEvent) => {\n if (ev.key === \"Tab\" && !ev.shiftKey) {\n this.focusFirstElement();\n ev.preventDefault();\n }\n };\n\n private goToPreviousMonth = (focusDay = false) => {\n this.focusDay = focusDay;\n this.moveMonths(-1);\n };\n\n private goToNextMonth = (focusDay = false) => {\n this.focusDay = focusDay;\n this.moveMonths(1);\n };\n\n private goToPreviousYear = (focusDay = false) => {\n if (this.isPrevYearAllowed()) {\n this.focusDay = focusDay;\n this.moveYears(-1);\n }\n };\n\n private goToNextYear = (focusDay = false) => {\n if (this.isNextYearAllowed()) {\n this.focusDay = focusDay;\n this.moveYears(1);\n }\n };\n\n private navButtonMouseDownHandler = (ev: MouseEvent): void => {\n ev.preventDefault();\n };\n\n private renderMonthYearNavButton = (\n id: string,\n flip: boolean,\n disabled: boolean\n ): void => {\n const buttonSize = this.size;\n return (\n <div aria-hidden=\"true\">\n <ic-button\n id={id}\n disableTooltip={true}\n disabled={disabled}\n onClick={this.monthYearNavClickHandler}\n class={{ flip: flip }}\n variant=\"icon-tertiary\"\n innerHTML={chevron}\n size={buttonSize}\n tabIndex={-1}\n aria-hidden=\"true\"\n onMouseDown={this.navButtonMouseDownHandler}\n />\n </div>\n );\n };\n\n private monthYearNavClickHandler = (ev: Event): void => {\n const target = ev.target as Element;\n switch (target.id) {\n case \"previous-month-button\":\n this.goToPreviousMonth(this.dayButtonFocussed);\n break;\n\n case \"next-month-button\":\n this.goToNextMonth(this.dayButtonFocussed);\n break;\n\n case \"previous-year-button\":\n this.goToPreviousYear(this.dayButtonFocussed);\n break;\n\n case \"next-year-button\":\n this.goToNextYear(this.dayButtonFocussed);\n break;\n }\n };\n\n private previousMonthButton = (): void => {\n let disabled = false;\n if (this.focussedDate !== null && this.minDate !== null) {\n const yearMatch =\n this.focussedDate.getFullYear() === this.minDate.getFullYear();\n if (yearMatch) {\n disabled = this.monthInView - 1 < this.minDate.getMonth();\n }\n }\n return this.renderMonthYearNavButton(\n \"previous-month-button\",\n true,\n disabled\n );\n };\n\n private nextMonthButton = (): void => {\n let disabled = false;\n if (this.focussedDate !== null && this.maxDate !== null) {\n const yearMatch =\n this.focussedDate.getFullYear() === this.maxDate.getFullYear();\n if (yearMatch) {\n disabled = this.monthInView + 1 > this.maxDate.getMonth();\n }\n }\n return this.renderMonthYearNavButton(\"next-month-button\", false, disabled);\n };\n\n private previousYearButton = (): void => {\n return this.renderMonthYearNavButton(\n \"previous-year-button\",\n true,\n !this.isPrevYearAllowed()\n );\n };\n\n private nextYearButton = (): void => {\n return this.renderMonthYearNavButton(\n \"next-year-button\",\n false,\n !this.isNextYearAllowed()\n );\n };\n\n private isPrevYearAllowed = (): boolean => {\n return this.isYearAllowed(this.yearInView - 1);\n };\n\n private isNextYearAllowed = (): boolean => {\n return this.isYearAllowed(this.yearInView + 1);\n };\n\n private isYearAllowed = (yr: number): boolean =>\n yearInRange(yr, this.minDate, this.maxDate);\n\n private getMonthView = (date: Date): Date[] => {\n const start = getWeekStart(getMonthStart(date), this.startOfWeek);\n const end = getWeekEnd(getMonthEnd(date), this.startOfWeek);\n\n const days: Date[] = [];\n let current = start;\n\n while (!dateMatches(current, end)) {\n days.push(current);\n current = new Date(current);\n current.setDate(current.getDate() + 1);\n }\n\n days.push(current);\n\n return days;\n };\n\n private isCurrentMonth = (): boolean => {\n const d = new Date();\n return (\n d.getFullYear() === this.yearInView && d.getMonth() === this.monthInView\n );\n };\n\n private updateMonthInView = (): void => {\n if (this.focussedDate) {\n this.currMonthView = this.getMonthView(this.focussedDate);\n\n this.focussedDay = this.focussedDate.getDate();\n this.monthInView = this.focussedDate.getMonth();\n this.yearInView = this.focussedDate.getFullYear();\n\n if (this.dayPickerKeyboardNav) {\n this.monthInViewUpdateHandled = true;\n this.setAriaLiveRegionText(this.getMonthInViewText());\n this.dayPickerKeyboardNav = false;\n }\n }\n };\n\n private handleSelectDay = (day: Date): void => {\n this.setSelectedDate(day);\n this.calendarOpen = false;\n this.inputEl?.setCalendarFocus();\n };\n\n private handleSelectMonth = (month: number): void => {\n this.moveMonths(month - this.monthInView);\n setTimeout(() => {\n this.monthButtonEl.setFocus();\n this.monthPickerVisible = false;\n this.setMonthSelectedLiveRegionText();\n }, FOCUS_TIMER);\n };\n\n private handleSelectYear = (year: number): void => {\n const yrPos = this.decadeView.indexOf(year);\n if (yrPos > 0 && yrPos < this.decadeView.length - 1) {\n this.moveYears(year - this.yearInView);\n this.focusDay = false;\n const monthName = this.monthNames[this.monthInView];\n this.setAriaLiveRegionText(\n `${year} selected. ${monthName} ${year} currently in view.`\n );\n setTimeout(() => {\n this.yearButtonEl.setFocus();\n this.yearPickerVisible = false;\n }, FOCUS_TIMER);\n } else {\n const moveYears = year - this.focussedYear > 0 ? 10 : -10;\n this.updateFocussedYear(moveYears, this.yearButtonFocussed);\n this.setAriaLiveRegionText(this.getDecadeInViewText());\n }\n };\n\n private monthPickerKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = true;\n switch (ev.key) {\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.updateFocussedMonth(-1);\n break;\n\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.updateFocussedMonth(1);\n break;\n\n case \"Home\":\n this.updateFocussedMonth(-this.focussedMonth);\n break;\n\n case \"End\":\n this.updateFocussedMonth(11 - this.focussedMonth);\n break;\n\n case \"Tab\":\n handled = this.calendarTabHandler(ev);\n break;\n\n case \"Escape\":\n ev.stopImmediatePropagation();\n this.monthPickerVisible = false;\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n break;\n\n default:\n handled = false;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private yearPickerKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = true;\n switch (ev.key) {\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.updateFocussedYear(-1);\n break;\n\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.updateFocussedYear(1);\n break;\n\n case \"Home\":\n if (this.focussedYear > this.decadeStart) {\n this.updateFocussedYear(this.decadeStart - this.focussedYear);\n }\n break;\n\n case \"End\":\n if (this.focussedYear < this.decadeEnd) {\n this.updateFocussedYear(this.decadeEnd - this.focussedYear);\n }\n break;\n\n case \"PageUp\":\n this.updateFocussedYear(-10);\n break;\n\n case \"PageDown\":\n this.updateFocussedYear(10);\n break;\n\n case \"Tab\":\n handled = this.calendarTabHandler(ev);\n break;\n\n case \"Escape\":\n ev.stopImmediatePropagation();\n this.yearPickerVisible = false;\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n break;\n\n default:\n handled = false;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private onYearButtonFocusHandler = () => {\n this.yearButtonFocussed = true;\n };\n\n private onYearButtonBlurHandler = () => {\n this.yearButtonFocussed = false;\n };\n\n private monthButtonKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = false;\n switch (ev.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n handled = true;\n this.goToPreviousMonth();\n break;\n\n case \"ArrowRight\":\n case \"ArrowDown\":\n handled = true;\n this.goToNextMonth();\n break;\n\n case \"Home\":\n handled = true;\n this.focusDay = false;\n this.moveMonths(-this.monthInView);\n break;\n\n case \"End\":\n handled = true;\n this.focusDay = false;\n this.moveMonths(11 - this.monthInView);\n break;\n\n case \"Tab\":\n if (ev.shiftKey) {\n handled = true;\n this.focusLastElement();\n }\n break;\n\n case \"Escape\":\n if (this.monthPickerVisible) {\n this.monthPickerVisible = false;\n ev.stopImmediatePropagation();\n }\n break;\n\n default:\n break;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private yearButtonKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = false;\n switch (ev.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n handled = true;\n this.goToPreviousYear();\n break;\n\n case \"ArrowRight\":\n case \"ArrowDown\":\n handled = true;\n this.goToNextYear();\n break;\n\n case \"Home\":\n if (this.yearPickerVisible && this.yearInView > this.decadeStart) {\n handled = true;\n this.moveYears(this.decadeStart - this.yearInView);\n }\n break;\n\n case \"End\":\n if (this.yearPickerVisible && this.yearInView < this.decadeEnd) {\n handled = true;\n this.moveYears(this.decadeEnd - this.focussedYear);\n }\n break;\n\n case \"PageUp\":\n handled = true;\n this.focusDay = false;\n this.moveYears(-10);\n break;\n\n case \"PageDown\":\n handled = true;\n this.focusDay = false;\n this.moveYears(10);\n break;\n\n case \"Escape\":\n if (this.yearPickerVisible) {\n this.yearPickerVisible = false;\n ev.stopImmediatePropagation();\n }\n break;\n\n default:\n break;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private handleCalendarKeyDown = (ev: KeyboardEvent): void => {\n let handled = true;\n switch (ev.key) {\n case \"ArrowDown\":\n this.dayPickerKeyboardNav = true;\n this.moveDays(7);\n break;\n\n case \"ArrowUp\":\n this.dayPickerKeyboardNav = true;\n this.moveDays(-7);\n break;\n\n case \"ArrowLeft\":\n this.dayPickerKeyboardNav = true;\n if (this.focussedDate)\n this.moveDays(-1 * this.getNextDayToFocus(this.focussedDate, false));\n break;\n\n case \"ArrowRight\":\n this.dayPickerKeyboardNav = true;\n if (this.focussedDate)\n this.moveDays(this.getNextDayToFocus(this.focussedDate, true));\n break;\n\n case \"PageUp\":\n this.dayPickerKeyboardNav = true;\n ev.shiftKey ? this.moveYears(-1) : this.moveMonths(-1);\n break;\n\n case \"PageDown\":\n this.dayPickerKeyboardNav = true;\n ev.shiftKey ? this.moveYears(1) : this.moveMonths(1);\n break;\n\n case \"Home\":\n this.dayPickerKeyboardNav = true;\n this.setFocussedDate(\n new Date(this.focussedYear, this.focussedMonth, 1)\n );\n break;\n\n case \"End\":\n this.dayPickerKeyboardNav = true;\n this.setFocussedDate(\n new Date(this.focussedYear, this.focussedMonth + 1, 0)\n );\n break;\n\n case \"Tab\":\n handled = this.calendarTabHandler(ev);\n break;\n\n default:\n handled = false;\n break;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private calendarTabHandler = (ev: KeyboardEvent): boolean => {\n let handled = false;\n if (\n !ev.shiftKey &&\n (!this.showPickerTodayButton || this.isCurrentMonth()) &&\n (!this.showPickerClearButton || this.clearButtonEl?.disabled)\n ) {\n this.focusFirstElement();\n handled = true;\n } else if (ev.shiftKey) {\n this.yearButtonEl.setFocus();\n handled = true;\n }\n return handled;\n };\n\n private onDayButtonFocusHandler = () => {\n this.dayButtonFocussed = true;\n };\n\n private onDayButtonBlurHandler = () => {\n this.dayButtonFocussed = false;\n };\n\n private getNextDayToFocus = (\n currDay: Date,\n forward: boolean,\n level = 1\n ): number => {\n const move = forward ? 1 : -1;\n const nextDay = new Date(currDay);\n nextDay.setDate(nextDay.getDate() + move);\n return this.disableDays?.includes(Number(nextDay.getDay()))\n ? this.getNextDayToFocus(nextDay, forward, level + 1)\n : level;\n };\n\n private moveDays = (numDays: number): void => {\n if (this.focussedDate) {\n const d = new Date(this.focussedDate);\n d.setDate(d.getDate() + numDays);\n this.setFocussedDate(d);\n }\n };\n\n private moveMonths = (numMonths: number): void => {\n if (this.focussedDate) {\n const newMonth = this.focussedDate.getMonth() + numMonths;\n const min = new Date(\n new Date(getMonthStart(this.focussedDate)).setMonth(newMonth)\n );\n const max = getMonthEnd(min);\n const newDate = new Date(new Date(this.focussedDate).setMonth(newMonth));\n this.setFocussedDate(clampDate(newDate, min, max));\n\n if (\n this.monthPickerVisible === false &&\n this.yearPickerVisible === false &&\n this.monthInViewUpdateHandled === false\n ) {\n this.setAriaLiveRegionText(this.getMonthInViewText());\n }\n this.monthInViewUpdateHandled = false;\n }\n };\n\n private moveYears = (numYears: number): void => {\n if (this.focussedDate) {\n const newYear = this.focussedDate.getFullYear() + numYears;\n const min = new Date(\n new Date(getMonthStart(this.focussedDate)).setFullYear(newYear)\n );\n const max = getMonthEnd(min);\n const newDate = new Date(\n new Date(this.focussedDate).setFullYear(newYear)\n );\n this.setFocussedDate(clampDate(newDate, min, max));\n\n if (\n this.monthPickerVisible === false &&\n this.yearPickerVisible === false &&\n this.monthInViewUpdateHandled === false\n ) {\n this.setAriaLiveRegionText(this.getMonthInViewText());\n }\n this.monthInViewUpdateHandled = false;\n }\n };\n\n private updateFocussedMonth = (adjust: number): void => {\n const d = new Date(this.focussedYear, this.focussedMonth, 1);\n d.setMonth(this.focussedMonth + adjust);\n const newDate = clampDate(d, this.minDate, this.maxDate);\n this.focussedMonth = newDate.getMonth();\n setTimeout(() => this.focussedMonthEl.setFocus(), FOCUS_TIMER);\n };\n\n private updateFocussedYear = (adjust: number, focusYear = true): void => {\n const d = new Date(new Date().setFullYear(this.focussedYear + adjust));\n const newDate = clampDate(d, this.minDate, this.maxDate);\n this.setFocussedYear(newDate.getFullYear(), focusYear);\n };\n\n private setFocussedDate = (d: Date): void => {\n this.focussedDate = clampDate(d, this.minDate, this.maxDate);\n };\n\n private setFocussedDayEl = (element: HTMLButtonElement) => {\n this.focussedDayEl = element;\n };\n\n private setFocussedMonthEl = (element: HTMLIcButtonElement) => {\n this.focussedMonthEl = element;\n };\n\n private setFocussedYearEl = (element: HTMLIcButtonElement) => {\n this.focussedYearEl = element;\n };\n\n private setFocussedYear = (newYear: number, focus = true): void => {\n const prevYear = this.focussedYear;\n this.focussedYear = newYear;\n if (this.yearPickerVisible) {\n const newDecade = Math.floor(newYear / 10) * 10;\n const oldDecade = Math.floor(prevYear / 10) * 10;\n if (newDecade !== oldDecade) {\n this.setDecadeView(newDecade);\n this.setAriaLiveRegionText(this.getDecadeInViewText());\n }\n if (focus) {\n setTimeout(() => {\n if (this.focussedYearEl !== null) this.focussedYearEl.setFocus();\n }, FOCUS_TIMER);\n }\n } else {\n this.setDecadeView(Math.floor(newYear / 10) * 10);\n }\n };\n\n private setDateInputProps = (): IcDateInputProps => {\n const inputProps: IcDateInputProps = {\n hideLabel: this.hideLabel,\n invalidDateMessage: this.invalidDateMessage,\n label: this.label,\n showClearButton: true,\n showCalendarButton: true,\n value: this.value,\n emitDatePartChange: this.emitDatePartChange,\n };\n\n if (this.dateFormat !== DEFAULT_DATE_FORMAT) {\n inputProps.dateFormat = this.dateFormat;\n }\n if (this.disableFuture) {\n inputProps.disableFuture = this.disableFuture;\n if (this.disableFutureMessage !== DEFAULT_DISABLE_DATES_FROM_NOW_MSG) {\n inputProps.disableFutureMessage = this.disableFutureMessage;\n }\n }\n if (this.disablePast) {\n inputProps.disablePast = this.disablePast;\n if (this.disablePastMessage !== DEFAULT_DISABLE_DATES_UNTIL_NOW_MSG) {\n inputProps.disablePastMessage = this.disablePastMessage;\n }\n }\n if (this.disableDays && this.disableDays.length > 0) {\n inputProps.disableDays = this.disableDays;\n if (this.disableDaysMessage !== DEFAULT_DISABLE_DAYS_MSG) {\n inputProps.disableDaysMessage = this.disableDaysMessage;\n }\n }\n if (this.max !== null && this.max !== \"\" && this.maxDate) {\n inputProps.max = this.maxDate;\n }\n if (this.min !== null && this.min !== \"\" && this.minDate) {\n inputProps.min = this.minDate;\n }\n if (this.helperText !== undefined) {\n inputProps.helperText = this.helperText;\n }\n if (this.hideHelperText !== false) {\n inputProps.hideHelperText = this.hideHelperText;\n }\n if (this.inputId !== undefined) {\n inputProps.inputId = this.inputId;\n }\n if (this.name !== undefined) {\n inputProps.name = this.name;\n }\n if (this.disabled) {\n inputProps.disabled = this.disabled;\n }\n if (this.required) {\n inputProps.required = this.required;\n }\n if (this.size !== \"medium\") {\n inputProps.size = this.size;\n }\n if (this.validationStatus !== \"\") {\n inputProps.validationStatus = this.validationStatus;\n }\n if (this.validationText !== \"\") {\n inputProps.validationText = this.validationText;\n }\n return inputProps;\n };\n\n render() {\n const {\n calendarOpen,\n dateInputProps,\n monthNames,\n size,\n focussedMonth,\n focussedYear,\n monthInView,\n yearInView,\n monthPickerVisible,\n yearPickerVisible,\n orderedDaysOfWeek,\n decadeView,\n minDate,\n maxDate,\n showPickerClearButton,\n showPickerTodayButton,\n dialogDescription,\n theme,\n } = this;\n\n let monthButtonText = \"\";\n if (monthPickerVisible) {\n monthButtonText = `Use the arrow keys to change the selected month. To return to day picker view, press Enter or Space to select a month, or press Escape.`;\n } else {\n monthButtonText = `Press Enter or Space to open month picker view or use the arrow keys to change month.`;\n }\n\n let yearButtonText = \"\";\n if (yearPickerVisible) {\n yearButtonText = `Use the arrow keys to change the selected year. To return to day picker view, press Enter or Space to select a year, or press Escape.`;\n } else {\n yearButtonText = `Press Enter or Space to open year picker view or use the arrow keys to change the selected year.`;\n }\n\n const dialogLabel = \"choose date\";\n\n const monthLabel =\n monthNames && monthNames[monthInView]\n ? monthNames[monthInView]\n : \"Open month picker\";\n const yearLabel = this.yearInView ? this.yearInView : \"Open year picker\";\n\n let minDay = minDate;\n if (minDate && this.disablePast) {\n const yesterday = new Date(minDate);\n yesterday.setDate(minDate.getDate() - 1);\n minDay = yesterday;\n }\n\n return (\n <Host\n onKeyDown={this.keyDownHandler}\n class={{\n [`ic-date-picker-${size}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"date-input-container\">\n <ic-date-input ref={(el) => (this.inputEl = el)} {...dateInputProps}>\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-date-input>\n </div>\n {calendarOpen && (\n <div>\n <span id=\"dialog-description\" class=\"sr-only\">\n {dialogDescription}\n </span>\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={dialogLabel}\n aria-describedBy=\"dialog-description\"\n class={{\n \"calendar-container\": true,\n above: this.showPickerAbove,\n }}\n onMouseDown={this.handleCalendarMouseDown}\n onClick={this.handleCalendarClick}\n >\n <span\n ref={(el) => (this.liveRegionEl = el)}\n id=\"live-region\"\n aria-live=\"assertive\"\n class=\"sr-only\"\n ></span>\n <div\n class={{\n \"month-year-nav-container\": true,\n }}\n >\n <div class=\"month-year-nav\">\n {this.previousMonthButton()}\n <span id=\"select-month-hint\" aria-hidden=\"true\">\n {monthButtonText}\n </span>\n <ic-button\n ref={(el: HTMLIcButtonElement) => (this.monthButtonEl = el)}\n size={size}\n class=\"month-picker-button\"\n aria-haspopup=\"menu\"\n aria-expanded={monthPickerVisible ? \"true\" : \"false\"}\n full-width=\"true\"\n variant=\"tertiary\"\n aria-label={monthLabel}\n aria-describedby=\"select-month-hint\"\n onKeyDown={this.monthButtonKeyDownHandler}\n onClick={this.monthButtonClickHandler}\n >\n {monthNames[monthInView]}\n </ic-button>\n {this.nextMonthButton()}\n </div>\n <div class=\"month-year-nav\">\n {this.previousYearButton()}\n <span id=\"select-year-hint\" aria-hidden=\"true\">\n {yearButtonText}\n </span>\n <ic-button\n ref={(el: HTMLIcButtonElement) => (this.yearButtonEl = el)}\n size={size}\n class=\"year-picker-button\"\n aria-haspopup=\"menu\"\n aria-expanded={yearPickerVisible ? \"true\" : \"false\"}\n full-width=\"true\"\n variant=\"tertiary\"\n aria-label={yearLabel}\n aria-describedby=\"select-year-hint\"\n onKeyDown={this.yearButtonKeyDownHandler}\n onClick={this.yearButtonClickHandler}\n >\n {this.yearInView}\n </ic-button>\n {this.nextYearButton()}\n </div>\n </div>\n {!(monthPickerVisible || yearPickerVisible) && (\n <div\n class={{\n calendar: true,\n hidden: monthPickerVisible || yearPickerVisible,\n }}\n onKeyDown={this.handleCalendarKeyDown}\n >\n <div class=\"weekdays\" aria-hidden=\"true\">\n {orderedDaysOfWeek.map((dayName) => {\n const header =\n size === \"small\" ? dayName.charAt(0) : dayName;\n return (\n <div class=\"calendar-day-header\">\n <ic-typography variant=\"caption\">\n {header}\n </ic-typography>\n </div>\n );\n })}\n </div>\n\n <div class=\"calendar-days-container\">\n {this.currMonthView.map((day) => (\n <DayButton\n day={day}\n disableDay={this.disableDays?.includes(\n Number(day.getDay())\n )}\n today={dateMatches(day, this.today)}\n selected={dateMatches(day, this.selectedDate)}\n focussed={dateMatches(day, this.focussedDate)}\n inRange={dateInRange(day, minDay, maxDate)}\n monthInView={monthInView}\n onSelectDay={this.handleSelectDay}\n focussedDayRef={this.setFocussedDayEl}\n onFocusDay={this.onDayButtonFocusHandler}\n onBlurDay={this.onDayButtonBlurHandler}\n showDaysOutsideMonth={this.showDaysOutsideMonth}\n ></DayButton>\n ))}\n </div>\n </div>\n )}\n <div\n class={{\n \"month-picker-container\": true,\n hidden: !monthPickerVisible,\n }}\n >\n {monthPickerVisible && (\n <MonthPicker\n size={size}\n onSelectMonth={this.handleSelectMonth}\n monthInView={monthInView}\n focussedMonth={focussedMonth}\n onKeyDown={this.monthPickerKeyDownHandler}\n focussedMonthRef={this.setFocussedMonthEl}\n minDate={minDate}\n maxDate={maxDate}\n yearInView={yearInView}\n ></MonthPicker>\n )}\n </div>\n <div\n class={{\n \"year-picker-container\": true,\n hidden: !yearPickerVisible,\n }}\n >\n {yearPickerVisible && (\n <YearPicker\n decadeView={decadeView}\n size={size}\n focussedYear={focussedYear}\n onSelectYear={this.handleSelectYear}\n onKeyDown={this.yearPickerKeyDownHandler}\n onFocusYear={this.onYearButtonFocusHandler}\n onBlurYear={this.onYearButtonBlurHandler}\n yearInView={yearInView}\n minDate={minDate}\n maxDate={maxDate}\n focussedYearRef={this.setFocussedYearEl}\n ></YearPicker>\n )}\n </div>\n <div\n class={{\n \"bottom-buttons\": true,\n \"no-today\": !showPickerTodayButton,\n }}\n >\n {showPickerTodayButton && (\n <ic-button\n id=\"today-button\"\n variant=\"tertiary\"\n ref={(el: HTMLIcButtonElement) => (this.todayButtonEl = el)}\n size={size}\n aria-label=\"Navigate to current date\"\n onClick={this.todayButtonClickHandler}\n onKeyDown={this.todayButtonKeyDownHandler}\n disabled={this.isCurrentMonth()}\n >\n Go to today\n </ic-button>\n )}\n {showPickerClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"clear selected date\"\n ref={(el: HTMLIcButtonElement) => (this.clearButtonEl = el)}\n variant=\"tertiary\"\n size={size}\n onClick={this.clearButtonClickHandler}\n onKeyDown={this.clearButtonKeyDownHandler}\n disabled={\n this.value === \"\" ||\n this.value === null ||\n this.value === undefined\n }\n >\n Clear\n </ic-button>\n )}\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import{r as t,c as i,h as e,F as s,H as a,g as l}from"./p-8e4e97b4.js";import{b as o,p as n,i as h,c as r,d,e as c,f as u,h as v,j as p}from"./p-e253a857.js";const g=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24">\n <path d="M9 3 5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"></path>\n</svg>`;const b=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(-90deg);">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const f=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(90deg)">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const m=':host{position:relative;display:inline-flex;max-height:100%;width:var(--table-width, 100%);height:100%;min-width:var(--table-min-width);max-width:var(--table-max-width)}tbody{vertical-align:top}.table-container{position:relative;height:calc(100% - var(--ic-space-xxxs));display:flex;flex-direction:column;width:100%}.cell-container{display:flex;min-height:1.5rem;overflow-y:hidden;height:var(--row-height);--ic-typography-color:var(--ic-data-table-text-default-emphasis)}.truncation-show-hide{display:block}.cell-icon.truncation-show-hide{display:flex}.cell-container:not(.data-type-element,.truncation-show-hide){overflow-x:hidden}ic-loading-indicator{position:sticky;top:20px}.table-row-container{position:relative;height:100%;overflow:auto;transition:var(--ic-easing-transition-fast);overflow-anchor:none}:host([show-pagination="true"]) .table-row-container{height:calc(100% - 3.5625rem)}table{table-layout:var(--table-layout, "fixed");border-spacing:0;width:100%;height:var(--table-height, auto)}.table-row-container:focus{outline:none;box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast);z-index:1}:host([embedded="true"]) .table-row-container{border:var(--ic-space-1px) solid var(--ic-data-table-border)}.column-header-inner-container{padding:var(--ic-space-xs);box-sizing:border-box}.column-header-inner-container ic-tooltip{pointer-events:none}.column-header-inner-container ic-tooltip.show-trunc-tooltip{pointer-events:auto}.column-header-inner-container ic-tooltip .column-header-text{--ic-line-clamp:1}.column-header-sticky{position:sticky;top:0;z-index:1}.column-header-overlay{position:sticky;top:0;z-index:1;box-shadow:0 0.375rem var(--ic-space-xs) calc(var(--ic-space-xxs * -1))\n rgb(0 0 0 / 20%)}.row-header-sticky{position:sticky;left:0}.column-header,.table-row{box-sizing:border-box}.table-row-selected{background-image:linear-gradient(\n var(--ic-data-table-cell-background-selected) 0 0\n );background-color:var(--ic-data-table-cell-background) !important}.table-row:hover{background-image:linear-gradient(\n var(--ic-data-table-cell-background-hover) 0 0\n );background-color:var(--ic-data-table-cell-background) !important}.table-row-selected:hover{background-image:linear-gradient(\n var(--ic-data-table-cell-background-selected-hover) 0 0\n )}.sort-button{margin-left:auto}.sort-button:hover{background-color:var(--ic-data-table-icon-button-background-hover)}.sort-button:active{background-color:var(--ic-data-table-icon-button-background-pressed)}.sort-button svg{color:var(--ic-data-table-sort-toggle-icon)}.sort-button-unsorted svg{color:var(--ic-data-table-sort-toggle-icon-default)}.table-density-dense .column-header-inner-container,td.table-density-dense{padding:var(--ic-space-xxs) var(--ic-space-xs) !important}.text-dense{font-size:var(--ic-font-size-label)}.table-density-spacious .column-header-inner-container,td.table-density-spacious{padding:0.625rem var(--ic-space-xs) !important}.text-spacious{font-size:1.125rem}.column-header-text{font-weight:var(--ic-font-weight-bold)}.dummy-column-header-text{white-space:nowrap;overflow:hidden;height:0;width:-moz-fit-content;width:fit-content}.row-header,.column-header{text-align:left;padding:var(--ic-space-xs);background-color:var(--ic-data-table-header-background);border-right:var(--ic-space-1px) solid var(--ic-data-table-header-keyline);border-bottom:var(--ic-space-1px) solid var(--ic-data-table-header-keyline);color:var(--ic-data-table-header-text)}.column-header{padding:0;width:var(--column-width);min-width:var(--column-min-width, 4rem);max-width:var(--column-max-width)}.column-header:last-child{border-right:none}.scrollable .column-header:last-child{border-right:var(--ic-space-1px) solid var(--ic-data-table-header-keyline) !important}:host([embedded="true"]) tr:last-child .table-cell,:host([embedded="true"]) tr:last-child .row-header{border-bottom:none}.column-header-alignment-left,.row-header-alignment-left,.cell-alignment-left{text-align:left !important;justify-content:start !important}.column-header-alignment-right,.row-header-alignment-right,.cell-alignment-right{text-align:right !important;justify-content:end !important}.cell-alignment-right.truncation-tooltip ic-tooltip ic-typography{padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.cell-alignment-right.truncation-show-hide ic-typography{--ellipsis-padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.column-header-alignment-center,.row-header-alignment-center,.cell-alignment-center{text-align:center !important;justify-content:center !important}.table-row{background-color:var(--ic-data-table-cell-background)}.table-row:nth-child(even){background-color:var(--ic-data-table-cell-background-stripe)}.table-cell{padding:var(--ic-space-xs);border-bottom:solid var(--ic-data-table-cell-keyline) var(--ic-space-1px);overflow:hidden;box-sizing:border-box;max-width:var(--column-max-width);min-width:var(--column-min-width)}.table-cell.with-overflow{overflow:visible}.data-type-string,.data-type-address{text-align:left}.data-type-number,.data-type-date{text-align:right;justify-content:end}.cell-vertical-align-top{vertical-align:top;align-items:flex-start}.cell-vertical-align-middle{vertical-align:middle;align-items:center}.cell-vertical-align-bottom{vertical-align:bottom;align-items:flex-end}.cell-emphasis-low ic-typography{--ic-typography-color:var(--ic-data-table-text-low-emphasis)}.cell-emphasis-high ic-typography{--ic-typography-color:var(--ic-data-table-text-high-emphasis);font-weight:var(--ic-font-weight-bold)}.pagination-container{background-color:var(--ic-data-table-pagination-bar-background-color);border-top:var(--ic-space-1px) solid\n var(--ic-data-table-pagination-bar-keyline)}.screen-reader-sort-text,.table-caption{position:absolute;left:-100rem}.table-cell,.column-header,.row-header{word-wrap:break-word;white-space:pre-wrap}.loading-empty{padding:var(--ic-space-xl) var(--ic-space-xxl);margin-top:var(--ic-space-xl)}.updating-state{padding:0;border-bottom:var(--ic-space-1px) solid var(--ic-data-table-header-keyline)}.updating-state-headers{border-bottom:none}.loading{position:absolute;left:calc(50% - 5.9741rem);opacity:0;transition:opacity var(--ic-transition-duration-slow);z-index:calc(var(--ic-z-index-dialog) - 1);background-color:var(--ic-data-table-overlay-background);border:var(--ic-space-1px) solid var(--ic-data-table-overlay-border)}.loading.show{opacity:1}.icon,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);margin-right:var(--ic-space-xxs)}.column-header .icon>svg,.column-header ::slotted(svg){fill:var(--ic-data-table-icon)}.table-cell .icon>svg,.table-cell ::slotted(svg),.cell-description-icon>svg{fill:var(--ic-data-table-icon-default-emphasis)}.cell-emphasis-high .icon>svg,.cell-emphasis-high ::slotted(svg){fill:var(--ic-data-table-icon-high-emphasis)}.cell-emphasis-low .icon>svg,.cell-emphasis-low ::slotted(svg){fill:var(--ic-data-table-icon-low-emphasis)}.column-header-alignment-right>.icon,.row-header-alignment-right>.icon,.cell-alignment-right>.icon,.column-header-alignment-right>::slotted(svg),.row-header-alignment-right>::slotted(svg),.cell-alignment-right>::slotted(svg){margin-right:auto}.column-header-alignment-center>ic-typography,.column-header-alignment-center>.cell-text-wrapper,.row-header-alignment-right>ic-typography,.row-header-alignment-right>.cell-text-wrapper,.cell-alignment-center>ic-typography,.cell-alignment-center>.cell-text-wrapper{flex:1}.checkbox-cell{--column-width:var(--ic-space-xxl);align-content:center;border-right:none}.table-density-dense.checkbox-cell{--column-width:2.5rem}.checkbox-wrapper{display:flex;justify-content:center}.icon>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}.truncation-tooltip ic-typography{display:-webkit-box;-webkit-line-clamp:var(--ic-line-clamp, 0);-webkit-box-orient:vertical;overflow:hidden}.truncation-tooltip ic-typography,.truncation-show-hide ic-typography{white-space:normal}.ic-tooltip-overflow{overflow:hidden;width:100%}.action-element{display:flex;justify-content:right}.cell-grid-wrapper{display:grid;grid-template-columns:auto auto}.loading-overlay{visibility:hidden;position:absolute;top:0;left:0;width:100%;height:100%;background:var(--ic-data-table-loading-indicator-overlay-background);z-index:calc(var(--ic-z-index-dialog) - 2);opacity:0;transition:opacity var(--ic-transition-duration-slow)}.loading-overlay.show{visibility:visible;opacity:0.6}.sr-only{position:absolute;left:-9999px}@media (prefers-reduced-motion: reduce){.loading-overlay{transition:none}}.cell-text-wrapper{overflow:hidden}.cell-text-wrapper>ic-typography{margin-left:2px}.cell-text-no-wrap{word-wrap:initial}.cell-container-with-description{display:flex;flex-direction:row}.cell-description{display:flex;flex-direction:row;margin-top:var(--ic-space-xxs);word-break:break-all}.cell-description-text{color:var(--ic-data-table-cell-data-description)}.cell-description-icon{padding-right:var(--ic-space-xs)}.cell-description-icon>svg{height:calc(var(--ic-space-lg) - var(--ic-space-xxs));width:calc(var(--ic-space-lg) - var(--ic-space-xxs));display:flex}@media (min-width: 577px){.column-header-inner-container{display:flex;align-items:center}}@media (max-width: 577px){.cell-icon{flex-wrap:wrap}.cell-description-icon{padding-right:0}}@media (forced-colors: active){.icon,::slotted(svg),.cell-description-icon>svg{fill:currentcolor}.sort-button svg{color:currentcolor}.table-row-selected{background-color:Highlight !important}}';const y=m;const w=class{constructor(a){t(this,a);this.icRowHeightChange=i(this,"icRowHeightChange",7);this.icSelectAllRows=i(this,"icSelectAllRows",7);this.icSelectedRowChange=i(this,"icSelectedRowChange",7);this.icColumnsLoaded=i(this,"icColumnsLoaded",7);this.icDataLoaded=i(this,"icDataLoaded",7);this.icSortChange=i(this,"icSortChange",7);this.DENSITY_HEIGHT_MULTIPLIER={dense:.8,default:1,spacious:1.2};this.DENSITY_PADDING_HEIGHT_DIFF={dense:8,default:16,spacious:20};this.SORT_ICONS={unsorted:g,ascending:b,descending:f};this.hasLoadedForOneSecond=true;this.resizeObserver=null;this.SHOW_HIDE_STRING="show-hide";this.SHOW_HIDE_CSS_CLASS=`${this.SHOW_HIDE_STRING}-wrap`;this.TOOLTIP_STRING="tooltip";this.TOOLTIP=`ic-${this.TOOLTIP_STRING}`;this.TEXT_WRAP_STRING="text-wrap";this.TEXT_WRAP_CLASS=`.${this.TEXT_WRAP_STRING}`;this.dataUpdated=false;this.columnsUpdated=false;this.rowHeightSet=false;this.initialLoad=false;this.icPageChangeEvent=false;this.itemsPerPageChange=false;this.DATA_ROW_HEIGHT_STRING="data-row-height";this.ROW_HEIGHT_CSS_VARIABLE="--row-height";this.LINE_CLAMP_CSS_VARIABLE="--ic-line-clamp";this.DEFAULT_LINE_HEIGHT=24;this.densityUpdate=false;this.truncationPatternUpdated=false;this.isNewDebounceDelaySet=false;this.headerResizeObserver=null;this.IC_TOOLTIP_STRING="ic-tooltip";this.SHOW_TRUNC_TOOLTIP_STRING="show-trunc-tooltip";this.CELL_DESCRIPTION_STRING=".cell-description";this.CELL_CONTAINER_WITH_DESCRIPTION_STRING="cell-container-with-description";this.CELL_TEXT_WRAPPER_STRING=".cell-text-wrapper";this.IC_TYPOGRAPHY_STRING="ic-typography";this.fromRow=0;this.scrollable=false;this.scrollOffset=0;this.selectedRows=[];this.debounceDelay=0;this.columnHeaderTruncation=false;this.disableAutoSort=false;this.density="default";this.embedded=false;this.globalRowHeight="auto";this.hideColumnHeaders=false;this.loading=false;this.minimumLoadingDisplayDuration=1e3;this.paginationBarOptions={alignment:"right",hideAllFromItemsPerPage:false,hideRangeLabel:false,itemLabel:"Item",itemsPerPageOptions:[{label:"10",value:"10"},{label:"25",value:"25"},{label:"50",value:"50"}],monochrome:false,pageLabel:"Page",rangeLabelType:"page",selectedItemsPerPage:10,selectItemsPerPageOnEnter:true,setToFirstPageOnPaginationChange:false,showGoToPageControl:true,showItemsPerPageControl:true,type:"simple"};this.rowSelection=false;this.showPagination=false;this.sortable=false;this.sortOptions={sortOrders:["unsorted","ascending","descending"],defaultColumn:""};this.stickyColumnHeaders=false;this.stickyRowHeaders=false;this.tableLayout="fixed";this.theme="inherit";this.updating=false;this.runHeaderResizeObserver=()=>{this.headerResizeObserver=new ResizeObserver((()=>{this.headerResizeCallback()}));this.headerResizeObserver.observe(this.el)};this.headerResizeCallback=()=>{var t,i,e;if(!this.hideColumnHeaders&&this.columnHeaderTruncation){const s=(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(".table-container"))===null||i===void 0?void 0:i.clientWidth;if(s&&s!==this.prevTableContainerWidth){(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelectorAll("th.column-header").forEach((t=>{const i=t.querySelector(this.IC_TOOLTIP_STRING);const e=t.querySelectorAll(this.IC_TYPOGRAPHY_STRING);if(i&&e&&e.length===2){i.classList.remove(this.SHOW_TRUNC_TOOLTIP_STRING);if(e[1].clientWidth>e[0].clientWidth){i.classList.add(this.SHOW_TRUNC_TOOLTIP_STRING)}}}));this.prevTableContainerWidth=s}}};this.handleResize=()=>{this.updateCellHeightsWithDescriptions();this.fixCellOverflow()};this.getRowHeight=t=>parseInt(getComputedStyle(document.documentElement).fontSize)*parseFloat(t.getAttribute(this.DATA_ROW_HEIGHT_STRING)||"");this.truncateUpdatedData=()=>{if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){const e=this.getTruncWrapper(t);if(e&&i.clientHeight-this.DEFAULT_LINE_HEIGHT>=e.scrollHeight){this.resetSingleShowHideTruncation(t,i);return}setTimeout((()=>{this.addShowHideTruncationIfNeeded(t,i)}),150)}}))}if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}this.dataUpdated=false};this.truncateTableSorted=()=>{if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.createShowHideTruncation(t,i)}else{t.resetTruncation().then((()=>{i.removeAttribute("style")}))}}}))}this.tableSorted=false};this.truncateRowHeightSet=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i){if(this.globalRowHeight==="auto"){i.style.height="";i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null);i.removeAttribute(this.DATA_ROW_HEIGHT_STRING);if(this.truncationPattern===this.TOOLTIP_STRING){this.removeTooltip(i,t,e);t.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: 0`)}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.resetSingleShowHideTruncation(t,i)}return}if(!i.classList.contains(this.CELL_CONTAINER_WITH_DESCRIPTION_STRING)&&!i.style.height&&this.getRowHeight(i)>i.clientHeight&&!i.classList.contains(this.TEXT_WRAP_STRING)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}if(this.truncationPattern){if(this.truncationPattern===this.SHOW_HIDE_STRING){const e=this.getTruncWrapper(t);if(this.getShowHideButton(t)&&e&&e.scrollHeight<=i.clientHeight){this.resetSingleShowHideTruncation(t,i);return}}this.truncate(t,i,e)}else{this.updateSetRowHeight(t)}}}));this.rowHeightSet=false};this.truncateItemsPerPageChange=()=>{var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".table-row");if(i&&this.rowsPerPage>this.previousItemsPerPage){const t=Array.from(i).slice(this.previousItemsPerPage);t.forEach((t=>{t.querySelectorAll("ic-typography").forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i)this.truncate(t,i,e)}))}))}this.previousItemsPerPage=this.rowsPerPage;this.itemsPerPageChange=false};this.truncatePageChange=()=>{if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i&&this.typographyScrollHeightExceedsContainerHeight(t,i)&&!this.getShowHideButton(t)){this.addShowHideTruncation(i,t)}}))}this.icPageChangeEvent=false};this.truncateDensityUpdate=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i)this.truncate(t,i,e)}));this.densityUpdate=false};this.typographyScrollHeightExceedsContainerHeight=(t,i)=>i&&t.scrollHeight>i.clientHeight;this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight=(t,i)=>{const e=this.getTruncWrapper(t);return e&&i.clientHeight-this.DEFAULT_LINE_HEIGHT>e.scrollHeight};this.truncatePatternUpdated=()=>{if(this.truncationPattern===this.TOOLTIP_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i&&this.typographyScrollHeightExceedsContainerHeight(t,i)){this.addTooltipTruncation(t,i,e)}}))}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){if(this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight(t,i)){this.resetSingleShowHideTruncation(t,i);return}this.addShowHideTruncationIfNeeded(t,i)}}))}};this.updateSetRowHeight=t=>{const i=t=>{const i=this.getCellContainer(t);if(i&&t.scrollHeight>this.getRowHeight(i)){i.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE)}};if(t){i(t)}else{this.getTypographyElements().forEach((t=>{i(t)}))}};this.getLines=t=>Math.floor(t/this.DEFAULT_LINE_HEIGHT);this.truncate=(t,i,e)=>{var s;if(this.typographyScrollHeightExceedsContainerHeight(t,i)){if(!t.closest(this.TEXT_WRAP_CLASS)){if(this.truncationPattern===this.TOOLTIP_STRING){this.addTooltipTruncation(t,i,e)}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.addShowHideTruncation(i,t)}}}else{if(this.truncationPattern===this.TOOLTIP_STRING&&e){t.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: 0`);(s=i.querySelector(this.CELL_TEXT_WRAPPER_STRING))===null||s===void 0?void 0:s.prepend(t);e.remove()}if(this.truncationPattern===this.SHOW_HIDE_STRING&&!o(t===null||t===void 0?void 0:t.getAttribute("max-lines"))){this.resetSingleShowHideTruncation(t,i)}}};this.addShowHideTruncationIfNeeded=(t,i)=>{if(this.typographyScrollHeightExceedsContainerHeight(t,i)){this.addShowHideTruncation(i,t);return true}return false};this.dataTruncation=(t,i)=>{const e=this.getTooltip(t);if(i.classList.contains("data-type-element")||this.dataUpdated){return}if(this.truncationPattern===this.SHOW_HIDE_STRING&&this.getShowHideButton(t)){const e=this.getTruncWrapper(t);if(e&&this.getLines(e.scrollHeight)===Number(t.getAttribute("max-lines"))){this.resetSingleShowHideTruncation(t,i)}}if(this.rowHeightSet&&this.truncationPattern===this.SHOW_HIDE_STRING){if(this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight(t,i)){this.resetSingleShowHideTruncation(t,i);return}if(this.addShowHideTruncationIfNeeded(t,i)){return}}if(t.scrollHeight>0&&i.clientHeight>0&&t.scrollHeight===i.clientHeight){if(e){this.removeTooltip(i,t,e)}return}this.truncate(t,i,e)};this.getTruncWrapper=t=>{var i;return(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector(".trunc-wrapper")};this.getShowHideButton=t=>{var i;return(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector("button")};this.removeTextWrap=()=>{this.getTypographyElements().forEach((t=>{const i=t.closest("td");if(i===null||i===void 0?void 0:i.classList.contains(this.TEXT_WRAP_STRING)){i.classList.remove(this.TEXT_WRAP_STRING)}}))};this.getCellContainer=t=>t.closest(".cell-container");this.deleteTextWrapDataKey=t=>Array.isArray(t)&&t.forEach((t=>t.textWrap&&delete t.textWrap));this.resetSingleShowHideTruncation=(t,i)=>{const e=this.getTruncWrapper(t);if(!(i&&e))return;if(e.scrollHeight>i.clientHeight&&!o(t.getAttribute("max-lines"))&&Math.floor((i===null||i===void 0?void 0:i.clientHeight)/this.DEFAULT_LINE_HEIGHT)!==Number(t.getAttribute("max-lines"))){t.checkMaxLines(e.scrollHeight);t.setAttribute("max-lines",`${Math.floor((i===null||i===void 0?void 0:i.clientHeight)/this.DEFAULT_LINE_HEIGHT)}`);t.setShowHideExpanded(false);i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}else if(!i.classList.contains(this.CELL_CONTAINER_WITH_DESCRIPTION_STRING)){t.resetTruncation().then((()=>{if(!t.closest(this.TEXT_WRAP_CLASS)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}};this.resetAllShowHideTruncation=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);t.resetTruncation().then((()=>{if(i&&!t.closest(this.TEXT_WRAP_CLASS)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}))};this.startLoadingTimer=()=>{this.hasLoadedForOneSecond=false;this.timerStarted=Date.now();setTimeout((()=>{this.hasLoadedForOneSecond=true;this.timerStarted=0}),this.minimumLoadingDisplayDuration)};this.isObject=t=>t!==undefined&&t!==null&&typeof t==="object";this.notDefaultDensity=()=>this.density!=="default";this.getCellContent=(t,i)=>{switch(i){case"element":return undefined;case"date":return(t instanceof Date?t:new Date(t)).toLocaleDateString();default:return t}};this.getCellAlignment=(t,i)=>{if(this.isObject(t)&&Object.keys(t).includes("cellAlignment")){return this.getObjectValue(this.getObjectValue(t,"cellAlignment"),i)}};this.getCellOptions=(t,i)=>{if(!(this.isObject(t)&&Object.keys(t).includes(i)))return;return this.getObjectValue(t,i)};this.createUpdatingIndicator=()=>{const{description:t,max:i,min:s,progress:a,monochrome:l}=this.updatingOptions||{};const o=this.columns.filter((t=>t.hidden!==true)).length;return e("th",{colSpan:o+(this.rowSelection&&this.data?1:0),class:"updating-state"},e("ic-loading-indicator",{theme:this.theme,monochrome:l,description:t||"Updating table data",fullWidth:true,max:i,min:s,progress:a,type:"linear",size:"small"}))};this.setRowHeight=t=>n(`${t*this.DENSITY_HEIGHT_MULTIPLIER[this.density]-this.DENSITY_PADDING_HEIGHT_DIFF[this.density]}px`);this.setTruncationClass=()=>this.truncationPattern?{[`truncation-${this.truncationPattern}`]:true}:{};this.getColumnWidth=t=>{let i={};if(typeof t==="string"){i=Object.assign(Object.assign({},i),{["--column-width"]:t})}else if(t&&Object.keys(t).length>0){if(t.minWidth){i=Object.assign(Object.assign({},i),{["--column-min-width"]:t.minWidth})}if(t.maxWidth){i=Object.assign(Object.assign({},i),{["--column-max-width"]:t.maxWidth})}}return i};this.getCalculatedRowHeight=(t,i,e,s)=>{if((this.truncationPattern||s)&&!(t===null||t===void 0?void 0:t.textWrap)&&!i&&!this.getCellOptions(e,"textWrap")&&(t===null||t===void 0?void 0:t.dataType)!=="element"){return{[this.ROW_HEIGHT_CSS_VARIABLE]:this.setRowHeight(s)}}return{}};this.adjustWidthForActionElement=()=>{var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".action-element");i===null||i===void 0?void 0:i.forEach((t=>{const i=t.firstChild.getBoundingClientRect().width;const e=t.closest(".cell-grid-wrapper");if(e)e.style.gridTemplateColumns=`auto calc(${i}px + var(--ic-space-xs))`}))};this.createCellContent=(t,i,a,l,o,n,r,d)=>{var c,u,v,p,g,b,f,m,y,w,x;return e("div",{innerHTML:(t===null||t===void 0?void 0:t.dataType)==="element"&&!h(this.el,a)?i:undefined,class:Object.assign(Object.assign({"cell-container":(t===null||t===void 0?void 0:t.dataType)!=="element",[`cell-alignment-${((c=t===null||t===void 0?void 0:t.columnAlignment)===null||c===void 0?void 0:c.horizontal)||((u=l===null||l===void 0?void 0:l.rowAlignment)===null||u===void 0?void 0:u.horizontal)||this.getCellAlignment(i,"horizontal")}`]:!!((v=t===null||t===void 0?void 0:t.columnAlignment)===null||v===void 0?void 0:v.horizontal)||!!((p=l===null||l===void 0?void 0:l.rowAlignment)===null||p===void 0?void 0:p.horizontal)||!!this.getCellAlignment(i,"horizontal"),[`data-type-${t===null||t===void 0?void 0:t.dataType}`]:true,[this.TEXT_WRAP_STRING]:(t===null||t===void 0?void 0:t.textWrap)||(l===null||l===void 0?void 0:l.textWrap)||!!this.getCellOptions(i,"textWrap"),["cell-icon"]:o||!!((g=t===null||t===void 0?void 0:t.icon)===null||g===void 0?void 0:g.icon),[`cell-emphasis-${this.isObject(i)&&n("emphasis")||(t===null||t===void 0?void 0:t.emphasis)||r}`]:this.isObject(i)&&!!n("emphasis")||!!(t===null||t===void 0?void 0:t.emphasis)||!!r},this.setTruncationClass()),{[this.CELL_CONTAINER_WITH_DESCRIPTION_STRING]:this.isObject(i)&&Object.keys(i).includes("description")}),style:Object.assign(Object.assign({},this.getCalculatedRowHeight(t,l===null||l===void 0?void 0:l.textWrap,i,d)),this.getColumnWidth(t===null||t===void 0?void 0:t.columnWidth)),"data-row-height":this.truncationPattern||d?this.setRowHeight(d):null},h(this.el,a)?e("slot",{name:a}):e(s,null,h(this.el,`${a}-icon`)?e("slot",{name:`${a}-icon`}):(o||((b=t===null||t===void 0?void 0:t.icon)===null||b===void 0?void 0:b.onAllCells))&&(n("icon")||((f=t===null||t===void 0?void 0:t.icon)===null||f===void 0?void 0:f.icon))&&e("span",{class:"icon",innerHTML:n("icon")||((m=t===null||t===void 0?void 0:t.icon)===null||m===void 0?void 0:m.icon)}),(t===null||t===void 0?void 0:t.dataType)!=="element"&&!h(this.el,a)&&e("div",{class:{"cell-text-wrapper":true,"cell-text-no-wrap":!this.truncationPattern}},e("ic-typography",{variant:"body",class:{[`cell-emphasis-${this.isObject(i)&&n("emphasis")||(t===null||t===void 0?void 0:t.emphasis)||r}`]:this.isObject(i)&&!!n("emphasis")||!!(t===null||t===void 0?void 0:t.emphasis)||!!r,[`text-${this.density}`]:this.notDefaultDensity()}},this.isObject(i)&&(t===null||t===void 0?void 0:t.dataType)!=="date"?Object.keys(i).includes("href")?e("ic-link",{href:n("href"),theme:this.theme,target:n("target")||undefined,rel:n("rel")||undefined},n("data")):n("data"):this.getCellContent(i,t===null||t===void 0?void 0:t.dataType)),this.isObject(i)&&Object.keys(i).includes("description")&&e("div",{class:{["cell-description"]:true,[`data-type-${t===null||t===void 0?void 0:t.dataType}`]:true}},((y=n("description"))===null||y===void 0?void 0:y.icon)&&e("span",{class:"cell-description-icon",innerHTML:n("description").icon}),e("ic-typography",{variant:"caption",class:"cell-description-text"},(x=(w=n("description"))===null||w===void 0?void 0:w.data)!==null&&x!==void 0?x:n("description"))))))};this.createCells=(t,i)=>{var s;const a=Object.keys(t);const l=this.getObjectValue(t,"rowOptions");let o;let n;const h=this.getObjectValue(t,"header");if(h){o=this.getObjectValue(h,"rowAlignment");n=this.getObjectValue(h,"emphasis")}const r=(s=this.variableRowHeight)===null||s===void 0?void 0:s.call(this,Object.assign(Object.assign({},t),{index:i}));const d=r?r!=="auto"&&r:this.globalRowHeight!=="auto"&&this.globalRowHeight;return this.columns.map(((s,h)=>{var r,c,u,v;if(s.hidden!==true){const p=this.getObjectValue(t,s["key"]);const g=t=>this.getObjectValue(p,t);if(a[h]==="header"){return e("th",{scope:"row",colSpan:g("colspan"),class:{["row-header"]:true,[`row-header-alignment-${g("cellAlignment")}`]:!!g("cellAlignment"),["row-header-sticky"]:this.stickyRowHeaders}},g("title"))}const b=this.createCellContent(s,p,`${s===null||s===void 0?void 0:s.key}-${i}`,l,this.isObject(p)&&Object.keys(p).includes("icon"),g,n,d||undefined);if(a[h]!=="rowOptions"){return e("td",{class:{["table-cell"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["with-overflow"]:(s===null||s===void 0?void 0:s.dataType)==="element",[`cell-vertical-align-${((r=s===null||s===void 0?void 0:s.columnAlignment)===null||r===void 0?void 0:r.vertical)||((c=l===null||l===void 0?void 0:l.rowAlignment)===null||c===void 0?void 0:c.vertical)||o||this.getCellAlignment(p,"vertical")}`]:!!((u=s===null||s===void 0?void 0:s.columnAlignment)===null||u===void 0?void 0:u.vertical)||!!((v=l===null||l===void 0?void 0:l.rowAlignment)===null||v===void 0?void 0:v.vertical)||!!o||!!this.getCellAlignment(p,"vertical")},style:Object.assign({},this.getColumnWidth(s.columnWidth))},this.isObject(p)&&Object.keys(p).includes("actionElement")?e("div",{class:"cell-grid-wrapper"},b,e("span",{class:"action-element",innerHTML:g("actionElement"),onClick:p.actionOnClick?t=>this.handleClick(t,p.actionOnClick):undefined})):b)}}}))};this.createColumnHeaders=()=>(this.columns||[]).map((({cellAlignment:t,colspan:i,icon:s,key:a,title:l,columnWidth:o,excludeColumnFromSort:n,hidden:r},d)=>r!==true&&e("th",{scope:"col",class:{["column-header"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["updating-state-headers"]:this.updating&&!this.loading},style:Object.assign({},this.getColumnWidth(o)),colSpan:i},e("div",{class:{"column-header-inner-container":true,"truncation-tooltip":this.columnHeaderTruncation,[`column-header-alignment-${t}`]:!!t}},h(this.el,`${a}-column-icon`)?e("slot",{name:`${a}-column-icon`}):s&&!s.hideOnHeader&&e("span",{class:"icon",innerHTML:s.icon}),this.columnHeaderTruncation?e("ic-tooltip",{label:l,target:`column-header-${d}`},e("ic-typography",{id:`column-header-${d}`,variant:"body",class:{["column-header-text"]:true,[`text-${this.density}`]:this.notDefaultDensity()}},l)):e("ic-typography",{variant:"body",class:{["column-header-text"]:true,[`text-${this.density}`]:this.notDefaultDensity()}},l),this.sortable&&!n&&e("ic-button",{variant:"icon-tertiary",id:`sort-button-${a}`,"aria-label":this.getSortButtonLabel(a),onClick:()=>this.sortRows(a),innerHTML:this.SORT_ICONS[this.sortedColumn===a?this.sortedColumnOrder:"unsorted"],class:{["sort-button"]:true,["sort-button-unsorted"]:this.sortedColumn!==a||this.sortedColumnOrder==="unsorted"}})),this.columnHeaderTruncation&&e("ic-typography",{variant:"body","aria-hidden":"true",class:{["column-header-text"]:true,["dummy-column-header-text"]:this.columnHeaderTruncation,[`text-${this.density}`]:this.notDefaultDensity()}},l))));this.onRowClick=t=>{const i=!this.selectedRows.includes(t);this.selectedRows=i?[...this.selectedRows,t]:this.selectedRows.filter((i=>i!==t));this.icSelectedRowChange.emit({row:i?t:null,selectedRows:this.selectedRows})};this.selectAllRows=()=>{this.selectedRows=this.organisedData&&this.selectedRows.length!==this.organisedData.length?[...this.organisedData]:[];this.icSelectAllRows.emit(this.selectedRows)};this.createRows=()=>{var t,i,s,a;const l=this.showPagination?(t=this.data)===null||t===void 0?void 0:t.slice(this.fromRow,this.toRow):(i=this.data)===null||i===void 0?void 0:i.slice();const o=this.showPagination?this.fromRow:0;this.organisedData=l===null||l===void 0?void 0:l.map(((t,i)=>{const e=this.columns.map((({key:t},e)=>h(this.el,`${t}-${i+o}`)&&{key:t,index:e})).filter((i=>!!i&&!Object.prototype.hasOwnProperty.call(t,i.key)));return e.length>0?r(t,e,""):t}));return(s=this.organisedData)===null||s===void 0?void 0:s.sort(this.sortable&&!this.disableAutoSort&&this.sortedColumn&&!((a=this.columns.find((t=>t.key===this.sortedColumn)))===null||a===void 0?void 0:a.disableAutoSort)?this.getSortFunction():undefined).map(((t,i)=>{const s=this.rowSelection&&this.selectedRows.includes(t);const a=i+o;return e("tr",{class:{"table-row":true,"table-row-selected":s}},this.rowSelection&&e("td",{class:{"table-cell":true,"checkbox-cell":true,[`table-density-${this.density}`]:this.notDefaultDensity()}},e("div",{class:"checkbox-wrapper"},e("ic-checkbox",{class:"ic-data-table-checkbox",checked:s,disabled:this.updating||this.loading,hideLabel:true,label:`${s?"Deselect":"Select"} row ${a}`,onIcCheck:()=>this.onRowClick(t),size:this.density==="dense"?"small":"medium",value:a}))),this.createCells(t,a))}))};this.getObjectValue=(t,i)=>Object.values(t)[Object.keys(t).indexOf(i)];this.getSortButtonLabel=t=>{let i="";const e=t=>{const i=this.sortOptions.sortOrders;return i[(i.indexOf(t)+1)%i.length]};if(this.sortedColumn===t){const t=e(this.sortedColumnOrder);i=t!=="unsorted"?`Sort ${t}`:"Remove sort"}else{i=`Sort ${e("unsorted")}`}return i};this.getComparison=(t,i)=>{const e=t[this.sortedColumn];const s=i[this.sortedColumn];return this.columns.find((t=>t.key===this.sortedColumn)).dataType==="date"?new Date(e).valueOf()-new Date(s).valueOf():String(this.isObject(e)?Object.values(e)[0]:e).localeCompare(String(this.isObject(s)?Object.values(s)[0]:s),undefined,{numeric:true,sensitivity:"base"})};this.getSortFunction=()=>{switch(this.sortedColumnOrder){case"ascending":return(t,i)=>this.getComparison(t,i);case"descending":return(t,i)=>this.getComparison(i,t);default:return undefined}};this.sortRows=t=>{var i,e,s,a;const l=this.sortOptions.sortOrders;if(t!==this.sortedColumn){if(this.sortedColumn){(e=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(`#sort-button-${this.sortedColumn}`))===null||e===void 0?void 0:e.setAttribute("aria-label",this.getSortButtonLabel(t))}this.sortedColumn=t;this.sortedColumnOrder="unsorted"}let o=l.indexOf(this.sortedColumnOrder)+1;if(o>l.length-1){o=0}this.sortedColumnOrder=l[o];(a=(s=this.el.shadowRoot)===null||s===void 0?void 0:s.querySelector(`#sort-button-${t}`))===null||a===void 0?void 0:a.setAttribute("aria-label",this.getSortButtonLabel(t));this.tableSorted=true;this.icSortChange.emit({columnName:t,sorted:this.sortedColumnOrder})};this.getTypographyElements=()=>{var t;return Array.from(((t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("ic-typography:not(.column-header-text,.cell-description-text)"))||[])};this.getTooltip=t=>t.closest(this.TOOLTIP);this.updateTruncationTooltip=(t=false)=>{this.getTypographyElements().forEach((i=>{const e=this.getTooltip(i);const s=this.getCellContainer(i);if(s){if(i.closest(this.TEXT_WRAP_CLASS)){this.removeTooltip(s,i,e);i.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: 0`);return}this.regenerateTooltip(s,i,e,t)}}))};this.updateScrollOffset=()=>{var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(".table-row-container");if(i)this.scrollOffset=i.scrollTop};this.updateRowHeightForDescriptions=(t,i)=>{i.setAttribute(this.DATA_ROW_HEIGHT_STRING,t.toString());i.setAttribute("style",`${this.ROW_HEIGHT_CSS_VARIABLE}: ${t}px`)};this.getDescriptionHeight=t=>{const i=window.getComputedStyle(t).getPropertyValue("margin-top");return t.clientHeight+parseInt(i,10)};this.updateCellHeightsWithDescriptions=()=>{var t,i;const e=d(p.XS);(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(this.CELL_DESCRIPTION_STRING))===null||i===void 0?void 0:i.forEach((t=>{const i=t.closest(`.${this.CELL_CONTAINER_WITH_DESCRIPTION_STRING}`);const s=i===null||i===void 0?void 0:i.querySelector(this.IC_TYPOGRAPHY_STRING);if(s&&i&&this.globalRowHeight&&this.globalRowHeight!=="auto"){const a=this.getDescriptionHeight(t);const l=a+this.DEFAULT_LINE_HEIGHT;if(!s.textContent&&l>this.globalRowHeight){this.updateRowHeightForDescriptions(a,i)}else if(this.truncationPattern===this.TOOLTIP_STRING){if(l>this.globalRowHeight){const t=i.querySelector(".icon");let s=l;if(t&&e){s+=t.clientHeight}this.updateRowHeightForDescriptions(s,i)}this.addLineClampCSS(s,i)}else if(this.truncationPattern===this.SHOW_HIDE_STRING&&l>this.globalRowHeight&&s.style.getPropertyValue("--truncation-max-lines")!=="initial"){this.updateRowHeightForDescriptions(l,i);this.createShowHideTruncation(s,i,a)}}}))};this.setTableDimensions=()=>{let t={};if(this.width){t=Object.assign(Object.assign({},t),{["--table-width"]:this.width})}if(this.height){t=Object.assign(Object.assign({},t),{["--table-height"]:this.height})}if(this.maxWidth){t=Object.assign(Object.assign({},t),{["--table-max-width"]:this.maxWidth})}if(this.minWidth){t=Object.assign(Object.assign({},t),{["--table-min-width"]:this.minWidth})}return t};this.fixCellTooltip=t=>{var i,e;let s=null;const a=(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector(this.IC_TOOLTIP_STRING);if(t.tagName==="IC-TOOLTIP"){s=t}else if(a){s=a}else if(((e=t.children)===null||e===void 0?void 0:e.length)>0){Array.from(t.children).forEach((t=>{this.fixCellTooltip(t)}))}else{return}s===null||s===void 0?void 0:s.setExternalPopperProps({strategy:"fixed"})};this.fixCellOverflow=()=>{var t,i;(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".data-type-element"))===null||i===void 0?void 0:i.forEach((t=>{let i=Array.from(t.children);if(i.length===1&&i[0].tagName==="SLOT"){i=c(t)}i===null||i===void 0?void 0:i.forEach((i=>{var e;if(i.tagName==="IC-SELECT"){const s=(e=i.shadowRoot)===null||e===void 0?void 0:e.querySelector("ic-menu");s===null||s===void 0?void 0:s.setExternalPopperProps({strategy:"fixed"});i.style.setProperty("--input-width",`${t.clientWidth}px`)}else{const t=i.querySelector("ic-popover-menu");t===null||t===void 0?void 0:t.setExternalPopperProps({strategy:"fixed"})}}))}))};this.fixCellTooltips=()=>{var t,i,e,s;(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".data-type-element"))===null||i===void 0?void 0:i.forEach((t=>{const i=c(t);i===null||i===void 0?void 0:i.forEach((t=>{this.fixCellTooltip(t)}))}));(s=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelectorAll(".action-element"))===null||s===void 0?void 0:s.forEach((t=>this.fixCellTooltip(t)))};this.handleClick=(t,i)=>i(t);this.renderTableBody=(t,i,s)=>{if(!(i===null||i===void 0?void 0:i.length))return;if(s&&t){return e("tbody",null,this.createRows())}else if(t&&!s){return null}else{return e("tbody",null,this.createRows())}};this.renderLoadingIndicator=(t,i)=>{if(!t)return null;return e(s,null,e("div",{class:"loading-overlay",ref:t=>this.loadingOverlay=t}),e("ic-loading-indicator",{theme:this.theme,monochrome:i===null||i===void 0?void 0:i.monochrome,class:{"loading-empty":t,loading:true},description:(i===null||i===void 0?void 0:i.description)||"Loading table data",label:(i===null||i===void 0?void 0:i.label)||"Loading...",labelDuration:i===null||i===void 0?void 0:i.labelDuration,max:i===null||i===void 0?void 0:i.max,min:i===null||i===void 0?void 0:i.min,progress:i===null||i===void 0?void 0:i.progress,ref:t=>this.loadingIndicator=t}))};this.renderAriaLiveLoading=()=>{var t,i;if(this.loading){return((t=this.loadingOptions)===null||t===void 0?void 0:t.label)||"Loading..."}else if(this.updating){return((i=this.updatingOptions)===null||i===void 0?void 0:i.description)||"Updating table data"}else{return""}};this.renderEmptyState=(t,i,s)=>{const a=h(this.el,"empty-state")?e("slot",{name:"empty-state"}):e("ic-empty-state",{aligned:"center",heading:"No Data",class:"loading-empty"});if(t&&!(i===null||i===void 0?void 0:i.length)&&s){return a}else if(!t&&!(i===null||i===void 0?void 0:i.length)){return a}else{return null}}}headerTruncationChangeHandler(){var t,i;if(this.columnHeaderTruncation){this.prevTableContainerWidth=0}else{(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("th.column-header"))===null||i===void 0?void 0:i.forEach((t=>{var i;(i=t.querySelector(this.IC_TOOLTIP_STRING))===null||i===void 0?void 0:i.classList.remove(this.SHOW_TRUNC_TOOLTIP_STRING)}))}}columnsChangeHandler(){this.columnsUpdated=true}disconnectedCallback(){var t,i;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect();(i=this.headerResizeObserver)===null||i===void 0?void 0:i.disconnect();window.removeEventListener("resize",this.handleResize)}componentWillLoad(){this.rowsPerPage=Number(this.paginationBarOptions.itemsPerPageOptions[0].value);this.previousRowsPerPage=this.rowsPerPage;this.toRow=this.rowsPerPage;this.sortedColumn=this.sortOptions.defaultColumn;this.sortedColumnOrder=this.sortOptions.sortOrders[0];this.loadingOptions=Object.assign({},this.loadingOptions);this.initialLoad=true;this.previousItemsPerPage=this.rowsPerPage}componentDidLoad(){var t,i;const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("table");const s=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".table-container");u(this.runHeaderResizeObserver);if(this.dataUpdated){this.dataUpdated=false}if(e&&s&&(e.clientHeight>s.clientHeight||e.clientWidth>s.clientWidth)){this.scrollable=true}if(this.loading){this.startLoadingTimer();this.showLoadingIndicator()}if(this.truncationPattern){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i&&!i.classList.contains(this.TEXT_WRAP_STRING)){this.dataTruncation(t,i);this.resizeObserver=new ResizeObserver(v((()=>{this.dataTruncation(t,i);if(!this.isNewDebounceDelaySet){this.debounceDelay=200;this.isNewDebounceDelaySet=true}}),(()=>this.debounceDelay)));this.resizeObserver.observe(t)}}))}if(this.globalRowHeight!=="auto"){this.updateSetRowHeight()}window.addEventListener("resize",this.handleResize);this.icColumnsLoaded.emit();if(this.data&&!this.loading&&!this.updating)this.icDataLoaded.emit()}componentDidUpdate(){if(this.truncationPattern===this.SHOW_HIDE_STRING||this.truncationPattern===this.TOOLTIP_STRING){if(this.dataUpdated){this.truncateUpdatedData()}if(this.tableSorted){this.truncateTableSorted()}if(this.rowHeightSet){this.truncateRowHeightSet()}if(this.itemsPerPageChange){this.truncateItemsPerPageChange()}if(!this.initialLoad&&this.icPageChangeEvent){this.truncatePageChange()}if(this.densityUpdate){this.truncateDensityUpdate()}if(this.truncationPatternUpdated){this.truncatePatternUpdated()}}if(this.columnsUpdated){this.icColumnsLoaded.emit();this.columnsUpdated=false}if(this.dataUpdated&&!this.loading&&!this.updating){this.icDataLoaded.emit();this.dataUpdated=false}}componentDidRender(){this.fixCellTooltips();this.fixCellOverflow();this.updateCellHeightsWithDescriptions();this.adjustWidthForActionElement()}createShowHideTruncation(t,i,e=0){t.checkMaxLines(t.scrollHeight);t.setAttribute("max-lines",`${this.getLines(i.clientHeight-e)}`);t.setShowHideExpanded(false);i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}addTooltipTruncation(t,i,e){this.addLineClampCSS(t,i);if(!e){this.createTruncationTooltip(t,i)}}addShowHideTruncation(t,i){t.classList.add(this.SHOW_HIDE_CSS_CLASS);this.createShowHideTruncation(i,t)}handleTypographyTruncationExpandToggle({detail:t}){const{expanded:i,typographyEl:e}=t;const s=this.getCellContainer(e);if((s===null||s===void 0?void 0:s.style.getPropertyValue(this.ROW_HEIGHT_CSS_VARIABLE))&&i){s.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,"inherit")}}handlePageChange({detail:t,target:i}){var e;if(i.parentElement!==this.el){this.fromRow=(t.value-1)*this.rowsPerPage;this.toRow=this.fromRow+this.rowsPerPage;const i=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector(".table-row-container");if(i){if(this.previousRowsPerPage===this.rowsPerPage){i.scrollTop=0}else if(this.previousRowsPerPage<this.rowsPerPage){i.scrollTop=this.scrollOffset;this.previousRowsPerPage=this.rowsPerPage}else{this.previousRowsPerPage=this.rowsPerPage}}this.selectedRows=[]}if(!this.initialLoad&&this.previousPaginationPage!==t.value){this.icPageChangeEvent=true}this.previousPaginationPage=t.value;this.initialLoad=false}handleItemsPerPageChange({detail:t,target:i}){if(i.parentElement!==this.el){this.previousRowsPerPage=this.rowsPerPage;this.rowsPerPage=t.value}this.itemsPerPageChange=true}handleDensityChange(t){this.density=t.detail.value}loadingHandler(){if(this.loading){this.startLoadingTimer();setTimeout((()=>{this.showLoadingIndicator()}),500)}}truncationPatternHandler(){if(this.truncationPattern===this.TOOLTIP_STRING){this.resetAllShowHideTruncation();this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i)this.truncate(t,i,e)}))}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){if(this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight(t,i)){this.resetSingleShowHideTruncation(t,i);return}setTimeout((()=>{this.addShowHideTruncationIfNeeded(t,i)}),150)}}))}this.truncationPatternUpdated=true}async dataHandler(){this.loadingOptions=Object.assign({},this.loadingOptions);if(this.loading){!this.hasLoadedForOneSecond?setTimeout((()=>this.loading=false),this.minimumLoadingDisplayDuration-(Date.now()-this.timerStarted)):this.loading=false}if(this.updating)this.updating=false;this.dataUpdated=true}async densityHandler(){this.densityUpdate=true}rowHeightChangeHandler(t,i){if(+t!==+i){this.deleteTextWrapDataKey(this.data);this.deleteTextWrapDataKey(this.columns);this.removeTextWrap();this.icRowHeightChange.emit();this.rowHeightSet=true}}async resetRowHeights(t){this.globalRowHeight=t||"auto";this.variableRowHeight=undefined}showLoadingIndicator(){var t,i,e;if((t=this.loadingOptions)===null||t===void 0?void 0:t.overlay){(i=this.loadingOverlay)===null||i===void 0?void 0:i.classList.add("show")}(e=this.loadingIndicator)===null||e===void 0?void 0:e.classList.add("show")}regenerateTooltip(t,i,e,s){if(e){if(this.tableSorted){e.setAttribute("target",i.id);e.setAttribute("label",i.textContent)}else{this.removeTooltip(t,i,e)}if(s){return}}if(!i.getAttribute("style")&&this.dataUpdated){this.addLineClampCSS(i,t)}if((i===null||i===void 0?void 0:i.scrollHeight)>(t===null||t===void 0?void 0:t.clientHeight)&&this.truncationPattern===this.TOOLTIP_STRING){if(!i.getAttribute("style")||i.style.cssText.includes(`${this.LINE_CLAMP_CSS_VARIABLE}: 0;`)){this.addLineClampCSS(i,t)}if(!t.querySelector(this.IC_TOOLTIP_STRING))this.createTruncationTooltip(i,t)}}removeTooltip(t,i,e){var s;(s=t.querySelector(this.CELL_TEXT_WRAPPER_STRING))===null||s===void 0?void 0:s.prepend(i);e===null||e===void 0?void 0:e.remove()}addLineClampCSS(t,i){var e,s;const a=(e=i.querySelector(this.CELL_DESCRIPTION_STRING))===null||e===void 0?void 0:e.clientHeight;const l=i.clientHeight;let o=l;if(i.classList.contains(this.CELL_CONTAINER_WITH_DESCRIPTION_STRING)&&a&&l>a){const t=d(p.XS)&&((s=i===null||i===void 0?void 0:i.querySelector(".icon"))===null||s===void 0?void 0:s.clientHeight)||0;o=o-a-t}t.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: ${this.getLines(o||0)}`)}createTruncationTooltip(t,i){var e;const s=document.createElement(this.IC_TOOLTIP_STRING);s.setAttribute("target",t.id);s.setAttribute("label",t.textContent);s.classList.add("ic-tooltip-overflow");s.setExternalPopperProps({strategy:"fixed"});(e=i.querySelector(this.CELL_TEXT_WRAPPER_STRING))===null||e===void 0?void 0:e.prepend(s);s.prepend(t)}render(){var t,i;const{caption:s,columns:l,createColumnHeaders:o,createUpdatingIndicator:n,data:r,density:d,hideColumnHeaders:c,rowSelection:u,loading:v,loadingOptions:p,paginationBarOptions:g,rowsPerPage:b,scrollable:f,scrollOffset:m,selectAllRows:y,selectedRows:w,showPagination:x,sortable:k,sortedColumn:O,sortedColumnOrder:$,stickyColumnHeaders:j,updateScrollOffset:C,updating:H,tableLayout:P,theme:T}=this;const L=w.length>0;const z=w.length===(x?b:r===null||r===void 0?void 0:r.length);const I=L?z?"deselect all":"select all remaining":"select all";return e(a,{key:"64eb44a8bf010b30423347fe571f410a2d8928c9",style:Object.assign({},this.setTableDimensions()),class:{[`ic-theme-${T}`]:T!=="inherit"}},e("div",{key:"becebfcadb3bc4b16ae5a320552f69c88d25618b",class:"table-container"},h(this.el,"title-bar")&&e("slot",{key:"8cf6095d010f0f08d80105afe038123b55374297",name:"title-bar"}),e("div",{key:"1b4739fb76ab911fae8ced0348d0d0454d9c72e2",class:{["table-row-container"]:true,scrollable:f},tabIndex:f?0:undefined,onScroll:C},e("table",{key:"73bfb72667914b7999f1bdc7e52b30f8520a4bc8",style:{"--table-layout":P}},e("caption",{key:"39ebd596a88837589359e5dc81b0578c26fbc5dc",class:"table-caption"},s),!c&&e("thead",{key:"277be2cfef3f0429087ac96e25796f1a57e5caae",class:{["column-header-sticky"]:j,["column-header-overlay"]:j&&m!==0}},e("tr",{key:"abe0eadb94fa537ee928892a785c3786527fb533"},u&&r&&e("th",{key:"2a751c6c0fabf5c3d2229e659078750d787a0807",class:{"column-header":true,"checkbox-cell":true,"updating-state-headers":H&&!v,[`table-density-${d}`]:this.notDefaultDensity()}},e("div",{key:"bca48d659a9384a9708b8ed554ecb51feaaa0c6e",class:"checkbox-wrapper"},e("ic-checkbox",{key:"dff4df961579d7b7024df1ef60df2cc1b73a9afa",class:"ic-data-table-checkbox",checked:L&&z,disabled:H||v,hideLabel:true,indeterminate:L&&!z,label:`${s} ${I} rows`,nativeIndeterminateBehaviour:true,onIcCheck:()=>y(),size:d==="dense"?"small":"medium",value:s}))),o())),H&&!v&&(c?e("thead",null,n()):n()),this.renderTableBody(v,r,p===null||p===void 0?void 0:p.overlay)),this.renderEmptyState(v,r,p===null||p===void 0?void 0:p.overlay)),e("div",{key:"823df0732817533fd47aac3fbb38eeb30d286d68","aria-live":"assertive",class:"sr-only"},this.renderAriaLiveLoading()),this.renderLoadingIndicator(v,p),(x||h(this.el,"pagination-bar"))&&e("div",{key:"ef31222b62a8b0bb19526c3955a40ea158281f74",class:"pagination-container"},h(this.el,"pagination-bar")?e("slot",{name:"pagination-bar"}):e("ic-pagination-bar",{alignment:g.alignment,hideAllFromItemsPerPage:g.hideAllFromItemsPerPage,hideRangeLabel:g.hideRangeLabel,itemLabel:g.itemLabel,itemsPerPageOptions:g.itemsPerPageOptions,monochrome:g.monochrome,pageLabel:g.pageLabel,rangeLabelType:g.rangeLabelType,selectedItemsPerPage:g.selectedItemsPerPage,selectItemsPerPageOnEnter:g.selectItemsPerPageOnEnter,setToFirstPageOnPaginationChange:g.setToFirstPageOnPaginationChange,showGoToPageControl:g.showGoToPageControl,showItemsPerPageControl:g.showItemsPerPageControl,theme:T,totalItems:(t=r===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,type:g.type})),k&&e("div",{key:"03084660142fec0b5855a9e4ff158d97fc0e5142",class:"screen-reader-sort-text","aria-live":"polite"},$!=="unsorted"&&O?`${((i=l.find((t=>t.key===O)))===null||i===void 0?void 0:i.title)||O} sorted ${$}`:"table unsorted")))}get el(){return l(this)}static get watchers(){return{columnHeaderTruncation:["headerTruncationChangeHandler"],columns:["columnsChangeHandler"],loading:["loadingHandler"],truncationPattern:["truncationPatternHandler"],data:["dataHandler"],density:["densityHandler"],globalRowHeight:["rowHeightChangeHandler"],variableRowHeight:["rowHeightChangeHandler"]}}};w.style=y;export{w as ic_data_table};
|
2
|
-
//# sourceMappingURL=p-cbbba154.entry.js.map
|