@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ic-time-selector.js","sourceRoot":"","sources":["../../../../../src/components/ic-time-selector/ic-time-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Element,\n State,\n Prop,\n Event,\n EventEmitter,\n Host,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcDisableTimeSelection,\n IcSizes,\n IcThemeMode,\n IcTimeFormatSelector,\n} from \"../../utils/types\";\nimport { parseTimeHelper } from \"../../utils/helpers\";\nimport Check from \"../../assets/check-icon.svg\";\nimport Clear from \"../../assets/close-icon.svg\";\nimport { IcTimePeriods } from \"./ic-time-selector.types\";\n\nconst COLUMN_TYPES = [\"hour\", \"minute\", \"second\", \"period\"] as const;\nconst COLUMN_CLASS = \".ic-time-selector-column\";\nconst ITEM_CLASS = \".ic-time-selector-item\";\ntype ColumnType = typeof COLUMN_TYPES[number];\n\n@Component({\n tag: \"ic-time-selector\",\n styleUrl: \"ic-time-selector.css\",\n shadow: true,\n})\nexport class TimeSelector {\n private DEFAULT_TIME_FORMAT: IcTimeFormatSelector = \"HH:MM:SS\";\n private minutes: number[] = Array.from({ length: 60 }, (_, i) => i);\n private seconds: number[] = Array.from({ length: 60 }, (_, i) => i);\n private periods: IcTimePeriods[] = [\"AM\", \"PM\"];\n private minTime: Date | null = null;\n private maxTime: Date | null = null;\n private lastAnnouncedType?: ColumnType;\n private lastAnnouncedValue?: number | IcTimePeriods | null;\n\n @Element() el: HTMLIcTimeSelectorElement;\n\n @State() selectedHour?: number;\n @State() selectedMinute?: number;\n @State() selectedSecond?: number;\n @State() selectedPeriod?: IcTimePeriods;\n @State() ariaLiveMessage: string = \"\";\n\n /**\n * An array of times that will be disabled in the time selector. The times can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() disableTimes: IcDisableTimeSelection[] = [];\n\n /**\n * The earliest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n this.minTime = parseTimeHelper(this.min).date;\n }\n\n /**\n * The latest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n this.maxTime = parseTimeHelper(this.max).date;\n }\n\n /**\n * The size of the time selector to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\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 /**\n * The format in which the time will be displayed.\n */\n @Prop() timeFormat: IcTimeFormatSelector = this.DEFAULT_TIME_FORMAT;\n\n /**\n * The time period format: \"12\" for 12-hour, \"24\" for 24-hour. Defaults to \"24\".\n */\n @Prop() timePeriod: \"12\" | \"24\" = \"24\";\n\n /**\n * The value of the time selector. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n @Watch(\"value\")\n watchValueHandler(): void {\n this.setTime(this.value);\n setTimeout(() => {\n this.scrollSelectedItem(\"hour\");\n this.scrollSelectedItem(\"minute\");\n if (this.timeFormat === this.DEFAULT_TIME_FORMAT) {\n this.scrollSelectedItem(\"second\");\n }\n if (this.timePeriod === \"12\") {\n this.scrollSelectedItem(\"period\");\n }\n }, 0);\n }\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{\n value: Date | null;\n timeString: string | null;\n timeObject: {\n hour: string | null;\n minute: string | null;\n second: string | null;\n period?: IcTimePeriods;\n };\n }>;\n\n componentWillLoad() {\n this.setTime(this.value);\n }\n\n componentDidLoad() {\n setTimeout(() => {\n if (this.selectedHour !== undefined && this.selectedHour !== null) {\n this.scrollSelectedItem(\"hour\");\n } else if (this.min) {\n this.scrollMinTime(\"hour\");\n }\n if (this.selectedMinute !== undefined && this.selectedMinute !== null) {\n this.scrollSelectedItem(\"minute\");\n } else if (this.min) {\n this.scrollMinTime(\"minute\");\n }\n if (this.timeFormat === this.DEFAULT_TIME_FORMAT) {\n if (this.selectedSecond !== undefined && this.selectedSecond !== null) {\n this.scrollSelectedItem(\"second\");\n } else if (this.min) {\n this.scrollMinTime(\"second\");\n }\n }\n if (this.timePeriod === \"12\") {\n if (this.selectedPeriod !== undefined && this.selectedPeriod !== null) {\n this.scrollSelectedItem(\"period\");\n } else if (this.min) {\n this.scrollMinTime(\"period\");\n }\n }\n this.updateAriaLiveMessage();\n }, 0);\n }\n\n private getHeaderLabel(type: ColumnType): string {\n switch (type) {\n case \"hour\":\n return \"HH\";\n case \"minute\":\n return \"MM\";\n case \"second\":\n return \"SS\";\n default:\n return \"\";\n }\n }\n\n private setTimeParts = (hour: number, minute: number, second: number) => {\n let period: IcTimePeriods = \"AM\";\n if (this.timePeriod === \"12\") {\n if (hour === 0) {\n hour = 12;\n period = \"AM\";\n } else if (hour === 12) {\n period = \"PM\";\n } else if (hour > 12) {\n hour = hour - 12;\n period = \"PM\";\n } else {\n period = \"AM\";\n }\n this.selectedHour = hour;\n this.selectedPeriod = period;\n } else {\n this.selectedHour = hour;\n }\n this.selectedMinute = minute;\n this.selectedSecond = second;\n };\n\n private setTime(time?: string | Date | null) {\n if (time === null || time === undefined || time === \"\") {\n this.handleClear();\n return;\n }\n\n if (typeof time === \"string\") {\n const zuluMatch = time.match(\n /^([0-9]{2}):([0-9]{2}):([0-9]{2})(?:\\.[0-9]{1,3})?Z?$/\n );\n if (zuluMatch) {\n this.setTimeParts(\n Number(zuluMatch[1]),\n Number(zuluMatch[2]),\n Number(zuluMatch[3])\n );\n } else {\n const parts = time.split(\":\");\n this.setTimeParts(\n Number(parts[0]) || 0,\n Number(parts[1]) || 0,\n Number(parts[2]) || 0\n );\n }\n } else {\n const { parts } = parseTimeHelper(time);\n if (parts) {\n this.setTimeParts(parts.hour, parts.minute, parts.second);\n }\n }\n }\n\n private renderScrollRows(count: number, keyPrefix = \"scroll-row\") {\n return Array.from({ length: count }).map((_, i) => {\n const isLast = keyPrefix.endsWith(\"bottom-spacer\")\n ? i === count - 1\n : false;\n return (\n <li\n class={{\n \"ic-time-selector-item\": true,\n \"ic-time-selector-scroll-row\": true,\n ...(isLast ? { \"ic-time-selector-scroll-row-last\": true } : {}),\n }}\n aria-hidden=\"true\"\n tabIndex={-1}\n key={`${keyPrefix}-${i}`}\n />\n );\n });\n }\n\n private scrollSelectedItem(colClass: ColumnType, clear?: boolean) {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n let colIdx = COLUMN_TYPES.indexOf(colClass);\n if (colClass === \"period\" && columns?.length) {\n colIdx = columns.length - 1;\n }\n const col = columns?.[colIdx];\n if (col) {\n const items = col.querySelectorAll(ITEM_CLASS);\n let selectedIdx = -1;\n items.forEach((item, idx) => {\n if (item.classList.contains(\"selected\")) selectedIdx = idx;\n });\n if (clear) {\n selectedIdx = 0;\n }\n if (selectedIdx > -1) {\n const scrollRow = col.querySelector(\n \".ic-time-selector-scroll-row\"\n ) as HTMLElement;\n let resolvedHeight = 0;\n if (scrollRow) {\n resolvedHeight = parseFloat(getComputedStyle(scrollRow).height);\n }\n const offset = resolvedHeight * 2;\n const scrollTop =\n (items[selectedIdx] as HTMLElement).offsetTop - offset;\n const prefersReducedMotion = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches;\n col.scrollTo({\n top: scrollTop,\n behavior: prefersReducedMotion ? \"instant\" : \"smooth\",\n });\n if (clear) {\n setTimeout(() => {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n if (columns && columns.length > 0) {\n this.checkIfScrollIsFinished(columns[0], scrollTop);\n }\n }, 300);\n }\n }\n }\n }\n\n private checkIfScrollIsFinished = (\n column: { scrollTop: number },\n scrollTop: number\n ) => {\n const isScrollFinished = setInterval(() => {\n if (column.scrollTop === scrollTop + 56) {\n (column as HTMLElement)?.focus();\n clearInterval(isScrollFinished);\n }\n }, 25);\n };\n\n private scrollMinTime(colClass: ColumnType) {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n const colIdx = COLUMN_TYPES.indexOf(colClass);\n const col = columns?.[colIdx];\n if (!col) return;\n const items = col.querySelectorAll(ITEM_CLASS);\n let minHour = 0,\n minMinute = 0,\n minSecond = 0;\n if (this.minTime) {\n minHour = this.minTime.getHours() + 2;\n minMinute = this.minTime.getMinutes() + 2;\n minSecond = this.minTime.getSeconds();\n } else if (this.min) {\n const minDate = parseTimeHelper(this.min).date;\n if (minDate) {\n minHour = minDate.getHours();\n minMinute = minDate.getMinutes();\n minSecond = minDate.getSeconds();\n }\n }\n let targetIdx = -1;\n const values = this.getColumnValues(colClass);\n if (colClass === \"hour\") {\n targetIdx = values.findIndex((v) => v === minHour);\n } else if (colClass === \"minute\") {\n targetIdx = values.findIndex((v) => v === minMinute);\n } else if (colClass === \"second\") {\n targetIdx = values.findIndex((v) => v === minSecond);\n } else if (colClass === \"period\") {\n let period: IcTimePeriods = \"AM\";\n if (this.timePeriod === \"12\") {\n if (minHour === 0) {\n period = \"AM\";\n } else if (minHour === 12) {\n period = \"PM\";\n } else if (minHour > 12) {\n period = \"PM\";\n } else {\n period = \"AM\";\n }\n }\n targetIdx = values.findIndex((v) => v === period);\n }\n if (targetIdx > -1) {\n const scrollRow = col.querySelector(\n \".ic-time-selector-scroll-row\"\n ) as HTMLElement;\n let resolvedHeight = 0;\n if (scrollRow) {\n resolvedHeight = parseFloat(getComputedStyle(scrollRow).height);\n }\n const offset = resolvedHeight * 2;\n const scrollTop = (items[targetIdx] as HTMLElement).offsetTop - offset;\n const prefersReducedMotion = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches;\n col.scrollTo({\n top: scrollTop,\n behavior: prefersReducedMotion ? \"instant\" : \"smooth\",\n });\n }\n }\n\n private handleSelect = (type: ColumnType, value: number | IcTimePeriods) => {\n const prevValue = this.getSelectedValue(type);\n switch (type) {\n case \"hour\":\n this.selectedHour = Number(value);\n break;\n case \"minute\":\n this.selectedMinute = Number(value);\n break;\n case \"second\":\n this.selectedSecond = Number(value);\n break;\n case \"period\":\n this.selectedPeriod = value as IcTimePeriods;\n break;\n }\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n const idx = COLUMN_TYPES.indexOf(type);\n if (columns && columns[idx]) {\n (columns[idx] as HTMLElement).focus();\n window.requestAnimationFrame(() => {\n this.scrollSelectedItem(type);\n });\n }\n if (prevValue === undefined || prevValue === null) {\n this.announceSelectedColumn(type);\n } else {\n this.lastAnnouncedType = type;\n this.lastAnnouncedValue = this.getSelectedValue(type);\n }\n };\n\n private isTimeDisabled = (\n hour: number,\n minute: number,\n second: number,\n type?: ColumnType\n ): boolean => {\n for (const t of this.disableTimes) {\n if (typeof t === \"string\" || t instanceof Date) {\n const parts = parseTimeHelper(t).parts;\n if (\n parts &&\n parts.hour === hour &&\n parts.minute === minute &&\n parts.second === second\n ) {\n return true;\n }\n } else if (t && typeof t === \"object\" && \"start\" in t && \"end\" in t) {\n const startParts = parseTimeHelper(t.start).parts;\n const endParts = parseTimeHelper(t.end).parts;\n if (startParts && endParts) {\n const timeVal = hour * 3600 + minute * 60 + second;\n const startVal =\n startParts.hour * 3600 + startParts.minute * 60 + startParts.second;\n const endVal =\n endParts.hour * 3600 + endParts.minute * 60 + endParts.second;\n if (timeVal >= startVal && timeVal <= endVal) {\n return true;\n }\n }\n }\n }\n if (this.min) {\n this.minTime = parseTimeHelper(this.min).date;\n if (this.minTime) {\n const minHour = this.minTime.getHours();\n const minMinute = this.minTime.getMinutes();\n const minSecond = this.minTime.getSeconds();\n if (type === \"hour\") {\n const highlightedMinute = this.selectedMinute ?? minMinute;\n const highlightedSecond = this.selectedSecond ?? minSecond;\n if (\n hour < minHour ||\n (hour === minHour && highlightedMinute < minMinute) ||\n (hour === minHour &&\n highlightedMinute === minMinute &&\n highlightedSecond < minSecond)\n ) {\n return true;\n }\n } else if (type === \"minute\") {\n if (hour === minHour && minute < minMinute) {\n return true;\n }\n } else if (type === \"second\") {\n if (hour === minHour && minute === minMinute && second < minSecond) {\n return true;\n }\n } else {\n if (\n hour < minHour ||\n (hour === minHour && minute < minMinute) ||\n (hour === minHour && minute === minMinute && second < minSecond)\n ) {\n return true;\n }\n }\n }\n }\n if (this.max) {\n this.maxTime = parseTimeHelper(this.max).date;\n if (this.maxTime) {\n const maxHour = this.maxTime.getHours();\n const maxMinute = this.maxTime.getMinutes();\n const maxSecond = this.maxTime.getSeconds();\n if (type === \"hour\") {\n const selectedMinute = this.selectedMinute ?? 59;\n const selectedSecond = this.selectedSecond ?? 59;\n if (\n hour > maxHour ||\n (hour === maxHour && selectedMinute > maxMinute) ||\n (hour === maxHour &&\n selectedMinute === maxMinute &&\n selectedSecond > maxSecond)\n ) {\n return true;\n }\n } else if (type === \"minute\") {\n if (hour === maxHour && minute > maxMinute) {\n return true;\n }\n } else if (type === \"second\") {\n if (hour === maxHour && minute === maxMinute && second > maxSecond) {\n return true;\n }\n } else {\n if (\n hour > maxHour ||\n (hour === maxHour && minute > maxMinute) ||\n (hour === maxHour && minute === maxMinute && second > maxSecond)\n ) {\n return true;\n }\n }\n }\n }\n return false;\n };\n\n private announceSelectedColumn(type: ColumnType) {\n const value = this.getSelectedValue(type);\n if (\n value !== null &&\n value !== undefined &&\n (type !== this.lastAnnouncedType || value !== this.lastAnnouncedValue)\n ) {\n this.ariaLiveMessage = `Selected ${type}: ${value}`;\n } else {\n this.ariaLiveMessage = \"\";\n }\n this.lastAnnouncedType = type;\n this.lastAnnouncedValue = value;\n }\n\n private getColumnValues(type: ColumnType): number[] | IcTimePeriods[] {\n if (type === \"hour\")\n return this.timePeriod === \"12\"\n ? Array.from({ length: 12 }, (_, i) => i + 1)\n : Array.from({ length: 24 }, (_, i) => i);\n if (type === \"minute\") return this.minutes;\n if (type === \"second\") return this.seconds;\n if (type === \"period\") return this.periods;\n return [];\n }\n\n private getSelectedValue(type: ColumnType): number | IcTimePeriods | null {\n if (type === \"hour\") return this.selectedHour ?? null;\n if (type === \"minute\") return this.selectedMinute ?? null;\n if (type === \"second\") return this.selectedSecond ?? null;\n if (type === \"period\") return this.selectedPeriod ?? null;\n return null;\n }\n\n private getHighlightedValue(\n type: ColumnType,\n col: HTMLElement\n ): number | IcTimePeriods | null {\n const items = Array.from(col.querySelectorAll(ITEM_CLASS));\n const realItems = items.filter(\n (item) => !item.classList.contains(\"ic-time-selector-scroll-row\")\n );\n if (realItems.length === 0) return null;\n const highlightTop = this.el.shadowRoot?.querySelector(\n \".ic-time-selector-highlight-top\"\n ) as HTMLElement;\n const highlightBottom = this.el.shadowRoot?.querySelector(\n \".ic-time-selector-highlight-bottom\"\n ) as HTMLElement;\n if (!highlightTop || !highlightBottom) return null;\n const topRect = highlightTop.getBoundingClientRect();\n const bottomRect = highlightBottom.getBoundingClientRect();\n const highlightStart = topRect.bottom;\n const highlightEnd = bottomRect.top;\n for (const item of realItems) {\n const itemRect = item.getBoundingClientRect();\n const itemCenter = itemRect.top + itemRect.height / 2;\n if (itemCenter >= highlightStart && itemCenter <= highlightEnd) {\n const key = item.getAttribute(\"key\");\n if (key) {\n const valStr = key.replace(`${type}-val-`, \"\");\n if (type === \"hour\" || type === \"minute\" || type === \"second\") {\n return Number(valStr);\n } else {\n return valStr as IcTimePeriods;\n }\n }\n const text = item.textContent?.trim();\n if (type === \"hour\" || type === \"minute\" || type === \"second\") {\n return text ? Number(text) : null;\n } else {\n return text as IcTimePeriods;\n }\n }\n }\n return null;\n }\n\n private handleColumnKeyDown = (type: ColumnType, event: KeyboardEvent) => {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n const idx = COLUMN_TYPES.indexOf(type);\n if (!columns) return;\n\n const values = this.getColumnValues(type);\n const selected = this.getSelectedValue(type);\n const col = columns[idx] as HTMLElement;\n if (!col) return;\n\n const selectHighlighted = () => {\n const highlighted = this.getHighlightedValue(type, col);\n if (highlighted !== null) {\n this.handleSelect(type, highlighted);\n } else if (values.length > 0) {\n this.handleSelect(type, values[0]);\n }\n };\n\n switch (event.key) {\n case \"Enter\":\n case \" \":\n event.preventDefault();\n selectHighlighted();\n return;\n case \"ArrowRight\":\n event.preventDefault();\n selectHighlighted();\n if (idx < columns.length - 1) {\n (columns[idx + 1] as HTMLElement)?.focus();\n }\n return;\n case \"ArrowLeft\":\n event.preventDefault();\n if (idx > 0) (columns[idx - 1] as HTMLElement)?.focus();\n return;\n case \"Tab\":\n if (event.shiftKey) {\n if (idx === 0) {\n return;\n } else {\n event.preventDefault();\n (columns[idx - 1] as HTMLElement)?.focus();\n }\n } else {\n event.preventDefault();\n selectHighlighted();\n this.announceSelectedColumn(type);\n if (idx < columns.length - 1) {\n (columns[idx + 1] as HTMLElement)?.focus();\n } else {\n (\n this.el.shadowRoot?.querySelector(\n \".ic-time-selector-clear-btn\"\n ) as HTMLElement\n )?.focus();\n this.updateAriaLiveMessage();\n }\n }\n return;\n case \"ArrowUp\":\n case \"ArrowDown\": {\n let idxInValues = values.findIndex((v) => v === selected);\n if (idxInValues === -1) idxInValues = 0;\n let newIdx = idxInValues;\n const direction = event.key === \"ArrowUp\" ? -1 : 1;\n const maxIdx = values.length - 1;\n do {\n newIdx += direction;\n } while (\n newIdx >= 0 &&\n newIdx <= maxIdx &&\n (() => {\n if (type === \"hour\" || type === \"minute\" || type === \"second\") {\n const hour =\n type === \"hour\"\n ? (values[newIdx] as number)\n : this.selectedHour ?? 0;\n const minute =\n type === \"minute\"\n ? (values[newIdx] as number)\n : this.selectedMinute ?? 0;\n const second =\n type === \"second\"\n ? (values[newIdx] as number)\n : this.selectedSecond ?? 0;\n return this.isTimeDisabled(hour, minute, second);\n }\n return false;\n })()\n );\n this.ariaLiveMessage = `Selected ${type}: ${values[newIdx]}`;\n if (newIdx >= 0 && newIdx <= maxIdx && newIdx !== idxInValues) {\n this.handleSelect(type, values[newIdx]);\n }\n return;\n }\n default:\n return;\n }\n };\n\n private updateAriaLiveMessage() {\n const hourStr =\n this.selectedHour != null\n ? this.selectedHour.toString().padStart(2, \"0\")\n : null;\n const minuteStr =\n this.selectedMinute != null\n ? this.selectedMinute.toString().padStart(2, \"0\")\n : null;\n const secondStr =\n this.selectedSecond != null\n ? this.selectedSecond.toString().padStart(2, \"0\")\n : null;\n let timeString = \"\";\n let allSelected = false;\n if (this.timeFormat === \"HH:MM\") {\n allSelected = hourStr !== null && minuteStr !== null;\n if (allSelected) {\n timeString =\n hourStr +\n \":\" +\n minuteStr +\n (this.selectedPeriod ? \" \" + this.selectedPeriod : \"\");\n }\n } else if (this.timeFormat === this.DEFAULT_TIME_FORMAT) {\n allSelected =\n hourStr !== null && minuteStr !== null && secondStr !== null;\n if (allSelected) {\n timeString =\n hourStr +\n \":\" +\n minuteStr +\n \":\" +\n secondStr +\n (this.selectedPeriod ? \" \" + this.selectedPeriod : \"\");\n }\n }\n this.ariaLiveMessage =\n allSelected && timeString ? `Selected time: ${timeString}` : \"\";\n }\n\n private renderColumn = (\n type: ColumnType,\n values: number[] | IcTimePeriods[],\n selected: number | IcTimePeriods | null\n ) => {\n const isTimeColumn =\n type === \"hour\" || type === \"minute\" || type === \"second\";\n const isPeriodColumn = type === \"period\";\n const headerLabel = this.getHeaderLabel(type);\n const topSpacerCount = 2;\n let bottomSpacerCount = 6;\n if (this.size === \"large\") {\n bottomSpacerCount = 5;\n } else if (this.size === \"small\") {\n bottomSpacerCount = 8;\n }\n return (\n <div class=\"ic-time-selector-column-wrapper\">\n {isPeriodColumn ? (\n <div class=\"ic-time-selector-header-row\" />\n ) : (\n headerLabel && (\n <div class=\"ic-time-selector-header-row\">\n <ic-typography variant=\"subtitle-small\">\n {headerLabel}\n </ic-typography>\n </div>\n )\n )}\n <div\n class={{\n \"ic-time-selector-column\": true,\n \"ic-time-selector-column-period\": isPeriodColumn,\n }}\n tabIndex={0}\n onKeyDown={(e) => this.handleColumnKeyDown(type, e as KeyboardEvent)}\n >\n <ul class=\"ic-time-selector-list\" role=\"listbox\" aria-label={type}>\n {this.renderScrollRows(topSpacerCount, `${type}-top-spacer`)}\n {values.map((val) => {\n let disabled = false;\n if (isTimeColumn) {\n const hour =\n type === \"hour\" ? (val as number) : this.selectedHour ?? 0;\n const minute =\n type === \"minute\"\n ? (val as number)\n : this.selectedMinute ?? 0;\n const second =\n type === \"second\"\n ? (val as number)\n : this.selectedSecond ?? 0;\n disabled = this.isTimeDisabled(hour, minute, second, type);\n }\n return (\n <li\n class={{\n \"ic-time-selector-item\": true,\n selected: val === selected,\n disabled,\n }}\n role=\"option\"\n aria-selected={val === selected ? \"true\" : \"false\"}\n aria-disabled={disabled ? \"true\" : \"false\"}\n onClick={() =>\n !disabled && this.handleSelect(type, val as any)\n }\n tabIndex={-1}\n key={`${type}-val-${val}`}\n >\n <ic-typography variant=\"subtitle-small\">\n {typeof val === \"number\"\n ? val.toString().padStart(2, \"0\")\n : val}\n </ic-typography>\n </li>\n );\n })}\n {(isTimeColumn || isPeriodColumn) &&\n this.renderScrollRows(bottomSpacerCount, `${type}-bottom-spacer`)}\n </ul>\n </div>\n </div>\n );\n };\n\n private handleClear = () => {\n this.selectedHour = undefined;\n this.scrollSelectedItem(\"hour\", true);\n this.selectedMinute = undefined;\n this.scrollSelectedItem(\"minute\", true);\n this.selectedSecond = undefined;\n this.scrollSelectedItem(\"second\", true);\n this.selectedPeriod = undefined;\n this.scrollSelectedItem(\"period\", true);\n this.lastAnnouncedType = undefined;\n this.lastAnnouncedValue = undefined;\n this.icChange.emit({\n value: null,\n timeString: null,\n timeObject: {\n hour: null,\n minute: null,\n second: null,\n period: undefined,\n },\n });\n };\n\n private handleConfirmClick = () => {\n const hour = this.selectedHour != null ? this.selectedHour : null;\n const minute = this.selectedMinute != null ? this.selectedMinute : null;\n const second = this.selectedSecond != null ? this.selectedSecond : null;\n const period = this.selectedPeriod;\n\n const hourStr = hour != null ? hour.toString().padStart(2, \"0\") : null;\n const minuteStr =\n minute != null ? minute.toString().padStart(2, \"0\") : null;\n const secondStr =\n second != null ? second.toString().padStart(2, \"0\") : null;\n\n let allSelected = false;\n if (this.timeFormat === this.DEFAULT_TIME_FORMAT) {\n allSelected = hour !== null && minute !== null && second !== null;\n } else {\n allSelected = hour !== null && minute !== null;\n }\n\n let value: Date | null = null;\n let timeString: string | null = null;\n if (allSelected) {\n let date24hours = hour;\n if (hour != null && period && this.timePeriod === \"12\") {\n if (period === \"PM\" && hour < 12) date24hours = hour + 12;\n if (period === \"AM\" && hour === 12) date24hours = 0;\n }\n value = new Date();\n value.setHours(date24hours ?? 0);\n value.setMinutes(minute ?? 0);\n value.setSeconds(second ?? 0);\n value.setMilliseconds(0);\n if (this.timeFormat === \"HH:MM\") {\n timeString = hourStr + \":\" + minuteStr + (period ? \" \" + period : \"\");\n } else if (this.timeFormat === this.DEFAULT_TIME_FORMAT) {\n timeString =\n hourStr +\n \":\" +\n minuteStr +\n \":\" +\n secondStr +\n (period ? \" \" + period : \"\");\n }\n this.value = value;\n }\n\n this.icChange.emit({\n value: allSelected ? value : null,\n timeString: allSelected ? timeString : null,\n timeObject: {\n hour: hourStr,\n minute: minuteStr,\n second: secondStr,\n ...(period ? { period } : {}),\n },\n });\n };\n\n render() {\n const hours =\n this.timePeriod === \"12\"\n ? Array.from({ length: 12 }, (_, i) => i + 1)\n : Array.from({ length: 24 }, (_, i) => i);\n const timeFormat = this.timeFormat || this.DEFAULT_TIME_FORMAT;\n const columns = [\n this.renderColumn(\"hour\", hours, this.selectedHour ?? null),\n this.renderColumn(\"minute\", this.minutes, this.selectedMinute ?? null),\n ];\n if (timeFormat === this.DEFAULT_TIME_FORMAT) {\n columns.push(\n this.renderColumn(\"second\", this.seconds, this.selectedSecond ?? null)\n );\n }\n\n let colonSelectedStates: boolean[] = [];\n if (timeFormat === this.DEFAULT_TIME_FORMAT) {\n colonSelectedStates = [\n this.selectedHour !== undefined && this.selectedMinute !== undefined,\n this.selectedMinute !== undefined && this.selectedSecond !== undefined,\n ];\n } else {\n colonSelectedStates = [\n this.selectedHour !== undefined && this.selectedMinute !== undefined,\n ];\n }\n\n const isInPicker = this.el.closest(\"ic-time-picker\") !== null;\n\n const { size, theme, timePeriod } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-time-selector-${size}`]: true,\n }}\n >\n <div\n role={isInPicker ? \"dialog\" : undefined}\n aria-modal={isInPicker ? true : undefined}\n aria-label=\"Select time. Use arrow keys to navigate and select the options and then tab to move onto the next selection.\"\n class={{\n \"ic-time-selector-dialog-container\": true,\n }}\n >\n <div class=\"ic-time-selector-highlight-lines\">\n <div class=\"ic-time-selector-header-border\" />\n <div\n class={{\n \"ic-time-selector-highlight\": true,\n \"ic-time-selector-highlight-top\": true,\n }}\n />\n <div class=\"ic-time-selector-columns\">\n {columns.map((col, idx) => [\n col,\n idx < columns.length - 1 ? (\n <ic-typography\n class={{\n \"ic-time-selector-colon\": true,\n \"ic-time-selector-colon-selected\":\n colonSelectedStates[idx],\n }}\n variant=\"subtitle-small\"\n aria-hidden=\"true\"\n key={`colon-${idx}`}\n >\n :\n </ic-typography>\n ) : null,\n ])}\n {timePeriod !== \"24\" &&\n this.renderColumn(\n \"period\",\n this.periods,\n this.selectedPeriod ?? null\n )}\n </div>\n <div\n class={{\n \"ic-time-selector-highlight\": true,\n \"ic-time-selector-highlight-bottom\": true,\n }}\n />\n </div>\n <div class=\"ic-time-selector-actions\">\n <ic-button\n variant=\"icon-tertiary\"\n aria-label=\"Clear time\"\n class={{\n \"ic-time-selector-clear-btn\": true,\n }}\n onClick={this.handleClear}\n disabled={\n this.selectedHour === undefined &&\n this.selectedMinute === undefined &&\n this.selectedSecond === undefined &&\n this.selectedPeriod === undefined\n }\n size={size}\n tabIndex={0}\n onKeyDown={(e: KeyboardEvent) => {\n if (e.key === \"Tab\" && e.shiftKey) {\n e.preventDefault();\n const columns =\n this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n if (columns && columns.length > 0) {\n const lastCol = columns[columns.length - 1] as HTMLElement;\n lastCol?.focus();\n }\n }\n }}\n >\n <span aria-hidden=\"true\" innerHTML={Clear}></span>\n </ic-button>\n <ic-button\n variant=\"icon-tertiary\"\n aria-label=\"Select time\"\n class=\"ic-time-selector-check-btn\"\n onClick={this.handleConfirmClick}\n disabled={\n this.selectedHour === undefined &&\n this.selectedMinute === undefined &&\n this.selectedSecond === undefined &&\n this.selectedPeriod === undefined\n }\n size={size}\n tabIndex={0}\n >\n <span aria-hidden=\"true\" innerHTML={Check}></span>\n </ic-button>\n </div>\n </div>\n <div class=\"sr-only\" aria-live=\"polite\">\n {this.ariaLiveMessage}\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ic-time-selector.js","sourceRoot":"","sources":["../../../../../src/components/ic-time-selector/ic-time-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Element,\n State,\n Prop,\n Event,\n EventEmitter,\n Host,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcDisableTimeSelection,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { parseTimeHelper } from \"../../utils/helpers\";\nimport Check from \"../../assets/check-icon.svg\";\nimport Clear from \"../../assets/close-icon.svg\";\nimport { IcTimePeriods } from \"./ic-time-selector.types\";\nimport \"../../../../web-components/src/components/ic-typography/ic-typography\";\nimport \"../../../../web-components/src/components/ic-button/ic-button\";\n\nconst COLUMN_TYPES = [\"hour\", \"minute\", \"period\"] as const;\nconst COLUMN_CLASS = \".ic-time-selector-column\";\nconst ITEM_CLASS = \".ic-time-selector-item\";\ntype ColumnType = typeof COLUMN_TYPES[number];\n\n@Component({\n tag: \"ic-time-selector\",\n styleUrl: \"ic-time-selector.css\",\n shadow: true,\n})\nexport class TimeSelector {\n private minutes: number[] = Array.from({ length: 60 }, (_, i) => i);\n private periods: IcTimePeriods[] = [\"AM\", \"PM\"];\n private minTime: Date | null = null;\n private maxTime: Date | null = null;\n private lastAnnouncedType?: ColumnType;\n private lastAnnouncedValue?: number | IcTimePeriods | null;\n\n @Element() el: HTMLIcTimeSelectorElement;\n\n @State() selectedHour?: number;\n @State() selectedMinute?: number;\n @State() selectedPeriod?: IcTimePeriods;\n @State() ariaLiveMessage: string = \"\";\n\n /**\n * An array of objects with start and end values that will be disabled in the time selector. The times can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() disableTimes: IcDisableTimeSelection[] = [];\n\n /**\n * The earliest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n this.minTime = parseTimeHelper(this.min).date;\n }\n\n /**\n * The latest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n this.maxTime = parseTimeHelper(this.max).date;\n }\n\n /**\n * The size of the time selector to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\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 /**\n * The time period format: \"12\" for 12-hour, \"24\" for 24-hour. Defaults to \"24\".\n */\n @Prop() timePeriod: \"12\" | \"24\" = \"24\";\n\n /**\n * The value of the time selector. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n @Watch(\"value\")\n watchValueHandler(): void {\n this.setTime(this.value);\n setTimeout(() => {\n this.scrollSelectedItem(\"hour\");\n this.scrollSelectedItem(\"minute\");\n if (this.timePeriod === \"12\") {\n this.scrollSelectedItem(\"period\");\n }\n }, 0);\n }\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{\n value: Date | null;\n timeString: string | null;\n timeObject: {\n hour: string | null;\n minute: string | null;\n period?: IcTimePeriods;\n };\n }>;\n\n componentWillLoad() {\n this.setTime(this.value);\n }\n\n componentDidLoad() {\n setTimeout(() => {\n if (this.selectedHour !== undefined && this.selectedHour !== null) {\n this.scrollSelectedItem(\"hour\");\n } else if (this.min) {\n this.scrollMinTime(\"hour\");\n }\n if (this.selectedMinute !== undefined && this.selectedMinute !== null) {\n this.scrollSelectedItem(\"minute\");\n } else if (this.min) {\n this.scrollMinTime(\"minute\");\n }\n if (this.timePeriod === \"12\") {\n if (this.selectedPeriod !== undefined && this.selectedPeriod !== null) {\n this.scrollSelectedItem(\"period\");\n } else if (this.min) {\n this.scrollMinTime(\"period\");\n }\n }\n this.updateAriaLiveMessage();\n }, 0);\n }\n\n private getHeaderLabel(type: ColumnType): string {\n switch (type) {\n case \"hour\":\n return \"HH\";\n case \"minute\":\n return \"MM\";\n default:\n return \"\";\n }\n }\n\n private setTimeParts = (hour: number, minute: number) => {\n let period: IcTimePeriods = \"AM\";\n if (this.timePeriod === \"12\") {\n if (hour === 0) {\n hour = 12;\n period = \"AM\";\n } else if (hour === 12) {\n period = \"PM\";\n } else if (hour > 12) {\n hour = hour - 12;\n period = \"PM\";\n } else {\n period = \"AM\";\n }\n this.selectedHour = hour;\n this.selectedPeriod = period;\n } else {\n this.selectedHour = hour;\n }\n this.selectedMinute = minute;\n };\n\n private setTime(time?: string | Date | null) {\n if (time === null || time === undefined || time === \"\") {\n this.handleClear();\n return;\n }\n\n if (typeof time === \"string\") {\n const zuluMatch = time.match(\n /^([0-9]{2}):([0-9]{2}):([0-9]{2})(?:\\.[0-9]{1,3})?Z?$/\n );\n if (zuluMatch) {\n this.setTimeParts(Number(zuluMatch[1]), Number(zuluMatch[2]));\n } else {\n const parts = time.split(\":\");\n this.setTimeParts(Number(parts[0]) || 0, Number(parts[1]) || 0);\n }\n } else {\n const { parts } = parseTimeHelper(time);\n if (parts) {\n this.setTimeParts(parts.hour, parts.minute);\n }\n }\n }\n\n private renderScrollRows(count: number, keyPrefix = \"scroll-row\") {\n return Array.from({ length: count }).map((_, i) => {\n const isLast = keyPrefix.endsWith(\"bottom-spacer\")\n ? i === count - 1\n : false;\n return (\n <li\n class={{\n \"ic-time-selector-item\": true,\n \"ic-time-selector-scroll-row\": true,\n ...(isLast ? { \"ic-time-selector-scroll-row-last\": true } : {}),\n }}\n aria-hidden=\"true\"\n tabIndex={-1}\n key={`${keyPrefix}-${i}`}\n />\n );\n });\n }\n\n private scrollSelectedItem(colClass: ColumnType, clear?: boolean) {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n let colIdx = COLUMN_TYPES.indexOf(colClass);\n if (colClass === \"period\" && columns?.length) {\n colIdx = columns.length - 1;\n }\n const col = columns?.[colIdx];\n if (col) {\n const items = col.querySelectorAll(ITEM_CLASS);\n let selectedIdx = -1;\n items.forEach((item, idx) => {\n if (item.classList.contains(\"selected\")) selectedIdx = idx;\n });\n if (clear) {\n selectedIdx = 0;\n }\n if (selectedIdx > -1) {\n const scrollRow = col.querySelector(\n \".ic-time-selector-scroll-row\"\n ) as HTMLElement;\n let resolvedHeight = 0;\n if (scrollRow) {\n resolvedHeight = parseFloat(getComputedStyle(scrollRow).height);\n }\n const offset = resolvedHeight * 2;\n const scrollTop =\n (items[selectedIdx] as HTMLElement).offsetTop - offset;\n const prefersReducedMotion = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches;\n col.scrollTo({\n top: scrollTop,\n behavior: prefersReducedMotion ? \"instant\" : \"smooth\",\n });\n if (clear) {\n setTimeout(() => {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n if (columns && columns.length > 0) {\n this.checkIfScrollIsFinished(columns[0], scrollTop);\n }\n }, 300);\n }\n }\n }\n }\n\n private checkIfScrollIsFinished = (\n column: { scrollTop: number },\n scrollTop: number\n ) => {\n const isScrollFinished = setInterval(() => {\n if (column.scrollTop === scrollTop + 56) {\n (column as HTMLElement)?.focus();\n clearInterval(isScrollFinished);\n }\n }, 25);\n };\n\n private scrollMinTime(colClass: ColumnType) {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n const colIdx = COLUMN_TYPES.indexOf(colClass);\n const col = columns?.[colIdx];\n if (!col) return;\n const items = col.querySelectorAll(ITEM_CLASS);\n let minHour = 0,\n minMinute = 0;\n if (this.minTime) {\n minHour = this.minTime.getHours() + 2;\n minMinute = this.minTime.getMinutes() + 2;\n } else if (this.min) {\n const minDate = parseTimeHelper(this.min).date;\n if (minDate) {\n minHour = minDate.getHours();\n minMinute = minDate.getMinutes();\n }\n }\n let targetIdx = -1;\n const values = this.getColumnValues(colClass);\n if (colClass === \"hour\") {\n targetIdx = values.findIndex((v) => v === minHour);\n } else if (colClass === \"minute\") {\n targetIdx = values.findIndex((v) => v === minMinute);\n } else if (colClass === \"period\") {\n let period: IcTimePeriods = \"AM\";\n if (this.timePeriod === \"12\") {\n if (minHour === 0) {\n period = \"AM\";\n } else if (minHour === 12) {\n period = \"PM\";\n } else if (minHour > 12) {\n period = \"PM\";\n } else {\n period = \"AM\";\n }\n }\n targetIdx = values.findIndex((v) => v === period);\n }\n if (targetIdx > -1) {\n const scrollRow = col.querySelector(\n \".ic-time-selector-scroll-row\"\n ) as HTMLElement;\n let resolvedHeight = 0;\n if (scrollRow) {\n resolvedHeight = parseFloat(getComputedStyle(scrollRow).height);\n }\n const offset = resolvedHeight * 2;\n const scrollTop = (items[targetIdx] as HTMLElement).offsetTop - offset;\n const prefersReducedMotion = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches;\n col.scrollTo({\n top: scrollTop,\n behavior: prefersReducedMotion ? \"instant\" : \"smooth\",\n });\n }\n }\n\n private handleSelect = (type: ColumnType, value: number | IcTimePeriods) => {\n const prevValue = this.getSelectedValue(type);\n switch (type) {\n case \"hour\":\n this.selectedHour = Number(value);\n break;\n case \"minute\":\n this.selectedMinute = Number(value);\n break;\n case \"period\":\n this.selectedPeriod = value as IcTimePeriods;\n break;\n }\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n const idx = COLUMN_TYPES.indexOf(type);\n if (columns && columns[idx]) {\n (columns[idx] as HTMLElement).focus();\n window.requestAnimationFrame(() => {\n this.scrollSelectedItem(type);\n });\n }\n if (prevValue === undefined || prevValue === null) {\n this.announceSelectedColumn(type);\n } else {\n this.lastAnnouncedType = type;\n this.lastAnnouncedValue = this.getSelectedValue(type);\n }\n };\n\n private isTimeDisabled = (\n hour: number,\n minute: number,\n type?: ColumnType\n ): boolean => {\n for (const t of this.disableTimes) {\n if (t && typeof t === \"object\" && \"start\" in t && \"end\" in t) {\n const startParts = parseTimeHelper(t.start).parts;\n const endParts = parseTimeHelper(t.end).parts;\n if (startParts && endParts) {\n const timeVal = hour * 3600 + minute * 60;\n const startVal = startParts.hour * 3600 + startParts.minute * 60;\n const endVal = endParts.hour * 3600 + endParts.minute * 60;\n if (timeVal >= startVal && timeVal <= endVal) {\n return true;\n }\n }\n }\n }\n if (this.min) {\n this.minTime = parseTimeHelper(this.min).date;\n if (this.minTime) {\n const minHour = this.minTime.getHours();\n const minMinute = this.minTime.getMinutes();\n if (type === \"hour\") {\n const highlightedMinute = this.selectedMinute ?? minMinute;\n if (\n hour < minHour ||\n (hour === minHour && highlightedMinute < minMinute) ||\n (hour === minHour && highlightedMinute === minMinute)\n ) {\n return true;\n }\n } else if (type === \"minute\") {\n if (hour === minHour && minute < minMinute) {\n return true;\n }\n } else {\n if (\n hour < minHour ||\n (hour === minHour && minute < minMinute) ||\n (hour === minHour && minute === minMinute)\n ) {\n return true;\n }\n }\n }\n }\n if (this.max) {\n this.maxTime = parseTimeHelper(this.max).date;\n if (this.maxTime) {\n const maxHour = this.maxTime.getHours();\n const maxMinute = this.maxTime.getMinutes();\n if (type === \"hour\") {\n const selectedMinute = this.selectedMinute ?? 59;\n if (\n hour > maxHour ||\n (hour === maxHour && selectedMinute > maxMinute) ||\n (hour === maxHour && selectedMinute === maxMinute)\n ) {\n return true;\n }\n } else if (type === \"minute\") {\n if (hour === maxHour && minute > maxMinute) {\n return true;\n }\n } else {\n if (\n hour > maxHour ||\n (hour === maxHour && minute > maxMinute) ||\n (hour === maxHour && minute === maxMinute)\n ) {\n return true;\n }\n }\n }\n }\n return false;\n };\n\n private announceSelectedColumn(type: ColumnType) {\n const value = this.getSelectedValue(type);\n if (\n value !== null &&\n value !== undefined &&\n (type !== this.lastAnnouncedType || value !== this.lastAnnouncedValue)\n ) {\n this.ariaLiveMessage = `Selected ${type}: ${value}`;\n } else {\n this.ariaLiveMessage = \"\";\n }\n this.lastAnnouncedType = type;\n this.lastAnnouncedValue = value;\n }\n\n private getColumnValues(type: ColumnType): number[] | IcTimePeriods[] {\n if (type === \"hour\")\n return this.timePeriod === \"12\"\n ? Array.from({ length: 12 }, (_, i) => i + 1)\n : Array.from({ length: 24 }, (_, i) => i);\n if (type === \"minute\") return this.minutes;\n if (type === \"period\") return this.periods;\n return [];\n }\n\n private getSelectedValue(type: ColumnType): number | IcTimePeriods | null {\n if (type === \"hour\") return this.selectedHour ?? null;\n if (type === \"minute\") return this.selectedMinute ?? null;\n if (type === \"period\") return this.selectedPeriod ?? null;\n return null;\n }\n\n private getHighlightedValue(\n type: ColumnType,\n col: HTMLElement\n ): number | IcTimePeriods | null {\n const items = Array.from(col.querySelectorAll(ITEM_CLASS));\n const realItems = items.filter(\n (item) => !item.classList.contains(\"ic-time-selector-scroll-row\")\n );\n if (realItems.length === 0) return null;\n const highlightTop = this.el.shadowRoot?.querySelector(\n \".ic-time-selector-highlight-top\"\n ) as HTMLElement;\n const highlightBottom = this.el.shadowRoot?.querySelector(\n \".ic-time-selector-highlight-bottom\"\n ) as HTMLElement;\n if (!highlightTop || !highlightBottom) return null;\n const topRect = highlightTop.getBoundingClientRect();\n const bottomRect = highlightBottom.getBoundingClientRect();\n const highlightStart = topRect.bottom;\n const highlightEnd = bottomRect.top;\n for (const item of realItems) {\n const itemRect = item.getBoundingClientRect();\n const itemCenter = itemRect.top + itemRect.height / 2;\n if (itemCenter >= highlightStart && itemCenter <= highlightEnd) {\n const key = item.getAttribute(\"key\");\n if (key) {\n const valStr = key.replace(`${type}-val-`, \"\");\n if (type === \"hour\" || type === \"minute\") {\n return Number(valStr);\n } else {\n return valStr as IcTimePeriods;\n }\n }\n const text = item.textContent?.trim();\n if (type === \"hour\" || type === \"minute\") {\n return text ? Number(text) : null;\n } else {\n return text as IcTimePeriods;\n }\n }\n }\n return null;\n }\n\n private handleColumnKeyDown = (type: ColumnType, event: KeyboardEvent) => {\n const columns = this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n const idx = COLUMN_TYPES.indexOf(type);\n if (!columns) return;\n\n const values = this.getColumnValues(type);\n const selected = this.getSelectedValue(type);\n const col = columns[idx] as HTMLElement;\n if (!col) return;\n\n const selectHighlighted = () => {\n const highlighted = this.getHighlightedValue(type, col);\n if (highlighted !== null) {\n this.handleSelect(type, highlighted);\n } else if (values.length > 0) {\n this.handleSelect(type, values[0]);\n }\n };\n\n switch (event.key) {\n case \"Enter\":\n case \" \":\n event.preventDefault();\n selectHighlighted();\n return;\n case \"ArrowRight\":\n event.preventDefault();\n selectHighlighted();\n if (idx < columns.length - 1) {\n (columns[idx + 1] as HTMLElement)?.focus();\n }\n return;\n case \"ArrowLeft\":\n event.preventDefault();\n if (idx > 0) (columns[idx - 1] as HTMLElement)?.focus();\n return;\n case \"Tab\":\n if (event.shiftKey) {\n if (idx === 0) {\n return;\n } else {\n event.preventDefault();\n (columns[idx - 1] as HTMLElement)?.focus();\n }\n } else {\n event.preventDefault();\n selectHighlighted();\n this.announceSelectedColumn(type);\n if (idx < columns.length - 1) {\n (columns[idx + 1] as HTMLElement)?.focus();\n } else {\n (\n this.el.shadowRoot?.querySelector(\n \".ic-time-selector-clear-btn\"\n ) as HTMLElement\n )?.focus();\n this.updateAriaLiveMessage();\n }\n }\n return;\n case \"ArrowUp\":\n case \"ArrowDown\": {\n let idxInValues = values.findIndex((v) => v === selected);\n if (idxInValues === -1) idxInValues = 0;\n let newIdx = idxInValues;\n const direction = event.key === \"ArrowUp\" ? -1 : 1;\n const maxIdx = values.length - 1;\n do {\n newIdx += direction;\n } while (\n newIdx >= 0 &&\n newIdx <= maxIdx &&\n (() => {\n if (type === \"hour\" || type === \"minute\") {\n const hour =\n type === \"hour\"\n ? (values[newIdx] as number)\n : this.selectedHour ?? 0;\n const minute =\n type === \"minute\"\n ? (values[newIdx] as number)\n : this.selectedMinute ?? 0;\n return this.isTimeDisabled(hour, minute);\n }\n return false;\n })()\n );\n this.ariaLiveMessage = `Selected ${type}: ${values[newIdx]}`;\n if (newIdx >= 0 && newIdx <= maxIdx && newIdx !== idxInValues) {\n this.handleSelect(type, values[newIdx]);\n }\n return;\n }\n default:\n return;\n }\n };\n\n private updateAriaLiveMessage() {\n const hourStr =\n this.selectedHour != null\n ? this.selectedHour.toString().padStart(2, \"0\")\n : null;\n const minuteStr =\n this.selectedMinute != null\n ? this.selectedMinute.toString().padStart(2, \"0\")\n : null;\n let timeString = \"\";\n let allSelected = false;\n allSelected = hourStr !== null && minuteStr !== null;\n if (allSelected) {\n timeString =\n hourStr +\n \":\" +\n minuteStr +\n (this.selectedPeriod ? \" \" + this.selectedPeriod : \"\");\n }\n this.ariaLiveMessage =\n allSelected && timeString ? `Selected time: ${timeString}` : \"\";\n }\n\n private renderColumn = (\n type: ColumnType,\n values: number[] | IcTimePeriods[],\n selected: number | IcTimePeriods | null\n ) => {\n const isTimeColumn = type === \"hour\" || type === \"minute\";\n const isPeriodColumn = type === \"period\";\n const headerLabel = this.getHeaderLabel(type);\n const topSpacerCount = 2;\n let bottomSpacerCount = 6;\n if (this.size === \"large\") {\n bottomSpacerCount = 5;\n } else if (this.size === \"small\") {\n bottomSpacerCount = 8;\n }\n return (\n <div class=\"ic-time-selector-column-wrapper\">\n {isPeriodColumn ? (\n <div class=\"ic-time-selector-header-row\" />\n ) : (\n headerLabel && (\n <div class=\"ic-time-selector-header-row\">\n <ic-typography variant=\"subtitle-small\">\n {headerLabel}\n </ic-typography>\n </div>\n )\n )}\n <div\n class={{\n \"ic-time-selector-column\": true,\n \"ic-time-selector-column-period\": isPeriodColumn,\n }}\n tabIndex={0}\n onKeyDown={(e) => this.handleColumnKeyDown(type, e as KeyboardEvent)}\n >\n <ul class=\"ic-time-selector-list\" role=\"listbox\" aria-label={type}>\n {this.renderScrollRows(topSpacerCount, `${type}-top-spacer`)}\n {values.map((val) => {\n let disabled = false;\n if (isTimeColumn) {\n const hour =\n type === \"hour\" ? (val as number) : this.selectedHour ?? 0;\n const minute =\n type === \"minute\"\n ? (val as number)\n : this.selectedMinute ?? 0;\n disabled = this.isTimeDisabled(hour, minute, type);\n }\n return (\n <li\n class={{\n \"ic-time-selector-item\": true,\n selected: val === selected,\n disabled,\n }}\n role=\"option\"\n aria-selected={val === selected ? \"true\" : \"false\"}\n aria-disabled={disabled ? \"true\" : \"false\"}\n onClick={() =>\n !disabled && this.handleSelect(type, val as any)\n }\n tabIndex={-1}\n key={`${type}-val-${val}`}\n >\n <ic-typography variant=\"subtitle-small\">\n {typeof val === \"number\"\n ? val.toString().padStart(2, \"0\")\n : val}\n </ic-typography>\n </li>\n );\n })}\n {(isTimeColumn || isPeriodColumn) &&\n this.renderScrollRows(bottomSpacerCount, `${type}-bottom-spacer`)}\n </ul>\n </div>\n </div>\n );\n };\n\n private handleClear = () => {\n this.selectedHour = undefined;\n this.scrollSelectedItem(\"hour\", true);\n this.selectedMinute = undefined;\n this.scrollSelectedItem(\"minute\", true);\n this.selectedPeriod = undefined;\n this.scrollSelectedItem(\"period\", true);\n this.lastAnnouncedType = undefined;\n this.lastAnnouncedValue = undefined;\n this.icChange.emit({\n value: null,\n timeString: null,\n timeObject: {\n hour: null,\n minute: null,\n period: undefined,\n },\n });\n };\n\n private handleConfirmClick = () => {\n const hour = this.selectedHour != null ? this.selectedHour : null;\n const minute = this.selectedMinute != null ? this.selectedMinute : null;\n const period = this.selectedPeriod;\n\n const hourStr = hour != null ? hour.toString().padStart(2, \"0\") : null;\n const minuteStr =\n minute != null ? minute.toString().padStart(2, \"0\") : null;\n\n let allSelected = false;\n allSelected = hour !== null && minute !== null;\n\n let value: Date | null = null;\n let timeString: string | null = null;\n if (allSelected) {\n let date24hours = hour;\n if (hour != null && period && this.timePeriod === \"12\") {\n if (period === \"PM\" && hour < 12) date24hours = hour + 12;\n if (period === \"AM\" && hour === 12) date24hours = 0;\n }\n value = new Date();\n value.setHours(date24hours ?? 0);\n value.setMinutes(minute ?? 0);\n timeString = hourStr + \":\" + minuteStr + (period ? \" \" + period : \"\");\n this.value = value;\n }\n\n this.icChange.emit({\n value: allSelected ? value : null,\n timeString: allSelected ? timeString : null,\n timeObject: {\n hour: hourStr,\n minute: minuteStr,\n ...(period ? { period } : {}),\n },\n });\n };\n\n render() {\n const hours =\n this.timePeriod === \"12\"\n ? Array.from({ length: 12 }, (_, i) => i + 1)\n : Array.from({ length: 24 }, (_, i) => i);\n const columns = [\n this.renderColumn(\"hour\", hours, this.selectedHour ?? null),\n this.renderColumn(\"minute\", this.minutes, this.selectedMinute ?? null),\n ];\n\n let colonSelectedStates: boolean[] = [];\n colonSelectedStates = [\n this.selectedHour !== undefined && this.selectedMinute !== undefined,\n ];\n\n const isInPicker = this.el.closest(\"ic-time-picker\") !== null;\n\n const { size, theme, timePeriod } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-time-selector-${size}`]: true,\n }}\n >\n <div\n role={isInPicker ? \"dialog\" : undefined}\n aria-modal={isInPicker ? true : undefined}\n aria-label=\"Select time. Use arrow keys to navigate and select the options and then tab to move onto the next selection.\"\n class={{\n \"ic-time-selector-dialog-container\": true,\n }}\n >\n <div class=\"ic-time-selector-highlight-lines\">\n <div class=\"ic-time-selector-header-border\" />\n <div\n class={{\n \"ic-time-selector-highlight\": true,\n \"ic-time-selector-highlight-top\": true,\n }}\n />\n <div class=\"ic-time-selector-columns\">\n {columns.map((col, idx) => [\n col,\n idx < columns.length - 1 ? (\n <ic-typography\n class={{\n \"ic-time-selector-colon\": true,\n \"ic-time-selector-colon-selected\":\n colonSelectedStates[idx],\n }}\n variant=\"subtitle-small\"\n aria-hidden=\"true\"\n key={`colon-${idx}`}\n >\n :\n </ic-typography>\n ) : null,\n ])}\n {timePeriod !== \"24\" &&\n this.renderColumn(\n \"period\",\n this.periods,\n this.selectedPeriod ?? null\n )}\n </div>\n <div\n class={{\n \"ic-time-selector-highlight\": true,\n \"ic-time-selector-highlight-bottom\": true,\n }}\n />\n </div>\n <div class=\"ic-time-selector-actions\">\n <ic-button\n variant=\"icon-tertiary\"\n aria-label=\"Clear time\"\n class={{\n \"ic-time-selector-clear-btn\": true,\n }}\n onClick={this.handleClear}\n disabled={\n this.selectedHour === undefined &&\n this.selectedMinute === undefined &&\n this.selectedPeriod === undefined\n }\n size={size}\n tabIndex={0}\n onKeyDown={(e: KeyboardEvent) => {\n if (e.key === \"Tab\" && e.shiftKey) {\n e.preventDefault();\n const columns =\n this.el.shadowRoot?.querySelectorAll(COLUMN_CLASS);\n if (columns && columns.length > 0) {\n const lastCol = columns[columns.length - 1] as HTMLElement;\n lastCol?.focus();\n }\n }\n }}\n >\n <span aria-hidden=\"true\" innerHTML={Clear}></span>\n </ic-button>\n <ic-button\n variant=\"icon-tertiary\"\n aria-label=\"Select time\"\n class=\"ic-time-selector-check-btn\"\n onClick={this.handleConfirmClick}\n disabled={\n this.selectedHour === undefined &&\n this.selectedMinute === undefined &&\n this.selectedPeriod === undefined\n }\n size={size}\n tabIndex={0}\n >\n <span aria-hidden=\"true\" innerHTML={Check}></span>\n </ic-button>\n </div>\n </div>\n <div class=\"sr-only\" aria-live=\"polite\">\n {this.ariaLiveMessage}\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
2
2
|
import { html } from "lit-html";
|
|
3
3
|
import readme from "./readme.md";
|
|
4
|
+
const INLINE_RADIO = "inline-radio";
|
|
4
5
|
export default {
|
|
5
6
|
title: "Web Components/Time Selector",
|
|
6
7
|
component: "ic-time-selector",
|
|
@@ -61,7 +62,7 @@ export const DateObject = {
|
|
|
61
62
|
var timeSelectorDate = document.querySelector(
|
|
62
63
|
"#time-selector-default-time-date"
|
|
63
64
|
);
|
|
64
|
-
timeSelectorDate.value = new Date("2025-07-14T15:30
|
|
65
|
+
timeSelectorDate.value = new Date("2025-07-14T15:30");
|
|
65
66
|
</script>`,
|
|
66
67
|
name: "Date object",
|
|
67
68
|
};
|
|
@@ -101,35 +102,21 @@ export const DefaultValue12Hour = {
|
|
|
101
102
|
></ic-time-selector>`,
|
|
102
103
|
name: "Default value - 12 hour",
|
|
103
104
|
};
|
|
104
|
-
/**
|
|
105
|
-
* Demonstrates the time format HH:MM.
|
|
106
|
-
*/
|
|
107
|
-
export const TimeFormat = {
|
|
108
|
-
render: () => html `<ic-time-selector time-format="HH:MM"></ic-time-selector>`,
|
|
109
|
-
name: "Time format HH:MM",
|
|
110
|
-
};
|
|
111
|
-
export const DefaultValueTimeFormat = {
|
|
112
|
-
render: () => html `<ic-time-selector
|
|
113
|
-
value="14:30"
|
|
114
|
-
time-format="HH:MM"
|
|
115
|
-
></ic-time-selector>`,
|
|
116
|
-
name: "Default value - Time format HH:MM",
|
|
117
|
-
};
|
|
118
105
|
/**
|
|
119
106
|
* Setting min time allows you to restrict the earliest time that can be selected.
|
|
120
107
|
* The value can be in any format supported as `time-format`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.
|
|
121
108
|
*/
|
|
122
109
|
export const MinTime = {
|
|
123
|
-
render: () => html `<ic-time-selector min="09:30
|
|
124
|
-
name: "Min time",
|
|
110
|
+
render: () => html `<ic-time-selector min="09:30"></ic-time-selector>`,
|
|
111
|
+
name: "Min time (09:30)",
|
|
125
112
|
};
|
|
126
113
|
/**
|
|
127
114
|
* Setting max time allows you to restrict the latest time that can be selected.
|
|
128
115
|
* The value can be in any format supported as `time-format`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.
|
|
129
116
|
*/
|
|
130
117
|
export const MaxTime = {
|
|
131
|
-
render: () => html `<ic-time-selector max="18:00
|
|
132
|
-
name: "Max time",
|
|
118
|
+
render: () => html `<ic-time-selector max="18:00"></ic-time-selector>`,
|
|
119
|
+
name: "Max time (18:00)",
|
|
133
120
|
};
|
|
134
121
|
/**
|
|
135
122
|
* To disable specific times in the time selector, set the `disable-times` prop.
|
|
@@ -145,12 +132,9 @@ export const DisableTimes = {
|
|
|
145
132
|
var timeSelectorDisable = document.querySelector(
|
|
146
133
|
"#time-selector-default-disable-time"
|
|
147
134
|
);
|
|
148
|
-
timeSelectorDisable.disableTimes = [
|
|
149
|
-
{ start: "08:00", end: "10:00" },
|
|
150
|
-
"13:20",
|
|
151
|
-
];
|
|
135
|
+
timeSelectorDisable.disableTimes = [{ start: "08:00", end: "10:00" }];
|
|
152
136
|
</script>`,
|
|
153
|
-
name: "Disabled times",
|
|
137
|
+
name: "Disabled times (08:00-10:00)",
|
|
154
138
|
};
|
|
155
139
|
/**
|
|
156
140
|
* Demonstrates the size options for the time selector component.
|
|
@@ -163,4 +147,46 @@ export const Large = {
|
|
|
163
147
|
render: () => html `<ic-time-selector size="large" time-period="12"></ic-time-selector>`,
|
|
164
148
|
name: "Large",
|
|
165
149
|
};
|
|
150
|
+
const defaultArgs = {
|
|
151
|
+
disableTimes: [{ start: "08:00", end: "10:00" }],
|
|
152
|
+
max: "",
|
|
153
|
+
min: "",
|
|
154
|
+
size: "medium",
|
|
155
|
+
theme: "inherit",
|
|
156
|
+
timePeriod: "24",
|
|
157
|
+
value: "12:00",
|
|
158
|
+
};
|
|
159
|
+
export const Playground = {
|
|
160
|
+
render: (args) => html `<ic-time-selector
|
|
161
|
+
disable-times=${args.disableTimes}
|
|
162
|
+
max=${args.max}
|
|
163
|
+
min=${args.min}
|
|
164
|
+
size=${args.size}
|
|
165
|
+
theme=${args.theme}
|
|
166
|
+
time-period=${args.timePeriod}
|
|
167
|
+
value=${args.value}
|
|
168
|
+
/>`,
|
|
169
|
+
args: defaultArgs,
|
|
170
|
+
argTypes: {
|
|
171
|
+
size: {
|
|
172
|
+
options: ["small", "medium", "large"],
|
|
173
|
+
control: {
|
|
174
|
+
type: INLINE_RADIO,
|
|
175
|
+
},
|
|
176
|
+
},
|
|
177
|
+
theme: {
|
|
178
|
+
options: ["inherit", "light", "dark"],
|
|
179
|
+
control: {
|
|
180
|
+
type: INLINE_RADIO,
|
|
181
|
+
},
|
|
182
|
+
},
|
|
183
|
+
timePeriod: {
|
|
184
|
+
options: ["24", "12"],
|
|
185
|
+
control: {
|
|
186
|
+
type: INLINE_RADIO,
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
name: "Playground",
|
|
191
|
+
};
|
|
166
192
|
//# sourceMappingURL=ic-time-selector.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ic-time-selector.stories.js","sourceRoot":"","sources":["../../../../../src/components/ic-time-selector/ic-time-selector.stories.js"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,eAAe;IACb,KAAK,EAAE,8BAA8B;IACrC,SAAS,EAAE,kBAAkB;IAC7B,UAAU,EAAE;QACV,YAAY,EAAE;YACZ,IAAI,EAAE,MAAM;SACb;KACF;CACF,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA,uCAAuC;IACzD,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;cAMN;IACZ,IAAI,EAAE,gBAAgB;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA,wDAAwD;IAC1E,IAAI,EAAE,YAAY;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;;;cAQN;IACZ,IAAI,EAAE,aAAa;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;;;cAQN;IACZ,IAAI,EAAE,WAAW;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA,wDAAwD;IAC1E,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;cAMN;IACZ,IAAI,EAAE,mCAAmC;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,GAAG,EAAE,CACX,IAAI,CAAA;;;yBAGiB;IACvB,IAAI,EAAE,yBAAyB;CAChC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"ic-time-selector.stories.js","sourceRoot":"","sources":["../../../../../src/components/ic-time-selector/ic-time-selector.stories.js"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\nimport { html } from \"lit-html\";\nimport readme from \"./readme.md\";\n\nconst INLINE_RADIO = \"inline-radio\";\n\nexport default {\n title: \"Web Components/Time Selector\",\n component: \"ic-time-selector\",\n parameters: {\n componentAPI: {\n data: readme,\n },\n },\n};\n\n/**\n * Use the time selector component to manually select a time in different formats.\n *\n * Click the 'Component API' tab to view all the available attributes, events and slots for time selector.\n *\n * To use the time selector component, import `@ukic/canary-web-components` into your application.\n *\n * Times can be selected by scrolling through each column or using the up and down arrow keys.\n *\n * To move between hour, minute and second using the keyboard, provide the required values based on the placeholders or use `:`.\n *\n */\nexport const Default = {\n render: () => html`<ic-time-selector></ic-time-selector>`,\n name: \"Default\",\n};\n\n/**\n * Retrieving the time selector value via `icChange` returns the time as a Date object.\n *\n * The event returns the Date object once hour, minute and second have been selected by clicking the tick icon button.\n */\nexport const IcChangeEvent = {\n render: () => html`<ic-time-selector></ic-time-selector>\n <script>\n var timeSelector = document.querySelector(\"ic-time-selector\");\n timeSelector.addEventListener(\"icChange\", (event) => {\n console.log(\"icChange event detail:\", event.detail);\n });\n </script>`,\n name: \"icChange Event\",\n};\n\n/**\n * To set a value to the time selector, pass the time value in the relevant time format.\n */\nexport const WithValue = {\n render: () => html`<ic-time-selector value=\"14:30:40\"></ic-time-selector>`,\n name: \"With value\",\n};\n\n/**\n * The time selector also accepts a number of different time formats within the value attribute:\n * - [Date object](#date-object)\n * - [Zulu time](#zulu-time)\n */\nexport const DateObject = {\n render: () => html`<ic-time-selector\n id=\"time-selector-default-time-date\"\n ></ic-time-selector>\n <script>\n var timeSelectorDate = document.querySelector(\n \"#time-selector-default-time-date\"\n );\n timeSelectorDate.value = new Date(\"2025-07-14T15:30\");\n </script>`,\n name: \"Date object\",\n};\n\nexport const ZuluTime = {\n render: () => html`<div>\n <ic-time-selector id=\"time-selector-default-zulu-time\"></ic-time-selector>\n </div>\n <script>\n var timeSelectorZulu = document.querySelector(\n \"#time-selector-default-zulu-time\"\n );\n timeSelectorZulu.value = \"15:30:45Z\";\n </script>`,\n name: \"Zulu time\",\n};\n\n/**\n * Demonstrates the `time-period` prop for 12-hour selection.\n */\nexport const TimePeriod = {\n render: () => html`<ic-time-selector time-period=\"12\"></ic-time-selector>`,\n name: \"12-Hour\",\n};\n\nexport const IcChangeEventTimePeriod = {\n render: () => html`<ic-time-selector time-period=\"12\"></ic-time-selector>\n <script>\n var icTimeSelector = document.querySelector(\"ic-time-selector\");\n icTimeSelector.addEventListener(\"icChange\", (event) => {\n console.log(\"icChange event detail:\", event.detail);\n });\n </script>`,\n name: \"icChange Event - with time period\",\n};\n\nexport const DefaultValue12Hour = {\n render: () =>\n html`<ic-time-selector\n value=\"14:30:40\"\n time-period=\"12\"\n ></ic-time-selector>`,\n name: \"Default value - 12 hour\",\n};\n\n/**\n * Setting min time allows you to restrict the earliest time that can be selected.\n * The value can be in any format supported as `time-format`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\nexport const MinTime = {\n render: () => html`<ic-time-selector min=\"09:30\"></ic-time-selector>`,\n name: \"Min time (09:30)\",\n};\n\n/**\n * Setting max time allows you to restrict the latest time that can be selected.\n * The value can be in any format supported as `time-format`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\nexport const MaxTime = {\n render: () => html`<ic-time-selector max=\"18:00\"></ic-time-selector>`,\n name: \"Max time (18:00)\",\n};\n\n/**\n * To disable specific times in the time selector, set the `disable-times` prop.\n * The `disable-times` prop accepts an array of time objects or strings.\n * Each time object can have a `start` and `end` property to define a range of disabled times, or it can be a single time string to disable that specific time.\n * The time can be in any format supported as `time-format`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\nexport const DisableTimes = {\n render: () => html`<ic-time-selector\n id=\"time-selector-default-disable-time\"\n ></ic-time-selector>\n <script>\n var timeSelectorDisable = document.querySelector(\n \"#time-selector-default-disable-time\"\n );\n timeSelectorDisable.disableTimes = [{ start: \"08:00\", end: \"10:00\" }];\n </script>`,\n name: \"Disabled times (08:00-10:00)\",\n};\n\n/**\n * Demonstrates the size options for the time selector component.\n */\nexport const Small = {\n render: () =>\n html`<ic-time-selector size=\"small\" time-period=\"12\"></ic-time-selector>`,\n name: \"Small\",\n};\n\nexport const Large = {\n render: () =>\n html`<ic-time-selector size=\"large\" time-period=\"12\"></ic-time-selector>`,\n name: \"Large\",\n};\n\nconst defaultArgs = {\n disableTimes: [{ start: \"08:00\", end: \"10:00\" }],\n max: \"\",\n min: \"\",\n size: \"medium\",\n theme: \"inherit\",\n timePeriod: \"24\",\n value: \"12:00\",\n};\n\nexport const Playground = {\n render: (args) =>\n html`<ic-time-selector\n disable-times=${args.disableTimes}\n max=${args.max}\n min=${args.min}\n size=${args.size}\n theme=${args.theme}\n time-period=${args.timePeriod}\n value=${args.value}\n />`,\n args: defaultArgs,\n argTypes: {\n size: {\n options: [\"small\", \"medium\", \"large\"],\n control: {\n type: INLINE_RADIO,\n },\n },\n theme: {\n options: [\"inherit\", \"light\", \"dark\"],\n control: {\n type: INLINE_RADIO,\n },\n },\n timePeriod: {\n options: [\"24\", \"12\"],\n control: {\n type: INLINE_RADIO,\n },\n },\n },\n name: \"Playground\",\n};\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { h, Host, } from "@stencil/core";
|
|
2
2
|
import { isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, renderDynamicChildSlots, } from "../../utils/helpers";
|
|
3
3
|
import arrowDropdown from "../../assets/arrow-dropdown.svg";
|
|
4
|
+
import "../../../../web-components/src/components/ic-typography/ic-typography";
|
|
4
5
|
let treeItemIds = 0;
|
|
5
6
|
/**
|
|
6
7
|
* @slot label - Content is set as the tree item label.
|
|
@@ -274,7 +275,6 @@ export class TreeItem {
|
|
|
274
275
|
return !!this.routerSlot;
|
|
275
276
|
}
|
|
276
277
|
render() {
|
|
277
|
-
var _a;
|
|
278
278
|
const { disabled, label, selected, size, expanded, theme } = this;
|
|
279
279
|
const Component = this.href && !this.disabled ? "a" : "div";
|
|
280
280
|
const attrs = Component == "a" && {
|
|
@@ -284,18 +284,18 @@ export class TreeItem {
|
|
|
284
284
|
rel: this.rel,
|
|
285
285
|
target: this.target,
|
|
286
286
|
};
|
|
287
|
-
return (h(Host, { key: '
|
|
287
|
+
return (h(Host, { key: '66e67104592a4988244326321173efcefb090663', class: {
|
|
288
288
|
"ic-tree-item-disabled": disabled,
|
|
289
289
|
"ic-tree-item-selected": !disabled && selected,
|
|
290
290
|
[`ic-tree-item-${size}`]: size !== "medium",
|
|
291
291
|
[`ic-theme-${theme}`]: theme !== "inherit",
|
|
292
292
|
"ic-tree-item-truncate": !!this.truncateTreeItem,
|
|
293
|
-
}, id:
|
|
293
|
+
}, id: this.el.id || this.treeItemId || `ic-tree-item-${treeItemIds++}` }, this.hasRouterSlot() ? (h("slot", { name: "router-item" })) : (h(Component, Object.assign({ class: {
|
|
294
294
|
"tree-item-content": true,
|
|
295
295
|
}, tabIndex: disabled ? -1 : 0, onClick: this.handleTreeItemClicked, ref: (el) => (this.treeItemElement = el), "aria-disabled": disabled ? "true" : "false", "aria-live": "polite" }, attrs, { onFocus: () => this.handleDisplayTooltip(true), onBlur: () => this.handleDisplayTooltip(false) }), this.isParent && (h("span", { class: {
|
|
296
296
|
["arrow-dropdown"]: true,
|
|
297
297
|
["tree-item-expanded"]: expanded,
|
|
298
|
-
}, "aria-hidden": "true", innerHTML: arrowDropdown })), isSlotUsed(this.el, "icon") && (h("div", { class: "icon-container" }, h("slot", { name: "icon" }))), h("ic-typography", { class: "tree-item-label" }, isSlotUsed(this.el, "label") ? h("slot", { name: "label" }) : label))), expanded && (h("div", { key: '
|
|
298
|
+
}, "aria-hidden": "true", innerHTML: arrowDropdown })), isSlotUsed(this.el, "icon") && (h("div", { class: "icon-container" }, h("slot", { name: "icon" }))), h("ic-typography", { class: "tree-item-label" }, isSlotUsed(this.el, "label") ? h("slot", { name: "label" }) : label))), expanded && (h("div", { key: 'fba469d4e6a946342ca0d4d06586d7c980cbc626', "aria-hidden": `${!expanded}` }, h("slot", { key: '35333b341de02fd4ee02b6780125b74c35fc94ba' })))));
|
|
299
299
|
}
|
|
300
300
|
static get is() { return "ic-tree-item"; }
|
|
301
301
|
static get encapsulation() { return "shadow"; }
|