@ukic/canary-web-components 3.0.0-canary.13 → 3.0.0-canary.15
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/dist/cjs/core.cjs.js +2 -2
- package/dist/cjs/{date-helpers-c9551119.js → date-helpers-6f70dd03.js} +20 -66
- package/dist/cjs/date-helpers-6f70dd03.js.map +1 -0
- package/dist/cjs/{helpers-fc51fdcb.js → helpers-bec0dbd4.js} +2 -2
- package/dist/cjs/{helpers-fc51fdcb.js.map → helpers-bec0dbd4.js.map} +1 -1
- package/dist/cjs/{helpers-0e4c4fdd.js → helpers-d01564f7.js} +35 -17
- package/dist/cjs/helpers-d01564f7.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-accordion.cjs.entry.js +2 -2
- package/dist/cjs/ic-alert.cjs.entry.js +2 -2
- package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -2
- package/dist/cjs/ic-badge.cjs.entry.js +3 -3
- 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.cjs.entry.js +2 -2
- package/dist/cjs/ic-button_3.cjs.entry.js +61 -3
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-horizontal.cjs.entry.js +16 -12
- package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +3 -3
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +7 -7
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/{ic-empty-state_2.cjs.entry.js → ic-checkbox_3.cjs.entry.js} +158 -24
- package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-chip.cjs.entry.js +3 -3
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +3 -3
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +7 -7
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table.cjs.entry.js +310 -276
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +175 -160
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +92 -70
- package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +38 -47
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer.cjs.entry.js +2 -2
- package/dist/cjs/ic-hero.cjs.entry.js +2 -2
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +2 -2
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +3 -3
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +2 -2
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-item.cjs.entry.js +3 -3
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-group.cjs.entry.js +23 -17
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +38 -24
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +12 -11
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +53 -32
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +7 -6
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +7 -7
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +2 -2
- package/dist/cjs/ic-search-bar.cjs.entry.js +3 -3
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +3 -3
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +10 -7
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +3 -3
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skip-link.cjs.entry.js +11 -10
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +5 -5
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +17 -16
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +4 -4
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +6 -6
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +3 -3
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +3 -3
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +3 -3
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js +2 -2
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +6 -6
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +5 -5
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +5 -9
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +56 -42
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +127 -22
- 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/{index-8a24b20c.js → index-d337cd8a.js} +6 -11
- package/dist/cjs/index-d337cd8a.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +1 -1
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +27 -23
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.css +19 -2
- package/dist/collection/components/ic-data-table/ic-data-table.js +385 -330
- 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 +8 -9
- package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
- package/dist/collection/components/ic-data-table/story-data.js +13 -14
- package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +9 -9
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
- package/dist/collection/components/ic-date-input/ic-date-input.js +240 -198
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-date-input/ic-date-input.stories.js +19 -1
- package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -1
- package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +6 -3
- package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.js +133 -91
- package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js +9 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-day-button.js +1 -1
- package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -1
- package/dist/collection/components/ic-date-picker/story-data.js +16 -1
- package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +41 -38
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +86 -50
- 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 +165 -31
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
- package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js +384 -12
- package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
- package/dist/collection/components/ic-tree-view/ic-tree-view.types.js +2 -0
- package/dist/collection/components/ic-tree-view/ic-tree-view.types.js.map +1 -0
- package/dist/collection/utils/date-helpers.js +19 -61
- package/dist/collection/utils/date-helpers.js.map +1 -1
- package/dist/collection/utils/helpers.js +44 -61
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/collection/utils/testa11y.helpers.js +2 -1
- package/dist/collection/utils/testa11y.helpers.js.map +1 -1
- package/dist/components/helpers.js +1 -1
- package/dist/components/helpers2.js +32 -16
- package/dist/components/helpers2.js.map +1 -1
- package/dist/components/ic-badge.js +1 -1
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-button2.js +59 -1
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-horizontal.js +14 -10
- package/dist/components/ic-card-horizontal.js.map +1 -1
- package/dist/components/ic-card-vertical.js +1 -1
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +5 -5
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +1 -175
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/{esm/ic-checkbox.entry.js → components/ic-checkbox2.js} +53 -11
- package/dist/components/ic-checkbox2.js.map +1 -0
- package/dist/components/ic-chip.js +1 -1
- 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-table-title-bar.js +5 -5
- package/dist/components/ic-data-table-title-bar.js.map +1 -1
- package/dist/components/ic-data-table.js +319 -279
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +198 -225
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +90 -67
- package/dist/components/ic-date-picker.js.map +1 -1
- package/dist/components/ic-dialog.js +38 -47
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +1 -1
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +1 -1
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-navigation-group.js +22 -15
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +37 -23
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +10 -9
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-bar2.js +22 -20
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +2 -2
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +5 -5
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +5 -4
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +5 -5
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-search-bar.js +1 -1
- 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 +13 -10
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +8 -5
- 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 +10 -9
- package/dist/components/ic-skip-link.js.map +1 -1
- package/dist/components/ic-status-tag.js +3 -3
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +15 -14
- 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 +1 -1
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +35 -13
- 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-toast-region.js +1 -1
- package/dist/components/ic-toast-region.js.map +1 -1
- package/dist/components/ic-toast.js +5 -5
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +2 -2
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +3 -3
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-top-navigation.js +4 -8
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.js +55 -40
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +132 -23
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/core/core.css +353 -245
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-8d73a3cc.entry.js → p-0616dfbe.entry.js} +2 -2
- package/dist/core/p-0616dfbe.entry.js.map +1 -0
- package/dist/core/{p-b17e7059.entry.js → p-06bf2cea.entry.js} +2 -2
- package/dist/core/{p-b17e7059.entry.js.map → p-06bf2cea.entry.js.map} +1 -1
- package/dist/core/{p-f2f7299b.entry.js → p-071f4748.entry.js} +2 -2
- package/dist/core/{p-f2f7299b.entry.js.map → p-071f4748.entry.js.map} +1 -1
- package/dist/core/p-09e8b002.entry.js +2 -0
- package/dist/core/p-09e8b002.entry.js.map +1 -0
- package/dist/core/{p-b18a5861.entry.js → p-110486f0.entry.js} +2 -2
- package/dist/core/{p-b18a5861.entry.js.map → p-110486f0.entry.js.map} +1 -1
- package/dist/core/p-19ecd2a6.entry.js +2 -0
- package/dist/core/p-19ecd2a6.entry.js.map +1 -0
- package/dist/core/p-1a2b4803.entry.js +2 -0
- package/dist/core/p-1a2b4803.entry.js.map +1 -0
- package/dist/core/{p-32720276.entry.js → p-1bbae4b3.entry.js} +2 -2
- package/dist/core/{p-0fd762bf.entry.js → p-1f415138.entry.js} +2 -2
- package/dist/core/p-1f415138.entry.js.map +1 -0
- package/dist/core/{p-b8aa37f9.entry.js → p-20bd48cf.entry.js} +2 -2
- package/dist/core/{p-be5ad372.entry.js → p-21193099.entry.js} +2 -2
- package/dist/core/p-264335c5.entry.js +2 -0
- package/dist/core/p-264335c5.entry.js.map +1 -0
- package/dist/core/{p-a214a9f8.entry.js → p-30a5b319.entry.js} +2 -2
- package/dist/core/{p-a214a9f8.entry.js.map → p-30a5b319.entry.js.map} +1 -1
- package/dist/core/{p-9f4fa820.entry.js → p-3244a174.entry.js} +2 -2
- package/dist/core/{p-9f4fa820.entry.js.map → p-3244a174.entry.js.map} +1 -1
- package/dist/core/{p-5dc25d11.entry.js → p-37df68fe.entry.js} +2 -2
- package/dist/core/{p-5dc25d11.entry.js.map → p-37df68fe.entry.js.map} +1 -1
- package/dist/core/{p-3e9564b5.entry.js → p-39269b62.entry.js} +2 -2
- package/dist/core/p-3955fa94.entry.js +2 -0
- package/dist/core/p-3955fa94.entry.js.map +1 -0
- package/dist/core/p-3f185257.entry.js +2 -0
- package/dist/core/p-3f185257.entry.js.map +1 -0
- package/dist/core/p-401f0043.entry.js +2 -0
- package/dist/core/{p-144b1dee.entry.js.map → p-401f0043.entry.js.map} +1 -1
- package/dist/core/{p-da798f58.entry.js → p-44ac8f8a.entry.js} +2 -2
- package/dist/core/{p-afc4ce53.entry.js → p-4d39cab8.entry.js} +2 -2
- package/dist/core/{p-fd006a9b.entry.js → p-4e187a11.entry.js} +2 -2
- package/dist/core/{p-d154b26c.entry.js → p-50324682.entry.js} +2 -2
- package/dist/core/{p-cd9e1ffa.entry.js → p-50f4d151.entry.js} +2 -2
- package/dist/core/{p-cd9e1ffa.entry.js.map → p-50f4d151.entry.js.map} +1 -1
- package/dist/core/{p-22e0ed96.entry.js → p-5796b6cd.entry.js} +2 -2
- package/dist/core/{p-96551ddf.entry.js → p-57c80527.entry.js} +2 -2
- package/dist/core/p-59aed40c.entry.js +2 -0
- package/dist/core/p-59aed40c.entry.js.map +1 -0
- package/dist/core/{p-b6db0cc1.entry.js → p-60d15d35.entry.js} +2 -2
- package/dist/core/p-65d3a515.entry.js +2 -0
- package/dist/core/p-65d3a515.entry.js.map +1 -0
- package/dist/core/{p-272352cb.entry.js → p-6aa1e928.entry.js} +2 -2
- package/dist/core/p-6e0f93c5.entry.js +2 -0
- package/dist/core/p-6e0f93c5.entry.js.map +1 -0
- package/dist/core/p-6f6d793f.entry.js +2 -0
- package/dist/core/p-6f6d793f.entry.js.map +1 -0
- package/dist/core/{p-507ec499.entry.js → p-701696aa.entry.js} +2 -2
- package/dist/core/{p-507ec499.entry.js.map → p-701696aa.entry.js.map} +1 -1
- package/dist/core/{p-1334a78f.entry.js → p-73e41eac.entry.js} +2 -2
- package/dist/core/p-7bbd9fcb.entry.js +2 -0
- package/dist/core/p-7bbd9fcb.entry.js.map +1 -0
- package/dist/core/p-7d054704.js +2 -0
- package/dist/core/p-7d054704.js.map +1 -0
- package/dist/core/{p-08fd225f.entry.js → p-857c46c0.entry.js} +2 -2
- package/dist/core/p-858dd362.entry.js +2 -0
- package/dist/core/p-858dd362.entry.js.map +1 -0
- package/dist/core/{p-0e3cb8d0.entry.js → p-8856dff4.entry.js} +2 -2
- package/dist/core/p-8c5a23b4.entry.js +2 -0
- package/dist/core/p-8c5a23b4.entry.js.map +1 -0
- package/dist/core/{p-00135a74.js → p-8e4e97b4.js} +3 -3
- package/dist/core/p-8e4e97b4.js.map +1 -0
- package/dist/core/p-91dc6ad3.entry.js +2 -0
- package/dist/core/p-91dc6ad3.entry.js.map +1 -0
- package/dist/core/{p-0c3bd9e6.entry.js → p-94427b50.entry.js} +2 -2
- package/dist/core/{p-e13b43b1.entry.js → p-9cf7494c.entry.js} +2 -2
- package/dist/core/{p-0848efa2.entry.js → p-a2671eb0.entry.js} +2 -2
- package/dist/core/p-a2fcea60.entry.js +2 -0
- package/dist/core/p-a2fcea60.entry.js.map +1 -0
- package/dist/core/p-a5ee9c8d.entry.js +2 -0
- package/dist/core/p-a5ee9c8d.entry.js.map +1 -0
- package/dist/core/{p-a4582939.entry.js → p-a88369e1.entry.js} +2 -2
- package/dist/core/p-a88369e1.entry.js.map +1 -0
- package/dist/core/{p-a30d165d.entry.js → p-af405fc0.entry.js} +2 -2
- package/dist/core/p-af405fc0.entry.js.map +1 -0
- package/dist/core/p-b953b22f.entry.js +2 -0
- package/dist/core/p-b953b22f.entry.js.map +1 -0
- package/dist/core/p-bb9142fe.entry.js +2 -0
- package/dist/core/{p-67f3bf1a.entry.js.map → p-bb9142fe.entry.js.map} +1 -1
- package/dist/core/{p-60a0c711.entry.js → p-bfdefe7a.entry.js} +2 -2
- package/dist/core/{p-60a0c711.entry.js.map → p-bfdefe7a.entry.js.map} +1 -1
- package/dist/core/p-c4baa405.entry.js +2 -0
- package/dist/core/p-c4baa405.entry.js.map +1 -0
- package/dist/core/p-c86ca475.js +2 -0
- package/dist/core/p-c86ca475.js.map +1 -0
- package/dist/core/p-cda2a461.entry.js +2 -0
- package/dist/core/p-cda2a461.entry.js.map +1 -0
- package/dist/core/{p-f6013934.entry.js → p-ce83c802.entry.js} +2 -2
- package/dist/core/p-ce83c802.entry.js.map +1 -0
- package/dist/core/p-cea17764.entry.js +2 -0
- package/dist/core/{p-4e5934f3.entry.js.map → p-cea17764.entry.js.map} +1 -1
- package/dist/core/{p-f541034c.entry.js → p-d0768256.entry.js} +2 -2
- package/dist/core/p-d2d6f1eb.entry.js +2 -0
- package/dist/core/p-d2d6f1eb.entry.js.map +1 -0
- package/dist/core/{p-c6f1e205.entry.js → p-d4628704.entry.js} +2 -2
- package/dist/core/p-d4628704.entry.js.map +1 -0
- package/dist/core/{p-0f6b9686.js → p-e246d84b.js} +2 -2
- package/dist/core/p-e4fa4ee5.entry.js +2 -0
- package/dist/core/p-e4fa4ee5.entry.js.map +1 -0
- package/dist/core/{p-3d1ba098.entry.js → p-e6779171.entry.js} +2 -2
- package/dist/core/{p-fd42f129.entry.js → p-e8bb1522.entry.js} +2 -2
- package/dist/core/p-e8bb1522.entry.js.map +1 -0
- package/dist/core/{p-4da17eda.entry.js → p-f42ca69f.entry.js} +2 -2
- package/dist/core/{p-3dc4e128.entry.js → p-f5e9c8c8.entry.js} +2 -2
- package/dist/core/p-f5e9c8c8.entry.js.map +1 -0
- package/dist/core/{p-0e119312.entry.js → p-fa02a267.entry.js} +2 -2
- package/dist/core/{p-0e119312.entry.js.map → p-fa02a267.entry.js.map} +1 -1
- package/dist/esm/core.js +3 -3
- package/dist/esm/{date-helpers-0e5e32a7.js → date-helpers-3b8c39ab.js} +20 -66
- package/dist/esm/date-helpers-3b8c39ab.js.map +1 -0
- package/dist/esm/{helpers-bbab69a2.js → helpers-bf471ace.js} +3 -3
- package/dist/esm/{helpers-bbab69a2.js.map → helpers-bf471ace.js.map} +1 -1
- package/dist/esm/{helpers-4e38ba2b.js → helpers-ddc2008a.js} +34 -18
- package/dist/esm/helpers-ddc2008a.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +2 -2
- package/dist/esm/ic-accordion.entry.js +2 -2
- package/dist/esm/ic-alert.entry.js +2 -2
- package/dist/esm/ic-back-to-top.entry.js +2 -2
- 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 +2 -2
- package/dist/esm/ic-breadcrumb.entry.js +2 -2
- package/dist/esm/ic-button_3.entry.js +61 -3
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-horizontal.entry.js +16 -12
- package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +3 -3
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +7 -7
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/{ic-empty-state_2.entry.js → ic-checkbox_3.entry.js} +158 -25
- package/dist/esm/ic-checkbox_3.entry.js.map +1 -0
- package/dist/esm/ic-chip.entry.js +3 -3
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +3 -3
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +1 -1
- package/dist/esm/ic-data-row.entry.js +2 -2
- package/dist/esm/ic-data-table-title-bar.entry.js +7 -7
- package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
- package/dist/esm/ic-data-table.entry.js +310 -276
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +175 -160
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-date-picker.entry.js +92 -70
- package/dist/esm/ic-date-picker.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +38 -47
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +2 -2
- package/dist/esm/ic-footer-link-group.entry.js +2 -2
- package/dist/esm/ic-footer-link.entry.js +2 -2
- package/dist/esm/ic-footer.entry.js +2 -2
- package/dist/esm/ic-hero.entry.js +2 -2
- package/dist/esm/ic-horizontal-scroll.entry.js +2 -2
- package/dist/esm/ic-input-component-container_3.entry.js +3 -3
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +2 -2
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-menu-group.entry.js +2 -2
- package/dist/esm/ic-menu-item.entry.js +3 -3
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js +23 -17
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +2 -2
- package/dist/esm/ic-navigation-menu.entry.js +38 -24
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +12 -11
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination_4.entry.js +53 -32
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +7 -6
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +7 -7
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +2 -2
- package/dist/esm/ic-search-bar.entry.js +3 -3
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +3 -3
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +10 -7
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +3 -3
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-skip-link.entry.js +11 -10
- package/dist/esm/ic-skip-link.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +5 -5
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +17 -16
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +4 -4
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +6 -6
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +2 -2
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +4 -4
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +3 -3
- 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 +3 -3
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast-region.entry.js +2 -2
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +6 -6
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +4 -4
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +5 -5
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +5 -9
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +56 -42
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +127 -22
- package/dist/esm/ic-tree-view.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/{index-163fe708.js → index-a7a720e7.js} +6 -11
- package/dist/esm/index-a7a720e7.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +3 -3
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +30 -20
- package/dist/types/components/ic-data-table/ic-data-table.stories.d.ts +3 -9
- package/dist/types/components/ic-data-table/story-data.d.ts +15 -4
- package/dist/types/components/ic-date-input/ic-date-input.d.ts +46 -29
- package/dist/types/components/ic-date-input/ic-date-input.stories.d.ts +6 -0
- package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +18 -12
- package/dist/types/components/ic-date-picker/ic-date-picker.stories.d.ts +8 -0
- package/dist/types/components/ic-date-picker/ic-day-button.d.ts +2 -2
- package/dist/types/components/ic-date-picker/ic-month-picker.d.ts +3 -3
- package/dist/types/components/ic-date-picker/ic-year-picker.d.ts +3 -3
- package/dist/types/components/ic-date-picker/story-data.d.ts +1 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +2 -2
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +8 -2
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +21 -4
- package/dist/types/components/ic-tree-view/ic-tree-view.stories.d.ts +91 -13
- package/dist/types/components/ic-tree-view/ic-tree-view.types.d.ts +12 -0
- package/dist/types/components.d.ts +129 -73
- package/dist/types/utils/date-helpers.d.ts +4 -4
- package/dist/types/utils/helpers.d.ts +8 -17
- package/hydrate/index.js +1223 -955
- package/hydrate/index.mjs +1223 -955
- package/package.json +3 -3
- package/dist/cjs/date-helpers-c9551119.js.map +0 -1
- package/dist/cjs/helpers-0e4c4fdd.js.map +0 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +0 -141
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +0 -1
- package/dist/cjs/index-8a24b20c.js.map +0 -1
- package/dist/core/p-00135a74.js.map +0 -1
- package/dist/core/p-0efeab8a.entry.js +0 -2
- package/dist/core/p-0efeab8a.entry.js.map +0 -1
- package/dist/core/p-0fd762bf.entry.js.map +0 -1
- package/dist/core/p-144b1dee.entry.js +0 -2
- package/dist/core/p-1cf61bf2.entry.js +0 -2
- package/dist/core/p-1cf61bf2.entry.js.map +0 -1
- package/dist/core/p-33dd24eb.js +0 -2
- package/dist/core/p-33dd24eb.js.map +0 -1
- package/dist/core/p-3dc4e128.entry.js.map +0 -1
- package/dist/core/p-44ffa951.entry.js +0 -2
- package/dist/core/p-44ffa951.entry.js.map +0 -1
- package/dist/core/p-47962514.entry.js +0 -2
- package/dist/core/p-47962514.entry.js.map +0 -1
- package/dist/core/p-4e5934f3.entry.js +0 -2
- package/dist/core/p-5329e478.entry.js +0 -2
- package/dist/core/p-5329e478.entry.js.map +0 -1
- package/dist/core/p-5b2a7c1a.entry.js +0 -2
- package/dist/core/p-5b2a7c1a.entry.js.map +0 -1
- package/dist/core/p-67f3bf1a.entry.js +0 -2
- package/dist/core/p-6eaf585a.entry.js +0 -2
- package/dist/core/p-6eaf585a.entry.js.map +0 -1
- package/dist/core/p-8c4f212a.entry.js +0 -2
- package/dist/core/p-8c4f212a.entry.js.map +0 -1
- package/dist/core/p-8d73a3cc.entry.js.map +0 -1
- package/dist/core/p-9265efef.entry.js +0 -2
- package/dist/core/p-9265efef.entry.js.map +0 -1
- package/dist/core/p-95f2c59a.entry.js +0 -2
- package/dist/core/p-95f2c59a.entry.js.map +0 -1
- package/dist/core/p-a30d165d.entry.js.map +0 -1
- package/dist/core/p-a35cdfc3.entry.js +0 -2
- package/dist/core/p-a35cdfc3.entry.js.map +0 -1
- package/dist/core/p-a4582939.entry.js.map +0 -1
- package/dist/core/p-a7f95a61.entry.js +0 -2
- package/dist/core/p-a7f95a61.entry.js.map +0 -1
- package/dist/core/p-a81c9048.entry.js +0 -2
- package/dist/core/p-a81c9048.entry.js.map +0 -1
- package/dist/core/p-ac74cdac.entry.js +0 -2
- package/dist/core/p-ac74cdac.entry.js.map +0 -1
- package/dist/core/p-ad3e543e.entry.js +0 -2
- package/dist/core/p-ad3e543e.entry.js.map +0 -1
- package/dist/core/p-ae2bae87.entry.js +0 -2
- package/dist/core/p-ae2bae87.entry.js.map +0 -1
- package/dist/core/p-afde50b8.js +0 -2
- package/dist/core/p-afde50b8.js.map +0 -1
- package/dist/core/p-b84213d1.entry.js +0 -2
- package/dist/core/p-b84213d1.entry.js.map +0 -1
- package/dist/core/p-c2aef5cc.entry.js +0 -2
- package/dist/core/p-c2aef5cc.entry.js.map +0 -1
- package/dist/core/p-c6f1e205.entry.js.map +0 -1
- package/dist/core/p-cd59dc16.entry.js +0 -2
- package/dist/core/p-cd59dc16.entry.js.map +0 -1
- package/dist/core/p-e86c1c95.entry.js +0 -2
- package/dist/core/p-e86c1c95.entry.js.map +0 -1
- package/dist/core/p-f6013934.entry.js.map +0 -1
- package/dist/core/p-fba58c42.entry.js +0 -2
- package/dist/core/p-fba58c42.entry.js.map +0 -1
- package/dist/core/p-fd42f129.entry.js.map +0 -1
- package/dist/core/p-fde3bbb2.entry.js +0 -2
- package/dist/core/p-fde3bbb2.entry.js.map +0 -1
- package/dist/esm/date-helpers-0e5e32a7.js.map +0 -1
- package/dist/esm/helpers-4e38ba2b.js.map +0 -1
- package/dist/esm/ic-checkbox.entry.js.map +0 -1
- package/dist/esm/ic-empty-state_2.entry.js.map +0 -1
- package/dist/esm/index-163fe708.js.map +0 -1
- /package/dist/core/{p-32720276.entry.js.map → p-1bbae4b3.entry.js.map} +0 -0
- /package/dist/core/{p-b8aa37f9.entry.js.map → p-20bd48cf.entry.js.map} +0 -0
- /package/dist/core/{p-be5ad372.entry.js.map → p-21193099.entry.js.map} +0 -0
- /package/dist/core/{p-3e9564b5.entry.js.map → p-39269b62.entry.js.map} +0 -0
- /package/dist/core/{p-da798f58.entry.js.map → p-44ac8f8a.entry.js.map} +0 -0
- /package/dist/core/{p-afc4ce53.entry.js.map → p-4d39cab8.entry.js.map} +0 -0
- /package/dist/core/{p-fd006a9b.entry.js.map → p-4e187a11.entry.js.map} +0 -0
- /package/dist/core/{p-d154b26c.entry.js.map → p-50324682.entry.js.map} +0 -0
- /package/dist/core/{p-22e0ed96.entry.js.map → p-5796b6cd.entry.js.map} +0 -0
- /package/dist/core/{p-96551ddf.entry.js.map → p-57c80527.entry.js.map} +0 -0
- /package/dist/core/{p-b6db0cc1.entry.js.map → p-60d15d35.entry.js.map} +0 -0
- /package/dist/core/{p-272352cb.entry.js.map → p-6aa1e928.entry.js.map} +0 -0
- /package/dist/core/{p-1334a78f.entry.js.map → p-73e41eac.entry.js.map} +0 -0
- /package/dist/core/{p-08fd225f.entry.js.map → p-857c46c0.entry.js.map} +0 -0
- /package/dist/core/{p-0e3cb8d0.entry.js.map → p-8856dff4.entry.js.map} +0 -0
- /package/dist/core/{p-0c3bd9e6.entry.js.map → p-94427b50.entry.js.map} +0 -0
- /package/dist/core/{p-e13b43b1.entry.js.map → p-9cf7494c.entry.js.map} +0 -0
- /package/dist/core/{p-0848efa2.entry.js.map → p-a2671eb0.entry.js.map} +0 -0
- /package/dist/core/{p-f541034c.entry.js.map → p-d0768256.entry.js.map} +0 -0
- /package/dist/core/{p-0f6b9686.js.map → p-e246d84b.js.map} +0 -0
- /package/dist/core/{p-3d1ba098.entry.js.map → p-e6779171.entry.js.map} +0 -0
- /package/dist/core/{p-4da17eda.entry.js.map → p-f42ca69f.entry.js.map} +0 -0
@@ -13,12 +13,8 @@ const isMonthFirstFormat = (dateString) => {
|
|
13
13
|
const monthFirstFormat = /^(0[1-9]|1[0-2])(\/|-)(0[1-9]|[12][0-9]|3[01])(\/|-)\d{4}$/;
|
14
14
|
return monthFirstFormat.test(dateString);
|
15
15
|
};
|
16
|
-
const isDayFirstFormat = (dateString) => {
|
17
|
-
const dayFirstFormat = /^(0[1-9]|[12][0-9]|3[01])(\/|-)(0[1-9]|1[0-2])(\/|-)\d{4}$/;
|
18
|
-
return dayFirstFormat.test(dateString);
|
19
|
-
};
|
20
16
|
const createDate = (date, dateFormat) => {
|
21
|
-
let newDate;
|
17
|
+
let newDate = new Date();
|
22
18
|
if (isDateOrEpoch(date)) {
|
23
19
|
newDate = typeof date === "string" ? new Date(date) : date;
|
24
20
|
}
|
@@ -31,57 +27,30 @@ const createDate = (date, dateFormat) => {
|
|
31
27
|
}
|
32
28
|
return newDate;
|
33
29
|
};
|
34
|
-
const isDateOrEpoch = (date) =>
|
35
|
-
return date instanceof Date || !isNaN(+new Date(+date));
|
36
|
-
};
|
30
|
+
const isDateOrEpoch = (date) => date instanceof Date || !isNaN(+new Date(+date));
|
37
31
|
const extractDateFromZuluDateTime = (zuluDateTime) => zuluDateTime.slice(0, zuluDateTime.indexOf("T"));
|
38
32
|
const splitStringDate = (date, dateFormat) => {
|
39
33
|
// returns an array where item 1 is year, item 2 is month, item 3 is day
|
40
|
-
if (date.includes("T") && date.includes("Z"))
|
41
|
-
|
42
|
-
return nextDate.split("-");
|
43
|
-
}
|
34
|
+
if (date.includes("T") && date.includes("Z"))
|
35
|
+
return extractDateFromZuluDateTime(date).split("-");
|
44
36
|
let newDate = [];
|
45
|
-
const
|
46
|
-
if (
|
47
|
-
const dateParts =
|
48
|
-
// pad any values to 2 characters
|
49
|
-
dateParts.forEach((d, i) => {
|
50
|
-
if (d.length === 1) {
|
51
|
-
dateParts[i] = convertToDoubleDigits(d);
|
52
|
-
}
|
53
|
-
});
|
37
|
+
const splitDateWithSlashes = date.replace(/-/g, "/").split("/");
|
38
|
+
if (splitDateWithSlashes.length > 1) {
|
39
|
+
const dateParts = splitDateWithSlashes.map((part) => part.length === 1 ? convertToDoubleDigits(part) : part); // pad any values to 2 characters
|
54
40
|
if (dateParts[0].length === 4) {
|
55
41
|
newDate = [dateParts[0], dateParts[1], dateParts[2]];
|
56
42
|
}
|
57
43
|
else {
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
if (validDayFirst && validMonthFirst) {
|
62
|
-
if (dateFormat.charAt(0) === "M") {
|
63
|
-
newDate = [dateParts[2], dateParts[0], dateParts[1]];
|
64
|
-
}
|
65
|
-
else {
|
66
|
-
newDate = [dateParts[2], dateParts[1], dateParts[0]];
|
67
|
-
}
|
68
|
-
}
|
69
|
-
else if (validMonthFirst) {
|
44
|
+
newDate = [dateParts[2], dateParts[1], dateParts[0]];
|
45
|
+
if (isMonthFirstFormat(dateParts.join("/")) &&
|
46
|
+
dateFormat.charAt(0) === "M") {
|
70
47
|
newDate = [dateParts[2], dateParts[0], dateParts[1]];
|
71
48
|
}
|
72
|
-
else {
|
73
|
-
newDate = [dateParts[2], dateParts[1], dateParts[0]];
|
74
|
-
}
|
75
49
|
}
|
76
50
|
}
|
77
51
|
return newDate;
|
78
52
|
};
|
79
|
-
const convertToDoubleDigits = (value) => {
|
80
|
-
if (+value < 10) {
|
81
|
-
return `0${value}`;
|
82
|
-
}
|
83
|
-
return value.toString();
|
84
|
-
};
|
53
|
+
const convertToDoubleDigits = (value) => +value < 10 ? `0${value}` : value.toString();
|
85
54
|
const getWeekStart = (date, startDay) => {
|
86
55
|
const tmpDate = new Date(date);
|
87
56
|
const day = tmpDate.getDay();
|
@@ -105,14 +74,11 @@ const getMonthEnd = (date) => {
|
|
105
74
|
/**
|
106
75
|
* Compare if two dates are equal exactly equal
|
107
76
|
*/
|
108
|
-
const dateMatches = (a, b) =>
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
a.getMonth() === b.getMonth() &&
|
114
|
-
a.getDate() === b.getDate());
|
115
|
-
};
|
77
|
+
const dateMatches = (a, b) => a !== null &&
|
78
|
+
b !== null &&
|
79
|
+
a.getFullYear() === b.getFullYear() &&
|
80
|
+
a.getMonth() === b.getMonth() &&
|
81
|
+
a.getDate() === b.getDate();
|
116
82
|
const clampDate = (date, min, max) => {
|
117
83
|
const time = date.getTime();
|
118
84
|
if (min !== null && time < min.getTime()) {
|
@@ -126,21 +92,9 @@ const clampDate = (date, min, max) => {
|
|
126
92
|
/**
|
127
93
|
* Compare if date is within specified range
|
128
94
|
*/
|
129
|
-
const dateInRange = (date, min, max) =>
|
130
|
-
|
131
|
-
|
132
|
-
const yearInRange = (year, min, max) => {
|
133
|
-
let allowed = true;
|
134
|
-
if (year !== null) {
|
135
|
-
if (min !== null && year < min.getFullYear()) {
|
136
|
-
allowed = false;
|
137
|
-
}
|
138
|
-
if (allowed && max !== null && year > max.getFullYear()) {
|
139
|
-
allowed = false;
|
140
|
-
}
|
141
|
-
}
|
142
|
-
return allowed;
|
143
|
-
};
|
95
|
+
const dateInRange = (date, min, max) => clampDate(date, min, max) === date;
|
96
|
+
const yearInRange = (year, min, max) => !year ||
|
97
|
+
(!(min && year < min.getFullYear()) && !(max && year > max.getFullYear()));
|
144
98
|
|
145
99
|
const Clear = `<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
146
100
|
<path d="M15.8327 5.34199L14.6577 4.16699L9.99935 8.82533L5.34102 4.16699L4.16602 5.34199L8.82435 10.0003L4.16602 14.6587L5.34102 15.8337L9.99935 11.1753L14.6577 15.8337L15.8327 14.6587L11.1743 10.0003L15.8327 5.34199Z" fill="currentColor"/>
|
@@ -164,6 +118,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
164
118
|
this.icBlur = createEvent(this, "icBlur", 7);
|
165
119
|
this.icChange = createEvent(this, "icChange", 7);
|
166
120
|
this.icFocus = createEvent(this, "icFocus", 7);
|
121
|
+
this.DEFAULT_DATE_FORMAT = "DD/MM/YYYY";
|
167
122
|
this.ARIA_INVALID = "aria-invalid";
|
168
123
|
this.ARIA_LABEL = "aria-label";
|
169
124
|
this.ARIA_LABELLED_BY = "aria-labelledby";
|
@@ -183,20 +138,24 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
183
138
|
this.KEYBOARD_EVENT_OBJECT_STRING = "[object KeyboardEvent]";
|
184
139
|
this.MAX_DAY = 31;
|
185
140
|
this.MAX_MONTH = 12;
|
186
|
-
this.previousEmittedDate = undefined;
|
187
141
|
this.previousSelectedDate = null;
|
188
142
|
this.selectedDate = null;
|
189
|
-
this.
|
190
|
-
this.
|
191
|
-
this.year = "";
|
143
|
+
this.externalSetDate = false;
|
144
|
+
this.clearInput = false;
|
192
145
|
this.calendarFocused = false;
|
193
146
|
this.clearButtonFocused = false;
|
194
147
|
this.removeLabelledBy = false;
|
148
|
+
this.day = "";
|
149
|
+
this.month = "";
|
150
|
+
this.year = "";
|
195
151
|
/**
|
196
152
|
* The format in which the date will be displayed.
|
197
153
|
*/
|
198
|
-
|
199
|
-
|
154
|
+
this.dateFormat = this.DEFAULT_DATE_FORMAT;
|
155
|
+
/**
|
156
|
+
* If `true`, every individual input field completed will emit an icChange event.
|
157
|
+
*/
|
158
|
+
this.emitDatePartChange = false;
|
200
159
|
/**
|
201
160
|
* If `true`, the disabled state will be set.
|
202
161
|
*/
|
@@ -288,9 +247,11 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
288
247
|
*/
|
289
248
|
this.validationText = "";
|
290
249
|
this.setInputPasteValue = (input, pastedValue) => {
|
291
|
-
|
292
|
-
|
293
|
-
|
250
|
+
if (input) {
|
251
|
+
const inputEl = input;
|
252
|
+
inputEl.value = pastedValue;
|
253
|
+
inputEl.classList.add(this.FIT_TO_VALUE);
|
254
|
+
}
|
294
255
|
};
|
295
256
|
this.checkSingleCopiedValueIsValid = (input, pastedValue) => {
|
296
257
|
let isValid = false;
|
@@ -305,9 +266,6 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
305
266
|
case this.yearInputEl:
|
306
267
|
isValid = true;
|
307
268
|
break;
|
308
|
-
default:
|
309
|
-
isValid = false;
|
310
|
-
break;
|
311
269
|
}
|
312
270
|
return isValid;
|
313
271
|
};
|
@@ -449,8 +407,10 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
449
407
|
};
|
450
408
|
this.handleBlur = (event) => {
|
451
409
|
const input = event.target;
|
452
|
-
|
453
|
-
|
410
|
+
if (input) {
|
411
|
+
this.setPasteInvalidText();
|
412
|
+
this.autocompleteInput(input);
|
413
|
+
}
|
454
414
|
};
|
455
415
|
this.handleLeftRightArrowKeyPress = (input, key) => {
|
456
416
|
if (key === "arrowright") {
|
@@ -462,13 +422,15 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
462
422
|
this.setPasteInvalidText();
|
463
423
|
};
|
464
424
|
this.notifyScreenReaderSelectedDate = () => {
|
465
|
-
|
466
|
-
|
467
|
-
|
425
|
+
if (this.selectedDate && this.selectedDateInfoEl) {
|
426
|
+
const dayNames = stringEnumToArray(IcDayNames);
|
427
|
+
const months = stringEnumToArray(IcDateInputMonths);
|
428
|
+
this.selectedDateInfoEl.textContent = `Selected date: ${dayNames[this.selectedDate.getDay()]}, ${this.selectedDate.getDate()} ${months[this.selectedDate.getMonth()]} ${this.selectedDate.getFullYear()}`;
|
429
|
+
}
|
468
430
|
};
|
469
431
|
this.handleUpDownArrowKeyPress = (input, event) => {
|
470
432
|
const minValue = input === this.yearInputEl ? 0 : 1;
|
471
|
-
let maxValue;
|
433
|
+
let maxValue = 9999;
|
472
434
|
switch (input) {
|
473
435
|
case this.dayInputEl:
|
474
436
|
maxValue = this.MAX_DAY;
|
@@ -511,22 +473,18 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
511
473
|
else {
|
512
474
|
if (event.key === "ArrowDown") {
|
513
475
|
event.preventDefault();
|
514
|
-
|
515
|
-
input
|
516
|
-
|
517
|
-
|
518
|
-
input.value = maxValue.toString();
|
519
|
-
}
|
476
|
+
input.value =
|
477
|
+
input === this.yearInputEl
|
478
|
+
? new Date().getFullYear().toString()
|
479
|
+
: maxValue.toString();
|
520
480
|
this.notifyScreenReader(input, event);
|
521
481
|
}
|
522
482
|
else if (event.key === "ArrowUp") {
|
523
483
|
event.preventDefault();
|
524
|
-
|
525
|
-
input
|
526
|
-
|
527
|
-
|
528
|
-
input.value = `0${minValue}`;
|
529
|
-
}
|
484
|
+
input.value =
|
485
|
+
input === this.yearInputEl
|
486
|
+
? new Date().getFullYear().toString()
|
487
|
+
: `0${minValue}`;
|
530
488
|
this.notifyScreenReader(input, event);
|
531
489
|
}
|
532
490
|
}
|
@@ -546,7 +504,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
546
504
|
this.setValueAndEmitChange(this.selectedDate);
|
547
505
|
this.notifyScreenReaderSelectedDate();
|
548
506
|
}
|
549
|
-
else if (!(this.selectedDate === null && this.previousSelectedDate === null)
|
507
|
+
else if (!(this.selectedDate === null && this.previousSelectedDate === null) &&
|
508
|
+
this.selectedDateInfoEl) {
|
550
509
|
this.setValueAndEmitChange(null);
|
551
510
|
this.selectedDateInfoEl.textContent = "";
|
552
511
|
}
|
@@ -576,16 +535,20 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
576
535
|
// Set value of each input to value of pasted date part
|
577
536
|
// Allows formats separated by '-' or '/'
|
578
537
|
this.handlePaste = (event) => {
|
538
|
+
var _a;
|
579
539
|
event.preventDefault();
|
580
|
-
const pastedValue = event.clipboardData.getData("Text");
|
540
|
+
const pastedValue = ((_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData("Text")) || "";
|
581
541
|
const isValidDate = this.isPastedStringDateValid(pastedValue);
|
582
542
|
this.setPastedValueAndValidation(isValidDate, pastedValue, event);
|
583
543
|
};
|
584
544
|
this.setDate = (date) => {
|
585
545
|
if (date === null || date === "" || date === undefined) {
|
586
|
-
this.day
|
587
|
-
|
588
|
-
this.
|
546
|
+
if (this.day)
|
547
|
+
this.day = "";
|
548
|
+
if (this.month)
|
549
|
+
this.month = "";
|
550
|
+
if (this.year)
|
551
|
+
this.year = "";
|
589
552
|
this.inputsInOrder.forEach((input) => {
|
590
553
|
input.classList.remove(this.FIT_TO_VALUE);
|
591
554
|
this.setPreventInput(input, false);
|
@@ -608,9 +571,11 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
608
571
|
}
|
609
572
|
else if (typeof date === "string") {
|
610
573
|
const defaultDateArray = splitStringDate(date, this.dateFormat);
|
574
|
+
this.selectedDate = new Date(Number(defaultDateArray[0]), Number(defaultDateArray[1]) - 1, Number(defaultDateArray[2]));
|
611
575
|
this.year = defaultDateArray[0];
|
612
576
|
this.month = defaultDateArray[1];
|
613
577
|
this.day = defaultDateArray[2];
|
578
|
+
this.setValueAndEmitChange(this.selectedDate);
|
614
579
|
}
|
615
580
|
}
|
616
581
|
this.setValidationMessage();
|
@@ -621,7 +586,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
621
586
|
const month = convertToDoubleDigits(date.getMonth() + 1);
|
622
587
|
const year = date.getFullYear();
|
623
588
|
switch (this.dateFormat) {
|
624
|
-
case
|
589
|
+
case this.DEFAULT_DATE_FORMAT:
|
625
590
|
formattedDate = `${day}/${month}/${year}`;
|
626
591
|
break;
|
627
592
|
case "MM/DD/YYYY":
|
@@ -634,9 +599,11 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
634
599
|
return formattedDate;
|
635
600
|
};
|
636
601
|
this.updateInputValues = (day, month, year) => {
|
637
|
-
this.dayInputEl.
|
638
|
-
|
639
|
-
|
602
|
+
if (this.dayInputEl && this.monthInputEl && this.yearInputEl) {
|
603
|
+
this.dayInputEl.value = day;
|
604
|
+
this.monthInputEl.value = month;
|
605
|
+
this.yearInputEl.value = year;
|
606
|
+
}
|
640
607
|
};
|
641
608
|
// Set value in state based on input
|
642
609
|
this.setInputValue = (input, clear = false) => {
|
@@ -664,7 +631,9 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
664
631
|
// (used https://www.hectane.com/blog/javascript-date-validation-with-leap-year)
|
665
632
|
this.selectedDate = this.convertToDate(this.year, this.month, this.day);
|
666
633
|
this.isValidDate =
|
667
|
-
|
634
|
+
!!this.selectedDate &&
|
635
|
+
+this.selectedDate !== 0 &&
|
636
|
+
this.selectedDate.getDate() == +this.day;
|
668
637
|
this.isDisabledDate = this.isSelectedDateDisabled();
|
669
638
|
if (!this.isValidDate || this.isDisabledDate) {
|
670
639
|
this.inputsInOrder.forEach((input) => input.setAttribute(this.ARIA_INVALID, "true"));
|
@@ -714,13 +683,13 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
714
683
|
};
|
715
684
|
// Set refs to the input elements in the order they are displayed (based on the dateFormat)
|
716
685
|
this.setInputsInOrder = () => {
|
717
|
-
|
718
|
-
|
686
|
+
var _a;
|
687
|
+
(_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll("input").forEach((input) => this.inputsInOrder.push(input));
|
719
688
|
};
|
720
689
|
// Includes text usually added using aria-describedby
|
721
690
|
// (which doesn't work on input component container)
|
722
691
|
this.setAriaLabelledBy = () => {
|
723
|
-
var _a, _b;
|
692
|
+
var _a, _b, _c;
|
724
693
|
if (this.disabled &&
|
725
694
|
!isEmptyString((_a = this.inputCompContainerEl) === null || _a === void 0 ? void 0 : _a.getAttribute(this.ARIA_LABELLED_BY))) {
|
726
695
|
this.removeAriaLabelledBy();
|
@@ -729,14 +698,14 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
729
698
|
if (this.disabled) {
|
730
699
|
return;
|
731
700
|
}
|
732
|
-
const labelEl = this.el.shadowRoot.querySelector("label");
|
701
|
+
const labelEl = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("label");
|
733
702
|
const labelId = `${this.inputId}-label`;
|
734
703
|
if (labelEl !== null && labelEl !== undefined) {
|
735
704
|
labelEl.id = labelId;
|
736
705
|
}
|
737
706
|
const hasValidation = !isEmptyString(this.validationStatus) ||
|
738
707
|
!isEmptyString(this.invalidDateText);
|
739
|
-
const labelledBy = `${(
|
708
|
+
const labelledBy = `${(_c = labelEl === null || labelEl === void 0 ? void 0 : labelEl.id) !== null && _c !== void 0 ? _c : ""} ${this.screenReaderInfoId} ${getInputDescribedByText(this.inputId, this.helperText !== "" && this.helperText !== this.defaultHelperText, hasValidation)} ${this.selectedDate ? this.selectedDateInfoId : ""} ${this.assistiveHintId}`;
|
740
709
|
this.inputCompContainerEl.setAttribute(this.ARIA_LABELLED_BY, labelledBy);
|
741
710
|
};
|
742
711
|
// Sets boolean for each input, used to limit the number of characters within each field (2 for day / month, 4 for year)
|
@@ -785,7 +754,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
785
754
|
this.getDescOfInputsOrder = () => {
|
786
755
|
let description;
|
787
756
|
switch (this.dateFormat) {
|
788
|
-
case
|
757
|
+
case this.DEFAULT_DATE_FORMAT:
|
789
758
|
description = "day, month, and year";
|
790
759
|
break;
|
791
760
|
case "MM/DD/YYYY":
|
@@ -817,7 +786,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
817
786
|
const input = event.target;
|
818
787
|
let selectedString;
|
819
788
|
if (input) {
|
820
|
-
selectedString = input.value.substring(input.selectionStart, input.selectionEnd);
|
789
|
+
selectedString = input.value.substring(input.selectionStart || 0, input.selectionEnd || undefined);
|
821
790
|
}
|
822
791
|
if (key === "e" ||
|
823
792
|
key === "." ||
|
@@ -829,81 +798,60 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
829
798
|
event.preventDefault();
|
830
799
|
}
|
831
800
|
};
|
832
|
-
|
833
|
-
|
801
|
+
/**
|
802
|
+
* Get whether date has been disabled using disableFuture or disablePast prop, but always allow current day
|
803
|
+
* Consider using dateClamp and inDateRange
|
804
|
+
* @returns `boolean`
|
805
|
+
*/
|
834
806
|
this.isSelectedDateDisabled = () => {
|
807
|
+
if (!this.selectedDate)
|
808
|
+
return false;
|
835
809
|
const currentDate = new Date();
|
836
|
-
this.isAfterMax = false;
|
837
|
-
this.isBeforeMin = false;
|
838
|
-
let disabled = false;
|
839
810
|
const isNotToday = this.selectedDate.toDateString() !== currentDate.toDateString();
|
840
|
-
|
841
|
-
this.
|
842
|
-
|
843
|
-
|
844
|
-
|
845
|
-
this.
|
846
|
-
|
847
|
-
|
848
|
-
|
849
|
-
|
850
|
-
}
|
851
|
-
if (((this.disablePast && this.selectedDate < currentDate) ||
|
852
|
-
(this.disableFuture && this.selectedDate > currentDate)) &&
|
853
|
-
isNotToday) {
|
854
|
-
disabled = true;
|
855
|
-
}
|
856
|
-
return disabled;
|
811
|
+
this.isAfterMax =
|
812
|
+
this.maxDate && this.selectedDate > this.maxDate && isNotToday;
|
813
|
+
this.isBeforeMin =
|
814
|
+
this.minDate && this.selectedDate < this.minDate && isNotToday;
|
815
|
+
return (this.isAfterMax ||
|
816
|
+
this.isBeforeMin ||
|
817
|
+
this.disableDays.includes(this.selectedDate.getDay()) ||
|
818
|
+
(((!!this.disablePast && this.selectedDate < currentDate) ||
|
819
|
+
(!!this.disableFuture && this.selectedDate > currentDate)) &&
|
820
|
+
isNotToday));
|
857
821
|
};
|
858
822
|
this.moveToNextInput = (currentInput) => {
|
859
|
-
|
860
|
-
const nextInput = this.inputsInOrder[currentInputPos + 1];
|
823
|
+
var _a;
|
861
824
|
this.preventAutoFormatting = false;
|
862
|
-
|
863
|
-
nextInput.focus();
|
864
|
-
}
|
825
|
+
(_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) + 1]) === null || _a === void 0 ? void 0 : _a.focus();
|
865
826
|
};
|
866
827
|
this.moveToPreviousInput = (currentInput) => {
|
867
|
-
|
828
|
+
var _a;
|
868
829
|
this.preventAutoFormatting = false;
|
869
|
-
|
870
|
-
this.inputsInOrder[currentInputPos - 1].focus();
|
871
|
-
}
|
830
|
+
(_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) - 1]) === null || _a === void 0 ? void 0 : _a.focus();
|
872
831
|
};
|
873
832
|
this.autocompleteInput = (input) => {
|
874
|
-
|
875
|
-
|
833
|
+
const inputValue = input.value;
|
834
|
+
if (this.yearInputEl && input === this.yearInputEl) {
|
835
|
+
// Autocomplete year as current millennium when fewer than 4 characters entered
|
836
|
+
const yearNumbers = ["2", "0", "0"];
|
837
|
+
let autocompletedInput = "";
|
838
|
+
if (inputValue) {
|
839
|
+
yearNumbers.forEach((number, index) => {
|
840
|
+
if (inputValue.length + index <= 3) {
|
841
|
+
autocompletedInput += number;
|
842
|
+
}
|
843
|
+
});
|
844
|
+
this.yearInputEl.value = `${autocompletedInput}${inputValue}`;
|
845
|
+
}
|
876
846
|
}
|
877
|
-
else {
|
878
|
-
const inputValue = input.value;
|
847
|
+
else if (inputValue.length === 1) {
|
879
848
|
// Autocomplete input as 2 characters (leading zero) when only 1 character entered (for day and month)
|
880
|
-
|
881
|
-
if (+inputValue === 0) {
|
882
|
-
input.value = "01";
|
883
|
-
}
|
884
|
-
else {
|
885
|
-
input.value = `0${inputValue}`;
|
886
|
-
}
|
887
|
-
}
|
849
|
+
input.value = +inputValue === 0 ? "01" : `0${inputValue}`;
|
888
850
|
}
|
889
851
|
if (input.value) {
|
890
852
|
this.setInputValue(input);
|
891
853
|
}
|
892
854
|
};
|
893
|
-
// Autocomplete year as current millennium when fewer than 4 characters entered
|
894
|
-
this.autocompleteYear = () => {
|
895
|
-
const inputValue = this.yearInputEl.value;
|
896
|
-
const yearNumbers = ["2", "0", "0"];
|
897
|
-
let autocompletedInput = "";
|
898
|
-
if (inputValue) {
|
899
|
-
yearNumbers.forEach((number, index) => {
|
900
|
-
if (inputValue.length + index <= 3) {
|
901
|
-
autocompletedInput += number;
|
902
|
-
}
|
903
|
-
});
|
904
|
-
this.yearInputEl.value = `${autocompletedInput}${inputValue}`;
|
905
|
-
}
|
906
|
-
};
|
907
855
|
this.convertToDate = (year, month, day) => {
|
908
856
|
if (!isEmptyString(year) && !isEmptyString(month) && !isEmptyString(day)) {
|
909
857
|
return new Date(+year, +month - 1, +day);
|
@@ -917,8 +865,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
917
865
|
this.icBlur.emit({ value: this.selectedDate });
|
918
866
|
};
|
919
867
|
this.handleHostFocus = () => {
|
920
|
-
var _a;
|
921
|
-
if ((_a = this.el.shadowRoot
|
868
|
+
var _a, _b;
|
869
|
+
if ((_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement) === null || _b === void 0 ? void 0 : _b.id.match(/(day|month|year)-input$/)) {
|
922
870
|
this.removeLabelledBy = false;
|
923
871
|
}
|
924
872
|
else {
|
@@ -932,14 +880,13 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
932
880
|
this.setValidationMessage();
|
933
881
|
this.handleDateChange(false);
|
934
882
|
};
|
935
|
-
this.getAriaLabel = (input) =>
|
936
|
-
return input.getAttribute(this.ARIA_LABEL);
|
937
|
-
};
|
883
|
+
this.getAriaLabel = (input) => input.getAttribute(this.ARIA_LABEL);
|
938
884
|
this.notifyScreenReaderArrowKeys = (input) => {
|
939
|
-
|
940
|
-
|
885
|
+
var _a;
|
886
|
+
const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
|
941
887
|
const ariaLabel = this.getAriaLabel(input);
|
942
|
-
if (liveRegion && input.value) {
|
888
|
+
if (liveRegion && input.value && ariaLabel) {
|
889
|
+
let announcement = "";
|
943
890
|
if (input === this.monthInputEl &&
|
944
891
|
!!IcDateInputMonths[+input.value - 1]) {
|
945
892
|
announcement = `${input.value} - ${IcDateInputMonths[+input.value - 1]}, ${ariaLabel}`;
|
@@ -951,32 +898,23 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
951
898
|
}
|
952
899
|
};
|
953
900
|
this.notifyScreenReaderInput = (input, liveRegion) => {
|
954
|
-
let announcement = "";
|
955
901
|
const ariaLabel = this.getAriaLabel(input);
|
956
|
-
|
957
|
-
|
958
|
-
|
959
|
-
|
960
|
-
|
961
|
-
|
962
|
-
|
963
|
-
|
964
|
-
|
965
|
-
}
|
966
|
-
}
|
967
|
-
else {
|
968
|
-
announcement = "";
|
969
|
-
}
|
970
|
-
}
|
971
|
-
else {
|
972
|
-
if (input.value.length === 4) {
|
973
|
-
announcement = `${input.value}, ${ariaLabel}`;
|
902
|
+
const value = input.value;
|
903
|
+
if (ariaLabel && value) {
|
904
|
+
let announcement = "";
|
905
|
+
const monthValue = IcDateInputMonths[+value - 1];
|
906
|
+
if (input === this.monthInputEl &&
|
907
|
+
!!monthValue &&
|
908
|
+
this.isValidMonth &&
|
909
|
+
value.length === 2) {
|
910
|
+
announcement = `${value} - ${monthValue}`;
|
974
911
|
}
|
975
|
-
else
|
976
|
-
|
912
|
+
else if ((input === this.dayInputEl && this.isValidDay && value.length === 2) ||
|
913
|
+
(input === this.yearInputEl && value.length === 4)) {
|
914
|
+
announcement = value;
|
977
915
|
}
|
916
|
+
liveRegion.textContent = `${announcement}, ${ariaLabel}`;
|
978
917
|
}
|
979
|
-
liveRegion.textContent = announcement;
|
980
918
|
};
|
981
919
|
this.setFitToValueStyling = (input) => {
|
982
920
|
if (input.value) {
|
@@ -987,15 +925,16 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
987
925
|
}
|
988
926
|
};
|
989
927
|
this.setAriaInvalid = (validDay, validMonth, validDate, disabledDate) => {
|
928
|
+
var _a, _b;
|
990
929
|
if (this.inputsInOrder.length) {
|
991
930
|
this.inputsInOrder.forEach((input) => {
|
992
931
|
input.removeAttribute(this.ARIA_INVALID);
|
993
932
|
});
|
994
933
|
if (!validDay) {
|
995
|
-
this.dayInputEl.setAttribute(this.ARIA_INVALID, "true");
|
934
|
+
(_a = this.dayInputEl) === null || _a === void 0 ? void 0 : _a.setAttribute(this.ARIA_INVALID, "true");
|
996
935
|
}
|
997
936
|
if (!validMonth) {
|
998
|
-
this.monthInputEl.setAttribute(this.ARIA_INVALID, "true");
|
937
|
+
(_b = this.monthInputEl) === null || _b === void 0 ? void 0 : _b.setAttribute(this.ARIA_INVALID, "true");
|
999
938
|
}
|
1000
939
|
if (!validDate || disabledDate) {
|
1001
940
|
this.inputsInOrder.forEach((input) => {
|
@@ -1005,26 +944,28 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1005
944
|
}
|
1006
945
|
};
|
1007
946
|
this.handleClear = () => {
|
947
|
+
this.clearInput = true;
|
1008
948
|
this.inputsInOrder.forEach((input) => {
|
1009
949
|
input.classList.remove(this.FIT_TO_VALUE);
|
1010
950
|
this.setInputValue(input, true);
|
1011
951
|
this.setPreventInput(input, false);
|
1012
952
|
});
|
953
|
+
this.clearInput = false;
|
1013
954
|
this.isDateSetFromKeyboardEvent = false;
|
1014
955
|
this.setValidationMessage();
|
1015
956
|
this.handleDateChange(true);
|
1016
957
|
this.inputsInOrder[0].focus();
|
1017
958
|
};
|
1018
959
|
this.handleCalendarOpen = (ev) => {
|
1019
|
-
var _a, _b;
|
960
|
+
var _a, _b, _c, _d, _e, _f;
|
1020
961
|
ev.stopImmediatePropagation();
|
1021
|
-
(_a = this.calendarButtonEl) === null || _a === void 0 ? void 0 : _a.shadowRoot.querySelector("ic-tooltip").displayTooltip(false);
|
962
|
+
(_c = (_b = (_a = this.calendarButtonEl) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("ic-tooltip")) === null || _c === void 0 ? void 0 : _c.displayTooltip(false);
|
1022
963
|
this.calendarButtonClicked.emit({ value: this.selectedDate });
|
1023
|
-
(
|
964
|
+
(_f = (_e = (_d = this.calendarButtonEl) === null || _d === void 0 ? void 0 : _d.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector("ic-tooltip")) === null || _f === void 0 ? void 0 : _f.displayTooltip(false);
|
1024
965
|
this.isDateSetFromKeyboardEvent = false;
|
1025
966
|
};
|
1026
967
|
this.setValueAndEmitChange = (value) => {
|
1027
|
-
if (!dateMatches(new Date(this.value), value)) {
|
968
|
+
if (!dateMatches(this.value ? new Date(this.value) : null, value)) {
|
1028
969
|
this.emitIcChange(value);
|
1029
970
|
this.value = value;
|
1030
971
|
}
|
@@ -1049,13 +990,36 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1049
990
|
this.removeLabelledBy = true;
|
1050
991
|
};
|
1051
992
|
this.emitIcChange = (d) => {
|
1052
|
-
|
1053
|
-
|
1054
|
-
this.
|
1055
|
-
this.
|
993
|
+
this.selectedDate = d;
|
994
|
+
if (!dateMatches(this.selectedDate, d) ||
|
995
|
+
this.day !== null ||
|
996
|
+
this.month !== null ||
|
997
|
+
this.year !== null) {
|
998
|
+
let UTCDate = null;
|
999
|
+
if (d !== null) {
|
1000
|
+
UTCDate = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate()));
|
1001
|
+
}
|
1002
|
+
this.icChange.emit({
|
1003
|
+
value: d,
|
1004
|
+
dateObject: {
|
1005
|
+
day: this.day === "" ? null : this.day,
|
1006
|
+
month: this.month === "" ? null : this.month,
|
1007
|
+
year: this.year === "" ? null : this.year,
|
1008
|
+
},
|
1009
|
+
utcValue: UTCDate,
|
1010
|
+
});
|
1056
1011
|
}
|
1057
1012
|
};
|
1058
1013
|
}
|
1014
|
+
watchInputHandler() {
|
1015
|
+
if (this.emitDatePartChange &&
|
1016
|
+
!this.externalSetDate &&
|
1017
|
+
!this.clearInput &&
|
1018
|
+
!(this.day && this.month && this.year) &&
|
1019
|
+
this.selectedDate === null) {
|
1020
|
+
this.emitIcChange(this.selectedDate);
|
1021
|
+
}
|
1022
|
+
}
|
1059
1023
|
watchDisabledHandler() {
|
1060
1024
|
removeDisabledFalse(this.disabled, this.el);
|
1061
1025
|
}
|
@@ -1082,9 +1046,10 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1082
1046
|
}
|
1083
1047
|
}
|
1084
1048
|
watchRequiredHandler() {
|
1049
|
+
var _a, _b;
|
1085
1050
|
// Prevent asterisk being read out after the label by screen reader (by applying aria-hidden)
|
1086
1051
|
// Needed because label is included in 'aria-labelledby' instead of using 'aria-label'
|
1087
|
-
const labelEl = this.el.shadowRoot.querySelector("label");
|
1052
|
+
const labelEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("label");
|
1088
1053
|
if (this.required) {
|
1089
1054
|
const asteriskSpan = document.createElement("span");
|
1090
1055
|
asteriskSpan.setAttribute("id", "asterisk-span");
|
@@ -1093,7 +1058,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1093
1058
|
labelEl === null || labelEl === void 0 ? void 0 : labelEl.appendChild(asteriskSpan);
|
1094
1059
|
}
|
1095
1060
|
else {
|
1096
|
-
const asteriskSpan = this.el.shadowRoot.querySelector("#asterisk-span");
|
1061
|
+
const asteriskSpan = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("#asterisk-span");
|
1097
1062
|
if (asteriskSpan) {
|
1098
1063
|
asteriskSpan.remove();
|
1099
1064
|
}
|
@@ -1109,11 +1074,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1109
1074
|
this.watchMinHandler();
|
1110
1075
|
this.watchMaxHandler();
|
1111
1076
|
if (this.value) {
|
1077
|
+
this.externalSetDate = true;
|
1112
1078
|
this.setDate(this.value);
|
1113
|
-
this.previousEmittedDate = this.selectedDate;
|
1114
|
-
}
|
1115
|
-
else {
|
1116
|
-
this.previousEmittedDate = null;
|
1117
1079
|
}
|
1118
1080
|
this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;
|
1119
1081
|
this.assistiveHintId = `${this.inputId}-assistive-hint`;
|
@@ -1182,7 +1144,10 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1182
1144
|
* @internal Used to enable other components to invoke an IcChange event from the input.
|
1183
1145
|
*/
|
1184
1146
|
async triggerIcChange(d) {
|
1147
|
+
this.externalSetDate = true;
|
1148
|
+
this.setDate(d);
|
1185
1149
|
this.emitIcChange(d);
|
1150
|
+
this.externalSetDate = false;
|
1186
1151
|
}
|
1187
1152
|
removeAriaLabelledBy() {
|
1188
1153
|
this.inputCompContainerEl.removeAttribute(this.ARIA_LABELLED_BY);
|
@@ -1243,18 +1208,18 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1243
1208
|
}
|
1244
1209
|
pasteZuluDateTime(dateParts, index) {
|
1245
1210
|
// ['YYYY', 'MM', 'DD']
|
1246
|
-
if (index === 0) {
|
1211
|
+
if (index === 0 && this.yearInputEl) {
|
1247
1212
|
const dateValue = this.slicePastedDate(4, dateParts[index]);
|
1248
1213
|
this.yearInputEl.value = dateValue;
|
1249
1214
|
this.setInputValue(this.yearInputEl);
|
1250
1215
|
}
|
1251
|
-
else if (index === 1) {
|
1216
|
+
else if (index === 1 && this.monthInputEl) {
|
1252
1217
|
// The month value is the second item in the array
|
1253
1218
|
const dateValue = this.slicePastedDate(2, dateParts[index]);
|
1254
1219
|
this.monthInputEl.value = dateValue;
|
1255
1220
|
this.setInputValue(this.monthInputEl);
|
1256
1221
|
}
|
1257
|
-
else {
|
1222
|
+
else if (this.dayInputEl) {
|
1258
1223
|
const dateValue = this.slicePastedDate(2, dateParts[index]);
|
1259
1224
|
this.dayInputEl.value = dateValue;
|
1260
1225
|
this.setInputValue(this.dayInputEl);
|
@@ -1279,7 +1244,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1279
1244
|
}
|
1280
1245
|
}
|
1281
1246
|
notifyScreenReader(input, event) {
|
1282
|
-
|
1247
|
+
var _a;
|
1248
|
+
const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
|
1283
1249
|
if (liveRegion) {
|
1284
1250
|
if (this.isKeyboardOrEvent(event)) {
|
1285
1251
|
this.notifyScreenReaderArrowKeys(input);
|
@@ -1299,19 +1265,22 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1299
1265
|
: "";
|
1300
1266
|
const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;
|
1301
1267
|
renderHiddenInput(true, this.el, this.name, this.convertToDate(this.year, this.month, this.day), this.disabled);
|
1302
|
-
return (h(Host, { key: '
|
1268
|
+
return (h(Host, { key: '5e9f71b2a1c5dbc55f615ea389121c300ed68fd4', class: {
|
1303
1269
|
[`ic-theme-${theme}`]: theme !== "inherit",
|
1304
1270
|
[`ic-date-input-disabled`]: disabled,
|
1305
|
-
}, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, h("ic-input-container", { key: '
|
1271
|
+
}, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, h("ic-input-container", { key: '64fe93a68d17f2b84e296efb2d9602876628d972', disabled: disabled }, !(hideLabel && hideHelperText) && (h("ic-input-label", { key: '69bb1722d84504483a7691fe713c86639025765f', for: inputId, label: label, hideLabel: hideLabel, helperText: !hideHelperText ? helperText : "", disabled: disabled })), h("span", { key: '3ef289406284d077b47db67d8b5d45919fdaad0e', id: this.screenReaderInfoId, class: "sr-only", "aria-hidden": "true" }, this.getScreenReaderInfo(validationStatus), hideLabel && `${label}\n`, hideHelperText && `${helperText}\n`, `${this.defaultHelperText}.`), h("span", { key: '20222a2534cf00d15fe40610412babb302fc0e7a', id: this.assistiveHintId, class: "sr-only", "aria-hidden": "true" }, assistiveHint), h("span", { key: '5d4346a0fec1b1ee9d22057b7f2f1aa3b98f9693', id: "live-region", "aria-live": "assertive", class: "sr-only" }), h("ic-input-component-container", { key: '1a2adcdeaf2e5cb437f77dd76054dcd872937bfc', id: inputId, ref: (el) => (this.inputCompContainerEl = el), disabled: disabled, validationStatus: validationStatus, size: size, role: "group", class: { [`ic-theme-${theme}`]: theme !== "inherit" } }, h("div", { key: 'ad5c42cec33b39329bde1975b094f3f13e974191', class: "input-container" }, h("div", { key: '5bc9b871e605562b50306d5bb6bcc078892bafc5', class: "date-inputs" }, this.getInputsInOrder()[0], "/", this.getInputsInOrder()[1], "/", this.getInputsInOrder()[2]), h("div", { key: '6efb1d64b2eeab1c3da78d1e0b95f3df987fedcc', class: "action-buttons" }, showClearButton && (h("ic-button", { key: '39a73d58a6814d3fac7425050291e3f2f821cd72', id: "clear-button", "aria-label": "Clear input", class: {
|
1306
1272
|
["clear-button"]: true,
|
1307
1273
|
["hidden"]: isEmptyString(this.day) &&
|
1308
1274
|
isEmptyString(this.month) &&
|
1309
1275
|
isEmptyString(this.year),
|
1310
|
-
}, disabled: this.disabled, innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showCalendarButton && (h("div", { key: '
|
1276
|
+
}, disabled: this.disabled, innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showCalendarButton && (h("div", { key: '6d05e11943d6bd56f9dd6d20b8306a45062ac3f2', class: "show-calendar-button-wrapper" }, h("div", { key: 'c04cdf2665700c19fdc323bf92435d2b0d710016', class: { divider: true, [size]: true } }), h("ic-button", { key: '1a88f2b979c6c1569bb5bff797ea28e86526ff69', id: "calendar-button", ref: (el) => (this.calendarButtonEl = el), "aria-label": "Display calendar", "aria-haspopup": "dialog", class: "calendar-button", disabled: this.disabled, innerHTML: Calendar, onClick: this.handleCalendarOpen, variant: "icon-tertiary", size: size, onFocus: this.handleCalendarFocus, onBlur: this.handleCalendarBlur, theme: this.calendarFocused ? "light" : "dark" })))))), h("span", { key: '49dc06b59b4ecbee2899842a1dc63d5bbde70cc3', id: this.selectedDateInfoId, class: "sr-only", "aria-live": "polite" }, h("span", { key: 'bd2d89299077ceaf51b03fc5f22e6d0ff2f1550a', ref: (el) => (this.selectedDateInfoEl = el), role: "status" })), (hasCustomValidation || !isEmptyString(this.invalidDateText)) && (h("ic-input-validation", { key: 'd1502e42604239e61c7ec08840c258d2ea4d07e8', status: validationStatus, message: hasCustomValidation ? this.validationText : this.invalidDateText, for: inputId })))));
|
1311
1277
|
}
|
1312
1278
|
static get delegatesFocus() { return true; }
|
1313
1279
|
get el() { return this; }
|
1314
1280
|
static get watchers() { return {
|
1281
|
+
"day": ["watchInputHandler"],
|
1282
|
+
"month": ["watchInputHandler"],
|
1283
|
+
"year": ["watchInputHandler"],
|
1315
1284
|
"disabled": ["watchDisabledHandler"],
|
1316
1285
|
"disableFuture": ["watchDisableFutureHandler"],
|
1317
1286
|
"disablePast": ["watchDisablePastHandler"],
|
@@ -1322,6 +1291,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1322
1291
|
static get style() { return IcDateInputStyle0; }
|
1323
1292
|
}, [17, "ic-date-input", {
|
1324
1293
|
"dateFormat": [1, "date-format"],
|
1294
|
+
"emitDatePartChange": [4, "emit-date-part-change"],
|
1325
1295
|
"disabled": [4],
|
1326
1296
|
"disableDays": [1040],
|
1327
1297
|
"disableDaysMessage": [1, "disable-days-message"],
|
@@ -1346,20 +1316,23 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1346
1316
|
"value": [1025],
|
1347
1317
|
"validationStatus": [1025, "validation-status"],
|
1348
1318
|
"validationText": [1, "validation-text"],
|
1349
|
-
"day": [32],
|
1350
1319
|
"invalidDateText": [32],
|
1351
1320
|
"maxDate": [32],
|
1352
1321
|
"minDate": [32],
|
1353
|
-
"month": [32],
|
1354
|
-
"year": [32],
|
1355
1322
|
"calendarFocused": [32],
|
1356
1323
|
"clearButtonFocused": [32],
|
1357
1324
|
"removeLabelledBy": [32],
|
1325
|
+
"day": [32],
|
1326
|
+
"month": [32],
|
1327
|
+
"year": [32],
|
1358
1328
|
"getDate": [64],
|
1359
1329
|
"setCalendarFocus": [64],
|
1360
1330
|
"setDisableDays": [64],
|
1361
1331
|
"triggerIcChange": [64]
|
1362
1332
|
}, undefined, {
|
1333
|
+
"day": ["watchInputHandler"],
|
1334
|
+
"month": ["watchInputHandler"],
|
1335
|
+
"year": ["watchInputHandler"],
|
1363
1336
|
"disabled": ["watchDisabledHandler"],
|
1364
1337
|
"disableFuture": ["watchDisableFutureHandler"],
|
1365
1338
|
"disablePast": ["watchDisablePastHandler"],
|