@ukic/canary-web-components 3.0.0-canary.23 → 3.0.0-canary.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{date-helpers-6f70dd03.js → date-helpers-d7ee7b45.js} +5 -9
- package/dist/cjs/date-helpers-d7ee7b45.js.map +1 -0
- package/dist/cjs/{helpers-74cf2649.js → helpers-56717660.js} +31 -7
- package/dist/cjs/helpers-56717660.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
- package/dist/cjs/ic-action-chip.cjs.entry.js +2 -2
- package/dist/cjs/ic-action-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +2 -2
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +2 -2
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +25 -20
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-checkbox_3.cjs.entry.js +2 -2
- package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +2 -2
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +13 -13
- package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +1 -1
- package/dist/cjs/ic-layout-grid-item.cjs.entry.js +70 -0
- package/dist/cjs/ic-layout-grid-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-layout-grid.cjs.entry.js +156 -0
- package/dist/cjs/ic-layout-grid.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu.cjs.entry.js +4 -4
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +12 -12
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +10 -6
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +5 -5
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +14 -14
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +3 -3
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +5 -5
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +1 -1
- 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-toast-region.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +5 -5
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +1 -1
- package/dist/cjs/index-d337cd8a.js +8 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/ic-date-picker/ic-date-picker.css +4 -5
- package/dist/collection/components/ic-date-picker/ic-date-picker.js +12 -12
- package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js +9 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -1
- package/dist/collection/components/ic-date-picker/story-data.js +18 -0
- package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
- package/dist/collection/utils/date-helpers.js +3 -7
- package/dist/collection/utils/date-helpers.js.map +1 -1
- package/dist/components/helpers.js +31 -7
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-action-chip.js +1 -1
- package/dist/components/ic-action-chip.js.map +1 -1
- package/dist/components/ic-alert.js +1 -1
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-back-to-top.js +1 -1
- package/dist/components/ic-badge.js +2 -2
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +1 -1
- package/dist/components/ic-breadcrumb2.js +1 -1
- package/dist/components/ic-button2.js +14 -12
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +1 -1
- package/dist/components/ic-checkbox2.js +2 -2
- package/dist/components/ic-checkbox2.js.map +1 -1
- package/dist/components/ic-chip.js +2 -2
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-data-list.js +1 -1
- package/dist/components/ic-data-list.js.map +1 -1
- package/dist/components/ic-data-row.js +2 -2
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-date-input2.js +4 -8
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +13 -13
- package/dist/components/ic-date-picker.js.map +1 -1
- package/dist/components/ic-dialog.js +1 -1
- package/dist/components/ic-divider2.js +1 -1
- package/dist/components/ic-footer-link-group.js +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer.js +1 -1
- package/dist/components/ic-hero.js +1 -1
- package/dist/components/ic-horizontal-scroll2.js +1 -1
- package/dist/components/ic-input-component-container2.js +1 -1
- package/dist/components/ic-input-label2.js +1 -1
- package/dist/components/ic-input-validation2.js +1 -1
- package/dist/components/ic-layout-grid-item.js +95 -0
- package/dist/components/ic-layout-grid-item.js.map +1 -0
- package/dist/components/ic-layout-grid.js +188 -0
- package/dist/components/ic-layout-grid.js.map +1 -0
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +5 -5
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-group.js +2 -2
- package/dist/components/ic-menu-group.js.map +1 -1
- package/dist/components/ic-menu-item2.js +1 -1
- package/dist/components/ic-menu2.js +4 -4
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +1 -1
- package/dist/components/ic-navigation-group.js +3 -3
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +1 -1
- package/dist/components/ic-navigation-menu2.js +5 -5
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +7 -7
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +2 -2
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +4 -4
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +11 -6
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +1 -1
- package/dist/components/ic-radio-option.js +1 -1
- package/dist/components/ic-search-bar.js +1 -1
- package/dist/components/ic-section-container2.js +2 -2
- package/dist/components/ic-section-container2.js.map +1 -1
- package/dist/components/ic-select2.js +7 -7
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +5 -5
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +2 -2
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-skip-link.js +2 -2
- package/dist/components/ic-skip-link.js.map +1 -1
- package/dist/components/ic-status-tag.js +2 -2
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +14 -14
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +2 -2
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +5 -5
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +1 -1
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +2 -2
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +2 -2
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-text-field2.js +1 -1
- package/dist/components/ic-theme.js +2 -2
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast-region.js +1 -1
- package/dist/components/ic-toast-region.js.map +1 -1
- package/dist/components/ic-toast.js +5 -5
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +2 -2
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +2 -2
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +8 -3
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +1 -1
- package/dist/core/core.css +12 -12
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-75f3038c.entry.js → p-0fad83d8.entry.js} +2 -2
- package/dist/core/{p-75f3038c.entry.js.map → p-0fad83d8.entry.js.map} +1 -1
- package/dist/core/{p-e75514f1.entry.js → p-145c0245.entry.js} +2 -2
- package/dist/core/{p-e75514f1.entry.js.map → p-145c0245.entry.js.map} +1 -1
- package/dist/core/{p-7e5e94a9.entry.js → p-17acca45.entry.js} +2 -2
- package/dist/core/{p-7e5e94a9.entry.js.map → p-17acca45.entry.js.map} +1 -1
- package/dist/core/{p-e4906394.entry.js → p-1a5efa3e.entry.js} +2 -2
- package/dist/core/p-20374e30.entry.js +2 -0
- package/dist/core/{p-80e43591.entry.js.map → p-20374e30.entry.js.map} +1 -1
- package/dist/core/{p-de43d375.entry.js → p-287e5c17.entry.js} +2 -2
- package/dist/core/{p-de43d375.entry.js.map → p-287e5c17.entry.js.map} +1 -1
- package/dist/core/{p-7892130d.entry.js → p-2f4f4aea.entry.js} +2 -2
- package/dist/core/{p-7892130d.entry.js.map → p-2f4f4aea.entry.js.map} +1 -1
- package/dist/core/p-2fe31f66.entry.js +2 -0
- package/dist/core/p-2fe31f66.entry.js.map +1 -0
- package/dist/core/{p-369f4536.entry.js → p-31d6d587.entry.js} +2 -2
- package/dist/core/{p-c6eabd53.entry.js → p-364cc350.entry.js} +2 -2
- package/dist/core/{p-3a5da30c.entry.js → p-3f241d71.entry.js} +2 -2
- package/dist/core/{p-3a5da30c.entry.js.map → p-3f241d71.entry.js.map} +1 -1
- package/dist/core/{p-666a671b.entry.js → p-40743d97.entry.js} +2 -2
- package/dist/core/{p-fbd80981.entry.js → p-43285eeb.entry.js} +2 -2
- package/dist/core/{p-fbd80981.entry.js.map → p-43285eeb.entry.js.map} +1 -1
- package/dist/core/{p-f34eee68.entry.js → p-45dd12ee.entry.js} +2 -2
- package/dist/core/{p-f34eee68.entry.js.map → p-45dd12ee.entry.js.map} +1 -1
- package/dist/core/{p-fffb98c9.entry.js → p-4bddb866.entry.js} +2 -2
- package/dist/core/{p-fffb98c9.entry.js.map → p-4bddb866.entry.js.map} +1 -1
- package/dist/core/{p-8fa7085e.entry.js → p-518a8e87.entry.js} +2 -2
- package/dist/core/{p-8fa7085e.entry.js.map → p-518a8e87.entry.js.map} +1 -1
- package/dist/core/{p-9c8a98e8.entry.js → p-51e2de77.entry.js} +2 -2
- package/dist/core/{p-9c8a98e8.entry.js.map → p-51e2de77.entry.js.map} +1 -1
- package/dist/core/{p-22863d31.entry.js → p-588a331f.entry.js} +2 -2
- package/dist/core/{p-22863d31.entry.js.map → p-588a331f.entry.js.map} +1 -1
- package/dist/core/p-59048c2a.entry.js +2 -0
- package/dist/core/p-59048c2a.entry.js.map +1 -0
- package/dist/core/{p-593cc594.entry.js → p-5976d13e.entry.js} +2 -2
- package/dist/core/{p-593cc594.entry.js.map → p-5976d13e.entry.js.map} +1 -1
- package/dist/core/p-5ac30e1f.entry.js +2 -0
- package/dist/core/{p-de8081c6.entry.js.map → p-5ac30e1f.entry.js.map} +1 -1
- package/dist/core/p-5c7c7205.entry.js +2 -0
- package/dist/core/p-5c7c7205.entry.js.map +1 -0
- package/dist/core/{p-d47acbd4.entry.js → p-5fbc8e62.entry.js} +2 -2
- package/dist/core/{p-d47acbd4.entry.js.map → p-5fbc8e62.entry.js.map} +1 -1
- package/dist/core/{p-8bf1022e.entry.js → p-608a8a4d.entry.js} +2 -2
- package/dist/core/p-66ae9eb3.entry.js +2 -0
- package/dist/core/p-66ae9eb3.entry.js.map +1 -0
- package/dist/core/p-6796acff.entry.js +2 -0
- package/dist/core/p-6796acff.entry.js.map +1 -0
- package/dist/core/{p-b3ac38c5.entry.js → p-6e8ef73c.entry.js} +2 -2
- package/dist/core/{p-b3ac38c5.entry.js.map → p-6e8ef73c.entry.js.map} +1 -1
- package/dist/core/{p-e595bb87.entry.js → p-7d2d067f.entry.js} +2 -2
- package/dist/core/{p-153d3597.entry.js → p-8051e61b.entry.js} +2 -2
- package/dist/core/{p-48127d40.entry.js → p-812a0246.entry.js} +2 -2
- package/dist/core/p-816aae93.entry.js +2 -0
- package/dist/core/p-816aae93.entry.js.map +1 -0
- package/dist/core/{p-48db785a.entry.js → p-8b5022bc.entry.js} +2 -2
- package/dist/core/{p-48db785a.entry.js.map → p-8b5022bc.entry.js.map} +1 -1
- package/dist/core/{p-324862f7.entry.js → p-91646e38.entry.js} +2 -2
- package/dist/core/{p-3d10fa12.entry.js → p-9863a070.entry.js} +2 -2
- package/dist/core/{p-9f792a31.entry.js → p-999f0a5d.entry.js} +2 -2
- package/dist/core/{p-9f792a31.entry.js.map → p-999f0a5d.entry.js.map} +1 -1
- package/dist/core/{p-00a89919.entry.js → p-9fe5e2eb.entry.js} +2 -2
- package/dist/core/p-9fffb01e.entry.js +2 -0
- package/dist/core/p-9fffb01e.entry.js.map +1 -0
- package/dist/core/{p-30b3afb1.entry.js → p-aa94c4b0.entry.js} +2 -2
- package/dist/core/p-afece95e.entry.js +2 -0
- package/dist/core/p-afece95e.entry.js.map +1 -0
- package/dist/core/{p-97c437bb.entry.js → p-b87e4485.entry.js} +2 -2
- package/dist/core/{p-b7a0dc04.entry.js → p-b93e8ecb.entry.js} +2 -2
- package/dist/core/{p-c86ca475.js → p-bc441e4c.js} +2 -2
- package/dist/core/p-bc441e4c.js.map +1 -0
- package/dist/core/{p-74e0f41f.entry.js → p-bc7d730d.entry.js} +2 -2
- package/dist/core/{p-ca3c6653.entry.js → p-be5df6a9.entry.js} +2 -2
- package/dist/core/{p-ca3c6653.entry.js.map → p-be5df6a9.entry.js.map} +1 -1
- package/dist/core/{p-307c13a1.entry.js → p-c067e62c.entry.js} +2 -2
- package/dist/core/{p-8048c7da.entry.js → p-c3fe54ab.entry.js} +2 -2
- package/dist/core/{p-2d6a1b50.entry.js → p-cb4522ed.entry.js} +2 -2
- package/dist/core/{p-726144b4.entry.js → p-d13a066e.entry.js} +2 -2
- package/dist/core/{p-726144b4.entry.js.map → p-d13a066e.entry.js.map} +1 -1
- package/dist/core/p-d41b0da0.entry.js +2 -0
- package/dist/core/p-d41b0da0.entry.js.map +1 -0
- package/dist/core/{p-db6d0463.entry.js → p-d47e200c.entry.js} +2 -2
- package/dist/core/{p-ee6caf27.entry.js → p-df88ff5b.entry.js} +2 -2
- package/dist/core/{p-ee6caf27.entry.js.map → p-df88ff5b.entry.js.map} +1 -1
- package/dist/core/p-e543f2e7.entry.js +2 -0
- package/dist/core/p-e543f2e7.entry.js.map +1 -0
- package/dist/core/{p-db3b0c0a.entry.js → p-e7f22a19.entry.js} +2 -2
- package/dist/core/p-ea061ccf.entry.js +2 -0
- package/dist/core/p-ea061ccf.entry.js.map +1 -0
- package/dist/core/p-efa95979.js +2 -0
- package/dist/core/p-efa95979.js.map +1 -0
- package/dist/core/{p-4b212968.entry.js → p-efe2fbd7.entry.js} +2 -2
- package/dist/core/{p-b9d4c0db.entry.js → p-f3201a0b.entry.js} +2 -2
- package/dist/core/{p-86ff903d.entry.js → p-f517f412.entry.js} +2 -2
- package/dist/core/{p-fbb0a74d.entry.js → p-f7d746d7.entry.js} +2 -2
- package/dist/core/p-fb8c47ce.entry.js +2 -0
- package/dist/core/p-fb8c47ce.entry.js.map +1 -0
- package/dist/core/{p-abcc90f0.entry.js → p-fecef807.entry.js} +2 -2
- package/dist/core/p-ffac41d6.entry.js +2 -0
- package/dist/core/p-ffac41d6.entry.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{date-helpers-3b8c39ab.js → date-helpers-2b531c8c.js} +5 -9
- package/dist/esm/date-helpers-2b531c8c.js.map +1 -0
- package/dist/esm/{helpers-dea3fd9b.js → helpers-f3928d01.js} +31 -7
- package/dist/esm/helpers-f3928d01.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-action-chip.entry.js +2 -2
- package/dist/esm/ic-action-chip.entry.js.map +1 -1
- package/dist/esm/ic-alert.entry.js +2 -2
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +1 -1
- package/dist/esm/ic-badge.entry.js +2 -2
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js +25 -20
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +1 -1
- package/dist/esm/ic-checkbox_3.entry.js +2 -2
- package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +2 -2
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +1 -1
- package/dist/esm/ic-data-list.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +2 -2
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +1 -1
- package/dist/esm/ic-date-picker.entry.js +13 -13
- package/dist/esm/ic-date-picker.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +1 -1
- package/dist/esm/ic-footer.entry.js +1 -1
- package/dist/esm/ic-hero.entry.js +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
- package/dist/esm/ic-input-component-container_4.entry.js +1 -1
- package/dist/esm/ic-layout-grid-item.entry.js +66 -0
- package/dist/esm/ic-layout-grid-item.entry.js.map +1 -0
- package/dist/esm/ic-layout-grid.entry.js +152 -0
- package/dist/esm/ic-layout-grid.entry.js.map +1 -0
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +2 -2
- package/dist/esm/ic-menu-group.entry.js.map +1 -1
- package/dist/esm/ic-menu-item.entry.js +1 -1
- package/dist/esm/ic-menu.entry.js +4 -4
- package/dist/esm/ic-menu.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +1 -1
- package/dist/esm/ic-navigation-group.entry.js +3 -3
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +5 -5
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +7 -7
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination_4.entry.js +12 -12
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +10 -6
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +1 -1
- package/dist/esm/ic-radio-option.entry.js +1 -1
- package/dist/esm/ic-search-bar.entry.js +1 -1
- package/dist/esm/ic-section-container.entry.js +2 -2
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +5 -5
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +2 -2
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-skip-link.entry.js +2 -2
- package/dist/esm/ic-skip-link.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +3 -3
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +14 -14
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +3 -3
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +5 -5
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +1 -1
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +3 -3
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +2 -2
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +1 -1
- package/dist/esm/ic-theme.entry.js +2 -2
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast-region.entry.js +1 -1
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +5 -5
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +3 -3
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +3 -3
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +1 -1
- package/dist/esm/ic-typography.entry.js +1 -1
- package/dist/esm/index-a7a720e7.js +8 -0
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-date-picker/ic-date-picker.stories.d.ts +8 -0
- package/dist/types/components/ic-date-picker/story-data.d.ts +1 -0
- package/dist/types/utils/date-helpers.d.ts +1 -1
- package/hydrate/index.js +404 -130
- package/hydrate/index.mjs +404 -130
- package/package.json +3 -3
- package/dist/cjs/date-helpers-6f70dd03.js.map +0 -1
- package/dist/cjs/helpers-74cf2649.js.map +0 -1
- package/dist/core/p-1521e96b.entry.js +0 -2
- package/dist/core/p-1521e96b.entry.js.map +0 -1
- package/dist/core/p-27207aa3.entry.js +0 -2
- package/dist/core/p-27207aa3.entry.js.map +0 -1
- package/dist/core/p-33927ee1.js +0 -2
- package/dist/core/p-33927ee1.js.map +0 -1
- package/dist/core/p-53d50d9e.entry.js +0 -2
- package/dist/core/p-53d50d9e.entry.js.map +0 -1
- package/dist/core/p-80e43591.entry.js +0 -2
- package/dist/core/p-b2680959.entry.js +0 -2
- package/dist/core/p-b2680959.entry.js.map +0 -1
- package/dist/core/p-b5ef2799.entry.js +0 -2
- package/dist/core/p-b5ef2799.entry.js.map +0 -1
- package/dist/core/p-c7ccc52a.entry.js +0 -2
- package/dist/core/p-c7ccc52a.entry.js.map +0 -1
- package/dist/core/p-c82a2e84.entry.js +0 -2
- package/dist/core/p-c82a2e84.entry.js.map +0 -1
- package/dist/core/p-c86ca475.js.map +0 -1
- package/dist/core/p-d5f8ef77.entry.js +0 -2
- package/dist/core/p-d5f8ef77.entry.js.map +0 -1
- package/dist/core/p-dbde45ff.entry.js +0 -2
- package/dist/core/p-dbde45ff.entry.js.map +0 -1
- package/dist/core/p-dc8eede2.entry.js +0 -2
- package/dist/core/p-dc8eede2.entry.js.map +0 -1
- package/dist/core/p-de8081c6.entry.js +0 -2
- package/dist/core/p-f33eae3c.entry.js +0 -2
- package/dist/core/p-f33eae3c.entry.js.map +0 -1
- package/dist/esm/date-helpers-3b8c39ab.js.map +0 -1
- package/dist/esm/helpers-dea3fd9b.js.map +0 -1
- /package/dist/core/{p-e4906394.entry.js.map → p-1a5efa3e.entry.js.map} +0 -0
- /package/dist/core/{p-369f4536.entry.js.map → p-31d6d587.entry.js.map} +0 -0
- /package/dist/core/{p-c6eabd53.entry.js.map → p-364cc350.entry.js.map} +0 -0
- /package/dist/core/{p-666a671b.entry.js.map → p-40743d97.entry.js.map} +0 -0
- /package/dist/core/{p-8bf1022e.entry.js.map → p-608a8a4d.entry.js.map} +0 -0
- /package/dist/core/{p-e595bb87.entry.js.map → p-7d2d067f.entry.js.map} +0 -0
- /package/dist/core/{p-153d3597.entry.js.map → p-8051e61b.entry.js.map} +0 -0
- /package/dist/core/{p-48127d40.entry.js.map → p-812a0246.entry.js.map} +0 -0
- /package/dist/core/{p-324862f7.entry.js.map → p-91646e38.entry.js.map} +0 -0
- /package/dist/core/{p-3d10fa12.entry.js.map → p-9863a070.entry.js.map} +0 -0
- /package/dist/core/{p-00a89919.entry.js.map → p-9fe5e2eb.entry.js.map} +0 -0
- /package/dist/core/{p-30b3afb1.entry.js.map → p-aa94c4b0.entry.js.map} +0 -0
- /package/dist/core/{p-97c437bb.entry.js.map → p-b87e4485.entry.js.map} +0 -0
- /package/dist/core/{p-b7a0dc04.entry.js.map → p-b93e8ecb.entry.js.map} +0 -0
- /package/dist/core/{p-74e0f41f.entry.js.map → p-bc7d730d.entry.js.map} +0 -0
- /package/dist/core/{p-307c13a1.entry.js.map → p-c067e62c.entry.js.map} +0 -0
- /package/dist/core/{p-8048c7da.entry.js.map → p-c3fe54ab.entry.js.map} +0 -0
- /package/dist/core/{p-2d6a1b50.entry.js.map → p-cb4522ed.entry.js.map} +0 -0
- /package/dist/core/{p-db6d0463.entry.js.map → p-d47e200c.entry.js.map} +0 -0
- /package/dist/core/{p-db3b0c0a.entry.js.map → p-e7f22a19.entry.js.map} +0 -0
- /package/dist/core/{p-4b212968.entry.js.map → p-efe2fbd7.entry.js.map} +0 -0
- /package/dist/core/{p-b9d4c0db.entry.js.map → p-f3201a0b.entry.js.map} +0 -0
- /package/dist/core/{p-86ff903d.entry.js.map → p-f517f412.entry.js.map} +0 -0
- /package/dist/core/{p-fbb0a74d.entry.js.map → p-f7d746d7.entry.js.map} +0 -0
- /package/dist/core/{p-abcc90f0.entry.js.map → p-fecef807.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["icToggleButtonCss","IcToggleButtonStyle0","TRACKED_ATTRIBUTES","ToggleButton","constructor","hostRef","this","checked","disabled","fullWidth","iconPlacement","loading","monochrome","outline","size","theme","tooltipPlacement","variant","handleFocus","ev","stopImmediatePropagation","handleClick","icToggleChecked","emit","watchDisabledHandler","removeDisabledFalse","el","componentWillLoad","_a","isSlottedInGroup","parentAttributes","parentElement","attributes","i","length","attribute","getNamedItem","name","value","componentDidLoad","onComponentRequiredPropUndefined","prop","accessibleLabel","label","propName","handleHostClick","e","render","iconVariant","h","Host","key","class","onFocus","onClick","title","isSlotUsed","slot","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.css?tag=ic-toggle-button&encapsulation=shadow","../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/* VARIABLES FOR IC-TOGGLE-BUTTON-GROUP */\n:host {\n --toggle-button-border: var(--ic-toggle-button-unselected-border);\n --toggle-button-text-colour: var(--ic-toggle-button-unselected-text);\n --toggle-button-border-hover: var(--ic-toggle-button-unselected-border-hover);\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-unselected-text-hover\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-unselected-border-pressed\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-unselected-text-pressed\n );\n}\n\n:host(:not(.expand-toggle-group-child)) {\n display: inline-block;\n border-radius: var(--ic-border-radius);\n border: var(--ic-border-width) solid var(--toggle-button-border);\n}\n\n:host(.ic-toggle-button-full-width:not(.expand-toggle-group-child)) {\n width: 100%;\n}\n\n:host(.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text);\n --toggle-button-border-hover: var(--ic-toggle-button-selected-border-hover);\n --toggle-button-text-colour-hover: var(--ic-toggle-button-selected-text);\n --toggle-button-border-active: var(\n --ic-toggle-button-selected-border-pressed\n );\n --toggle-button-text-colour-active: var(--ic-toggle-button-selected-text);\n}\n\n:host(.ic-toggle-button-monochrome) {\n --toggle-button-border: var(--ic-toggle-button-unselected-border-monochrome);\n --toggle-button-text-colour: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n --toggle-button-border-hover: var(\n --ic-toggle-button-unselected-border-hover-monochrome\n );\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-unselected-border-pressed-monochrome\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border-monochrome);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text-monochrome);\n --toggle-button-border-hover: var(\n --ic-toggle-button-selected-border-hover-monochrome\n );\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-selected-text-monochrome\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-selected-border-pressed-monochrome\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-selected-text-monochrome\n );\n}\n\n:host(.ic-toggle-button-disabled) {\n --toggle-button-border: var(--ic-toggle-button-unselected-border-disabled);\n --toggle-button-text-colour: var(--ic-toggle-button-unselected-text-disabled);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-monochrome) {\n --toggle-button-border: var(\n --ic-toggle-button-unselected-border-disabled-monochrome\n );\n --toggle-button-text-colour: var(\n --ic-toggle-button-unselected-text-disabled-monochrome\n );\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border-disabled);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text-disabled);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome) {\n --toggle-button-border: var(\n --ic-toggle-button-selected-border-disabled-monochrome\n );\n --toggle-button-text-colour: var(\n --ic-toggle-button-selected-text-disabled-monochrome\n );\n}\n\n:host(.expand-toggle-group-child) ::part(button) {\n width: 100%;\n}\n\n:host(.expand-toggle-group-child:not(.ic-toggle-button-loading))\n ::part(button) {\n min-height: inherit;\n height: auto;\n}\n\n:host ic-button {\n --icon-width: var(--ic-space-lg);\n --icon-height: var(--ic-space-lg);\n}\n\n:host(.expand-toggle-group-child) ic-button {\n min-width: 100%;\n min-height: 100%;\n height: 100%;\n}\n\n:host(.expand-toggle-group-child) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-default),\n var(--ic-border-focus);\n}\n\n:host(.expand-toggle-group-child.ic-toggle-button-light) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-dark) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-monochrome-dark),\n var(--ic-border-focus);\n}\n\n:host(:focus) {\n z-index: 1;\n}\n\n:host ::part(button) {\n border: none;\n color: var(--toggle-button-text-colour);\n}\n\n:host ::part(button):hover {\n color: var(--toggle-button-text-colour-hover);\n background-color: var(--ic-toggle-button-unselected-background-hover);\n}\n\n:host ::part(button):active {\n color: var(--toggle-button-text-colour-active);\n background-color: var(--ic-toggle-button-unselected-background-pressed);\n}\n\n:host ::part(button):focus {\n border: var(--ic-border-width) solid var(--toggle-button-border);\n}\n\n:host ::part(button):hover:focus {\n border: var(--ic-border-width) solid var(--toggle-button-border-hover);\n}\n\n:host ::part(button):active:focus {\n border: var(--ic-border-width) solid var(--toggle-button-border-active);\n}\n\n:host(.ic-toggle-button-disabled) ::part(button) {\n color: var(--toggle-button-text-colour);\n}\n\n:host(:not(.expand-toggle-group-child)):has(ic-button:hover) {\n border: var(--ic-border-width) solid var(--toggle-button-border-hover);\n}\n\n:host(:not(.expand-toggle-group-child)):has(ic-button:active) {\n border: var(--ic-border-width) solid var(--toggle-button-border-active);\n}\n\n:host(:not(.expand-toggle-group-child).ic-toggle-button-disabled) {\n border: var(--ic-border-width) dashed var(--toggle-button-border);\n}\n\n:host(.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-toggle-button-selected-background);\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-text);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-border-focus),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: var(--ic-toggle-button-selected-background-hover);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-checked) ::part(button):active {\n background-color: var(--ic-toggle-button-selected-background-pressed);\n}\n\n:host(.ic-toggle-button-monochrome) ::part(button):hover {\n background-color: var(\n --ic-toggle-button-unselected-background-hover-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome) ::part(button):active {\n background-color: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-toggle-button-selected-background-monochrome);\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):hover {\n background-color: var(\n --ic-toggle-button-selected-background-hover-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):active {\n background-color: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-text),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button) {\n background-color: transparent;\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button)::before {\n background-image: radial-gradient(\n var(--ic-toggle-button-selected-background-disabled) 95%,\n white 20%\n );\n background-repeat: no-repeat;\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome)\n ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome)\n ::part(button)::before {\n background-image: radial-gradient(\n var(--ic-toggle-button-selected-background-disabled-monochrome) 95%,\n white 20%\n );\n background-repeat: no-repeat;\n}\n\n:host(.ic-toggle-button-icon) ::part(button) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n width: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-toggle-button-icon) ::part(button):active {\n background-color: var(--ic-action-default-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-dark) ::part(button):active {\n background-color: var(--ic-action-dark-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-light) ::part(button):active {\n background-color: var(--ic-action-light-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-small) ::part(button) {\n height: var(--ic-space-xl);\n width: var(--ic-space-xl);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-large) ::part(button) {\n height: var(--ic-space-xxl);\n width: var(--ic-space-xxl);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-selected-background-pressed\n );\n\n background-color: var(--ic-toggle-button-selected-background-pressed);\n}\n\n:host(.ic-toggle-button-loading) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-unselected-background-pressed\n );\n\n background-color: var(--ic-toggle-button-unselected-background-pressed);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading)\n ::part(ic-loading-container) {\n --inner-color: var(--ic-toggle-button-loading-bar);\n}\n\n:host(.ic-toggle-button-loading) ::part(ic-loading-container) {\n --inner-color: var(--ic-toggle-button-selected-loading-bar);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-monochrome)\n ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n\n background-color: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-loading.ic-toggle-button-monochrome) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n\n background-color: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-hide-outline) {\n --toggle-button-border: transparent !important;\n --toggle-button-border-hover: transparent !important;\n --toggle-button-border-active: transparent !important;\n}\n\n:host(.ic-toggle-button-hide-outline) ::part(button):focus {\n border: none;\n}\n\n:host(.expand-toggle-group-child.ic-toggle-button-hide-outline)\n ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-hide-outline.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: var(--ic-border-focus);\n}\n\n@media (forced-colors: active) {\n :host(.ic-toggle-button-checked) ::part(button),\n :host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-disabled) ::part(button) {\n background-color: GrayText;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-loading)\n ::part(button):hover {\n --loading-button-background: Highlight;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, isSlottedInGroup, } from \"../../utils/helpers\";\nconst TRACKED_ATTRIBUTES = [\n \"loading\",\n \"disabled\",\n \"full-width\",\n \"icon-placement\",\n \"variant\",\n \"size\",\n \"theme\",\n \"monochrome\",\n \"outline\",\n];\n/**\n * @slot icon - Content will be displayed alongside the toggle button label.\n * @slot badge - Badge component overlaying the top right of the toggle button.\n */\nexport class ToggleButton {\n constructor() {\n /**\n * If `true`, the toggle button will be in a checked state.\n */\n this.checked = false;\n /**\n * If `true`, the toggle button will be in disabled state.\n */\n this.disabled = false;\n /**\n * If `true`, the toggle button will fill the width of the container.\n */\n this.fullWidth = false;\n /**\n * The placement of the icon in relation to the toggle button label.\n */\n this.iconPlacement = \"left\";\n /**\n * If `true`, the toggle button will be in loading state.\n */\n this.loading = false;\n /**\n * If `true`, the toggle button will display as black in the light theme, and white in dark theme.\n */\n this.monochrome = false;\n /**\n * If `true`, the toggle button will display with an outline.\n */\n this.outline = true;\n /**\n * The size of the toggle button to be displayed.\n */\n this.size = \"medium\";\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 this.theme = \"inherit\";\n /**\n * The position of the tooltip in relation to the toggle button.\n */\n this.tooltipPlacement = \"bottom\";\n /**\n * The variant of the toggle button.\n */\n this.variant = \"default\";\n this.handleFocus = (ev) => {\n ev.stopImmediatePropagation();\n };\n this.handleClick = () => {\n if (!this.loading && !this.disabled) {\n this.icToggleChecked.emit({\n checked: this.checked,\n });\n }\n };\n }\n watchDisabledHandler() {\n removeDisabledFalse(this.disabled, this.el);\n }\n componentWillLoad() {\n var _a;\n removeDisabledFalse(this.disabled, this.el);\n if (!isSlottedInGroup(this.el))\n return;\n const parentAttributes = (_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.attributes;\n if (!parentAttributes)\n return;\n for (let i = 0; i < TRACKED_ATTRIBUTES.length; i++) {\n const attribute = parentAttributes.getNamedItem(TRACKED_ATTRIBUTES[i]);\n if (!attribute)\n continue;\n switch (attribute.name) {\n case TRACKED_ATTRIBUTES[0]:\n this.loading = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[1]:\n this.disabled = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[2]:\n this.fullWidth = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[3]:\n this.iconPlacement = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[4]:\n this.variant = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[5]:\n this.size = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[6]:\n this.theme = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[7]:\n this.monochrome = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[8]:\n this.outline = attribute.value !== \"false\";\n break;\n }\n }\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([\n {\n prop: this.variant === \"icon\" ? this.accessibleLabel : this.label,\n propName: this.variant === \"icon\" ? \"accessible-label\" : \"label\",\n },\n ], \"Toggle button\");\n }\n handleHostClick(e) {\n if (this.disabled) {\n e.stopImmediatePropagation();\n }\n else if (!this.loading) {\n this.checked = !this.checked;\n }\n }\n render() {\n const { accessibleLabel, checked, disabled, fullWidth, iconPlacement, monochrome, label, loading, outline, size, theme, tooltipPlacement, variant, } = this;\n const iconVariant = variant === \"icon\";\n return (h(Host, { key: 'f8fcf3d711713e186960027c00f605b09350eb1b', class: {\n \"ic-toggle-button-checked\": checked,\n \"ic-toggle-button-disabled\": disabled,\n \"ic-toggle-button-icon\": iconVariant,\n \"ic-toggle-button-loading\": loading,\n \"ic-toggle-button-monochrome\": monochrome,\n \"ic-toggle-button-full-width\": fullWidth,\n \"ic-toggle-button-hide-outline\": !outline,\n [`ic-toggle-button-${size}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }, onFocus: this.handleFocus }, h(\"ic-button\", { key: 'a0d0f8b473b1731359a735e7249c3b3467e7012d', \"aria-pressed\": `${checked}`, variant: iconVariant ? \"icon\" : \"secondary\", onClick: this.handleClick, title: accessibleLabel, \"aria-label\": `${accessibleLabel ? accessibleLabel : label}, ${checked ? \"ticked\" : \"unticked\"}`, disabled: disabled, size: size, fullWidth: fullWidth, loading: loading, tooltipPlacement: tooltipPlacement }, !iconVariant && label, h(\"slot\", { key: 'a8335c7d4dbd6af3dff53ad5b7f7e0e34440be72' }), isSlotUsed(this.el, \"icon\") && (h(\"slot\", { key: 'c8e3337c6c4e2be224a3e15d107f67ece853c89f', name: \"icon\", slot: `${iconPlacement}-icon` })), isSlotUsed(this.el, \"badge\") && (h(\"slot\", { key: '1ae2a852eadc170c44fca19bf4993abd206cf4f3', name: \"badge\", slot: \"badge\" })))));\n }\n static get is() { return \"ic-toggle-button\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get properties() {\n return {\n \"accessibleLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The accessible label that will be applied to the toggle button. This is required for the icon variant of toggle buttons.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"accessible-label\",\n \"reflect\": false\n },\n \"checked\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in a checked state.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"checked\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in disabled state.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will fill the width of the container.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"iconPlacement\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcIconPlacementOptions\",\n \"resolved\": \"\\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"references\": {\n \"IcIconPlacementOptions\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcIconPlacementOptions\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The placement of the icon in relation to the toggle button label.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"icon-placement\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"left\\\"\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label to display in the toggle button. This is required for the default variant of toggle buttons.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"loading\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in loading state.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"loading\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will display as black in the light theme, and white in dark theme.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"outline\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will display with an outline.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"outline\",\n \"reflect\": false,\n \"defaultValue\": \"true\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"large\\\" | \\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the toggle button to be displayed.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"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 \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"tooltipPlacement\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcButtonTooltipPlacement\",\n \"resolved\": \"\\\"bottom\\\" | \\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"references\": {\n \"IcButtonTooltipPlacement\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcButtonTooltipPlacement\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The position of the tooltip in relation to the toggle button.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"tooltip-placement\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"bottom\\\"\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"resolved\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the toggle button.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"variant\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n }\n };\n }\n static get events() {\n return [{\n \"method\": \"icToggleChecked\",\n \"name\": \"icToggleChecked\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the user clicks a toggle button.\"\n },\n \"complexType\": {\n \"original\": \"{\\n checked: boolean;\\n }\",\n \"resolved\": \"{ checked: boolean; }\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-toggle-button.js.map\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["icToggleButtonCss","IcToggleButtonStyle0","TRACKED_ATTRIBUTES","ToggleButton","constructor","hostRef","this","checked","disabled","fullWidth","iconPlacement","loading","monochrome","outline","size","theme","tooltipPlacement","variant","handleFocus","ev","stopImmediatePropagation","handleClick","icToggleChecked","emit","watchDisabledHandler","removeDisabledFalse","el","componentWillLoad","_a","isSlottedInGroup","parentAttributes","parentElement","attributes","i","length","attribute","getNamedItem","name","value","componentDidLoad","onComponentRequiredPropUndefined","prop","accessibleLabel","label","propName","handleHostClick","e","render","iconVariant","h","Host","key","class","onFocus","onClick","title","isSlotUsed","slot","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.css?tag=ic-toggle-button&encapsulation=shadow","../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/* VARIABLES FOR IC-TOGGLE-BUTTON-GROUP */\n:host {\n --toggle-button-border: var(--ic-toggle-button-unselected-border);\n --toggle-button-text-colour: var(--ic-toggle-button-unselected-text);\n --toggle-button-border-hover: var(--ic-toggle-button-unselected-border-hover);\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-unselected-text-hover\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-unselected-border-pressed\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-unselected-text-pressed\n );\n}\n\n:host(:not(.expand-toggle-group-child)) {\n display: inline-block;\n border-radius: var(--ic-border-radius);\n border: var(--ic-border-width) solid var(--toggle-button-border);\n}\n\n:host(.ic-toggle-button-full-width:not(.expand-toggle-group-child)) {\n width: 100%;\n}\n\n:host(.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text);\n --toggle-button-border-hover: var(--ic-toggle-button-selected-border-hover);\n --toggle-button-text-colour-hover: var(--ic-toggle-button-selected-text);\n --toggle-button-border-active: var(\n --ic-toggle-button-selected-border-pressed\n );\n --toggle-button-text-colour-active: var(--ic-toggle-button-selected-text);\n}\n\n:host(.ic-toggle-button-monochrome) {\n --toggle-button-border: var(--ic-toggle-button-unselected-border-monochrome);\n --toggle-button-text-colour: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n --toggle-button-border-hover: var(\n --ic-toggle-button-unselected-border-hover-monochrome\n );\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-unselected-border-pressed-monochrome\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border-monochrome);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text-monochrome);\n --toggle-button-border-hover: var(\n --ic-toggle-button-selected-border-hover-monochrome\n );\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-selected-text-monochrome\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-selected-border-pressed-monochrome\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-selected-text-monochrome\n );\n}\n\n:host(.ic-toggle-button-disabled) {\n --toggle-button-border: var(--ic-toggle-button-unselected-border-disabled);\n --toggle-button-text-colour: var(--ic-toggle-button-unselected-text-disabled);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-monochrome) {\n --toggle-button-border: var(\n --ic-toggle-button-unselected-border-disabled-monochrome\n );\n --toggle-button-text-colour: var(\n --ic-toggle-button-unselected-text-disabled-monochrome\n );\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border-disabled);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text-disabled);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome) {\n --toggle-button-border: var(\n --ic-toggle-button-selected-border-disabled-monochrome\n );\n --toggle-button-text-colour: var(\n --ic-toggle-button-selected-text-disabled-monochrome\n );\n}\n\n:host(.expand-toggle-group-child) ::part(button) {\n width: 100%;\n}\n\n:host(.expand-toggle-group-child:not(.ic-toggle-button-loading))\n ::part(button) {\n min-height: inherit;\n height: auto;\n}\n\n:host ic-button {\n --icon-width: var(--ic-space-lg);\n --icon-height: var(--ic-space-lg);\n}\n\n:host(.expand-toggle-group-child) ic-button {\n min-width: 100%;\n min-height: 100%;\n height: 100%;\n}\n\n:host(.expand-toggle-group-child) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-default),\n var(--ic-border-focus);\n}\n\n:host(.expand-toggle-group-child.ic-toggle-button-light) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-dark) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-monochrome-dark),\n var(--ic-border-focus);\n}\n\n:host(:focus) {\n z-index: 1;\n}\n\n:host ::part(button) {\n border: none;\n color: var(--toggle-button-text-colour);\n}\n\n:host ::part(button):hover {\n color: var(--toggle-button-text-colour-hover);\n background-color: var(--ic-toggle-button-unselected-background-hover);\n}\n\n:host ::part(button):active {\n color: var(--toggle-button-text-colour-active);\n background-color: var(--ic-toggle-button-unselected-background-pressed);\n}\n\n:host ::part(button):focus {\n border: var(--ic-border-width) solid var(--toggle-button-border);\n}\n\n:host ::part(button):hover:focus {\n border: var(--ic-border-width) solid var(--toggle-button-border-hover);\n}\n\n:host ::part(button):active:focus {\n border: var(--ic-border-width) solid var(--toggle-button-border-active);\n}\n\n:host(.ic-toggle-button-disabled) ::part(button) {\n color: var(--toggle-button-text-colour);\n}\n\n:host(:not(.expand-toggle-group-child)):has(ic-button:hover) {\n border: var(--ic-border-width) solid var(--toggle-button-border-hover);\n}\n\n:host(:not(.expand-toggle-group-child)):has(ic-button:active) {\n border: var(--ic-border-width) solid var(--toggle-button-border-active);\n}\n\n:host(:not(.expand-toggle-group-child).ic-toggle-button-disabled) {\n border: var(--ic-border-width) dashed var(--toggle-button-border);\n}\n\n:host(.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-toggle-button-selected-background);\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-text);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-border-focus),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: var(--ic-toggle-button-selected-background-hover);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-checked) ::part(button):active {\n background-color: var(--ic-toggle-button-selected-background-pressed);\n}\n\n:host(.ic-toggle-button-monochrome) ::part(button):hover {\n background-color: var(\n --ic-toggle-button-unselected-background-hover-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome) ::part(button):active {\n background-color: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-toggle-button-selected-background-monochrome);\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):hover {\n background-color: var(\n --ic-toggle-button-selected-background-hover-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):active {\n background-color: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-text),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button) {\n background-color: transparent;\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button)::before {\n background-image: radial-gradient(\n var(--ic-toggle-button-selected-background-disabled) 95%,\n white 20%\n );\n background-repeat: no-repeat;\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome)\n ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome)\n ::part(button)::before {\n background-image: radial-gradient(\n var(--ic-toggle-button-selected-background-disabled-monochrome) 95%,\n white 20%\n );\n background-repeat: no-repeat;\n}\n\n:host(.ic-toggle-button-icon) ::part(button) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n width: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-toggle-button-icon) ::part(button):active {\n background-color: var(--ic-action-default-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-dark) ::part(button):active {\n background-color: var(--ic-action-dark-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-light) ::part(button):active {\n background-color: var(--ic-action-light-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-small) ::part(button) {\n height: var(--ic-space-xl);\n width: var(--ic-space-xl);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-large) ::part(button) {\n height: var(--ic-space-xxl);\n width: var(--ic-space-xxl);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-selected-background-pressed\n );\n\n background-color: var(--ic-toggle-button-selected-background-pressed);\n}\n\n:host(.ic-toggle-button-loading) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-unselected-background-pressed\n );\n\n background-color: var(--ic-toggle-button-unselected-background-pressed);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading)\n ::part(ic-loading-container) {\n --inner-color: var(--ic-toggle-button-loading-bar);\n}\n\n:host(.ic-toggle-button-loading) ::part(ic-loading-container) {\n --inner-color: var(--ic-toggle-button-selected-loading-bar);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-monochrome)\n ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n\n background-color: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-loading.ic-toggle-button-monochrome) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n\n background-color: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-hide-outline) {\n --toggle-button-border: transparent !important;\n --toggle-button-border-hover: transparent !important;\n --toggle-button-border-active: transparent !important;\n}\n\n:host(.ic-toggle-button-hide-outline) ::part(button):focus {\n border: none;\n}\n\n:host(.expand-toggle-group-child.ic-toggle-button-hide-outline)\n ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-hide-outline.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: var(--ic-border-focus);\n}\n\n@media (forced-colors: active) {\n :host(.ic-toggle-button-checked) ::part(button),\n :host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-disabled) ::part(button) {\n background-color: GrayText;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-loading)\n ::part(button):hover {\n --loading-button-background: Highlight;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, isSlottedInGroup, } from \"../../utils/helpers\";\nconst TRACKED_ATTRIBUTES = [\n \"loading\",\n \"disabled\",\n \"full-width\",\n \"icon-placement\",\n \"variant\",\n \"size\",\n \"theme\",\n \"monochrome\",\n \"outline\",\n];\n/**\n * @slot icon - Content will be displayed alongside the toggle button label.\n * @slot badge - Badge component overlaying the top right of the toggle button.\n */\nexport class ToggleButton {\n constructor() {\n /**\n * If `true`, the toggle button will be in a checked state.\n */\n this.checked = false;\n /**\n * If `true`, the toggle button will be in disabled state.\n */\n this.disabled = false;\n /**\n * If `true`, the toggle button will fill the width of the container.\n */\n this.fullWidth = false;\n /**\n * The placement of the icon in relation to the toggle button label.\n */\n this.iconPlacement = \"left\";\n /**\n * If `true`, the toggle button will be in loading state.\n */\n this.loading = false;\n /**\n * If `true`, the toggle button will display as black in the light theme, and white in dark theme.\n */\n this.monochrome = false;\n /**\n * If `true`, the toggle button will display with an outline.\n */\n this.outline = true;\n /**\n * The size of the toggle button to be displayed.\n */\n this.size = \"medium\";\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 this.theme = \"inherit\";\n /**\n * The position of the tooltip in relation to the toggle button.\n */\n this.tooltipPlacement = \"bottom\";\n /**\n * The variant of the toggle button.\n */\n this.variant = \"default\";\n this.handleFocus = (ev) => {\n ev.stopImmediatePropagation();\n };\n this.handleClick = () => {\n if (!this.loading && !this.disabled) {\n this.icToggleChecked.emit({\n checked: this.checked,\n });\n }\n };\n }\n watchDisabledHandler() {\n removeDisabledFalse(this.disabled, this.el);\n }\n componentWillLoad() {\n var _a;\n removeDisabledFalse(this.disabled, this.el);\n if (!isSlottedInGroup(this.el))\n return;\n const parentAttributes = (_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.attributes;\n if (!parentAttributes)\n return;\n for (let i = 0; i < TRACKED_ATTRIBUTES.length; i++) {\n const attribute = parentAttributes.getNamedItem(TRACKED_ATTRIBUTES[i]);\n if (!attribute)\n continue;\n switch (attribute.name) {\n case TRACKED_ATTRIBUTES[0]:\n this.loading = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[1]:\n this.disabled = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[2]:\n this.fullWidth = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[3]:\n this.iconPlacement = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[4]:\n this.variant = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[5]:\n this.size = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[6]:\n this.theme = attribute.value;\n break;\n case TRACKED_ATTRIBUTES[7]:\n this.monochrome = attribute.value !== \"false\";\n break;\n case TRACKED_ATTRIBUTES[8]:\n this.outline = attribute.value !== \"false\";\n break;\n }\n }\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([\n {\n prop: this.variant === \"icon\" ? this.accessibleLabel : this.label,\n propName: this.variant === \"icon\" ? \"accessible-label\" : \"label\",\n },\n ], \"Toggle button\");\n }\n handleHostClick(e) {\n if (this.disabled) {\n e.stopImmediatePropagation();\n }\n else if (!this.loading) {\n this.checked = !this.checked;\n }\n }\n render() {\n const { accessibleLabel, checked, disabled, fullWidth, iconPlacement, monochrome, label, loading, outline, size, theme, tooltipPlacement, variant, } = this;\n const iconVariant = variant === \"icon\";\n return (h(Host, { key: '5560cb91c78fd8167fb76bb1cab0bcb20723828c', class: {\n \"ic-toggle-button-checked\": checked,\n \"ic-toggle-button-disabled\": disabled,\n \"ic-toggle-button-icon\": iconVariant,\n \"ic-toggle-button-loading\": loading,\n \"ic-toggle-button-monochrome\": monochrome,\n \"ic-toggle-button-full-width\": fullWidth,\n \"ic-toggle-button-hide-outline\": !outline,\n [`ic-toggle-button-${size}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }, onFocus: this.handleFocus }, h(\"ic-button\", { key: 'e56f66ed52343d9c34df12a306028a799fab6f7a', \"aria-pressed\": `${checked}`, variant: iconVariant ? \"icon\" : \"secondary\", onClick: this.handleClick, title: accessibleLabel, \"aria-label\": `${accessibleLabel ? accessibleLabel : label}, ${checked ? \"ticked\" : \"unticked\"}`, disabled: disabled, size: size, fullWidth: fullWidth, loading: loading, tooltipPlacement: tooltipPlacement }, !iconVariant && label, h(\"slot\", { key: '57f73405674f826c39962f85ab030685bf18f11d' }), isSlotUsed(this.el, \"icon\") && (h(\"slot\", { key: '1b26441ed5bd3a0a18bdaa7d8432fd5d5434cfb4', name: \"icon\", slot: `${iconPlacement}-icon` })), isSlotUsed(this.el, \"badge\") && (h(\"slot\", { key: 'bf12638f891f2ba6c01df01d03ee860f7f15e0b1', name: \"badge\", slot: \"badge\" })))));\n }\n static get is() { return \"ic-toggle-button\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get properties() {\n return {\n \"accessibleLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The accessible label that will be applied to the toggle button. This is required for the icon variant of toggle buttons.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"accessible-label\",\n \"reflect\": false\n },\n \"checked\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in a checked state.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"checked\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in disabled state.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will fill the width of the container.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"iconPlacement\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcIconPlacementOptions\",\n \"resolved\": \"\\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"references\": {\n \"IcIconPlacementOptions\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcIconPlacementOptions\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The placement of the icon in relation to the toggle button label.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"icon-placement\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"left\\\"\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label to display in the toggle button. This is required for the default variant of toggle buttons.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"loading\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in loading state.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"loading\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will display as black in the light theme, and white in dark theme.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"outline\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will display with an outline.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"outline\",\n \"reflect\": false,\n \"defaultValue\": \"true\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"large\\\" | \\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the toggle button to be displayed.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"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 \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"tooltipPlacement\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcButtonTooltipPlacement\",\n \"resolved\": \"\\\"bottom\\\" | \\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"references\": {\n \"IcButtonTooltipPlacement\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcButtonTooltipPlacement\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The position of the tooltip in relation to the toggle button.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"tooltip-placement\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"bottom\\\"\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"resolved\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the toggle button.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"variant\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n }\n };\n }\n static get events() {\n return [{\n \"method\": \"icToggleChecked\",\n \"name\": \"icToggleChecked\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the user clicks a toggle button.\"\n },\n \"complexType\": {\n \"original\": \"{\\n checked: boolean;\\n }\",\n \"resolved\": \"{ checked: boolean; }\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-toggle-button.js.map\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as t,c as i,h as s,g as h}from"./p-8e4e97b4.js";const e="context-id";const a=class{constructor(s){t(this,s);this.icTabSelect=i(this,"icTabSelect",3);this.newTabPanels=[];this.newTabs=[];this.activationType="automatic";this.contextId="default";this.monochrome=false;this.theme="inherit";this.linkTabs=()=>{this.tabs.forEach(((t,i)=>{const s=`ic-tab-${i}-context-${this.contextId}`;const h=`ic-tab-panel-${i}-context-${this.contextId}`;t.setAttribute("id",s);t.tabId=`ic-tab--${i}-context-${this.contextId}`;t.tabPosition=i;t.setAttribute("aria-controls",h);this.tabPanels[i].setAttribute("id",h);this.tabPanels[i].setAttribute("aria-labelledby",s);if(this.contextId){t.setAttribute(e,this.contextId);this.tabGroup&&this.tabGroup.setAttribute(e,this.contextId);this.tabPanels[i].setAttribute(e,this.contextId)}t.theme=this.theme;this.tabPanels[i].theme=this.theme;this.tabGroup&&(this.tabGroup.theme=this.theme)}))};this.getChildren=()=>{var t;this.tabGroup=this.el.querySelector("ic-tab-group");this.tabs=Array.from(((t=this.tabGroup)===null||t===void 0?void 0:t.querySelectorAll("ic-tab"))||[]);this.tabPanels=Array.from(this.el.children).filter((t=>t.tagName==="IC-TAB-PANEL"));this.enabledTabs=this.getEnabledTabs()};this.keydownHandler=t=>{const i=this.activationType==="manual";const s=this.enabledTabs.findIndex((t=>t.tabId===this.tabs[i?this.focusedTabIndex:this.selectedTab||0].tabId));const h=i?this.keyboardFocusTab:this.keyboardSelectTab;let e=true;switch(t.key){case"Home":h(0);break;case"End":h(this.enabledTabs.length-1);break;case"ArrowRight":h(s<this.enabledTabs.length-1?s+1:0);break;case"ArrowLeft":h((s>0?s:this.enabledTabs.length)-1);break;default:if(i&&(t.key==="Enter"||t.key===" ")){this.keyboardSelectTab(this.focusedTabIndex)}else{e=false}}if(e)t.preventDefault()};this.setInitialTab=()=>{if(this.selectedTabIndex!==undefined){this.selectedTab=this.selectedTabIndex;this.focusedTabIndex=this.selectedTabIndex}else{const t=this.tabs.findIndex((t=>t.tabId===this.enabledTabs[0].tabId));this.selectedTab=t;this.focusedTabIndex=t}};this.configureTabs=()=>{this.enabledTabs.forEach((t=>{t.selected=t.tabPosition===this.selectedTab}));this.tabPanels.forEach(((t,i)=>{t.active=i===this.selectedTab}))};this.getEnabledTabs=()=>Array.from(this.tabs).filter((t=>!t.disabled));this.keyboardSelectTab=t=>{var i,s;const h=this.tabs.findIndex((i=>i.tabId===this.enabledTabs[t].tabId));this.enabledTabs[t].focus();if(this.selectedTabIndex===undefined){this.selectedTab=h}else{this.icTabSelect.emit({tabIndex:h,tabLabel:((s=(i=this.el.querySelectorAll("ic-tab")[h])===null||i===void 0?void 0:i.textContent)===null||s===void 0?void 0:s.trim())||""})}};this.keyboardFocusTab=t=>{this.enabledTabs[t].focus();this.focusedTabIndex=this.tabs.findIndex((i=>i.tabId===this.enabledTabs[t].tabId))}}updateSelectedTab(t){this.selectedTab=t}watchMonochromeHandler(){this.tabs.forEach(((t,i)=>{t.monochrome=this.monochrome;this.tabPanels[i].monochrome=this.monochrome}));this.tabGroup&&(this.tabGroup.monochrome=this.monochrome)}watchThemeHandler(){this.tabs.forEach(((t,i)=>{t.theme=this.theme;this.tabPanels[i].theme=this.theme}));this.tabGroup&&(this.tabGroup.theme=this.theme)}componentDidLoad(){if(this.selectedTabIndex!==undefined){this.selectedTab=this.selectedTabIndex}this.getChildren();this.linkTabs();this.tabGroup&&this.tabGroup.addEventListener("keydown",this.keydownHandler);this.setInitialTab();this.configureTabs()}componentWillUpdate(){this.configureTabs()}disconnectedCallback(){var t;(t=this.tabGroup)===null||t===void 0?void 0:t.removeEventListener("keydown",this.keydownHandler)}tabClickHandler(t){var i,s;if(this.selectedTabIndex===undefined&&t.detail.contextId===this.contextId){this.selectedTab=t.detail.position}this.icTabSelect.emit({tabIndex:t.detail.position,tabLabel:((s=(i=this.el.querySelectorAll("ic-tab")[t.detail.position])===null||i===void 0?void 0:i.textContent)===null||s===void 0?void 0:s.trim())||""});t.stopImmediatePropagation()}tabCreatedHandler(t){if(this.tabs&&this.tabPanels){(t.detail.setFocus?this.newTabs:this.newTabPanels).push(t.detail);if(this.newTabs.length===this.newTabPanels.length){this.tabs.push(...this.newTabs);this.tabPanels.push(...this.newTabPanels);this.enabledTabs=this.getEnabledTabs();this.linkTabs();if(this.selectedTab&&(!this.tabs[this.selectedTab]||!this.tabPanels[this.selectedTab]))this.setInitialTab();this.configureTabs();this.newTabs=[];this.newTabPanels=[]}}}tabEnabledHandler(){this.enabledTabs=this.getEnabledTabs()}async tabRemovedHandler(t){this.getChildren();this.linkTabs();if(this.selectedTab&&this.tabs[this.selectedTab]&&this.tabPanels[this.selectedTab]){this.tabs[this.selectedTab].selected=true}else{this.setInitialTab()}if(t&&this.selectedTab){this.tabs[this.selectedTab].setFocus()}}render(){return s("slot",{key:"
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as t,c as i,h as s,g as h}from"./p-8e4e97b4.js";const e="context-id";const a=class{constructor(s){t(this,s);this.icTabSelect=i(this,"icTabSelect",3);this.newTabPanels=[];this.newTabs=[];this.activationType="automatic";this.contextId="default";this.monochrome=false;this.theme="inherit";this.linkTabs=()=>{this.tabs.forEach(((t,i)=>{const s=`ic-tab-${i}-context-${this.contextId}`;const h=`ic-tab-panel-${i}-context-${this.contextId}`;t.setAttribute("id",s);t.tabId=`ic-tab--${i}-context-${this.contextId}`;t.tabPosition=i;t.setAttribute("aria-controls",h);this.tabPanels[i].setAttribute("id",h);this.tabPanels[i].setAttribute("aria-labelledby",s);if(this.contextId){t.setAttribute(e,this.contextId);this.tabGroup&&this.tabGroup.setAttribute(e,this.contextId);this.tabPanels[i].setAttribute(e,this.contextId)}t.theme=this.theme;this.tabPanels[i].theme=this.theme;this.tabGroup&&(this.tabGroup.theme=this.theme)}))};this.getChildren=()=>{var t;this.tabGroup=this.el.querySelector("ic-tab-group");this.tabs=Array.from(((t=this.tabGroup)===null||t===void 0?void 0:t.querySelectorAll("ic-tab"))||[]);this.tabPanels=Array.from(this.el.children).filter((t=>t.tagName==="IC-TAB-PANEL"));this.enabledTabs=this.getEnabledTabs()};this.keydownHandler=t=>{const i=this.activationType==="manual";const s=this.enabledTabs.findIndex((t=>t.tabId===this.tabs[i?this.focusedTabIndex:this.selectedTab||0].tabId));const h=i?this.keyboardFocusTab:this.keyboardSelectTab;let e=true;switch(t.key){case"Home":h(0);break;case"End":h(this.enabledTabs.length-1);break;case"ArrowRight":h(s<this.enabledTabs.length-1?s+1:0);break;case"ArrowLeft":h((s>0?s:this.enabledTabs.length)-1);break;default:if(i&&(t.key==="Enter"||t.key===" ")){this.keyboardSelectTab(this.focusedTabIndex)}else{e=false}}if(e)t.preventDefault()};this.setInitialTab=()=>{if(this.selectedTabIndex!==undefined){this.selectedTab=this.selectedTabIndex;this.focusedTabIndex=this.selectedTabIndex}else{const t=this.tabs.findIndex((t=>t.tabId===this.enabledTabs[0].tabId));this.selectedTab=t;this.focusedTabIndex=t}};this.configureTabs=()=>{this.enabledTabs.forEach((t=>{t.selected=t.tabPosition===this.selectedTab}));this.tabPanels.forEach(((t,i)=>{t.active=i===this.selectedTab}))};this.getEnabledTabs=()=>Array.from(this.tabs).filter((t=>!t.disabled));this.keyboardSelectTab=t=>{var i,s;const h=this.tabs.findIndex((i=>i.tabId===this.enabledTabs[t].tabId));this.enabledTabs[t].focus();if(this.selectedTabIndex===undefined){this.selectedTab=h}else{this.icTabSelect.emit({tabIndex:h,tabLabel:((s=(i=this.el.querySelectorAll("ic-tab")[h])===null||i===void 0?void 0:i.textContent)===null||s===void 0?void 0:s.trim())||""})}};this.keyboardFocusTab=t=>{this.enabledTabs[t].focus();this.focusedTabIndex=this.tabs.findIndex((i=>i.tabId===this.enabledTabs[t].tabId))}}updateSelectedTab(t){this.selectedTab=t}watchMonochromeHandler(){this.tabs.forEach(((t,i)=>{t.monochrome=this.monochrome;this.tabPanels[i].monochrome=this.monochrome}));this.tabGroup&&(this.tabGroup.monochrome=this.monochrome)}watchThemeHandler(){this.tabs.forEach(((t,i)=>{t.theme=this.theme;this.tabPanels[i].theme=this.theme}));this.tabGroup&&(this.tabGroup.theme=this.theme)}componentDidLoad(){if(this.selectedTabIndex!==undefined){this.selectedTab=this.selectedTabIndex}this.getChildren();this.linkTabs();this.tabGroup&&this.tabGroup.addEventListener("keydown",this.keydownHandler);this.setInitialTab();this.configureTabs()}componentWillUpdate(){this.configureTabs()}disconnectedCallback(){var t;(t=this.tabGroup)===null||t===void 0?void 0:t.removeEventListener("keydown",this.keydownHandler)}tabClickHandler(t){var i,s;if(this.selectedTabIndex===undefined&&t.detail.contextId===this.contextId){this.selectedTab=t.detail.position}this.icTabSelect.emit({tabIndex:t.detail.position,tabLabel:((s=(i=this.el.querySelectorAll("ic-tab")[t.detail.position])===null||i===void 0?void 0:i.textContent)===null||s===void 0?void 0:s.trim())||""});t.stopImmediatePropagation()}tabCreatedHandler(t){if(this.tabs&&this.tabPanels){(t.detail.setFocus?this.newTabs:this.newTabPanels).push(t.detail);if(this.newTabs.length===this.newTabPanels.length){this.tabs.push(...this.newTabs);this.tabPanels.push(...this.newTabPanels);this.enabledTabs=this.getEnabledTabs();this.linkTabs();if(this.selectedTab&&(!this.tabs[this.selectedTab]||!this.tabPanels[this.selectedTab]))this.setInitialTab();this.configureTabs();this.newTabs=[];this.newTabPanels=[]}}}tabEnabledHandler(){this.enabledTabs=this.getEnabledTabs()}async tabRemovedHandler(t){this.getChildren();this.linkTabs();if(this.selectedTab&&this.tabs[this.selectedTab]&&this.tabPanels[this.selectedTab]){this.tabs[this.selectedTab].selected=true}else{this.setInitialTab()}if(t&&this.selectedTab){this.tabs[this.selectedTab].setFocus()}}render(){return s("slot",{key:"a0fd989c3705d70d9bc2d1746dcce7f3df79c0d0"})}get el(){return h(this)}static get watchers(){return{selectedTabIndex:["updateSelectedTab"],monochrome:["watchMonochromeHandler"],theme:["watchThemeHandler"]}}};export{a as ic_tab_context};
|
2
|
+
//# sourceMappingURL=p-45dd12ee.entry.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["CONTEXT_ID_ATTR","TabContext","constructor","hostRef","this","newTabPanels","newTabs","activationType","contextId","monochrome","theme","linkTabs","tabs","forEach","tab","index","tabId","tabPanelId","setAttribute","tabPosition","tabPanels","tabGroup","getChildren","_a","el","querySelector","Array","from","querySelectorAll","children","filter","child","tagName","enabledTabs","getEnabledTabs","keydownHandler","event","isManual","enabledTabIndex","findIndex","focusedTabIndex","selectedTab","keyboardFunction","keyboardFocusTab","keyboardSelectTab","preventDefault","key","length","setInitialTab","selectedTabIndex","undefined","firstEnabledTabIndex","configureTabs","selected","tabPanel","active","disabled","_b","newIndex","focus","icTabSelect","emit","tabIndex","tabLabel","textContent","trim","updateSelectedTab","newValue","watchMonochromeHandler","watchThemeHandler","componentDidLoad","addEventListener","componentWillUpdate","disconnectedCallback","removeEventListener","tabClickHandler","detail","position","stopImmediatePropagation","tabCreatedHandler","ev","setFocus","push","tabEnabledHandler","tabRemovedHandler","hadFocus","render","h"],"sources":["../web-components/dist/collection/components/ic-tab-context/ic-tab-context.js"],"sourcesContent":["import { h, } from \"@stencil/core\";\nconst CONTEXT_ID_ATTR = \"context-id\";\nexport class TabContext {\n constructor() {\n this.newTabPanels = [];\n this.newTabs = [];\n /**\n * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\n */\n this.activationType = \"automatic\";\n /**\n * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\n */\n this.contextId = \"default\";\n /**\n * If `true`, the tabs will display as black in the light theme.\n */\n this.monochrome = false;\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 this.theme = \"inherit\";\n /** Sets attributes to link tab-group, tabs and tab-panels */\n this.linkTabs = () => {\n this.tabs.forEach((tab, index) => {\n const tabId = `ic-tab-${index}-context-${this.contextId}`;\n const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;\n tab.setAttribute(\"id\", tabId);\n tab.tabId = `ic-tab--${index}-context-${this.contextId}`;\n tab.tabPosition = index;\n tab.setAttribute(\"aria-controls\", tabPanelId);\n this.tabPanels[index].setAttribute(\"id\", tabPanelId);\n this.tabPanels[index].setAttribute(\"aria-labelledby\", tabId);\n if (this.contextId) {\n tab.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabGroup &&\n this.tabGroup.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabPanels[index].setAttribute(CONTEXT_ID_ATTR, this.contextId);\n }\n tab.theme = this.theme;\n this.tabPanels[index].theme = this.theme;\n this.tabGroup && (this.tabGroup.theme = this.theme);\n });\n };\n /**\n * Gets tabs and tabpanels with the same context ID using querySelector to selector the children in relation to the host\n */\n this.getChildren = () => {\n var _a;\n this.tabGroup = this.el.querySelector(\"ic-tab-group\");\n this.tabs = Array.from(((_a = this.tabGroup) === null || _a === void 0 ? void 0 : _a.querySelectorAll(\"ic-tab\")) || []);\n this.tabPanels = Array.from(this.el.children).filter((child) => child.tagName === \"IC-TAB-PANEL\");\n this.enabledTabs = this.getEnabledTabs();\n };\n this.keydownHandler = (event) => {\n const isManual = this.activationType === \"manual\";\n const enabledTabIndex = this.enabledTabs.findIndex((tab) => tab.tabId ===\n this.tabs[isManual ? this.focusedTabIndex : this.selectedTab || 0].tabId);\n const keyboardFunction = isManual\n ? this.keyboardFocusTab\n : this.keyboardSelectTab;\n let preventDefault = true;\n switch (event.key) {\n case \"Home\":\n keyboardFunction(0);\n break;\n case \"End\":\n keyboardFunction(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n keyboardFunction(enabledTabIndex < this.enabledTabs.length - 1\n ? enabledTabIndex + 1\n : 0);\n break;\n case \"ArrowLeft\":\n keyboardFunction((enabledTabIndex > 0 ? enabledTabIndex : this.enabledTabs.length) - 1);\n break;\n default:\n if (isManual && (event.key === \"Enter\" || event.key === \" \")) {\n this.keyboardSelectTab(this.focusedTabIndex);\n }\n else {\n preventDefault = false;\n }\n }\n if (preventDefault)\n event.preventDefault();\n };\n /** Sets the tab that is selected on initial render */\n this.setInitialTab = () => {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n this.focusedTabIndex = this.selectedTabIndex;\n }\n else {\n const firstEnabledTabIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[0].tabId);\n this.selectedTab = firstEnabledTabIndex;\n this.focusedTabIndex = firstEnabledTabIndex;\n }\n };\n /** Passes the selected tab to the tab and tab panel components */\n this.configureTabs = () => {\n this.enabledTabs.forEach((tab) => {\n tab.selected = tab.tabPosition === this.selectedTab;\n });\n this.tabPanels.forEach((tabPanel, index) => {\n tabPanel.active = index === this.selectedTab;\n });\n };\n this.getEnabledTabs = () => Array.from(this.tabs).filter((child) => !child.disabled);\n /** Sets focus on tab and selects it */\n this.keyboardSelectTab = (enabledTabIndex) => {\n var _a, _b;\n const newIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);\n this.enabledTabs[enabledTabIndex].focus();\n if (this.selectedTabIndex === undefined) {\n this.selectedTab = newIndex;\n }\n else {\n /* eslint-disable no-unexpected-multiline */\n this.icTabSelect.emit({\n tabIndex: newIndex,\n tabLabel: ((_b = (_a = this.el.querySelectorAll(\"ic-tab\")[newIndex]) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) ||\n \"\",\n });\n }\n };\n /** Sets focus on tab without selecting it (for manual activation) */\n this.keyboardFocusTab = (enabledTabIndex) => {\n this.enabledTabs[enabledTabIndex].focus();\n this.focusedTabIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);\n };\n }\n updateSelectedTab(newValue) {\n this.selectedTab = newValue;\n }\n watchMonochromeHandler() {\n this.tabs.forEach((tab, index) => {\n tab.monochrome = this.monochrome;\n this.tabPanels[index].monochrome = this.monochrome;\n });\n this.tabGroup && (this.tabGroup.monochrome = this.monochrome);\n }\n watchThemeHandler() {\n this.tabs.forEach((tab, index) => {\n tab.theme = this.theme;\n this.tabPanels[index].theme = this.theme;\n });\n this.tabGroup && (this.tabGroup.theme = this.theme);\n }\n componentDidLoad() {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n }\n this.getChildren();\n this.linkTabs();\n this.tabGroup &&\n this.tabGroup.addEventListener(\"keydown\", this.keydownHandler);\n this.setInitialTab();\n this.configureTabs();\n }\n componentWillUpdate() {\n this.configureTabs();\n }\n disconnectedCallback() {\n var _a;\n (_a = this.tabGroup) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"keydown\", this.keydownHandler);\n }\n tabClickHandler(event) {\n var _a, _b;\n if (this.selectedTabIndex === undefined &&\n event.detail.contextId === this.contextId) {\n this.selectedTab = event.detail.position;\n }\n /* eslint-disable no-unexpected-multiline */\n this.icTabSelect.emit({\n tabIndex: event.detail.position,\n tabLabel: ((_b = (_a = this.el\n .querySelectorAll(\"ic-tab\")[event.detail.position]) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) || \"\",\n });\n /* eslint-enable no-unexpected-multiline */\n event.stopImmediatePropagation();\n }\n tabCreatedHandler(ev) {\n if (this.tabs && this.tabPanels) {\n (ev.detail.setFocus ? this.newTabs : this.newTabPanels).push(ev.detail);\n if (this.newTabs.length === this.newTabPanels.length) {\n this.tabs.push(...this.newTabs);\n this.tabPanels.push(...this.newTabPanels);\n this.enabledTabs = this.getEnabledTabs();\n this.linkTabs();\n if (this.selectedTab &&\n (!this.tabs[this.selectedTab] || !this.tabPanels[this.selectedTab]))\n this.setInitialTab();\n this.configureTabs();\n this.newTabs = [];\n this.newTabPanels = [];\n }\n }\n }\n tabEnabledHandler() {\n this.enabledTabs = this.getEnabledTabs();\n }\n /**\n * @internal Used to set tab/tab panel IDs when a tab/tab panel has been removed\n */\n async tabRemovedHandler(hadFocus) {\n this.getChildren();\n this.linkTabs();\n if (this.selectedTab &&\n this.tabs[this.selectedTab] &&\n this.tabPanels[this.selectedTab]) {\n this.tabs[this.selectedTab].selected = true;\n }\n else {\n this.setInitialTab();\n }\n if (hadFocus && this.selectedTab) {\n this.tabs[this.selectedTab].setFocus();\n }\n }\n render() {\n return h(\"slot\", { key: '0df9be3f91695a070675c0809d85e94e4d64ec3b' });\n }\n static get is() { return \"ic-tab-context\"; }\n static get properties() {\n return {\n \"activationType\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcActivationTypes\",\n \"resolved\": \"\\\"automatic\\\" | \\\"manual\\\" | undefined\",\n \"references\": {\n \"IcActivationTypes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcActivationTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"activation-type\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"automatic\\\"\"\n },\n \"contextId\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"context-id\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"selectedTabIndex\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"selected-tab-index\",\n \"reflect\": false\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the tabs will display as black in the light theme.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\" | undefined\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"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 \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"selectedTab\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icTabSelect\",\n \"name\": \"icTabSelect\",\n \"bubbles\": false,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a user selects a tab.\"\n },\n \"complexType\": {\n \"original\": \"IcTabSelectEventDetail\",\n \"resolved\": \"IcTabSelectEventDetail\",\n \"references\": {\n \"IcTabSelectEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../ic-tab/ic-tab.types\",\n \"id\": \"src/components/ic-tab/ic-tab.types.ts::IcTabSelectEventDetail\"\n }\n }\n }\n }];\n }\n static get methods() {\n return {\n \"tabRemovedHandler\": {\n \"complexType\": {\n \"signature\": \"(hadFocus?: boolean) => Promise<void>\",\n \"parameters\": [{\n \"name\": \"hadFocus\",\n \"type\": \"boolean | undefined\",\n \"docs\": \"\"\n }],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"\",\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Used to set tab/tab panel IDs when a tab/tab panel has been removed\"\n }]\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"selectedTabIndex\",\n \"methodName\": \"updateSelectedTab\"\n }, {\n \"propName\": \"monochrome\",\n \"methodName\": \"watchMonochromeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"tabClick\",\n \"method\": \"tabClickHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"tabCreated\",\n \"method\": \"tabCreatedHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"tabPanelCreated\",\n \"method\": \"tabCreatedHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"tabEnabled\",\n \"method\": \"tabEnabledHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-tab-context.js.map\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["CONTEXT_ID_ATTR","TabContext","constructor","hostRef","this","newTabPanels","newTabs","activationType","contextId","monochrome","theme","linkTabs","tabs","forEach","tab","index","tabId","tabPanelId","setAttribute","tabPosition","tabPanels","tabGroup","getChildren","_a","el","querySelector","Array","from","querySelectorAll","children","filter","child","tagName","enabledTabs","getEnabledTabs","keydownHandler","event","isManual","enabledTabIndex","findIndex","focusedTabIndex","selectedTab","keyboardFunction","keyboardFocusTab","keyboardSelectTab","preventDefault","key","length","setInitialTab","selectedTabIndex","undefined","firstEnabledTabIndex","configureTabs","selected","tabPanel","active","disabled","_b","newIndex","focus","icTabSelect","emit","tabIndex","tabLabel","textContent","trim","updateSelectedTab","newValue","watchMonochromeHandler","watchThemeHandler","componentDidLoad","addEventListener","componentWillUpdate","disconnectedCallback","removeEventListener","tabClickHandler","detail","position","stopImmediatePropagation","tabCreatedHandler","ev","setFocus","push","tabEnabledHandler","tabRemovedHandler","hadFocus","render","h"],"sources":["../web-components/dist/collection/components/ic-tab-context/ic-tab-context.js"],"sourcesContent":["import { h, } from \"@stencil/core\";\nconst CONTEXT_ID_ATTR = \"context-id\";\nexport class TabContext {\n constructor() {\n this.newTabPanels = [];\n this.newTabs = [];\n /**\n * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\n */\n this.activationType = \"automatic\";\n /**\n * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\n */\n this.contextId = \"default\";\n /**\n * If `true`, the tabs will display as black in the light theme.\n */\n this.monochrome = false;\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 this.theme = \"inherit\";\n /** Sets attributes to link tab-group, tabs and tab-panels */\n this.linkTabs = () => {\n this.tabs.forEach((tab, index) => {\n const tabId = `ic-tab-${index}-context-${this.contextId}`;\n const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;\n tab.setAttribute(\"id\", tabId);\n tab.tabId = `ic-tab--${index}-context-${this.contextId}`;\n tab.tabPosition = index;\n tab.setAttribute(\"aria-controls\", tabPanelId);\n this.tabPanels[index].setAttribute(\"id\", tabPanelId);\n this.tabPanels[index].setAttribute(\"aria-labelledby\", tabId);\n if (this.contextId) {\n tab.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabGroup &&\n this.tabGroup.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabPanels[index].setAttribute(CONTEXT_ID_ATTR, this.contextId);\n }\n tab.theme = this.theme;\n this.tabPanels[index].theme = this.theme;\n this.tabGroup && (this.tabGroup.theme = this.theme);\n });\n };\n /**\n * Gets tabs and tabpanels with the same context ID using querySelector to selector the children in relation to the host\n */\n this.getChildren = () => {\n var _a;\n this.tabGroup = this.el.querySelector(\"ic-tab-group\");\n this.tabs = Array.from(((_a = this.tabGroup) === null || _a === void 0 ? void 0 : _a.querySelectorAll(\"ic-tab\")) || []);\n this.tabPanels = Array.from(this.el.children).filter((child) => child.tagName === \"IC-TAB-PANEL\");\n this.enabledTabs = this.getEnabledTabs();\n };\n this.keydownHandler = (event) => {\n const isManual = this.activationType === \"manual\";\n const enabledTabIndex = this.enabledTabs.findIndex((tab) => tab.tabId ===\n this.tabs[isManual ? this.focusedTabIndex : this.selectedTab || 0].tabId);\n const keyboardFunction = isManual\n ? this.keyboardFocusTab\n : this.keyboardSelectTab;\n let preventDefault = true;\n switch (event.key) {\n case \"Home\":\n keyboardFunction(0);\n break;\n case \"End\":\n keyboardFunction(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n keyboardFunction(enabledTabIndex < this.enabledTabs.length - 1\n ? enabledTabIndex + 1\n : 0);\n break;\n case \"ArrowLeft\":\n keyboardFunction((enabledTabIndex > 0 ? enabledTabIndex : this.enabledTabs.length) - 1);\n break;\n default:\n if (isManual && (event.key === \"Enter\" || event.key === \" \")) {\n this.keyboardSelectTab(this.focusedTabIndex);\n }\n else {\n preventDefault = false;\n }\n }\n if (preventDefault)\n event.preventDefault();\n };\n /** Sets the tab that is selected on initial render */\n this.setInitialTab = () => {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n this.focusedTabIndex = this.selectedTabIndex;\n }\n else {\n const firstEnabledTabIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[0].tabId);\n this.selectedTab = firstEnabledTabIndex;\n this.focusedTabIndex = firstEnabledTabIndex;\n }\n };\n /** Passes the selected tab to the tab and tab panel components */\n this.configureTabs = () => {\n this.enabledTabs.forEach((tab) => {\n tab.selected = tab.tabPosition === this.selectedTab;\n });\n this.tabPanels.forEach((tabPanel, index) => {\n tabPanel.active = index === this.selectedTab;\n });\n };\n this.getEnabledTabs = () => Array.from(this.tabs).filter((child) => !child.disabled);\n /** Sets focus on tab and selects it */\n this.keyboardSelectTab = (enabledTabIndex) => {\n var _a, _b;\n const newIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);\n this.enabledTabs[enabledTabIndex].focus();\n if (this.selectedTabIndex === undefined) {\n this.selectedTab = newIndex;\n }\n else {\n /* eslint-disable no-unexpected-multiline */\n this.icTabSelect.emit({\n tabIndex: newIndex,\n tabLabel: ((_b = (_a = this.el.querySelectorAll(\"ic-tab\")[newIndex]) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) ||\n \"\",\n });\n }\n };\n /** Sets focus on tab without selecting it (for manual activation) */\n this.keyboardFocusTab = (enabledTabIndex) => {\n this.enabledTabs[enabledTabIndex].focus();\n this.focusedTabIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);\n };\n }\n updateSelectedTab(newValue) {\n this.selectedTab = newValue;\n }\n watchMonochromeHandler() {\n this.tabs.forEach((tab, index) => {\n tab.monochrome = this.monochrome;\n this.tabPanels[index].monochrome = this.monochrome;\n });\n this.tabGroup && (this.tabGroup.monochrome = this.monochrome);\n }\n watchThemeHandler() {\n this.tabs.forEach((tab, index) => {\n tab.theme = this.theme;\n this.tabPanels[index].theme = this.theme;\n });\n this.tabGroup && (this.tabGroup.theme = this.theme);\n }\n componentDidLoad() {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n }\n this.getChildren();\n this.linkTabs();\n this.tabGroup &&\n this.tabGroup.addEventListener(\"keydown\", this.keydownHandler);\n this.setInitialTab();\n this.configureTabs();\n }\n componentWillUpdate() {\n this.configureTabs();\n }\n disconnectedCallback() {\n var _a;\n (_a = this.tabGroup) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"keydown\", this.keydownHandler);\n }\n tabClickHandler(event) {\n var _a, _b;\n if (this.selectedTabIndex === undefined &&\n event.detail.contextId === this.contextId) {\n this.selectedTab = event.detail.position;\n }\n /* eslint-disable no-unexpected-multiline */\n this.icTabSelect.emit({\n tabIndex: event.detail.position,\n tabLabel: ((_b = (_a = this.el\n .querySelectorAll(\"ic-tab\")[event.detail.position]) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) || \"\",\n });\n /* eslint-enable no-unexpected-multiline */\n event.stopImmediatePropagation();\n }\n tabCreatedHandler(ev) {\n if (this.tabs && this.tabPanels) {\n (ev.detail.setFocus ? this.newTabs : this.newTabPanels).push(ev.detail);\n if (this.newTabs.length === this.newTabPanels.length) {\n this.tabs.push(...this.newTabs);\n this.tabPanels.push(...this.newTabPanels);\n this.enabledTabs = this.getEnabledTabs();\n this.linkTabs();\n if (this.selectedTab &&\n (!this.tabs[this.selectedTab] || !this.tabPanels[this.selectedTab]))\n this.setInitialTab();\n this.configureTabs();\n this.newTabs = [];\n this.newTabPanels = [];\n }\n }\n }\n tabEnabledHandler() {\n this.enabledTabs = this.getEnabledTabs();\n }\n /**\n * @internal Used to set tab/tab panel IDs when a tab/tab panel has been removed\n */\n async tabRemovedHandler(hadFocus) {\n this.getChildren();\n this.linkTabs();\n if (this.selectedTab &&\n this.tabs[this.selectedTab] &&\n this.tabPanels[this.selectedTab]) {\n this.tabs[this.selectedTab].selected = true;\n }\n else {\n this.setInitialTab();\n }\n if (hadFocus && this.selectedTab) {\n this.tabs[this.selectedTab].setFocus();\n }\n }\n render() {\n return h(\"slot\", { key: 'a0fd989c3705d70d9bc2d1746dcce7f3df79c0d0' });\n }\n static get is() { return \"ic-tab-context\"; }\n static get properties() {\n return {\n \"activationType\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcActivationTypes\",\n \"resolved\": \"\\\"automatic\\\" | \\\"manual\\\" | undefined\",\n \"references\": {\n \"IcActivationTypes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcActivationTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"activation-type\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"automatic\\\"\"\n },\n \"contextId\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"context-id\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"selectedTabIndex\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"selected-tab-index\",\n \"reflect\": false\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the tabs will display as black in the light theme.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\" | undefined\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"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 \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"selectedTab\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icTabSelect\",\n \"name\": \"icTabSelect\",\n \"bubbles\": false,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a user selects a tab.\"\n },\n \"complexType\": {\n \"original\": \"IcTabSelectEventDetail\",\n \"resolved\": \"IcTabSelectEventDetail\",\n \"references\": {\n \"IcTabSelectEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../ic-tab/ic-tab.types\",\n \"id\": \"src/components/ic-tab/ic-tab.types.ts::IcTabSelectEventDetail\"\n }\n }\n }\n }];\n }\n static get methods() {\n return {\n \"tabRemovedHandler\": {\n \"complexType\": {\n \"signature\": \"(hadFocus?: boolean) => Promise<void>\",\n \"parameters\": [{\n \"name\": \"hadFocus\",\n \"type\": \"boolean | undefined\",\n \"docs\": \"\"\n }],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"\",\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Used to set tab/tab panel IDs when a tab/tab panel has been removed\"\n }]\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"selectedTabIndex\",\n \"methodName\": \"updateSelectedTab\"\n }, {\n \"propName\": \"monochrome\",\n \"methodName\": \"watchMonochromeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"tabClick\",\n \"method\": \"tabClickHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"tabCreated\",\n \"method\": \"tabCreatedHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"tabPanelCreated\",\n \"method\": \"tabCreatedHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"tabEnabled\",\n \"method\": \"tabEnabledHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-tab-context.js.map\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as o,c as t,h as r,H as e}from"./p-8e4e97b4.js";import{H as s,J as i,W as a,d as h,g as c}from"./p-
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as o,c as t,h as r,H as e}from"./p-8e4e97b4.js";import{H as s,J as i,W as a,d as h,g as c}from"./p-efa95979.js";const n=class{constructor(r){o(this,r);this.brandChange=t(this,"brandChange",7);this.icThemeChange=t(this,"icThemeChange",7);this.themeClass="";this.brandColor=null;this.theme="light";this.darkModeChangeHandler=()=>{if(this.theme==="system"){this.themeClass=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"ic-theme-dark":"ic-theme-light"}else{this.themeClass=`ic-theme-${this.theme}`}this.icThemeChange.emit(this.theme)};this.checkBrandColorContrast=()=>{if(s()<i&&s()>a){console.warn(`The brand colour does not provide enough contrast with either of the ICDS black or white foreground colours. Consider choosing a colour with a different brightness to achieve sufficient colour contrast for good visibility. See https://www.w3.org/TR/AERT/#color-contrast for more information about colour contrast.`)}};this.setBrandColor=()=>{const o=this.brandColor?h(this.brandColor):null;if(o){const{r:t,g:r,b:e,a:s}=o;const{style:i}=document.documentElement;i.setProperty("--ic-brand-color-primary-r",`${t}`);i.setProperty("--ic-brand-color-primary-g",`${r}`);i.setProperty("--ic-brand-color-primary-b",`${e}`);i.setProperty("--ic-brand-color-primary-a",`${s}`);this.checkBrandColorContrast();this.brandChange.emit({mode:c(),color:o})}}}watchBrandColorPropHandler(){this.setBrandColor()}watchThemePropHandler(){this.darkModeChangeHandler()}componentWillLoad(){this.darkModeChangeHandler();this.setBrandColor();window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",this.darkModeChangeHandler)}render(){const{themeClass:o}=this;return r(e,{key:"ee89cdd36cb4cb7e0589dfea2dd5a60b5de40041",class:o},r("slot",{key:"e7803bf5fc0974bfcf9a2a52cb5870254453a1bd"}))}static get watchers(){return{brandColor:["watchBrandColorPropHandler"],theme:["watchThemePropHandler"]}}};export{n as ic_theme};
|
2
|
+
//# sourceMappingURL=p-4bddb866.entry.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["Theme","constructor","hostRef","this","themeClass","brandColor","theme","darkModeChangeHandler","window","matchMedia","matches","icThemeChange","emit","checkBrandColorContrast","getBrandColorBrightness","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","console","warn","setBrandColor","colorRGBA","convertToRGBA","r","g","b","a","style","document","documentElement","setProperty","brandChange","mode","getBrandForegroundAppearance","color","watchBrandColorPropHandler","watchThemePropHandler","componentWillLoad","addEventListener","render","h","Host","key","class"],"sources":["../web-components/dist/collection/components/ic-theme/ic-theme.js"],"sourcesContent":["import { Host, h, } from \"@stencil/core\";\nimport { convertToRGBA, getBrandForegroundAppearance, } from \"../../utils/helpers\";\nimport { getBrandColorBrightness } from \"../../utils/helpers\";\nimport { BLACK_MIN_COLOR_BRIGHTNESS, WHITE_MAX_COLOR_BRIGHTNESS, } from \"../../utils/constants\";\nexport class Theme {\n constructor() {\n this.themeClass = \"\";\n /**\n * The brand colour. Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n this.brandColor = null;\n /**\n * The theme mode. Can be \"dark\", \"light\", or \"system\". \"system\" will use the device or browser settings.\n */\n this.theme = \"light\";\n this.darkModeChangeHandler = () => {\n if (this.theme === \"system\") {\n this.themeClass =\n window.matchMedia &&\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"ic-theme-dark\"\n : \"ic-theme-light\";\n }\n else {\n this.themeClass = `ic-theme-${this.theme}`;\n }\n this.icThemeChange.emit(this.theme);\n };\n this.checkBrandColorContrast = () => {\n if (getBrandColorBrightness() < BLACK_MIN_COLOR_BRIGHTNESS &&\n getBrandColorBrightness() > WHITE_MAX_COLOR_BRIGHTNESS) {\n console.warn(`The brand colour does not provide enough contrast with either of the ICDS black or white foreground colours. Consider choosing a colour with a different brightness to achieve sufficient colour contrast for good visibility. See https://www.w3.org/TR/AERT/#color-contrast for more information about colour contrast.`);\n }\n };\n this.setBrandColor = () => {\n const colorRGBA = this.brandColor ? convertToRGBA(this.brandColor) : null;\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n const { style } = document.documentElement;\n style.setProperty(\"--ic-brand-color-primary-r\", `${r}`);\n style.setProperty(\"--ic-brand-color-primary-g\", `${g}`);\n style.setProperty(\"--ic-brand-color-primary-b\", `${b}`);\n style.setProperty(\"--ic-brand-color-primary-a\", `${a}`);\n this.checkBrandColorContrast();\n this.brandChange.emit({\n mode: getBrandForegroundAppearance(),\n color: colorRGBA,\n });\n }\n };\n }\n watchBrandColorPropHandler() {\n this.setBrandColor();\n }\n watchThemePropHandler() {\n this.darkModeChangeHandler();\n }\n componentWillLoad() {\n this.darkModeChangeHandler();\n this.setBrandColor();\n window.matchMedia &&\n window\n .matchMedia(\"(prefers-color-scheme: dark)\")\n .addEventListener(\"change\", this.darkModeChangeHandler);\n }\n render() {\n const { themeClass } = this;\n return (h(Host, { key: '
|
1
|
+
{"version":3,"names":["Theme","constructor","hostRef","this","themeClass","brandColor","theme","darkModeChangeHandler","window","matchMedia","matches","icThemeChange","emit","checkBrandColorContrast","getBrandColorBrightness","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","console","warn","setBrandColor","colorRGBA","convertToRGBA","r","g","b","a","style","document","documentElement","setProperty","brandChange","mode","getBrandForegroundAppearance","color","watchBrandColorPropHandler","watchThemePropHandler","componentWillLoad","addEventListener","render","h","Host","key","class"],"sources":["../web-components/dist/collection/components/ic-theme/ic-theme.js"],"sourcesContent":["import { Host, h, } from \"@stencil/core\";\nimport { convertToRGBA, getBrandForegroundAppearance, } from \"../../utils/helpers\";\nimport { getBrandColorBrightness } from \"../../utils/helpers\";\nimport { BLACK_MIN_COLOR_BRIGHTNESS, WHITE_MAX_COLOR_BRIGHTNESS, } from \"../../utils/constants\";\nexport class Theme {\n constructor() {\n this.themeClass = \"\";\n /**\n * The brand colour. Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n this.brandColor = null;\n /**\n * The theme mode. Can be \"dark\", \"light\", or \"system\". \"system\" will use the device or browser settings.\n */\n this.theme = \"light\";\n this.darkModeChangeHandler = () => {\n if (this.theme === \"system\") {\n this.themeClass =\n window.matchMedia &&\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"ic-theme-dark\"\n : \"ic-theme-light\";\n }\n else {\n this.themeClass = `ic-theme-${this.theme}`;\n }\n this.icThemeChange.emit(this.theme);\n };\n this.checkBrandColorContrast = () => {\n if (getBrandColorBrightness() < BLACK_MIN_COLOR_BRIGHTNESS &&\n getBrandColorBrightness() > WHITE_MAX_COLOR_BRIGHTNESS) {\n console.warn(`The brand colour does not provide enough contrast with either of the ICDS black or white foreground colours. Consider choosing a colour with a different brightness to achieve sufficient colour contrast for good visibility. See https://www.w3.org/TR/AERT/#color-contrast for more information about colour contrast.`);\n }\n };\n this.setBrandColor = () => {\n const colorRGBA = this.brandColor ? convertToRGBA(this.brandColor) : null;\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n const { style } = document.documentElement;\n style.setProperty(\"--ic-brand-color-primary-r\", `${r}`);\n style.setProperty(\"--ic-brand-color-primary-g\", `${g}`);\n style.setProperty(\"--ic-brand-color-primary-b\", `${b}`);\n style.setProperty(\"--ic-brand-color-primary-a\", `${a}`);\n this.checkBrandColorContrast();\n this.brandChange.emit({\n mode: getBrandForegroundAppearance(),\n color: colorRGBA,\n });\n }\n };\n }\n watchBrandColorPropHandler() {\n this.setBrandColor();\n }\n watchThemePropHandler() {\n this.darkModeChangeHandler();\n }\n componentWillLoad() {\n this.darkModeChangeHandler();\n this.setBrandColor();\n window.matchMedia &&\n window\n .matchMedia(\"(prefers-color-scheme: dark)\")\n .addEventListener(\"change\", this.darkModeChangeHandler);\n }\n render() {\n const { themeClass } = this;\n return (h(Host, { key: 'ee89cdd36cb4cb7e0589dfea2dd5a60b5de40041', class: themeClass }, h(\"slot\", { key: 'e7803bf5fc0974bfcf9a2a52cb5870254453a1bd' })));\n }\n static get is() { return \"ic-theme\"; }\n static get properties() {\n return {\n \"brandColor\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcColor | null\",\n \"resolved\": \"`#${string}` | `rgb(${string})` | `rgba(${string})` | null | undefined\",\n \"references\": {\n \"IcColor\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcColor\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The brand colour. Can be a hex value e.g. \\\"#ff0000\\\", RGB e.g. \\\"rgb(255, 0, 0)\\\", or RGBA e.g. \\\"rgba(255, 0, 0, 1)\\\".\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"brand-color\",\n \"reflect\": false,\n \"defaultValue\": \"null\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeSettings\",\n \"resolved\": \"\\\"dark\\\" | \\\"light\\\" | \\\"system\\\" | undefined\",\n \"references\": {\n \"IcThemeSettings\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeSettings\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The theme mode. Can be \\\"dark\\\", \\\"light\\\", or \\\"system\\\". \\\"system\\\" will use the device or browser settings.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"light\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"themeClass\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"brandChange\",\n \"name\": \"brandChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when the brand color is changed.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcBrand\",\n \"resolved\": \"{ mode: IcBrandForeground; color: IcColorRGB; }\",\n \"references\": {\n \"IcBrand\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcBrand\"\n }\n }\n }\n }, {\n \"method\": \"icThemeChange\",\n \"name\": \"icThemeChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the theme is changed.\"\n },\n \"complexType\": {\n \"original\": \"IcThemeSettings\",\n \"resolved\": \"\\\"dark\\\" | \\\"light\\\" | \\\"system\\\"\",\n \"references\": {\n \"IcThemeSettings\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeSettings\"\n }\n }\n }\n }];\n }\n static get watchers() {\n return [{\n \"propName\": \"brandColor\",\n \"methodName\": \"watchBrandColorPropHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemePropHandler\"\n }];\n }\n}\n//# sourceMappingURL=ic-theme.js.map\n"],"mappings":"+HAIaA,EAAK,MACd,WAAAC,CAAAC,G,gGACIC,KAAKC,WAAa,GAIlBD,KAAKE,WAAa,KAIlBF,KAAKG,MAAQ,QACbH,KAAKI,sBAAwB,KACzB,GAAIJ,KAAKG,QAAU,SAAU,CACzBH,KAAKC,WACDI,OAAOC,YACHD,OAAOC,WAAW,gCAAgCC,QAChD,gBACA,gB,KAET,CACDP,KAAKC,WAAa,YAAYD,KAAKG,O,CAEvCH,KAAKQ,cAAcC,KAAKT,KAAKG,MAAM,EAEvCH,KAAKU,wBAA0B,KAC3B,GAAIC,IAA4BC,GAC5BD,IAA4BE,EAA4B,CACxDC,QAAQC,KAAK,4T,GAGrBf,KAAKgB,cAAgB,KACjB,MAAMC,EAAYjB,KAAKE,WAAagB,EAAclB,KAAKE,YAAc,KACrE,GAAIe,EAAW,CACX,MAAME,EAAEA,EAACC,EAAEA,EAACC,EAAEA,EAACC,EAAEA,GAAML,EACvB,MAAMM,MAAEA,GAAUC,SAASC,gBAC3BF,EAAMG,YAAY,6BAA8B,GAAGP,KACnDI,EAAMG,YAAY,6BAA8B,GAAGN,KACnDG,EAAMG,YAAY,6BAA8B,GAAGL,KACnDE,EAAMG,YAAY,6BAA8B,GAAGJ,KACnDtB,KAAKU,0BACLV,KAAK2B,YAAYlB,KAAK,CAClBmB,KAAMC,IACNC,MAAOb,G,GAKvB,0BAAAc,GACI/B,KAAKgB,e,CAET,qBAAAgB,GACIhC,KAAKI,uB,CAET,iBAAA6B,GACIjC,KAAKI,wBACLJ,KAAKgB,gBACLX,OAAOC,YACHD,OACKC,WAAW,gCACX4B,iBAAiB,SAAUlC,KAAKI,sB,CAE7C,MAAA+B,GACI,MAAMlC,WAAEA,GAAeD,KACvB,OAAQoC,EAAEC,EAAM,CAAEC,IAAK,2CAA4CC,MAAOtC,GAAcmC,EAAE,OAAQ,CAAEE,IAAK,6C","ignoreList":[]}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as e,h as t,H as i,g as s}from"./p-8e4e97b4.js";import{C as c}from"./p-0aa9ce8b.js";import{e as a}from"./p-33927ee1.js";const r=`<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M7.99935 4.32666L13.0193 13H2.97935L7.99935 4.32666ZM7.99935 1.66666L0.666016 14.3333H15.3327L7.99935 1.66666ZM8.66602 11H7.33268V12.3333H8.66602V11ZM8.66602 6.99999H7.33268V9.66666H8.66602V6.99999Z" fill="currentColor"/>\n</svg>`;const n=":host{display:flex;flex:auto;--ic-typography-color:currentcolor}.step{display:flex;flex:1 1 0}.step-icon{display:flex;justify-content:center}.heading,.subheading,.step-status,.next-step{white-space:pre-line}.next-step{color:var(--ic-stepper-compact-step-next-text)}.visually-hidden{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.visually-hidden:dir(rtl){right:-9999px}:host(.ic-step-compact){-moz-column-gap:var(--ic-space-sm);column-gap:var(--ic-space-sm);--compact-step-inner-color:var(--ic-step-indicator-status-current);--compact-step-outer-color:var(--ic-step-indicator-status-remaining);--compact-step-circular-line-width:var(--ic-space-xxs)}:host(.ic-step-compact) .step{-moz-column-gap:var(--ic-space-sm);column-gap:var(--ic-space-sm)}:host(.ic-step-compact) .step:not(.current){display:none;opacity:0;visibility:hidden}.compact-step-progress-indicator{margin:var(--ic-space-xs) 0 0}:host ic-loading-indicator::part(ic-loading-container){border-radius:50%}:host() ic-loading-indicator::part(ic-loading-container){background-color:var(--ic-step-indicator-background)}:host(.ic-step-compact) .heading-area{display:flex;flex-direction:column;width:14.25rem}:host(.ic-step-compact) .heading{color:var(--ic-stepper-compact-step-title)}:host(.ic-step-compact) .disabled .heading{color:var(--ic-stepper-compact-step-title-disabled)}.info-line{display:flex;-moz-column-gap:var(--ic-space-xs);column-gap:var(--ic-space-xs)}.step-status{display:flex;color:var(--ic-stepper-compact-step-requirement-text);-moz-column-gap:var(--ic-space-xxxs);column-gap:var(--ic-space-xxxs)}.compact-step-completed .step-status{color:var(--ic-stepper-compact-step-completed-text)}.compact-step-disabled :is(.heading,.step-status){color:var(--ic-stepper-compact-step-requirement-text-disabled)}.step-num{color:var(--ic-stepper-compact-step-stage-text);white-space:nowrap}:host(.ic-step-compact) .step-icon{margin:var(--ic-space-xxxs)}:host(.ic-step-compact) .step-icon svg{width:var(--ic-space-md);height:var(--ic-space-md)}:host(.ic-step-default) .step{flex-direction:column}:host(.ic-step-default.last-step){flex-grow:initial}.step-top{display:flex;width:100%;align-items:center;align-self:flex-start;height:2.5rem}:host(.ic-step-default) .step-icon{border-radius:50%;background-color:var(--ic-step-number-inactive)}.step-icon-inner{width:var(--ic-space-xl);height:var(--ic-space-xl);display:flex;justify-content:center;align-items:center;border-radius:50%;color:var(--ic-step-number-text-inactive)}:host(.ic-step-default) .current{color:var(--ic-status-info-default)}:host(.ic-step-default) .heading-area{margin:var(--ic-space-xs) 0;padding-right:var(--ic-space-xs);width:100%}:host(.ic-step-default) .heading,.subheading{width:-moz-fit-content;width:fit-content}.heading{color:var(--ic-step-title)}.current .heading{color:var(--ic-step-title-current)}.completed .heading{color:var(--ic-step-title-success)}.disabled .heading{color:var(--ic-step-title-disabled)}.subheading{color:var(--ic-step-title-status-text-inactive)}.current .subheading{color:var(--ic-step-title-status-text-current)}.disabled .subheading{color:var(--ic-step-title-status-text-disabled)}:host(.ic-step-default) .completed{color:var(--ic-status-success-default)}.active .step-icon-inner{box-shadow:inset var(--ic-step-number-inactive-outline) 0 0 0 0.125rem}.current .step-icon-inner{background-color:var(--ic-step-number-background-active);color:var(--ic-step-number-text-current)}.disabled{color:var(--ic-color-text-disabled-mid)}.disabled .step-icon-inner{border:var(--ic-border-width) dashed var(--ic-step-number-disabled);width:calc(var(--ic-space-xl) - var(--ic-space-xxxs));height:calc(var(--ic-space-xl) - var(--ic-space-xxxs));color:var(--ic-step-number-text-disabled)}.disabled .step-icon{background-color:transparent !important}.completed .step-icon-inner{background:var(--ic-step-number-background-success);box-shadow:inset var(--ic-step-number-background-success) 0 0 0\n var(--ic-space-xxxs);border-radius:100%}:host(.ic-step-default) .current .step-icon{border:var(--ic-space-xxxs) solid var(--ic-step-number-current-outline);padding:var(--ic-space-xxxs);margin:0 calc(-1 * var(--ic-space-xxxs));background-color:var(--ic-step-number-current-outer-fill);}.step-connect{height:var(--ic-space-xxxs);background-color:var(--ic-stepper-connector-remaining-status);margin:0 var(--ic-space-xs);border-radius:var(--ic-space-xxs);width:100%}.aligned-full-width.step-connect{min-width:6.25rem;width:100%}.disabled .step-connect{height:0;background-color:rgb(0 0 0 / 0%);border-top:0.125rem dashed var(--ic-stepper-connector-disabled);border-radius:0}.completed .step-connect{background-color:var(--ic-stepper-connector-success)}.step-connect-inner{width:70%;display:flex;flex:auto;height:var(--ic-space-xxxs);border-radius:var(--ic-space-xxs);background-color:var(--ic-stepper-connector-current-status)}.step-icon-inner .check-icon{padding-top:var(--ic-space-xxs)}.step-icon-inner .check-icon svg{width:var(--ic-space-md);height:auto}.step-icon-inner .check-icon>svg>path{fill:var(--ic-step-number-icon-success)}@media (forced-colors: active){.compact-step-disabled :is(.heading,.step-status){color:GrayText}.step-connect:not(.disabled .step-connect){border:var(--ic-border-hc)}.active .step-icon-inner,.completed .step-icon-inner,.current .step-icon-inner{forced-color-adjust:none;box-shadow:inset canvastext 0 0 0 0.125rem;background-color:transparent;color:canvastext}:host(.ic-step-default) .current .step-icon{padding:0;border:none}.disabled,.disabled .heading-area,.disabled .step-icon-inner,.disabled .heading{color:GrayText}.step-connect-inner,.completed .step-connect{background-color:canvastext}.step-icon-inner .check-icon>svg>path{fill:canvastext}}";const o=n;const d=class{constructor(t){e(this,t);this.current=false;this.theme="inherit";this.type="active"}typeChangeHandler(){if(this.variant==="compact"&&this.type==="current"){this.current=true}else{this.current=false}}render(){var e,s;let n="";if(this.type==="completed"){n=". Completed step"}else if(this.type==="disabled"){n=". Non-required step"}else if(this.status==="required"){n=". Required step"}else if(this.status==="optional"){n=". Optional step"}let o;if(this.status&&a(this.status)){o=this.status[0].toUpperCase()+this.status.slice(1)}let d;if(this.type==="disabled"||this.compactStepStyling==="disabled"){d="Not required"}else if(this.compactStepStyling==="completed"){d="Completed"}let p;if(this.type==="completed"||this.compactStepStyling==="completed"){p=t("span",{key:"c554d57470b9bb379d21a3cd1abda1c75e5cba08",class:"check-icon step-icon","aria-hidden":"true",innerHTML:c})}else if(this.type==="disabled"||this.compactStepStyling==="disabled"){p=t("span",{key:"44e14eb7ee51ea4d6a6979139bf6da928e24de20",class:"warning-icon step-icon","aria-hidden":"true",innerHTML:r})}const l=t("div",{key:"ba266206fb9d29e2d465d26df565ece4617d833f",class:{["step"]:true,["current"]:!!this.current,[`compact-step-${this.compactStepStyling}`]:!!this.compactStepStyling,["disabled"]:this.type==="disabled"||this.compactStepStyling==="disabled"}},t("ic-loading-indicator",{key:"8ac7e7a5dda9311526fabcf7c7467251496688c0",class:{"compact-step-progress-indicator":true,"not-required":this.type==="disabled"||this.compactStepStyling==="disabled"},"aria-hidden":"true",size:"small","inner-label":this.stepNum,progress:this.progress}),t("div",{key:"3641cfb114f1bd1bcc53b61d61c7e60368074d59",class:"heading-area"},t("ic-typography",{key:"f57e7f3ee8558562b06a983f9474ad22884e0fb0",variant:"h4",class:"heading"},this.heading),t("div",{key:"1bfffacf1695ac55a98fdb70c95e56d3d7374644",class:"info-line"},t("ic-typography",{key:"62b06cbe4ab2ca000a1947855ba9783e8fa87f34",variant:"caption",class:"step-num"},`${this.stepNum} of ${this.lastStepNum}`,t("span",{key:"9801990157ce6e89a575dc505bfdb083dbf69d59",class:"visually-hidden"}," steps")),(this.subheading||this.type==="completed"||this.type==="disabled"||this.variant==="compact"&&!!this.compactStepStyling&&this.compactStepStyling!=="active"||!!this.status)&&t("div",{key:"61da3c5be4a48ef8c49e049306e622038d09d972",class:"step-status"},p!==undefined&&p,(this.subheading||d)&&t("ic-typography",{key:"36b727dae2acfa76a3b00ad93e296f1a7687a8bc",variant:"caption"},this.subheading!==null&&a(this.subheading)?this.subheading:this.type==="disabled"||this.variant==="compact"&&this.compactStepStyling==="disabled"||this.type==="completed"||this.variant==="compact"&&this.compactStepStyling==="completed"?d:this.status&&o))),this.lastStep?t("ic-typography",{variant:"subtitle-small",class:"next-step"},"Last step"):a(this.nextStepHeading)&&t("ic-typography",{variant:"subtitle-small",class:"next-step"},"Next",t("span",{class:"visually-hidden"}," step is"),":"," ",this.nextStepHeading)));let h;if(this.type!=="completed"){h=t("ic-typography",{key:"39a605e15f1e787440200c1b2d013b245eebdc65",variant:"subtitle-small"},t("span",{key:"b957bb4c7e99809903fd89be087f15204625a0b7",class:"step-icon-inner","aria-hidden":"true"},this.stepNum))}else{h=t("div",{key:"f18d7120ca74ab1933e21efba3e3cf1ee08fbf70",class:"step-icon-inner","aria-hidden":"true"},t("span",{key:"a146e0b3a79e7aac5afc9e0e385701ed140cf672",class:"check-icon",innerHTML:c}))}const u=this.type==="current"&&t("div",{key:"67fc4bea3d00a2c1dda63b5590816f5246c2e474",class:"step-connect-inner"});const b=!this.lastStep&&t("div",{key:"af37563dcbf8ec3a3411a9c451e31c73651e3160",class:{["step-connect"]:true,["aligned-full-width"]:!!(((e=this.el.parentElement)===null||e===void 0?void 0:e.classList.contains("ic-stepper-default"))&&!this.el.parentElement.classList.contains("ic-stepper-aligned-left"))}},u);const f=t("div",{key:"b2c1130ef9a2e12fdf93c08f8564ec48631cf7d0",class:{["step"]:true,[`${this.type}`]:true}},t("div",{key:"0282ce231a90fb918c383422de63cdab9a9d5528",class:"step-top"},t("div",{key:"1ce5c704d09efb169857dc1dd88af5e5f1f03021",class:"step-icon"},h),b),(this.heading||this.subheading||this.status)&&t("div",{key:"ba9737c9919bb6bde9b09d320afaad8602d02d36",class:"heading-area"},this.heading&&t("ic-typography",{key:"9466eb68a941c56fe0cbecaef69e138cff2a8995",variant:"subtitle-large",class:"heading"},this.heading),this.heading&&(this.subheading||this.status)&&t("ic-typography",{key:"90151ad68ae0cd4f58d3e7eb01b88b9649997f61",variant:"caption",class:"subheading"},this.subheading!==null&&a(this.subheading)?this.subheading:o)));return t(i,{key:"e002bcf7743d7161bfb9816facb9a939e03aa233",role:"listitem","aria-label":`Step ${this.stepNum}${n}`,"aria-current":(this.current||this.type==="current")&&"step",class:{["aligned-full-width"]:!!(((s=this.el.parentElement)===null||s===void 0?void 0:s.classList.contains("ic-stepper-default"))&&!this.el.parentElement.classList.contains("ic-stepper-aligned-left")),[`ic-step-${this.variant}`]:true,[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},this.variant==="compact"?l:f)}get el(){return s(this)}static get watchers(){return{type:["typeChangeHandler"]}}};d.style=o;export{d as ic_step};
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as e,h as t,H as i,g as s}from"./p-8e4e97b4.js";import{C as c}from"./p-0aa9ce8b.js";import{e as a}from"./p-efa95979.js";const r=`<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M7.99935 4.32666L13.0193 13H2.97935L7.99935 4.32666ZM7.99935 1.66666L0.666016 14.3333H15.3327L7.99935 1.66666ZM8.66602 11H7.33268V12.3333H8.66602V11ZM8.66602 6.99999H7.33268V9.66666H8.66602V6.99999Z" fill="currentColor"/>\n</svg>`;const n=":host{display:flex;flex:auto;--ic-typography-color:currentcolor}.step{display:flex;flex:1 1 0}.step-icon{display:flex;justify-content:center}.heading,.subheading,.step-status,.next-step{white-space:pre-line}.next-step{color:var(--ic-stepper-compact-step-next-text)}.visually-hidden{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.visually-hidden:dir(rtl){right:-9999px}:host(.ic-step-compact){-moz-column-gap:var(--ic-space-sm);column-gap:var(--ic-space-sm);--compact-step-inner-color:var(--ic-step-indicator-status-current);--compact-step-outer-color:var(--ic-step-indicator-status-remaining);--compact-step-circular-line-width:var(--ic-space-xxs)}:host(.ic-step-compact) .step{-moz-column-gap:var(--ic-space-sm);column-gap:var(--ic-space-sm)}:host(.ic-step-compact) .step:not(.current){display:none;opacity:0;visibility:hidden}.compact-step-progress-indicator{margin:var(--ic-space-xs) 0 0}:host ic-loading-indicator::part(ic-loading-container){border-radius:50%}:host() ic-loading-indicator::part(ic-loading-container){background-color:var(--ic-step-indicator-background)}:host(.ic-step-compact) .heading-area{display:flex;flex-direction:column;width:14.25rem}:host(.ic-step-compact) .heading{color:var(--ic-stepper-compact-step-title)}:host(.ic-step-compact) .disabled .heading{color:var(--ic-stepper-compact-step-title-disabled)}.info-line{display:flex;-moz-column-gap:var(--ic-space-xs);column-gap:var(--ic-space-xs)}.step-status{display:flex;color:var(--ic-stepper-compact-step-requirement-text);-moz-column-gap:var(--ic-space-xxxs);column-gap:var(--ic-space-xxxs)}.compact-step-completed .step-status{color:var(--ic-stepper-compact-step-completed-text)}.compact-step-disabled :is(.heading,.step-status){color:var(--ic-stepper-compact-step-requirement-text-disabled)}.step-num{color:var(--ic-stepper-compact-step-stage-text);white-space:nowrap}:host(.ic-step-compact) .step-icon{margin:var(--ic-space-xxxs)}:host(.ic-step-compact) .step-icon svg{width:var(--ic-space-md);height:var(--ic-space-md)}:host(.ic-step-default) .step{flex-direction:column}:host(.ic-step-default.last-step){flex-grow:initial}.step-top{display:flex;width:100%;align-items:center;align-self:flex-start;height:2.5rem}:host(.ic-step-default) .step-icon{border-radius:50%;background-color:var(--ic-step-number-inactive)}.step-icon-inner{width:var(--ic-space-xl);height:var(--ic-space-xl);display:flex;justify-content:center;align-items:center;border-radius:50%;color:var(--ic-step-number-text-inactive)}:host(.ic-step-default) .current{color:var(--ic-status-info-default)}:host(.ic-step-default) .heading-area{margin:var(--ic-space-xs) 0;padding-right:var(--ic-space-xs);width:100%}:host(.ic-step-default) .heading,.subheading{width:-moz-fit-content;width:fit-content}.heading{color:var(--ic-step-title)}.current .heading{color:var(--ic-step-title-current)}.completed .heading{color:var(--ic-step-title-success)}.disabled .heading{color:var(--ic-step-title-disabled)}.subheading{color:var(--ic-step-title-status-text-inactive)}.current .subheading{color:var(--ic-step-title-status-text-current)}.disabled .subheading{color:var(--ic-step-title-status-text-disabled)}:host(.ic-step-default) .completed{color:var(--ic-status-success-default)}.active .step-icon-inner{box-shadow:inset var(--ic-step-number-inactive-outline) 0 0 0 0.125rem}.current .step-icon-inner{background-color:var(--ic-step-number-background-active);color:var(--ic-step-number-text-current)}.disabled{color:var(--ic-color-text-disabled-mid)}.disabled .step-icon-inner{border:var(--ic-border-width) dashed var(--ic-step-number-disabled);width:calc(var(--ic-space-xl) - var(--ic-space-xxxs));height:calc(var(--ic-space-xl) - var(--ic-space-xxxs));color:var(--ic-step-number-text-disabled)}.disabled .step-icon{background-color:transparent !important}.completed .step-icon-inner{background:var(--ic-step-number-background-success);box-shadow:inset var(--ic-step-number-background-success) 0 0 0\n var(--ic-space-xxxs);border-radius:100%}:host(.ic-step-default) .current .step-icon{border:var(--ic-space-xxxs) solid var(--ic-step-number-current-outline);padding:var(--ic-space-xxxs);margin:0 calc(-1 * var(--ic-space-xxxs));background-color:var(--ic-step-number-current-outer-fill);}.step-connect{height:var(--ic-space-xxxs);background-color:var(--ic-stepper-connector-remaining-status);margin:0 var(--ic-space-xs);border-radius:var(--ic-space-xxs);width:100%}.aligned-full-width.step-connect{min-width:6.25rem;width:100%}.disabled .step-connect{height:0;background-color:rgb(0 0 0 / 0%);border-top:0.125rem dashed var(--ic-stepper-connector-disabled);border-radius:0}.completed .step-connect{background-color:var(--ic-stepper-connector-success)}.step-connect-inner{width:70%;display:flex;flex:auto;height:var(--ic-space-xxxs);border-radius:var(--ic-space-xxs);background-color:var(--ic-stepper-connector-current-status)}.step-icon-inner .check-icon{padding-top:var(--ic-space-xxs)}.step-icon-inner .check-icon svg{width:var(--ic-space-md);height:auto}.step-icon-inner .check-icon>svg>path{fill:var(--ic-step-number-icon-success)}@media (forced-colors: active){.compact-step-disabled :is(.heading,.step-status){color:GrayText}.step-connect:not(.disabled .step-connect){border:var(--ic-border-hc)}.active .step-icon-inner,.completed .step-icon-inner,.current .step-icon-inner{forced-color-adjust:none;box-shadow:inset canvastext 0 0 0 0.125rem;background-color:transparent;color:canvastext}:host(.ic-step-default) .current .step-icon{padding:0;border:none}.disabled,.disabled .heading-area,.disabled .step-icon-inner,.disabled .heading{color:GrayText}.step-connect-inner,.completed .step-connect{background-color:canvastext}.step-icon-inner .check-icon>svg>path{fill:canvastext}}";const o=n;const d=class{constructor(t){e(this,t);this.current=false;this.theme="inherit";this.type="active"}typeChangeHandler(){if(this.variant==="compact"&&this.type==="current"){this.current=true}else{this.current=false}}render(){var e,s;let n="";if(this.type==="completed"){n=". Completed step"}else if(this.type==="disabled"){n=". Non-required step"}else if(this.status==="required"){n=". Required step"}else if(this.status==="optional"){n=". Optional step"}let o;if(this.status&&a(this.status)){o=this.status[0].toUpperCase()+this.status.slice(1)}let d;if(this.type==="disabled"||this.compactStepStyling==="disabled"){d="Not required"}else if(this.compactStepStyling==="completed"){d="Completed"}let p;if(this.type==="completed"||this.compactStepStyling==="completed"){p=t("span",{key:"8831990f0422a89e28d83c33bf98e6f5e47d09a6",class:"check-icon step-icon","aria-hidden":"true",innerHTML:c})}else if(this.type==="disabled"||this.compactStepStyling==="disabled"){p=t("span",{key:"aedd81eacbe9ca6a4e331142d09053926b00dcd4",class:"warning-icon step-icon","aria-hidden":"true",innerHTML:r})}const l=t("div",{key:"384c84c08600c48982959a9a19a54e638bdd76a9",class:{["step"]:true,["current"]:!!this.current,[`compact-step-${this.compactStepStyling}`]:!!this.compactStepStyling,["disabled"]:this.type==="disabled"||this.compactStepStyling==="disabled"}},t("ic-loading-indicator",{key:"fb3373a16a3519a77689395882b77b07f84d00b2",class:{"compact-step-progress-indicator":true,"not-required":this.type==="disabled"||this.compactStepStyling==="disabled"},"aria-hidden":"true",size:"small","inner-label":this.stepNum,progress:this.progress}),t("div",{key:"e404a8d7fd56af5a6c3b38e7dd146ccbf6c0a921",class:"heading-area"},t("ic-typography",{key:"e2d2d3a3b2e2d1080a500f06c11fd2b19305e733",variant:"h4",class:"heading"},this.heading),t("div",{key:"a04253bd63d0e9cbc2ebd2ccc6c6cf1d684611b4",class:"info-line"},t("ic-typography",{key:"35699c8fd101642bcedacbb0e636f5f5e72d87d0",variant:"caption",class:"step-num"},`${this.stepNum} of ${this.lastStepNum}`,t("span",{key:"0bc9e891b17f66419150733982711999983197a1",class:"visually-hidden"}," steps")),(this.subheading||this.type==="completed"||this.type==="disabled"||this.variant==="compact"&&!!this.compactStepStyling&&this.compactStepStyling!=="active"||!!this.status)&&t("div",{key:"ce2356ecbc86e3805ddf84d7fa785f2a1495ef60",class:"step-status"},p!==undefined&&p,(this.subheading||d)&&t("ic-typography",{key:"f9ada98e6d45ff5dcd8784dbb24c4402b7bd378e",variant:"caption"},this.subheading!==null&&a(this.subheading)?this.subheading:this.type==="disabled"||this.variant==="compact"&&this.compactStepStyling==="disabled"||this.type==="completed"||this.variant==="compact"&&this.compactStepStyling==="completed"?d:this.status&&o))),this.lastStep?t("ic-typography",{variant:"subtitle-small",class:"next-step"},"Last step"):a(this.nextStepHeading)&&t("ic-typography",{variant:"subtitle-small",class:"next-step"},"Next",t("span",{class:"visually-hidden"}," step is"),":"," ",this.nextStepHeading)));let h;if(this.type!=="completed"){h=t("ic-typography",{key:"5b3734765f9d5e5db8f0b2818ffd471817a96cc5",variant:"subtitle-small"},t("span",{key:"d4d3ffd87c95a0b98fce8a437a6afb3f4639993f",class:"step-icon-inner","aria-hidden":"true"},this.stepNum))}else{h=t("div",{key:"42447f9ec070e7e284aecfd49983259650d9abd3",class:"step-icon-inner","aria-hidden":"true"},t("span",{key:"4c7469fba1cf544d1d48c209c25db0bcaca14309",class:"check-icon",innerHTML:c}))}const u=this.type==="current"&&t("div",{key:"800764f8ca21ac1118c77ed860a163b3103fe62e",class:"step-connect-inner"});const b=!this.lastStep&&t("div",{key:"e5c0f38f7140800d60e5046d77d6cde34c5e7bd5",class:{["step-connect"]:true,["aligned-full-width"]:!!(((e=this.el.parentElement)===null||e===void 0?void 0:e.classList.contains("ic-stepper-default"))&&!this.el.parentElement.classList.contains("ic-stepper-aligned-left"))}},u);const f=t("div",{key:"cdfd23786b75a88fe1630318d8a1369a89090544",class:{["step"]:true,[`${this.type}`]:true}},t("div",{key:"c83625070a1ffe89fc53f66d55f06c994f868570",class:"step-top"},t("div",{key:"a6758050efffeb98522092fefa9b1261b3d9217b",class:"step-icon"},h),b),(this.heading||this.subheading||this.status)&&t("div",{key:"3ecf8d32da66fe336b7c0540c47726d060e8eaf8",class:"heading-area"},this.heading&&t("ic-typography",{key:"79557ec3d9a26be0fee2253a58c2f09132322017",variant:"subtitle-large",class:"heading"},this.heading),this.heading&&(this.subheading||this.status)&&t("ic-typography",{key:"f5a90f68ebc0721fec936541824ab79b415f566d",variant:"caption",class:"subheading"},this.subheading!==null&&a(this.subheading)?this.subheading:o)));return t(i,{key:"0cb6b6649c9af4565e5f663131b800a79b9b040d",role:"listitem","aria-label":`Step ${this.stepNum}${n}`,"aria-current":(this.current||this.type==="current")&&"step",class:{["aligned-full-width"]:!!(((s=this.el.parentElement)===null||s===void 0?void 0:s.classList.contains("ic-stepper-default"))&&!this.el.parentElement.classList.contains("ic-stepper-aligned-left")),[`ic-step-${this.variant}`]:true,[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},this.variant==="compact"?l:f)}get el(){return s(this)}static get watchers(){return{type:["typeChangeHandler"]}}};d.style=o;export{d as ic_step};
|
2
|
+
//# sourceMappingURL=p-518a8e87.entry.js.map
|