@ukic/canary-web-components 3.0.0-canary.14 → 3.0.0-canary.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/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-199b92d5.js} +42 -2
- package/dist/cjs/helpers-199b92d5.js.map +1 -0
- package/dist/cjs/{helpers-32016c21.js → helpers-d01564f7.js} +15 -15
- 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 +3 -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 +130 -148
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +87 -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 +2 -2
- package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-group.cjs.entry.js +25 -22
- 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 +7 -7
- 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 +52 -29
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +6 -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 +7 -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 +3 -3
- 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 +16 -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 +35 -42
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +25 -21
- 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 +16 -0
- 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 +166 -183
- 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 +1 -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 +109 -92
- package/dist/collection/components/ic-date-picker/ic-date-picker.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.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 +45 -52
- 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 +29 -25
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
- 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 +40 -1
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/helpers2.js +13 -13
- 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 +1 -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 +146 -210
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +84 -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-footer.js +1 -1
- package/dist/components/ic-horizontal-scroll2.js +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-navigation-group.js +25 -21
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +1 -1
- package/dist/components/ic-navigation-menu2.js +6 -6
- 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 +4 -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 +2 -2
- 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 +6 -6
- 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 +3 -3
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +14 -14
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +3 -3
- 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 +42 -15
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +2 -2
- 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 +4 -4
- 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 +33 -40
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +23 -19
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/core/core.css +358 -250
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.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-a30d165d.entry.js → p-123bd8ce.entry.js} +2 -2
- package/dist/core/p-123bd8ce.entry.js.map +1 -0
- package/dist/core/{p-1334a78f.entry.js → p-12d4803e.entry.js} +2 -2
- package/dist/core/{p-8d73a3cc.entry.js → p-19c4cc6c.entry.js} +2 -2
- package/dist/core/p-19c4cc6c.entry.js.map +1 -0
- package/dist/core/p-19ecd2a6.entry.js +2 -0
- package/dist/core/p-19ecd2a6.entry.js.map +1 -0
- package/dist/core/{p-d154b26c.entry.js → p-1b31a720.entry.js} +2 -2
- package/dist/core/{p-a4582939.entry.js → p-1bfead5b.entry.js} +2 -2
- package/dist/core/p-1bfead5b.entry.js.map +1 -0
- package/dist/core/{p-08fd225f.entry.js → p-214a48c6.entry.js} +2 -2
- package/dist/core/p-236dc1a6.entry.js +2 -0
- package/dist/core/p-236dc1a6.entry.js.map +1 -0
- package/dist/core/{p-0848efa2.entry.js → p-2c7e9e71.entry.js} +2 -2
- package/dist/core/{p-ef25bb6d.entry.js → p-2d9c36a6.entry.js} +2 -2
- package/dist/core/{p-ef25bb6d.entry.js.map → p-2d9c36a6.entry.js.map} +1 -1
- package/dist/core/{p-b8aa37f9.entry.js → p-336be00c.entry.js} +2 -2
- 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-272352cb.entry.js → p-38f612b0.entry.js} +2 -2
- package/dist/core/p-3cf6ca89.entry.js +2 -0
- package/dist/core/p-3cf6ca89.entry.js.map +1 -0
- package/dist/core/{p-4da17eda.entry.js → p-3ee70c45.entry.js} +2 -2
- package/dist/core/{p-762a4d7c.entry.js → p-46f64dc5.entry.js} +2 -2
- package/dist/core/p-48465394.entry.js +2 -0
- package/dist/core/{p-4e5934f3.entry.js.map → p-48465394.entry.js.map} +1 -1
- 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-520dce89.entry.js +2 -0
- package/dist/core/p-520dce89.entry.js.map +1 -0
- package/dist/core/{p-22e0ed96.entry.js → p-5bd43e19.entry.js} +2 -2
- package/dist/core/{p-da798f58.entry.js → p-5ec11974.entry.js} +2 -2
- package/dist/core/p-643a94c2.entry.js +2 -0
- package/dist/core/p-643a94c2.entry.js.map +1 -0
- package/dist/core/{p-be5ad372.entry.js → p-65ddc948.entry.js} +2 -2
- package/dist/core/p-69f6db9f.entry.js +2 -0
- package/dist/core/p-69f6db9f.entry.js.map +1 -0
- package/dist/core/p-6cfd6b56.entry.js +2 -0
- package/dist/core/{p-144b1dee.entry.js.map → p-6cfd6b56.entry.js.map} +1 -1
- 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-7b13ccd0.entry.js +2 -0
- package/dist/core/p-7b13ccd0.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-e13b43b1.entry.js → p-8402fcf7.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-87c92ab1.entry.js +2 -0
- package/dist/core/p-87c92ab1.entry.js.map +1 -0
- package/dist/core/{p-0e3cb8d0.entry.js → p-8856dff4.entry.js} +2 -2
- package/dist/core/{p-00135a74.js → p-8e4e97b4.js} +3 -3
- package/dist/core/p-8e4e97b4.js.map +1 -0
- package/dist/core/{p-32720276.entry.js → p-91b8ee39.entry.js} +2 -2
- package/dist/core/{p-fd42f129.entry.js → p-91d5efc0.entry.js} +2 -2
- package/dist/core/p-91d5efc0.entry.js.map +1 -0
- package/dist/core/p-944ea274.entry.js +2 -0
- package/dist/core/p-944ea274.entry.js.map +1 -0
- package/dist/core/p-951669ca.entry.js +2 -0
- package/dist/core/p-951669ca.entry.js.map +1 -0
- package/dist/core/{p-b6db0cc1.entry.js → p-9bf0ce9e.entry.js} +2 -2
- package/dist/core/{p-afc4ce53.entry.js → p-9e5e6070.entry.js} +2 -2
- package/dist/core/{p-a214a9f8.entry.js → p-a12dd148.entry.js} +2 -2
- package/dist/core/{p-a214a9f8.entry.js.map → p-a12dd148.entry.js.map} +1 -1
- package/dist/core/p-a2fcea60.entry.js +2 -0
- package/dist/core/p-a2fcea60.entry.js.map +1 -0
- package/dist/core/{p-60a0c711.entry.js → p-a6031c41.entry.js} +2 -2
- package/dist/core/{p-60a0c711.entry.js.map → p-a6031c41.entry.js.map} +1 -1
- package/dist/core/{p-3d1ba098.entry.js → p-b006976c.entry.js} +2 -2
- package/dist/core/p-b17f6b1d.entry.js +2 -0
- package/dist/core/p-b17f6b1d.entry.js.map +1 -0
- package/dist/core/{p-0c3bd9e6.entry.js → p-b334a20d.entry.js} +2 -2
- package/dist/core/p-b603b9ef.entry.js +2 -0
- package/dist/core/p-b603b9ef.entry.js.map +1 -0
- package/dist/core/{p-3e9564b5.entry.js → p-b88ae211.entry.js} +2 -2
- package/dist/core/{p-5d85bd73.entry.js → p-b953b22f.entry.js} +2 -2
- package/dist/core/{p-5d85bd73.entry.js.map → p-b953b22f.entry.js.map} +1 -1
- package/dist/core/p-b9e73154.js +2 -0
- package/dist/core/p-b9e73154.js.map +1 -0
- package/dist/core/p-bb9142fe.entry.js +2 -0
- package/dist/core/{p-a13dc5ba.entry.js.map → p-bb9142fe.entry.js.map} +1 -1
- package/dist/core/{p-48163a2a.entry.js → p-c1dbb35b.entry.js} +2 -2
- package/dist/core/{p-48163a2a.entry.js.map → p-c1dbb35b.entry.js.map} +1 -1
- package/dist/core/{p-0fd762bf.entry.js → p-c1f653d4.entry.js} +2 -2
- package/dist/core/p-c1f653d4.entry.js.map +1 -0
- package/dist/core/{p-96551ddf.entry.js → p-c3f26b24.entry.js} +2 -2
- package/dist/core/p-c86ca475.js +2 -0
- package/dist/core/p-c86ca475.js.map +1 -0
- package/dist/core/{p-fd006a9b.entry.js → p-ca5d3a21.entry.js} +2 -2
- package/dist/core/{p-f541034c.entry.js → p-cd0dbcea.entry.js} +2 -2
- package/dist/core/p-cda2a461.entry.js +2 -0
- package/dist/core/p-cda2a461.entry.js.map +1 -0
- package/dist/core/p-ed416362.entry.js +2 -0
- package/dist/core/p-ed416362.entry.js.map +1 -0
- package/dist/core/{p-b17e7059.entry.js → p-f2beca5c.entry.js} +2 -2
- package/dist/core/{p-b17e7059.entry.js.map → p-f2beca5c.entry.js.map} +1 -1
- package/dist/core/p-f3bb5006.entry.js +2 -0
- package/dist/core/p-f3bb5006.entry.js.map +1 -0
- package/dist/core/{p-895a3eb1.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/core/{p-9f4fa820.entry.js → p-fa18f9c6.entry.js} +2 -2
- package/dist/core/{p-9f4fa820.entry.js.map → p-fa18f9c6.entry.js.map} +1 -1
- package/dist/core/p-fb01a001.entry.js +2 -0
- package/dist/core/p-fb01a001.entry.js.map +1 -0
- 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-9fe45194.js} +42 -3
- package/dist/esm/helpers-9fe45194.js.map +1 -0
- package/dist/esm/{helpers-5479985d.js → helpers-ddc2008a.js} +16 -16
- 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 +3 -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 +130 -148
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-date-picker.entry.js +87 -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 +2 -2
- package/dist/esm/ic-navigation-button.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js +25 -22
- 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 +7 -7
- 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 +52 -29
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +6 -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 +7 -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 +3 -3
- 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 +16 -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 +35 -42
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +25 -21
- 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 +34 -28
- package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +14 -12
- 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-pagination-bar/ic-pagination-bar.d.ts +2 -2
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +3 -3
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +4 -4
- package/dist/types/components.d.ts +95 -72
- package/dist/types/utils/date-helpers.d.ts +4 -4
- package/dist/types/utils/helpers.d.ts +6 -15
- package/hydrate/index.js +898 -851
- package/hydrate/index.mjs +898 -851
- package/package.json +3 -3
- package/dist/cjs/date-helpers-c9551119.js.map +0 -1
- package/dist/cjs/helpers-32016c21.js.map +0 -1
- package/dist/cjs/helpers-fc51fdcb.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-0ad472d0.entry.js +0 -2
- package/dist/core/p-0ad472d0.entry.js.map +0 -1
- package/dist/core/p-0c97a53d.entry.js +0 -2
- package/dist/core/p-0c97a53d.entry.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-0f6b9686.js +0 -2
- package/dist/core/p-0f6b9686.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-250bf568.entry.js +0 -2
- package/dist/core/p-250bf568.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-4e5934f3.entry.js +0 -2
- package/dist/core/p-4f00aa91.entry.js +0 -2
- package/dist/core/p-4f00aa91.entry.js.map +0 -1
- package/dist/core/p-54e01fad.entry.js +0 -2
- package/dist/core/p-54e01fad.entry.js.map +0 -1
- package/dist/core/p-6040a025.entry.js +0 -2
- package/dist/core/p-6040a025.entry.js.map +0 -1
- package/dist/core/p-62f7f2bd.entry.js +0 -2
- package/dist/core/p-62f7f2bd.entry.js.map +0 -1
- package/dist/core/p-6eaf585a.entry.js +0 -2
- package/dist/core/p-6eaf585a.entry.js.map +0 -1
- package/dist/core/p-72310da8.js +0 -2
- package/dist/core/p-72310da8.js.map +0 -1
- package/dist/core/p-836d302a.entry.js +0 -2
- package/dist/core/p-836d302a.entry.js.map +0 -1
- package/dist/core/p-881bb783.entry.js +0 -2
- package/dist/core/p-881bb783.entry.js.map +0 -1
- package/dist/core/p-895a3eb1.entry.js.map +0 -1
- package/dist/core/p-8d73a3cc.entry.js.map +0 -1
- package/dist/core/p-9a46b1e5.entry.js +0 -2
- package/dist/core/p-9a46b1e5.entry.js.map +0 -1
- package/dist/core/p-a13dc5ba.entry.js +0 -2
- package/dist/core/p-a30d165d.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-c0687222.entry.js +0 -2
- package/dist/core/p-c0687222.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-c4f7e479.entry.js +0 -2
- package/dist/core/p-c4f7e479.entry.js.map +0 -1
- package/dist/core/p-fb11ce9b.entry.js +0 -2
- package/dist/core/p-fb11ce9b.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/esm/date-helpers-0e5e32a7.js.map +0 -1
- package/dist/esm/helpers-5479985d.js.map +0 -1
- package/dist/esm/helpers-bbab69a2.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-1334a78f.entry.js.map → p-12d4803e.entry.js.map} +0 -0
- /package/dist/core/{p-d154b26c.entry.js.map → p-1b31a720.entry.js.map} +0 -0
- /package/dist/core/{p-08fd225f.entry.js.map → p-214a48c6.entry.js.map} +0 -0
- /package/dist/core/{p-0848efa2.entry.js.map → p-2c7e9e71.entry.js.map} +0 -0
- /package/dist/core/{p-b8aa37f9.entry.js.map → p-336be00c.entry.js.map} +0 -0
- /package/dist/core/{p-272352cb.entry.js.map → p-38f612b0.entry.js.map} +0 -0
- /package/dist/core/{p-4da17eda.entry.js.map → p-3ee70c45.entry.js.map} +0 -0
- /package/dist/core/{p-762a4d7c.entry.js.map → p-46f64dc5.entry.js.map} +0 -0
- /package/dist/core/{p-22e0ed96.entry.js.map → p-5bd43e19.entry.js.map} +0 -0
- /package/dist/core/{p-da798f58.entry.js.map → p-5ec11974.entry.js.map} +0 -0
- /package/dist/core/{p-be5ad372.entry.js.map → p-65ddc948.entry.js.map} +0 -0
- /package/dist/core/{p-e13b43b1.entry.js.map → p-8402fcf7.entry.js.map} +0 -0
- /package/dist/core/{p-0e3cb8d0.entry.js.map → p-8856dff4.entry.js.map} +0 -0
- /package/dist/core/{p-32720276.entry.js.map → p-91b8ee39.entry.js.map} +0 -0
- /package/dist/core/{p-b6db0cc1.entry.js.map → p-9bf0ce9e.entry.js.map} +0 -0
- /package/dist/core/{p-afc4ce53.entry.js.map → p-9e5e6070.entry.js.map} +0 -0
- /package/dist/core/{p-3d1ba098.entry.js.map → p-b006976c.entry.js.map} +0 -0
- /package/dist/core/{p-0c3bd9e6.entry.js.map → p-b334a20d.entry.js.map} +0 -0
- /package/dist/core/{p-3e9564b5.entry.js.map → p-b88ae211.entry.js.map} +0 -0
- /package/dist/core/{p-96551ddf.entry.js.map → p-c3f26b24.entry.js.map} +0 -0
- /package/dist/core/{p-fd006a9b.entry.js.map → p-ca5d3a21.entry.js.map} +0 -0
- /package/dist/core/{p-f541034c.entry.js.map → p-cd0dbcea.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";
|
@@ -196,8 +151,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
196
151
|
/**
|
197
152
|
* The format in which the date will be displayed.
|
198
153
|
*/
|
199
|
-
|
200
|
-
this.dateFormat = "DD/MM/YYYY";
|
154
|
+
this.dateFormat = this.DEFAULT_DATE_FORMAT;
|
201
155
|
/**
|
202
156
|
* If `true`, every individual input field completed will emit an icChange event.
|
203
157
|
*/
|
@@ -293,9 +247,11 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
293
247
|
*/
|
294
248
|
this.validationText = "";
|
295
249
|
this.setInputPasteValue = (input, pastedValue) => {
|
296
|
-
|
297
|
-
|
298
|
-
|
250
|
+
if (input) {
|
251
|
+
const inputEl = input;
|
252
|
+
inputEl.value = pastedValue;
|
253
|
+
inputEl.classList.add(this.FIT_TO_VALUE);
|
254
|
+
}
|
299
255
|
};
|
300
256
|
this.checkSingleCopiedValueIsValid = (input, pastedValue) => {
|
301
257
|
let isValid = false;
|
@@ -310,9 +266,6 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
310
266
|
case this.yearInputEl:
|
311
267
|
isValid = true;
|
312
268
|
break;
|
313
|
-
default:
|
314
|
-
isValid = false;
|
315
|
-
break;
|
316
269
|
}
|
317
270
|
return isValid;
|
318
271
|
};
|
@@ -454,8 +407,10 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
454
407
|
};
|
455
408
|
this.handleBlur = (event) => {
|
456
409
|
const input = event.target;
|
457
|
-
|
458
|
-
|
410
|
+
if (input) {
|
411
|
+
this.setPasteInvalidText();
|
412
|
+
this.autocompleteInput(input);
|
413
|
+
}
|
459
414
|
};
|
460
415
|
this.handleLeftRightArrowKeyPress = (input, key) => {
|
461
416
|
if (key === "arrowright") {
|
@@ -467,13 +422,15 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
467
422
|
this.setPasteInvalidText();
|
468
423
|
};
|
469
424
|
this.notifyScreenReaderSelectedDate = () => {
|
470
|
-
|
471
|
-
|
472
|
-
|
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
|
+
}
|
473
430
|
};
|
474
431
|
this.handleUpDownArrowKeyPress = (input, event) => {
|
475
432
|
const minValue = input === this.yearInputEl ? 0 : 1;
|
476
|
-
let maxValue;
|
433
|
+
let maxValue = 9999;
|
477
434
|
switch (input) {
|
478
435
|
case this.dayInputEl:
|
479
436
|
maxValue = this.MAX_DAY;
|
@@ -516,22 +473,18 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
516
473
|
else {
|
517
474
|
if (event.key === "ArrowDown") {
|
518
475
|
event.preventDefault();
|
519
|
-
|
520
|
-
input
|
521
|
-
|
522
|
-
|
523
|
-
input.value = maxValue.toString();
|
524
|
-
}
|
476
|
+
input.value =
|
477
|
+
input === this.yearInputEl
|
478
|
+
? new Date().getFullYear().toString()
|
479
|
+
: maxValue.toString();
|
525
480
|
this.notifyScreenReader(input, event);
|
526
481
|
}
|
527
482
|
else if (event.key === "ArrowUp") {
|
528
483
|
event.preventDefault();
|
529
|
-
|
530
|
-
input
|
531
|
-
|
532
|
-
|
533
|
-
input.value = `0${minValue}`;
|
534
|
-
}
|
484
|
+
input.value =
|
485
|
+
input === this.yearInputEl
|
486
|
+
? new Date().getFullYear().toString()
|
487
|
+
: `0${minValue}`;
|
535
488
|
this.notifyScreenReader(input, event);
|
536
489
|
}
|
537
490
|
}
|
@@ -551,7 +504,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
551
504
|
this.setValueAndEmitChange(this.selectedDate);
|
552
505
|
this.notifyScreenReaderSelectedDate();
|
553
506
|
}
|
554
|
-
else if (!(this.selectedDate === null && this.previousSelectedDate === null)
|
507
|
+
else if (!(this.selectedDate === null && this.previousSelectedDate === null) &&
|
508
|
+
this.selectedDateInfoEl) {
|
555
509
|
this.setValueAndEmitChange(null);
|
556
510
|
this.selectedDateInfoEl.textContent = "";
|
557
511
|
}
|
@@ -581,19 +535,20 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
581
535
|
// Set value of each input to value of pasted date part
|
582
536
|
// Allows formats separated by '-' or '/'
|
583
537
|
this.handlePaste = (event) => {
|
538
|
+
var _a;
|
584
539
|
event.preventDefault();
|
585
|
-
const pastedValue = event.clipboardData.getData("Text");
|
540
|
+
const pastedValue = ((_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData("Text")) || "";
|
586
541
|
const isValidDate = this.isPastedStringDateValid(pastedValue);
|
587
542
|
this.setPastedValueAndValidation(isValidDate, pastedValue, event);
|
588
543
|
};
|
589
544
|
this.setDate = (date) => {
|
590
545
|
if (date === null || date === "" || date === undefined) {
|
591
546
|
if (this.day)
|
592
|
-
this.day =
|
547
|
+
this.day = "";
|
593
548
|
if (this.month)
|
594
|
-
this.month =
|
549
|
+
this.month = "";
|
595
550
|
if (this.year)
|
596
|
-
this.year =
|
551
|
+
this.year = "";
|
597
552
|
this.inputsInOrder.forEach((input) => {
|
598
553
|
input.classList.remove(this.FIT_TO_VALUE);
|
599
554
|
this.setPreventInput(input, false);
|
@@ -631,7 +586,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
631
586
|
const month = convertToDoubleDigits(date.getMonth() + 1);
|
632
587
|
const year = date.getFullYear();
|
633
588
|
switch (this.dateFormat) {
|
634
|
-
case
|
589
|
+
case this.DEFAULT_DATE_FORMAT:
|
635
590
|
formattedDate = `${day}/${month}/${year}`;
|
636
591
|
break;
|
637
592
|
case "MM/DD/YYYY":
|
@@ -644,9 +599,11 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
644
599
|
return formattedDate;
|
645
600
|
};
|
646
601
|
this.updateInputValues = (day, month, year) => {
|
647
|
-
this.dayInputEl.
|
648
|
-
|
649
|
-
|
602
|
+
if (this.dayInputEl && this.monthInputEl && this.yearInputEl) {
|
603
|
+
this.dayInputEl.value = day;
|
604
|
+
this.monthInputEl.value = month;
|
605
|
+
this.yearInputEl.value = year;
|
606
|
+
}
|
650
607
|
};
|
651
608
|
// Set value in state based on input
|
652
609
|
this.setInputValue = (input, clear = false) => {
|
@@ -674,7 +631,9 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
674
631
|
// (used https://www.hectane.com/blog/javascript-date-validation-with-leap-year)
|
675
632
|
this.selectedDate = this.convertToDate(this.year, this.month, this.day);
|
676
633
|
this.isValidDate =
|
677
|
-
|
634
|
+
!!this.selectedDate &&
|
635
|
+
+this.selectedDate !== 0 &&
|
636
|
+
this.selectedDate.getDate() == +this.day;
|
678
637
|
this.isDisabledDate = this.isSelectedDateDisabled();
|
679
638
|
if (!this.isValidDate || this.isDisabledDate) {
|
680
639
|
this.inputsInOrder.forEach((input) => input.setAttribute(this.ARIA_INVALID, "true"));
|
@@ -724,13 +683,13 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
724
683
|
};
|
725
684
|
// Set refs to the input elements in the order they are displayed (based on the dateFormat)
|
726
685
|
this.setInputsInOrder = () => {
|
727
|
-
|
728
|
-
|
686
|
+
var _a;
|
687
|
+
(_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll("input").forEach((input) => this.inputsInOrder.push(input));
|
729
688
|
};
|
730
689
|
// Includes text usually added using aria-describedby
|
731
690
|
// (which doesn't work on input component container)
|
732
691
|
this.setAriaLabelledBy = () => {
|
733
|
-
var _a, _b;
|
692
|
+
var _a, _b, _c;
|
734
693
|
if (this.disabled &&
|
735
694
|
!isEmptyString((_a = this.inputCompContainerEl) === null || _a === void 0 ? void 0 : _a.getAttribute(this.ARIA_LABELLED_BY))) {
|
736
695
|
this.removeAriaLabelledBy();
|
@@ -739,14 +698,14 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
739
698
|
if (this.disabled) {
|
740
699
|
return;
|
741
700
|
}
|
742
|
-
const labelEl = this.el.shadowRoot.querySelector("label");
|
701
|
+
const labelEl = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("label");
|
743
702
|
const labelId = `${this.inputId}-label`;
|
744
703
|
if (labelEl !== null && labelEl !== undefined) {
|
745
704
|
labelEl.id = labelId;
|
746
705
|
}
|
747
706
|
const hasValidation = !isEmptyString(this.validationStatus) ||
|
748
707
|
!isEmptyString(this.invalidDateText);
|
749
|
-
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}`;
|
750
709
|
this.inputCompContainerEl.setAttribute(this.ARIA_LABELLED_BY, labelledBy);
|
751
710
|
};
|
752
711
|
// Sets boolean for each input, used to limit the number of characters within each field (2 for day / month, 4 for year)
|
@@ -795,7 +754,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
795
754
|
this.getDescOfInputsOrder = () => {
|
796
755
|
let description;
|
797
756
|
switch (this.dateFormat) {
|
798
|
-
case
|
757
|
+
case this.DEFAULT_DATE_FORMAT:
|
799
758
|
description = "day, month, and year";
|
800
759
|
break;
|
801
760
|
case "MM/DD/YYYY":
|
@@ -827,7 +786,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
827
786
|
const input = event.target;
|
828
787
|
let selectedString;
|
829
788
|
if (input) {
|
830
|
-
selectedString = input.value.substring(input.selectionStart, input.selectionEnd);
|
789
|
+
selectedString = input.value.substring(input.selectionStart || 0, input.selectionEnd || undefined);
|
831
790
|
}
|
832
791
|
if (key === "e" ||
|
833
792
|
key === "." ||
|
@@ -839,81 +798,60 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
839
798
|
event.preventDefault();
|
840
799
|
}
|
841
800
|
};
|
842
|
-
|
843
|
-
|
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
|
+
*/
|
844
806
|
this.isSelectedDateDisabled = () => {
|
807
|
+
if (!this.selectedDate)
|
808
|
+
return false;
|
845
809
|
const currentDate = new Date();
|
846
|
-
this.isAfterMax = false;
|
847
|
-
this.isBeforeMin = false;
|
848
|
-
let disabled = false;
|
849
810
|
const isNotToday = this.selectedDate.toDateString() !== currentDate.toDateString();
|
850
|
-
|
851
|
-
this.
|
852
|
-
|
853
|
-
|
854
|
-
|
855
|
-
this.
|
856
|
-
|
857
|
-
|
858
|
-
|
859
|
-
|
860
|
-
}
|
861
|
-
if (((this.disablePast && this.selectedDate < currentDate) ||
|
862
|
-
(this.disableFuture && this.selectedDate > currentDate)) &&
|
863
|
-
isNotToday) {
|
864
|
-
disabled = true;
|
865
|
-
}
|
866
|
-
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));
|
867
821
|
};
|
868
822
|
this.moveToNextInput = (currentInput) => {
|
869
|
-
|
870
|
-
const nextInput = this.inputsInOrder[currentInputPos + 1];
|
823
|
+
var _a;
|
871
824
|
this.preventAutoFormatting = false;
|
872
|
-
|
873
|
-
nextInput.focus();
|
874
|
-
}
|
825
|
+
(_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) + 1]) === null || _a === void 0 ? void 0 : _a.focus();
|
875
826
|
};
|
876
827
|
this.moveToPreviousInput = (currentInput) => {
|
877
|
-
|
828
|
+
var _a;
|
878
829
|
this.preventAutoFormatting = false;
|
879
|
-
|
880
|
-
this.inputsInOrder[currentInputPos - 1].focus();
|
881
|
-
}
|
830
|
+
(_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) - 1]) === null || _a === void 0 ? void 0 : _a.focus();
|
882
831
|
};
|
883
832
|
this.autocompleteInput = (input) => {
|
884
|
-
|
885
|
-
|
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
|
+
}
|
886
846
|
}
|
887
|
-
else {
|
888
|
-
const inputValue = input.value;
|
847
|
+
else if (inputValue.length === 1) {
|
889
848
|
// Autocomplete input as 2 characters (leading zero) when only 1 character entered (for day and month)
|
890
|
-
|
891
|
-
if (+inputValue === 0) {
|
892
|
-
input.value = "01";
|
893
|
-
}
|
894
|
-
else {
|
895
|
-
input.value = `0${inputValue}`;
|
896
|
-
}
|
897
|
-
}
|
849
|
+
input.value = +inputValue === 0 ? "01" : `0${inputValue}`;
|
898
850
|
}
|
899
851
|
if (input.value) {
|
900
852
|
this.setInputValue(input);
|
901
853
|
}
|
902
854
|
};
|
903
|
-
// Autocomplete year as current millennium when fewer than 4 characters entered
|
904
|
-
this.autocompleteYear = () => {
|
905
|
-
const inputValue = this.yearInputEl.value;
|
906
|
-
const yearNumbers = ["2", "0", "0"];
|
907
|
-
let autocompletedInput = "";
|
908
|
-
if (inputValue) {
|
909
|
-
yearNumbers.forEach((number, index) => {
|
910
|
-
if (inputValue.length + index <= 3) {
|
911
|
-
autocompletedInput += number;
|
912
|
-
}
|
913
|
-
});
|
914
|
-
this.yearInputEl.value = `${autocompletedInput}${inputValue}`;
|
915
|
-
}
|
916
|
-
};
|
917
855
|
this.convertToDate = (year, month, day) => {
|
918
856
|
if (!isEmptyString(year) && !isEmptyString(month) && !isEmptyString(day)) {
|
919
857
|
return new Date(+year, +month - 1, +day);
|
@@ -927,8 +865,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
927
865
|
this.icBlur.emit({ value: this.selectedDate });
|
928
866
|
};
|
929
867
|
this.handleHostFocus = () => {
|
930
|
-
var _a;
|
931
|
-
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$/)) {
|
932
870
|
this.removeLabelledBy = false;
|
933
871
|
}
|
934
872
|
else {
|
@@ -942,14 +880,13 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
942
880
|
this.setValidationMessage();
|
943
881
|
this.handleDateChange(false);
|
944
882
|
};
|
945
|
-
this.getAriaLabel = (input) =>
|
946
|
-
return input.getAttribute(this.ARIA_LABEL);
|
947
|
-
};
|
883
|
+
this.getAriaLabel = (input) => input.getAttribute(this.ARIA_LABEL);
|
948
884
|
this.notifyScreenReaderArrowKeys = (input) => {
|
949
|
-
|
950
|
-
|
885
|
+
var _a;
|
886
|
+
const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
|
951
887
|
const ariaLabel = this.getAriaLabel(input);
|
952
|
-
if (liveRegion && input.value) {
|
888
|
+
if (liveRegion && input.value && ariaLabel) {
|
889
|
+
let announcement = "";
|
953
890
|
if (input === this.monthInputEl &&
|
954
891
|
!!IcDateInputMonths[+input.value - 1]) {
|
955
892
|
announcement = `${input.value} - ${IcDateInputMonths[+input.value - 1]}, ${ariaLabel}`;
|
@@ -961,32 +898,23 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
961
898
|
}
|
962
899
|
};
|
963
900
|
this.notifyScreenReaderInput = (input, liveRegion) => {
|
964
|
-
let announcement = "";
|
965
901
|
const ariaLabel = this.getAriaLabel(input);
|
966
|
-
|
967
|
-
|
968
|
-
|
969
|
-
|
970
|
-
|
971
|
-
|
972
|
-
|
973
|
-
|
974
|
-
|
975
|
-
}
|
976
|
-
}
|
977
|
-
else {
|
978
|
-
announcement = "";
|
979
|
-
}
|
980
|
-
}
|
981
|
-
else {
|
982
|
-
if (input.value.length === 4) {
|
983
|
-
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}`;
|
984
911
|
}
|
985
|
-
else
|
986
|
-
|
912
|
+
else if ((input === this.dayInputEl && this.isValidDay && value.length === 2) ||
|
913
|
+
(input === this.yearInputEl && value.length === 4)) {
|
914
|
+
announcement = value;
|
987
915
|
}
|
916
|
+
liveRegion.textContent = `${announcement}, ${ariaLabel}`;
|
988
917
|
}
|
989
|
-
liveRegion.textContent = announcement;
|
990
918
|
};
|
991
919
|
this.setFitToValueStyling = (input) => {
|
992
920
|
if (input.value) {
|
@@ -997,15 +925,16 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
997
925
|
}
|
998
926
|
};
|
999
927
|
this.setAriaInvalid = (validDay, validMonth, validDate, disabledDate) => {
|
928
|
+
var _a, _b;
|
1000
929
|
if (this.inputsInOrder.length) {
|
1001
930
|
this.inputsInOrder.forEach((input) => {
|
1002
931
|
input.removeAttribute(this.ARIA_INVALID);
|
1003
932
|
});
|
1004
933
|
if (!validDay) {
|
1005
|
-
this.dayInputEl.setAttribute(this.ARIA_INVALID, "true");
|
934
|
+
(_a = this.dayInputEl) === null || _a === void 0 ? void 0 : _a.setAttribute(this.ARIA_INVALID, "true");
|
1006
935
|
}
|
1007
936
|
if (!validMonth) {
|
1008
|
-
this.monthInputEl.setAttribute(this.ARIA_INVALID, "true");
|
937
|
+
(_b = this.monthInputEl) === null || _b === void 0 ? void 0 : _b.setAttribute(this.ARIA_INVALID, "true");
|
1009
938
|
}
|
1010
939
|
if (!validDate || disabledDate) {
|
1011
940
|
this.inputsInOrder.forEach((input) => {
|
@@ -1028,15 +957,15 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1028
957
|
this.inputsInOrder[0].focus();
|
1029
958
|
};
|
1030
959
|
this.handleCalendarOpen = (ev) => {
|
1031
|
-
var _a, _b;
|
960
|
+
var _a, _b, _c, _d, _e, _f;
|
1032
961
|
ev.stopImmediatePropagation();
|
1033
|
-
(_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);
|
1034
963
|
this.calendarButtonClicked.emit({ value: this.selectedDate });
|
1035
|
-
(
|
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);
|
1036
965
|
this.isDateSetFromKeyboardEvent = false;
|
1037
966
|
};
|
1038
967
|
this.setValueAndEmitChange = (value) => {
|
1039
|
-
if (!dateMatches(new Date(this.value), value)) {
|
968
|
+
if (!dateMatches(this.value ? new Date(this.value) : null, value)) {
|
1040
969
|
this.emitIcChange(value);
|
1041
970
|
this.value = value;
|
1042
971
|
}
|
@@ -1066,6 +995,10 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1066
995
|
this.day !== null ||
|
1067
996
|
this.month !== null ||
|
1068
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
|
+
}
|
1069
1002
|
this.icChange.emit({
|
1070
1003
|
value: d,
|
1071
1004
|
dateObject: {
|
@@ -1073,6 +1006,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1073
1006
|
month: this.month === "" ? null : this.month,
|
1074
1007
|
year: this.year === "" ? null : this.year,
|
1075
1008
|
},
|
1009
|
+
utcValue: UTCDate,
|
1076
1010
|
});
|
1077
1011
|
}
|
1078
1012
|
};
|
@@ -1112,9 +1046,10 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1112
1046
|
}
|
1113
1047
|
}
|
1114
1048
|
watchRequiredHandler() {
|
1049
|
+
var _a, _b;
|
1115
1050
|
// Prevent asterisk being read out after the label by screen reader (by applying aria-hidden)
|
1116
1051
|
// Needed because label is included in 'aria-labelledby' instead of using 'aria-label'
|
1117
|
-
const labelEl = this.el.shadowRoot.querySelector("label");
|
1052
|
+
const labelEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("label");
|
1118
1053
|
if (this.required) {
|
1119
1054
|
const asteriskSpan = document.createElement("span");
|
1120
1055
|
asteriskSpan.setAttribute("id", "asterisk-span");
|
@@ -1123,7 +1058,7 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1123
1058
|
labelEl === null || labelEl === void 0 ? void 0 : labelEl.appendChild(asteriskSpan);
|
1124
1059
|
}
|
1125
1060
|
else {
|
1126
|
-
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");
|
1127
1062
|
if (asteriskSpan) {
|
1128
1063
|
asteriskSpan.remove();
|
1129
1064
|
}
|
@@ -1273,18 +1208,18 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1273
1208
|
}
|
1274
1209
|
pasteZuluDateTime(dateParts, index) {
|
1275
1210
|
// ['YYYY', 'MM', 'DD']
|
1276
|
-
if (index === 0) {
|
1211
|
+
if (index === 0 && this.yearInputEl) {
|
1277
1212
|
const dateValue = this.slicePastedDate(4, dateParts[index]);
|
1278
1213
|
this.yearInputEl.value = dateValue;
|
1279
1214
|
this.setInputValue(this.yearInputEl);
|
1280
1215
|
}
|
1281
|
-
else if (index === 1) {
|
1216
|
+
else if (index === 1 && this.monthInputEl) {
|
1282
1217
|
// The month value is the second item in the array
|
1283
1218
|
const dateValue = this.slicePastedDate(2, dateParts[index]);
|
1284
1219
|
this.monthInputEl.value = dateValue;
|
1285
1220
|
this.setInputValue(this.monthInputEl);
|
1286
1221
|
}
|
1287
|
-
else {
|
1222
|
+
else if (this.dayInputEl) {
|
1288
1223
|
const dateValue = this.slicePastedDate(2, dateParts[index]);
|
1289
1224
|
this.dayInputEl.value = dateValue;
|
1290
1225
|
this.setInputValue(this.dayInputEl);
|
@@ -1309,7 +1244,8 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1309
1244
|
}
|
1310
1245
|
}
|
1311
1246
|
notifyScreenReader(input, event) {
|
1312
|
-
|
1247
|
+
var _a;
|
1248
|
+
const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
|
1313
1249
|
if (liveRegion) {
|
1314
1250
|
if (this.isKeyboardOrEvent(event)) {
|
1315
1251
|
this.notifyScreenReaderArrowKeys(input);
|
@@ -1329,15 +1265,15 @@ const DateInput = /*@__PURE__*/ proxyCustomElement(class DateInput extends HTMLE
|
|
1329
1265
|
: "";
|
1330
1266
|
const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;
|
1331
1267
|
renderHiddenInput(true, this.el, this.name, this.convertToDate(this.year, this.month, this.day), this.disabled);
|
1332
|
-
return (h(Host, { key: '
|
1268
|
+
return (h(Host, { key: '5e9f71b2a1c5dbc55f615ea389121c300ed68fd4', class: {
|
1333
1269
|
[`ic-theme-${theme}`]: theme !== "inherit",
|
1334
1270
|
[`ic-date-input-disabled`]: disabled,
|
1335
|
-
}, 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: {
|
1336
1272
|
["clear-button"]: true,
|
1337
1273
|
["hidden"]: isEmptyString(this.day) &&
|
1338
1274
|
isEmptyString(this.month) &&
|
1339
1275
|
isEmptyString(this.year),
|
1340
|
-
}, 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 })))));
|
1341
1277
|
}
|
1342
1278
|
static get delegatesFocus() { return true; }
|
1343
1279
|
get el() { return this; }
|