@ukic/canary-web-components 3.0.0-canary.33 → 3.0.0-canary.35
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/{OpenInNew-7bac24f7.js → OpenInNew-add95b7b.js} +1 -1
- package/dist/cjs/OpenInNew-add95b7b.js.map +1 -0
- package/dist/{esm/purify-6eaa9893.js → cjs/common-helpers-577fc5b0.js} +22 -2
- package/dist/cjs/common-helpers-577fc5b0.js.map +1 -0
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-2cc5f6db.js → helpers-cb472df9.js} +1 -128
- package/dist/cjs/helpers-cb472df9.js.map +1 -0
- package/dist/cjs/helpers-f81fed28.js.map +1 -1
- package/dist/cjs/ic-badge-27f26087.js +184 -0
- package/dist/cjs/ic-badge-27f26087.js.map +1 -0
- package/dist/cjs/ic-badge.cjs.entry.js +4 -177
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-button-4c329a7d.js +435 -0
- package/dist/cjs/ic-button-4c329a7d.js.map +1 -0
- package/dist/cjs/ic-button_3.cjs.entry.js +9 -875
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-calendar_2.cjs.entry.js +22 -13
- package/dist/cjs/ic-calendar_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-horizontal.cjs.entry.js +10 -5
- package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-ac44e0a2.js +204 -0
- package/dist/cjs/ic-checkbox-ac44e0a2.js.map +1 -0
- package/dist/cjs/ic-checkbox_3.cjs.entry.js +22 -208
- package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip-1ff0950a.js +133 -0
- package/dist/cjs/ic-chip-1ff0950a.js.map +1 -0
- package/dist/cjs/ic-chip.cjs.entry.js +4 -119
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +19 -4
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table.cjs.entry.js +18 -10
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +7 -229
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-validation-bf7afa43.js +259 -0
- package/dist/cjs/ic-input-validation-bf7afa43.js.map +1 -0
- package/dist/cjs/ic-link-c77848ab.js +111 -0
- package/dist/cjs/ic-link-c77848ab.js.map +1 -0
- package/dist/cjs/ic-link.cjs.entry.js +5 -104
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-loading-indicator-bbd1572c.js +233 -0
- package/dist/cjs/ic-loading-indicator-bbd1572c.js.map +1 -0
- package/dist/cjs/ic-menu-e9a1a0d3.js +987 -0
- package/dist/cjs/ic-menu-e9a1a0d3.js.map +1 -0
- package/dist/cjs/ic-menu.cjs.entry.js +6 -991
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item-59bd8957.js +243 -0
- package/dist/cjs/ic-navigation-item-59bd8957.js.map +1 -0
- package/dist/cjs/ic-navigation-item.cjs.entry.js +5 -232
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header-3d8b3a59.js +131 -0
- package/dist/cjs/ic-page-header-3d8b3a59.js.map +1 -0
- package/dist/cjs/ic-page-header.cjs.entry.js +4 -124
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_3.cjs.entry.js +16 -0
- package/dist/cjs/ic-pagination_3.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-section-container-128e2db0.js +34 -0
- package/dist/cjs/ic-section-container-128e2db0.js.map +1 -0
- package/dist/cjs/ic-section-container.cjs.entry.js +3 -27
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-select-bc8ca251.js +876 -0
- package/dist/cjs/ic-select-bc8ca251.js.map +1 -0
- package/dist/cjs/ic-skip-link-43203eea.js +60 -0
- package/dist/cjs/ic-skip-link-43203eea.js.map +1 -0
- package/dist/cjs/ic-skip-link.cjs.entry.js +3 -53
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag-a4377a6b.js +55 -0
- package/dist/cjs/ic-status-tag-a4377a6b.js.map +1 -0
- package/dist/cjs/ic-status-tag.cjs.entry.js +4 -48
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-table-of-contents.cjs.entry.js +14 -3
- package/dist/cjs/ic-table-of-contents.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field-5d7ae957.js +732 -0
- package/dist/cjs/ic-text-field-5d7ae957.js.map +1 -0
- package/dist/cjs/ic-theme.cjs.entry.js +2 -2
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-time-input.cjs.entry.js +17 -7
- package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-time-selector.cjs.entry.js +53 -170
- package/dist/cjs/ic-time-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-ce67a1ec.js +452 -0
- package/dist/cjs/ic-toggle-button-ce67a1ec.js.map +1 -0
- package/dist/cjs/ic-toggle-button_2.cjs.entry.js +5 -445
- package/dist/cjs/ic-toggle-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tooltip-3cc80832.js +239 -0
- package/dist/cjs/ic-tooltip-3cc80832.js.map +1 -0
- package/dist/cjs/ic-top-navigation-a6c4be7b.js +237 -0
- package/dist/cjs/ic-top-navigation-a6c4be7b.js.map +1 -0
- package/dist/cjs/ic-top-navigation.cjs.entry.js +4 -227
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +5 -4
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +7 -5
- package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography-a199c128.js +198 -0
- package/dist/cjs/ic-typography-a199c128.js.map +1 -0
- package/dist/cjs/ic-typography.cjs.entry.js +4 -191
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-d337cd8a.js +6 -170
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +28 -76
- package/dist/collection/components/ic-calendar/ic-calendar.js +12 -10
- package/dist/collection/components/ic-calendar/ic-calendar.js.map +1 -1
- package/dist/collection/components/ic-calendar/ic-day-button.js +1 -0
- package/dist/collection/components/ic-calendar/ic-day-button.js.map +1 -1
- package/dist/collection/components/ic-calendar/ic-month-picker.js +1 -0
- package/dist/collection/components/ic-calendar/ic-month-picker.js.map +1 -1
- package/dist/collection/components/ic-calendar/ic-year-picker.js +1 -0
- package/dist/collection/components/ic-calendar/ic-year-picker.js.map +1 -1
- package/dist/collection/components/ic-calendar/test/a11y/ic-calendar.test.a11y.js +1 -1
- package/dist/collection/components/ic-calendar/test/a11y/ic-calendar.test.a11y.js.map +1 -1
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +9 -5
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.js +15 -8
- package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +18 -4
- 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 +13 -3
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +1 -1
- 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 +2 -2
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +19 -12
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js +1 -0
- package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js.map +1 -1
- package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js +12 -3
- package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js.map +1 -1
- package/dist/collection/components/ic-time-input/ic-time-input.js +20 -8
- package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
- package/dist/collection/components/ic-time-input/ic-time-input.stories.js +4 -4
- package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -1
- package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js +1 -1
- package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -1
- package/dist/collection/components/ic-time-selector/ic-time-selector.js +55 -200
- package/dist/collection/components/ic-time-selector/ic-time-selector.js.map +1 -1
- package/dist/collection/components/ic-time-selector/ic-time-selector.stories.js +50 -24
- package/dist/collection/components/ic-time-selector/ic-time-selector.stories.js.map +1 -1
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +4 -4
- 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 +5 -3
- 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 +32 -2
- package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/common-helpers.js +1364 -3
- package/dist/components/common-helpers.js.map +1 -1
- package/dist/components/helpers.js +1 -116
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/helpers2.js.map +1 -1
- package/dist/components/ic-badge.d.ts +11 -0
- package/dist/components/ic-badge.js +3 -3
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-button.d.ts +11 -0
- package/dist/components/ic-button2.js +5 -5
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-calendar2.js +12 -11
- package/dist/components/ic-calendar2.js.map +1 -1
- package/dist/components/ic-card-horizontal.js +6 -5
- package/dist/components/ic-card-horizontal.js.map +1 -1
- package/dist/components/ic-checkbox.d.ts +11 -0
- package/dist/components/ic-checkbox2.js +5 -5
- package/dist/components/ic-checkbox2.js.map +1 -1
- package/dist/components/ic-chip.d.ts +11 -0
- package/dist/components/ic-chip.js +14 -6
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-data-table-title-bar.js +18 -7
- package/dist/components/ic-data-table-title-bar.js.map +1 -1
- package/dist/components/ic-data-table.js +34 -40
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +10 -6
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +2 -2
- package/dist/components/ic-empty-state.d.ts +11 -0
- package/dist/components/ic-empty-state2.js +3 -3
- package/dist/components/ic-empty-state2.js.map +1 -1
- package/dist/components/ic-input-component-container.d.ts +11 -0
- package/dist/components/ic-input-component-container2.js +5 -4
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-container.d.ts +11 -0
- package/dist/components/ic-input-container2.js +2 -2
- package/dist/components/ic-input-container2.js.map +1 -1
- package/dist/components/ic-input-label.d.ts +11 -0
- package/dist/components/ic-input-label2.js +3 -3
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation.d.ts +11 -0
- package/dist/components/ic-input-validation2.js +21 -5
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link.d.ts +11 -0
- package/dist/components/ic-link2.js +2 -2
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator.d.ts +11 -0
- package/dist/components/ic-loading-indicator2.js +27 -13
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu.d.ts +11 -0
- package/dist/components/ic-menu2.js +11 -22
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-item.d.ts +11 -0
- package/dist/components/ic-navigation-item.js +8 -4
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-page-header.d.ts +11 -0
- package/dist/components/ic-page-header.js +9 -33
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-bar2.js +23 -29
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-pagination.d.ts +11 -0
- package/dist/components/ic-pagination2.js +34 -15
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-section-container.d.ts +11 -0
- package/dist/components/ic-section-container2.js +2 -2
- package/dist/components/ic-section-container2.js.map +1 -1
- package/dist/components/ic-select.d.ts +11 -0
- package/dist/components/ic-select2.js +7 -7
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-skip-link.d.ts +11 -0
- 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.d.ts +11 -0
- package/dist/components/ic-status-tag.js +2 -2
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-table-of-contents.js +5 -4
- package/dist/components/ic-table-of-contents.js.map +1 -1
- package/dist/components/ic-text-field.d.ts +11 -0
- package/dist/components/ic-text-field2.js +6 -6
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.d.ts +11 -0
- package/dist/components/ic-theme.js +2 -2
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-time-input.js +16 -12
- package/dist/components/ic-time-input.js.map +1 -1
- package/dist/components/ic-time-selector.js +51 -173
- package/dist/components/ic-time-selector.js.map +1 -1
- package/dist/components/ic-toggle-button-group.d.ts +11 -0
- package/dist/components/ic-toggle-button-group2.js +2 -2
- package/dist/components/ic-toggle-button-group2.js.map +1 -1
- package/dist/components/ic-toggle-button.d.ts +11 -0
- package/dist/components/ic-toggle-button2.js +3 -3
- package/dist/components/ic-toggle-button2.js.map +1 -1
- package/dist/components/ic-tooltip.d.ts +11 -0
- package/dist/components/ic-tooltip2.js +3 -3
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.d.ts +11 -0
- package/dist/components/ic-top-navigation.js +12 -21
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.js +4 -5
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +5 -4
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/components/ic-typography.d.ts +11 -0
- package/dist/components/ic-typography2.js +3 -3
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/components/success-icon.js +11 -0
- package/dist/components/success-icon.js.map +1 -0
- package/dist/core/core.css +1 -1
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-01b04775.js +2 -0
- package/dist/core/p-01b04775.js.map +1 -0
- package/dist/core/p-02d0a238.entry.js +2 -0
- package/dist/core/{p-c4b2774d.entry.js → p-0592277b.js} +2 -2
- package/dist/core/p-0592277b.js.map +1 -0
- package/dist/core/p-0664935b.js +2 -0
- package/dist/core/p-0664935b.js.map +1 -0
- package/dist/core/p-0aa06309.entry.js +2 -0
- package/dist/core/p-0aa06309.entry.js.map +1 -0
- package/dist/core/p-0c02b16c.entry.js +2 -0
- package/dist/core/p-1836fef6.entry.js +2 -0
- package/dist/core/p-1836fef6.entry.js.map +1 -0
- package/dist/core/{p-79ead0e7.entry.js → p-18d5e467.js} +2 -2
- package/dist/core/p-18d5e467.js.map +1 -0
- package/dist/core/p-1ddc08d0.js +2 -0
- package/dist/core/p-1ddc08d0.js.map +1 -0
- package/dist/core/{p-201b41c7.entry.js → p-22267c01.entry.js} +2 -2
- package/dist/core/p-27962d4d.entry.js +2 -0
- package/dist/core/p-384a7f60.entry.js +2 -0
- package/dist/core/p-3ed17bfc.entry.js +2 -0
- package/dist/core/p-3ed17bfc.entry.js.map +1 -0
- package/dist/core/p-42bacb0d.entry.js +2 -0
- package/dist/core/p-42bacb0d.entry.js.map +1 -0
- package/dist/core/p-4385552a.entry.js +2 -0
- package/dist/core/p-4385552a.entry.js.map +1 -0
- package/dist/core/{p-551a0fc1.entry.js → p-510f8257.entry.js} +2 -2
- package/dist/core/p-510f8257.entry.js.map +1 -0
- package/dist/core/{p-939025af.entry.js → p-5585895d.js} +2 -2
- package/dist/core/p-5585895d.js.map +1 -0
- package/dist/core/p-56ef5c79.js +2 -0
- package/dist/core/p-56ef5c79.js.map +1 -0
- package/dist/core/{p-7efdbab8.entry.js → p-5d5b1aa8.js} +2 -2
- package/dist/core/p-5d5b1aa8.js.map +1 -0
- package/dist/core/p-5e14ec1e.entry.js +2 -0
- package/dist/core/p-5e14ec1e.entry.js.map +1 -0
- package/dist/core/p-67a25154.entry.js +2 -0
- package/dist/core/p-67a25154.entry.js.map +1 -0
- package/dist/core/{p-ea1ea1b9.js → p-67a4f674.js} +1 -1
- package/dist/core/p-67a4f674.js.map +1 -0
- package/dist/core/p-6f45df7a.entry.js +2 -0
- package/dist/core/p-6f45df7a.entry.js.map +1 -0
- package/dist/core/{p-33509a89.entry.js → p-7843f9be.js} +2 -2
- package/dist/core/p-7843f9be.js.map +1 -0
- package/dist/core/p-7bbd1881.js +2 -0
- package/dist/core/p-7bbd1881.js.map +1 -0
- package/dist/core/{p-349d91dc.js → p-7d378ee6.js} +3 -3
- package/dist/core/p-7d378ee6.js.map +1 -0
- package/dist/core/p-7e4404fc.entry.js +2 -0
- package/dist/core/p-7e4404fc.entry.js.map +1 -0
- package/dist/core/p-829b34f9.js.map +1 -1
- package/dist/core/p-84129c7e.entry.js +2 -0
- package/dist/core/p-84129c7e.entry.js.map +1 -0
- package/dist/core/p-857362bd.entry.js +2 -0
- package/dist/core/p-857362bd.entry.js.map +1 -0
- package/dist/core/p-883e677d.entry.js +2 -0
- package/dist/core/p-883e677d.entry.js.map +1 -0
- package/dist/core/p-9148bd35.js +2 -0
- package/dist/core/p-9148bd35.js.map +1 -0
- package/dist/core/p-92e447e1.entry.js +2 -0
- package/dist/core/p-92e447e1.entry.js.map +1 -0
- package/dist/core/p-964d0e32.js +2 -0
- package/dist/core/p-964d0e32.js.map +1 -0
- package/dist/core/{p-9ca147f3.entry.js → p-9b218099.js} +2 -2
- package/dist/core/p-9b218099.js.map +1 -0
- package/dist/core/p-a4cb3520.js +2 -0
- package/dist/core/p-a4cb3520.js.map +1 -0
- package/dist/core/p-a50e4bdf.entry.js +2 -0
- package/dist/core/p-a50e4bdf.entry.js.map +1 -0
- package/dist/core/p-b8325ec4.js +2 -0
- package/dist/core/p-b8325ec4.js.map +1 -0
- package/dist/core/p-c1337dbc.entry.js +2 -0
- package/dist/core/p-c1337dbc.entry.js.map +1 -0
- package/dist/core/p-c2669ec9.js +2 -0
- package/dist/core/p-c2669ec9.js.map +1 -0
- package/dist/core/p-c5ac4fcc.entry.js +2 -0
- package/dist/core/p-c5ac4fcc.entry.js.map +1 -0
- package/dist/core/{p-879c180d.entry.js → p-c5d680be.js} +2 -2
- package/dist/core/p-c5d680be.js.map +1 -0
- package/dist/core/p-cd454ff0.entry.js +2 -0
- package/dist/core/p-cd454ff0.entry.js.map +1 -0
- package/dist/core/{p-319e3d5b.entry.js → p-d107dfa8.js} +2 -2
- package/dist/core/p-d107dfa8.js.map +1 -0
- package/dist/core/p-da2a9ddc.js +2 -0
- package/dist/core/p-da2a9ddc.js.map +1 -0
- package/dist/core/p-dc3a13d5.entry.js +2 -0
- package/dist/core/p-dc3a13d5.entry.js.map +1 -0
- package/dist/core/p-f3267773.entry.js +2 -0
- package/dist/core/p-f3267773.entry.js.map +1 -0
- package/dist/core/p-f65f0065.js +2 -0
- package/dist/core/p-f65f0065.js.map +1 -0
- package/dist/core/p-fc239961.entry.js +2 -0
- package/dist/core/p-fc239961.entry.js.map +1 -0
- package/dist/core/p-fd4fd86a.entry.js +2 -0
- package/dist/core/p-fd4fd86a.entry.js.map +1 -0
- package/dist/esm/{OpenInNew-52210a9d.js → OpenInNew-6f820c13.js} +1 -1
- package/dist/esm/OpenInNew-6f820c13.js.map +1 -0
- package/dist/{cjs/purify-039f565a.js → esm/common-helpers-f2174548.js} +18 -3
- package/dist/esm/common-helpers-f2174548.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-063369f4.js → helpers-15fb9b13.js} +2 -117
- package/dist/esm/helpers-15fb9b13.js.map +1 -0
- package/dist/esm/helpers-a08b3f32.js.map +1 -1
- package/dist/esm/ic-badge-5c2b4bc7.js +182 -0
- package/dist/esm/ic-badge-5c2b4bc7.js.map +1 -0
- package/dist/esm/ic-badge.entry.js +3 -180
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-button-2f9b4e8a.js +433 -0
- package/dist/esm/ic-button-2f9b4e8a.js.map +1 -0
- package/dist/esm/ic-button_3.entry.js +6 -876
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-calendar_2.entry.js +22 -13
- package/dist/esm/ic-calendar_2.entry.js.map +1 -1
- package/dist/esm/ic-card-horizontal.entry.js +10 -5
- package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-f21a3f00.js +201 -0
- package/dist/esm/ic-checkbox-f21a3f00.js.map +1 -0
- package/dist/esm/ic-checkbox_3.entry.js +17 -203
- package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
- package/dist/esm/ic-chip-b44cea5b.js +131 -0
- package/dist/esm/ic-chip-b44cea5b.js.map +1 -0
- package/dist/esm/ic-chip.entry.js +3 -122
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +19 -4
- package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
- package/dist/esm/ic-data-table.entry.js +18 -10
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-picker.entry.js +2 -2
- package/dist/esm/ic-input-component-container_4.entry.js +3 -229
- package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
- package/dist/esm/ic-input-validation-cce3bb05.js +254 -0
- package/dist/esm/ic-input-validation-cce3bb05.js.map +1 -0
- package/dist/esm/ic-link-0f6ba1b0.js +109 -0
- package/dist/esm/ic-link-0f6ba1b0.js.map +1 -0
- package/dist/esm/ic-link.entry.js +4 -107
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-loading-indicator-7ec7c6c9.js +231 -0
- package/dist/esm/ic-loading-indicator-7ec7c6c9.js.map +1 -0
- package/dist/esm/ic-menu-c29dda8d.js +985 -0
- package/dist/esm/ic-menu-c29dda8d.js.map +1 -0
- package/dist/esm/ic-menu.entry.js +5 -994
- package/dist/esm/ic-menu.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item-e775ce8c.js +241 -0
- package/dist/esm/ic-navigation-item-e775ce8c.js.map +1 -0
- package/dist/esm/ic-navigation-item.entry.js +4 -235
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-page-header-a4a552fe.js +129 -0
- package/dist/esm/ic-page-header-a4a552fe.js.map +1 -0
- package/dist/esm/ic-page-header.entry.js +3 -127
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination_3.entry.js +6 -0
- package/dist/esm/ic-pagination_3.entry.js.map +1 -0
- package/dist/esm/ic-section-container-3b887eb7.js +32 -0
- package/dist/esm/ic-section-container-3b887eb7.js.map +1 -0
- package/dist/esm/ic-section-container.entry.js +2 -30
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-select-cb04ab16.js +874 -0
- package/dist/esm/ic-select-cb04ab16.js.map +1 -0
- package/dist/esm/ic-skip-link-7c9b8269.js +58 -0
- package/dist/esm/ic-skip-link-7c9b8269.js.map +1 -0
- package/dist/esm/ic-skip-link.entry.js +2 -56
- package/dist/esm/ic-skip-link.entry.js.map +1 -1
- package/dist/esm/ic-status-tag-7395532c.js +53 -0
- package/dist/esm/ic-status-tag-7395532c.js.map +1 -0
- package/dist/esm/ic-status-tag.entry.js +3 -51
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-table-of-contents.entry.js +14 -3
- package/dist/esm/ic-table-of-contents.entry.js.map +1 -1
- package/dist/esm/ic-text-field-73754fc7.js +729 -0
- package/dist/esm/ic-text-field-73754fc7.js.map +1 -0
- package/dist/esm/ic-theme.entry.js +2 -2
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-time-input.entry.js +17 -7
- package/dist/esm/ic-time-input.entry.js.map +1 -1
- package/dist/esm/ic-time-selector.entry.js +53 -170
- package/dist/esm/ic-time-selector.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-c58aaaec.js +449 -0
- package/dist/esm/ic-toggle-button-c58aaaec.js.map +1 -0
- package/dist/esm/ic-toggle-button_2.entry.js +3 -447
- package/dist/esm/ic-toggle-button_2.entry.js.map +1 -1
- package/dist/esm/ic-tooltip-3c856fa7.js +237 -0
- package/dist/esm/ic-tooltip-3c856fa7.js.map +1 -0
- package/dist/esm/ic-top-navigation-ba78648a.js +235 -0
- package/dist/esm/ic-top-navigation-ba78648a.js.map +1 -0
- package/dist/esm/ic-top-navigation.entry.js +3 -230
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +5 -4
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +7 -5
- package/dist/esm/ic-tree-view.entry.js.map +1 -1
- package/dist/esm/ic-typography-9e3efc99.js +196 -0
- package/dist/esm/ic-typography-9e3efc99.js.map +1 -0
- package/dist/esm/ic-typography.entry.js +3 -194
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-a7a720e7.js +6 -170
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-calendar/ic-calendar.d.ts +2 -0
- package/dist/types/components/ic-calendar/ic-day-button.d.ts +1 -0
- package/dist/types/components/ic-calendar/ic-month-picker.d.ts +1 -0
- package/dist/types/components/ic-calendar/ic-year-picker.d.ts +1 -0
- package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +4 -0
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +7 -0
- package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +4 -0
- package/dist/types/components/ic-date-input/ic-date-input.d.ts +7 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +8 -1
- package/dist/types/components/ic-table-of-contents/ic-table-of-contents-item.d.ts +1 -0
- package/dist/types/components/ic-table-of-contents/ic-table-of-contents.d.ts +9 -0
- package/dist/types/components/ic-time-input/ic-time-input.d.ts +10 -1
- package/dist/types/components/ic-time-selector/ic-time-selector.d.ts +4 -10
- package/dist/types/components/ic-time-selector/ic-time-selector.stories.d.ts +48 -13
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +1 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +2 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.stories.d.ts +27 -21
- package/dist/types/components.d.ts +3918 -786
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-badge/ic-badge.d.ts +74 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-badge/ic-badge.types.d.ts +4 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-button/ic-button.d.ts +210 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-button/ic-button.types.d.ts +2 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-checkbox/ic-checkbox.d.ts +90 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-chip/ic-chip.d.ts +75 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-empty-state/ic-empty-state.d.ts +44 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-empty-state/ic-empty-state.types.d.ts +1 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-component-container/ic-input-component-container.d.ts +40 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-container/ic-input-container.d.ts +11 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-label/ic-input-label.d.ts +42 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-validation/ic-input-validation.d.ts +32 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-link/ic-link.d.ts +55 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-loading-indicator/ic-loading-indicator.d.ts +83 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +9 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-menu/ic-menu.d.ts +235 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-menu/ic-menu.types.d.ts +12 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-navigation-item/ic-navigation-item.d.ts +102 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-page-header/ic-page-header.d.ts +61 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-pagination/ic-pagination.d.ts +102 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-pagination/ic-pagination.types.d.ts +6 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-search-bar/ic-search-bar.types.d.ts +5 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-section-container/ic-section-container.d.ts +12 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-select/ic-select.d.ts +282 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-side-navigation/ic-side-navigation.types.d.ts +13 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-skip-link/ic-skip-link.d.ts +38 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-status-tag/ic-status-tag.d.ts +35 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-status-tag/ic-status-tag.types.d.ts +1 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-text-field/ic-text-field.d.ts +262 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-text-field/ic-text-field.types.d.ts +8 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-theme/ic-theme.d.ts +28 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-toggle-button/ic-toggle-button.d.ts +75 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +92 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-toggle-button-group/ic-toggle-button-group.types.d.ts +7 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-tooltip/ic-tooltip.d.ts +82 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-tooltip/ic-tooltip.types.d.ts +1 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-top-navigation/ic-top-navigation.d.ts +102 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-typography/ic-typography.d.ts +83 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/helpers.d.ts +167 -0
- package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/types.d.ts +98 -0
- package/dist/types/utils/types.d.ts +1 -2
- package/hydrate/index.js +12979 -20485
- package/hydrate/index.mjs +12979 -20485
- package/package.json +14 -20
- package/dist/cjs/OpenInNew-7bac24f7.js.map +0 -1
- package/dist/cjs/check-icon-dd563898.js +0 -10
- package/dist/cjs/check-icon-dd563898.js.map +0 -1
- package/dist/cjs/chevron-icon-3dedd973.js +0 -10
- package/dist/cjs/chevron-icon-3dedd973.js.map +0 -1
- package/dist/cjs/close-icon-d62b369d.js +0 -12
- package/dist/cjs/close-icon-d62b369d.js.map +0 -1
- package/dist/cjs/common-helpers-944cb54d.js +0 -21
- package/dist/cjs/common-helpers-944cb54d.js.map +0 -1
- package/dist/cjs/helpers-2cc5f6db.js.map +0 -1
- package/dist/cjs/ic-accordion-group.cjs.entry.js +0 -137
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +0 -150
- package/dist/cjs/ic-accordion.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-action-chip.cjs.entry.js +0 -116
- package/dist/cjs/ic-action-chip.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-alert.cjs.entry.js +0 -136
- package/dist/cjs/ic-alert.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +0 -168
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +0 -241
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +0 -118
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +0 -171
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +0 -127
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +0 -67
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +0 -38
- package/dist/cjs/ic-data-list.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +0 -88
- package/dist/cjs/ic-data-row.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +0 -388
- package/dist/cjs/ic-dialog.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-divider.cjs.entry.js +0 -114
- package/dist/cjs/ic-divider.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +0 -69
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +0 -65
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-footer.cjs.entry.js +0 -119
- package/dist/cjs/ic-footer.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-hero.cjs.entry.js +0 -104
- package/dist/cjs/ic-hero.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +0 -196
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-layout-grid-item.cjs.entry.js +0 -70
- package/dist/cjs/ic-layout-grid-item.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-layout-grid.cjs.entry.js +0 -156
- package/dist/cjs/ic-layout-grid.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +0 -25
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +0 -121
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +0 -124
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +0 -293
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +0 -149
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +0 -1647
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +0 -308
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +0 -264
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +0 -173
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +0 -606
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +0 -488
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +0 -47
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-step.cjs.entry.js +0 -155
- package/dist/cjs/ic-step.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +0 -288
- package/dist/cjs/ic-stepper.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-switch.cjs.entry.js +0 -124
- package/dist/cjs/ic-switch.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +0 -250
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +0 -40
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +0 -42
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-tab.cjs.entry.js +0 -112
- package/dist/cjs/ic-tab.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js +0 -59
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-toast.cjs.entry.js +0 -239
- package/dist/cjs/ic-toast.cjs.entry.js.map +0 -1
- package/dist/cjs/purify-039f565a.js.map +0 -1
- package/dist/components/check-icon.js +0 -8
- package/dist/components/check-icon.js.map +0 -1
- package/dist/components/chevron-icon.js +0 -8
- package/dist/components/chevron-icon.js.map +0 -1
- package/dist/components/close-icon.js +0 -10
- package/dist/components/close-icon.js.map +0 -1
- package/dist/components/ic-accordion-group.js +0 -188
- package/dist/components/ic-accordion-group.js.map +0 -1
- package/dist/components/ic-accordion.js +0 -181
- package/dist/components/ic-accordion.js.map +0 -1
- package/dist/components/ic-action-chip.js +0 -160
- package/dist/components/ic-action-chip.js.map +0 -1
- package/dist/components/ic-alert.js +0 -187
- package/dist/components/ic-alert.js.map +0 -1
- package/dist/components/ic-back-to-top.js +0 -216
- package/dist/components/ic-back-to-top.js.map +0 -1
- package/dist/components/ic-breadcrumb-group.js +0 -278
- package/dist/components/ic-breadcrumb-group.js.map +0 -1
- package/dist/components/ic-breadcrumb.js +0 -8
- package/dist/components/ic-breadcrumb.js.map +0 -1
- package/dist/components/ic-breadcrumb2.js +0 -145
- package/dist/components/ic-breadcrumb2.js.map +0 -1
- package/dist/components/ic-card-vertical.js +0 -219
- package/dist/components/ic-card-vertical.js.map +0 -1
- package/dist/components/ic-checkbox-group.js +0 -176
- package/dist/components/ic-checkbox-group.js.map +0 -1
- package/dist/components/ic-classification-banner.js +0 -93
- package/dist/components/ic-classification-banner.js.map +0 -1
- package/dist/components/ic-data-list.js +0 -62
- package/dist/components/ic-data-list.js.map +0 -1
- package/dist/components/ic-data-row.js +0 -115
- package/dist/components/ic-data-row.js.map +0 -1
- package/dist/components/ic-dialog.js +0 -445
- package/dist/components/ic-dialog.js.map +0 -1
- package/dist/components/ic-divider.js +0 -8
- package/dist/components/ic-divider.js.map +0 -1
- package/dist/components/ic-divider2.js +0 -139
- package/dist/components/ic-divider2.js.map +0 -1
- package/dist/components/ic-footer-link-group.js +0 -101
- package/dist/components/ic-footer-link-group.js.map +0 -1
- package/dist/components/ic-footer-link.js +0 -95
- package/dist/components/ic-footer-link.js.map +0 -1
- package/dist/components/ic-footer.js +0 -155
- package/dist/components/ic-footer.js.map +0 -1
- package/dist/components/ic-hero.js +0 -145
- package/dist/components/ic-hero.js.map +0 -1
- package/dist/components/ic-horizontal-scroll.js +0 -8
- package/dist/components/ic-horizontal-scroll.js.map +0 -1
- package/dist/components/ic-horizontal-scroll2.js +0 -240
- package/dist/components/ic-horizontal-scroll2.js.map +0 -1
- package/dist/components/ic-layout-grid-item.js +0 -95
- package/dist/components/ic-layout-grid-item.js.map +0 -1
- package/dist/components/ic-layout-grid.js +0 -188
- package/dist/components/ic-layout-grid.js.map +0 -1
- package/dist/components/ic-menu-group.js +0 -47
- package/dist/components/ic-menu-group.js.map +0 -1
- package/dist/components/ic-menu-item.js +0 -8
- package/dist/components/ic-menu-item.js.map +0 -1
- package/dist/components/ic-menu-item2.js +0 -171
- package/dist/components/ic-menu-item2.js.map +0 -1
- package/dist/components/ic-navigation-button.js +0 -174
- package/dist/components/ic-navigation-button.js.map +0 -1
- package/dist/components/ic-navigation-group.js +0 -326
- package/dist/components/ic-navigation-group.js.map +0 -1
- package/dist/components/ic-navigation-menu.js +0 -8
- package/dist/components/ic-navigation-menu.js.map +0 -1
- package/dist/components/ic-navigation-menu2.js +0 -188
- package/dist/components/ic-navigation-menu2.js.map +0 -1
- package/dist/components/ic-pagination-item.js +0 -8
- package/dist/components/ic-pagination-item.js.map +0 -1
- package/dist/components/ic-pagination-item2.js +0 -107
- package/dist/components/ic-pagination-item2.js.map +0 -1
- package/dist/components/ic-popover-menu.js +0 -369
- package/dist/components/ic-popover-menu.js.map +0 -1
- package/dist/components/ic-radio-group.js +0 -317
- package/dist/components/ic-radio-group.js.map +0 -1
- package/dist/components/ic-radio-option.js +0 -209
- package/dist/components/ic-radio-option.js.map +0 -1
- package/dist/components/ic-search-bar.js +0 -719
- package/dist/components/ic-search-bar.js.map +0 -1
- package/dist/components/ic-side-navigation.js +0 -553
- package/dist/components/ic-side-navigation.js.map +0 -1
- package/dist/components/ic-skeleton.js +0 -64
- package/dist/components/ic-skeleton.js.map +0 -1
- package/dist/components/ic-step.js +0 -198
- package/dist/components/ic-step.js.map +0 -1
- package/dist/components/ic-stepper.js +0 -320
- package/dist/components/ic-stepper.js.map +0 -1
- package/dist/components/ic-switch.js +0 -166
- package/dist/components/ic-switch.js.map +0 -1
- package/dist/components/ic-tab-context.js +0 -276
- package/dist/components/ic-tab-context.js.map +0 -1
- package/dist/components/ic-tab-group.js +0 -89
- package/dist/components/ic-tab-group.js.map +0 -1
- package/dist/components/ic-tab-panel.js +0 -63
- package/dist/components/ic-tab-panel.js.map +0 -1
- package/dist/components/ic-tab.js +0 -143
- package/dist/components/ic-tab.js.map +0 -1
- package/dist/components/ic-toast-region.js +0 -76
- package/dist/components/ic-toast-region.js.map +0 -1
- package/dist/components/ic-toast.js +0 -293
- package/dist/components/ic-toast.js.map +0 -1
- package/dist/components/purify.js +0 -1363
- package/dist/components/purify.js.map +0 -1
- package/dist/core/p-04cb17d7.entry.js +0 -2
- package/dist/core/p-04cb17d7.entry.js.map +0 -1
- package/dist/core/p-08f24329.entry.js +0 -2
- package/dist/core/p-08f24329.entry.js.map +0 -1
- package/dist/core/p-0aa9ce8b.js +0 -2
- package/dist/core/p-14b8bf37.entry.js +0 -2
- package/dist/core/p-14b8bf37.entry.js.map +0 -1
- package/dist/core/p-169ad948.entry.js +0 -2
- package/dist/core/p-169ad948.entry.js.map +0 -1
- package/dist/core/p-170ddfc2.js +0 -2
- package/dist/core/p-1cc402b8.entry.js +0 -2
- package/dist/core/p-1cc402b8.entry.js.map +0 -1
- package/dist/core/p-1d166343.entry.js +0 -2
- package/dist/core/p-1d166343.entry.js.map +0 -1
- package/dist/core/p-319e3d5b.entry.js.map +0 -1
- package/dist/core/p-33509a89.entry.js.map +0 -1
- package/dist/core/p-3389625c.entry.js +0 -2
- package/dist/core/p-3389625c.entry.js.map +0 -1
- package/dist/core/p-344752cb.entry.js +0 -2
- package/dist/core/p-344752cb.entry.js.map +0 -1
- package/dist/core/p-348d7080.entry.js +0 -2
- package/dist/core/p-348d7080.entry.js.map +0 -1
- package/dist/core/p-349d91dc.js.map +0 -1
- package/dist/core/p-39cdf5db.entry.js +0 -2
- package/dist/core/p-39cdf5db.entry.js.map +0 -1
- package/dist/core/p-496b314f.entry.js +0 -2
- package/dist/core/p-496b314f.entry.js.map +0 -1
- package/dist/core/p-508b6da3.entry.js +0 -2
- package/dist/core/p-508b6da3.entry.js.map +0 -1
- package/dist/core/p-5254a078.entry.js +0 -2
- package/dist/core/p-5254a078.entry.js.map +0 -1
- package/dist/core/p-53740194.entry.js +0 -2
- package/dist/core/p-53740194.entry.js.map +0 -1
- package/dist/core/p-551a0fc1.entry.js.map +0 -1
- package/dist/core/p-5e6687a8.entry.js +0 -2
- package/dist/core/p-5e6687a8.entry.js.map +0 -1
- package/dist/core/p-60f4fe3a.entry.js +0 -2
- package/dist/core/p-60f4fe3a.entry.js.map +0 -1
- package/dist/core/p-61c92598.entry.js +0 -2
- package/dist/core/p-61c92598.entry.js.map +0 -1
- package/dist/core/p-6323da7a.entry.js +0 -2
- package/dist/core/p-6323da7a.entry.js.map +0 -1
- package/dist/core/p-67c3985d.entry.js +0 -2
- package/dist/core/p-67c3985d.entry.js.map +0 -1
- package/dist/core/p-691dd972.entry.js +0 -2
- package/dist/core/p-691dd972.entry.js.map +0 -1
- package/dist/core/p-6dfe0922.entry.js +0 -2
- package/dist/core/p-6dfe0922.entry.js.map +0 -1
- package/dist/core/p-71cc5909.entry.js +0 -2
- package/dist/core/p-71cc5909.entry.js.map +0 -1
- package/dist/core/p-770e92cd.entry.js +0 -2
- package/dist/core/p-770e92cd.entry.js.map +0 -1
- package/dist/core/p-79ead0e7.entry.js.map +0 -1
- package/dist/core/p-7b4b45cf.entry.js +0 -2
- package/dist/core/p-7b4b45cf.entry.js.map +0 -1
- package/dist/core/p-7efdbab8.entry.js.map +0 -1
- package/dist/core/p-802a4bd3.entry.js +0 -2
- package/dist/core/p-802a4bd3.entry.js.map +0 -1
- package/dist/core/p-879c180d.entry.js.map +0 -1
- package/dist/core/p-8830011c.entry.js +0 -2
- package/dist/core/p-8830011c.entry.js.map +0 -1
- package/dist/core/p-8ab37b4d.entry.js +0 -2
- package/dist/core/p-8ab37b4d.entry.js.map +0 -1
- package/dist/core/p-939025af.entry.js.map +0 -1
- package/dist/core/p-939b168a.entry.js +0 -2
- package/dist/core/p-939b168a.entry.js.map +0 -1
- package/dist/core/p-9674b63f.entry.js +0 -2
- package/dist/core/p-9674b63f.entry.js.map +0 -1
- package/dist/core/p-9ca147f3.entry.js.map +0 -1
- package/dist/core/p-9dea5764.entry.js +0 -2
- package/dist/core/p-9dea5764.entry.js.map +0 -1
- package/dist/core/p-a422b778.js +0 -2
- package/dist/core/p-a422b778.js.map +0 -1
- package/dist/core/p-a88e61b2.entry.js +0 -2
- package/dist/core/p-a88e61b2.entry.js.map +0 -1
- package/dist/core/p-a8a92e54.entry.js +0 -2
- package/dist/core/p-a8a92e54.entry.js.map +0 -1
- package/dist/core/p-a94a7b71.entry.js +0 -2
- package/dist/core/p-a94a7b71.entry.js.map +0 -1
- package/dist/core/p-ad551a0c.entry.js +0 -2
- package/dist/core/p-ad551a0c.entry.js.map +0 -1
- package/dist/core/p-adde6c66.entry.js +0 -2
- package/dist/core/p-adde6c66.entry.js.map +0 -1
- package/dist/core/p-b434bd7c.entry.js +0 -2
- package/dist/core/p-b434bd7c.entry.js.map +0 -1
- package/dist/core/p-b4a2f6fa.entry.js +0 -2
- package/dist/core/p-b4a2f6fa.entry.js.map +0 -1
- package/dist/core/p-c0a7eed7.entry.js +0 -2
- package/dist/core/p-c0a7eed7.entry.js.map +0 -1
- package/dist/core/p-c0b227d2.entry.js +0 -2
- package/dist/core/p-c0b227d2.entry.js.map +0 -1
- package/dist/core/p-c32f043e.entry.js +0 -2
- package/dist/core/p-c32f043e.entry.js.map +0 -1
- package/dist/core/p-c4b2774d.entry.js.map +0 -1
- package/dist/core/p-c9525aac.entry.js +0 -2
- package/dist/core/p-c9525aac.entry.js.map +0 -1
- package/dist/core/p-ca05573a.entry.js +0 -2
- package/dist/core/p-ca05573a.entry.js.map +0 -1
- package/dist/core/p-d0607a70.entry.js +0 -2
- package/dist/core/p-d0607a70.entry.js.map +0 -1
- package/dist/core/p-d528d856.entry.js +0 -2
- package/dist/core/p-d528d856.entry.js.map +0 -1
- package/dist/core/p-da1c2883.entry.js +0 -2
- package/dist/core/p-da1c2883.entry.js.map +0 -1
- package/dist/core/p-e081702e.js +0 -2
- package/dist/core/p-e2e556ec.entry.js +0 -2
- package/dist/core/p-e2e556ec.entry.js.map +0 -1
- package/dist/core/p-e519f607.js +0 -2
- package/dist/core/p-e519f607.js.map +0 -1
- package/dist/core/p-e5c6d01a.entry.js +0 -2
- package/dist/core/p-e5c6d01a.entry.js.map +0 -1
- package/dist/core/p-e8db8772.entry.js +0 -2
- package/dist/core/p-e8db8772.entry.js.map +0 -1
- package/dist/core/p-ea04103e.entry.js +0 -2
- package/dist/core/p-ea04103e.entry.js.map +0 -1
- package/dist/core/p-eaeb473e.entry.js +0 -2
- package/dist/core/p-eaeb473e.entry.js.map +0 -1
- package/dist/core/p-ecc7fd71.entry.js +0 -2
- package/dist/core/p-ecc7fd71.entry.js.map +0 -1
- package/dist/core/p-efe260f0.entry.js +0 -2
- package/dist/core/p-efe260f0.entry.js.map +0 -1
- package/dist/core/p-f1b57f91.entry.js +0 -2
- package/dist/core/p-f1b57f91.entry.js.map +0 -1
- package/dist/core/p-f5dc04f7.entry.js +0 -2
- package/dist/core/p-f5dc04f7.entry.js.map +0 -1
- package/dist/core/p-fb07921b.entry.js +0 -2
- package/dist/core/p-fb07921b.entry.js.map +0 -1
- package/dist/core/p-fd08156a.entry.js +0 -2
- package/dist/core/p-fd08156a.entry.js.map +0 -1
- package/dist/core/p-fe5b51bb.entry.js +0 -2
- package/dist/core/p-fe5b51bb.entry.js.map +0 -1
- package/dist/core/p-ff618439.entry.js +0 -2
- package/dist/core/p-ff618439.entry.js.map +0 -1
- package/dist/esm/OpenInNew-52210a9d.js.map +0 -1
- package/dist/esm/check-icon-f2346e76.js +0 -8
- package/dist/esm/check-icon-f2346e76.js.map +0 -1
- package/dist/esm/chevron-icon-875b7af2.js +0 -8
- package/dist/esm/chevron-icon-875b7af2.js.map +0 -1
- package/dist/esm/close-icon-c9e09475.js +0 -10
- package/dist/esm/close-icon-c9e09475.js.map +0 -1
- package/dist/esm/common-helpers-86c07ff1.js +0 -19
- package/dist/esm/common-helpers-86c07ff1.js.map +0 -1
- package/dist/esm/helpers-063369f4.js.map +0 -1
- package/dist/esm/ic-accordion-group.entry.js +0 -133
- package/dist/esm/ic-accordion-group.entry.js.map +0 -1
- package/dist/esm/ic-accordion.entry.js +0 -146
- package/dist/esm/ic-accordion.entry.js.map +0 -1
- package/dist/esm/ic-action-chip.entry.js +0 -112
- package/dist/esm/ic-action-chip.entry.js.map +0 -1
- package/dist/esm/ic-alert.entry.js +0 -132
- package/dist/esm/ic-alert.entry.js.map +0 -1
- package/dist/esm/ic-back-to-top.entry.js +0 -164
- package/dist/esm/ic-back-to-top.entry.js.map +0 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +0 -237
- package/dist/esm/ic-breadcrumb-group.entry.js.map +0 -1
- package/dist/esm/ic-breadcrumb.entry.js +0 -114
- package/dist/esm/ic-breadcrumb.entry.js.map +0 -1
- package/dist/esm/ic-card-vertical.entry.js +0 -167
- package/dist/esm/ic-card-vertical.entry.js.map +0 -1
- package/dist/esm/ic-checkbox-group.entry.js +0 -123
- package/dist/esm/ic-checkbox-group.entry.js.map +0 -1
- package/dist/esm/ic-classification-banner.entry.js +0 -63
- package/dist/esm/ic-classification-banner.entry.js.map +0 -1
- package/dist/esm/ic-data-list.entry.js +0 -34
- package/dist/esm/ic-data-list.entry.js.map +0 -1
- package/dist/esm/ic-data-row.entry.js +0 -84
- package/dist/esm/ic-data-row.entry.js.map +0 -1
- package/dist/esm/ic-dialog.entry.js +0 -384
- package/dist/esm/ic-dialog.entry.js.map +0 -1
- package/dist/esm/ic-divider.entry.js +0 -110
- package/dist/esm/ic-divider.entry.js.map +0 -1
- package/dist/esm/ic-footer-link-group.entry.js +0 -65
- package/dist/esm/ic-footer-link-group.entry.js.map +0 -1
- package/dist/esm/ic-footer-link.entry.js +0 -61
- package/dist/esm/ic-footer-link.entry.js.map +0 -1
- package/dist/esm/ic-footer.entry.js +0 -115
- package/dist/esm/ic-footer.entry.js.map +0 -1
- package/dist/esm/ic-hero.entry.js +0 -100
- package/dist/esm/ic-hero.entry.js.map +0 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +0 -192
- package/dist/esm/ic-horizontal-scroll.entry.js.map +0 -1
- package/dist/esm/ic-layout-grid-item.entry.js +0 -66
- package/dist/esm/ic-layout-grid-item.entry.js.map +0 -1
- package/dist/esm/ic-layout-grid.entry.js +0 -152
- package/dist/esm/ic-layout-grid.entry.js.map +0 -1
- package/dist/esm/ic-menu-group.entry.js +0 -21
- package/dist/esm/ic-menu-group.entry.js.map +0 -1
- package/dist/esm/ic-menu-item.entry.js +0 -117
- package/dist/esm/ic-menu-item.entry.js.map +0 -1
- package/dist/esm/ic-navigation-button.entry.js +0 -120
- package/dist/esm/ic-navigation-button.entry.js.map +0 -1
- package/dist/esm/ic-navigation-group.entry.js +0 -289
- package/dist/esm/ic-navigation-group.entry.js.map +0 -1
- package/dist/esm/ic-navigation-menu.entry.js +0 -145
- package/dist/esm/ic-navigation-menu.entry.js.map +0 -1
- package/dist/esm/ic-pagination_4.entry.js +0 -1640
- package/dist/esm/ic-pagination_4.entry.js.map +0 -1
- package/dist/esm/ic-popover-menu.entry.js +0 -304
- package/dist/esm/ic-popover-menu.entry.js.map +0 -1
- package/dist/esm/ic-radio-group.entry.js +0 -260
- package/dist/esm/ic-radio-group.entry.js.map +0 -1
- package/dist/esm/ic-radio-option.entry.js +0 -169
- package/dist/esm/ic-radio-option.entry.js.map +0 -1
- package/dist/esm/ic-search-bar.entry.js +0 -602
- package/dist/esm/ic-search-bar.entry.js.map +0 -1
- package/dist/esm/ic-side-navigation.entry.js +0 -484
- package/dist/esm/ic-side-navigation.entry.js.map +0 -1
- package/dist/esm/ic-skeleton.entry.js +0 -43
- package/dist/esm/ic-skeleton.entry.js.map +0 -1
- package/dist/esm/ic-step.entry.js +0 -151
- package/dist/esm/ic-step.entry.js.map +0 -1
- package/dist/esm/ic-stepper.entry.js +0 -284
- package/dist/esm/ic-stepper.entry.js.map +0 -1
- package/dist/esm/ic-switch.entry.js +0 -120
- package/dist/esm/ic-switch.entry.js.map +0 -1
- package/dist/esm/ic-tab-context.entry.js +0 -246
- package/dist/esm/ic-tab-context.entry.js.map +0 -1
- package/dist/esm/ic-tab-group.entry.js +0 -36
- package/dist/esm/ic-tab-group.entry.js.map +0 -1
- package/dist/esm/ic-tab-panel.entry.js +0 -38
- package/dist/esm/ic-tab-panel.entry.js.map +0 -1
- package/dist/esm/ic-tab.entry.js +0 -108
- package/dist/esm/ic-tab.entry.js.map +0 -1
- package/dist/esm/ic-toast-region.entry.js +0 -55
- package/dist/esm/ic-toast-region.entry.js.map +0 -1
- package/dist/esm/ic-toast.entry.js +0 -235
- package/dist/esm/ic-toast.entry.js.map +0 -1
- package/dist/esm/purify-6eaa9893.js.map +0 -1
- /package/dist/core/{p-0aa9ce8b.js.map → p-02d0a238.entry.js.map} +0 -0
- /package/dist/core/{p-170ddfc2.js.map → p-0c02b16c.entry.js.map} +0 -0
- /package/dist/core/{p-201b41c7.entry.js.map → p-22267c01.entry.js.map} +0 -0
- /package/dist/core/{p-e081702e.js.map → p-27962d4d.entry.js.map} +0 -0
- /package/dist/core/{p-ea1ea1b9.js.map → p-384a7f60.entry.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["icMenuCss","IcMenuStyle0","Menu","constructor","hostRef","this","ACTIVE_DESCENDANT","CLEAR_BUTTON_ID","SEARCH_BAR_TAG","disabledOptionSelected","hasPreviouslyBlurred","hasTimedOut","isLoading","lastOptionSelected","lastOptionFocused","multiOptionClicked","preventClickOpen","preventMenuFocus","shiftPressed","ungroupedOptions","focusFromSearchKeypress","initialOptionsListRender","keyboardNav","preventIncorrectTabOrder","popperProps","activationType","autofocusOnSelected","closeOnSelect","fullWidth","labelField","multiSelect","searchableSelect","searchBar","searchMode","selectOnEnter","size","valueField","handleClearListener","optionHighlighted","handleSubmitSearch","highlightedOptionIndex","options","findIndex","option","setInputValue","handleMenuChange","open","focusInput","menuStateChange","emit","_a","inputEl","focus","undefined","setNextOptionValue","selectedOptionIndex","menuOptionSelect","value","optionId","getOptionId","setPreviousOptionValue","length","arrowBehaviour","event","preventDefault","getMenuOptions","setHighlightedOption","highlightedIndex","menuOptions","timedOut","autoSetInputValueKeyboardOpen","key","target","id","selectHighlightedOption","isOpen","disabled","isOptionSelected","index","includes","deselectSelectedOptions","optionsToKeepSelected","selectedOptionIndexes","map","forEach","manualSetInputValueKeyboardOpen","isKeyboardCombination","shiftKey","metaKey","ctrlKey","getOptionHighlightedIndex","clickedMultiOptionIndex","Array","from","host","querySelectorAll","handleOptionSelect","handleSingleShiftSelect","menuOptionId","startOptionIndex","handleMultipleShiftSelect","endOptionIndex","stopImmediatePropagation","isMacDevice","emitSelectAllEvents","selectAllButton","focusOnSearchOrSelectInput","parentEl","setFocus","handleOptionClick","label","dataset","handleRetry","retryButtonClicked","handleRetryKeyDown","ev","keyPressed","handleBlur","relatedTarget","menu","removeAttribute","_b","contains","_c","_d","handleMouseDown","handleMenuKeyDown","autoSetValueOnMenuKeyDown","handleMenuKeyUp","handleSelectAllClick","handleSelectAllBlur","classList","remove","handleSelectAllFocus","add","handleSelectAllMouseDown","optionToSelectIndex","lastOptionInSelection","useFocusForSelection","firstOptionSelected","firstOptionInSelection","getFirstOptionInSelection","optionsToSelect","i","push","optionIndex","menuOptionSelectAll","select","icClear","emitMenuKeyPress","isNavKey","menuKeyPress","cancelBubble","isSearchableSelect","tagName","menuId","getOptionAriaLabel","parentOption","ariaLabel","description","element","getSortedOptions","sorted","sort","optionA","optionB","recommended","isManualMode","scrollToSelected","selectedOption","querySelector","elTop","offsetTop","offsetHeight","scrollTop","setAttribute","loadUngroupedOptions","children","ungroupedOptionsSet","setMenuScrollbar","optionsHeight","clientHeight","handleTimeoutBlur","timeoutBlur","optionContent","selected","showCheckIcon","h","Fragment","loading","class","icon","hideLabel","innerHTML","sanitizeHTMLIconString","variant","sanitizeHTMLString","component","Check","displayOption","Object","assign","timeout","role","tabindex","onClick","onBlur","onMouseDown","htmlProps","xmlns","viewBox","fill","d","onKeyDown","watchOpenHandler","popperInstance","destroy","watchOptionsHandler","newOptions","some","opt","connectedCallback","disconnectedCallback","removeEventListener","componentWillLoad","addEventListener","componentDidLoad","disableAutoFiltering","onComponentRequiredPropUndefined","prop","propName","inputLabel","componentDidUpdate","inputValueInOptions","highlightedEl","componentDidRender","anchorEl","initPopperJs","handleClickOpen","handleKeyboardOpen","handleSetFirstOption","anchor","createPopper","placement","modifiers","name","offset","fallbackPlacements","rootBoundary","setExternalPopperProps","props","render","selectAllButtonText","hasNoResults","Host","ref","el","onKeyUp","childOption","getOptionsWithoutGroupTitlesCount","onFocus"],"sources":["../web-components/src/components/ic-menu/ic-menu.css?tag=ic-menu&encapsulation=scoped","../web-components/src/components/ic-menu/ic-menu.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-menu: z-index of menu\n */\n\n@media (prefers-reduced-motion: no-preference) {\n :host(.ic-menu-open) .menu {\n transition: max-height var(--ic-transition-duration-slow);\n }\n}\n\n:host {\n max-height: 0;\n width: var(--menu-width, var(--input-width, 20rem));\n color: var(--menu-item-text-color, var(--ic-menu-list-option-text-color));\n\n --ic-typography-color: var(\n --menu-item-text-color,\n var(--ic-menu-list-option-text-color)\n );\n\n background-color: var(\n --menu-bg-color,\n var(--ic-menu-list-option-background-color)\n );\n position: relative;\n z-index: var(--ic-z-index-menu);\n box-sizing: border-box;\n box-shadow: var(--ic-elevation-overlay);\n border-radius: var(--ic-border-radius);\n}\n\n:host(.ic-menu-open:not(.ic-menu-no-focus):focus-within) {\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.ic-select-select-all-focused) {\n box-shadow: var(--ic-elevation-overlay) !important;\n}\n\n#retry-button::part(button) {\n height: var(--ic-space-lg);\n}\n\n.small #retry-button::part(button) {\n height: var(--ic-space-md);\n}\n\n:host(.on-dialog) {\n inset: auto !important;\n}\n\n.menu {\n text-decoration: none;\n list-style-type: none;\n border-radius: 1px;\n background-color: var(\n --menu-bg-color,\n var(--ic-menu-list-option-background-color)\n );\n visibility: hidden;\n max-height: 0;\n overflow-y: hidden;\n}\n\n.menu:has(+ .option-bar) {\n border-radius: 0 0 1px 1px;\n}\n\n.menu-scroll {\n overflow-y: auto;\n}\n\n.menu:focus-visible {\n outline: none;\n}\n\n:host(.ic-menu-open) {\n max-height: none;\n display: flex;\n flex-direction: column-reverse;\n border: var(--ic-border-width) solid\n var(--menu-border-color, var(--ic-menu-border-color));\n transition: box-shadow var(--ic-easing-transition-fast);\n}\n\n:host(.ic-menu-open) .menu {\n visibility: visible;\n max-height: calc(var(--ic-space-xl) * 10 + var(--ic-space-xxxs));\n}\n\n:host(.ic-menu-open) .option-bar {\n visibility: visible;\n}\n\n:host(.ic-menu-open) .select-all-button {\n display: block;\n}\n\n:host(.ic-menu-full-width) {\n width: 100%;\n}\n\n.option {\n padding: var(--ic-space-xs) calc(var(--ic-space-xs) - var(--ic-space-1px));\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.loading-option p {\n margin-bottom: 0 !important;\n}\n\n.option:not(.loading-option) {\n justify-content: space-between;\n}\n\n:host(.ic-menu-small) .option {\n padding: var(--ic-space-xxs) calc(var(--ic-space-xs) - var(--ic-space-1px));\n}\n\n:host(.ic-menu-large) .option {\n padding: var(--ic-space-sm) calc(var(--ic-space-xs) - var(--ic-space-1px));\n}\n\n.option:last-child {\n border-radius: 0 0 1px 1px;\n}\n\n:not(.menu:has(+ .option-bar)) .option:first-child {\n border-radius: 1px 1px 0 0;\n}\n\n.option:not(.disabled-option):hover {\n background-color: var(--ic-menu-list-option-hover-background-color);\n}\n\n.option:not(.disabled-option):active {\n background-color: var(--ic-menu-list-option-pressed-background-color);\n}\n\n.option:focus-visible {\n outline: var(--ic-hc-focus-outline);\n}\n\n.option:not(.disabled-option) .option-description {\n --ic-typography-color: var(\n --menu-item-desc-text-color,\n var(--ic-menu-list-option-description-text-color)\n );\n}\n\n.option .option-label {\n display: flex;\n flex-direction: row;\n align-items: top;\n}\n\n.option .option-label ic-typography {\n max-width: 100%;\n word-wrap: break-word;\n}\n\n.option .option-element {\n margin-top: var(--ic-space-xxs);\n}\n\n.option .option-icon {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n margin-top: var(--ic-space-xxs);\n margin-right: var(--ic-space-xxs);\n}\n\n.option-text-container {\n pointer-events: none;\n width: 100%;\n}\n\n.option-text-container.show-check-icon {\n flex-grow: 1;\n}\n\n.option.loading-option .option-text-container {\n margin-left: calc(var(--ic-space-xs) + var(--ic-space-xxxs));\n color: var(--ic-menu-loading-list-option-text-color);\n\n --ic-typography-color: var(--ic-menu-loading-list-option-text-color);\n}\n\n.error-icon-svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n fill: var(--ic-atoms-status-icon-error);\n align-self: center;\n display: flex;\n margin-right: calc(var(--ic-space-xxs) * 1.2);\n}\n\n.loading-error-info {\n display: flex;\n}\n\n.check-icon {\n height: var(--ic-space-lg);\n min-width: var(--ic-space-lg);\n width: var(--ic-space-lg);\n pointer-events: none;\n}\n\n.focused-option .check-icon * {\n fill: currentcolor;\n}\n\n.option-group-title {\n padding: var(--ic-space-lg) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xs);\n\n --ic-typography-color: var(--ic-menu-option-group-label-text-color);\n}\n\n:host(.ic-menu-small) .option-group-title {\n padding: var(--ic-space-sm) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xxs);\n}\n\n.last-recommended-option {\n border-bottom: var(--ic-menu-last-recommended-option-border);\n}\n\n.disabled-option {\n color: var(--ic-atoms-list-option-text-disabled-light);\n\n --ic-typography-color: var(--ic-atoms-list-option-text-disabled-light);\n\n cursor: default;\n pointer-events: none;\n}\n\n.focused-option,\n.focused-option .option-description {\n background-color: var(--ic-color-focus-inner) !important;\n color: var(--ic-atoms-list-option-text-focused-light) !important;\n\n --ic-typography-color: var(\n --ic-atoms-list-option-text-focused-light\n ) !important;\n}\n\n:host(.no-results) li {\n cursor: no-drop;\n}\n\n:host(.no-results) li:hover {\n background-color: transparent;\n}\n\n.option-bar {\n padding: var(--ic-space-xxs) var(--ic-space-xs);\n display: flex;\n align-items: center;\n justify-content: space-between;\n background-color: var(--ic-menu-option-bar-background-color);\n visibility: hidden;\n border-bottom: var(--ic-border-width) solid\n var(--ic-menu-option-bar-divider-color);\n border-radius: 1px 1px 0 0;\n}\n\n.option-bar p {\n margin-bottom: 0 !important;\n}\n\n:host(.ic-menu-large) .option-bar {\n padding: var(--ic-space-xs);\n}\n\n.select-all-button {\n display: none;\n}\n\n.select-all-button:focus {\n z-index: calc(var(--ic-z-index-menu) + 1);\n}\n\n@media (forced-colors: active) {\n .focused-option:focus {\n outline: none;\n border: 0.125rem solid transparent;\n }\n\n .disabled-option {\n color: GrayText;\n\n --ic-typography-color: GrayText;\n }\n}\n\n/* Breakpoint value chosen as it's a small amount bigger than the menu's default width */\n@media screen AND (max-width: 22rem) {\n :host {\n max-width: var(--menu-width, var(--input-width, 20rem));\n width: 100%;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Method,\n State,\n Watch,\n Fragment,\n} from \"@stencil/core\";\nimport {\n createPopper,\n Instance as PopperInstance,\n Options,\n} from \"@popperjs/core\";\n\nimport {\n IcActivationTypes,\n IcMenuOption,\n IcSizes,\n IcMultiValueEventDetail,\n} from \"../../utils/types\";\nimport Check from \"../../assets/check-icon.svg\";\nimport {\n getOptionsWithoutGroupTitlesCount,\n isMacDevice,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport {\n sanitizeHTMLString,\n sanitizeHTMLIconString,\n} from \"../../utils/common-helpers\";\nimport {\n IcOptionSelectEventDetail,\n IcMenuChangeEventDetail,\n IcMenuOptionIdEventDetail,\n} from \"./ic-menu.types\";\nimport { IcSearchBarSearchModes } from \"../ic-search-bar/ic-search-bar.types\";\n\n@Component({\n tag: \"ic-menu\",\n styleUrl: \"ic-menu.css\",\n scoped: true,\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class Menu {\n private ACTIVE_DESCENDANT = \"aria-activedescendant\";\n private CLEAR_BUTTON_ID = \"clear-button\";\n private SEARCH_BAR_TAG = \"IC-SEARCH-BAR\";\n private disabledOptionSelected = false;\n private hasPreviouslyBlurred = false;\n private hasTimedOut = false;\n private isLoading = false;\n private lastOptionSelected: number | null = null; // Index of last option selected\n private lastOptionFocused: number | null = null; // Index of last option focused\n private menu?: HTMLUListElement;\n private multiOptionClicked: string | null = null;\n private popperInstance: PopperInstance | null;\n private preventClickOpen = false; // Prevents menu re-opening immediately after it is closed on blur when clicking input.\n private preventMenuFocus = false; // (When multiple) ensures focus moves straight to select all button from menu.\n private selectAllButton?: HTMLIcButtonElement;\n private shiftPressed = false;\n private ungroupedOptions: IcMenuOption[] = [];\n\n @Element() host: HTMLIcMenuElement;\n\n @State() focusFromSearchKeypress = false;\n @State() initialOptionsListRender = false;\n @State() keyboardNav = false;\n @State() optionHighlighted?: string;\n @State() preventIncorrectTabOrder = false;\n @State() menuOptions: IcMenuOption[];\n @State() popperProps: Partial<Options> = {};\n\n /**\n * Determines whether options manually set as values (by pressing 'Enter') when they receive focus using keyboard navigation.\n */\n @Prop() activationType: IcActivationTypes = \"automatic\";\n\n /**\n * The reference to an anchor element the menu will position itself from when rendered.\n */\n @Prop() anchorEl?: HTMLElement;\n\n /**\n * @internal If `true`, autofocus will be applied on selected item when menu is open.\n */\n @Prop() autofocusOnSelected = true;\n\n /**\n * If `true`, the menu will close when an option is selected.\n */\n @Prop() closeOnSelect = true;\n\n /**\n * If `true`, the menu will fill the width of the container.\n */\n @Prop() fullWidth = false;\n\n /**\n * The reference to the input element.\n */\n @Prop() inputEl?: HTMLElement;\n\n /**\n * The label for the input element.\n */\n @Prop() inputLabel!: string;\n\n /**\n * The custom name for the label field for IcMenuOption.\n */\n @Prop() labelField = \"label\";\n\n /**\n * The ID of the menu.\n */\n @Prop() menuId!: string;\n\n /**\n * @internal - flag to specify if menu is in a ic-select multiple.\n */\n @Prop() multiSelect = false;\n\n /**\n * If `true`, the menu will be displayed open.\n */\n @Prop({ reflect: true }) open!: boolean;\n @Watch(\"open\")\n watchOpenHandler(): void {\n if (!this.open && this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n }\n\n /**\n * @internal - The parent element if ic-menu is nested inside another component.\n */\n @Prop() parentEl?: HTMLElement;\n\n /**\n * @internal - flag to specify if menu is in a searchable ic-select.\n */\n @Prop() searchableSelect = false;\n\n /**\n * @internal - flag to specify if menu is in a ic-search-bar.\n */\n @Prop() searchBar = false;\n\n /**\n * Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches.\n */\n @Prop() searchMode: IcSearchBarSearchModes = \"navigation\";\n\n /**\n * @internal If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown.\n */\n @Prop() selectOnEnter: boolean = false;\n\n /**\n * The size of the menu.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * The possible menu selection options.\n */\n @Prop() options!: IcMenuOption[];\n @Watch(\"options\")\n watchOptionsHandler(newOptions: IcMenuOption[]): void {\n this.hasTimedOut = newOptions.some((opt) => opt.timedOut);\n this.isLoading = newOptions.some((opt) => opt.loading);\n this.ungroupedOptions = [];\n this.loadUngroupedOptions();\n }\n\n /**\n * The value of the currently selected option - or array of values (if multiple options allowed).\n */\n @Prop() value!: string | string[];\n\n /**\n * The custom name for the value field for IcMenuOption.\n */\n @Prop() valueField = \"value\";\n\n /**\n * Emitted when the clear all button is clicked.\n */\n @Event() icClear: EventEmitter<void>;\n\n /**\n * @internal Emitted when key is pressed while menu is open.\n */\n @Event() menuKeyPress: EventEmitter<{ isNavKey: boolean; key: string }>;\n\n /**\n * @internal Emitted when an option has been highlighted.\n */\n @Event() menuOptionId: EventEmitter<IcMenuOptionIdEventDetail>;\n\n /**\n * @internal Emitted when an option is selected.\n */\n @Event() menuOptionSelect!: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * @internal Emitted when all options are selected or deselected.\n */\n @Event() menuOptionSelectAll!: EventEmitter<{ select: boolean }>;\n\n /**\n * @internal Emitted when state of menu changes (i.e. open or closed).\n */\n @Event() menuStateChange!: EventEmitter<IcMenuChangeEventDetail>;\n\n /**\n * @internal Emitted when the retry button is clicked.\n */\n @Event() retryButtonClicked: EventEmitter<IcMultiValueEventDetail>;\n\n /**\n * @internal Emitted when the timeout menu loses focus.\n */\n @Event() timeoutBlur: EventEmitter<{ ev: FocusEvent }>;\n\n /**\n * @internal Emitted when the ungrouped options have been set.\n */\n @Event() ungroupedOptionsSet: EventEmitter<{ options: IcMenuOption[] }>;\n\n connectedCallback(): void {\n if (this.searchBar) {\n if (this.searchMode === \"navigation\") this.setHighlightedOption(0);\n this.initialOptionsListRender = true;\n }\n }\n\n disconnectedCallback(): void {\n this.popperInstance?.destroy();\n this.parentEl?.removeEventListener(\"icClear\", this.handleClearListener);\n this.parentEl?.removeEventListener(\n \"icSubmitSearch\",\n this.handleSubmitSearch\n );\n }\n\n componentWillLoad(): void {\n this.loadUngroupedOptions();\n this.parentEl?.addEventListener(\"icClear\", this.handleClearListener);\n this.parentEl?.addEventListener(\"icSubmitSearch\", this.handleSubmitSearch);\n this.hasTimedOut = this.options?.some((opt) => opt.timedOut);\n this.isLoading = this.options?.some((opt) => opt.loading);\n }\n\n componentDidLoad(): void {\n if (\n this.searchBar &&\n (this.parentEl as HTMLIcSearchBarElement).disableAutoFiltering\n ) {\n this.focusFromSearchKeypress = true;\n }\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.open, propName: \"open\" },\n { prop: this.options, propName: \"options\" },\n { prop: this.menuId, propName: \"menu-id\" },\n { prop: this.inputLabel, propName: \"input-label\" },\n //NOTE: no check for value, input-el or anchor-el as otherwise get console errors on first load of select component\n ],\n \"Menu\"\n );\n }\n\n componentDidUpdate(): void {\n const inputValueInOptions = this.options.some(\n (option) => option[this.valueField] === this.value\n );\n\n if (\n this.menu &&\n this.open &&\n this.options.length !== 0 &&\n !this.preventMenuFocus\n ) {\n if (\n this.value &&\n this.keyboardNav &&\n inputValueInOptions &&\n this.autofocusOnSelected &&\n !this.searchableSelect\n ) {\n this.scrollToSelected(this.menu);\n } else if (this.selectOnEnter) {\n this.menu.focus();\n } else if (\n !!this.optionHighlighted &&\n !this.focusFromSearchKeypress &&\n !this.preventIncorrectTabOrder\n ) {\n const highlightedEl = this.host.querySelector(\n `li[data-value=\"${this.optionHighlighted}\"]`\n ) as HTMLElement;\n\n if (highlightedEl) {\n this.menu.setAttribute(this.ACTIVE_DESCENDANT, highlightedEl.id);\n highlightedEl.focus();\n }\n } else if (this.inputEl && this.inputEl.tagName !== \"INPUT\") {\n this.menu.focus();\n }\n }\n\n if (this.menu && this.open && !this.value && this.selectOnEnter) {\n this.scrollToSelected(this.menu);\n }\n\n this.preventMenuFocus = false;\n }\n\n componentDidRender(): void {\n if (this.open && !this.popperInstance && this.anchorEl) {\n this.initPopperJs(this.anchorEl);\n }\n\n if (this.open && !!this.options.length) {\n this.setMenuScrollbar();\n }\n }\n\n /**\n * @internal If menu is opened with the mouse, emit menuStateChange custom event.\n */\n @Method()\n async handleClickOpen(): Promise<void> {\n if (!this.preventClickOpen) {\n this.menuStateChange.emit({ open: !this.open });\n this.keyboardNav = false;\n }\n this.preventClickOpen = false;\n }\n\n /**\n * Used alongside activationType\n * If menu is opened via keyboard navigation (i.e. Enter, ArrowUp or ArrowDown), emit optionSelect custom event.\n * @param {KeyboardEvent} event The keyboard event which is available when handleKeyboardOpen is invoked.\n */\n @Method()\n async handleKeyboardOpen(event: KeyboardEvent): Promise<void> {\n if (this.activationType === \"automatic\") {\n this.autoSetInputValueKeyboardOpen(event);\n } else {\n this.manualSetInputValueKeyboardOpen(event);\n }\n }\n\n /**\n * @internal Used to highlight the first option in the menu.\n */\n @Method()\n async handleSetFirstOption(): Promise<void> {\n this.setHighlightedOption(0);\n }\n\n /**\n * @internal Used to initialize popperJS with an anchor element.\n * 5/12/2023: Tested with Floating UI, however, discovered inconsistent\n * boundary behaviour so sticking with PopperJS.\n */\n @Method()\n async initPopperJs(anchor: HTMLElement): Promise<void> {\n // Placements set to \"-start\" to accommodate for custom menu width - menu should always be aligned to the left\n this.popperInstance = createPopper(anchor, this.host, {\n placement: \"bottom-start\",\n modifiers: [\n {\n name: \"offset\",\n options: {\n offset: [0, 7],\n },\n },\n {\n name: \"flip\",\n options: {\n fallbackPlacements: [\"top-start\"],\n rootBoundary: \"viewport\",\n },\n },\n ],\n ...this.popperProps,\n });\n }\n\n /**\n * @internal This method allows props to be added to the PopperJS createPopper instance outside of the menu\n * @param props object - createPopper props set externally\n */\n @Method()\n async setExternalPopperProps<T extends Partial<Options>>(props: T) {\n this.popperProps = props;\n }\n\n private handleClearListener = (): void => {\n this.optionHighlighted = \"\";\n };\n\n private handleSubmitSearch = (): void => {\n const highlightedOptionIndex = this.options.findIndex(\n (option) => option[this.valueField] === this.optionHighlighted\n );\n\n this.setInputValue(highlightedOptionIndex);\n };\n\n private handleMenuChange = (open: boolean, focusInput?: boolean): void => {\n this.menuStateChange.emit({ open, focusInput });\n\n if (!open) {\n if (focusInput !== false) {\n this.inputEl?.focus();\n this.preventClickOpen = false;\n }\n\n // Reset optionHighlighted so previously highlighted option doesn't get reselected when Enter pressed\n if (this.multiSelect) {\n this.optionHighlighted = undefined;\n this.multiOptionClicked = null;\n }\n }\n };\n\n private setNextOptionValue = (selectedOptionIndex: number): void => {\n if (this.ungroupedOptions[selectedOptionIndex + 1]) {\n this.menuOptionSelect.emit({\n value: this.ungroupedOptions[selectedOptionIndex + 1][this.valueField],\n optionId: this.getOptionId(\n this.ungroupedOptions[selectedOptionIndex + 1][this.valueField]\n ),\n });\n } else {\n this.menuOptionSelect.emit({\n value: this.ungroupedOptions[0][this.valueField],\n optionId: this.getOptionId(this.ungroupedOptions[0][this.valueField]),\n });\n }\n };\n\n private setPreviousOptionValue = (selectedOptionIndex: number): void => {\n if (this.ungroupedOptions[selectedOptionIndex - 1]) {\n this.menuOptionSelect.emit({\n value: this.ungroupedOptions[selectedOptionIndex - 1][this.valueField],\n optionId: this.getOptionId(\n this.ungroupedOptions[selectedOptionIndex - 1][this.valueField]\n ),\n });\n } else {\n this.menuOptionSelect.emit({\n value:\n this.ungroupedOptions[this.ungroupedOptions.length - 1][\n this.valueField\n ],\n optionId: this.getOptionId(\n this.ungroupedOptions[this.ungroupedOptions.length - 1][\n this.valueField\n ]\n ),\n });\n }\n };\n\n // Open menu when up or down arrow keys are pressed\n private arrowBehaviour = (event: KeyboardEvent): void => {\n event.preventDefault();\n this.handleMenuChange(true);\n };\n\n private getMenuOptions = () =>\n this.searchBar ? this.options : this.ungroupedOptions;\n\n // Set option that is focused and so should show focus state\n private setHighlightedOption = (highlightedIndex: number): void => {\n const menuOptions = this.getMenuOptions();\n\n menuOptions[highlightedIndex] &&\n !menuOptions[highlightedIndex].timedOut &&\n (this.optionHighlighted =\n menuOptions[highlightedIndex][this.valueField] || undefined);\n };\n\n // Determines keyboard behaviour when selection is automatic\n // (i.e. you don't have to press Enter select an option - just focus on it)\n // and menu is closed\n private autoSetInputValueKeyboardOpen = (event: KeyboardEvent) => {\n const selectedOptionIndex = this.ungroupedOptions.findIndex(\n (option) => option[this.valueField] === this.value\n );\n\n this.keyboardNav = false;\n\n switch (event.key) {\n case \"ArrowDown\":\n this.keyboardNav = true;\n this.arrowBehaviour(event);\n this.setNextOptionValue(selectedOptionIndex);\n break;\n case \"ArrowUp\":\n this.keyboardNav = true;\n this.arrowBehaviour(event);\n this.setPreviousOptionValue(selectedOptionIndex);\n break;\n case \" \":\n case \"Enter\":\n if ((event.target as HTMLElement).id !== this.CLEAR_BUTTON_ID) {\n this.handleMenuChange(true);\n }\n break;\n }\n };\n\n private selectHighlightedOption = (\n options: IcMenuOption[],\n highlightedOptionIndex: number\n ) => {\n if (!this.isLoading && !this.hasTimedOut) {\n this.keyboardNav = true;\n }\n\n const isOpen: boolean =\n this.searchBar || this.searchableSelect || this.open;\n\n if (isOpen) {\n if (highlightedOptionIndex >= 0) {\n if (options[highlightedOptionIndex] !== undefined) {\n if (\n this.searchBar &&\n options[highlightedOptionIndex].disabled === true\n ) {\n this.disabledOptionSelected = true;\n } else {\n this.setInputValue(highlightedOptionIndex);\n }\n }\n } else {\n this.setInputValue(highlightedOptionIndex);\n }\n } else {\n this.handleMenuChange(true);\n }\n };\n\n // Check if option is selected based on the index of the option\n private isOptionSelected = (index: number) => {\n const menuOptions = this.getMenuOptions();\n\n return this.value\n ? this.value.includes(menuOptions[index][this.valueField])\n : false;\n };\n\n // Deselect currently selected options when shift pressed, but keep certain options selected\n private deselectSelectedOptions = (optionsToKeepSelected: number[]) => {\n const menuOptions = this.getMenuOptions();\n\n if (this.value) {\n const selectedOptionIndexes = (this.value as string[]).map((value) => {\n return menuOptions.findIndex(\n (option) => option[this.valueField] === value\n );\n });\n\n // Call setInputValue (which toggles the selected state) on options that need to be deselected\n selectedOptionIndexes.forEach(\n (index) =>\n !optionsToKeepSelected.includes(index) && this.setInputValue(index)\n );\n }\n };\n\n // Determines keyboard behaviour when selection is manual (i.e. when you have to press Enter to select an option)\n private manualSetInputValueKeyboardOpen = (event: KeyboardEvent) => {\n const menuOptions = this.getMenuOptions();\n\n // For preventing focus disappearing on currently focused option when Shift / Cmd / Ctrl pressed\n // (i.e. when user is likely in the middle of executing a keyboard combination to select options)\n const isKeyboardCombination =\n event.shiftKey || event.metaKey || event.ctrlKey;\n\n const highlightedOptionIndex = this.getOptionHighlightedIndex();\n\n const clickedMultiOptionIndex = menuOptions.findIndex(\n (option) => option[this.valueField] === this.multiOptionClicked\n );\n\n const getOptionId = (index: number): string =>\n Array.from(this.host.querySelectorAll(\"li\"))[index]?.id;\n\n // Space press should be equivalent to Enter when multi-select\n if (event.key === \" \" && this.multiSelect) {\n this.handleOptionSelect(event, highlightedOptionIndex);\n } else {\n switch (event.key) {\n case \"ArrowDown\":\n this.keyboardNav = true;\n this.arrowBehaviour(event);\n if (this.multiOptionClicked) {\n // Set focus to option last clicked\n // Prevents it resetting to the top of the menu when user switches to using keyboard\n this.setHighlightedOption(clickedMultiOptionIndex);\n this.multiOptionClicked = null;\n } else {\n this.handleSingleShiftSelect(\n event,\n highlightedOptionIndex,\n menuOptions\n );\n\n if (highlightedOptionIndex < menuOptions.length - 1) {\n this.setHighlightedOption(highlightedOptionIndex + 1);\n this.menuOptionId.emit({\n optionId: getOptionId(highlightedOptionIndex + 1),\n });\n\n this.handleSingleShiftSelect(\n event,\n highlightedOptionIndex + 1,\n menuOptions\n );\n } else {\n this.setHighlightedOption(0);\n this.menuOptionId.emit({\n optionId: getOptionId(0),\n });\n\n this.handleSingleShiftSelect(event, 0, menuOptions);\n }\n\n // Deselect currently selected options if arrow was pressed for first time after shift is held\n if (this.multiSelect && this.shiftPressed) {\n this.deselectSelectedOptions([\n highlightedOptionIndex,\n this.getOptionHighlightedIndex(),\n ]);\n this.shiftPressed = false;\n }\n }\n this.lastOptionFocused = this.getOptionHighlightedIndex();\n this.preventIncorrectTabOrder = false;\n this.focusFromSearchKeypress = false;\n break;\n case \"ArrowUp\":\n this.keyboardNav = true;\n this.arrowBehaviour(event);\n if (this.multiOptionClicked) {\n // Set focus to option last clicked\n // Prevents it resetting to the bottom of the menu when user switches to using keyboard\n this.setHighlightedOption(clickedMultiOptionIndex);\n this.multiOptionClicked = null;\n } else {\n this.handleSingleShiftSelect(\n event,\n highlightedOptionIndex,\n menuOptions\n );\n\n if (\n highlightedOptionIndex <= 0 ||\n highlightedOptionIndex > menuOptions.length + 1\n ) {\n this.setHighlightedOption(menuOptions.length - 1);\n this.menuOptionId.emit({\n optionId: getOptionId(menuOptions.length - 1),\n });\n\n this.handleSingleShiftSelect(\n event,\n menuOptions.length - 1,\n menuOptions\n );\n } else {\n this.setHighlightedOption(highlightedOptionIndex - 1);\n this.menuOptionId.emit({\n optionId: getOptionId(highlightedOptionIndex - 1),\n });\n\n this.handleSingleShiftSelect(\n event,\n highlightedOptionIndex - 1,\n menuOptions\n );\n }\n\n // Deselect currently selected options if arrow was pressed for first time after shift is held\n if (this.multiSelect && this.shiftPressed) {\n this.deselectSelectedOptions([\n highlightedOptionIndex,\n this.getOptionHighlightedIndex(),\n ]);\n this.shiftPressed = false;\n }\n }\n\n this.lastOptionFocused = this.getOptionHighlightedIndex();\n this.preventIncorrectTabOrder = false;\n this.focusFromSearchKeypress = false;\n break;\n case \"Home\": {\n const startOptionIndex = 0;\n\n this.keyboardNav = true;\n event.preventDefault();\n this.arrowBehaviour(event);\n this.setHighlightedOption(startOptionIndex);\n this.menuOptionId.emit({\n optionId: getOptionId(startOptionIndex),\n });\n\n if (event.shiftKey && event.ctrlKey) {\n this.handleMultipleShiftSelect(startOptionIndex);\n }\n\n this.lastOptionFocused = startOptionIndex;\n this.lastOptionSelected = startOptionIndex;\n break;\n }\n case \"End\": {\n const endOptionIndex = menuOptions.length - 1;\n\n this.keyboardNav = true;\n event.preventDefault();\n this.arrowBehaviour(event);\n this.setHighlightedOption(endOptionIndex);\n this.menuOptionId.emit({\n optionId: getOptionId(endOptionIndex),\n });\n\n if (event.shiftKey && event.ctrlKey) {\n this.handleMultipleShiftSelect(endOptionIndex);\n }\n\n this.lastOptionFocused = endOptionIndex;\n this.lastOptionSelected = endOptionIndex;\n break;\n }\n case \" \":\n if (!isKeyboardCombination) {\n this.keyboardNav = false;\n }\n if (this.searchBar || this.searchableSelect) {\n break;\n } else {\n if ((event.target as HTMLElement).id !== this.CLEAR_BUTTON_ID) {\n this.handleMenuChange(true);\n }\n }\n break;\n case \"Enter\":\n event.preventDefault();\n if (!isKeyboardCombination) {\n this.keyboardNav = false;\n }\n this.handleOptionSelect(event, highlightedOptionIndex);\n break;\n case \"Escape\":\n if (this.open) {\n event.stopImmediatePropagation();\n }\n this.handleMenuChange(false);\n this.menuOptionId.emit({ optionId: undefined });\n break;\n case \"a\":\n // Checks if Cmd (meta) key is pressed if Mac device (while excluding meta key on Windows)\n // Otherwise, if a different OS, checks Ctrl key\n if (\n (isMacDevice() && event.metaKey) ||\n (!isMacDevice() && event.ctrlKey)\n ) {\n this.emitSelectAllEvents();\n this.lastOptionFocused = null;\n this.lastOptionSelected = null;\n }\n break;\n case \"Shift\":\n case \"Tab\":\n if (event.key === \"Shift\") {\n this.shiftPressed = true;\n }\n if (this.searchBar) {\n this.keyboardNav = true;\n }\n if (this.multiSelect) {\n if (this.open && !event.shiftKey && this.selectAllButton) {\n event.preventDefault();\n this.selectAllButton.focus(); // Move focus to select all button instead of focused option\n this.preventMenuFocus = true;\n this.preventClickOpen = true;\n this.optionHighlighted = undefined; // Stop any option focus states showing when focus moved to select all button\n }\n } else {\n this.preventIncorrectTabOrder = true;\n }\n break;\n default:\n if (!isKeyboardCombination) {\n this.keyboardNav = false;\n }\n this.focusOnSearchOrSelectInput(menuOptions, highlightedOptionIndex);\n }\n }\n };\n\n private setInputValue = (highlightedOptionIndex: number) => {\n const menuOptions = this.getMenuOptions();\n\n if (menuOptions[highlightedOptionIndex] !== undefined) {\n this.menuOptionSelect.emit({\n value: menuOptions[highlightedOptionIndex][this.valueField],\n });\n\n if (this.closeOnSelect) {\n this.optionHighlighted = undefined;\n this.menuOptionId.emit({ optionId: undefined });\n }\n }\n\n if (this.closeOnSelect) {\n if (!this.hasTimedOut) {\n this.handleMenuChange(false);\n } else {\n (this.parentEl as HTMLIcSearchBarElement).setFocus();\n }\n }\n };\n\n private handleOptionClick = (event: MouseEvent): void => {\n const { value, label } = (event.target as HTMLLIElement).dataset;\n\n if (this.multiSelect) {\n const menuOptions = this.getMenuOptions();\n const selectedOptionIndex = menuOptions.findIndex(\n (option) => option[this.valueField] === value\n );\n\n this.handleOptionSelect(event, selectedOptionIndex, true);\n this.multiOptionClicked = value || null;\n } else {\n this.menuOptionSelect.emit({ value, label });\n this.handleMenuChange(false);\n }\n\n this.optionHighlighted = undefined;\n };\n\n private handleRetry = (): void => {\n this.retryButtonClicked.emit({ value: this.value });\n };\n\n private handleRetryKeyDown = (ev: KeyboardEvent): void => {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.preventDefault();\n this.retryButtonClicked.emit({ value: this.value, keyPressed: ev.key });\n }\n };\n\n private handleBlur = (event: FocusEvent): void => {\n if (event.relatedTarget !== this.inputEl) {\n if (event.relatedTarget === this.selectAllButton) {\n this.menu?.removeAttribute(this.ACTIVE_DESCENDANT);\n }\n\n if (\n !(\n this.menu?.contains(event.relatedTarget as HTMLElement) ||\n event.relatedTarget === this.selectAllButton\n )\n ) {\n this.handleMenuChange(false, this.hasPreviouslyBlurred);\n this.menu?.removeAttribute(this.ACTIVE_DESCENDANT);\n this.lastOptionFocused = null;\n this.lastOptionSelected = null;\n }\n } else {\n this.handleMenuChange(false);\n this.preventClickOpen = true;\n this.menu?.removeAttribute(this.ACTIVE_DESCENDANT);\n this.lastOptionFocused = null;\n this.lastOptionSelected = null;\n }\n if (!this.searchBar) this.hasPreviouslyBlurred = !!event.relatedTarget;\n };\n\n private handleMouseDown = (event: Event): void => {\n event.preventDefault();\n };\n\n private handleMenuKeyDown = (event: KeyboardEvent) => {\n if (this.activationType === \"automatic\") {\n this.autoSetValueOnMenuKeyDown(event);\n } else if (this.activationType === \"manual\" && !this.searchBar) {\n this.manualSetInputValueKeyboardOpen(event);\n }\n };\n\n private handleMenuKeyUp = (event: KeyboardEvent): void => {\n if (event.key === \"Tab\" && event.shiftKey) {\n this.preventClickOpen = false;\n }\n if (event.key === \"Enter\" && this.disabledOptionSelected) {\n this.disabledOptionSelected = false;\n event.stopImmediatePropagation();\n }\n\n if (event.key === \"Shift\") {\n this.shiftPressed = false;\n }\n };\n\n private handleSelectAllClick = () => {\n this.keyboardNav = false;\n this.menu?.focus();\n this.emitSelectAllEvents();\n this.lastOptionFocused = null;\n this.lastOptionSelected = null;\n };\n\n private handleSelectAllBlur = (event: FocusEvent) => {\n this.host.classList.remove(\"ic-select-select-all-focused\");\n if (!this.menu?.contains(event.relatedTarget as HTMLElement)) {\n this.handleMenuChange(false, false);\n }\n };\n\n private handleSelectAllFocus = () => {\n this.host.classList.add(\"ic-select-select-all-focused\");\n this.lastOptionFocused = null;\n this.lastOptionSelected = null;\n };\n\n // Fix for Safari - select all button click was causing menu to close\n private handleSelectAllMouseDown = (event: Event) => {\n event.preventDefault();\n };\n\n // When shift key is being used to select contiguous options one by one on a multi-select\n // I.e. holding shift and pressing up and down arrow keys\n private handleSingleShiftSelect = (\n event: KeyboardEvent,\n optionToSelectIndex: number,\n options: IcMenuOption[]\n ) => {\n if (\n this.multiSelect &&\n event.shiftKey &&\n !this.isOptionSelected(optionToSelectIndex)\n ) {\n this.selectHighlightedOption(options, optionToSelectIndex);\n this.lastOptionSelected = optionToSelectIndex;\n }\n };\n\n // When shift key is being used to select multiple options at once on a multi-select\n // I.e. holding shift when selecting another option\n private handleMultipleShiftSelect = (\n lastOptionInSelection: number,\n useFocusForSelection = false,\n firstOptionSelected: number | null = null\n ) => {\n this.shiftPressed = false;\n\n const firstOptionInSelection =\n firstOptionSelected === null\n ? this.getFirstOptionInSelection(useFocusForSelection)\n : firstOptionSelected;\n if (firstOptionInSelection !== null) {\n const optionsToSelect = [];\n\n if (firstOptionInSelection < lastOptionInSelection) {\n for (\n let i = firstOptionInSelection;\n i < lastOptionInSelection + 1;\n i++\n ) {\n optionsToSelect.push(i);\n }\n } else {\n for (\n let i = firstOptionInSelection;\n i > lastOptionInSelection - 1;\n i--\n ) {\n optionsToSelect.push(i);\n }\n }\n\n optionsToSelect.forEach(\n (optionIndex) =>\n !this.isOptionSelected(optionIndex) && this.setInputValue(optionIndex)\n );\n this.deselectSelectedOptions(optionsToSelect);\n }\n };\n\n private handleOptionSelect = (\n event: KeyboardEvent | MouseEvent,\n optionIndex: number,\n useFocusForSelection = false\n ) => {\n const menuOptions = this.getMenuOptions();\n const firstOptionInSelection =\n this.getFirstOptionInSelection(useFocusForSelection);\n if (event.shiftKey && firstOptionInSelection !== null) {\n this.handleMultipleShiftSelect(\n optionIndex,\n useFocusForSelection,\n firstOptionInSelection\n );\n } else {\n this.selectHighlightedOption(menuOptions, optionIndex);\n }\n\n this.lastOptionFocused = optionIndex;\n this.lastOptionSelected = optionIndex;\n };\n\n private getFirstOptionInSelection = (\n useFocusForSelection: boolean\n ): number | null => {\n return useFocusForSelection && this.lastOptionFocused !== null\n ? this.lastOptionFocused\n : this.lastOptionSelected !== null\n ? this.lastOptionSelected\n : null;\n };\n\n private emitSelectAllEvents = () => {\n // Select all if there is either no value or not all options are selected\n // 'true' means select all, 'false' means clear all\n this.menuOptionSelectAll.emit({\n select:\n !this.value || !(this.value?.length === this.ungroupedOptions.length),\n });\n // Emit clear event if all options are selected\n if (this.value?.length === this.ungroupedOptions.length) {\n this.icClear.emit();\n }\n };\n\n private emitMenuKeyPress = (isNavKey: boolean, key: string) => {\n this.menuKeyPress.emit({ isNavKey: isNavKey, key: key });\n };\n\n // Determines keyboard behaviour when selection is automatic\n // (i.e. you don't have to press Enter select an option - just focus on it)\n // and menu is focused\n private autoSetValueOnMenuKeyDown = (event: KeyboardEvent): void => {\n event.cancelBubble = true;\n const selectedOptionIndex = this.ungroupedOptions.findIndex(\n (option) => option[this.valueField] === this.value\n );\n\n const isSearchableSelect =\n !!this.inputEl && this.inputEl.tagName === \"INPUT\";\n\n this.keyboardNav = false;\n\n switch (event.key) {\n case \" \":\n event.preventDefault();\n break;\n case \"ArrowUp\":\n if (!this.hasTimedOut) {\n event.preventDefault();\n this.setPreviousOptionValue(selectedOptionIndex);\n this.keyboardNav = true;\n }\n break;\n case \"ArrowDown\":\n if (!this.hasTimedOut) {\n event.preventDefault();\n this.setNextOptionValue(selectedOptionIndex);\n this.keyboardNav = true;\n }\n break;\n case \"Home\":\n this.menuOptionSelect.emit({\n value: this.ungroupedOptions[0][this.valueField],\n });\n this.keyboardNav = true;\n break;\n case \"End\":\n this.menuOptionSelect.emit({\n value:\n this.ungroupedOptions[this.ungroupedOptions.length - 1][\n this.valueField\n ],\n });\n this.keyboardNav = true;\n break;\n case \"Enter\":\n !this.hasTimedOut && this.handleMenuChange(false);\n break;\n case \"Escape\":\n this.handleMenuChange(false);\n break;\n case \"Backspace\":\n if (isSearchableSelect) {\n this.inputEl?.focus();\n }\n break;\n case \"Shift\":\n break;\n default:\n if (isSearchableSelect && event.key !== \"Tab\" && !this.hasTimedOut) {\n this.inputEl?.focus();\n }\n if (event.key.length === 1) {\n this.keyboardNav = true;\n }\n break;\n }\n this.emitMenuKeyPress(this.keyboardNav, event.key);\n };\n\n private getOptionId = (value: string): string => {\n return `${this.menuId}-${value}`;\n };\n\n private getOptionAriaLabel = (\n option: IcMenuOption,\n parentOption?: IcMenuOption\n ): string => {\n let ariaLabel = option[this.labelField];\n\n if (option.description) {\n ariaLabel = `${ariaLabel}, ${option.description}`;\n }\n\n if (option.element) {\n ariaLabel = `${ariaLabel}, ${option.element.ariaLabel}`;\n }\n\n if (parentOption) {\n return `${ariaLabel}, ${parentOption[this.labelField]} group`;\n } else {\n return ariaLabel;\n }\n };\n\n private getSortedOptions = (options: IcMenuOption[]): IcMenuOption[] => {\n let sorted: IcMenuOption[] = [];\n if (options.sort) {\n sorted = options.sort((optionA, optionB) =>\n optionA.recommended && !optionB.recommended ? -1 : 0\n );\n }\n return sorted;\n };\n\n private getOptionHighlightedIndex = () => {\n const menuOptions = this.getMenuOptions();\n\n return menuOptions.findIndex(\n (option) => option[this.valueField] === this.optionHighlighted\n );\n };\n\n private isManualMode = this.activationType === \"manual\";\n\n private scrollToSelected = (menu: HTMLUListElement) => {\n const selectedOption = this.selectOnEnter\n ? (this.host.querySelector(\n `li[data-value=\"${this.optionHighlighted}\"]`\n ) as HTMLElement)\n : (menu.querySelector(\".option[aria-selected='true']\") as HTMLElement);\n\n if (selectedOption) {\n const elTop = selectedOption.offsetTop + selectedOption.offsetHeight;\n if (\n elTop > menu.scrollTop + menu.offsetHeight ||\n elTop < menu.scrollTop + menu.offsetHeight\n ) {\n menu.scrollTop = selectedOption.offsetTop;\n }\n // 'aria-activedescendant' affects screen reader focus\n // https://www.w3.org/TR/2017/WD-wai-aria-practices-1.1-20170628/#kbd_focus_activedescendant\n this.menu?.setAttribute(this.ACTIVE_DESCENDANT, selectedOption.id);\n selectedOption.focus();\n }\n };\n\n // Set 'ungroupedOptions' variable and emit its value\n // - this is all the options with disabled options and group titles removed\n private loadUngroupedOptions = () => {\n if (this.options.length > 0 && this.options.map) {\n this.options.map((option) => {\n if (option.children) {\n option.children.map(\n (option) => !option.disabled && this.ungroupedOptions.push(option)\n );\n } else if (!option.disabled) {\n this.ungroupedOptions.push(option);\n }\n });\n }\n this.ungroupedOptions = this.getSortedOptions(this.ungroupedOptions);\n this.ungroupedOptionsSet.emit({ options: this.ungroupedOptions });\n };\n\n private setMenuScrollbar = () => {\n let optionsHeight = 0;\n this.host\n .querySelectorAll(\".option, .option-group-title\")\n .forEach((option) => (optionsHeight += option.clientHeight));\n\n if (optionsHeight >= 320) {\n this.menu?.classList.add(\"menu-scroll\");\n }\n };\n\n private handleTimeoutBlur = (ev: FocusEvent) => {\n this.timeoutBlur.emit({ ev });\n };\n\n private focusOnSearchOrSelectInput(\n menuOptions: IcMenuOption[],\n highlightedOptionIndex: number\n ) {\n if (!menuOptions[highlightedOptionIndex]) return;\n\n if (this.searchBar) {\n (this.parentEl as HTMLIcSearchBarElement).setFocus();\n if (this.searchMode === \"navigation\") this.setHighlightedOption(0);\n }\n\n if (this.searchableSelect) {\n (this.parentEl as HTMLIcSelectElement).setFocus();\n }\n\n this.focusFromSearchKeypress = true;\n }\n\n private optionContent = (option: IcMenuOption, selected: boolean) => {\n const showCheckIcon =\n !!option[this.valueField] &&\n !!this.value &&\n selected &&\n this.parentEl?.tagName !== this.SEARCH_BAR_TAG;\n\n return (\n <Fragment>\n {option.loading && <ic-loading-indicator size=\"icon\" />}\n <div\n class={{\n \"option-text-container\": true,\n \"show-check-icon\": showCheckIcon,\n }}\n >\n {(option.icon || !option.hideLabel) && (\n <div class=\"option-label\">\n {option.icon && (\n <div\n class=\"option-icon\"\n innerHTML={sanitizeHTMLIconString(option.icon)}\n aria-hidden=\"true\"\n ></div>\n )}\n {!option.hideLabel && (\n <ic-typography variant=\"body\" aria-hidden=\"true\">\n {option[this.labelField]}\n </ic-typography>\n )}\n </div>\n )}\n {option.description && (\n <ic-typography\n id={`${this.getOptionId(option[this.valueField])}-description`}\n class=\"option-description\"\n variant=\"caption\"\n aria-hidden=\"true\"\n >\n <p>{option.description}</p>\n </ic-typography>\n )}\n {option.element && (\n <div\n class={{\n \"option-element\":\n option.icon || !option.hideLabel || option.description,\n }}\n innerHTML={sanitizeHTMLString(option.element.component)}\n aria-hidden=\"true\"\n ></div>\n )}\n </div>\n {showCheckIcon && <span class=\"check-icon\" innerHTML={Check} />}\n </Fragment>\n );\n };\n\n private displayOption = (\n option: IcMenuOption,\n selected: boolean,\n index: number,\n parentOption?: IcMenuOption\n ): HTMLLIElement => {\n const {\n open,\n keyboardNav,\n isManualMode,\n initialOptionsListRender,\n optionHighlighted,\n options,\n } = this;\n\n return (\n <li\n id={this.getOptionId(option[this.valueField])}\n class={{\n option: true,\n \"focused-option\": isManualMode\n ? (keyboardNav || initialOptionsListRender) &&\n option[this.valueField] === optionHighlighted\n : keyboardNav && selected,\n \"last-recommended-option\": !!(\n option.recommended &&\n options[index + 1] &&\n !options[index + 1].recommended\n ),\n \"disabled-option\": !!option.disabled,\n \"loading-option\": !!option.loading,\n timeout: !!option.timedOut,\n }}\n role=\"option\"\n tabindex={\n open &&\n (selected || option[this.valueField] === optionHighlighted) &&\n keyboardNav\n ? \"0\"\n : \"-1\"\n }\n aria-label={this.getOptionAriaLabel(option, parentOption)}\n aria-selected={selected ? \"true\" : \"false\"}\n aria-disabled={option.disabled ? \"true\" : \"false\"}\n onClick={\n !option.timedOut && !option.loading\n ? this.handleOptionClick\n : undefined\n }\n onBlur={this.handleBlur}\n onMouseDown={this.handleMouseDown}\n data-value={option[this.valueField]}\n data-label={option[this.labelField]}\n {...(option.htmlProps ?? {})}\n >\n {option.timedOut ? (\n <Fragment>\n <div class=\"loading-error-info\">\n <svg\n class=\"error-icon-svg\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"#000000\"\n >\n <title>Error</title>\n <g>\n <path d=\"M8.77 3L3.5 8.27V15.73L8.77 21H16.23L21.5 15.73V8.27L16.23 3M8.91 7L12.5 10.59L16.09 7L17.5 8.41L13.91 12L17.5 15.59L16.09 17L12.5 13.41L8.91 17L7.5 15.59L11.09 12L7.5 8.41\" />\n </g>\n </svg>\n <ic-typography variant=\"label\">\n {option[this.labelField]}\n </ic-typography>\n </div>\n <ic-button\n size=\"small\"\n variant=\"tertiary\"\n onClick={this.handleRetry}\n onKeyDown={this.handleRetryKeyDown}\n onBlur={this.handleTimeoutBlur}\n id=\"retry-button\"\n >\n Retry\n </ic-button>\n </Fragment>\n ) : (\n this.optionContent(option, selected)\n )}\n </li>\n );\n };\n\n render() {\n const {\n inputLabel,\n options,\n menuId,\n value,\n fullWidth,\n hasTimedOut,\n isLoading,\n size,\n open,\n inputEl,\n keyboardNav,\n parentEl,\n SEARCH_BAR_TAG,\n multiSelect,\n } = this;\n\n const selectAllButtonText = `${\n value?.length === this.ungroupedOptions.length ? \"Clear\" : \"Select\"\n } all`;\n\n const hasNoResults = this.host.classList.contains(\"no-results\");\n\n return (\n <Host\n class={{\n \"ic-menu-full-width\": !!fullWidth,\n \"ic-menu-no-focus\":\n (inputEl?.tagName === \"INPUT\" &&\n parentEl?.tagName !== SEARCH_BAR_TAG) ||\n hasTimedOut ||\n isLoading,\n [`ic-menu-${size}`]: true,\n \"ic-menu-open\": open && options.length !== 0,\n \"ic-menu-multiple\": multiSelect,\n }}\n >\n {options.length !== 0 && (\n <ul\n id={menuId}\n class=\"menu\"\n role=\"listbox\"\n aria-label={`${inputLabel} pop-up`}\n aria-multiselectable={multiSelect ? \"true\" : \"false\"}\n tabindex={\n open &&\n !keyboardNav &&\n (inputEl?.tagName !== \"INPUT\" ||\n parentEl?.tagName === SEARCH_BAR_TAG)\n ? \"0\"\n : \"-1\"\n }\n ref={(el) => (this.menu = el)}\n onKeyDown={this.handleMenuKeyDown}\n onKeyUp={this.handleMenuKeyUp}\n onBlur={this.handleBlur}\n >\n {this.getSortedOptions(options).map((option, index) => {\n if (option.children) {\n if (option.children.length > 0) {\n return (\n <div>\n <ic-typography\n class=\"option-group-title\"\n role=\"presentation\"\n variant=\"subtitle-small\"\n >\n <p>{option[this.labelField]}</p>\n </ic-typography>\n {option.children.map(\n (childOption) =>\n childOption[this.labelField] &&\n this.displayOption(\n childOption,\n multiSelect\n ? value?.includes(childOption[this.valueField])\n : childOption[this.valueField] === value,\n index,\n option\n )\n )}\n </div>\n );\n } else {\n return null;\n }\n } else {\n // Display option only if it has a label (rather than displaying an empty space)\n return (\n option[this.labelField] &&\n this.displayOption(\n option,\n multiSelect\n ? value?.includes(option[this.valueField])\n : option[this.valueField] === value,\n index\n )\n );\n }\n })}\n </ul>\n )}\n {options.length !== 0 &&\n multiSelect &&\n !isLoading &&\n !hasTimedOut &&\n !hasNoResults && (\n <div class=\"option-bar\">\n <ic-typography>\n <p>{`${\n value ? value.length : 0\n }/${getOptionsWithoutGroupTitlesCount(\n this.options\n )} selected`}</p>\n </ic-typography>\n <ic-button\n class=\"select-all-button\"\n aria-label={`${selectAllButtonText} options for ${inputLabel}`}\n ref={(el) => (this.selectAllButton = el)}\n variant=\"tertiary\"\n onClick={this.handleSelectAllClick}\n onMouseDown={this.handleSelectAllMouseDown}\n onBlur={this.handleSelectAllBlur}\n onFocus={this.handleSelectAllFocus}\n size={size === \"small\" ? \"small\" : \"medium\"}\n >\n {selectAllButtonText}\n </ic-button>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,h as t,H as a,g as i}from"./p-8e4e97b4.js";import{
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,h as t,H as a,g as i}from"./p-8e4e97b4.js";import{E as n,k as s,F as o,a as d}from"./p-7bbd1881.js";const r='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;z-index:var(--ic-z-index-page-header)}:host(.ic-page-header-sticky){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}header{background-color:var(--ic-page-header-background)}header.border-bottom{border-bottom:var(--ic-border-default);border-bottom:var(--ic-space-1px) solid var(--ic-page-header-border)}header.tabs{padding-top:var(--ic-space-md)}.breadcrumb-area{margin-bottom:var(--ic-space-md)}::slotted(ic-navigation-item){--navigation-link-colour:var(--ic-color-text-primary)}.main-content{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"title-area action-area"\n "input-area action-area";-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md);justify-content:space-between;width:100%}.title-area{display:flex;flex-direction:column;flex:1;min-width:19rem;grid-area:title-area}.header-content{display:flex;align-items:center;width:100%;flex-wrap:wrap;-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md)}.heading{display:inline-block;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.subheading-content{margin-top:var(--ic-space-xs)}.subheading-content.small{margin-top:var(--ic-space-md)}.action-area{display:flex;gap:var(--ic-space-md);flex-flow:row wrap;justify-self:end;justify-content:flex-end;height:-moz-fit-content;height:fit-content;grid-area:action-area}.input-area,.navigation-area{margin-top:var(--ic-space-md);width:100%}.tabs-slot{display:flex;overflow-x:auto;padding:0.5rem;margin:-0.5rem}.tabs-slot::-webkit-scrollbar{display:none}.input-area{grid-area:input-area}@media screen and (max-width: 576px){::slotted(ic-text-field){--input-width:100%;max-width:20rem}.main-content{grid-template-areas:"title-area"\n "action-area"\n "input-area";justify-content:flex-start}.title-area{min-width:0}.action-area{min-width:100%;margin-top:var(--ic-space-md);justify-content:start}}@media screen and (min-width: 992px){:host(.ic-page-header-sticky-desktop){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}}';const c=r;const l=class{constructor(t){e(this,t);this.resizeObserver=null;this.areButtonsReversed=false;this.deviceSize=n.XL;this.aligned="left";this.border=true;this.reverseOrder=false;this.size="medium";this.sticky=false;this.stickyDesktopOnly=false;this.theme="inherit";this.resizeObserverCallback=()=>{if(this.reverseOrder&&s(this.el,"actions")){this.applyReverseOrder()}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback()}));this.resizeObserver.observe(this.el)};this.applyReverseOrder=()=>{var e;const t=o();if(t!==this.deviceSize){this.deviceSize=t}const a=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("div.action-area");const i=[];for(let e=0;e<this.actionContent.length;e++){const t=this.actionContent[e];let a=t.offsetHeight;if(a===undefined){a=0}i.push(a)}const s=Math.max(...i);let d=a.offsetHeight;if(d===undefined){d=0}const r=()=>{this.actionContent=this.actionContent.reverse();this.actionContent.forEach((e=>{this.el.append(e)}));this.areButtonsReversed=!this.areButtonsReversed};if(this.deviceSize>n.S&&d<=s&&!this.areButtonsReversed||(this.deviceSize>n.S&&d>s||this.deviceSize<=n.S)&&this.areButtonsReversed){r()}}}disconnectedCallback(){if(this.resizeObserver!==null){this.resizeObserver.disconnect()}}componentWillLoad(){this.actionContent=Array.from(this.el.querySelectorAll(`[slot="actions"]`))}componentDidLoad(){d(this.runResizeObserver)}render(){var e,i;const{size:n,border:o,heading:d,subheading:r,aligned:c,sticky:l,stickyDesktopOnly:b,theme:h}=this;const p=`${s(this.el,"heading")?(i=(e=this.el.querySelector('[slot="heading"]'))===null||e===void 0?void 0:e.textContent)!==null&&i!==void 0?i:"":d!==null&&d!==void 0?d:""} page sections`;return t(a,{key:"7ed88a81bb62e440bea9e97a2d87837f63fc02a1",class:{["ic-page-header-sticky"]:!!l,["ic-page-header-sticky-desktop"]:!l&&!!b,[`ic-theme-${h}`]:h!=="inherit"},"aria-label":this.el.ariaLabel||"page header"},t("header",{key:"2c361bc7d587b243952f6339f6afc893772a6153",class:{["border-bottom"]:!!o,["tabs"]:s(this.el,"tabs")},role:"presentation"},t("ic-section-container",{key:"19776b168cc0dab0c563d3a93e34014b3848e49e",aligned:c,fullHeight:s(this.el,"tabs")},s(this.el,"breadcrumbs")&&t("div",{key:"36ab3835c78d8f1d409d37d358bfea891e32dc6b",class:"breadcrumb-area"},t("slot",{key:"d095e79ff158db25826e508a7022c897a6d0ba41",name:"breadcrumbs"})),t("div",{key:"7f5de110c8aebcd67f6791dd7fda77f5585b5241",class:"main-content"},t("div",{key:"db9e213bcd453c2e741b73abc3e034b5e45723e6",class:"title-area"},t("div",{key:"f4ea9f56688a7f60898481de41049b743f2b7078",class:"header-content"},t("slot",{key:"5a2bdb43923e1b0b4fdfde51f9f1d9ace5162fc1",name:"heading"},t("ic-typography",{key:"bfad0a8def3ccf090cd1f82634c915038ef49bd1",variant:n==="small"?"h4":"h2",class:"heading"},t("h2",{key:"efab73bc6d371e3cf61d38c52cb22ddafdfd9bd7"},d))),t("slot",{key:"a35d250e4041953454ec174b89cbe740c8f9f419",name:"heading-adornment"})),t("div",{key:"445fe754ffec9e21b73329d1608d9a3d4027c0f5",class:{["subheading-content"]:!!r||s(this.el,"subheading"),["small"]:n==="small"}},t("slot",{key:"ff911bb68bd36ea697a7f4b623ae28693acf5c25",name:"subheading"},t("ic-typography",{key:"66807b793bdd9685e2df568597f88bfa7a4e91de",variant:"body"},r)))),s(this.el,"actions")&&t("div",{key:"4e29bc2c178116e9dd3bcee917636837dbd48a97",class:"action-area"},t("slot",{key:"c84446c9ece89da9d5a056b0907c77330af84908",name:"actions"})),s(this.el,"input")&&t("div",{key:"fad702552bb9973c886b6f68ccd9fd9063f8edde",class:"input-area"},t("slot",{key:"143d51091444da20816c9c71bca32ef71a986949",name:"input"}))),(s(this.el,"stepper")||s(this.el,"tabs"))&&t("div",{key:"091b3dde7a3bdba276f2dd55ca78037b8f730198",class:"navigation-area"},s(this.el,"stepper")&&!s(this.el,"tabs")&&t("slot",{key:"b73d0a7c2bc77d71960d8834fff33d2c6c5984f1",name:"stepper"}),s(this.el,"tabs")&&t("nav",{key:"c5be8fb9ce345f6f94d74a5b0eea5dde36ba16fd","aria-label":p},t("ic-horizontal-scroll",{key:"9268edee9e80493308674222ae49272e00b79b1b"},t("ul",{key:"bd252bae0c2663d9587aa2148a68efcf8a11965d",class:"tabs-slot"},t("slot",{key:"0ecea1b54db3021ee3e0f2c3f91854bfcfd116c6",name:"tabs"}))))))))}get el(){return i(this)}};l.style=c;export{l as P};
|
|
2
|
+
//# sourceMappingURL=p-5d5b1aa8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["icPageHeaderCss","IcPageHeaderStyle0","PageHeader","constructor","hostRef","this","resizeObserver","areButtonsReversed","deviceSize","DEVICE_SIZES","XL","aligned","border","reverseOrder","size","sticky","stickyDesktopOnly","theme","resizeObserverCallback","isSlotUsed","el","applyReverseOrder","runResizeObserver","ResizeObserver","observe","currSize","getCurrentDeviceSize","actionArea","_a","shadowRoot","querySelector","actionHeights","i","actionContent","length","action","actionHeight","offsetHeight","undefined","push","max","Math","actionAreaHeight","appendActionContent","reverse","forEach","btn","append","S","disconnectedCallback","disconnect","componentWillLoad","Array","from","querySelectorAll","componentDidLoad","checkResizeObserver","render","heading","subheading","navAriaLabel","_b","textContent","h","Host","key","class","ariaLabel","role","fullHeight","name","variant"],"sources":["../web-components/src/components/ic-page-header/ic-page-header.css?tag=ic-page-header&encapsulation=shadow","../web-components/src/components/ic-page-header/ic-page-header.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-page-header: z-index of page-header\n */\n\n:host {\n display: block;\n z-index: var(--ic-z-index-page-header);\n}\n\n:host(.ic-page-header-sticky) {\n position: sticky;\n top: 0;\n box-shadow: var(--ic-elevation-overlay);\n z-index: var(--ic-z-index-sticky-page-header);\n}\n\nheader {\n background-color: var(--ic-page-header-background);\n}\n\nheader.border-bottom {\n border-bottom: var(--ic-border-default);\n border-bottom: var(--ic-space-1px) solid var(--ic-page-header-border);\n}\n\nheader.tabs {\n padding-top: var(--ic-space-md);\n}\n\n.breadcrumb-area {\n margin-bottom: var(--ic-space-md);\n}\n\n::slotted(ic-navigation-item) {\n --navigation-link-colour: var(--ic-color-text-primary);\n}\n\n.main-content {\n display: grid;\n grid-template-columns: auto 1fr;\n grid-template-areas:\n \"title-area action-area\"\n \"input-area action-area\";\n column-gap: var(--ic-space-md);\n justify-content: space-between;\n width: 100%;\n}\n\n.title-area {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 19rem;\n grid-area: title-area;\n}\n\n.header-content {\n display: flex;\n align-items: center;\n width: 100%;\n flex-wrap: wrap;\n column-gap: var(--ic-space-md);\n}\n\n.heading {\n display: inline-block;\n overflow-wrap: break-word;\n hyphens: auto;\n}\n\n.subheading-content {\n margin-top: var(--ic-space-xs);\n}\n\n.subheading-content.small {\n margin-top: var(--ic-space-md);\n}\n\n.action-area {\n display: flex;\n gap: var(--ic-space-md);\n flex-flow: row wrap;\n justify-self: end;\n justify-content: flex-end;\n height: fit-content;\n grid-area: action-area;\n}\n\n.input-area,\n.navigation-area {\n margin-top: var(--ic-space-md);\n width: 100%;\n}\n\n.tabs-slot {\n display: flex;\n overflow-x: auto;\n padding: 0.5rem;\n margin: -0.5rem;\n}\n\n.tabs-slot::-webkit-scrollbar {\n display: none;\n}\n\n.input-area {\n grid-area: input-area;\n}\n\n@media screen and (max-width: 576px) {\n ::slotted(ic-text-field) {\n --input-width: 100%;\n\n max-width: 20rem;\n }\n\n .main-content {\n grid-template-areas:\n \"title-area\"\n \"action-area\"\n \"input-area\";\n justify-content: flex-start;\n }\n\n .title-area {\n min-width: 0;\n }\n\n .action-area {\n min-width: 100%;\n margin-top: var(--ic-space-md);\n justify-content: start;\n }\n}\n\n@media screen and (min-width: 992px) {\n :host(.ic-page-header-sticky-desktop) {\n position: sticky;\n top: 0;\n box-shadow: var(--ic-elevation-overlay);\n z-index: var(--ic-z-index-sticky-page-header);\n }\n}\n","import { Component, Host, h, Prop, Element, State } from \"@stencil/core\";\n\nimport { IcAlignment, IcSizesNoLarge, IcThemeMode } from \"../../utils/types\";\n\nimport {\n isSlotUsed,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n checkResizeObserver,\n} from \"../../utils/helpers\";\n\n/**\n * @slot breadcrumbs - Content will be rendered in the breadcrumb area, above the title and action areas.\n * @slot heading - Content will be rendered in the title area, in place of the heading.\n * @slot subheading - Content will be rendered in the title area, in place of the subheading.\n * @slot heading-adornment - Content will be rendered in the title area, adjacent to the heading.\n * @slot actions - Content will be rendered in the action area, adjacent to the title area.\n * @slot input - Content will be rendered in the input area, below the title area and adjacent to the action area.\n * @slot stepper - Content will be rendered in the navigation area, below the title and action areas. Note: stepper slot cannot be used when the tabs slot is being used.\n * @slot tabs - Content will be rendered in the navigation area, below the title and action areas. Note: the stepper slot cannot be used when the tabs slot is being used.\n */\n\n@Component({\n tag: \"ic-page-header\",\n styleUrl: \"ic-page-header.css\",\n shadow: true,\n})\nexport class PageHeader {\n private resizeObserver: ResizeObserver | null = null;\n\n @Element() el: HTMLIcPageHeaderElement;\n\n @State() actionContent: Node[];\n @State() areButtonsReversed: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n\n /**\n * The alignment of the page header.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * If `true`, a border will be displayed along the bottom of the page header.\n */\n @Prop() border?: boolean = true;\n\n /**\n * The title to render on the page header.\n */\n @Prop() heading?: string;\n\n /**\n * If `true`, the reading pattern and tab order will change in the action area for viewport widths of above 576px and when actions have not wrapped.\n */\n @Prop() reverseOrder?: boolean = false;\n\n /**\n * The size of the page header component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * If `true`, the page header will be sticky at all breakpoints.\n */\n @Prop() sticky?: boolean = false;\n\n /**\n * If `true`, the page header will only be sticky for viewport widths of 992px and above.\n */\n @Prop() stickyDesktopOnly?: boolean = false;\n\n /**\n * The subtitle to render on the page header.\n */\n @Prop() subheading?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n componentWillLoad(): void {\n this.actionContent = Array.from(\n this.el.querySelectorAll(`[slot=\"actions\"]`)\n );\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n }\n\n private resizeObserverCallback = () => {\n if (this.reverseOrder && isSlotUsed(this.el, \"actions\")) {\n this.applyReverseOrder();\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback();\n });\n this.resizeObserver.observe(this.el);\n };\n\n private applyReverseOrder = (): void => {\n const currSize = getCurrentDeviceSize();\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n\n const actionArea = this.el.shadowRoot?.querySelector(\n \"div.action-area\"\n ) as HTMLElement;\n const actionHeights: number[] = [];\n\n /* For each button in the actions slot, check the height of the button and push this number into the actionHeights array and then find the greatest number in this array (i.e. find the height of the tallest button) */\n for (let i = 0; i < this.actionContent.length; i++) {\n const action = this.actionContent[i] as HTMLElement;\n let actionHeight = action.offsetHeight;\n if (actionHeight === undefined) {\n actionHeight = 0;\n }\n actionHeights.push(actionHeight);\n }\n\n const max = Math.max(...actionHeights);\n\n /* The smallest breakpoint displays buttons in the same order the user has slotted them in. When the device size is larger than the small breakpoint then the order of the button reverses due to best practice for reading patterns. If the device size is larger than the small breakpoint and the buttons have started to wrap then they follow the order the user has slotted them in. This logic is programmed based on the height of the action-area div that wraps the actions slot. If the height of the action-area div is taller than the height of the tallest button, then it is assumed that the taller height is caused by the buttons wrapping */\n let actionAreaHeight = actionArea.offsetHeight;\n\n if (actionAreaHeight === undefined) {\n actionAreaHeight = 0;\n }\n\n const appendActionContent = () => {\n this.actionContent = this.actionContent.reverse();\n this.actionContent.forEach((btn: string | Node) => {\n this.el.append(btn);\n });\n this.areButtonsReversed = !this.areButtonsReversed;\n };\n\n if (\n (this.deviceSize > DEVICE_SIZES.S &&\n actionAreaHeight <= max &&\n !this.areButtonsReversed) ||\n (((this.deviceSize > DEVICE_SIZES.S && actionAreaHeight > max) ||\n this.deviceSize <= DEVICE_SIZES.S) &&\n this.areButtonsReversed)\n ) {\n appendActionContent();\n }\n };\n\n render() {\n const {\n size,\n border,\n heading,\n subheading,\n aligned,\n sticky,\n stickyDesktopOnly,\n theme,\n } = this;\n\n const navAriaLabel = `${\n isSlotUsed(this.el, \"heading\")\n ? this.el.querySelector('[slot=\"heading\"]')?.textContent ?? \"\"\n : heading ?? \"\"\n } page sections`;\n\n return (\n <Host\n class={{\n [\"ic-page-header-sticky\"]: !!sticky,\n [\"ic-page-header-sticky-desktop\"]: !sticky && !!stickyDesktopOnly,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n aria-label={this.el.ariaLabel || \"page header\"}\n >\n <header\n class={{\n [\"border-bottom\"]: !!border,\n [\"tabs\"]: isSlotUsed(this.el, \"tabs\"),\n }}\n role=\"presentation\"\n >\n <ic-section-container\n aligned={aligned}\n fullHeight={isSlotUsed(this.el, \"tabs\")}\n >\n {isSlotUsed(this.el, \"breadcrumbs\") && (\n <div class=\"breadcrumb-area\">\n <slot name=\"breadcrumbs\" />\n </div>\n )}\n <div class=\"main-content\">\n <div class=\"title-area\">\n <div class=\"header-content\">\n <slot name=\"heading\">\n <ic-typography\n variant={size === \"small\" ? \"h4\" : \"h2\"}\n class=\"heading\"\n >\n <h2>{heading}</h2>\n </ic-typography>\n </slot>\n <slot name=\"heading-adornment\" />\n </div>\n <div\n class={{\n [\"subheading-content\"]:\n !!subheading || isSlotUsed(this.el, \"subheading\"),\n [\"small\"]: size === \"small\",\n }}\n >\n <slot name=\"subheading\">\n <ic-typography variant=\"body\">{subheading}</ic-typography>\n </slot>\n </div>\n </div>\n {isSlotUsed(this.el, \"actions\") && (\n <div class=\"action-area\">\n <slot name=\"actions\" />\n </div>\n )}\n {isSlotUsed(this.el, \"input\") && (\n <div class=\"input-area\">\n <slot name=\"input\" />\n </div>\n )}\n </div>\n\n {(isSlotUsed(this.el, \"stepper\") ||\n isSlotUsed(this.el, \"tabs\")) && (\n <div class=\"navigation-area\">\n {isSlotUsed(this.el, \"stepper\") &&\n !isSlotUsed(this.el, \"tabs\") && <slot name=\"stepper\" />}\n {isSlotUsed(this.el, \"tabs\") && (\n <nav aria-label={navAriaLabel}>\n <ic-horizontal-scroll>\n <ul class=\"tabs-slot\">\n <slot name=\"tabs\" />\n </ul>\n </ic-horizontal-scroll>\n </nav>\n )}\n </div>\n )}\n </ic-section-container>\n </header>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
const h=`<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"/></svg>`;export{h as O};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
2
|
+
//# sourceMappingURL=p-67a4f674.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{h as t,r as e,c as i,H as s,g as a}from"./p-8e4e97b4.js";import{x as r,y as h,z as n,k as o,r as c,A as l,b as d,m as u,s as b,t as f,o as p,n as m,q as v,u as y}from"./p-829b34f9.js";import{a as w,g,b as k,y as x,c as D,e as $,d as z,f as M,h as H,i as Y,j as C,s as V,k as T}from"./p-75c3b882.js";import"./p-18d5e467.js";import"./p-f65f0065.js";import{C as P}from"./p-dd7450fb.js";import"./p-c2669ec9.js";import"./p-0592277b.js";import"./p-7bbd1881.js";import"./p-67a4f674.js";const j=`<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M9.70687 6L8.29688 7.41L12.8769 12L8.29688 16.59L9.70687 18L15.7069 12L9.70687 6Z" fill="currentColor"/>\n</svg>\n`;const I=({focussed:e,today:i,day:s,monthInView:a,onFocusDay:o,onBlurDay:c,onSelectDay:l,selected:d,focussedDayRef:u,inRange:b,showDaysOutsideMonth:f,disableDay:p})=>{const m=()=>{l(s)};const v=()=>{o()};const y=()=>{c()};const w=r(h);const g=r(n);const k=!b||p;const x=a!==s.getMonth();const D=k||x&&!f;return t("div",{class:"day-button-container"},t("button",{class:{"day-button":true,"outside-month":x,"outside-range":!!k,hidden:x&&!f,disabled:D,today:i,selected:d,focussed:e},tabIndex:e?0:-1,"aria-hidden":x?"true":"false","aria-disabled":D?"true":"false","aria-current":i?"date":undefined,"aria-label":D||x||k?undefined:`Choose ${w[s.getDay()]}, ${s.getDate()} ${g[s.getMonth()]} ${s.getFullYear()}`,disabled:D,onClick:m,onBlur:y,onFocus:v,ref:t=>{if(e&&t&&u){u(t)}}},(!x||x&&f)&&t("ic-typography",{variant:"subtitle-small",italic:x},s.getDate())))};const L=({size:e,focussedMonth:i,monthInView:s,onSelectMonth:a,onKeyDown:h,focussedMonthRef:o,minDate:c,maxDate:l,yearInView:d})=>{const u=t=>{const e=t.target;a(Number(e.getAttribute("data-month")))};const b=r(n);const f=e==="small"?2:3;const p=[];for(let t=0;t<b.length;t+=f){p.push(b.slice(t,t+f))}return t("div",{class:{"month-picker":true},role:"grid"},p.map(((a,r)=>t("div",{class:"month-picker-row",key:r,role:"row"},a.map(((a,n)=>{const b=r*f+n;const p=s===b;const m=i===b;const v=!w(new Date(d,b,1),c?k(c):null,l?g(l):null);return t("ic-button",{role:"gridcell",class:{"month-button":true,selected:p,focussed:m,disabled:v},"full-width":true,disabled:v,variant:p?"primary":"tertiary","data-month":b,size:e,tabIndex:m?0:-1,"aria-current":p?"true":"false","aria-label":p?"":`select ${a}`,onClick:u,onKeyDown:h,ref:t=>{if(m&&t){o(t)}}},a)}))))))};const A=({decadeView:e,size:i,focussedYear:s,yearInView:a,onSelectYear:r,onFocusYear:h,onBlurYear:n,onKeyDown:o,minDate:c,maxDate:l,focussedYearRef:d})=>{const u=t=>{const e=t.target;r(Number(e.getAttribute("data-year")))};const b=()=>{h()};const f=()=>{n()};const p=t=>{t.preventDefault()};const m=i==="small"?2:3;const v=i==="small"?6:4;const y=[];for(let t=0;t<e.length;t+=m){y.push(e.slice(t,t+m))}const w=(e,r,h)=>{const n=r===0&&h===0;const y=r===v-1&&h===m-1;const w=a===e;const g=s===e;return t("ic-button",{key:e,role:"gridcell",id:n?"prev-decade-button":y?"next-decade-button":undefined,class:{"prev-decade":n,"next-decade":y,"year-button":true,selected:!n&&!y?w:false,focussed:!n&&!y?g:false,flip:y},"full-width":true,disabled:!x(e,c,l),"data-year":e,tabIndex:n||y?-1:g?0:-1,variant:n||y?"tertiary":w?"primary":"tertiary",onClick:u,onMouseDown:n||y?p:undefined,size:i,"aria-label":!n&&!y?w?"":`select ${e}`:undefined,"aria-current":!n&&!y?w?"true":"false":undefined,onKeyDown:!n&&!y?o:undefined,onFocus:!n&&!y?b:undefined,onBlur:!n&&!y?f:undefined,ref:!n&&!y&&g?t=>t&&d(t):undefined},n?`${e-9}s`:y?`${e}s`:e,(n||y)&&t("svg",{slot:n?"left-icon":"right-icon",width:"12",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},t("path",{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z",fill:"currentColor"})))};return t("div",{class:"year-picker",role:"grid"},y.map(((e,i)=>t("div",{class:"year-picker-row",role:"row",key:i},e.map(((t,e)=>w(t,i,e)))))))};const B='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.ic-date-picker-above) .calendar-container{bottom:calc(var(--ic-space-xxl) - var(--ic-space-xxs))}:host(.ic-date-picker-calendar) .calendar-container{position:absolute;min-width:19rem;max-width:23.5rem;width:var(--input-width);margin-top:var(--ic-space-xxxs);animation:fade-in-calendar var(--ic-transition-duration-slow);box-shadow:var(--ic-calendar-elevation)}:host .calendar-container{display:flex;flex-direction:column;gap:var(--ic-space-xs);width:-moz-fit-content;width:fit-content;border:var(--ic-border-default);border-color:var(--ic-calendar-border);border-radius:var(--ic-border-radius);align-items:center;background-color:var(--ic-calendar-bg);z-index:var(--ic-z-index-calendar);box-sizing:border-box;padding:var(--ic-space-xs)}:host(.ic-calendar-small) .calendar-container{min-width:17rem;max-width:21.5rem}:host(.ic-calendar-large) .calendar-container{min-width:21rem;max-width:25.5rem}:host(.ic-calendar-large){--month-button-width:6.3125rem}:host(.ic-calendar-small){--month-button-width:6.25rem}:host .month-year-nav-container{display:flex;justify-content:space-between;align-items:center;align-self:stretch}:host .month-year-nav-container.hidden{display:none}:host .month-year-nav{display:flex;justify-content:space-between;align-items:center;flex:1 0 0}:host .month-picker,:host .year-picker{display:flex;flex-direction:column;align-items:center;width:17.5rem;-moz-column-gap:var(--ic-space-xs);column-gap:var(--ic-space-xs);row-gap:var(--ic-space-xxs)}:host(.ic-calendar-small) .month-picker,:host(.ic-calendar-small) .year-picker{width:13.125rem}:host(.ic-calendar-large) .month-picker,:host(.ic-calendar-large) .year-picker{width:20rem}:host .month-picker .month-picker-row,:host .year-picker .year-picker-row{display:inline-grid;grid-template-columns:repeat(3, minmax(0, 1fr));width:100%;gap:var(--ic-space-xs)}:host(.ic-calendar-small) .month-picker .month-picker-row,:host(.ic-calendar-small) .year-picker .year-picker-row{grid-template-columns:repeat(2, minmax(0, 1fr))}:host .month-picker-button,:host .year-picker-button{width:5rem;--min-width:5rem}:host .month-button,:host .year-button{width:var(--month-button-width)}:host .month-button.focussed,:host .year-button.focussed{z-index:1}:host .month-button::part(button),:host .year-button::part(button){min-width:var(--month-button-width);padding:var(--ic-space-xs) auto}:host .prev-decade.year-button svg{margin-right:calc(-1 * var(--ic-space-xs));--icon-width:var(--ic-space-md);--icon-height:var(--ic-space-md)}:host(.ic-calendar-small) .prev-decade.year-button svg{margin-right:calc(-1 * calc(var(--ic-space-md) + var(--ic-space-1px)))}:host(.ic-calendar-large) .prev-decade.year-button svg{margin-right:calc(-1 * calc(var(--ic-space-md) + var(--ic-space-xxs)))}:host .prev-decade.year-button::part(button){padding-left:0;padding-right:var(--ic-space-lg);gap:var(--ic-space-xxxs);display:inline-grid;grid-template-columns:1.5rem 1fr}:host(.ic-calendar-small) .prev-decade.year-button::part(button){padding-left:0;padding-right:calc(var(--ic-space-lg) + var(--ic-space-xxs))}:host .next-decade.year-button svg{margin-left:calc(-1 * var(--ic-space-lg));--icon-width:var(--ic-space-md);--icon-height:var(--ic-space-md)}:host(.ic-calendar-small) .next-decade.year-button svg,:host(.ic-calendar-large) .next-decade.year-button svg{margin-left:calc(\n -1 * (var(--ic-space-lg) + var(--ic-space-xs) + var(--ic-space-1px))\n )}:host .next-decade.year-button::part(button){padding-right:0;padding-left:var(--ic-space-lg);gap:var(--ic-space-xxxs);display:inline-grid;grid-template-columns:1fr 1.5rem}:host(.ic-calendar-small) .next-decade.year-button::part(button),:host(.ic-calendar-large) .next-decade.year-button::part(button){padding-left:calc(var(--ic-space-xl) - var(--ic-space-xxs))}:host .bottom-buttons{display:flex;justify-content:space-between;align-items:center;align-self:stretch;animation:fade-in-buttons var(--ic-transition-duration-slow)}:host .bottom-buttons.no-today{align-items:flex-end;flex-direction:column}:host .bottom-buttons.hidden{display:none}:host .calendar{display:flex;flex-direction:column;align-items:flex-start;width:15.75rem;animation:fade-in-buttons var(--ic-transition-duration-slow)}:host(.ic-calendar-large) .calendar{width:19.25rem}:host(.ic-calendar-small) .calendar{padding-bottom:var(--ic-space-xxs);width:14rem}:host .hidden{display:none}:host .weekdays-container{display:flex;align-self:stretch}:host .weekdays{display:flex;flex-grow:1;justify-content:space-between;align-items:flex-start;padding-bottom:var(--ic-space-xs)}:host .calendar-days-container{display:flex;flex-wrap:wrap;justify-content:space-between;row-gap:var(--ic-space-xs);padding:var(--ic-space-xxs) 0;min-height:16rem;align-content:flex-start}:host(.ic-calendar-small) .calendar-days-container{padding:var(--ic-space-xxxs) 0;min-height:14.5rem}:host(.ic-calendar-large) .calendar-days-container{padding:var(--ic-space-xs) 0;min-height:17.5rem}:host .calendar-days-container tr{display:flex;flex-grow:1;justify-content:space-between;border-spacing:0}:host .calendar-day-header{display:flex;width:2rem;padding:var(--ic-space-xxs) 0;justify-content:center;align-items:center;color:var(--ic-typography-color, var(--ic-color-text-primary));--ic-typography-color:var(--ic-calendar-label);text-align:center;font:var(--ic-font-caption);letter-spacing:var(--ic-font-letter-spacing-0pt0025)}:host(.ic-calendar-large) .calendar-day-header{padding:var(--ic-space-xxs)}:host .day-button-container{display:flex;justify-content:center;align-items:center;width:2.25rem;height:2.25rem}:host(.ic-calendar-small) .day-button-container{width:2rem;height:2rem}:host(.ic-calendar-large) .day-button-container{width:2.5rem;height:2.5rem}:host .day-button{display:flex;position:relative;justify-content:center;align-items:center;border:0;border-radius:2rem;background-color:var(--ic-calendar-bg);width:2rem;height:2rem;cursor:pointer;transition:var(--ic-easing-transition-fast);z-index:0}:host .day-button.disabled{cursor:default}:host(.ic-calendar-large) .day-button{width:2.25rem;height:2.25rem}:host(.ic-calendar-small) .day-button{width:1.75rem;height:1.75rem}:host .day-button ic-typography{width:1.75rem;--ic-typography-color:var(--ic-calendar-date-label-default)}:host .day-button.outside-range ic-typography{--ic-typography-color:var(--ic-calendar-date-label-disabled)}:host .day-button.outside-month ic-typography{font-weight:var(--ic-font-weight-regular) !important}:host .day-button.outside-month:not(.outside-range):not(.selected) ic-typography{--ic-typography-color:var(--ic-calendar-date-label-default)}:host .day-button:hover:not(.disabled){background-color:var(--ic-calendar-date-default-bg-hover)}:host .day-button:active:not(.disabled){background-color:var(--ic-calendar-date-default-bg-pressed)}@media (prefers-reduced-motion: no-preference){:host .day-button:hover:not(.disabled):not(.focussed),:host .day-button:active:not(.disabled):not(.focussed){transition:background-color var(--ic-transition-duration-slow) ease-in-out}}:host .day-button.selected:not(.hidden){background-color:var(--ic-calendar-date-active-bg-default)}:host .day-button.selected ic-typography{--ic-typography-color:var(--ic-calendar-date-label-selected)}:host .day-button.selected:not(.hidden):hover{background-color:var(--ic-calendar-date-active-bg-hover)}:host .day-button.selected:not(.hidden):active{background-color:var(--ic-calendar-date-active-bg-pressed)}:host .day-button.focussed{z-index:1}:host .day-button:focus{outline:none}:host .day-button.focussed:focus{box-shadow:var(--ic-border-focus)}:host .day-button.today:not(.hidden)::after{content:"";position:absolute;width:0.875rem;height:0.125rem;bottom:0.4rem;border-radius:var(--ic-border-radius);background-color:var(--ic-calendar-default-underline)}:host(.ic-calendar-small) .day-button.today::after{bottom:0.35rem}:host(.ic-calendar-large) .day-button.today::after{width:1rem}:host .day-button.today.selected::after{background-color:var(--ic-calendar-selected-underline)}:host #select-month-hint,:host #select-year-hint{display:none}.sr-only{position:absolute;left:-9999px}@media (prefers-reduced-motion: reduce){:host .calendar-container,:host .calendar,:host .bottom-buttons{animation:none}}@keyframes fade-in-buttons{0%{opacity:0}50%{opacity:0}100%{opacity:1}}@keyframes fade-in-calendar{0%{display:flex;max-height:0}100%{display:flex;max-height:600px}}@media (forced-colors: active){:host .day-button.today:not(.hidden)::after{background-color:highlight}:host .day-button.selected:not(.hidden){background-color:highlight}:host .day-button.focussed:focus{border:var(--ic-border-hc)}:host .month-button.selected::part(button),:host .year-button.selected::part(button){background-color:highlight}}';const E=B;const F=100;const N=class{constructor(s){e(this,s);this.icChange=i(this,"icChange",7);this.icCalendarClearButtonClick=i(this,"icCalendarClearButtonClick",7);this.icCalendarDaySelect=i(this,"icCalendarDaySelect",7);this.icCalendarMonthSelect=i(this,"icCalendarMonthSelect",7);this.icCalendarYearSelect=i(this,"icCalendarYearSelect",7);this.daysOfWeek=[];this.dayButtonFocussed=false;this.dayPickerKeyboardNav=false;this.dialogDescription="";this.focusDay=true;this.liveRegionEl=undefined;this.monthNames=[];this.monthInViewUpdateHandled=false;this.parentIsDatePicker=false;this.today=new Date;this.yearButtonFocussed=false;this.clearButtonClicked=false;this.currMonthView=[];this.currYearPickerView=[];this.decadeView=[];this.focussedDate=null;this.maxDate=null;this.minDate=null;this.monthPickerVisible=false;this.orderedDaysOfWeek=[];this.selectedDate=null;this.yearPickerVisible=false;this.dateFormat="DD/MM/YYYY";this.disabled=false;this.disableDays=[];this.disableFuture=false;this.disablePast=false;this.max="";this.min="";this.openAtDate="";this.showClearButton=true;this.showDaysOutsideMonth=true;this.showTodayButton=true;this.size="medium";this.startOfWeek=o.Monday;this.theme="inherit";this.value="";this.isValidDateValue=t=>{if(t==null)return true;if(t instanceof Date){return!isNaN(t.getTime())}if(typeof t!=="string")return false;const e=/^\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?)?$/;if(e.test(t)){return!isNaN(Date.parse(t))}const[i,s,a]=t.split("/").map(Number);if([i,s,a].some(isNaN))return false;let r,h,n;switch(this.dateFormat){case"DD/MM/YYYY":[r,h,n]=[i,s,a];break;case"MM/DD/YYYY":[h,r,n]=[i,s,a];break;case"YYYY/MM/DD":[n,h,r]=[i,s,a];break;default:return false}if(h<1||h>12||r<1||r>31)return false;const o=new Date(n,h-1,r);return o.getFullYear()===n&&o.getMonth()===h-1&&o.getDate()===r};this.isPresent=t=>t!==""&&t!==undefined&&t!==null;this.setOpenAtDate=()=>{var t;let e=null;if(this.disabled){e=new Date}else{if(this.clearButtonClicked){e=this.focussedDate?this.focussedDate:new Date;this.clearButtonClicked=false}else{if(!this.disabled&&this.value!=null&&this.isValidDateValue(this.value)){e=D(this.value,this.dateFormat)}if(!!e&&w(e,this.minDate,this.maxDate)){const i=e.getDay();if(!!this.disableDays&&this.disableDays.length>0&&typeof i=="number"&&this.disableDays.includes(i)){e=D((t=this.value)!==null&&t!==void 0?t:new Date,this.dateFormat);this.setSelectedDate(null)}else{this.setSelectedDate(e)}}else if(this.isPresent(this.openAtDate)){e=D(this.openAtDate,this.dateFormat)}else{e=new Date}}}this.setFocussedDate(e);this.updateMonthInView();let i=this.getMonthInViewText();if(this.selectedDate===null){i+=" No date selected."}i+=` Use arrow keys to change day. Press enter or space to select a date${this.parentIsDatePicker?" or press escape to close the picker":""}.`;this.dialogDescription=i;setTimeout((()=>this.focusFocussedDay()),F)};this.setFocussedDayEl=t=>{this.focussedDayEl=t};this.setFocussedMonthEl=t=>{this.focussedMonthEl=t};this.setFocussedYearEl=t=>{this.focussedYearEl=t};this.setFocussedYear=(t,e=true)=>{const i=this.focussedYear;this.focussedYear=t;if(this.yearPickerVisible){const s=Math.floor(t/10)*10;const a=Math.floor(i/10)*10;if(s!==a){this.setDecadeView(s);this.setAriaLiveRegionText(this.getDecadeInViewText())}if(e){setTimeout((()=>{if(this.focussedYearEl!==null)this.focussedYearEl.setFocus()}),F)}}else{this.setDecadeView(Math.floor(t/10)*10)}};this.setFocussedDate=t=>{this.focussedDate=$(t,this.minDate,this.maxDate)};this.setSelectedDate=(t,e=true)=>{if(t===null||!z(t,this.selectedDate)){this.selectedDate=t;this.value=t;if(e){this.icChange.emit(this.setDateChangeEventDetail(t))}}};this.setDateChangeEventDetail=t=>{let e=null;let i=null;let s=null;let a=null;if(t!==null){e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate()));i=M(t.getDate());s=M(t.getMonth()+1);a=t.getFullYear().toString()}return{value:t,dateObject:{day:i===""?null:i,month:s===""?null:s,year:a===""?null:a},utcValue:e}};this.setAriaLiveRegionText=t=>{this.liveRegionEl&&(this.liveRegionEl.innerText=t)};this.goToPreviousMonth=(t=false)=>{this.focusDay=t;this.moveMonths(-1)};this.goToNextMonth=(t=false)=>{this.focusDay=t;this.moveMonths(1)};this.goToPreviousYear=(t=false)=>{if(this.isPrevYearAllowed()){this.focusDay=t;this.moveYears(-1)}};this.goToNextYear=(t=false)=>{if(this.isNextYearAllowed()){this.focusDay=t;this.moveYears(1)}};this.moveDays=t=>{if(this.focussedDate){const e=new Date(this.focussedDate);e.setDate(e.getDate()+t);this.setFocussedDate(e)}};this.moveMonths=t=>{if(this.focussedDate){const e=this.focussedDate.getMonth()+t;const i=new Date(new Date(k(this.focussedDate)).setMonth(e));const s=g(i);const a=new Date(new Date(this.focussedDate).setMonth(e));this.setFocussedDate($(a,i,s));if(this.monthPickerVisible===false&&this.yearPickerVisible===false&&this.monthInViewUpdateHandled===false){this.setAriaLiveRegionText(this.getMonthInViewText())}this.monthInViewUpdateHandled=false}};this.moveYears=t=>{if(this.focussedDate){const e=this.focussedDate.getFullYear()+t;const i=new Date(new Date(k(this.focussedDate)).setFullYear(e));const s=g(i);const a=new Date(new Date(this.focussedDate).setFullYear(e));this.setFocussedDate($(a,i,s));if(this.monthPickerVisible===false&&this.yearPickerVisible===false&&this.monthInViewUpdateHandled===false){this.setAriaLiveRegionText(this.getMonthInViewText())}this.monthInViewUpdateHandled=false}};this.updateFocussedMonth=t=>{const e=new Date(this.focussedYear,this.focussedMonth,1);e.setMonth(this.focussedMonth+t);const i=$(e,this.minDate,this.maxDate);this.focussedMonth=i.getMonth();setTimeout((()=>this.focussedMonthEl.setFocus()),F)};this.updateFocussedYear=(t,e=true)=>{const i=new Date((new Date).setFullYear(this.focussedYear+t));const s=$(i,this.minDate,this.maxDate);this.setFocussedYear(s.getFullYear(),e)};this.getNextDayToFocus=(t,e,i=1)=>{var s;const a=e?1:-1;const r=new Date(t);r.setDate(r.getDate()+a);return((s=this.disableDays)===null||s===void 0?void 0:s.includes(Number(r.getDay())))?this.getNextDayToFocus(r,e,i+1):i};this.focusFirstElement=()=>{var t;(t=this.monthButtonEl)===null||t===void 0?void 0:t.setFocus()};this.focusLastElement=()=>{if(this.showClearButton&&this.clearButtonEl&&!this.clearButtonEl.disabled){this.clearButtonEl.setFocus()}else if(this.showTodayButton&&this.todayButtonEl&&!this.todayButtonEl.disabled){this.todayButtonEl.setFocus()}else if(this.monthPickerVisible){this.focussedMonthEl.setFocus()}else if(this.yearPickerVisible){this.focussedYearEl.setFocus()}else{this.focussedDayEl.focus()}};this.focusFocussedDay=()=>{this.focussedDayEl.focus()};this.monthButtonClickHandler=()=>{this.yearPickerVisible=false;this.focusDay=false;this.monthPickerVisible=!this.monthPickerVisible;if(this.monthPickerVisible){this.setAriaLiveRegionText("Month picker view open")}else{this.setMonthSelectedLiveRegionText();this.icCalendarMonthSelect.emit()}};this.yearButtonClickHandler=()=>{this.monthPickerVisible=false;this.focusDay=false;this.yearPickerVisible=!this.yearPickerVisible;if(this.yearPickerVisible){this.setAriaLiveRegionText(`Year picker view open. ${this.getDecadeInViewText()}`)}else{this.setYearSelectedLiveRegionText();this.icCalendarYearSelect.emit()}};this.todayButtonClickHandler=()=>{this.yearPickerVisible=false;this.monthPickerVisible=false;this.setFocussedDate(new Date);this.setAriaLiveRegionText(this.getMonthInViewText());setTimeout((()=>this.focusFocussedDay()),F)};this.clearButtonClickHandler=()=>{this.clearButtonClicked=true;this.selectedDate&&this.setFocussedDate(this.selectedDate);this.setSelectedDate(null);this.icChange.emit(this.setDateChangeEventDetail(this.selectedDate));let t="Selected date cleared.";if(!this.monthPickerVisible&&!this.yearPickerVisible){t+=` ${this.getMonthInViewText()}`}if(this.monthPickerVisible){this.focussedMonthEl.setFocus()}else if(this.yearPickerVisible){this.focussedYearEl.setFocus()}else{this.focusFocussedDay()}this.setAriaLiveRegionText(t)};this.monthYearNavClickHandler=t=>{const e=t.target;switch(e.id){case"previous-month-button":this.goToPreviousMonth(this.dayButtonFocussed);break;case"next-month-button":this.goToNextMonth(this.dayButtonFocussed);break;case"previous-year-button":this.goToPreviousYear(this.dayButtonFocussed);break;case"next-year-button":this.goToNextYear(this.dayButtonFocussed);break}};this.handleCalendarClick=t=>{this.clearDialogDescription();t.stopImmediatePropagation()};this.handleCalendarKeyDown=t=>{let e=true;switch(t.key){case"ArrowDown":this.dayPickerKeyboardNav=true;this.moveDays(7);break;case"ArrowUp":this.dayPickerKeyboardNav=true;this.moveDays(-7);break;case"ArrowLeft":this.dayPickerKeyboardNav=true;if(this.focussedDate)this.moveDays(-1*this.getNextDayToFocus(this.focussedDate,false));break;case"ArrowRight":this.dayPickerKeyboardNav=true;if(this.focussedDate)this.moveDays(this.getNextDayToFocus(this.focussedDate,true));break;case"PageUp":this.dayPickerKeyboardNav=true;t.shiftKey?this.moveYears(-1):this.moveMonths(-1);break;case"PageDown":this.dayPickerKeyboardNav=true;t.shiftKey?this.moveYears(1):this.moveMonths(1);break;case"Home":this.dayPickerKeyboardNav=true;this.setFocussedDate(new Date(this.focussedYear,this.focussedMonth,1));break;case"End":this.dayPickerKeyboardNav=true;this.setFocussedDate(new Date(this.focussedYear,this.focussedMonth+1,0));break;case"Tab":e=this.calendarTabHandler(t);break;default:e=false;break}if(e){t.preventDefault()}};this.monthPickerKeyDownHandler=t=>{let e=true;switch(t.key){case"ArrowUp":case"ArrowLeft":this.updateFocussedMonth(-1);break;case"ArrowDown":case"ArrowRight":this.updateFocussedMonth(1);break;case"Home":this.updateFocussedMonth(-this.focussedMonth);break;case"End":this.updateFocussedMonth(11-this.focussedMonth);break;case"Tab":e=this.calendarTabHandler(t);break;case"Escape":t.stopImmediatePropagation();this.monthPickerVisible=false;setTimeout((()=>this.focusFocussedDay()),F);break;default:e=false}if(e){t.preventDefault()}};this.yearPickerKeyDownHandler=t=>{let e=true;switch(t.key){case"ArrowUp":case"ArrowLeft":this.updateFocussedYear(-1);break;case"ArrowDown":case"ArrowRight":this.updateFocussedYear(1);break;case"Home":if(this.focussedYear>this.decadeStart){this.updateFocussedYear(this.decadeStart-this.focussedYear)}break;case"End":if(this.focussedYear<this.decadeEnd){this.updateFocussedYear(this.decadeEnd-this.focussedYear)}break;case"PageUp":this.updateFocussedYear(-10);break;case"PageDown":this.updateFocussedYear(10);break;case"Tab":e=this.calendarTabHandler(t);break;case"Escape":t.stopImmediatePropagation();this.yearPickerVisible=false;setTimeout((()=>this.focusFocussedDay()),F);break;default:e=false}if(e){t.preventDefault()}};this.monthButtonKeyDownHandler=t=>{let e=false;switch(t.key){case"ArrowLeft":case"ArrowUp":e=true;this.goToPreviousMonth();break;case"ArrowRight":case"ArrowDown":e=true;this.goToNextMonth();break;case"Home":e=true;this.focusDay=false;this.moveMonths(-this.monthInView);break;case"End":e=true;this.focusDay=false;this.moveMonths(11-this.monthInView);break;case"Tab":if(t.shiftKey){e=true;this.focusLastElement()}break;case"Escape":if(this.monthPickerVisible){this.monthPickerVisible=false;t.stopImmediatePropagation()}break}if(e){t.preventDefault()}};this.yearButtonKeyDownHandler=t=>{let e=false;switch(t.key){case"ArrowLeft":case"ArrowUp":e=true;this.goToPreviousYear();break;case"ArrowRight":case"ArrowDown":e=true;this.goToNextYear();break;case"Home":if(this.yearPickerVisible&&this.yearInView>this.decadeStart){e=true;this.moveYears(this.decadeStart-this.yearInView)}break;case"End":if(this.yearPickerVisible&&this.yearInView<this.decadeEnd){e=true;this.moveYears(this.decadeEnd-this.focussedYear)}break;case"PageUp":e=true;this.focusDay=false;this.moveYears(-10);break;case"PageDown":e=true;this.focusDay=false;this.moveYears(10);break;case"Escape":if(this.yearPickerVisible){this.yearPickerVisible=false;t.stopImmediatePropagation()}break}if(e){t.preventDefault()}};this.todayButtonKeyDownHandler=t=>{var e;if(t.key==="Tab"&&!t.shiftKey&&((e=this.clearButtonEl)===null||e===void 0?void 0:e.disabled)&&this.parentIsDatePicker){this.focusFirstElement();t.preventDefault()}};this.clearButtonKeyDownHandler=t=>{if(t.key==="Tab"&&!t.shiftKey&&this.parentIsDatePicker){this.focusFirstElement();t.preventDefault()}};this.calendarTabHandler=t=>{var e,i;let s=false;if(!t.shiftKey&&(!this.showTodayButton||this.isCurrentMonth())&&(!this.showClearButton||((e=this.clearButtonEl)===null||e===void 0?void 0:e.disabled))&&this.parentIsDatePicker){this.focusFirstElement();s=true}else if(t.shiftKey){(i=this.yearButtonEl)===null||i===void 0?void 0:i.setFocus();s=true}return s};this.setMonthSelectedLiveRegionText=()=>{this.setAriaLiveRegionText(`${this.monthNames[this.monthInView]} selected. ${this.getMonthInViewText()}`)};this.setYearSelectedLiveRegionText=()=>{this.setAriaLiveRegionText(`${this.yearInView} selected. ${this.getMonthInViewText()}`)};this.setDecadeView=t=>{let e=t-1;const i=[];while(e<=t+10){i.push(e);e++}this.decadeView=i;this.decadeStart=i[1];this.decadeEnd=i[10]};this.getMonthInViewText=()=>`${this.monthNames[this.monthInView]} ${this.yearInView} currently in view.`;this.getDecadeInViewText=()=>`${this.decadeStart} to ${this.decadeEnd} currently in view.`;this.isPrevYearAllowed=()=>this.isYearAllowed(this.yearInView-1);this.isNextYearAllowed=()=>this.isYearAllowed(this.yearInView+1);this.isYearAllowed=t=>x(t,this.minDate,this.maxDate);this.getMonthView=t=>{const e=H(k(t),this.startOfWeek);const i=Y(e);const s=[];let a=e;while(!z(a,i)){s.push(a);a=new Date(a);a.setDate(a.getDate()+1)}s.push(a);return s};this.isCurrentMonth=()=>{const t=new Date;return t.getFullYear()===this.yearInView&&t.getMonth()===this.monthInView};this.updateMonthInView=()=>{if(this.focussedDate){this.currMonthView=this.getMonthView(this.focussedDate);this.focussedDay=this.focussedDate.getDate();this.monthInView=this.focussedDate.getMonth();this.yearInView=this.focussedDate.getFullYear();if(this.dayPickerKeyboardNav){this.monthInViewUpdateHandled=true;this.setAriaLiveRegionText(this.getMonthInViewText());this.dayPickerKeyboardNav=false}}};this.navButtonMouseDownHandler=t=>{t.preventDefault()};this.handleCalendarMouseDown=t=>{const e=t.target;if(e.tagName!=="IC-BUTTON"){t.preventDefault()}};this.handleSelectDay=t=>{this.setSelectedDate(t);this.setFocussedDate(t);this.icCalendarDaySelect.emit()};this.handleSelectMonth=t=>{this.moveMonths(t-this.monthInView);setTimeout((()=>{var t;(t=this.monthButtonEl)===null||t===void 0?void 0:t.setFocus();this.monthPickerVisible=false;this.setMonthSelectedLiveRegionText();this.icCalendarMonthSelect.emit()}),F)};this.handleSelectYear=t=>{const e=this.decadeView.indexOf(t);if(e>0&&e<this.decadeView.length-1){this.moveYears(t-this.yearInView);this.focusDay=false;const e=this.monthNames[this.monthInView];this.setAriaLiveRegionText(`${t} selected. ${e} ${t} currently in view.`);setTimeout((()=>{var t;(t=this.yearButtonEl)===null||t===void 0?void 0:t.setFocus();this.yearPickerVisible=false;this.icCalendarYearSelect.emit()}),F)}else{const e=t-this.focussedYear>0?10:-10;this.updateFocussedYear(e,this.yearButtonFocussed);this.setAriaLiveRegionText(this.getDecadeInViewText())}};this.onDayButtonFocusHandler=()=>{this.dayButtonFocussed=true};this.onDayButtonBlurHandler=()=>{this.dayButtonFocussed=false};this.onYearButtonFocusHandler=()=>{this.yearButtonFocussed=true};this.onYearButtonBlurHandler=()=>{this.yearButtonFocussed=false};this.renderMonthYearNavButton=(e,i,s)=>{const a=this.size;return t("ic-button",{id:e,disableTooltip:true,disabled:s,onClick:this.monthYearNavClickHandler,class:{flip:i},variant:"icon-tertiary",innerHTML:j,size:a,tabIndex:-1,"aria-label":`Go to ${e.slice(0,-7).replace("-"," ")}`,onMouseDown:this.navButtonMouseDownHandler})};this.previousMonthButton=()=>{let t=false;if(this.disabled){t=true}else{if(this.focussedDate!==null&&this.minDate!==null){const e=this.focussedDate.getFullYear()===this.minDate.getFullYear();if(e){t=this.monthInView-1<this.minDate.getMonth()}}}return this.renderMonthYearNavButton("previous-month-button",true,t)};this.nextMonthButton=()=>{let t=false;if(this.disabled){t=true}else{if(this.focussedDate!==null&&this.maxDate!==null){const e=this.focussedDate.getFullYear()===this.maxDate.getFullYear();if(e){t=this.monthInView+1>this.maxDate.getMonth()}}}return this.renderMonthYearNavButton("next-month-button",false,t)};this.previousYearButton=()=>this.renderMonthYearNavButton("previous-year-button",true,this.disabled||!this.isPrevYearAllowed());this.nextYearButton=()=>this.renderMonthYearNavButton("next-year-button",false,this.disabled||!this.isNextYearAllowed())}watchDisabledHandler(){c(this.disabled,this.el);if(this.disabled){this.setSelectedDate(null)}else{this.setOpenAtDate()}}watchDisableFutureHandler(){this.watchMaxHandler()}watchDisablePastHandler(){this.watchMinHandler()}watchMaxHandler(){if(this.disableFuture){this.maxDate=new Date}else{this.maxDate=D(this.max,this.dateFormat)}}watchMinHandler(){if(this.disablePast){this.minDate=new Date}else{this.minDate=D(this.min,this.dateFormat)}}watchStartOfWeekHandler(){this.orderedDaysOfWeek=this.daysOfWeek.slice(this.startOfWeek).concat(this.daysOfWeek.slice(0,this.startOfWeek));this.updateMonthInView()}valueChanged(t,e,i){if(t!==e&&this.isValidDateValue(t)){if(i==="value"){this.value=t}this.setOpenAtDate()}}watchFocussedDateHandler(t,e){if(e===null||!(e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth())){this.updateMonthInView()}}watchMonthInViewHandler(){this.focussedMonth=this.monthInView}watchYearInViewHandler(){this.setFocussedYear(this.yearInView,false)}watchYearPickerVisibleHandler(){if(!this.yearPickerVisible){this.setFocussedYear(this.yearInView)}}watchMonthPickerVisibleHandler(){if(!this.monthPickerVisible){this.focussedMonth=this.monthInView}}watchFocussedDayEl(){if(this.focusDay){setTimeout((()=>this.focusFocussedDay()),F)}this.focusDay=true}componentWillLoad(){var t;const e=this.el.getRootNode();this.parentIsDatePicker=e instanceof ShadowRoot&&((t=e.host)===null||t===void 0?void 0:t.tagName)==="IC-DATE-PICKER";this.monthNames=r(n);this.daysOfWeek=r(l);this.watchStartOfWeekHandler();this.watchMaxHandler();this.watchMinHandler();this.setOpenAtDate();c(this.disabled,this.el)}async clearDialogDescription(){this.dialogDescription=""}render(){const{dialogDescription:e,monthNames:i,focussedMonth:a,focussedYear:r,monthInView:h,yearInView:n,monthPickerVisible:o,yearPickerVisible:c,decadeView:l,minDate:d,maxDate:u,orderedDaysOfWeek:b,parentIsDatePicker:f,showClearButton:p,showTodayButton:m,size:v,theme:y}=this;let g="";if(o){g=`Use the arrow keys to change the selected month. To return to day picker view, press Enter or Space to select a month, or press Escape.`}else{g=`Press Enter or Space to open month picker view or use the arrow keys to change month.`}let k="";if(c){k=`Use the arrow keys to change the selected year. To return to day picker view, press Enter or Space to select a year, or press Escape.`}else{k=`Press Enter or Space to open year picker view or use the arrow keys to change the selected year.`}const x="choose date";const D=i&&i[h]?i[h]:"Open month picker";const $=this.yearInView?this.yearInView:"Open year picker";let M=d;if(d&&this.disablePast){const t=new Date(d);t.setDate(d.getDate()-1);M=t}const H=[];for(let t=0;t<this.currMonthView.length;t+=7){H.push(this.currMonthView.slice(t,t+7))}return t(s,{key:"d4151c94f3afbe6c92e2ca036482c5d3ab25a048",class:{[`ic-calendar-${v}`]:true,[`ic-theme-${y}`]:y!=="inherit"}},t("div",{key:"bb8cf9b2317aa3af7c5c0f00c508d3748aaf1d23"},t("span",{key:"4f3de5d7bb43b6f01e7e8e96970a774e7adb431c",id:"dialog-description",class:"sr-only"},e),t("div",Object.assign({key:"bdf2db0cbd065a2522adc889d07475324c311256"},f&&{role:"dialog","aria-modal":"true"},{"aria-label":x,"aria-describedBy":"dialog-description",class:{"calendar-container":true},onMouseDown:this.handleCalendarMouseDown,onClick:this.handleCalendarClick}),t("span",{key:"e79af062141a912b8101cf80bb5d0847c11f6efa",ref:t=>this.liveRegionEl=t,id:"live-region","aria-live":"assertive",class:"sr-only"}),t("div",{key:"5342f1a9d3e3b9c5e1ca9ed85977dd816c858821",class:{"month-year-nav-container":true}},t("div",{key:"ad8e87dc5c5e6254b5fac7c88ce6234a6f5c6817",class:"month-year-nav"},this.previousMonthButton(),t("span",{key:"73aef7c278929632981f3da7061656777de3c715",id:"select-month-hint","aria-hidden":"true"},g),t("ic-button",{key:"cc10bab65a8d765421eae3fa1a6b14509942d7b7",ref:t=>this.monthButtonEl=t,size:v,class:"month-picker-button",disabled:this.disabled,"aria-haspopup":"menu","aria-expanded":o?"true":"false","full-width":"true",variant:"tertiary","aria-label":D,"aria-describedby":"select-month-hint",onKeyDown:this.monthButtonKeyDownHandler,onClick:this.monthButtonClickHandler},i[h]),this.nextMonthButton()),t("div",{key:"3e28bb6cd5ffabb46d23469399e3a8e300a3d90b",class:"month-year-nav"},this.previousYearButton(),t("span",{key:"ed4bebe1d46bd024d8475b0e47ce6c7e7343705b",id:"select-year-hint","aria-hidden":"true"},k),t("ic-button",{key:"f04c2b2a9962f1be59407c5764c6957b1257bf66",ref:t=>this.yearButtonEl=t,size:v,class:"year-picker-button",disabled:this.disabled,"aria-haspopup":"menu","aria-expanded":c?"true":"false","full-width":"true",variant:"tertiary","aria-label":$,"aria-describedby":"select-year-hint",onKeyDown:this.yearButtonKeyDownHandler,onClick:this.yearButtonClickHandler},this.yearInView),this.nextYearButton())),!(o||c)&&t("table",{key:"52a7d17f02fb7d4a52abb1e7c33f11746ddfa240",role:"grid",class:{calendar:true,hidden:o||c},onKeyDown:this.handleCalendarKeyDown},t("thead",{key:"65ca8e1e10857f4633d5e414402603e548ebd61f",class:"weekdays-container"},t("tr",{key:"79065bbaf141233a5a8a6d12d3fab643842110e5",class:"weekdays"},b.map((e=>{const i=v==="small"?e.charAt(0):e;return t("th",{scope:"col",class:"calendar-day-header"},i)})))),t("tbody",{key:"7b7f67b5c34309dde6e6e1492414e65e44dc54a4",class:"calendar-days-container"},H.map(((e,i)=>t("tr",{key:i},e.map((e=>{var i;return t("td",{key:e.toISOString()},t(I,{day:e,disableDay:this.disabled||((i=this.disableDays)===null||i===void 0?void 0:i.includes(Number(e.getDay()))),today:z(e,this.today),selected:z(e,this.selectedDate),focussed:z(e,this.focussedDate),inRange:w(e,M,u),monthInView:h,onSelectDay:this.handleSelectDay,focussedDayRef:this.setFocussedDayEl,onFocusDay:this.onDayButtonFocusHandler,onBlurDay:this.onDayButtonBlurHandler,showDaysOutsideMonth:this.showDaysOutsideMonth}))}))))))),t("div",{key:"c94fdad326e93093ef7770cd833bb4ee9935244c",class:{"month-picker-container":true,hidden:!o}},o&&t(L,{key:"31ebc431e6f54c79e20c69a7d9bf6e3df0154cf7",size:v,onSelectMonth:this.handleSelectMonth,monthInView:h,focussedMonth:a,onKeyDown:this.monthPickerKeyDownHandler,focussedMonthRef:this.setFocussedMonthEl,minDate:d,maxDate:u,yearInView:n})),t("div",{key:"cd5681a5b81d6dcc5a4cfea9437bdc9d747e18fa",class:{"year-picker-container":true,hidden:!c}},c&&t(A,{key:"b451f5eed80d4b3f932b9209c230f272edc2b101",decadeView:l,size:v,focussedYear:r,onSelectYear:this.handleSelectYear,onKeyDown:this.yearPickerKeyDownHandler,onFocusYear:this.onYearButtonFocusHandler,onBlurYear:this.onYearButtonBlurHandler,yearInView:n,minDate:d,maxDate:u,focussedYearRef:this.setFocussedYearEl})),t("div",{key:"c33172bac9021d91fd0b0a4b2ba9f8f7e60c2870",class:{"bottom-buttons":true,"no-today":!m}},m&&t("ic-button",{key:"d94df26b16b3b1c8464cd8a7ff16da0bef588674",id:"today-button",variant:"tertiary",ref:t=>this.todayButtonEl=t,size:v,"aria-label":"Navigate to current date",onClick:this.todayButtonClickHandler,onKeyDown:this.todayButtonKeyDownHandler,disabled:this.isCurrentMonth()},"Go to today"),p&&t("ic-button",{key:"2ce3eef2be73fccd5863264ce959ab1427c380e7",id:"clear-button","aria-label":"clear selected date",ref:t=>this.clearButtonEl=t,variant:"tertiary",size:v,onClick:this.clearButtonClickHandler,onKeyDown:this.clearButtonKeyDownHandler,disabled:this.value===""||this.value===null||this.value===undefined},"Clear")))))}static get delegatesFocus(){return true}get el(){return a(this)}static get watchers(){return{disabled:["watchDisabledHandler"],disableFuture:["watchDisableFutureHandler"],disablePast:["watchDisablePastHandler"],max:["watchMaxHandler"],min:["watchMinHandler"],startOfWeek:["watchStartOfWeekHandler"],value:["valueChanged"],openAtDate:["valueChanged"],focussedDate:["watchFocussedDateHandler"],monthInView:["watchMonthInViewHandler"],yearInView:["watchYearInViewHandler"],yearPickerVisible:["watchYearPickerVisibleHandler"],monthPickerVisible:["watchMonthPickerVisibleHandler"],focussedDayEl:["watchFocussedDayEl"]}}};N.style=E;const S=`<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">\n <path d="M16.6667 2.50004H15.8334V0.833374H14.1667V2.50004H5.83342V0.833374H4.16675V2.50004H3.33341C2.41675 2.50004 1.66675 3.25004 1.66675 4.16671V17.5C1.66675 18.4167 2.41675 19.1667 3.33341 19.1667H16.6667C17.5834 19.1667 18.3334 18.4167 18.3334 17.5V4.16671C18.3334 3.25004 17.5834 2.50004 16.6667 2.50004ZM16.6667 17.5H3.33341V6.66671H16.6667V17.5Z" fill="currentColor"/>\n</svg>`;const R='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--ic-input-label-helpertext-padding:var(--ic-space-xs);--input-bg-color:var(--ic-date-input-bg);--ic-input-label-text-color:var(--ic-date-input-label);--ic-input-label-helper-text-color:var(--ic-date-input-subtitle);--border-color:var(--ic-date-input-border);--border-color-disabled:var(--ic-date-input-border-disabled);--border-color-hover:var(--ic-date-input-border-default-hover);--border-color-pressed:var(--ic-date-input-border-default-pressed);--border-error-color:var(--ic-date-input-border-error);--border-error-color-hover:var(--ic-date-input-border-error-hover);--border-error-color-pressed:var(--ic-date-input-border-error-pressed);--border-success-color:var(--ic-date-input-border-success);--border-success-color-hover:var(--ic-date-input-border-success-hover);--border-success-color-pressed:var(--ic-date-input-border-success-pressed);--border-warning-color:var(--ic-date-input-border-warning);--border-warning-color-hover:var(--ic-date-input-border-warning-hover);--border-warning-color-pressed:var(--ic-date-input-border-warning-pressed)}:host(.ic-date-input-disabled){--ic-input-label-text-color:var(--ic-date-input-label-disabled);--ic-input-label-helper-text-color:var(--ic-date-input-subtitle-disabled)}input{border:0;height:100%;padding:0;outline:none;background:none;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;color:var(--ic-date-input-text-filled);caret-color:var(--ic-date-input-typing-cursor)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none}input:-webkit-autofill{box-shadow:0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;-webkit-text-fill-color:var(--ic-date-input-text-filled) !important}input::-moz-placeholder{color:var(--ic-date-input-text-placeholder)}input::placeholder{color:var(--ic-date-input-text-placeholder)}ic-input-component-container{cursor:text}ic-input-component-container .focus-indicator{padding:var(--ic-space-xxxs) var(--ic-space-xs);align-items:center}.date-inputs{color:var(--ic-date-input-text-placeholder)}.day-input{width:1.438rem}.month-input{width:1.813rem}.year-input,.year-input.fit-to-value{width:2.313rem}.fit-to-value{width:1.25rem}.sr-only{position:absolute;left:-9999px}.input-container{width:100%;display:flex;justify-content:space-between;align-items:center;position:relative}.action-buttons{display:flex;align-items:center}.show-calendar-button-wrapper{display:flex;justify-content:center;align-items:center}.clear-button,.calendar-button{border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);margin:0}.clear-button.hidden{display:none}.clear-button:focus,.calendar-button:focus,.clear-button:active,.calendar-button:active{background-color:var(--ic-color-focus-inner) !important;box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;border-radius:0.25rem}.calendar-button:focus,.calendar-button:active{--ic-button-tertiary-text-active:var(--ic-atoms-input-clear-button-focus);--ic-button-tertiary-text-hover-active:var(\n --ic-atoms-input-clear-button-focus\n );--ic-button-tertiary-text-pressed-active:var(\n --ic-atoms-input-clear-button-focus\n )}.clear-button:focus,.calendar-button:focus,.clear-button:active *,.calendar-button:active *{fill:var(--ic-atoms-input-clear-button-focus)}.clear-button svg{color:var(--ic-date-input-clear-icon)}.clear-button:focus svg{color:var(--ic-atoms-input-clear-button-focus)}.divider{margin:0 var(--ic-space-xxs);width:var(--ic-space-1px);background-color:var(--ic-atoms-input-divider);border-radius:var(--ic-space-1px)}.divider.small{height:var(--ic-space-md)}.divider.medium{height:calc(var(--ic-space-sm) + var(--ic-space-xs))}.divider.large{height:var(--ic-space-lg)}ic-input-validation{--ic-input-validation-status-text-color:var(--ic-date-input-status-text);--ic-input-validation-error:var(--ic-date-input-icon-error);--ic-input-validation-warning-icon-color:var(--ic-date-input-icon-warning);--ic-input-validation-success-icon-color:var(--ic-date-input-icon-success)}@media (forced-colors: active){.clear-button svg{color:currentcolor}}';const K=R;let O=0;const U=class{constructor(s){e(this,s);this.calendarButtonClicked=i(this,"calendarButtonClicked",7);this.icBlur=i(this,"icBlur",7);this.icChange=i(this,"icChange",7);this.icFocus=i(this,"icFocus",7);this.DEFAULT_DATE_FORMAT="DD/MM/YYYY";this.ARIA_INVALID="aria-invalid";this.ARIA_LABEL="aria-label";this.ARIA_LABELLED_BY="aria-labelledby";this.EVENT_OBJECT_STRING="[object Event]";this.FIT_TO_VALUE="fit-to-value";this.initialValue=this.value;this.INPUT_EVENT_OBJECT_STRING="[object InputEvent]";this.inputsInOrder=[];this.isAfterMax=false;this.isBeforeMin=false;this.preventInputsUpdating=false;this.isDisabledDate=false;this.isValidDay=true;this.isValidMonth=true;this.isValidDate=true;this.isZuluTime=false;this.KEYBOARD_EVENT_OBJECT_STRING="[object KeyboardEvent]";this.MAX_DAY=31;this.MAX_MONTH=12;this.previousSelectedDate=null;this.selectedDate=null;this.externalSetDate=false;this.clearInput=false;this.calendarIsOpen=false;this.calendarFocused=false;this.clearButtonFocused=false;this.removeLabelledBy=false;this.day="";this.month="";this.year="";this.dateFormat=this.DEFAULT_DATE_FORMAT;this.emitDatePartChange=false;this.disabled=false;this.disableDays=[];this.disableDaysMessage="The date you have selected is on a day of the week that is not allowed. Please select another date.";this.disableFuture=false;this.disableFutureMessage="Dates in the future are not allowed. Please select a date in the past.";this.disablePast=false;this.disablePastMessage="Dates in the past are not allowed. Please select a date in the future.";this.hideHelperText=false;this.hideLabel=false;this.inputId=`ic-date-input-${O++}`;this.invalidDateMessage="Please enter a valid date.";this.max="";this.min="";this.name=this.inputId;this.required=false;this.showCalendarButton=false;this.showClearButton=true;this.size="medium";this.theme="inherit";this.value="";this.validationAriaLive="polite";this.validationStatus="";this.validationText="";this.setInputPasteValue=(t,e)=>{if(t){const i=t;i.value=e;i.classList.add(this.FIT_TO_VALUE)}};this.checkSingleCopiedValueIsValid=(t,e)=>{let i=false;const s=Number(e);switch(t){case this.dayInputEl:i=s>=1&&s<=this.MAX_DAY;break;case this.monthInputEl:i=s>=1&&s<=this.MAX_MONTH;break;case this.yearInputEl:i=true;break}return i};this.isKeyboardOrEvent=t=>Object.prototype.toString.call(t)===this.EVENT_OBJECT_STRING||Object.prototype.toString.call(t)===this.KEYBOARD_EVENT_OBJECT_STRING;this.setDateValidity=()=>{if(!d(this.day)){this.isValidDay=+this.day>this.MAX_DAY?false:true}else{this.isValidDay=true}if(!d(this.month)){this.isValidMonth=+this.month>this.MAX_MONTH?false:true}else{this.isValidMonth=true}};this.handleInput=t=>{const e=t;const i=t.target;if(i!==this.yearInputEl){if(e.inputType!=="deleteContentBackward"&&!this.preventAutoFormatting){if(i.value.length===1&&(i===this.dayInputEl&&+i.value>=4||i===this.monthInputEl&&+i.value>=2)&&+i.value<=9){this.setInputValue(i);this.notifyScreenReader(i,t);this.moveToNextInput(i)}if(i.value.length===2){if(+i.value===0){i.value="01"}this.setInputValue(i);this.setPreventInput(i,true);this.notifyScreenReader(i,t);this.moveToNextInput(i)}else{this.setPreventInput(i,false)}}else if(this.preventAutoFormatting){if(i.value.length===2&&!this.isKeyboardOrEvent(t)){this.setInputValue(i);this.setPreventInput(i,true);this.moveToNextInput(i)}else{this.setInputValue(i)}}if(i.value.length!==2){this.setPreventInput(i,false)}}else{if(i.value.length===4){this.setInputValue(i);if(Object.prototype.toString.call(t)!==this.EVENT_OBJECT_STRING){this.moveToNextInput(i)}this.setPreventInput(i,true)}else{this.setPreventInput(i,false)}}this.setFitToValueStyling(i);if(i.value.length===0){this.setInputValue(i,true);this.setValidationMessage()}this.notifyScreenReader(i,t)};this.handleKeyDown=(t,e)=>{var i;const s=t.target;const a=(i=t.key)===null||i===void 0?void 0:i.toLowerCase();const r=/-?\d*\.?\d+(e[-+]?\d+)?|[/-]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;if(!r.test(a)&&!((t.ctrlKey||t.metaKey)&&(a==="v"||a==="c"))){t.preventDefault()}switch(a){case"/":case"-":case".":t.preventDefault();this.setPasteInvalidText();this.moveToNextInput(s);break;case"arrowright":case"arrowleft":t.preventDefault();this.handleLeftRightArrowKeyPress(s,a);break;case"arrowup":case"arrowdown":this.preventAutoFormatting=true;this.handleUpDownArrowKeyPress(s,t);break;case"backspace":if(s.value.length===0){t.preventDefault();this.moveToPreviousInput(s)}break}this.preventInput(t,e);this.preventInputsUpdating=true};this.handleFocus=t=>{const e=t.target;e.select()};this.handleBlur=t=>{const e=t.target;if(e){this.setPasteInvalidText();this.autocompleteInput(e)}};this.handleLeftRightArrowKeyPress=(t,e)=>{if(e==="arrowright"){this.moveToNextInput(t)}else{this.moveToPreviousInput(t)}this.setPasteInvalidText()};this.notifyScreenReaderSelectedDate=()=>{if(this.selectedDate&&this.selectedDateInfoEl){const t=r(h);const e=r(n);this.selectedDateInfoEl.textContent=`Selected date: ${t[this.selectedDate.getDay()]}, ${this.selectedDate.getDate()} ${e[this.selectedDate.getMonth()]} ${this.selectedDate.getFullYear()}`}};this.handleUpDownArrowKeyPress=(t,e)=>{const i=t===this.yearInputEl?0:1;let s=9999;switch(t){case this.dayInputEl:s=this.MAX_DAY;break;case this.monthInputEl:s=this.MAX_MONTH;break;case this.yearInputEl:s=9999}if(t===null||t===void 0?void 0:t.value){if(e.key==="ArrowUp"){if(+t.value===s){e.preventDefault();t.value=`0${i}`}else{t.value=+t.value+1<10?`0${+t.value+1}`:(+t.value+1).toString()}this.notifyScreenReader(t,e)}if(e.key==="ArrowDown"){if(+t.value===i){e.preventDefault();t.value=s.toString()}else{t.value=+t.value-1<10?`0${+t.value-1}`:(+t.value-1).toString()}this.notifyScreenReader(t,e)}}else{if(e.key==="ArrowDown"){e.preventDefault();t.value=t===this.yearInputEl?(new Date).getFullYear().toString():s.toString();this.notifyScreenReader(t,e)}else if(e.key==="ArrowUp"){e.preventDefault();t.value=t===this.yearInputEl?(new Date).getFullYear().toString():`0${i}`;this.notifyScreenReader(t,e)}}this.setInputValue(t);this.setFitToValueStyling(t)};this.handleDateChange=t=>{if(t||!z(this.selectedDate,this.previousSelectedDate)){if(this.value){this.inputsInOrder.forEach((t=>{t.classList.add(this.FIT_TO_VALUE)}))}if(this.day&&this.month&&this.year&&this.invalidDateText===""){this.setValueAndEmitChange(this.selectedDate);this.notifyScreenReaderSelectedDate()}else if(!(this.selectedDate===null&&this.previousSelectedDate===null)&&this.selectedDateInfoEl){this.setValueAndEmitChange(null);this.selectedDateInfoEl.textContent=""}this.previousSelectedDate=this.selectedDate;if(!this.preventInputsUpdating){this.updateInputValues(this.day,this.month,this.year)}}};this.slicePastedDate=(t,e)=>e.length>t?e.slice(0,t):e;this.isPastedStringDateValid=t=>{if(/\d+-\d+-\d+$/.test(t)||/\d+\/\d+\/\d+/.test(t)||/\d+\.\d+\.\d+/.test(t)){return true}if(/[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}(?::[0-9]{2}(?:\.\d+)?)?Z/.test(t)){this.isZuluTime=true;return true}return false};this.handlePaste=t=>{var e;t.preventDefault();const i=((e=t.clipboardData)===null||e===void 0?void 0:e.getData("Text"))||"";const s=this.isPastedStringDateValid(i);this.setPastedValueAndValidation(s,i,t)};this.setDate=t=>{if(t===null||t===""||t===undefined){if(this.day)this.day="";if(this.month)this.month="";if(this.year)this.year="";this.inputsInOrder.forEach((t=>{t.classList.remove(this.FIT_TO_VALUE);this.setPreventInput(t,false)}));this.handleDateChange(true)}else{if(C(t)){let e;if(typeof t==="string"){e=new Date(+t)}else{e=t}this.day=M(e.getDate());this.month=M(e.getMonth()+1);this.year=e.getFullYear().toString()}else if(typeof t==="string"){const e=V(t,this.dateFormat);this.selectedDate=new Date(Number(e[0]),Number(e[1])-1,Number(e[2]));this.year=e[0];this.month=e[1];this.day=e[2];this.setValueAndEmitChange(this.selectedDate)}}this.setValidationMessage()};this.formatMinMax=t=>{let e;const i=M(t.getDate());const s=M(t.getMonth()+1);const a=t.getFullYear();switch(this.dateFormat){case this.DEFAULT_DATE_FORMAT:e=`${i}/${s}/${a}`;break;case"MM/DD/YYYY":e=`${s}/${i}/${a}`;break;case"YYYY/MM/DD":e=`${a}/${s}/${i}`;break}return e};this.updateInputValues=(t,e,i)=>{if(this.dayInputEl&&this.monthInputEl&&this.yearInputEl){this.dayInputEl.value=t;this.monthInputEl.value=e;this.yearInputEl.value=i}};this.setInputValue=(t,e=false)=>{const i=e?"":t.value;switch(t){case this.dayInputEl:this.day=i;break;case this.monthInputEl:this.month=i;break;case this.yearInputEl:if(this.year!==i){this.year=i}}this.setValidationMessage()};this.setValidationMessage=()=>{this.setDateValidity();if(!d(this.day)&&!d(this.month)&&!d(this.year)){this.selectedDate=this.convertToDate(this.year,this.month,this.day);this.isValidDate=!!this.selectedDate&&this.selectedDate.getDate()==+this.day;this.isDisabledDate=this.isSelectedDateDisabled();if(!this.isValidDate||this.isDisabledDate){this.inputsInOrder.forEach((t=>t.setAttribute(this.ARIA_INVALID,"true")))}else{this.inputsInOrder.forEach((t=>t.removeAttribute(this.ARIA_INVALID)))}}else{this.selectedDate=null}if(!(this.isValidDay&&this.isValidMonth&&this.isValidDate)){this.invalidDateText=this.invalidDateMessage}else if(this.isDisabledDate&&this.selectedDate!==null){if(this.isBeforeMin){if(this.disablePast){this.invalidDateText=this.disablePastMessage}else{this.invalidDateText=`Please enter a date after ${this.formatMinMax(this.minDate)}.`}}else if(this.isAfterMax){if(this.disableFuture){this.invalidDateText=this.disableFutureMessage}else{this.invalidDateText=`Please enter a date before ${this.formatMinMax(this.maxDate)}.`}}else if(this.disableDays.length!==0){this.invalidDateText=this.disableDaysMessage}else{if(this.disablePast){this.invalidDateText=this.disablePastMessage}if(this.disableFuture){this.invalidDateText=this.disableFutureMessage}}}else{this.invalidDateText=""}};this.setInputsInOrder=()=>{var t;(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("input").forEach((t=>this.inputsInOrder.push(t)))};this.setAriaLabelledBy=()=>{var t,e,i;if(this.disabled&&!d((t=this.inputCompContainerEl)===null||t===void 0?void 0:t.getAttribute(this.ARIA_LABELLED_BY))){this.removeAriaLabelledBy();return}if(this.disabled){return}const s=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("label");const a=`${this.inputId}-label`;if(s!==null&&s!==undefined){s.id=a}const r=!d(this.validationStatus)||!d(this.invalidDateText);const h=`${(i=s===null||s===void 0?void 0:s.id)!==null&&i!==void 0?i:""} ${this.screenReaderInfoId} ${u(this.el,this.inputId,this.helperText!==""&&this.helperText!==this.defaultHelperText,r)} ${this.selectedDate?this.selectedDateInfoId:""} ${this.assistiveHintId}`;this.inputCompContainerEl.setAttribute(this.ARIA_LABELLED_BY,h)};this.setPreventInput=(t,e)=>{switch(t){case this.dayInputEl:this.preventDayInput=e;break;case this.monthInputEl:this.preventMonthInput=e;break;case this.yearInputEl:this.preventYearInput=e}};this.getInputFromDatePart=e=>{const i=t("input",{class:"day-input",id:"day-input",ref:t=>this.dayInputEl=t,"aria-label":"day",placeholder:"DD",disabled:this.disabled,"aria-required":`${this.required}`,onPaste:this.handlePaste,inputmode:"number",pattern:"[0-9]*",onKeyDown:t=>this.handleKeyDown(t,this.preventDayInput)});const s=t("input",{id:"month-input",class:"month-input",ref:t=>this.monthInputEl=t,"aria-label":"month",placeholder:"MM",disabled:this.disabled,"aria-required":`${this.required}`,onPaste:this.handlePaste,inputmode:"number",pattern:"[0-9]*",onKeyDown:t=>this.handleKeyDown(t,this.preventMonthInput)});const a=t("input",{id:"year-input",class:"year-input",ref:t=>this.yearInputEl=t,"aria-label":"year",placeholder:"YYYY",maxLength:4,disabled:this.disabled,"aria-required":`${this.required}`,onPaste:this.handlePaste,inputmode:"number",pattern:"[0-9]*",onKeyDown:t=>this.handleKeyDown(t,this.preventYearInput)});let r;switch(e){case"D":r=i;break;case"M":r=s;break;case"Y":r=a}return r};this.getInputsInOrder=()=>{const t=this.dateFormat.split("/");const e=[];t.forEach((t=>{e.push(this.getInputFromDatePart(t.substring(0,1)))}));return e};this.getDescOfInputsOrder=()=>{let t;switch(this.dateFormat){case this.DEFAULT_DATE_FORMAT:t="day, month, and year";break;case"MM/DD/YYYY":t="month, day, and year";break;case"YYYY/MM/DD":t="year, month, and day"}return t};this.getScreenReaderInfo=t=>{let e="";if(this.required){e+="required"}if(t===v.Error){e+=" invalid data"}return e===""?"":e+", "};this.preventInput=(t,e)=>{const i=t.key;const s=t.target;let a;if(s){a=s.value.substring(s.selectionStart||0,s.selectionEnd||undefined)}if(i==="e"||i==="."||i==="-"||t.key>="0"&&t.key<="9"&&e&&!a){t.preventDefault()}};this.isSelectedDateDisabled=()=>{if(!this.selectedDate)return false;const t=new Date;const e=this.selectedDate.toDateString()!==t.toDateString();this.isAfterMax=this.maxDate&&this.selectedDate>this.maxDate&&e;this.isBeforeMin=this.minDate&&this.selectedDate<this.minDate&&e;return this.isAfterMax||this.isBeforeMin||this.disableDays.includes(this.selectedDate.getDay())||(!!this.disablePast&&this.selectedDate<t||!!this.disableFuture&&this.selectedDate>t)&&e};this.moveToNextInput=t=>{var e;this.preventAutoFormatting=false;(e=this.inputsInOrder[this.inputsInOrder.findIndex((e=>e===t))+1])===null||e===void 0?void 0:e.focus()};this.moveToPreviousInput=t=>{var e;this.preventAutoFormatting=false;(e=this.inputsInOrder[this.inputsInOrder.findIndex((e=>e===t))-1])===null||e===void 0?void 0:e.focus()};this.autocompleteInput=t=>{const e=t.value;if(this.yearInputEl&&t===this.yearInputEl){const t=["2","0","0"];let i="";if(e){t.forEach(((t,s)=>{if(e.length+s<=3){i+=t}}));this.yearInputEl.value=`${i}${e}`}}else if(e.length===1){t.value=+e===0?"01":`0${e}`}if(t.value){this.setInputValue(t)}};this.convertToDate=(t,e,i)=>{if(!d(t)&&!d(e)&&!d(i)){return new Date(+t,+e-1,+i)}else{return null}};this.handleHostBlur=()=>{this.removeLabelledBy=false;this.icBlur.emit({value:this.selectedDate})};this.handleHostFocus=()=>{var t,e;if((e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.activeElement)===null||e===void 0?void 0:e.id.match(/(day|month|year)-input$/)){this.removeLabelledBy=false}else{this.removeLabelledBy=true}this.icFocus.emit({value:this.selectedDate})};this.handleFormReset=()=>{this.setDate(this.initialValue);this.setValidationMessage();this.handleDateChange(false)};this.getAriaLabel=t=>t.getAttribute(this.ARIA_LABEL);this.notifyScreenReaderArrowKeys=t=>{var e;const i=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("#live-region");const s=this.getAriaLabel(t);if(i&&t.value&&s){let e="";if(t===this.monthInputEl&&!!n[+t.value-1]){e=`${t.value} - ${n[+t.value-1]}, ${s}`}if(t===this.dayInputEl||t===this.yearInputEl){e=`${t.value}, ${s}`}i.textContent=e}};this.notifyScreenReaderInput=(t,e)=>{const i=this.getAriaLabel(t);const s=t.value;if(i&&s){let a="";const r=n[+s-1];if(t===this.monthInputEl&&!!r&&this.isValidMonth&&s.length===2){a=`${s} - ${r}`}else if(t===this.dayInputEl&&this.isValidDay&&s.length===2||t===this.yearInputEl&&s.length===4){a=s}e.textContent=`${a}, ${i}`}};this.setFitToValueStyling=t=>{if(t.value){t.classList.add(this.FIT_TO_VALUE)}else{t.classList.remove(this.FIT_TO_VALUE)}};this.setAriaInvalid=(t,e,i,s)=>{var a,r;if(this.inputsInOrder.length){this.inputsInOrder.forEach((t=>{t.removeAttribute(this.ARIA_INVALID)}));if(!t){(a=this.dayInputEl)===null||a===void 0?void 0:a.setAttribute(this.ARIA_INVALID,"true")}if(!e){(r=this.monthInputEl)===null||r===void 0?void 0:r.setAttribute(this.ARIA_INVALID,"true")}if(!i||s){this.inputsInOrder.forEach((t=>{t.setAttribute(this.ARIA_INVALID,"true")}))}}};this.handleClear=()=>{this.clearInput=true;this.inputsInOrder.forEach((t=>{t.classList.remove(this.FIT_TO_VALUE);this.setInputValue(t,true);this.setPreventInput(t,false)}));this.clearInput=false;this.preventInputsUpdating=false;this.setValidationMessage();this.handleDateChange(true);this.inputsInOrder[0].focus()};this.handleCalendarOpen=t=>{var e,i,s,a,r,h;t.stopImmediatePropagation();(s=(i=(e=this.calendarButtonEl)===null||e===void 0?void 0:e.shadowRoot)===null||i===void 0?void 0:i.querySelector("ic-tooltip"))===null||s===void 0?void 0:s.displayTooltip(false);this.calendarButtonClicked.emit({value:this.selectedDate});(h=(r=(a=this.calendarButtonEl)===null||a===void 0?void 0:a.shadowRoot)===null||r===void 0?void 0:r.querySelector("ic-tooltip"))===null||h===void 0?void 0:h.displayTooltip(false);this.preventInputsUpdating=false;this.calendarIsOpen=true};this.setValueAndEmitChange=t=>{if(!z(this.value?new Date(this.value):null,t)){this.emitIcChange(t);this.value=t}};this.handleCalendarFocus=()=>{this.calendarFocused=true;if(this.calendarIsOpen){this.preventInputsUpdating=false;this.calendarIsOpen=false}else{this.preventInputsUpdating=true}};this.handleCalendarBlur=()=>{this.calendarFocused=false;this.preventInputsUpdating=true};this.handleClearFocus=()=>{this.removeLabelledBy=true;this.preventInputsUpdating=true;this.clearButtonFocused=true};this.handleClearBlur=t=>{var e;this.clearButtonFocused=false;this.preventInputsUpdating=true;if((e=t.relatedTarget)===null||e===void 0?void 0:e.id.match(/(day|year)-input$/)){this.removeLabelledBy=false;return}this.removeLabelledBy=true};this.emitIcChange=t=>{this.selectedDate=t;if(!z(this.selectedDate,t)||this.day!==null||this.month!==null||this.year!==null){let e=null;if(t!==null){e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate()))}this.icChange.emit({value:t,dateObject:{day:this.day===""?null:this.day,month:this.month===""?null:this.month,year:this.year===""?null:this.year},utcValue:e})}}}watchInputHandler(){if(this.emitDatePartChange&&!this.externalSetDate&&!this.clearInput&&!(this.day&&this.month&&this.year)&&this.selectedDate===null){this.emitIcChange(this.selectedDate)}}watchDisabledHandler(){c(this.disabled,this.el)}watchDisableFutureHandler(){this.watchMaxHandler()}watchDisablePastHandler(){this.watchMinHandler()}watchMaxHandler(){if(this.disableFuture){this.maxDate=new Date}else{this.maxDate=D(this.max,this.dateFormat)}}watchMinHandler(){if(this.disablePast){this.minDate=new Date}else{this.minDate=D(this.min,this.dateFormat)}}watchRequiredHandler(){var t,e;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("label");if(this.required){const t=document.createElement("span");t.setAttribute("id","asterisk-span");t.setAttribute("aria-hidden","true");t.textContent=" *";i===null||i===void 0?void 0:i.appendChild(t)}else{const t=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("#asterisk-span");if(t){t.remove()}}}disconnectedCallback(){b(this.el,this.handleFormReset)}componentWillLoad(){this.defaultHelperText=`Use format ${this.dateFormat}`;if(d(this.helperText))this.helperText=this.defaultHelperText;this.watchMinHandler();this.watchMaxHandler();if(this.value){this.externalSetDate=true;this.setDate(this.value)}this.screenReaderInfoId=`${this.inputId}-screen-reader-info`;this.assistiveHintId=`${this.inputId}-assistive-hint`;this.selectedDateInfoId=`${this.inputId}-selected-date-info`;f(this.el,this.handleFormReset);c(this.disabled,this.el)}componentDidLoad(){this.setInputsInOrder();p([{prop:this.label,propName:"label"}],"Date Input");if(this.value){this.updateInputValues(this.day,this.month,this.year);this.inputsInOrder.forEach((t=>{t.classList.add(this.FIT_TO_VALUE)}))}this.setAriaInvalid(this.isValidDay,this.isValidMonth,this.isValidDate,this.isDisabledDate);if(this.value){this.notifyScreenReaderSelectedDate()}this.inputsInOrder.forEach((t=>{t.addEventListener("input",this.handleInput);t.addEventListener("focus",this.handleFocus);t.addEventListener("blur",this.handleBlur)}));this.watchRequiredHandler()}componentWillUpdate(){if(d(this.helperText))this.helperText=this.defaultHelperText;if(!this.preventInputsUpdating)this.setDate(this.value);this.setAriaInvalid(this.isValidDay,this.isValidMonth,this.isValidDate,this.isDisabledDate);this.handleDateChange(false);this.preventInputsUpdating=false}componentDidRender(){if(this.removeLabelledBy){this.removeAriaLabelledBy();return}this.setAriaLabelledBy()}async getDate(){return this.selectedDate}async setCalendarFocus(){if(this.calendarButtonEl){this.calendarButtonEl.focus()}}async setDisableDays(t){this.disableDays=t}async triggerIcChange(t){this.externalSetDate=true;this.setDate(t);this.emitIcChange(t);this.externalSetDate=false}removeAriaLabelledBy(){this.inputCompContainerEl.removeAttribute(this.ARIA_LABELLED_BY)}setPastedValueAndValidation(t,e,i){switch(true){case t:{const t=this.isZuluTime?T(e):e;const i=t.split(/-|\/|\./);this.inputsInOrder.forEach(((t,e)=>{t.classList.add(this.FIT_TO_VALUE);if(this.isZuluTime){this.pasteZuluDateTime(i,e)}else{let s;if(t===this.dayInputEl||t===this.monthInputEl){s=this.slicePastedDate(2,i[e])}else{s=this.slicePastedDate(4,i[e])}t.value=s;this.setInputValue(t);this.autocompleteInput(t)}}));this.isZuluTime=false;break}case(e.length===1||e.length===2||e.length===4)&&m(e):if(this.checkSingleCopiedValueIsValid(i.target,e)){this.setInputPasteValue(i.target,e);this.setInputValue(i.target)}else{this.displayPastedValidation(i)}break;case e.length===3&&m(e):if(i.target!==this.yearInputEl){this.displayPastedValidation(i)}else{this.setInputPasteValue(i.target,e);this.setInputValue(i.target)}break;case e.length>=5&&m(e):this.displayPastedValidation(i)}}pasteZuluDateTime(t,e){if(e===0&&this.yearInputEl){const i=this.slicePastedDate(4,t[e]);this.yearInputEl.value=i;this.setInputValue(this.yearInputEl)}else if(e===1&&this.monthInputEl){const i=this.slicePastedDate(2,t[e]);this.monthInputEl.value=i;this.setInputValue(this.monthInputEl)}else if(this.dayInputEl){const i=this.slicePastedDate(2,t[e]);this.dayInputEl.value=i;this.setInputValue(this.dayInputEl)}}displayPastedValidation(t){var e;if(((e=this.invalidDateText)===null||e===void 0?void 0:e.length)>0){this.previousInvalidDateTest=this.invalidDateText}this.invalidDateText=`Please paste a valid ${this.getAriaLabel(t.target)}`;this.validationStatus=v.Error;this.isPasteValidationDisplayed=true}setPasteInvalidText(){var t;if(this.isPasteValidationDisplayed){this.invalidDateText=(t=this.previousInvalidDateTest)!==null&&t!==void 0?t:"";this.isPasteValidationDisplayed=false;this.preventInputsUpdating=true}}notifyScreenReader(t,e){var i;const s=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("#live-region");if(s){if(this.isKeyboardOrEvent(e)){this.notifyScreenReaderArrowKeys(t)}else if(Object.prototype.toString.call(e)===this.INPUT_EVENT_OBJECT_STRING){this.notifyScreenReaderInput(t,s)}}}render(){var e;const{inputId:i,label:a,disabled:r,helperText:h,hideHelperText:n,hideLabel:o,showClearButton:c,showCalendarButton:l,size:u,theme:b,validationAriaLive:f}=this;const p=!d(this.validationStatus);const m=p?this.validationStatus:!d(this.invalidDateText)?v.Error:"";const w=`Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;y(true,this.el,this.name,this.convertToDate(this.year,this.month,this.day),this.disabled);return t(s,{key:"894d4c210ef2598074038ec24d45ae891cd5932d",class:{[`ic-theme-${b}`]:b!=="inherit",[`ic-date-input-disabled`]:r},onBlur:this.handleHostBlur,onFocus:this.handleHostFocus},t("ic-input-container",{key:"39bb28edd5d11e18a7d0a0a6e87cb33fec78dc9e",disabled:r},!(o&&n)&&t("ic-input-label",{key:"f8e878e5629318e5b2eb32771bfce3e9e9af2bd8",for:i,label:a,hideLabel:o,helperText:!n?h!==null&&h!==void 0?h:undefined:"",disabled:r},t("slot",{key:"b3e259f609df0457f014af6cfec958d7e69a74ff",name:"helper-text",slot:"helper-text"})),t("span",{key:"1f7c47515397e895e794f84193b8f5c38290cf61",id:this.screenReaderInfoId,class:"sr-only","aria-hidden":"true"},this.getScreenReaderInfo(m),o&&`${a}\n`,n&&`${h}\n`,`${this.defaultHelperText}.`),t("span",{key:"0e6255361a6ab455bfe391b9c222b06a267cce5e",id:this.assistiveHintId,class:"sr-only","aria-hidden":"true"},w),t("span",{key:"9292ae3b7b70cae04d1b4a7bc80c74f4b18e419d",id:"live-region","aria-live":"assertive",class:"sr-only"}),t("ic-input-component-container",{key:"1513590a6ad37c9d73cf92d93a56ec01999a4f70",id:i,ref:t=>this.inputCompContainerEl=t,disabled:r,validationStatus:m,size:u,role:"group",class:{[`ic-theme-${b}`]:b!=="inherit"}},t("div",{key:"f239dad4ad5279bb621786ca38c9eee186b730ff",class:"input-container"},t("div",{key:"846282ae8bc4a5ae3fce127dd63d7193ff87be8d",class:"date-inputs"},this.getInputsInOrder()[0],"/",this.getInputsInOrder()[1],"/",this.getInputsInOrder()[2]),t("div",{key:"39c1443665b141e1ee83076158b1c55bb379d659",class:"action-buttons"},c&&t("ic-button",{key:"50e305ad3048d844c55ef98c1e0a6a0e00cebcb7",id:"clear-button","aria-label":"Clear input",class:{["clear-button"]:true,["hidden"]:d(this.day)&&d(this.month)&&d(this.year)},disabled:this.disabled,innerHTML:P,onClick:this.handleClear,onFocus:this.handleClearFocus,onBlur:this.handleClearBlur,variant:"icon-tertiary",theme:this.clearButtonFocused?"light":"dark",size:u}),l&&t("div",{key:"dd6c21da8fb8d644c49ba73dc86518d0356e17a8",class:"show-calendar-button-wrapper"},t("div",{key:"300b22928703fbf3d713e3e9e7fbe600ce11e4dc",class:{divider:true,[u]:true}}),t("ic-button",{key:"79d1c71f09b7b3f4cd6fcf824c9eb6ee877caacb",id:"calendar-button",ref:t=>this.calendarButtonEl=t,"aria-label":"Display calendar","aria-haspopup":"dialog",class:"calendar-button",disabled:this.disabled,innerHTML:S,onClick:this.handleCalendarOpen,variant:"icon-tertiary",size:u,onFocus:this.handleCalendarFocus,onBlur:this.handleCalendarBlur,theme:this.calendarFocused?"light":"dark"}))))),t("span",{key:"03a6a7aae9516df3bb65becac9839a92f5ab7e18",id:this.selectedDateInfoId,class:"sr-only","aria-live":"polite"},t("span",{key:"e70c8df270cabf7482775b0eb5f5304e77ef79ee",ref:t=>this.selectedDateInfoEl=t,role:"status"})),t("ic-input-validation",{key:"58a678dfc8970afdfb061c6bd98ee479efd2a8c9",status:m,message:p?(e=this.validationText)!==null&&e!==void 0?e:"":this.invalidDateText,for:i,ariaLiveMode:f})))}static get delegatesFocus(){return true}get el(){return a(this)}static get watchers(){return{day:["watchInputHandler"],month:["watchInputHandler"],year:["watchInputHandler"],disabled:["watchDisabledHandler"],disableFuture:["watchDisableFutureHandler"],disablePast:["watchDisablePastHandler"],max:["watchMaxHandler"],min:["watchMinHandler"],required:["watchRequiredHandler"]}}};U.style=K;export{N as ic_calendar,U as ic_date_input};
|
|
2
|
+
//# sourceMappingURL=p-6f45df7a.entry.js.map
|