@ukic/canary-web-components 3.0.0-canary.34 → 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/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 -887
- 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 -228
- 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 +16 -6
- package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-time-selector.cjs.entry.js +11 -8
- 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 +18 -6
- package/dist/collection/components/ic-time-input/ic-time-input.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 +10 -8
- package/dist/collection/components/ic-time-selector/ic-time-selector.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/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/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 +3 -3
- 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 -4
- 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 +5 -5
- 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 +10 -21
- 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 +15 -11
- package/dist/components/ic-time-input.js.map +1 -1
- package/dist/components/ic-time-selector.js +9 -9
- 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-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/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 -888
- 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 -228
- 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 +16 -6
- package/dist/esm/ic-time-input.entry.js.map +1 -1
- package/dist/esm/ic-time-selector.entry.js +11 -8
- 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 +9 -0
- package/dist/types/components/ic-time-selector/ic-time-selector.d.ts +2 -0
- 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 +3968 -826
- 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/hydrate/index.js +10692 -18156
- package/hydrate/index.mjs +10692 -18156
- 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 -140
- 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 -148
- 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 -62
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-step.cjs.entry.js +0 -157
- package/dist/cjs/ic-step.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +0 -308
- 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 -192
- 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 -198
- 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 -81
- package/dist/components/ic-skeleton.js.map +0 -1
- package/dist/components/ic-step.js +0 -200
- package/dist/components/ic-step.js.map +0 -1
- package/dist/components/ic-stepper.js +0 -340
- 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-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-0bca234b.entry.js +0 -2
- package/dist/core/p-0bca234b.entry.js.map +0 -1
- 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-1be17f22.entry.js +0 -2
- package/dist/core/p-1be17f22.entry.js.map +0 -1
- 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-1dbefb37.entry.js +0 -2
- package/dist/core/p-1dbefb37.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-409d03b2.entry.js +0 -2
- package/dist/core/p-409d03b2.entry.js.map +0 -1
- package/dist/core/p-492991ad.entry.js +0 -2
- package/dist/core/p-492991ad.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-53dad961.entry.js +0 -2
- package/dist/core/p-53dad961.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-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-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-7c4d6b13.entry.js +0 -2
- package/dist/core/p-7c4d6b13.entry.js.map +0 -1
- package/dist/core/p-7d878ad7.entry.js +0 -2
- package/dist/core/p-7d878ad7.entry.js.map +0 -1
- package/dist/core/p-7efdbab8.entry.js.map +0 -1
- package/dist/core/p-879c180d.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-8d42a6e5.entry.js +0 -2
- package/dist/core/p-8d42a6e5.entry.js.map +0 -1
- package/dist/core/p-939025af.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-a58cf6fd.entry.js +0 -2
- package/dist/core/p-a58cf6fd.entry.js.map +0 -1
- package/dist/core/p-a8310dfd.entry.js +0 -2
- package/dist/core/p-a8310dfd.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-b4a2f6fa.entry.js +0 -2
- package/dist/core/p-b4a2f6fa.entry.js.map +0 -1
- package/dist/core/p-b76fdade.entry.js +0 -2
- package/dist/core/p-b76fdade.entry.js.map +0 -1
- package/dist/core/p-b9459ba2.entry.js +0 -2
- package/dist/core/p-b9459ba2.entry.js.map +0 -1
- package/dist/core/p-bb3db366.entry.js +0 -2
- package/dist/core/p-bb3db366.entry.js.map +0 -1
- package/dist/core/p-bc6e5d64.entry.js +0 -2
- package/dist/core/p-bc6e5d64.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-c4b2774d.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-d376858f.entry.js +0 -2
- package/dist/core/p-d376858f.entry.js.map +0 -1
- package/dist/core/p-dbd9a403.entry.js +0 -2
- package/dist/core/p-dbd9a403.entry.js.map +0 -1
- package/dist/core/p-df064c8b.entry.js +0 -2
- package/dist/core/p-df064c8b.entry.js.map +0 -1
- package/dist/core/p-e081702e.js +0 -2
- 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-eac60693.entry.js +0 -2
- package/dist/core/p-eac60693.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 -136
- 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 -144
- 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 -58
- package/dist/esm/ic-skeleton.entry.js.map +0 -1
- package/dist/esm/ic-step.entry.js +0 -153
- package/dist/esm/ic-step.entry.js.map +0 -1
- package/dist/esm/ic-stepper.entry.js +0 -304
- package/dist/esm/ic-stepper.entry.js.map +0 -1
- package/dist/esm/ic-switch.entry.js +0 -120
- package/dist/esm/ic-switch.entry.js.map +0 -1
- package/dist/esm/ic-tab-context.entry.js +0 -246
- package/dist/esm/ic-tab-context.entry.js.map +0 -1
- package/dist/esm/ic-tab-group.entry.js +0 -36
- package/dist/esm/ic-tab-group.entry.js.map +0 -1
- package/dist/esm/ic-tab-panel.entry.js +0 -38
- package/dist/esm/ic-tab-panel.entry.js.map +0 -1
- package/dist/esm/ic-tab.entry.js +0 -108
- package/dist/esm/ic-tab.entry.js.map +0 -1
- package/dist/esm/ic-toast-region.entry.js +0 -55
- package/dist/esm/ic-toast-region.entry.js.map +0 -1
- package/dist/esm/ic-toast.entry.js +0 -235
- package/dist/esm/ic-toast.entry.js.map +0 -1
- package/dist/esm/purify-6eaa9893.js.map +0 -1
- /package/dist/core/{p-0aa9ce8b.js.map → p-02d0a238.entry.js.map} +0 -0
- /package/dist/core/{p-170ddfc2.js.map → p-0c02b16c.entry.js.map} +0 -0
- /package/dist/core/{p-201b41c7.entry.js.map → p-22267c01.entry.js.map} +0 -0
- /package/dist/core/{p-e081702e.js.map → p-27962d4d.entry.js.map} +0 -0
- /package/dist/core/{p-ea1ea1b9.js.map → p-384a7f60.entry.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ItemHook","setItemLevelOffset","variant","parseInt","split","ItemComponent","itemProps","id","className","label","target","selected","truncate","position","size","updateSelected","h","onClick","class","href","bold","style","paddingLeft","TableOfContentsItem","props","innerProps","Object","assign","icTableOfContentsCss","IcTableOfContentsStyle0","TOC_CONTENT_CLASS","TOC_LIST_ITEMS_CLASS","TOC_ITEM_CLASS","TOC_CONTAINER_CLASS","TableOfContents","constructor","hostRef","this","heading","maximumHeadingLevel","monochrome","setScrollHeight","theme","focusedElement","referenceElements","currentTargetHeights","headerHeight","initialPosition","suppressListener","createTocItem","tocHeading","children","tocId","tocItem","tagName","toLowerCase","textLabel","updateOnSelection","trueIndex","wrappedToc","innerHTML","renderTocTree","listItem","results","treeChildren","length","map","i","sidebarTranslation","truncateText","links","_a","el","shadowRoot","querySelectorAll","contentList","_b","querySelector","forEach","item","addTooltip","DEVICE_SIZES","S","suppressListenerHandler","window","scrollTo","scrollY","generateHeadingTree","resultArray","headingDepth","slice","join","headingList","headingArray","Array","from","index","push","rank","textContent","trimStart","currentRank","reverse","setAttribute","replace","unshift","containerPosition","container","flexDirection","newPosition","sidebar","itemHeights","previousItemsHeight","_c","offsetHeight","transform","height","findElementsHeights","contentBounds","element","getBoundingClientRect","top","handleResizeBounds","innerWidth","XL","updateSelectedItemFromScroll","targetHeight","innerHeight","previousItems","closestItem","reduce","newValue","curr","Math","abs","relevantItems","findHeaderElement","document","clientHeight","header","addListMargin","content","setProperty","widthBreakpoint","itemLabel","parentNode","tooltip","offsetWidth","scrollWidth","tooltipPosition","componentWillLoad","resizeObserver","ResizeObserver","observe","componentDidRender","addEventListener","componentDidLoad","render","Host","key","aligned","role"],"sources":["src/components/ic-table-of-contents/ic-table-of-contents-item.tsx","src/components/ic-table-of-contents/ic-table-of-contents.css?tag=ic-table-of-contents&encapsulation=shadow","src/components/ic-table-of-contents/ic-table-of-contents.tsx"],"sourcesContent":["import { FunctionalComponent, h } from \"@stencil/core\";\nimport \"../../../../web-components/src/components/ic-typography/ic-typography\";\n\ninterface IcTableOfContentsItemElement {\n id: string;\n className: string;\n label: string;\n target: string;\n variant: string;\n selected: number;\n position: number;\n size?: string;\n truncate?: boolean;\n updateSelected: (position: number) => void;\n setItemLevelOffset: (variant: string) => string;\n}\n\ninterface TOCItemProps {\n id: string;\n className: string;\n variant: string;\n label: string;\n target: string;\n selected: number;\n position: number;\n size?: string;\n truncate?: boolean;\n updateSelected: (position: number) => void;\n}\n\nconst ItemHook = () => {\n // adds offset to the item based on its variant\n // e.g. h2 = 4 + (8*(2-2)) = 4px\n // h3 = 4 + (8*(3-2)) = 12px\n const setItemLevelOffset = (variant: string): string => {\n return `${4 + 8 * (parseInt(variant.split(\"\")[1]) - 2)}px`;\n };\n\n return { setItemLevelOffset };\n};\n\nconst ItemComponent: FunctionalComponent<IcTableOfContentsItemElement> = (\n itemProps\n) => {\n const {\n id,\n className,\n label,\n target,\n selected,\n truncate,\n variant,\n position,\n size,\n updateSelected,\n setItemLevelOffset,\n } = itemProps;\n\n return (\n <a\n id={id}\n onClick={() => updateSelected(position)}\n class={`${selected && \"table-of-contents-item-content-selected\"}\n ${\n size === \"large\"\n ? `table-of-contents-item-content-large`\n : `table-of-contents-item-content-default`\n }\n ${className}\n `}\n href={`#${target}`}\n >\n <ic-typography\n id={`${id}-label`}\n bold={selected === position}\n class={`${truncate && \"truncated-item-text\"} ${\n size && `table-of-contents-item-content-${size}`\n }\n table-of-contents-item-label\n `}\n style={{\n paddingLeft: setItemLevelOffset(variant),\n }}\n >\n {label}\n </ic-typography>\n </a>\n );\n};\n\nexport const TableOfContentsItem = (props: TOCItemProps) => {\n const innerProps = ItemHook();\n return <ItemComponent {...props} {...innerProps} />;\n};\n",":host {\n display: block;\n border: none;\n max-height: 100vh;\n}\n\n.table-of-contents-section-container {\n display: flex;\n}\n\n.table-of-contents-content {\n top: 0;\n left: 0;\n padding: 0 var(--ic-space-md);\n font: var(--ic-color-text-primary);\n max-height: 100vh;\n z-index: 1;\n}\n\n:host .table-of-contents-position-top {\n min-width: 10rem;\n max-width: 50rem;\n}\n\n:host .table-of-contents-position-side {\n min-width: 8rem;\n max-width: 20rem;\n width: 20rem;\n position: sticky;\n}\n\n.table-of-contents-list {\n display: flex;\n flex-direction: row;\n max-width: inherit;\n}\n\n:host ol {\n list-style: none;\n margin-block-start: 0;\n padding-inline-start: 0;\n}\n\n.table-of-contents-list-items {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n.table-of-contents-sidebar {\n background-color: var(--ic-table-of-contents-banner);\n height: 1.75rem;\n min-width: 0.25rem;\n}\n\n.table-of-contents-sidebar-monochrome {\n background-color: var(--ic-table-of-contents-banner-monochrome);\n}\n\n.table-of-contents-item {\n min-height: 1.5rem;\n line-height: 1.5rem;\n}\n\n.table-of-contents-item-content:hover {\n background-color: var(--ic-table-of-contents-hover);\n}\n\n.table-of-contents-item-monochrome-content:hover {\n background-color: var(--ic-table-of-contents-hover-monochrome);\n}\n\n.table-of-contents-item-content {\n border: none;\n max-width: inherit;\n display: flex;\n align-items: center;\n text-decoration: none;\n position: relative;\n color: var(--ic-table-of-contents-text);\n min-height: 1.5rem;\n\n --ic-typography-color: var(--ic-table-of-contents-text);\n}\n\n.table-of-contents-item-content-default {\n padding-top: var(--ic-space-xxxs);\n padding-bottom: var(--ic-space-xxxs);\n}\n\n.table-of-contents-item-content:focus {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n background-color: var(--ic-table-of-contents-hover);\n}\n\n.table-of-contents-item-content:active {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n background-color: var(--ic-table-of-contents-pressed);\n}\n\n.truncated-item-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* Large styles */\n\n.table-of-contents-item-content-large {\n padding-top: var(--ic-space-xxs);\n padding-bottom: var(--ic-space-xxs);\n}\n\n.table-of-contents-sidebar.large {\n height: 2.5rem;\n}\n\n.table-of-contents-heading.large {\n padding-bottom: var(--ic-space-xs);\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .table-of-contents-sidebar {\n transition: all 0.3s ease;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n /* limit sidebar scroll animation */\n .table-of-contents-sidebar {\n transition: none;\n }\n}\n\n@media (forced-colors: active) {\n .table-of-contents-sidebar {\n background-color: Highlight;\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\nimport { IcPositionTopOrRight, IcSizes, IcThemeMode } from \"../../utils/types\";\nimport { TableOfContentsItem } from \"./ic-table-of-contents-item\";\nimport { DEVICE_SIZES } from \"../../utils/helpers\";\n\nimport \"../../../../web-components/src/components/ic-tooltip/ic-tooltip\";\nimport \"../../../../web-components/src/components/ic-section-container/ic-section-container\";\nimport \"../../../../web-components/src/components/ic-typography/ic-typography\";\nimport \"../../../../web-components/src/components/ic-top-navigation/ic-top-navigation\";\nimport \"../../../../web-components/src/components/ic-navigation-item/ic-navigation-item\";\nimport \"../../../../web-components/src/components/ic-page-header/ic-page-header\";\nimport \"../../../../web-components/src/components/ic-button/ic-button\";\nimport \"../../../../web-components/src/components/ic-link/ic-link\";\nimport \"../../../../web-components/src/components/ic-theme/ic-theme\";\n\nconst TOC_CONTENT_CLASS = \"table-of-contents-content\";\nconst TOC_LIST_ITEMS_CLASS = \"table-of-contents-list-items\";\nconst TOC_ITEM_CLASS = \"table-of-contents-item-content\";\nconst TOC_CONTAINER_CLASS = \"table-of-contents-section-container\";\n\ninterface RankedElement extends Element {\n rank: string;\n textLabel: string;\n treeChildren: RankedElement[];\n trueIndex: number;\n}\n\n@Component({\n tag: \"ic-table-of-contents\",\n styleUrl: \"ic-table-of-contents.css\",\n shadow: true,\n})\nexport class TableOfContents {\n @Element() el: HTMLIcTableOfContentsElement;\n\n /**\n * Heading text of the table of contents.\n */\n @Prop() heading: string = \"Contents\";\n\n /**\n * Maximum heading level of child content that will generate an item in the table of contents. E.g. when set to '3', headings of <h4> and <h5> will not appear.\n */\n @Prop() maximumHeadingLevel: number = 3;\n\n /**\n * If `true`, the table of contents will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * Whether the table of contents will appear on the right of or above child content on large viewport widths.\n */\n @Prop({ mutable: true }) position: IcPositionTopOrRight = \"right\";\n\n /**\n * Vertical offset to page scroll (in percent) when table of contents item is selected, to account for other page components like headers.\n */\n @Prop() setScrollHeight: number = 50;\n\n /**\n * The size of the table of contents items.\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 * If `true`, the table of contents item label will be truncated.\n */\n @Prop() truncate: boolean = true;\n\n @State() focusedElement: number = 0;\n\n // heading items\n private referenceElements: HTMLElement[] = [];\n\n // heights of heading items\n private currentTargetHeights: number[] = [];\n\n private resizeObserver: ResizeObserver;\n // header height if present\n private headerHeight: number = 0;\n // holds initial position to allow for responsive changes\n private initialPosition: IcPositionTopOrRight = this.position;\n\n // suppress scroll listener to allow for click selection without scroll listener firing\n @State() suppressListener: boolean = false;\n\n @Watch(\"suppressListener\")\n suppressListenerHandler(): void {\n window.scrollTo(0, window.scrollY - this.headerHeight - 50);\n }\n\n /**\n * Generate a TOC Item.\n * These items are wrapped in empty tooltips that will be populated by addTooltip()\n * @param tocHeading heading element to refer item information from\n * @param children\n * @returns TocItem ready to be rendered, with nested children if applicable\n */\n private createTocItem = (\n tocHeading: RankedElement,\n children?: HTMLElement[]\n ): HTMLElement => {\n const tocId = `toc_${tocHeading.id}`;\n\n const tocItem = (\n <TableOfContentsItem\n id={tocId}\n className={TOC_ITEM_CLASS}\n variant={tocHeading.tagName.toLowerCase()}\n label={tocHeading.textLabel}\n target={tocHeading.id}\n truncate={this.truncate}\n selected={this.focusedElement}\n updateSelected={this.updateOnSelection}\n position={tocHeading.trueIndex}\n size={this.size}\n />\n );\n\n const wrappedToc = this.truncate ? (\n <ic-tooltip target={tocId} label={tocHeading.innerHTML}>\n {tocItem}\n </ic-tooltip>\n ) : (\n tocItem\n );\n return (\n <li\n class={`table-of-contents-item ${\n this.monochrome && \"table-of-contents-item-monochrome\"\n }`}\n >\n {wrappedToc}\n {children ? <ol>{children}</ol> : null}\n </li>\n );\n };\n\n /**\n * Render TocItems and recursively render children items if they exist\n * @param listItem\n * @returns HTML Element array to be rendered\n */\n private renderTocTree = (listItem: RankedElement): HTMLElement => {\n let results;\n if (listItem.treeChildren.length > 0) {\n const children = listItem.treeChildren.map((i) => this.renderTocTree(i));\n results = this.createTocItem(listItem, children);\n } else {\n results = this.createTocItem(listItem);\n }\n return results;\n };\n\n /**\n * Scrape for heading elements on the page content within TOC, down to the maximumHeadingLevel.\n * From this, generate an array of Elements with lower rank headings inserted as treeChildren on top level headings.\n * @returns RankedElement[] array of HTML elements with additional props for rank, trueIndex and treeChildren array\n */\n private generateHeadingTree(): RankedElement[] {\n const resultArray: RankedElement[] = [];\n\n const headingDepth =\n this.maximumHeadingLevel < 5\n ? [\"h2\", \"h3\", \"h4\", \"h5\"]\n .slice(\n 0,\n (this.maximumHeadingLevel < 2 ? 2 : this.maximumHeadingLevel) - 1\n )\n .join(\",\")\n : \"h2, h3, h4, h5\";\n const headingList = this.el.querySelectorAll(headingDepth);\n\n if (headingList) {\n const headingArray = Array.from(headingList) as RankedElement[];\n headingArray.forEach((item, index) => {\n this.referenceElements.push(item as unknown as HTMLElement);\n item.trueIndex = index;\n item.rank = item.tagName.toLowerCase().slice(1, 2);\n item.textLabel = item.textContent\n ? item.textContent.trimStart().split(\"\\n\")[0]\n : `${item.rank}-${index}`;\n item.treeChildren = [];\n });\n\n let currentRank = headingArray[0]?.rank || 2;\n\n headingArray.reverse().forEach((h, i) => {\n if (!h.id) {\n h.setAttribute(\"id\", h.textLabel.replace(/\\s+/g, \"-\").toLowerCase());\n }\n if (h.rank > currentRank && h.trueIndex > 0) {\n if (headingArray[i] && headingArray[i].rank < h.rank) {\n headingArray[i].treeChildren.unshift(h);\n } else {\n resultArray.push(h);\n }\n } else {\n currentRank = h.rank;\n resultArray.push(h);\n }\n });\n }\n return resultArray.reverse();\n }\n\n //container orientation logic\n private containerPosition(): void {\n if (this.position) {\n const container = this.el.shadowRoot?.querySelector(\n `.${TOC_CONTAINER_CLASS}`\n ) as HTMLIcSectionContainerElement;\n switch (this.position) {\n case \"right\":\n container.style.flexDirection = \"row-reverse\";\n break;\n case \"top\":\n container.style.flexDirection = \"column\";\n break;\n }\n }\n }\n\n /**\n * Move the sidebar to the provided position on the page.\n * Also, resize the sidebar to stretch the height of the selected heading.\n * @param newPosition\n */\n private sidebarTranslation(newPosition: number): void {\n const sidebar = this.el.shadowRoot?.querySelector(\n \".table-of-contents-sidebar\"\n ) as HTMLIcSectionContainerElement;\n\n const itemHeights: number[] = [];\n let previousItemsHeight = 0;\n this.el.shadowRoot\n ?.querySelectorAll(`.${TOC_ITEM_CLASS}`)\n ?.forEach((item: any) => {\n if (item !== null) itemHeights.push(item.offsetHeight);\n });\n itemHeights\n .slice(0, newPosition)\n .forEach((i) => (previousItemsHeight += i));\n\n sidebar.style.transform = `translateY(${previousItemsHeight}px)`;\n sidebar.style.height = `${itemHeights[newPosition]}px`;\n }\n\n // list item clicked logic\n private updateOnSelection = (position: number) => {\n this.suppressListener = true;\n this.focusedElement = position;\n this.sidebarTranslation(this.focusedElement);\n };\n\n // find element heights to be used to determine focused item from scroll position\n private findElementsHeights() {\n const contentBounds: number[] = [];\n this.referenceElements.forEach((element) => {\n contentBounds.push(element.getBoundingClientRect().top);\n });\n this.currentTargetHeights = contentBounds;\n }\n\n //resize window logic\n private handleResizeBounds() {\n if (window.innerWidth < DEVICE_SIZES.XL && this.initialPosition !== \"top\") {\n this.position = \"top\";\n this.containerPosition();\n } else if (\n window.innerWidth > DEVICE_SIZES.XL &&\n this.position === \"top\" &&\n this.initialPosition === \"right\"\n ) {\n this.position = \"right\";\n this.containerPosition();\n }\n this.findElementsHeights();\n this.truncateText();\n }\n\n // scroll logic\n private updateSelectedItemFromScroll() {\n const targetHeight =\n window.scrollY + window.innerHeight * (this.setScrollHeight / 100);\n if (window.scrollY === 0) {\n this.focusedElement = 0;\n this.sidebarTranslation(this.focusedElement);\n } else if (targetHeight < this.currentTargetHeights[this.focusedElement]) {\n const previousItems = this.currentTargetHeights.slice(\n 0,\n this.focusedElement\n );\n const closestItem = previousItems.reduce((newValue, curr, index) => {\n if (\n Math.abs(curr - targetHeight) <\n Math.abs(previousItems[newValue] - targetHeight)\n )\n return index;\n return newValue;\n }, 0);\n this.focusedElement = closestItem;\n this.sidebarTranslation(this.focusedElement);\n } else if (\n targetHeight > this.currentTargetHeights[this.focusedElement] &&\n this.focusedElement !== this.currentTargetHeights.length\n ) {\n const relevantItems = this.currentTargetHeights.slice(\n this.focusedElement\n );\n\n const closestItem = relevantItems.reduce((newValue, curr, index) => {\n if (\n Math.abs(curr - targetHeight) <\n Math.abs(relevantItems[newValue] - targetHeight) &&\n curr < targetHeight\n )\n return index;\n return newValue;\n }, 0);\n if (closestItem + this.focusedElement !== this.focusedElement) {\n this.focusedElement += closestItem;\n this.sidebarTranslation(this.focusedElement);\n }\n }\n }\n\n // find header element height\n private findHeaderElement(): number {\n const element = document.querySelector(\"ic-page-header\");\n if (element) {\n return element.clientHeight;\n }\n const header = document.querySelector(\"header\");\n if (header) {\n return header.clientHeight;\n }\n return 0;\n }\n\n // add margin to the list based off the header element height\n private addListMargin(): void {\n const content = this.el.shadowRoot?.querySelector(\n `.${TOC_CONTENT_CLASS}`\n ) as HTMLDivElement;\n content?.style.setProperty(\"top\", `${this.headerHeight}px`);\n }\n\n // add tooltip to the item if it is too wide\n private addTooltip(item: any, widthBreakpoint: number) {\n const itemLabel = item.querySelector(\".table-of-contents-item-label\");\n if (item.parentNode?.tagName == \"IC-TOOLTIP\") {\n const tooltip = item.parentNode;\n if (itemLabel?.offsetWidth < itemLabel?.scrollWidth) {\n const tooltipPosition =\n window.innerWidth < widthBreakpoint\n ? \"bottom\"\n : this.position === \"right\"\n ? \"left\"\n : \"right\";\n //Modify the ic-tooltip wrapped around the list item\n tooltip.setAttribute(\"disable-click\", false);\n tooltip.setAttribute(\"disable-hover\", false);\n tooltip.setAttribute(\"placement\", tooltipPosition);\n tooltip.setAttribute(\"target\", item.id);\n tooltip.setAttribute(\"style\", \"overflow:hidden\");\n } else {\n //disable the tooltip if the item does not need to truncate\n tooltip.setAttribute(\"disable-click\", true);\n tooltip.setAttribute(\"disable-hover\", true);\n }\n }\n }\n\n // truncate text if it goes out of bounds of the container\n private truncateText = () => {\n const links = this.el.shadowRoot?.querySelectorAll(`.${TOC_ITEM_CLASS}`);\n const contentList = this.el.shadowRoot?.querySelector(\n `.${TOC_LIST_ITEMS_CLASS}`\n );\n if (contentList)\n links?.forEach((item) => {\n this.addTooltip(item, DEVICE_SIZES.S);\n });\n };\n\n // initialise resize observer\n componentWillLoad(): void {\n this.resizeObserver = new ResizeObserver(() => this.handleResizeBounds());\n this.resizeObserver.observe(this.el);\n }\n\n // initialise scroll listener\n componentDidRender(): void {\n document.addEventListener(\"scroll\", () => {\n if (!this.suppressListener) this.updateSelectedItemFromScroll();\n else this.suppressListener = false;\n });\n this.containerPosition();\n this.findElementsHeights();\n this.sidebarTranslation(this.focusedElement);\n }\n\n // after component has loaded modify the list based of position, size and surrounding elements\n async componentDidLoad(): Promise<void> {\n this.focusedElement = 0;\n this.headerHeight = this.findHeaderElement();\n this.addListMargin();\n this.truncateText();\n this.findElementsHeights();\n this.sidebarTranslation(this.focusedElement);\n }\n\n // Component is a wrapper for page contents, and will build list from heading items\n render() {\n const { heading, monochrome, position, size, theme } = this;\n return (\n <Host class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}>\n <ic-section-container class={TOC_CONTAINER_CLASS} aligned=\"full-width\">\n <div\n role=\"navigation\"\n class={`${TOC_CONTENT_CLASS} ${\n position === \"top\" && \"table-of-contents-position-top\"\n }\n ${position === \"right\" && \"table-of-contents-position-side\"}`}\n >\n <ic-typography\n class={`table-of-contents-heading ${size}`}\n variant=\"subtitle-large\"\n >\n {heading}\n </ic-typography>\n <div class=\"table-of-contents-list\">\n <div\n class={`table-of-contents-sidebar ${\n monochrome && `table-of-contents-sidebar-monochrome`\n }\n ${size}\n `}\n />\n <ol class={TOC_LIST_ITEMS_CLASS}>\n {this.generateHeadingTree().map((item) =>\n this.renderTocTree(item)\n )}\n </ol>\n </div>\n </div>\n <slot></slot>\n </ic-section-container>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as t,h as i,H as s,g as c}from"./p-8e4e97b4.js";import{l as r}from"./p-829b34f9.js";import"./p-18d5e467.js";import"./p-f65f0065.js";import"./p-7bbd1881.js";const l=`<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M8.79502 15.875L4.62502 11.705L3.20502 13.115L8.79502 18.705L20.795 6.70501L19.385 5.29501L8.79502 15.875Z" fill="currentColor"/>\n</svg>\n`;const o=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">\n <path d="M0 0h24v24H0z" fill="none"/>\n <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/>\n <title>close icon</title>\n</svg>\n`;const n=':host(.ic-time-selector-small){--time-selector-padded-item-height:var(--ic-space-lg)}:host(.ic-time-selector-medium){--time-selector-padded-item-height:calc(\n var(--ic-space-lg) + var(--ic-space-xxs)\n )}:host(.ic-time-selector-large){--time-selector-padded-item-height:var(--ic-space-xl)}.ic-time-selector-dialog-container{background-color:var(--ic-time-picker-time-selector-bg);border:var(--ic-space-1px) solid var(--ic-time-picker-time-selector-border);border-radius:var(--ic-space-xxs);padding:var(--ic-space-xs);max-width:calc(\n 3 * var(--ic-space-xxl) + var(--ic-space-xl) + var(--ic-space-xxs)\n );width:-moz-fit-content;width:fit-content}:host(.ic-time-selector-small) .ic-time-selector-dialog-container{padding:var(--ic-space-xxs);max-width:calc(\n 3 * var(--ic-space-xxl) + var(--ic-space-lg) + var(--ic-space-xxs)\n )}:host(.ic-time-selector-large) .ic-time-selector-dialog-container{padding:var(--ic-space-md);max-width:calc(\n 3 * var(--ic-space-xxl) + var(--ic-space-xl) + var(--ic-space-xs) +\n var(--ic-space-xxs)\n )}.ic-time-selector-item{height:var(--ic-space-lg);padding:var(--ic-space-xxxs);text-align:center;cursor:pointer;scroll-snap-align:start;transition:background 0.2s, color 0.2s}:host(.ic-time-selector-small) .ic-time-selector-item{padding:0}:host(.ic-time-selector-large) .ic-time-selector-item{padding:var(--ic-space-xxs)}.ic-time-selector-item:hover:not(.disabled):not(.selected){background-color:var(--ic-time-picker-time-bg-hover)}.ic-time-selector-item:active:not(.disabled):not(.selected){background-color:var(--ic-time-picker-time-bg-pressed)}.ic-time-selector-item.selected{background-color:var(--ic-time-picker-time-bg-selected);--ic-typography-color:var(--ic-time-picker-time-text-selected);position:relative}.ic-time-selector-item.selected:hover{background-color:var(--ic-time-picker-time-active-bg-hover)}.ic-time-selector-item.selected:active{background-color:var(--ic-time-picker-time-active-bg-pressed)}.ic-time-selector-colon-selected{background-color:var(--ic-time-picker-colon-bg-selected);color:var(--ic-time-picker-colon-selected) !important}.ic-time-selector-item.selected::before,.ic-time-selector-item.selected::after,.ic-time-selector-colon-selected::before,.ic-time-selector-colon-selected::after{content:"";position:absolute;left:0;right:0;height:var(--ic-space-1px);background:var(--ic-time-picker-time-selector-bg)}.ic-time-selector-item.selected::before,.ic-time-selector-colon-selected::before{top:0}.ic-time-selector-item.selected::after,.ic-time-selector-colon-selected::after{bottom:0}.ic-time-selector-item.disabled{--ic-typography-color:var(--ic-time-picker-time-text-disabled);cursor:not-allowed}.ic-time-selector-column-wrapper{display:flex;flex-direction:column}.ic-time-selector-scroll-row{height:var(--time-selector-padded-item-height) !important;background:transparent !important;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default !important;box-sizing:border-box}:host(.ic-time-selector-small) .ic-time-selector-scroll-row-last{height:calc(var(--ic-space-1px) + var(--ic-space-xxxs)) !important}:host(.ic-time-selector-medium) .ic-time-selector-scroll-row-last,:host(.ic-time-selector-large) .ic-time-selector-scroll-row-last{height:calc(\n var(--ic-space-1px) + var(--ic-space-xxxs) + var(--ic-space-md)\n ) !important}.ic-time-selector-scroll-row:hover,.ic-time-selector-scroll-row:active{background:transparent !important}.ic-time-selector-header-row{color:var(--ic-time-picker-hh-label);--ic-typography-color:var(--ic-time-picker-hh-label) !important;background:transparent !important;text-align:center;height:var(--time-selector-padded-item-height);display:flex;align-items:center;justify-content:center}.ic-time-selector-header-border{position:absolute;left:0;right:0;top:var(--time-selector-padded-item-height);height:var(--ic-space-1px);background:var(--ic-time-picker-header-border);pointer-events:none}.ic-time-selector-colon{display:flex;align-items:center;justify-content:center;color:var(--ic-time-picker-colon-default);height:var(--time-selector-padded-item-height);margin-top:calc(3 * var(--time-selector-padded-item-height))}.ic-time-selector-columns{display:flex;flex-direction:row;border-bottom:var(--ic-space-1px) solid var(--ic-time-picker-lower-border);margin:0 var(--ic-space-xxs);position:relative;z-index:1}.ic-time-selector-highlight-lines{position:relative;width:100%}.ic-time-selector-highlight{position:absolute;left:0;right:0;width:100%;height:var(--ic-space-1px);background:var(--ic-time-picker-selection-border);pointer-events:none;z-index:1}.ic-time-selector-highlight-top{top:calc(3 * var(--time-selector-padded-item-height) - var(--ic-space-1px))}.ic-time-selector-highlight-bottom{top:calc(4 * var(--time-selector-padded-item-height))}.ic-time-selector-column{height:calc((5 * var(--ic-space-xxl)) + (3 * var(--ic-space-1px)));overflow-y:auto;width:calc(var(--ic-space-xl) + var(--ic-space-xs));position:relative;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none}:host(.ic-time-selector-small) .ic-time-selector-column{width:calc(var(--ic-space-xl) + var(--ic-space-xxs) + var(--ic-space-xxxs))}:host(.ic-time-selector-large) .ic-time-selector-column{width:calc(var(--ic-space-xl) + var(--ic-space-xs) + var(--ic-space-xxxs))}.ic-time-selector-column-period{margin-left:var(--ic-space-xxs)}.ic-time-selector-column::-webkit-scrollbar{display:none}.ic-time-selector-column:focus-visible,.ic-time-selector-item:focus-visible{outline:none;background-color:transparent}.ic-time-selector-column:focus{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast);z-index:3}.ic-time-selector-list{list-style:none;margin:0;padding:0}.ic-time-selector-actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;width:100%;margin-top:var(--ic-space-xs);margin-left:auto}.ic-time-selector-check-btn{margin-left:calc(var(--ic-space-xs) + var(--ic-space-xxxs))}.sr-only{position:absolute;left:-9999px}@media (forced-colors: active){.ic-time-selector-item.selected{background-color:highlight !important}.ic-time-selector-item.disabled{--ic-typography-color:GrayText !important}.ic-time-selector-column:focus{border:var(--ic-border-hc)}.ic-time-selector-highlight{background:Highlight !important}}';const a=n;const d=["hour","minute","period"];const h=".ic-time-selector-column";const u=".ic-time-selector-item";const m=class{constructor(s){e(this,s);this.icChange=t(this,"icChange",7);this.minutes=Array.from({length:60},((e,t)=>t));this.periods=["AM","PM"];this.minTime=null;this.maxTime=null;this.ariaLiveMessage="";this.disableTimes=[];this.min="";this.max="";this.size="medium";this.theme="inherit";this.timePeriod="24";this.value="";this.setTimeParts=(e,t)=>{let i="AM";if(this.timePeriod==="12"){if(e===0){e=12;i="AM"}else if(e===12){i="PM"}else if(e>12){e=e-12;i="PM"}else{i="AM"}this.selectedHour=e;this.selectedPeriod=i}else{this.selectedHour=e}this.selectedMinute=t};this.checkIfScrollIsFinished=(e,t)=>{const i=setInterval((()=>{if(e.scrollTop===t+56){e===null||e===void 0?void 0:e.focus();clearInterval(i)}}),25)};this.handleSelect=(e,t)=>{var i;const s=this.getSelectedValue(e);switch(e){case"hour":this.selectedHour=Number(t);break;case"minute":this.selectedMinute=Number(t);break;case"period":this.selectedPeriod=t;break}const c=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelectorAll(h);const r=d.indexOf(e);if(c&&c[r]){c[r].focus();window.requestAnimationFrame((()=>{this.scrollSelectedItem(e)}))}if(s===undefined||s===null){this.announceSelectedColumn(e)}else{this.lastAnnouncedType=e;this.lastAnnouncedValue=this.getSelectedValue(e)}};this.isTimeDisabled=(e,t,i)=>{var s,c;for(const i of this.disableTimes){if(i&&typeof i==="object"&&"start"in i&&"end"in i){const s=r(i.start).parts;const c=r(i.end).parts;if(s&&c){const i=e*3600+t*60;const r=s.hour*3600+s.minute*60;const l=c.hour*3600+c.minute*60;if(i>=r&&i<=l){return true}}}}if(this.min){this.minTime=r(this.min).date;if(this.minTime){const c=this.minTime.getHours();const r=this.minTime.getMinutes();if(i==="hour"){const t=(s=this.selectedMinute)!==null&&s!==void 0?s:r;if(e<c||e===c&&t<r||e===c&&t===r){return true}}else if(i==="minute"){if(e===c&&t<r){return true}}else{if(e<c||e===c&&t<r||e===c&&t===r){return true}}}}if(this.max){this.maxTime=r(this.max).date;if(this.maxTime){const s=this.maxTime.getHours();const r=this.maxTime.getMinutes();if(i==="hour"){const t=(c=this.selectedMinute)!==null&&c!==void 0?c:59;if(e>s||e===s&&t>r||e===s&&t===r){return true}}else if(i==="minute"){if(e===s&&t>r){return true}}else{if(e>s||e===s&&t>r||e===s&&t===r){return true}}}}return false};this.handleColumnKeyDown=(e,t)=>{var i,s,c,r,l,o,n;const a=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelectorAll(h);const u=d.indexOf(e);if(!a)return;const m=this.getColumnValues(e);const f=this.getSelectedValue(e);const p=a[u];if(!p)return;const v=()=>{const t=this.getHighlightedValue(e,p);if(t!==null){this.handleSelect(e,t)}else if(m.length>0){this.handleSelect(e,m[0])}};switch(t.key){case"Enter":case" ":t.preventDefault();v();return;case"ArrowRight":t.preventDefault();v();if(u<a.length-1){(s=a[u+1])===null||s===void 0?void 0:s.focus()}return;case"ArrowLeft":t.preventDefault();if(u>0)(c=a[u-1])===null||c===void 0?void 0:c.focus();return;case"Tab":if(t.shiftKey){if(u===0){return}else{t.preventDefault();(r=a[u-1])===null||r===void 0?void 0:r.focus()}}else{t.preventDefault();v();this.announceSelectedColumn(e);if(u<a.length-1){(l=a[u+1])===null||l===void 0?void 0:l.focus()}else{(n=(o=this.el.shadowRoot)===null||o===void 0?void 0:o.querySelector(".ic-time-selector-clear-btn"))===null||n===void 0?void 0:n.focus();this.updateAriaLiveMessage()}}return;case"ArrowUp":case"ArrowDown":{let i=m.findIndex((e=>e===f));if(i===-1)i=0;let s=i;const c=t.key==="ArrowUp"?-1:1;const r=m.length-1;do{s+=c}while(s>=0&&s<=r&&(()=>{var t,i;if(e==="hour"||e==="minute"){const c=e==="hour"?m[s]:(t=this.selectedHour)!==null&&t!==void 0?t:0;const r=e==="minute"?m[s]:(i=this.selectedMinute)!==null&&i!==void 0?i:0;return this.isTimeDisabled(c,r)}return false})());this.ariaLiveMessage=`Selected ${e}: ${m[s]}`;if(s>=0&&s<=r&&s!==i){this.handleSelect(e,m[s])}return}default:return}};this.renderColumn=(e,t,s)=>{const c=e==="hour"||e==="minute";const r=e==="period";const l=this.getHeaderLabel(e);const o=2;let n=6;if(this.size==="large"){n=5}else if(this.size==="small"){n=8}return i("div",{class:"ic-time-selector-column-wrapper"},r?i("div",{class:"ic-time-selector-header-row"}):l&&i("div",{class:"ic-time-selector-header-row"},i("ic-typography",{variant:"subtitle-small"},l)),i("div",{class:{"ic-time-selector-column":true,"ic-time-selector-column-period":r},tabIndex:0,onKeyDown:t=>this.handleColumnKeyDown(e,t)},i("ul",{class:"ic-time-selector-list",role:"listbox","aria-label":e},this.renderScrollRows(o,`${e}-top-spacer`),t.map((t=>{var r,l;let o=false;if(c){const i=e==="hour"?t:(r=this.selectedHour)!==null&&r!==void 0?r:0;const s=e==="minute"?t:(l=this.selectedMinute)!==null&&l!==void 0?l:0;o=this.isTimeDisabled(i,s,e)}return i("li",{class:{"ic-time-selector-item":true,selected:t===s,disabled:o},role:"option","aria-selected":t===s?"true":"false","aria-disabled":o?"true":"false",onClick:()=>!o&&this.handleSelect(e,t),tabIndex:-1,key:`${e}-val-${t}`},i("ic-typography",{variant:"subtitle-small"},typeof t==="number"?t.toString().padStart(2,"0"):t))})),(c||r)&&this.renderScrollRows(n,`${e}-bottom-spacer`))))};this.handleClear=()=>{this.selectedHour=undefined;this.scrollSelectedItem("hour",true);this.selectedMinute=undefined;this.scrollSelectedItem("minute",true);this.selectedPeriod=undefined;this.scrollSelectedItem("period",true);this.lastAnnouncedType=undefined;this.lastAnnouncedValue=undefined;this.icChange.emit({value:null,timeString:null,timeObject:{hour:null,minute:null,period:undefined}})};this.handleConfirmClick=()=>{const e=this.selectedHour!=null?this.selectedHour:null;const t=this.selectedMinute!=null?this.selectedMinute:null;const i=this.selectedPeriod;const s=e!=null?e.toString().padStart(2,"0"):null;const c=t!=null?t.toString().padStart(2,"0"):null;let r=false;r=e!==null&&t!==null;let l=null;let o=null;if(r){let r=e;if(e!=null&&i&&this.timePeriod==="12"){if(i==="PM"&&e<12)r=e+12;if(i==="AM"&&e===12)r=0}l=new Date;l.setHours(r!==null&&r!==void 0?r:0);l.setMinutes(t!==null&&t!==void 0?t:0);o=s+":"+c+(i?" "+i:"");this.value=l}this.icChange.emit({value:r?l:null,timeString:r?o:null,timeObject:Object.assign({hour:s,minute:c},i?{period:i}:{})})}}watchMinHandler(){this.minTime=r(this.min).date}watchMaxHandler(){this.maxTime=r(this.max).date}watchValueHandler(){this.setTime(this.value);setTimeout((()=>{this.scrollSelectedItem("hour");this.scrollSelectedItem("minute");if(this.timePeriod==="12"){this.scrollSelectedItem("period")}}),0)}componentWillLoad(){this.setTime(this.value)}componentDidLoad(){setTimeout((()=>{if(this.selectedHour!==undefined&&this.selectedHour!==null){this.scrollSelectedItem("hour")}else if(this.min){this.scrollMinTime("hour")}if(this.selectedMinute!==undefined&&this.selectedMinute!==null){this.scrollSelectedItem("minute")}else if(this.min){this.scrollMinTime("minute")}if(this.timePeriod==="12"){if(this.selectedPeriod!==undefined&&this.selectedPeriod!==null){this.scrollSelectedItem("period")}else if(this.min){this.scrollMinTime("period")}}this.updateAriaLiveMessage()}),0)}getHeaderLabel(e){switch(e){case"hour":return"HH";case"minute":return"MM";default:return""}}setTime(e){if(e===null||e===undefined||e===""){this.handleClear();return}if(typeof e==="string"){const t=e.match(/^([0-9]{2}):([0-9]{2}):([0-9]{2})(?:\.[0-9]{1,3})?Z?$/);if(t){this.setTimeParts(Number(t[1]),Number(t[2]))}else{const t=e.split(":");this.setTimeParts(Number(t[0])||0,Number(t[1])||0)}}else{const{parts:t}=r(e);if(t){this.setTimeParts(t.hour,t.minute)}}}renderScrollRows(e,t="scroll-row"){return Array.from({length:e}).map(((s,c)=>{const r=t.endsWith("bottom-spacer")?c===e-1:false;return i("li",{class:Object.assign({"ic-time-selector-item":true,"ic-time-selector-scroll-row":true},r?{"ic-time-selector-scroll-row-last":true}:{}),"aria-hidden":"true",tabIndex:-1,key:`${t}-${c}`})}))}scrollSelectedItem(e,t){var i;const s=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelectorAll(h);let c=d.indexOf(e);if(e==="period"&&(s===null||s===void 0?void 0:s.length)){c=s.length-1}const r=s===null||s===void 0?void 0:s[c];if(r){const e=r.querySelectorAll(u);let i=-1;e.forEach(((e,t)=>{if(e.classList.contains("selected"))i=t}));if(t){i=0}if(i>-1){const s=r.querySelector(".ic-time-selector-scroll-row");let c=0;if(s){c=parseFloat(getComputedStyle(s).height)}const l=c*2;const o=e[i].offsetTop-l;const n=window.matchMedia("(prefers-reduced-motion: reduce)").matches;r.scrollTo({top:o,behavior:n?"instant":"smooth"});if(t){setTimeout((()=>{var e;const t=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelectorAll(h);if(t&&t.length>0){this.checkIfScrollIsFinished(t[0],o)}}),300)}}}}scrollMinTime(e){var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(h);const s=d.indexOf(e);const c=i===null||i===void 0?void 0:i[s];if(!c)return;const l=c.querySelectorAll(u);let o=0,n=0;if(this.minTime){o=this.minTime.getHours()+2;n=this.minTime.getMinutes()+2}else if(this.min){const e=r(this.min).date;if(e){o=e.getHours();n=e.getMinutes()}}let a=-1;const m=this.getColumnValues(e);if(e==="hour"){a=m.findIndex((e=>e===o))}else if(e==="minute"){a=m.findIndex((e=>e===n))}else if(e==="period"){let e="AM";if(this.timePeriod==="12"){if(o===0){e="AM"}else if(o===12){e="PM"}else if(o>12){e="PM"}else{e="AM"}}a=m.findIndex((t=>t===e))}if(a>-1){const e=c.querySelector(".ic-time-selector-scroll-row");let t=0;if(e){t=parseFloat(getComputedStyle(e).height)}const i=t*2;const s=l[a].offsetTop-i;const r=window.matchMedia("(prefers-reduced-motion: reduce)").matches;c.scrollTo({top:s,behavior:r?"instant":"smooth"})}}announceSelectedColumn(e){const t=this.getSelectedValue(e);if(t!==null&&t!==undefined&&(e!==this.lastAnnouncedType||t!==this.lastAnnouncedValue)){this.ariaLiveMessage=`Selected ${e}: ${t}`}else{this.ariaLiveMessage=""}this.lastAnnouncedType=e;this.lastAnnouncedValue=t}getColumnValues(e){if(e==="hour")return this.timePeriod==="12"?Array.from({length:12},((e,t)=>t+1)):Array.from({length:24},((e,t)=>t));if(e==="minute")return this.minutes;if(e==="period")return this.periods;return[]}getSelectedValue(e){var t,i,s;if(e==="hour")return(t=this.selectedHour)!==null&&t!==void 0?t:null;if(e==="minute")return(i=this.selectedMinute)!==null&&i!==void 0?i:null;if(e==="period")return(s=this.selectedPeriod)!==null&&s!==void 0?s:null;return null}getHighlightedValue(e,t){var i,s,c;const r=Array.from(t.querySelectorAll(u));const l=r.filter((e=>!e.classList.contains("ic-time-selector-scroll-row")));if(l.length===0)return null;const o=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".ic-time-selector-highlight-top");const n=(s=this.el.shadowRoot)===null||s===void 0?void 0:s.querySelector(".ic-time-selector-highlight-bottom");if(!o||!n)return null;const a=o.getBoundingClientRect();const d=n.getBoundingClientRect();const h=a.bottom;const m=d.top;for(const t of l){const i=t.getBoundingClientRect();const s=i.top+i.height/2;if(s>=h&&s<=m){const i=t.getAttribute("key");if(i){const t=i.replace(`${e}-val-`,"");if(e==="hour"||e==="minute"){return Number(t)}else{return t}}const s=(c=t.textContent)===null||c===void 0?void 0:c.trim();if(e==="hour"||e==="minute"){return s?Number(s):null}else{return s}}}return null}updateAriaLiveMessage(){const e=this.selectedHour!=null?this.selectedHour.toString().padStart(2,"0"):null;const t=this.selectedMinute!=null?this.selectedMinute.toString().padStart(2,"0"):null;let i="";let s=false;s=e!==null&&t!==null;if(s){i=e+":"+t+(this.selectedPeriod?" "+this.selectedPeriod:"")}this.ariaLiveMessage=s&&i?`Selected time: ${i}`:""}render(){var e,t,c;const r=this.timePeriod==="12"?Array.from({length:12},((e,t)=>t+1)):Array.from({length:24},((e,t)=>t));const n=[this.renderColumn("hour",r,(e=this.selectedHour)!==null&&e!==void 0?e:null),this.renderColumn("minute",this.minutes,(t=this.selectedMinute)!==null&&t!==void 0?t:null)];let a=[];a=[this.selectedHour!==undefined&&this.selectedMinute!==undefined];const d=this.el.closest("ic-time-picker")!==null;const{size:u,theme:m,timePeriod:f}=this;return i(s,{key:"f5e125293b43e43658876edeaaa4f75e29c1572f",class:{[`ic-theme-${m}`]:m!=="inherit",[`ic-time-selector-${u}`]:true}},i("div",{key:"00ec623021312ad0a526e22d6ba60ce522ff5d46",role:d?"dialog":undefined,"aria-modal":d?true:undefined,"aria-label":"Select time. Use arrow keys to navigate and select the options and then tab to move onto the next selection.",class:{"ic-time-selector-dialog-container":true}},i("div",{key:"f0d281e2df0cdbfed96b17c8e4af0fa37a7be923",class:"ic-time-selector-highlight-lines"},i("div",{key:"4ffaa451f24110eaa60f354da26af8ad77c5ba99",class:"ic-time-selector-header-border"}),i("div",{key:"ccf0242629b48db2fb58db3b292a49a78372b3df",class:{"ic-time-selector-highlight":true,"ic-time-selector-highlight-top":true}}),i("div",{key:"e65f5376dc0762a3917bd4c3ed3f561f73a8fe1c",class:"ic-time-selector-columns"},n.map(((e,t)=>[e,t<n.length-1?i("ic-typography",{class:{"ic-time-selector-colon":true,"ic-time-selector-colon-selected":a[t]},variant:"subtitle-small","aria-hidden":"true",key:`colon-${t}`},":"):null])),f!=="24"&&this.renderColumn("period",this.periods,(c=this.selectedPeriod)!==null&&c!==void 0?c:null)),i("div",{key:"db46b5dde029e6be211d05e582fe29009d21ac0a",class:{"ic-time-selector-highlight":true,"ic-time-selector-highlight-bottom":true}})),i("div",{key:"c738427308610bf768b7ac6313802e55513c4217",class:"ic-time-selector-actions"},i("ic-button",{key:"a0c27433567645b0f602f47ce3b65f5032662826",variant:"icon-tertiary","aria-label":"Clear time",class:{"ic-time-selector-clear-btn":true},onClick:this.handleClear,disabled:this.selectedHour===undefined&&this.selectedMinute===undefined&&this.selectedPeriod===undefined,size:u,tabIndex:0,onKeyDown:e=>{var t;if(e.key==="Tab"&&e.shiftKey){e.preventDefault();const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(h);if(i&&i.length>0){const e=i[i.length-1];e===null||e===void 0?void 0:e.focus()}}}},i("span",{key:"3223e4b9b6a34cbb298f2c524fd417fc82b4359c","aria-hidden":"true",innerHTML:o})),i("ic-button",{key:"bc456653e7348a60dd17ef10dbab01fe8a6697ed",variant:"icon-tertiary","aria-label":"Select time",class:"ic-time-selector-check-btn",onClick:this.handleConfirmClick,disabled:this.selectedHour===undefined&&this.selectedMinute===undefined&&this.selectedPeriod===undefined,size:u,tabIndex:0},i("span",{key:"4c6f39926dec4d9967c94816103c75b46fce2cf3","aria-hidden":"true",innerHTML:l})))),i("div",{key:"07f1489842c9dae8727a76f718013e1b3674783b",class:"sr-only","aria-live":"polite"},this.ariaLiveMessage))}get el(){return c(this)}static get watchers(){return{min:["watchMinHandler"],max:["watchMaxHandler"],value:["watchValueHandler"]}}};m.style=a;export{m as ic_time_selector};
|
|
2
|
+
//# sourceMappingURL=p-f3267773.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["icTimeSelectorCss","IcTimeSelectorStyle0","COLUMN_TYPES","COLUMN_CLASS","ITEM_CLASS","TimeSelector","constructor","hostRef","this","minutes","Array","from","length","_","i","periods","minTime","maxTime","ariaLiveMessage","disableTimes","min","max","size","theme","timePeriod","value","setTimeParts","hour","minute","period","selectedHour","selectedPeriod","selectedMinute","checkIfScrollIsFinished","column","scrollTop","isScrollFinished","setInterval","focus","clearInterval","handleSelect","type","prevValue","getSelectedValue","Number","columns","_a","el","shadowRoot","querySelectorAll","idx","indexOf","window","requestAnimationFrame","scrollSelectedItem","undefined","announceSelectedColumn","lastAnnouncedType","lastAnnouncedValue","isTimeDisabled","t","startParts","parseTimeHelper","start","parts","endParts","end","timeVal","startVal","endVal","date","minHour","getHours","minMinute","getMinutes","highlightedMinute","maxHour","maxMinute","_b","handleColumnKeyDown","event","values","getColumnValues","selected","col","selectHighlighted","highlighted","getHighlightedValue","key","preventDefault","_c","shiftKey","_d","_e","_g","_f","querySelector","updateAriaLiveMessage","idxInValues","findIndex","v","newIdx","direction","maxIdx","renderColumn","isTimeColumn","isPeriodColumn","headerLabel","getHeaderLabel","topSpacerCount","bottomSpacerCount","h","class","variant","tabIndex","onKeyDown","e","role","renderScrollRows","map","val","disabled","onClick","toString","padStart","handleClear","icChange","emit","timeString","timeObject","handleConfirmClick","hourStr","minuteStr","allSelected","date24hours","Date","setHours","setMinutes","Object","assign","watchMinHandler","watchMaxHandler","watchValueHandler","setTime","setTimeout","componentWillLoad","componentDidLoad","scrollMinTime","time","zuluMatch","match","split","count","keyPrefix","isLast","endsWith","colClass","clear","colIdx","items","selectedIdx","forEach","item","classList","contains","scrollRow","resolvedHeight","parseFloat","getComputedStyle","height","offset","offsetTop","prefersReducedMotion","matchMedia","matches","scrollTo","top","behavior","minDate","targetIdx","realItems","filter","highlightTop","highlightBottom","topRect","getBoundingClientRect","bottomRect","highlightStart","bottom","highlightEnd","itemRect","itemCenter","getAttribute","valStr","replace","text","textContent","trim","render","hours","colonSelectedStates","isInPicker","closest","Host","lastCol","innerHTML","Clear","Check"],"sources":["src/components/ic-time-selector/ic-time-selector.css?tag=ic-time-selector&encapsulation=shadow","src/components/ic-time-selector/ic-time-selector.tsx"],"sourcesContent":[":host(.ic-time-selector-small) {\n --time-selector-padded-item-height: var(--ic-space-lg);\n}\n\n:host(.ic-time-selector-medium) {\n --time-selector-padded-item-height: calc(\n var(--ic-space-lg) + var(--ic-space-xxs)\n );\n}\n\n:host(.ic-time-selector-large) {\n --time-selector-padded-item-height: var(--ic-space-xl);\n}\n\n.ic-time-selector-dialog-container {\n background-color: var(--ic-time-picker-time-selector-bg);\n border: var(--ic-space-1px) solid var(--ic-time-picker-time-selector-border);\n border-radius: var(--ic-space-xxs);\n padding: var(--ic-space-xs);\n max-width: calc(\n 3 * var(--ic-space-xxl) + var(--ic-space-xl) + var(--ic-space-xxs)\n );\n width: fit-content;\n}\n\n:host(.ic-time-selector-small) .ic-time-selector-dialog-container {\n padding: var(--ic-space-xxs);\n max-width: calc(\n 3 * var(--ic-space-xxl) + var(--ic-space-lg) + var(--ic-space-xxs)\n );\n}\n\n:host(.ic-time-selector-large) .ic-time-selector-dialog-container {\n padding: var(--ic-space-md);\n max-width: calc(\n 3 * var(--ic-space-xxl) + var(--ic-space-xl) + var(--ic-space-xs) +\n var(--ic-space-xxs)\n );\n}\n\n.ic-time-selector-item {\n height: var(--ic-space-lg);\n padding: var(--ic-space-xxxs);\n text-align: center;\n cursor: pointer;\n scroll-snap-align: start;\n transition: background 0.2s, color 0.2s;\n}\n\n:host(.ic-time-selector-small) .ic-time-selector-item {\n padding: 0;\n}\n\n:host(.ic-time-selector-large) .ic-time-selector-item {\n padding: var(--ic-space-xxs);\n}\n\n.ic-time-selector-item:hover:not(.disabled):not(.selected) {\n background-color: var(--ic-time-picker-time-bg-hover);\n}\n\n.ic-time-selector-item:active:not(.disabled):not(.selected) {\n background-color: var(--ic-time-picker-time-bg-pressed);\n}\n\n.ic-time-selector-item.selected {\n background-color: var(--ic-time-picker-time-bg-selected);\n\n --ic-typography-color: var(--ic-time-picker-time-text-selected);\n\n position: relative;\n}\n\n.ic-time-selector-item.selected:hover {\n background-color: var(--ic-time-picker-time-active-bg-hover);\n}\n\n.ic-time-selector-item.selected:active {\n background-color: var(--ic-time-picker-time-active-bg-pressed);\n}\n\n.ic-time-selector-colon-selected {\n background-color: var(--ic-time-picker-colon-bg-selected);\n color: var(--ic-time-picker-colon-selected) !important;\n}\n\n.ic-time-selector-item.selected::before,\n.ic-time-selector-item.selected::after,\n.ic-time-selector-colon-selected::before,\n.ic-time-selector-colon-selected::after {\n content: \"\";\n position: absolute;\n left: 0;\n right: 0;\n height: var(--ic-space-1px);\n background: var(--ic-time-picker-time-selector-bg);\n}\n\n.ic-time-selector-item.selected::before,\n.ic-time-selector-colon-selected::before {\n top: 0;\n}\n\n.ic-time-selector-item.selected::after,\n.ic-time-selector-colon-selected::after {\n bottom: 0;\n}\n\n.ic-time-selector-item.disabled {\n --ic-typography-color: var(--ic-time-picker-time-text-disabled);\n\n cursor: not-allowed;\n}\n\n.ic-time-selector-column-wrapper {\n display: flex;\n flex-direction: column;\n}\n\n.ic-time-selector-scroll-row {\n height: var(--time-selector-padded-item-height) !important;\n background: transparent !important;\n pointer-events: none;\n user-select: none;\n cursor: default !important;\n box-sizing: border-box;\n}\n\n:host(.ic-time-selector-small) .ic-time-selector-scroll-row-last {\n height: calc(var(--ic-space-1px) + var(--ic-space-xxxs)) !important;\n}\n\n:host(.ic-time-selector-medium) .ic-time-selector-scroll-row-last,\n:host(.ic-time-selector-large) .ic-time-selector-scroll-row-last {\n height: calc(\n var(--ic-space-1px) + var(--ic-space-xxxs) + var(--ic-space-md)\n ) !important;\n}\n\n.ic-time-selector-scroll-row:hover,\n.ic-time-selector-scroll-row:active {\n background: transparent !important;\n}\n\n.ic-time-selector-header-row {\n color: var(--ic-time-picker-hh-label);\n\n --ic-typography-color: var(--ic-time-picker-hh-label) !important;\n\n background: transparent !important;\n text-align: center;\n height: var(--time-selector-padded-item-height);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.ic-time-selector-header-border {\n position: absolute;\n left: 0;\n right: 0;\n top: var(--time-selector-padded-item-height);\n height: var(--ic-space-1px);\n background: var(--ic-time-picker-header-border);\n pointer-events: none;\n}\n\n.ic-time-selector-colon {\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--ic-time-picker-colon-default);\n height: var(--time-selector-padded-item-height);\n margin-top: calc(3 * var(--time-selector-padded-item-height));\n}\n\n.ic-time-selector-columns {\n display: flex;\n flex-direction: row;\n border-bottom: var(--ic-space-1px) solid var(--ic-time-picker-lower-border);\n margin: 0 var(--ic-space-xxs);\n position: relative;\n z-index: 1;\n}\n\n.ic-time-selector-highlight-lines {\n position: relative;\n width: 100%;\n}\n\n.ic-time-selector-highlight {\n position: absolute;\n left: 0;\n right: 0;\n width: 100%;\n height: var(--ic-space-1px);\n background: var(--ic-time-picker-selection-border);\n pointer-events: none;\n z-index: 1;\n}\n\n.ic-time-selector-highlight-top {\n top: calc(3 * var(--time-selector-padded-item-height) - var(--ic-space-1px));\n}\n\n.ic-time-selector-highlight-bottom {\n top: calc(4 * var(--time-selector-padded-item-height));\n}\n\n.ic-time-selector-column {\n height: calc((5 * var(--ic-space-xxl)) + (3 * var(--ic-space-1px)));\n overflow-y: auto;\n width: calc(var(--ic-space-xl) + var(--ic-space-xs));\n position: relative;\n scroll-snap-type: y mandatory;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n:host(.ic-time-selector-small) .ic-time-selector-column {\n width: calc(var(--ic-space-xl) + var(--ic-space-xxs) + var(--ic-space-xxxs));\n}\n\n:host(.ic-time-selector-large) .ic-time-selector-column {\n width: calc(var(--ic-space-xl) + var(--ic-space-xs) + var(--ic-space-xxxs));\n}\n\n.ic-time-selector-column-period {\n margin-left: var(--ic-space-xxs);\n}\n\n.ic-time-selector-column::-webkit-scrollbar {\n display: none;\n}\n\n.ic-time-selector-column:focus-visible,\n.ic-time-selector-item:focus-visible {\n outline: none;\n background-color: transparent;\n}\n\n.ic-time-selector-column:focus {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-fast);\n z-index: 3;\n}\n\n.ic-time-selector-list {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n.ic-time-selector-actions {\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n align-items: center;\n width: 100%;\n margin-top: var(--ic-space-xs);\n margin-left: auto;\n}\n\n.ic-time-selector-check-btn {\n margin-left: calc(var(--ic-space-xs) + var(--ic-space-xxxs));\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n@media (forced-colors: active) {\n .ic-time-selector-item.selected {\n background-color: highlight !important;\n }\n\n .ic-time-selector-item.disabled {\n --ic-typography-color: GrayText !important;\n }\n\n .ic-time-selector-column:focus {\n border: var(--ic-border-hc);\n }\n\n .ic-time-selector-highlight {\n background: Highlight !important;\n }\n}\n","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"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as o,f as n,h as i,H as r,g as a,F as c}from"./p-8e4e97b4.js";import{h as e,I as s,r as u,d as b,e as d,f as h,j as l,k as v}from"./p-7bbd1881.js";const m=`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor"/>\n</svg>`;const g='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:inline-block;position:relative;--icon-width:100%;--icon-height:100%}.button,::slotted(a){font-family:var(--ic-font-body-family);text-decoration:none;font-weight:600;font-size:0.875rem;transition:var(--ic-easing-transition-fast);border-radius:var(--ic-border-radius);min-width:var(--min-width, 6.25rem);display:inline-flex;flex-direction:row;justify-content:center;align-items:center;background:none;border:none;box-sizing:border-box;white-space:nowrap;vertical-align:middle}:host(.with-badge) .button{border-radius:0.2188rem}.button:hover,::slotted(a:hover){cursor:pointer}.button:focus,::slotted(a:focus){box-shadow:var(--ic-border-focus)}.button:focus-visible,::slotted(a:focus-visible){outline:var(--ic-hc-focus-outline)}:host(.ic-button-disabled),:host(.ic-button-disabled) .button,:host(.ic-button-disabled) ::slotted(a),:host(.ic-button-loading),:host(.ic-button-loading) .button{pointer-events:none}:host(.top-icon) .button{flex-direction:column;--height:fit-content}:host(.top-icon) .button .icon-container{margin-right:0}:host(.ic-button-variant-primary) .button,:host(.ic-button-variant-icon-primary) .button{color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background)}:host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg){color:var(--ic-button-primary-icon)}:host(.ic-button-variant-primary) ::slotted(a),:host(.ic-button-variant-icon-primary) ::slotted(a){--ic-typography-color:var(--ic-button-primary-text);color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background) !important}:host(.ic-button-variant-primary) .button:hover,:host(.ic-button-variant-icon-primary) .button:hover{background-color:var(--ic-button-primary-background-hover)}:host(.ic-button-variant-primary) ::slotted(a:hover),:host(.ic-button-variant-icon-primary) ::slotted(a:hover){background-color:var(--ic-button-primary-background-hover) !important}:host(.ic-button-variant-primary.ic-button-loading) .button,:host(.ic-button-variant-primary) .button:active,:host(.ic-button-variant-icon-primary.ic-button-loading) .button,:host(.ic-button-variant-icon-primary) .button:active{background-color:var(--ic-button-primary-background-pressed);--button-loading-inner-color:var(--ic-button-primary-text);--button-loading-outer-color:var(--ic-button-primary-background-pressed)}:host(.ic-button-variant-primary) ::slotted(a:active),:host(.ic-button-variant-icon-primary) ::slotted(a:active){background-color:var(--ic-button-primary-background-pressed) !important}:host(.ic-button-variant-primary.ic-button-disabled) .button,:host(.ic-button-variant-icon-primary.ic-button-disabled) .button{background:var(--ic-button-primary-background-disabled);color:var(--ic-button-primary-text-disabled)}:host(.ic-button-variant-primary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-primary.ic-button-disabled) ::slotted(a){background:var(--ic-button-primary-background-disabled) !important;--ic-typography-color:var(--ic-button-primary-text-disabled) !important;color:var(--ic-button-primary-text-disabled) !important}:host(.ic-button-variant-primary.monochrome) .button,:host(.ic-button-variant-icon-primary.monochrome) .button{color:var(--ic-button-primary-text-monochrome);background-color:var(--ic-button-primary-background-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a){background-color:var(--ic-button-primary-background-monochrome) !important}:host(.ic-button-variant-primary.monochrome) .button:hover,:host(.ic-button-variant-icon-primary.monochrome) .button:hover{background-color:var(--ic-button-primary-background-hover-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-primary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-primary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-primary.monochrome) .button:active,:host(.ic-button-variant-icon-primary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-primary.monochrome) .button:active{background-color:var(--ic-button-primary-background-pressed-monochrome);--button-loading-inner-color:var(--ic-button-primary-text-monochrome);--button-loading-outer-color:var(--ic-button-primary-background-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-primary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-primary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) .button{background-color:var(--ic-button-primary-background-disabled-monochrome);color:var(--ic-button-primary-text-disabled-monochrome)}:host(.ic-button-variant-primary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) ::slotted(a){background-color:var(\n --ic-button-primary-background-disabled-monochrome\n ) !important}:host(.ic-button-variant-secondary) .button,:host(.ic-button-variant-icon-secondary) .button{border:var(--ic-border-width) solid var(--ic-button-secondary-border);color:var(--ic-button-secondary-text)}:host(.ic-button-variant-secondary) ::slotted(a),:host(.ic-button-variant-icon-secondary) ::slotted(a){border:var(--ic-border-width) solid var(--ic-button-secondary-border) !important;color:var(--ic-button-secondary-text) !important;--ic-typography-color:var(--ic-button-secondary-text) !important}:host(.ic-button-variant-secondary) .button:hover,:host(.ic-button-variant-icon-secondary) .button:hover{background-color:var(--ic-button-secondary-background-hover-active);border-color:var(--ic-button-secondary-border-hover);color:var(--ic-button-secondary-text-hover-active)}:host(.ic-button-variant-secondary) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-hover-active\n ) !important}:host(.ic-button-variant-secondary) .button:active,:host(.ic-button-variant-icon-secondary) .button:active{border-color:var(--ic-button-secondary-border-pressed);background-color:var(--ic-button-secondary-background-pressed-active);color:var(--ic-button-secondary-text-pressed-active)}:host(.ic-button-variant-secondary) ::slotted(a:active),:host(.ic-button-variant-icon-secondary) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-pressed-active\n ) !important}:host(.ic-button-variant-secondary.ic-button-loading) .button,:host(.ic-button-variant-icon-secondary.ic-button-loading) .button{border-color:var(--ic-button-secondary-border-pressed);background-color:var(\n --loading-button-background,\n var(--ic-button-secondary-background-pressed-active)\n ) !important;color:var(--ic-button-secondary-text-pressed-active);--button-loading-inner-color:var(--ic-button-secondary-border-pressed);--button-loading-outer-color:var(\n --ic-button-secondary-background-pressed-active\n )}:host(.ic-button-variant-secondary.ic-button-disabled) .button,:host(.ic-button-variant-icon-secondary.ic-button-disabled) .button{border-color:var(--ic-button-secondary-border-disabled);color:var(--ic-button-secondary-text-disabled);background:none}:host(.ic-button-variant-secondary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-secondary.ic-button-disabled) ::slotted(a){background:none !important}:host(.ic-button-variant-secondary.background) .button,:host(.ic-button-variant-icon-secondary.background) .button{background-color:var(--ic-button-secondary-background)}:host(.ic-button-variant-secondary.background) ::slotted(a),:host(.ic-button-variant-icon-secondary.background) ::slotted(a){background-color:var(--ic-button-secondary-background) !important}:host(.ic-button-variant-secondary.background) .button:hover,:host(.ic-button-variant-icon-secondary.background) .button:hover{background-image:var(--ic-button-secondary-background-non-transparent-hover)}:host(.ic-button-variant-secondary.background) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.background) ::slotted(a:hover){background-image:var(\n --ic-button-secondary-background-non-transparent-hover\n ) !important}:host(.ic-button-variant-secondary.background) .button:active,:host(.ic-button-variant-icon-secondary.background) .button:active{background-image:var(\n --ic-button-secondary-background-non-transparent-active\n )}:host(.ic-button-variant-secondary.background) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.background) ::slotted(a:active){background-image:var(\n --ic-button-secondary-background-non-transparent-active\n ) !important}:host(.ic-button-variant-secondary.monochrome) .button,:host(.ic-button-variant-icon-secondary.monochrome) .button{background-color:none;border:var(--ic-border-width) solid\n var(--ic-button-secondary-border-monochrome);color:var(--ic-button-secondary-text-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a){background-color:none !important}:host(.ic-button-variant-secondary.monochrome) .button:hover,:host(.ic-button-variant-icon-secondary.monochrome) .button:hover{background-color:var(--ic-button-secondary-background-hover-monochrome);border-color:var(--ic-button-secondary-border-hover-monochrome);color:var(--ic-button-secondary-text-hover-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-secondary.monochrome) .button:active,:host(.ic-button-variant-icon-secondary.monochrome) .button:active{background-color:var(--ic-button-secondary-background-pressed-monochrome);border-color:var(--ic-button-secondary-border-pressed-monochrome);color:var(--ic-button-secondary-text-pressed-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-secondary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-secondary.ic-button-loading.monochrome) .button{background-color:var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;border-color:var(--ic-button-secondary-border-pressed-monochrome);color:var(--ic-button-secondary-text-pressed-monochrome);--button-loading-inner-color:var(\n --ic-button-secondary-text-pressed-monochrome\n );--button-loading-outer-color:var(\n --ic-button-secondary-background-pressed-monochrome\n )}:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) .button{background:none;border-color:var(--ic-button-secondary-border-disabled-monochrome);color:var(--ic-button-secondary-text-disabled-monochrome)}:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) ::slotted(a){background:none !important}:host(.ic-button-variant-secondary.background.monochrome) .button,:host(.ic-button-variant-icon-secondary.background.monochrome) .button{background-color:var(--ic-button-secondary-background-monochrome)}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a){background-color:var(--ic-button-secondary-background-monochrome) !important}:host(.ic-button-variant-secondary.background.monochrome) .button:hover,:host(.ic-button-variant-icon-secondary.background.monochrome) .button:hover{background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a:hover){background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n ) !important}:host(.ic-button-variant-secondary.background.monochrome) .button:active,:host(.ic-button-variant-icon-secondary.background.monochrome) .button:active{background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a:active){background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n ) !important}:host(.ic-button-variant-tertiary) .button,:host(.ic-button-variant-icon-tertiary) .button,:host(.ic-button-variant-tertiary) ::slotted(a),:host(.ic-button-variant-icon-tertiary) ::slotted(a){color:var(--ic-button-tertiary-text-active);--ic-typography-color:var(--ic-button-tertiary-text-active)}:host(.ic-button-variant-tertiary) .button:hover,:host(.ic-button-variant-icon-tertiary) .button:hover{background-color:var(--ic-button-tertiary-background-hover-active);color:var(--ic-button-tertiary-text-hover-active)}:host(.ic-button-variant-tertiary) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary) ::slotted(a:hover){background-color:var(\n --ic-button-tertiary-background-hover-active\n ) !important}:host(.ic-button-variant-tertiary) .button:active,:host(.ic-button-variant-tertiary.ic-button-loading) .button,:host(.ic-button-variant-icon-tertiary) .button:active,:host(.ic-button-variant-icon-tertiary.ic-button-loading) .button{background-color:var(--ic-button-tertiary-background-pressed-active);color:var(--ic-button-tertiary-text-pressed-active);--button-loading-inner-color:var(--ic-button-tertiary-text-pressed-active);--button-loading-outer-color:var(--ic-button-tertiary-background-pressed)}:host(.ic-button-variant-tertiary) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary) ::slotted(a:active){background-color:var(\n --ic-button-tertiary-background-pressed-active\n ) !important}:host(.ic-button-variant-tertiary.ic-button-disabled) .button,:host(.ic-button-variant-icon-tertiary.ic-button-disabled) .button{color:var(--ic-button-tertiary-text-disabled);background:none}:host(.ic-button-variant-tertiary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-tertiary.ic-button-disabled) ::slotted(a){background:none !important}:host(.ic-button-variant-tertiary.background) .button,:host(.ic-button-variant-icon-tertiary.background) .button{background-color:var(--ic-button-tertiary-background)}:host(.ic-button-variant-tertiary.background) ::slotted(a),:host(.ic-button-variant-icon-tertiary.background) ::slotted(a){background-color:var(--ic-button-tertiary-background) !important}:host(.ic-button-variant-tertiary.background) .button:hover,:host(.ic-button-variant-icon-tertiary.background) .button:hover{background-image:var(--ic-button-tertiary-background-non-transparent-hover)}:host(.ic-button-variant-tertiary.background) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:hover){background-image:var(\n --ic-button-tertiary-background-non-transparent-hover\n ) !important}:host(.ic-button-variant-tertiary.background) .button:active,:host(.ic-button-variant-icon-tertiary.background) .button:active{background-image:var(--ic-button-tertiary-background-non-transparent-active)}:host(.ic-button-variant-tertiary.background) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:active){background-image:var(\n --ic-button-tertiary-background-non-transparent-active\n ) !important}:host(.ic-button-variant-tertiary.monochrome) .button,:host(.ic-button-variant-tertiary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.monochrome) .button,:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a){color:var(--ic-button-tertiary-text-monochrome);--ic-typography-color:var(--ic-button-tertiary-text-monochrome)}:host(.ic-button-variant-tertiary.monochrome) .button:hover,:host(.ic-button-variant-icon-tertiary.monochrome) .button:hover{background-color:var(--ic-button-tertiary-background-hover-monochrome);color:var(--ic-button-tertiary-text-hover-monochrome)}:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-tertiary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-tertiary.monochrome) .button:active,:host(.ic-button-variant-tertiary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-tertiary.monochrome) .button:active,:host(.ic-button-variant-icon-tertiary.ic-button-loading.monochrome) .button{background-color:var(--ic-button-tertiary-background-pressed-monochrome);color:var(--ic-button-tertiary-text-pressed-monochrome);--button-loading-inner-color:var(\n --ic-button-tertiary-text-pressed-monochrome\n );--button-loading-outer-color:var(\n --ic-button-tertiary-background-pressed-monochrome\n )}:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-tertiary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) .button{color:var(--ic-button-tertiary-text-disabled-monochrome);background:none}:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) ::slotted(a){background:none !important}:host(.ic-button-variant-tertiary.background.monochrome) .button,:host(.ic-button-variant-icon-tertiary.background.monochrome) .button{background-color:var(--ic-button-tertiary-background-monochrome)}:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a){background-color:var(--ic-button-tertiary-background-monochrome) !important}:host(.ic-button-variant-tertiary.background.monochrome) .button:hover,:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:hover{background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n )}:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a:hover){background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n ) !important}:host(.ic-button-variant-tertiary.background.monochrome) .button:active,:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:active{background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n )}:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a:active){background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n ) !important}:host(.ic-button-variant-destructive) .button,:host(.ic-button-variant-icon-destructive) .button{color:var(--ic-button-destructive-text);background-color:var(--ic-button-destructive-background);text-transform:uppercase}:host(.ic-button-variant-destructive) ::slotted(a),:host(.ic-button-variant-icon-destructive) ::slotted(a){color:var(--ic-button-destructive-text) !important;--ic-typography-color:var(--ic-button-destructive-text) !important;background-color:var(--ic-button-destructive-background) !important;text-transform:uppercase !important}:host(.ic-button-variant-destructive) .button:hover,:host(.ic-button-variant-icon-destructive) .button:hover{background-color:var(--ic-button-destructive-background-hover)}:host(.ic-button-variant-destructive) ::slotted(a:hover),:host(.ic-button-variant-icon-destructive) ::slotted(a:hover){background-color:var(--ic-button-destructive-background-hover) !important}:host(.ic-button-variant-destructive) .button:active,:host(.ic-button-variant-destructive.ic-button-loading) .button,:host(.ic-button-variant-icon-destructive.ic-button-loading) .button{color:var(--ic-button-primary-text);background-color:var(--ic-button-destructive-background-pressed);--button-loading-inner-color:var(--ic-button-primary-text);--button-loading-outer-color:var(--ic-button-destructive-background-pressed)}:host(.ic-button-variant-destructive) ::slotted(a:active),:host(.ic-button-variant-icon-destructive) ::slotted(a:active){background-color:var(--ic-button-destructive-background-pressed) !important}:host(.ic-button-variant-destructive.ic-button-disabled) .button,:host(.ic-button-variant-icon-destructive.ic-button-disabled) .button{background-color:var(--ic-button-destructive-background-disabled);color:var(--ic-button-destructive-text-disabled)}:host(.ic-button-variant-destructive.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-destructive.ic-button-disabled) ::slotted(a){background-color:var(--ic-button-destructive-background-disabled) !important}:host(.ic-button-variant-icon) .button{color:var(--ic-button-icon-color);background-color:var(--ic-button-icon-color-background);min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon) ::slotted(a){color:var(--ic-button-icon-color);background-color:var(--ic-button-icon-color-background) !important;min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-variant-icon) .button:hover{color:var(--ic-button-icon-color-hover);background-color:var(--ic-button-icon-color-background-hover)}:host(.ic-button-variant-icon) ::slotted(a:hover){color:var(--ic-button-icon-color-hover);background-color:var(--ic-button-icon-color-background-hover) !important}:host(.ic-button-variant-icon) .button:active:not(:focus),:host(.ic-button-variant-icon.ic-button-loading) .button{color:var(--ic-button-icon-color-active);background-color:var(--ic-button-icon-color-background-active)}:host(.ic-button-variant-icon) ::slotted(a:active:not(:focus)){color:var(--ic-button-icon-color-active);background-color:var(--ic-button-icon-color-background-active) !important}:host(.ic-button-variant-icon.ic-button-disabled) .button{color:var(--ic-color-icon-disabled-mid);background:none}:host(.ic-button-variant-icon.ic-button-disabled) ::slotted(a){color:var(--ic-color-icon-disabled-mid);background:none !important}:host(.ic-button-variant-icon-primary) .button,:host(.ic-button-variant-icon-primary) ::slotted(a){min-width:0;gap:var(--ic-space-xs);color:var(--ic-button-primary-icon)}:host(.ic-button-variant-icon-primary.monochrome) .button,:host(.ic-button-variant-primary.monochrome:not(.ic-button-disabled)) ::slotted(svg){color:var(--ic-button-primary-icon-monochrome)}:host(.ic-button-variant-icon-primary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-variant-icon.monochrome) ::slotted(a),:host(.ic-button-variant-icon.monochrome) ::slotted(svg){color:var(--ic-button-icon-monochrome)}:host(.ic-button-variant-icon-secondary) .button,:host(.ic-button-variant-icon-secondary) ::slotted(a){min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon-secondary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-variant-icon-tertiary) .button,:host(.ic-button-variant-icon-tertiary) ::slotted(a){min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon-tertiary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-variant-icon-destructive) .button,:host(.ic-button-variant-icon-destructive) ::slotted(a){min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon-destructive) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-size-medium) .button{height:var(--height, 2.5rem);padding:var(--ic-space-xs) var(--ic-space-md)}:host(.ic-button-size-medium) ::slotted(a){height:var(--height, 2.5rem) !important;padding:var(--ic-space-xs) var(--ic-space-md) !important}:host(.ic-button-size-small) .button{height:var(--height, var(--ic-space-xl));padding:var(--ic-space-xxs) var(--ic-space-md)}:host(.ic-button-size-small) ::slotted(a){height:var(--height, var(--ic-space-xl)) !important;padding:var(--ic-space-xxs) var(--ic-space-md) !important}:host(.ic-button-size-large) .button{height:var(--height, var(--ic-space-xxl));padding:var(--ic-space-sm) var(--ic-space-md)}:host(.ic-button-size-large) ::slotted(a){height:var(--height, var(--ic-space-xxl)) !important;padding:var(--ic-space-sm) var(--ic-space-md) !important}:host(.ic-button-size-medium.ic-button-variant-icon) .button,:host(.ic-button-size-medium.ic-button-variant-icon-primary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-destructive) .button{height:var(--height, var(--ic-space-xl));width:var(--ic-space-xl);padding:0.375rem}:host(.ic-button-size-medium.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-destructive) ::slotted(a){height:var(--height, var(--ic-space-xl)) !important;width:var(--ic-space-xl) !important;padding:0.375rem !important}:host(.ic-button-size-small.ic-button-variant-icon) .button,:host(.ic-button-size-small.ic-button-variant-icon-primary) .button,:host(.ic-button-size-small.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-small.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-small.ic-button-variant-icon-destructive) .button{height:var(--height, var(--ic-space-lg));width:var(--ic-space-lg);padding:var(--ic-space-xxs)}:host(.ic-button-size-small.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-destructive) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon) ::slotted(a){height:var(--height, var(--ic-space-lg)) !important;width:var(--ic-space-lg) !important;padding:var(--ic-space-xxs) !important}:host(.ic-button-size-large.ic-button-variant-icon) .button,:host(.ic-button-size-large.ic-button-variant-icon-primary) .button,:host(.ic-button-size-large.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-large.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button{height:var(--height, 2.5rem);width:2.5rem;padding:var(--ic-space-xs)}:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button,:host(.ic-button-size-large.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-destructive) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon) ::slotted(a){height:var(--height, 2.5rem) !important;width:2.5rem !important;padding:var(--ic-space-xs) !important}:host(.ic-button-full-width),:host(.ic-button-full-width) .button{width:100%}:host(.ic-button-full-width) ::slotted(a){width:100% !important}div.loading-container{position:relative;align-items:center;width:100%}.loading-indicator-icon-button{--circular-diameter:var(--ic-space-md)}:host(.ic-button-size-small) .loading-indicator-icon-button{--circular-diameter:calc(var(--ic-space-sm) + var(--ic-space-xxxs))}:host(.ic-button-size-large) .loading-indicator-icon-button{--circular-diameter:calc(var(--ic-space-sm) + var(--ic-space-xs))}ic-loading-indicator{--inner-color:var(--button-loading-inner-color);--outer-color:var(--button-loading-outer-color), transparent}@keyframes loading-animation{0%{width:0%;left:0%}25%{width:0%;left:0%;opacity:0}50%{width:100%;left:0%;opacity:1}75%{width:0%;left:100%}100%{width:0%;left:100%;opacity:0}}div.icon-container{box-sizing:border-box;width:var(--ic-space-lg);height:var(--ic-space-lg);display:flex;justify-content:center;align-items:center;margin-right:var(--ic-space-xs)}div.right-icon{margin-right:auto;margin-left:var(--ic-space-xs)}:host(.ic-button-full-width) .right-icon{margin-right:var(--ic-space-xs)}::slotted(:not(ic-badge)){width:var(--icon-width) !important;height:var(--icon-height) !important;fill:currentcolor !important;pointer-events:none}:host(.ic-button-variant-icon) .button .icon-container{margin:0;pointer-events:none}:host(.search-submit-button) ::slotted(svg){--icon-height:1.25rem;--icon-width:1.25rem;color:var(--ic-atoms-input-search-button)}:host(.search-submit-button-small) ::slotted(svg){--icon-height:1rem;--icon-width:1rem;color:var(--ic-atoms-input-search-button)}:host(.search-submit-button) .button:focus{box-shadow:none}:host(.search-submit-button) .button:not(:active):focus{box-shadow:none;background-color:var(--ic-action-default-bg-hover)}:host(.search-submit-button) .button:not(:active):focus ::slotted(svg){color:var(--ic-button-primary-text)}:host(.search-submit-button){display:flex;align-items:center;margin:0 var(--ic-space-xxs)}:host(.ic-button-variant-icon) .button,:host(.ic-button-variant-icon) ::slotted(a){background-color:inherit;min-width:0;gap:var(--ic-space-xs)}:host(.button-variant-icon) .button,:host(.button-variant-icon) ::slotted(a){color:var(--button-default);min-width:0;gap:var(--ic-space-xs)}:host(.button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.button-variant-icon) .button:hover,:host(.button-variant-icon) ::slotted(a:hover){background-color:var(--button-default-background-hover);color:var(--button-default-hover)}:host(.button-variant-icon) .button:active:not(:focus),:host(.button-variant-icon) ::slotted(a:active:not(:focus)),:host(.button-variant-icon.loading) .button{background-color:var(--button-default-background-active);color:var(--button-default-active)}:host(.button-variant-icon.disabled) .button,:host(.button-variant-icon.disabled) ::slotted(a){color:var(--ic-color-icon-disabled-mid);background:none}:host(.clear-button){color:var(--ic-atoms-input-clear-button);margin:0 var(--ic-space-xxs)}:host(.clear-button) .button:focus,:host(.calendar-button) .button:focus,:host(.clock-button) .button:focus{box-shadow:none}:host(.clear-button) .button,:host(.clear-button) ::slotted(a){background-color:inherit;color:var(--ic-atoms-input-clear-button)}:host(.clear-button) .button:hover,:host(.clear-button) ::slotted(a:hover){color:var(--ic-atoms-input-clear-button)}:host(.clear-button) .button:not(:active):focus ::slotted(svg){background-color:var(--ic-atoms-input-clear-button-focus-inner);color:var(--ic-button-primary-text);}:host(.menu-close-button) ::slotted(svg){--icon-height:0.875rem;--icon-width:0.875rem;color:var(--ic-top-navigation-icon-active)}:host(.popout-menu-button) .button{height:var(--height);justify-content:left;border-radius:0;white-space:pre-line;text-align:start}:host(.popout-menu-button) div.icon-container{flex:none}:host(.popout-menu-button) .button:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}.ic-button-describedby{display:none}:host .ic-tooltip{display:block}:host .arrow-dropdown{margin-top:auto}:host .dropdown-expanded{transform:rotate(180deg);margin-bottom:var(--ic-space-xxxs)}:host(.dropdown-no-icon) .button{padding-right:var(--ic-space-xs)}slot[name="router-item"]::slotted(a){pointer-events:all}::slotted(a){font-size:0.875rem !important;border:none !important;vertical-align:middle !important}:host(#menu-button.ic-theme-dark){--ic-button-secondary-background-hover-monochrome:var(\n --ic-action-dark-bg-hover\n );--ic-button-secondary-background-pressed-monochrome:var(\n --ic-action-dark-bg-pressed\n );--ic-button-secondary-text-hover-monochrome:var(\n --ic-action-monochrome-hover-dark\n );--ic-button-secondary-text-pressed-monochrome:var(\n --ic-action-monochrome-pressed-dark\n );--ic-button-secondary-border-hover-monochrome:var(\n --ic-color-border-neutral-hover-dark\n );--ic-button-secondary-border-pressed-monochrome:var(\n --ic-color-border-neutral-pressed-dark\n )}:host(#menu-button.ic-theme-light){--ic-button-secondary-background-hover-monochrome:var(\n --ic-action-light-bg-hover\n );--ic-button-secondary-background-pressed-monochrome:var(\n --ic-action-light-bg-pressed\n );--ic-button-secondary-text-hover-monochrome:var(\n --ic-action-monochrome-hover\n );--ic-button-secondary-text-pressed-monochrome:var(\n --ic-action-monochrome-pressed\n );--ic-button-secondary-border-hover-monochrome:var(\n --ic-color-border-neutral-hover-light\n );--ic-button-secondary-border-pressed-monochrome:var(\n --ic-color-border-neutral-default\n )}@media (forced-colors: active){.button,::slotted(a){border:0.125rem solid transparent !important}.search-submit-button ::slotted(a),.ic-button-variant-icon ::slotted(a),.clear-button ::slotted(a),.search-submit-button ::slotted(svg),.ic-button-variant-icon ::slotted(svg),.clear-button ::slotted(svg){color:HighlightText}:host(.ic-button-variant-icon.monochrome) ::slotted(a),:host(.ic-button-variant-icon.monochrome) ::slotted(svg){color:white}:host(.clear-button) .button:not(:active):focus ::slotted(svg){color:white !important;background-color:inherit}:host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg){color:currentcolor !important}}:host(.flip) ::slotted(svg){transform:scaleX(-1)}';const p=g;var y=undefined&&undefined.__rest||function(t,o){var n={};for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&o.indexOf(i)<0)n[i]=t[i];if(t!=null&&typeof Object.getOwnPropertySymbols==="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++){if(o.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r]))n[i[r]]=t[i[r]]}return n};let k=0;const f=class{constructor(i){t(this,i);this.icBlur=o(this,"icBlur",7);this.icFileSelection=o(this,"icFileSelection",7);this.icFocus=o(this,"icFocus",7);this.buttonIdNum=k++;this.hasTooltip=false;this.inheritedAttributes={};this.describedbyEl=null;this.mutationObserver=null;this.hostMutationObserver=null;this.ariaLabel="";this.title="";this.accept="*";this.disabled=false;this.disableTooltip=false;this.download=false;this.dropdown=false;this.dropdownExpanded=false;this.fileUpload=false;this.fileInputName=`ic-button-file-upload-input-${k++}`;this.fullWidth=false;this.loading=false;this.monochrome=false;this.multiple=false;this.size="medium";this.theme="inherit";this.tooltipFixedPositioning=false;this.tooltipPlacement="bottom";this.transparentBackground=true;this.type="button";this.variant="primary";this.getSlottedIcon=t=>this.el.querySelector(`[slot="${t}-icon"]`);this.handleClick=()=>{if((this.el.type==="submit"||this.el.type==="reset")&&!this.hasRouterSlot()&&(this.form||!!this.el.closest("FORM"))){const t=this.form?document.querySelector(`form[id=${this.form}]`):this.el.closest("FORM");e(t,this.el)}};this.handleKeyDown=t=>{if(t.key==="Escape"&&this.hasTooltip){this.closeButtonTooltip(t)}};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=()=>{this.icBlur.emit()};this.updateAriaDescribedbyClone=()=>{var t,o;if(this.describedbyNode){const n=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("#describedby-wrapper");if(!n){(o=this.el.shadowRoot)===null||o===void 0?void 0:o.appendChild(Object.assign(document.createElement("div"),{id:"describedby-wrapper",className:"ic-button-describedby"}))}while(n===null||n===void 0?void 0:n.firstChild)n.firstChild.remove();n===null||n===void 0?void 0:n.appendChild(this.describedbyNode)}};this.mutationCallback=()=>{var t;if(this.describedbyEl)this.describedbyNode=(t=this.describedbyEl)===null||t===void 0?void 0:t.cloneNode(true)};this.hostMutationCallback=t=>{let o=false;t.forEach((({attributeName:t})=>{if(t){const n=this.el.getAttribute(t);if(n){if(t==="title")this.title=n;else if(t==="aria-label")this.ariaLabel=n;if(s.includes(t)){this.inheritedAttributes[t]=n;o=true}}}}));if(o){n(this)}};this.setHasTooltip=()=>{this.hasTooltip=!this.disableTooltip&&(!!this.title||!!this.isIconVariant())};this.isIconVariant=()=>this.variant.startsWith("icon");this.arrangeRouterItem=()=>{var t;const o=(t,o)=>{Object.entries(o).forEach((([o,n])=>{t.style.setProperty(o,n)}))};if(this.routerSlot){const n=document.createElement("ic-typography");o(n,{"font-family":"var(--ic-font-body-family)","font-size":"0.875rem","font-weight":"600"});o(this.routerSlot,{gap:"0"});const i=this.routerSlot.querySelector("svg");const r=i===null||i===void 0?void 0:i.getAttribute("slot");const a=document.createElement("div");if(i){o(i,{fill:"currentcolor"});if(r==="top-icon"){o(this.routerSlot,{display:"flex","flex-direction":"column","--height":"fit-content"})}else if(r){const t=r==="left-icon"?"right":"left";o(a,{[`margin-${t}`]:"var(--ic-space-xs)"})}a.append(i)}const c=this.routerSlot.querySelector("ic-badge");const e=(t=this.routerSlot.textContent)===null||t===void 0?void 0:t.trim();if(c)a.append(c);if(e)n.textContent=e;this.routerSlot.textContent="";if(r==="right-icon"){this.routerSlot.append(n);this.routerSlot.append(a)}else{this.routerSlot.append(a);this.routerSlot.append(n)}}}}watchDescribedbyNodeHandler(){this.updateAriaDescribedbyClone()}watchDisabledHandler(){u(this.disabled,this.el)}watchVariantHandler(t){if(t==="icon")this.variant="icon-tertiary"}disconnectedCallback(){var t,o;(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect();(o=this.hostMutationObserver)===null||o===void 0?void 0:o.disconnect()}componentWillUpdate(){if(this.loading){this.el.style.setProperty("--min-width",`${this.el.getBoundingClientRect().width}px`)}this.setHasTooltip()}componentWillLoad(){const t=b(this.el,[...s,"title"]),{title:o,"aria-label":n}=t,i=y(t,["title","aria-label"]);this.title=o;this.ariaLabel=n;this.inheritedAttributes=i;u(this.disabled,this.el);this.el.setAttribute("exportparts","button");this.id=this.el.id||null;this.setHasTooltip();if(!this.hasTooltip){const t=this.inheritedAttributes["aria-describedby"];if(t){this.describedById=t;const o=document.querySelector(`#${t}`);if(o){this.describedbyEl=o;this.describedbyNode=o.cloneNode(true)}}}if(this.variant==="icon"){this.variant="icon-tertiary"}}componentDidLoad(){this.updateTheme();if(typeof MutationObserver!=="undefined"){if(this.describedbyEl&&this.describedById){this.mutationObserver=new MutationObserver(this.mutationCallback);this.mutationObserver.observe(this.describedbyEl,{characterData:true,childList:true,subtree:true})}this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true});if(this.hasRouterSlot())this.arrangeRouterItem()}this.updateAriaDescribedbyClone()}componentWillRender(){const t=this.getSlottedIcon("left")||this.getSlottedIcon("right");t===null||t===void 0?void 0:t.setAttribute("viewBox","0 0 24 24")}handleHostClick(t){if(!this.hasRouterSlot()){if(this.fileUpload){d(this.icFileSelection,this.el,!!this.multiple,!!this.disabled,this.accept,this.fileInputName,this.selectedFiles)}if(this.disabled||this.loading){t.stopImmediatePropagation()}if(this.dropdown){this.dropdownExpanded=!this.dropdownExpanded}}}brandChangeHandler({detail:t}){this.updateTheme(t.mode)}async setFocus(){var t;(t=this.buttonEl)===null||t===void 0?void 0:t.focus()}async closeButtonTooltip(t){var o;const n=(o=this.el.shadowRoot)===null||o===void 0?void 0:o.querySelector("ic-tooltip");if(n&&await n.isTooltipVisible()){n.displayTooltip(false);t.preventDefault();t.stopImmediatePropagation()}}hasRouterSlot(){this.routerSlot=this.el.querySelector('[slot="router-item"]');if(this.routerSlot){this.routerSlot.ariaLabel=this.routerSlot.textContent}return!!this.routerSlot}updateTheme(t=null){const o=h(this.el,t);if(o!==l.Default){this.theme=o===l.Light?l.Dark:l.Light;this.monochrome=true}}render(){const{ariaControlsId:t,ariaLabel:o,ariaOwnsId:n,buttonIdNum:a,describedById:e,disabled:s,download:u,dropdown:b,dropdownExpanded:d,form:h,formaction:l,formenctype:g,formmethod:p,formnovalidate:y,formtarget:k,fullWidth:f,handleClick:x,handleKeyDown:w,hasTooltip:z,href:j,hreflang:$,id:O,inheritedAttributes:H,isIconVariant:B,loading:F,monochrome:L,onBlur:D,onFocus:M,referrerpolicy:C,rel:I,size:T,target:N,theme:R,title:W,tooltipFixedPositioning:P,tooltipPlacement:V,transparentBackground:q,type:E,variant:K}=this;const S=j?"a":"button";const A=S==="button"?{type:E,disabled:s,form:h,formaction:l,formenctype:g,formmethod:p,formnovalidate:y,formtarget:k}:{download:u!==false?u:null,href:j,rel:I,target:N,referrerpolicy:C,hreflang:$};const U=z?`ic-button-with-tooltip-${O||a}`:undefined;const X=!z?e:`ic-tooltip-${U}`;const Z=!!this.getSlottedIcon("left");const G=!!this.getSlottedIcon("right");const J=()=>this.hasRouterSlot()?i("slot",{name:"router-item"}):i(S,Object.assign({class:"button",tabindex:0,"aria-disabled":F||s?"true":null,"aria-label":F?"Loading":o,"aria-expanded":b&&`${d}`},A,H,{onFocus:M,onBlur:D,ref:t=>this.buttonEl=t,"aria-describedby":X,part:"button"}),F?i("div",{class:"loading-container"},i("ic-loading-indicator",{type:B()?"circular":"linear",class:{"loading-indicator-icon-button":B()},monochrome:L,theme:R})):i(c,null,(Z||!!this.getSlottedIcon("top")&&!G)&&i("div",{class:"icon-container"},i("slot",{name:`${Z?"left":"top"}-icon`})),i("slot",null),!b?G&&i("div",{class:{"icon-container":true,"right-icon":true}},i("slot",{name:"right-icon"})):K!=="icon"&&K!=="destructive"&&i("span",{class:d?"dropdown-expanded":"arrow-dropdown",innerHTML:m})));return i(r,{key:"5d19b218bf34583c006b50906d38f2b2f23e6de4",class:{"ic-button-disabled":s&&!F,"ic-button-full-width":f,"ic-button-loading":F,[`ic-button-size-${T}`]:true,[`ic-button-variant-${K}`]:true,[`ic-theme-${R}`]:R!=="inherit",background:(K==="secondary"||K==="tertiary")&&!q&&!s,"dropdown-no-icon":b&&!v(this.el,"icon")&&!v(this.el,"left-icon"),monochrome:L,"top-icon":v(this.el,"top-icon"),"with-badge":v(this.el,"badge")},onClick:x,onKeyDown:w,"aria-owns":n,"aria-controls":t,"aria-expanded":b&&`${d}`},z&&i("ic-tooltip",{key:"3a98d7964db1aefbf0bbbc1c9bce37691a9228d5",id:X,label:W||o,target:U,placement:V,fixedPositioning:P,silent:B()&&!!o},i(J,{key:"a339ab15fa9e34c40637b9bffb552740ac5f8cf5"})),v(this.el,"badge")&&i("slot",{key:"c872b2e8af66531cf0743fca487eb235bb1ef72d",name:"badge"}),!z&&i(J,{key:"927760003908f8c3a47ffb8db55e183278da8e93"}))}static get delegatesFocus(){return true}get el(){return a(this)}static get watchers(){return{describedbyNode:["watchDescribedbyNodeHandler"],disabled:["watchDisabledHandler"],variant:["watchVariantHandler"]}}};f.style=p;export{f as B};
|
|
2
|
+
//# sourceMappingURL=p-f65f0065.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["icButtonCss","IcButtonStyle0","buttonIds","Button","constructor","hostRef","this","buttonIdNum","hasTooltip","inheritedAttributes","describedbyEl","mutationObserver","hostMutationObserver","ariaLabel","title","accept","disabled","disableTooltip","download","dropdown","dropdownExpanded","fileUpload","fileInputName","fullWidth","loading","monochrome","multiple","size","theme","tooltipFixedPositioning","tooltipPlacement","transparentBackground","type","variant","getSlottedIcon","position","el","querySelector","handleClick","hasRouterSlot","form","closest","document","handleHiddenFormButtonClick","handleKeyDown","ev","key","closeButtonTooltip","onFocus","icFocus","emit","onBlur","icBlur","updateAriaDescribedbyClone","describedbyNode","wrapper","_a","shadowRoot","_b","appendChild","Object","assign","createElement","id","className","firstChild","remove","mutationCallback","cloneNode","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","attribute","getAttribute","IC_INHERITED_ARIA","includes","forceUpdate","setHasTooltip","isIconVariant","startsWith","arrangeRouterItem","setStyles","element","styles","entries","value","style","setProperty","routerSlot","icTypography","gap","icon","iconSlot","iconWrapper","fill","display","marginPlacement","append","badge","label","textContent","trim","watchDescribedbyNodeHandler","watchDisabledHandler","removeDisabledFalse","watchVariantHandler","newVariant","disconnectedCallback","disconnect","componentWillUpdate","getBoundingClientRect","width","componentWillLoad","inheritAttributes","restInheritedAttributes","__rest","setAttribute","describedById","componentDidLoad","updateTheme","MutationObserver","observe","characterData","childList","subtree","attributes","componentWillRender","iconEl","handleHostClick","event","renderFileHiddenInput","icFileSelection","selectedFiles","stopImmediatePropagation","brandChangeHandler","detail","mode","setFocus","buttonEl","focus","tooltip","isTooltipVisible","displayTooltip","preventDefault","foregroundColor","getBrandFromContext","IcBrandForegroundEnum","Default","Light","Dark","render","ariaControlsId","ariaOwnsId","formaction","formenctype","formmethod","formnovalidate","formtarget","href","hreflang","referrerpolicy","rel","target","TagType","buttonAttrs","buttonId","undefined","describedby","hasLeftIcon","hasRightIcon","ButtonContent","h","name","class","tabindex","ref","part","Fragment","innerHTML","arrowDropdown","Host","background","isSlotUsed","onClick","onKeyDown","placement","fixedPositioning","silent"],"sources":["../web-components/src/components/ic-button/ic-button.css?tag=ic-button&encapsulation=shadow","../web-components/src/components/ic-button/ic-button.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n* @prop --min-width: Minimum width of the button.\n* @prop --height: The height of the button.\n*/\n\n:host {\n display: inline-block;\n position: relative;\n\n --icon-width: 100%;\n --icon-height: 100%;\n}\n\n.button,\n::slotted(a) {\n font-family: var(--ic-font-body-family);\n text-decoration: none;\n font-weight: 600;\n font-size: 0.875rem;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n min-width: var(--min-width, 6.25rem);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n}\n\n:host(.with-badge) .button {\n border-radius: 0.2188rem;\n}\n\n.button:hover,\n::slotted(a:hover) {\n cursor: pointer;\n}\n\n.button:focus,\n::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n}\n\n.button:focus-visible,\n::slotted(a:focus-visible) {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.ic-button-disabled),\n:host(.ic-button-disabled) .button,\n:host(.ic-button-disabled) ::slotted(a),\n:host(.ic-button-loading),\n:host(.ic-button-loading) .button {\n pointer-events: none;\n}\n\n:host(.top-icon) .button {\n flex-direction: column;\n\n --height: fit-content;\n}\n\n:host(.top-icon) .button .icon-container {\n margin-right: 0;\n}\n\n/* Variants */\n\n/* Primary */\n\n:host(.ic-button-variant-primary) .button,\n:host(.ic-button-variant-icon-primary) .button {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background);\n}\n\n:host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg) {\n color: var(--ic-button-primary-icon);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a),\n:host(.ic-button-variant-icon-primary) ::slotted(a) {\n --ic-typography-color: var(--ic-button-primary-text);\n\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background) !important;\n}\n\n:host(.ic-button-variant-primary) .button:hover,\n:host(.ic-button-variant-icon-primary) .button:hover {\n background-color: var(--ic-button-primary-background-hover);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-primary) ::slotted(a:hover) {\n background-color: var(--ic-button-primary-background-hover) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-loading) .button,\n:host(.ic-button-variant-primary) .button:active,\n:host(.ic-button-variant-icon-primary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-primary) .button:active {\n background-color: var(--ic-button-primary-background-pressed);\n\n --button-loading-inner-color: var(--ic-button-primary-text);\n --button-loading-outer-color: var(--ic-button-primary-background-pressed);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a:active),\n:host(.ic-button-variant-icon-primary) ::slotted(a:active) {\n background-color: var(--ic-button-primary-background-pressed) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-primary.ic-button-disabled) .button {\n background: var(--ic-button-primary-background-disabled);\n color: var(--ic-button-primary-text-disabled);\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-primary.ic-button-disabled) ::slotted(a) {\n background: var(--ic-button-primary-background-disabled) !important;\n\n --ic-typography-color: var(--ic-button-primary-text-disabled) !important;\n\n color: var(--ic-button-primary-text-disabled) !important;\n}\n\n/* Primary - monochrome */\n\n:host(.ic-button-variant-primary.monochrome) .button,\n:host(.ic-button-variant-icon-primary.monochrome) .button {\n color: var(--ic-button-primary-text-monochrome);\n background-color: var(--ic-button-primary-background-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a) {\n background-color: var(--ic-button-primary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-primary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-primary.monochrome) .button:hover {\n background-color: var(--ic-button-primary-background-hover-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-primary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-primary.monochrome) .button:active,\n:host(.ic-button-variant-icon-primary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-primary.monochrome) .button:active {\n background-color: var(--ic-button-primary-background-pressed-monochrome);\n\n --button-loading-inner-color: var(--ic-button-primary-text-monochrome);\n --button-loading-outer-color: var(--ic-button-primary-background-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-primary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) .button {\n background-color: var(--ic-button-primary-background-disabled-monochrome);\n color: var(--ic-button-primary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background-color: var(\n --ic-button-primary-background-disabled-monochrome\n ) !important;\n}\n\n/* Secondary */\n\n:host(.ic-button-variant-secondary) .button,\n:host(.ic-button-variant-icon-secondary) .button {\n border: var(--ic-border-width) solid var(--ic-button-secondary-border);\n color: var(--ic-button-secondary-text);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a),\n:host(.ic-button-variant-icon-secondary) ::slotted(a) {\n border: var(--ic-border-width) solid var(--ic-button-secondary-border) !important;\n color: var(--ic-button-secondary-text) !important;\n\n --ic-typography-color: var(--ic-button-secondary-text) !important;\n}\n\n:host(.ic-button-variant-secondary) .button:hover,\n:host(.ic-button-variant-icon-secondary) .button:hover {\n background-color: var(--ic-button-secondary-background-hover-active);\n border-color: var(--ic-button-secondary-border-hover);\n color: var(--ic-button-secondary-text-hover-active);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-hover-active\n ) !important;\n}\n\n:host(.ic-button-variant-secondary) .button:active,\n:host(.ic-button-variant-icon-secondary) .button:active {\n border-color: var(--ic-button-secondary-border-pressed);\n background-color: var(--ic-button-secondary-background-pressed-active);\n color: var(--ic-button-secondary-text-pressed-active);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-pressed-active\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-loading) .button {\n border-color: var(--ic-button-secondary-border-pressed);\n background-color: var(\n --loading-button-background,\n var(--ic-button-secondary-background-pressed-active)\n ) !important;\n color: var(--ic-button-secondary-text-pressed-active);\n\n --button-loading-inner-color: var(--ic-button-secondary-border-pressed);\n --button-loading-outer-color: var(\n --ic-button-secondary-background-pressed-active\n );\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-disabled) .button {\n border-color: var(--ic-button-secondary-border-disabled);\n color: var(--ic-button-secondary-text-disabled);\n background: none;\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.ic-button-disabled) ::slotted(a) {\n background: none !important;\n}\n\n/* Secondary - non-transparent background */\n\n:host(.ic-button-variant-secondary.background) .button,\n:host(.ic-button-variant-icon-secondary.background) .button {\n background-color: var(--ic-button-secondary-background);\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a) {\n background-color: var(--ic-button-secondary-background) !important;\n}\n\n:host(.ic-button-variant-secondary.background) .button:hover,\n:host(.ic-button-variant-icon-secondary.background) .button:hover {\n background-image: var(--ic-button-secondary-background-non-transparent-hover);\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a:hover) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-hover\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background) .button:active,\n:host(.ic-button-variant-icon-secondary.background) .button:active {\n background-image: var(\n --ic-button-secondary-background-non-transparent-active\n );\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a:active) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-active\n ) !important;\n}\n\n/* Secondary - monochrome */\n\n:host(.ic-button-variant-secondary.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.monochrome) .button {\n background-color: none;\n border: var(--ic-border-width) solid\n var(--ic-button-secondary-border-monochrome);\n color: var(--ic-button-secondary-text-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a) {\n background-color: none !important;\n}\n\n:host(.ic-button-variant-secondary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-secondary.monochrome) .button:hover {\n background-color: var(--ic-button-secondary-background-hover-monochrome);\n border-color: var(--ic-button-secondary-border-hover-monochrome);\n color: var(--ic-button-secondary-text-hover-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.monochrome) .button:active,\n:host(.ic-button-variant-icon-secondary.monochrome) .button:active {\n background-color: var(--ic-button-secondary-background-pressed-monochrome);\n border-color: var(--ic-button-secondary-border-pressed-monochrome);\n color: var(--ic-button-secondary-text-pressed-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-loading.monochrome) .button {\n background-color: var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;\n border-color: var(--ic-button-secondary-border-pressed-monochrome);\n color: var(--ic-button-secondary-text-pressed-monochrome);\n\n --button-loading-inner-color: var(\n --ic-button-secondary-text-pressed-monochrome\n );\n --button-loading-outer-color: var(\n --ic-button-secondary-background-pressed-monochrome\n );\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) .button {\n background: none;\n border-color: var(--ic-button-secondary-border-disabled-monochrome);\n color: var(--ic-button-secondary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background: none !important;\n}\n\n/* Secondary - non-transparent background - monochrome */\n\n:host(.ic-button-variant-secondary.background.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button {\n background-color: var(--ic-button-secondary-background-monochrome);\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a) {\n background-color: var(--ic-button-secondary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) .button:hover,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button:hover {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n );\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.background.monochrome)\n ::slotted(a:hover) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) .button:active,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button:active {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n );\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.background.monochrome)\n ::slotted(a:active) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n ) !important;\n}\n\n/* Tertiary */\n\n:host(.ic-button-variant-tertiary) .button,\n:host(.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-variant-tertiary) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a) {\n color: var(--ic-button-tertiary-text-active);\n\n --ic-typography-color: var(--ic-button-tertiary-text-active);\n}\n\n:host(.ic-button-variant-tertiary) .button:hover,\n:host(.ic-button-variant-icon-tertiary) .button:hover {\n background-color: var(--ic-button-tertiary-background-hover-active);\n color: var(--ic-button-tertiary-text-hover-active);\n}\n\n:host(.ic-button-variant-tertiary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a:hover) {\n background-color: var(\n --ic-button-tertiary-background-hover-active\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary) .button:active,\n:host(.ic-button-variant-tertiary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-tertiary) .button:active,\n:host(.ic-button-variant-icon-tertiary.ic-button-loading) .button {\n background-color: var(--ic-button-tertiary-background-pressed-active);\n color: var(--ic-button-tertiary-text-pressed-active);\n\n --button-loading-inner-color: var(--ic-button-tertiary-text-pressed-active);\n --button-loading-outer-color: var(--ic-button-tertiary-background-pressed);\n}\n\n:host(.ic-button-variant-tertiary) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a:active) {\n background-color: var(\n --ic-button-tertiary-background-pressed-active\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled) .button {\n color: var(--ic-button-tertiary-text-disabled);\n background: none;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled) ::slotted(a) {\n background: none !important;\n}\n\n/* Tertiary - non-transparent background */\n\n:host(.ic-button-variant-tertiary.background) .button,\n:host(.ic-button-variant-icon-tertiary.background) .button {\n background-color: var(--ic-button-tertiary-background);\n}\n\n:host(.ic-button-variant-tertiary.background) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.background) ::slotted(a) {\n background-color: var(--ic-button-tertiary-background) !important;\n}\n\n:host(.ic-button-variant-tertiary.background) .button:hover,\n:host(.ic-button-variant-icon-tertiary.background) .button:hover {\n background-image: var(--ic-button-tertiary-background-non-transparent-hover);\n}\n\n:host(.ic-button-variant-tertiary.background) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:hover) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-hover\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.background) .button:active,\n:host(.ic-button-variant-icon-tertiary.background) .button:active {\n background-image: var(--ic-button-tertiary-background-non-transparent-active);\n}\n\n:host(.ic-button-variant-tertiary.background) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:active) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-active\n ) !important;\n}\n\n/* Tertiary - monochrome */\n\n:host(.ic-button-variant-tertiary.monochrome) .button,\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a) {\n color: var(--ic-button-tertiary-text-monochrome);\n\n --ic-typography-color: var(--ic-button-tertiary-text-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-tertiary.monochrome) .button:hover {\n background-color: var(--ic-button-tertiary-background-hover-monochrome);\n color: var(--ic-button-tertiary-text-hover-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-tertiary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.monochrome) .button:active,\n:host(.ic-button-variant-tertiary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.monochrome) .button:active,\n:host(.ic-button-variant-icon-tertiary.ic-button-loading.monochrome) .button {\n background-color: var(--ic-button-tertiary-background-pressed-monochrome);\n color: var(--ic-button-tertiary-text-pressed-monochrome);\n\n --button-loading-inner-color: var(\n --ic-button-tertiary-text-pressed-monochrome\n );\n --button-loading-outer-color: var(\n --ic-button-tertiary-background-pressed-monochrome\n );\n}\n\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-tertiary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) .button {\n color: var(--ic-button-tertiary-text-disabled-monochrome);\n background: none;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background: none !important;\n}\n\n/* Tertiary - non-transparent background - monochrome */\n\n:host(.ic-button-variant-tertiary.background.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.background.monochrome) .button {\n background-color: var(--ic-button-tertiary-background-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a) {\n background-color: var(--ic-button-tertiary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) .button:hover,\n:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:hover {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n );\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.background.monochrome)\n ::slotted(a:hover) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) .button:active,\n:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:active {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n );\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.background.monochrome)\n ::slotted(a:active) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n ) !important;\n}\n\n/* Destructive */\n\n:host(.ic-button-variant-destructive) .button,\n:host(.ic-button-variant-icon-destructive) .button {\n color: var(--ic-button-destructive-text);\n background-color: var(--ic-button-destructive-background);\n text-transform: uppercase;\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a),\n:host(.ic-button-variant-icon-destructive) ::slotted(a) {\n color: var(--ic-button-destructive-text) !important;\n\n --ic-typography-color: var(--ic-button-destructive-text) !important;\n\n background-color: var(--ic-button-destructive-background) !important;\n text-transform: uppercase !important;\n}\n\n:host(.ic-button-variant-destructive) .button:hover,\n:host(.ic-button-variant-icon-destructive) .button:hover {\n background-color: var(--ic-button-destructive-background-hover);\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a:hover),\n:host(.ic-button-variant-icon-destructive) ::slotted(a:hover) {\n background-color: var(--ic-button-destructive-background-hover) !important;\n}\n\n:host(.ic-button-variant-destructive) .button:active,\n:host(.ic-button-variant-destructive.ic-button-loading) .button,\n:host(.ic-button-variant-icon-destructive.ic-button-loading) .button {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-destructive-background-pressed);\n\n --button-loading-inner-color: var(--ic-button-primary-text);\n --button-loading-outer-color: var(--ic-button-destructive-background-pressed);\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a:active),\n:host(.ic-button-variant-icon-destructive) ::slotted(a:active) {\n background-color: var(--ic-button-destructive-background-pressed) !important;\n}\n\n:host(.ic-button-variant-destructive.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-destructive.ic-button-disabled) .button {\n background-color: var(--ic-button-destructive-background-disabled);\n color: var(--ic-button-destructive-text-disabled);\n}\n\n:host(.ic-button-variant-destructive.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-destructive.ic-button-disabled) ::slotted(a) {\n background-color: var(--ic-button-destructive-background-disabled) !important;\n}\n\n/***********************\n Icon Variants\n ***********************/\n\n/* Icon */\n\n:host(.ic-button-variant-icon) .button {\n color: var(--ic-button-icon-color);\n background-color: var(--ic-button-icon-color-background);\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a) {\n color: var(--ic-button-icon-color);\n background-color: var(--ic-button-icon-color-background) !important;\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.ic-button-variant-icon) .button:hover {\n color: var(--ic-button-icon-color-hover);\n background-color: var(--ic-button-icon-color-background-hover);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a:hover) {\n color: var(--ic-button-icon-color-hover);\n background-color: var(--ic-button-icon-color-background-hover) !important;\n}\n\n:host(.ic-button-variant-icon) .button:active:not(:focus),\n:host(.ic-button-variant-icon.ic-button-loading) .button {\n color: var(--ic-button-icon-color-active);\n background-color: var(--ic-button-icon-color-background-active);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a:active:not(:focus)) {\n color: var(--ic-button-icon-color-active);\n background-color: var(--ic-button-icon-color-background-active) !important;\n}\n\n:host(.ic-button-variant-icon.ic-button-disabled) .button {\n color: var(--ic-color-icon-disabled-mid);\n background: none;\n}\n\n:host(.ic-button-variant-icon.ic-button-disabled) ::slotted(a) {\n color: var(--ic-color-icon-disabled-mid);\n background: none !important;\n}\n\n/* Icon-primary */\n\n:host(.ic-button-variant-icon-primary) .button,\n:host(.ic-button-variant-icon-primary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n color: var(--ic-button-primary-icon);\n}\n\n:host(.ic-button-variant-icon-primary.monochrome) .button,\n:host(.ic-button-variant-primary.monochrome:not(.ic-button-disabled))\n ::slotted(svg) {\n color: var(--ic-button-primary-icon-monochrome);\n}\n\n:host(.ic-button-variant-icon-primary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n:host(.ic-button-variant-icon.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon.monochrome) ::slotted(svg) {\n color: var(--ic-button-icon-monochrome);\n}\n\n/* Icon-secondary */\n\n:host(.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-variant-icon-secondary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon-secondary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n/* Icon-tertiary */\n\n:host(.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-variant-icon-tertiary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon-tertiary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n/* Icon-destructive */\n\n:host(.ic-button-variant-icon-destructive) .button,\n:host(.ic-button-variant-icon-destructive) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon-destructive) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n/* Sizing */\n\n:host(.ic-button-size-medium) .button {\n height: var(--height, 2.5rem);\n padding: var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.ic-button-size-medium) ::slotted(a) {\n height: var(--height, 2.5rem) !important;\n padding: var(--ic-space-xs) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-small) .button {\n height: var(--height, var(--ic-space-xl));\n padding: var(--ic-space-xxs) var(--ic-space-md);\n}\n\n:host(.ic-button-size-small) ::slotted(a) {\n height: var(--height, var(--ic-space-xl)) !important;\n padding: var(--ic-space-xxs) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-large) .button {\n height: var(--height, var(--ic-space-xxl));\n padding: var(--ic-space-sm) var(--ic-space-md);\n}\n\n:host(.ic-button-size-large) ::slotted(a) {\n height: var(--height, var(--ic-space-xxl)) !important;\n padding: var(--ic-space-sm) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-medium.ic-button-variant-icon) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-destructive) .button {\n height: var(--height, var(--ic-space-xl));\n width: var(--ic-space-xl);\n padding: 0.375rem;\n}\n\n:host(.ic-button-size-medium.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-destructive) ::slotted(a) {\n height: var(--height, var(--ic-space-xl)) !important;\n width: var(--ic-space-xl) !important;\n padding: 0.375rem !important;\n}\n\n:host(.ic-button-size-small.ic-button-variant-icon) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-destructive) .button {\n height: var(--height, var(--ic-space-lg));\n width: var(--ic-space-lg);\n padding: var(--ic-space-xxs);\n}\n\n:host(.ic-button-size-small.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-destructive) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon) ::slotted(a) {\n height: var(--height, var(--ic-space-lg)) !important;\n width: var(--ic-space-lg) !important;\n padding: var(--ic-space-xxs) !important;\n}\n\n:host(.ic-button-size-large.ic-button-variant-icon) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button {\n height: var(--height, 2.5rem);\n width: 2.5rem;\n padding: var(--ic-space-xs);\n}\n\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon) ::slotted(a) {\n height: var(--height, 2.5rem) !important;\n width: 2.5rem !important;\n padding: var(--ic-space-xs) !important;\n}\n\n/* Width */\n:host(.ic-button-full-width),\n:host(.ic-button-full-width) .button {\n width: 100%;\n}\n\n:host(.ic-button-full-width) ::slotted(a) {\n width: 100% !important;\n}\n\n/* Loading */\n\ndiv.loading-container {\n position: relative;\n align-items: center;\n width: 100%;\n}\n\n.loading-indicator-icon-button {\n --circular-diameter: var(--ic-space-md);\n}\n\n:host(.ic-button-size-small) .loading-indicator-icon-button {\n --circular-diameter: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n}\n\n:host(.ic-button-size-large) .loading-indicator-icon-button {\n --circular-diameter: calc(var(--ic-space-sm) + var(--ic-space-xs));\n}\n\nic-loading-indicator {\n --inner-color: var(--button-loading-inner-color);\n --outer-color: var(--button-loading-outer-color), transparent;\n}\n\n@keyframes loading-animation {\n 0% {\n width: 0%;\n left: 0%;\n }\n\n 25% {\n width: 0%;\n left: 0%;\n opacity: 0;\n }\n\n 50% {\n width: 100%;\n left: 0%;\n opacity: 1;\n }\n\n 75% {\n width: 0%;\n left: 100%;\n }\n\n 100% {\n width: 0%;\n left: 100%;\n opacity: 0;\n }\n}\n\n/* Icons */\n\ndiv.icon-container {\n box-sizing: border-box;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: var(--ic-space-xs);\n}\n\ndiv.right-icon {\n margin-right: auto;\n margin-left: var(--ic-space-xs);\n}\n\n:host(.ic-button-full-width) .right-icon {\n margin-right: var(--ic-space-xs);\n}\n\n::slotted(:not(ic-badge)) {\n width: var(--icon-width) !important;\n height: var(--icon-height) !important;\n fill: currentcolor !important;\n pointer-events: none;\n}\n\n:host(.ic-button-variant-icon) .button .icon-container {\n margin: 0;\n pointer-events: none;\n}\n\n/** SEARCH **/\n\n:host(.search-submit-button) ::slotted(svg) {\n --icon-height: 1.25rem;\n --icon-width: 1.25rem;\n\n color: var(--ic-atoms-input-search-button);\n}\n\n:host(.search-submit-button-small) ::slotted(svg) {\n --icon-height: 1rem;\n --icon-width: 1rem;\n\n color: var(--ic-atoms-input-search-button);\n}\n\n:host(.search-submit-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.search-submit-button) .button:not(:active):focus {\n box-shadow: none;\n background-color: var(--ic-action-default-bg-hover);\n}\n\n:host(.search-submit-button) .button:not(:active):focus ::slotted(svg) {\n color: var(--ic-button-primary-text);\n}\n\n:host(.search-submit-button) {\n display: flex;\n align-items: center;\n margin: 0 var(--ic-space-xxs);\n}\n\n/** CLEAR & DISMISS **/\n\n:host(.ic-button-variant-icon) .button,\n:host(.ic-button-variant-icon) ::slotted(a) {\n background-color: inherit;\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.button-variant-icon) .button,\n:host(.button-variant-icon) ::slotted(a) {\n color: var(--button-default);\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.button-variant-icon) .button:hover,\n:host(.button-variant-icon) ::slotted(a:hover) {\n background-color: var(--button-default-background-hover);\n color: var(--button-default-hover);\n}\n\n:host(.button-variant-icon) .button:active:not(:focus),\n:host(.button-variant-icon) ::slotted(a:active:not(:focus)),\n:host(.button-variant-icon.loading) .button {\n background-color: var(--button-default-background-active);\n color: var(--button-default-active);\n}\n\n:host(.button-variant-icon.disabled) .button,\n:host(.button-variant-icon.disabled) ::slotted(a) {\n color: var(--ic-color-icon-disabled-mid);\n background: none;\n}\n\n:host(.clear-button) {\n color: var(--ic-atoms-input-clear-button);\n margin: 0 var(--ic-space-xxs);\n}\n\n:host(.clear-button) .button:focus,\n:host(.calendar-button) .button:focus,\n:host(.clock-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.clear-button) .button,\n:host(.clear-button) ::slotted(a) {\n background-color: inherit;\n color: var(--ic-atoms-input-clear-button);\n}\n\n:host(.clear-button) .button:hover,\n:host(.clear-button) ::slotted(a:hover) {\n color: var(--ic-atoms-input-clear-button);\n}\n\n:host(.clear-button) .button:not(:active):focus ::slotted(svg) {\n background-color: var(--ic-atoms-input-clear-button-focus-inner);\n color: var(--ic-button-primary-text);\n\n /* border: var(--ic-atoms-input-clear-button-focus-outer); */\n}\n\n:host(.menu-close-button) ::slotted(svg) {\n --icon-height: 0.875rem;\n --icon-width: 0.875rem;\n\n color: var(--ic-top-navigation-icon-active);\n}\n\n:host(.popout-menu-button) .button {\n height: var(--height);\n justify-content: left;\n border-radius: 0;\n white-space: pre-line;\n text-align: start;\n}\n\n:host(.popout-menu-button) div.icon-container {\n flex: none;\n}\n\n:host(.popout-menu-button) .button:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n.ic-button-describedby {\n display: none;\n}\n\n:host .ic-tooltip {\n display: block;\n}\n\n/** Dropdown **/\n\n:host .arrow-dropdown {\n margin-top: auto;\n}\n\n:host .dropdown-expanded {\n transform: rotate(180deg);\n margin-bottom: var(--ic-space-xxxs);\n}\n\n:host(.dropdown-no-icon) .button {\n padding-right: var(--ic-space-xs);\n}\n\n/** Slotted router item **/\n\nslot[name=\"router-item\"]::slotted(a) {\n pointer-events: all;\n}\n\n::slotted(a) {\n font-size: 0.875rem !important;\n border: none !important;\n vertical-align: middle !important;\n}\n\n/** menu button on top navigation\\side navigation \n * uses secondary monochrome tokens which are duplicated here to avoid multiple copies in each component\n */\n\n:host(#menu-button.ic-theme-dark) {\n --ic-button-secondary-background-hover-monochrome: var(\n --ic-action-dark-bg-hover\n );\n --ic-button-secondary-background-pressed-monochrome: var(\n --ic-action-dark-bg-pressed\n );\n --ic-button-secondary-text-hover-monochrome: var(\n --ic-action-monochrome-hover-dark\n );\n --ic-button-secondary-text-pressed-monochrome: var(\n --ic-action-monochrome-pressed-dark\n );\n --ic-button-secondary-border-hover-monochrome: var(\n --ic-color-border-neutral-hover-dark\n );\n --ic-button-secondary-border-pressed-monochrome: var(\n --ic-color-border-neutral-pressed-dark\n );\n}\n\n:host(#menu-button.ic-theme-light) {\n --ic-button-secondary-background-hover-monochrome: var(\n --ic-action-light-bg-hover\n );\n --ic-button-secondary-background-pressed-monochrome: var(\n --ic-action-light-bg-pressed\n );\n --ic-button-secondary-text-hover-monochrome: var(\n --ic-action-monochrome-hover\n );\n --ic-button-secondary-text-pressed-monochrome: var(\n --ic-action-monochrome-pressed\n );\n --ic-button-secondary-border-hover-monochrome: var(\n --ic-color-border-neutral-hover-light\n );\n --ic-button-secondary-border-pressed-monochrome: var(\n --ic-color-border-neutral-default\n );\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .button,\n ::slotted(a) {\n border: 0.125rem solid transparent !important;\n }\n\n .search-submit-button ::slotted(a),\n .ic-button-variant-icon ::slotted(a),\n .clear-button ::slotted(a),\n .search-submit-button ::slotted(svg),\n .ic-button-variant-icon ::slotted(svg),\n .clear-button ::slotted(svg) {\n color: HighlightText;\n }\n\n :host(.ic-button-variant-icon.monochrome) ::slotted(a),\n :host(.ic-button-variant-icon.monochrome) ::slotted(svg) {\n color: white;\n }\n\n :host(.clear-button) .button:not(:active):focus ::slotted(svg) {\n color: white !important;\n background-color: inherit;\n }\n\n :host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg) {\n color: currentcolor !important;\n }\n}\n\n/** Pagination **/\n\n:host(.flip) ::slotted(svg) {\n transform: scaleX(-1);\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Method,\n Prop,\n State,\n forceUpdate,\n h,\n Watch,\n Fragment,\n} from \"@stencil/core\";\n\nimport {\n getBrandFromContext,\n handleHiddenFormButtonClick,\n inheritAttributes,\n isSlotUsed,\n removeDisabledFalse,\n renderFileHiddenInput,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport { IcButtonTypes, IcButtonVariants } from \"./ic-button.types\";\nimport {\n IcSizes,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcThemeMode,\n IcButtonTooltipPlacement,\n IcIconPlacementOptions,\n} from \"../../utils/types\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet buttonIds = 0;\n\n/**\n * @slot left-icon - Content will be placed to the left of the button label.\n * @slot right-icon - Content will be placed to the right of the button label.\n * @slot top-icon - Content will be placed above the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n * @slot router-item - Handle routing by nesting your routes in this slot. Setting loading to true will have no impact on this slot.\n */\n@Component({\n tag: \"ic-button\",\n styleUrl: \"ic-button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Button {\n private buttonEl?: HTMLElement;\n private buttonIdNum = buttonIds++;\n private hasTooltip = false;\n private id: string | null;\n private inheritedAttributes: { [k: string]: string } = {};\n private describedbyEl: HTMLElement | null = null;\n private describedById?: string;\n private mutationObserver: MutationObserver | null = null;\n private hostMutationObserver: MutationObserver | null = null;\n private routerSlot: HTMLElement | null;\n\n @Element() el: HTMLIcButtonElement;\n\n @State() ariaLabel = \"\";\n @State() describedbyNode: Node | null;\n @Watch(\"describedbyNode\")\n watchDescribedbyNodeHandler(): void {\n this.updateAriaDescribedbyClone();\n }\n @State() title = \"\";\n\n /**\n * If `fileUpload` is set to `true`, this is the accepted list of file types.\n */\n @Prop() accept = \"*\";\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaControlsId?: string | boolean;\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaOwnsId?: string | boolean;\n\n /**\n * If `true`, the button will be in disabled state.\n */\n @Prop() disabled = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the ic-tooltip which is shown for icon variant will be disabled. Title or aria-label must be set if this prop is not applied.\n */\n @Prop() disableTooltip = false;\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download: string | boolean = false;\n\n /**\n * If `true`, the button will show a dropdown icon.\n */\n @Prop() dropdown = false;\n\n /**\n * If `true`, the aria-expanded value will be set to true. This is only applied if the dropdown prop is also true.\n */\n @Prop({ mutable: true, reflect: true }) dropdownExpanded = false;\n\n /**\n * If `true`, when the button is clicked the native file explorer will be launched.\n */\n @Prop() fileUpload = false;\n\n /**\n * The name of the control for the file input, which is submitted with the form data.\n */\n @Prop() fileInputName = `ic-button-file-upload-input-${buttonIds++}`;\n\n /**\n * The <form> element to associate the button with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the button. It overrides the action attribute of the button's form owner. Does nothing if there is no form owner.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the button's form owner.\n */\n @Prop() formtarget?: string;\n\n /**\n * If `true`, the button will fill the width of the container.\n */\n @Prop() fullWidth = false;\n\n /**\n * The URL that the link points to. This will render the button as an \"a\" tag.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * If `true`, the button will be in loading state.\n */\n @Prop() loading = false;\n\n /**\n * If `true`, the button will display as monochromatic in either `light` or `dark` theme.\n */\n @Prop({ mutable: true }) monochrome = false;\n\n /**\n * If `fileUpload` is set to `true`, this boolean determines whether multiple files are accepted.\n */\n @Prop() multiple = false;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The list of the files that have been selected by a user.\n */\n @Prop() selectedFiles?: FileList;\n\n /**\n * The size of the button to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop({ mutable: true }) theme: IcThemeMode = \"inherit\";\n\n /**\n * Setting to `true` can help in situations where tooltip content is clipped by a parent element.\n */\n @Prop() tooltipFixedPositioning: boolean = false;\n\n /**\n * The position of the tooltip in relation to the button.\n */\n @Prop() tooltipPlacement: IcButtonTooltipPlacement = \"bottom\";\n\n /**\n * If `true`, the secondary & tertiary variants of button will have a transparent background when not hovered, pressed or loading.\n */\n @Prop() transparentBackground = true;\n\n /**\n * The type of the button.\n */\n @Prop() type: IcButtonTypes = \"button\";\n\n /**\n * The variant of the button to be displayed.\n */\n @Prop({ mutable: true }) variant: IcButtonVariants = \"primary\";\n @Watch(\"variant\")\n watchVariantHandler(newVariant: IcButtonVariants): void {\n if (newVariant === \"icon\") this.variant = \"icon-tertiary\";\n }\n\n /**\n * Emitted when button has blur\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * If `fileUpload` is set to `true`, this will be emitted when a file is selected in the native explorer.\n */\n @Event() icFileSelection!: EventEmitter<FileList>;\n\n /**\n * Emitted when button has focus\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.mutationObserver?.disconnect();\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillUpdate(): void {\n if (this.loading) {\n this.el.style.setProperty(\n \"--min-width\",\n `${this.el.getBoundingClientRect().width}px`\n );\n }\n this.setHasTooltip();\n }\n\n componentWillLoad(): void {\n const {\n title,\n \"aria-label\": ariaLabel,\n ...restInheritedAttributes\n } = inheritAttributes(this.el, [...IC_INHERITED_ARIA, \"title\"]);\n\n this.title = title;\n this.ariaLabel = ariaLabel;\n this.inheritedAttributes = restInheritedAttributes;\n\n removeDisabledFalse(this.disabled, this.el);\n\n this.el.setAttribute(\"exportparts\", \"button\");\n\n this.id = this.el.id || null;\n this.setHasTooltip();\n\n if (!this.hasTooltip) {\n const describedById = this.inheritedAttributes[\"aria-describedby\"];\n if (describedById) {\n this.describedById = describedById;\n const el = document.querySelector<HTMLElement>(`#${describedById}`);\n if (el) {\n this.describedbyEl = el;\n this.describedbyNode = el.cloneNode(true);\n }\n }\n }\n\n if (this.variant === \"icon\") {\n this.variant = \"icon-tertiary\";\n }\n }\n\n componentDidLoad(): void {\n this.updateTheme();\n\n if (typeof MutationObserver !== \"undefined\") {\n if (this.describedbyEl && this.describedById) {\n this.mutationObserver = new MutationObserver(this.mutationCallback);\n this.mutationObserver.observe(this.describedbyEl, {\n characterData: true,\n childList: true,\n subtree: true,\n });\n }\n\n this.hostMutationObserver = new MutationObserver(\n this.hostMutationCallback\n );\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n\n if (this.hasRouterSlot()) this.arrangeRouterItem();\n }\n\n this.updateAriaDescribedbyClone();\n }\n\n componentWillRender(): void {\n const iconEl = this.getSlottedIcon(\"left\") || this.getSlottedIcon(\"right\");\n iconEl?.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (!this.hasRouterSlot()) {\n if (this.fileUpload) {\n renderFileHiddenInput(\n this.icFileSelection,\n this.el,\n !!this.multiple,\n !!this.disabled,\n this.accept,\n this.fileInputName,\n this.selectedFiles\n );\n }\n if (this.disabled || this.loading) {\n event.stopImmediatePropagation();\n }\n if (this.dropdown) {\n this.dropdownExpanded = !this.dropdownExpanded;\n }\n }\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.updateTheme(detail.mode);\n }\n\n /**\n * Sets focus on the native `button`.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.buttonEl?.focus();\n }\n\n private async closeButtonTooltip(ev: KeyboardEvent) {\n const tooltip = this.el.shadowRoot?.querySelector(\"ic-tooltip\");\n if (tooltip && (await tooltip.isTooltipVisible())) {\n tooltip.displayTooltip(false);\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n }\n\n private getSlottedIcon = (position: IcIconPlacementOptions) =>\n this.el.querySelector(`[slot=\"${position}-icon\"]`);\n\n private hasRouterSlot() {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n if (this.routerSlot) {\n this.routerSlot.ariaLabel = this.routerSlot.textContent;\n }\n return !!this.routerSlot;\n }\n\n private handleClick = () => {\n if (\n (this.el.type === \"submit\" || this.el.type === \"reset\") &&\n !this.hasRouterSlot() &&\n (this.form || !!this.el.closest(\"FORM\"))\n ) {\n const form = this.form\n ? document.querySelector<HTMLFormElement>(`form[id=${this.form}]`)\n : this.el.closest<HTMLFormElement>(\"FORM\");\n\n handleHiddenFormButtonClick(form, this.el);\n }\n };\n\n private handleKeyDown = (ev: KeyboardEvent) => {\n if (ev.key === \"Escape\" && this.hasTooltip) {\n this.closeButtonTooltip(ev);\n }\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private updateTheme(mode: IcBrandForeground | null = null) {\n const foregroundColor = getBrandFromContext(this.el, mode);\n if (foregroundColor !== IcBrandForegroundEnum.Default) {\n this.theme =\n foregroundColor === IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light;\n this.monochrome = true;\n }\n }\n\n /**\n * Creates/updates clone of aria-describedby element node tree in shadow dom\n * Required due to ids being scoped to the shadow dom\n */\n private updateAriaDescribedbyClone = () => {\n if (this.describedbyNode) {\n const wrapper = this.el.shadowRoot?.querySelector(\"#describedby-wrapper\");\n if (!wrapper) {\n this.el.shadowRoot?.appendChild(\n Object.assign(document.createElement(\"div\"), {\n id: \"describedby-wrapper\",\n className: \"ic-button-describedby\",\n })\n );\n }\n\n while (wrapper?.firstChild) wrapper.firstChild.remove();\n wrapper?.appendChild(this.describedbyNode);\n }\n };\n\n /**\n * Triggered when light dom aria-describedby element updates\n */\n private mutationCallback = () => {\n if (this.describedbyEl)\n this.describedbyNode = this.describedbyEl?.cloneNode(true);\n };\n\n /**\n * Triggered when attributes of host element change\n * @param mutationList the list of changes made to the host element\n */\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (attributeName) {\n const attribute = this.el.getAttribute(attributeName);\n if (attribute) {\n if (attributeName === \"title\") this.title = attribute;\n else if (attributeName === \"aria-label\") this.ariaLabel = attribute;\n\n if (IC_INHERITED_ARIA.includes(attributeName)) {\n this.inheritedAttributes[attributeName] = attribute;\n forceComponentUpdate = true;\n }\n }\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private setHasTooltip = () => {\n this.hasTooltip =\n !this.disableTooltip && (!!this.title || !!this.isIconVariant());\n };\n\n private isIconVariant = () => this.variant.startsWith(\"icon\");\n\n private arrangeRouterItem = () => {\n const setStyles = (\n element: HTMLElement | SVGElement,\n styles: { [key: string]: string }\n ) => {\n Object.entries(styles).forEach(([key, value]) => {\n element.style.setProperty(key, value);\n });\n };\n\n if (this.routerSlot) {\n const icTypography = document.createElement(\"ic-typography\");\n\n setStyles(icTypography, {\n \"font-family\": \"var(--ic-font-body-family)\",\n \"font-size\": \"0.875rem\",\n \"font-weight\": \"600\",\n });\n setStyles(this.routerSlot, {\n gap: \"0\",\n });\n\n const icon = this.routerSlot.querySelector(\"svg\");\n const iconSlot = icon?.getAttribute(\"slot\");\n const iconWrapper = document.createElement(\"div\");\n\n if (icon) {\n setStyles(icon, {\n fill: \"currentcolor\",\n });\n\n if (iconSlot === \"top-icon\") {\n setStyles(this.routerSlot, {\n display: \"flex\",\n \"flex-direction\": \"column\",\n \"--height\": \"fit-content\",\n });\n } else if (iconSlot) {\n const marginPlacement = iconSlot === \"left-icon\" ? \"right\" : \"left\";\n setStyles(iconWrapper, {\n [`margin-${marginPlacement}`]: \"var(--ic-space-xs)\",\n });\n }\n\n iconWrapper.append(icon);\n }\n\n const badge = this.routerSlot.querySelector(\"ic-badge\");\n const label = this.routerSlot.textContent?.trim();\n\n if (badge) iconWrapper.append(badge);\n if (label) icTypography.textContent = label;\n\n this.routerSlot.textContent = \"\";\n\n if (iconSlot === \"right-icon\") {\n this.routerSlot.append(icTypography);\n this.routerSlot.append(iconWrapper);\n } else {\n this.routerSlot.append(iconWrapper);\n this.routerSlot.append(icTypography);\n }\n }\n };\n\n render() {\n const {\n ariaControlsId,\n ariaLabel,\n ariaOwnsId,\n buttonIdNum,\n describedById,\n disabled,\n download,\n dropdown,\n dropdownExpanded,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n fullWidth,\n handleClick,\n handleKeyDown,\n hasTooltip,\n href,\n hreflang,\n id,\n inheritedAttributes,\n isIconVariant,\n loading,\n monochrome,\n onBlur,\n onFocus,\n referrerpolicy,\n rel,\n size,\n target,\n theme,\n title,\n tooltipFixedPositioning,\n tooltipPlacement,\n transparentBackground,\n type,\n variant,\n } = this;\n\n const TagType = href ? \"a\" : \"button\";\n const buttonAttrs =\n TagType === \"button\"\n ? {\n type,\n disabled,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n }\n : {\n download: download !== false ? download : null,\n href,\n rel,\n target,\n referrerpolicy,\n hreflang,\n };\n\n const buttonId = hasTooltip\n ? `ic-button-with-tooltip-${id || buttonIdNum}`\n : undefined;\n\n const describedby = !hasTooltip ? describedById : `ic-tooltip-${buttonId}`;\n\n const hasLeftIcon = !!this.getSlottedIcon(\"left\");\n const hasRightIcon = !!this.getSlottedIcon(\"right\");\n\n const ButtonContent = () =>\n this.hasRouterSlot() ? (\n <slot name=\"router-item\"></slot>\n ) : (\n <TagType\n class=\"button\"\n tabindex={0}\n aria-disabled={loading || disabled ? \"true\" : null}\n aria-label={loading ? \"Loading\" : ariaLabel}\n aria-expanded={dropdown && `${dropdownExpanded}`}\n {...buttonAttrs}\n {...inheritedAttributes}\n onFocus={onFocus}\n onBlur={onBlur}\n ref={(el) => (this.buttonEl = el)}\n aria-describedby={describedby}\n part=\"button\"\n >\n {loading ? (\n <div class=\"loading-container\">\n <ic-loading-indicator\n type={isIconVariant() ? \"circular\" : \"linear\"}\n class={{ \"loading-indicator-icon-button\": isIconVariant() }}\n monochrome={monochrome}\n theme={theme}\n ></ic-loading-indicator>\n </div>\n ) : (\n <Fragment>\n {(hasLeftIcon ||\n (!!this.getSlottedIcon(\"top\") && !hasRightIcon)) && (\n <div class=\"icon-container\">\n <slot name={`${hasLeftIcon ? \"left\" : \"top\"}-icon`} />\n </div>\n )}\n <slot />\n {!dropdown\n ? hasRightIcon && (\n <div class={{ \"icon-container\": true, \"right-icon\": true }}>\n <slot name=\"right-icon\" />\n </div>\n )\n : variant !== \"icon\" &&\n variant !== \"destructive\" && (\n <span\n class={\n dropdownExpanded\n ? \"dropdown-expanded\"\n : \"arrow-dropdown\"\n }\n innerHTML={arrowDropdown}\n />\n )}\n </Fragment>\n )}\n </TagType>\n );\n\n return (\n <Host\n class={{\n \"ic-button-disabled\": disabled && !loading,\n \"ic-button-full-width\": fullWidth,\n \"ic-button-loading\": loading,\n [`ic-button-size-${size}`]: true,\n [`ic-button-variant-${variant}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n background:\n (variant === \"secondary\" || variant === \"tertiary\") &&\n !transparentBackground &&\n !disabled,\n \"dropdown-no-icon\":\n dropdown &&\n !isSlotUsed(this.el, \"icon\") &&\n !isSlotUsed(this.el, \"left-icon\"),\n monochrome,\n \"top-icon\": isSlotUsed(this.el, \"top-icon\"),\n \"with-badge\": isSlotUsed(this.el, \"badge\"),\n }}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n aria-owns={ariaOwnsId}\n aria-controls={ariaControlsId}\n aria-expanded={dropdown && `${dropdownExpanded}`}\n >\n {hasTooltip && (\n <ic-tooltip\n id={describedby}\n label={title || ariaLabel}\n target={buttonId}\n placement={tooltipPlacement}\n fixedPositioning={tooltipFixedPositioning}\n silent={isIconVariant() && !!ariaLabel}\n >\n <ButtonContent />\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n {!hasTooltip && <ButtonContent />}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|