@ukic/web-components 3.0.0-alpha.13 → 3.0.0-alpha.15
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/app-globals-1608a8a5.js +54 -0
- package/dist/cjs/app-globals-1608a8a5.js.map +1 -0
- package/dist/cjs/core.cjs.js +3 -3
- package/dist/cjs/{helpers-08a9ec1c.js → helpers-7a599012.js} +2 -2
- package/dist/cjs/{helpers-08a9ec1c.js.map → helpers-7a599012.js.map} +1 -1
- package/dist/cjs/ic-accordion-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-accordion.cjs.entry.js +2 -2
- package/dist/cjs/ic-alert.cjs.entry.js +2 -2
- package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -2
- package/dist/cjs/ic-badge.cjs.entry.js +3 -3
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/ic-button_3.cjs.entry.js +61 -3
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +3 -3
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +7 -7
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +3 -3
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +3 -3
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +3 -3
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-dialog.cjs.entry.js +38 -47
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +2 -2
- package/dist/cjs/ic-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer.cjs.entry.js +2 -2
- package/dist/cjs/ic-hero.cjs.entry.js +2 -2
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +2 -2
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +3 -3
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +2 -2
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-item.cjs.entry.js +3 -3
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-group.cjs.entry.js +23 -17
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +38 -24
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +12 -11
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +4 -4
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +7 -7
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +7 -6
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +7 -7
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +2 -2
- package/dist/cjs/ic-search-bar.cjs.entry.js +3 -3
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +3 -3
- package/dist/cjs/ic-select.cjs.entry.js +15 -12
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +10 -7
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +3 -3
- package/dist/cjs/ic-skip-link.cjs.entry.js +11 -10
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +5 -5
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +17 -16
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +4 -4
- package/dist/cjs/ic-switch.cjs.entry.js +6 -6
- package/dist/cjs/ic-tab-context.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-tab-panel.cjs.entry.js +3 -3
- package/dist/cjs/ic-tab.cjs.entry.js +3 -3
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +33 -15
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +3 -3
- package/dist/cjs/ic-toast-region.cjs.entry.js +2 -2
- package/dist/cjs/ic-toast.cjs.entry.js +6 -6
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-toggle-button.cjs.entry.js +5 -5
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +5 -9
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/{index-d337cd8a.js → index-0236cc4b.js} +3 -1
- package/dist/cjs/index-0236cc4b.js.map +1 -0
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/collection/components/ic-badge/ic-badge.css +4 -0
- package/dist/collection/components/ic-button/ic-button.css +29 -13
- package/dist/collection/components/ic-button/ic-button.js +58 -0
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.stories.js +184 -5
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +1 -1
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +5 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +4 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +5 -5
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
- package/dist/collection/components/ic-chip/ic-chip.css +2 -2
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +4 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +1 -1
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.js +57 -66
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.stories.js +3 -2
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +2 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.css +1 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +47 -49
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +47 -17
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js.map +1 -1
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +36 -22
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
- package/dist/collection/components/ic-page-header/ic-page-header.js +10 -9
- package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.css +10 -2
- package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +19 -3
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +5 -4
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +70 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +6 -6
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -13
- package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
- package/dist/collection/components/ic-select/ic-select.css +11 -1
- package/dist/collection/components/ic-select/ic-select.js +12 -9
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +10 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +7 -4
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +57 -36
- package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
- package/dist/collection/components/ic-skip-link/ic-skip-link.css +22 -2
- package/dist/collection/components/ic-skip-link/ic-skip-link.js +13 -12
- package/dist/collection/components/ic-skip-link/ic-skip-link.js.map +1 -1
- package/dist/collection/components/ic-skip-link/ic-skip-link.stories.js +375 -31
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +2 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
- package/dist/collection/components/ic-step/ic-step.css +8 -31
- package/dist/collection/components/ic-step/ic-step.js +14 -13
- package/dist/collection/components/ic-step/ic-step.js.map +1 -1
- package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
- package/dist/collection/components/ic-stepper/ic-stepper.stories.js +5 -1
- package/dist/collection/components/ic-switch/ic-switch.js +4 -4
- package/dist/collection/components/ic-tab/ic-tab.css +13 -3
- package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
- package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
- package/dist/collection/components/ic-text-field/ic-text-field.css +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.js +111 -13
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
- package/dist/collection/components/ic-text-field/ic-text-field.stories.js +195 -9
- package/dist/collection/components/ic-theme/ic-theme.js +1 -1
- package/dist/collection/components/ic-toast/ic-toast.css +1 -1
- package/dist/collection/components/ic-toast/ic-toast.js +3 -3
- package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
- package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +5 -1
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +2 -6
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +12 -19
- package/dist/components/helpers.js +1 -1
- package/dist/components/ic-badge.js +1 -1
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-button2.js +59 -1
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +1 -1
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +5 -5
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +1 -1
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +1 -1
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-classification-banner.js +2 -2
- package/dist/components/ic-classification-banner.js.map +1 -1
- package/dist/components/ic-dialog.js +38 -47
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +1 -1
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +1 -1
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-navigation-group.js +22 -15
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +37 -23
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +10 -9
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +2 -2
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination.js +5 -5
- package/dist/components/ic-pagination.js.map +1 -1
- package/dist/components/ic-popover-menu.js +5 -4
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +5 -5
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-search-bar.js +1 -1
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-section-container2.js +2 -2
- package/dist/components/ic-select.js +13 -10
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +8 -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 +10 -9
- package/dist/components/ic-skip-link.js.map +1 -1
- package/dist/components/ic-status-tag.js +3 -3
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +15 -14
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +2 -2
- package/dist/components/ic-switch.js +4 -4
- package/dist/components/ic-tab-context.js +1 -1
- package/dist/components/ic-tab-group.js +2 -2
- package/dist/components/ic-tab-panel.js +2 -2
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +1 -1
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field.js +35 -13
- package/dist/components/ic-text-field.js.map +1 -1
- package/dist/components/ic-theme.js +1 -1
- package/dist/components/ic-toast-region.js +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.js +3 -3
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-top-navigation.js +4 -8
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/index.js +50 -0
- package/dist/components/index.js.map +1 -1
- package/dist/core/core.css +353 -245
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-03248270.entry.js +2 -0
- package/dist/core/p-03248270.entry.js.map +1 -0
- package/dist/core/p-0e5e9a11.entry.js +2 -0
- package/dist/core/p-0e5e9a11.entry.js.map +1 -0
- package/dist/core/{p-0f34465d.entry.js → p-115a684f.entry.js} +2 -2
- package/dist/core/p-1446973e.js +2 -0
- package/dist/core/p-1446973e.js.map +1 -0
- package/dist/core/p-167834c7.entry.js +2 -0
- package/dist/core/p-167834c7.entry.js.map +1 -0
- package/dist/core/{p-4e4014cd.entry.js → p-2180f2d1.entry.js} +2 -2
- package/dist/core/{p-8856dff4.entry.js → p-22eed13e.entry.js} +2 -2
- package/dist/core/p-26c50065.entry.js +2 -0
- package/dist/core/p-26c50065.entry.js.map +1 -0
- package/dist/core/{p-e25feba1.entry.js → p-2af04ace.entry.js} +2 -2
- package/dist/core/{p-e25feba1.entry.js.map → p-2af04ace.entry.js.map} +1 -1
- package/dist/core/{p-196e3d33.entry.js → p-2dd6e5bb.entry.js} +2 -2
- package/dist/core/p-2dd6e5bb.entry.js.map +1 -0
- package/dist/core/{p-fbce5f9a.entry.js → p-2f30c66a.entry.js} +2 -2
- package/dist/core/p-30b56108.entry.js +2 -0
- package/dist/core/p-30b56108.entry.js.map +1 -0
- package/dist/core/p-3373b7c4.entry.js +2 -0
- package/dist/core/p-3373b7c4.entry.js.map +1 -0
- package/dist/core/{p-de7542fa.entry.js → p-33c4851a.entry.js} +2 -2
- package/dist/core/p-33c4851a.entry.js.map +1 -0
- package/dist/core/p-38dfe702.entry.js +2 -0
- package/dist/core/p-38dfe702.entry.js.map +1 -0
- package/dist/core/{p-c19cdc86.entry.js → p-44594b52.entry.js} +2 -2
- package/dist/core/{p-72140621.entry.js → p-4681ab85.entry.js} +2 -2
- package/dist/core/{p-78c3ca49.entry.js → p-51aa5330.entry.js} +2 -2
- package/dist/core/p-54100d6b.entry.js +2 -0
- package/dist/core/p-54100d6b.entry.js.map +1 -0
- package/dist/core/p-54f6ad93.entry.js +2 -0
- package/dist/core/p-54f6ad93.entry.js.map +1 -0
- package/dist/core/p-5537abe7.entry.js +2 -0
- package/dist/core/p-5537abe7.entry.js.map +1 -0
- package/dist/core/{p-1fccec19.entry.js → p-56eb4f02.entry.js} +2 -2
- package/dist/core/p-5af75c16.entry.js +2 -0
- package/dist/core/p-5af75c16.entry.js.map +1 -0
- package/dist/core/p-5d944741.entry.js +2 -0
- package/dist/core/p-5d944741.entry.js.map +1 -0
- package/dist/core/p-5ee41fb7.entry.js +2 -0
- package/dist/core/p-5ee41fb7.entry.js.map +1 -0
- package/dist/core/{p-c3785d57.entry.js → p-5f9a9490.entry.js} +2 -2
- package/dist/core/{p-2cb55e86.entry.js → p-62a3ddd1.entry.js} +2 -2
- package/dist/core/{p-df56bc50.entry.js → p-6ab9a62b.entry.js} +2 -2
- package/dist/core/{p-9206379d.entry.js → p-702166d2.entry.js} +2 -2
- package/dist/core/{p-27de359f.entry.js → p-79e9381d.entry.js} +2 -2
- package/dist/core/p-79fef925.js +3 -0
- package/dist/core/p-79fef925.js.map +1 -0
- package/dist/core/p-7acf9ff5.entry.js +2 -0
- package/dist/core/p-7acf9ff5.entry.js.map +1 -0
- package/dist/core/{p-5fa5ba50.entry.js → p-7b1869e9.entry.js} +2 -2
- package/dist/core/{p-9ee2fe04.entry.js → p-7e243134.entry.js} +2 -2
- package/dist/core/{p-111b3186.entry.js → p-8db464d3.entry.js} +2 -2
- package/dist/core/{p-55eb89cc.entry.js → p-8faa9411.entry.js} +2 -2
- package/dist/core/p-8faa9411.entry.js.map +1 -0
- package/dist/core/{p-8870d5d8.entry.js → p-8fbcf586.entry.js} +2 -2
- package/dist/core/{p-bfee1e84.entry.js → p-9b3be8b9.entry.js} +2 -2
- package/dist/core/{p-5b7d8ee9.entry.js → p-9f6cfe53.entry.js} +2 -2
- package/dist/core/{p-98f906ba.entry.js → p-a3607521.entry.js} +2 -2
- package/dist/core/{p-59fc58e1.entry.js → p-a509a2ac.entry.js} +2 -2
- package/dist/core/p-b34dffde.entry.js +2 -0
- package/dist/core/p-b34dffde.entry.js.map +1 -0
- package/dist/core/{p-1d6638c8.entry.js → p-b504da19.entry.js} +2 -2
- package/dist/core/p-b504da19.entry.js.map +1 -0
- package/dist/core/{p-a56ec6d8.entry.js → p-b8b0146c.entry.js} +2 -2
- package/dist/core/{p-f486d4f4.entry.js → p-b8d90c6d.entry.js} +2 -2
- package/dist/core/p-b9827aa1.entry.js +2 -0
- package/dist/core/p-b9827aa1.entry.js.map +1 -0
- package/dist/core/{p-180ea8ac.entry.js → p-c23d8e7f.entry.js} +2 -2
- package/dist/core/{p-ce0fb53a.entry.js → p-c7321a55.entry.js} +2 -2
- package/dist/core/{p-94748b96.entry.js → p-cb0b0d39.entry.js} +2 -2
- package/dist/core/{p-bd802c2f.entry.js → p-cccf78f3.entry.js} +2 -2
- package/dist/core/{p-144a31ec.entry.js → p-d15aa9a1.entry.js} +2 -2
- package/dist/core/{p-90de3f5d.entry.js → p-d5054edb.entry.js} +2 -2
- package/dist/core/p-d5054edb.entry.js.map +1 -0
- package/dist/core/{p-269f841d.js → p-db4c581c.js} +2 -2
- package/dist/core/p-e3314b15.entry.js +2 -0
- package/dist/core/p-e3314b15.entry.js.map +1 -0
- package/dist/core/{p-47b46637.entry.js → p-e4f34246.entry.js} +2 -2
- package/dist/core/{p-30a262d2.entry.js → p-e54842c7.entry.js} +2 -2
- package/dist/core/p-e54842c7.entry.js.map +1 -0
- package/dist/core/{p-40bc1f3e.entry.js → p-e758962b.entry.js} +2 -2
- package/dist/core/p-e758962b.entry.js.map +1 -0
- package/dist/core/p-e97d282e.entry.js +2 -0
- package/dist/core/p-e97d282e.entry.js.map +1 -0
- package/dist/core/p-ecf68c88.entry.js +2 -0
- package/dist/core/p-ecf68c88.entry.js.map +1 -0
- package/dist/core/{p-999102ee.entry.js → p-f27ae8e6.entry.js} +2 -2
- package/dist/core/{p-78c51cba.entry.js → p-f482f6d9.entry.js} +2 -2
- package/dist/core/{p-4a5ab31e.entry.js → p-f6e19998.entry.js} +2 -2
- package/dist/core/p-f6e19998.entry.js.map +1 -0
- package/dist/core/{p-e30c6d79.entry.js → p-ff6f7f3e.entry.js} +2 -2
- package/dist/core/p-ff6f7f3e.entry.js.map +1 -0
- package/dist/esm/app-globals-85eb2251.js +52 -0
- package/dist/esm/app-globals-85eb2251.js.map +1 -0
- package/dist/esm/core.js +4 -4
- package/dist/esm/{helpers-de6293bf.js → helpers-0bd0d9f3.js} +2 -2
- package/dist/esm/{helpers-de6293bf.js.map → helpers-0bd0d9f3.js.map} +1 -1
- package/dist/esm/ic-accordion-group.entry.js +2 -2
- package/dist/esm/ic-accordion.entry.js +2 -2
- package/dist/esm/ic-alert.entry.js +2 -2
- package/dist/esm/ic-back-to-top.entry.js +2 -2
- package/dist/esm/ic-badge.entry.js +3 -3
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +2 -2
- package/dist/esm/ic-breadcrumb.entry.js +2 -2
- package/dist/esm/ic-button_3.entry.js +61 -3
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +3 -3
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +7 -7
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +3 -3
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +3 -3
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +3 -3
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +1 -1
- package/dist/esm/ic-data-row.entry.js +2 -2
- package/dist/esm/ic-dialog.entry.js +38 -47
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +2 -2
- package/dist/esm/ic-empty-state.entry.js +2 -2
- package/dist/esm/ic-footer-link-group.entry.js +2 -2
- package/dist/esm/ic-footer-link.entry.js +2 -2
- package/dist/esm/ic-footer.entry.js +2 -2
- package/dist/esm/ic-hero.entry.js +2 -2
- package/dist/esm/ic-horizontal-scroll.entry.js +2 -2
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +3 -3
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +2 -2
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-menu-group.entry.js +2 -2
- package/dist/esm/ic-menu-item.entry.js +3 -3
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js +23 -17
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +2 -2
- package/dist/esm/ic-navigation-menu.entry.js +38 -24
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +12 -11
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination-item.entry.js +4 -4
- package/dist/esm/ic-pagination-item.entry.js.map +1 -1
- package/dist/esm/ic-pagination.entry.js +7 -7
- package/dist/esm/ic-pagination.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +7 -6
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +7 -7
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +2 -2
- package/dist/esm/ic-search-bar.entry.js +3 -3
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +3 -3
- package/dist/esm/ic-select.entry.js +15 -12
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +10 -7
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +3 -3
- package/dist/esm/ic-skip-link.entry.js +11 -10
- package/dist/esm/ic-skip-link.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +5 -5
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +17 -16
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +4 -4
- package/dist/esm/ic-switch.entry.js +6 -6
- package/dist/esm/ic-tab-context.entry.js +2 -2
- package/dist/esm/ic-tab-group.entry.js +4 -4
- package/dist/esm/ic-tab-panel.entry.js +3 -3
- package/dist/esm/ic-tab.entry.js +3 -3
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-text-field.entry.js +33 -15
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +3 -3
- package/dist/esm/ic-toast-region.entry.js +2 -2
- package/dist/esm/ic-toast.entry.js +6 -6
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +4 -4
- package/dist/esm/ic-toggle-button.entry.js +5 -5
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +5 -9
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/{index-a7a720e7.js → index-0eefab7d.js} +3 -2
- package/dist/esm/index-0eefab7d.js.map +1 -0
- package/dist/esm/loader.js +4 -4
- package/dist/types/components/ic-button/ic-button.d.ts +1 -0
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -1
- package/dist/types/components/ic-dialog/ic-dialog.d.ts +4 -4
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +9 -4
- package/dist/types/components/ic-navigation-group/ic-navigation-group.types.d.ts +3 -0
- package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +2 -0
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +1 -1
- package/dist/types/components/ic-skip-link/ic-skip-link.d.ts +4 -4
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +17 -1
- package/dist/types/components.d.ts +59 -26
- package/hydrate/index.js +358 -211
- package/hydrate/index.mjs +358 -211
- package/package.json +2 -2
- package/vscode-data.json +28 -12
- package/dist/cjs/app-globals-3a1e7e63.js +0 -7
- package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
- package/dist/cjs/index-d337cd8a.js.map +0 -1
- package/dist/core/p-052d1ff0.entry.js +0 -2
- package/dist/core/p-052d1ff0.entry.js.map +0 -1
- package/dist/core/p-08fbea60.entry.js +0 -2
- package/dist/core/p-08fbea60.entry.js.map +0 -1
- package/dist/core/p-0b757d78.entry.js +0 -2
- package/dist/core/p-0b757d78.entry.js.map +0 -1
- package/dist/core/p-196e3d33.entry.js.map +0 -1
- package/dist/core/p-1d6638c8.entry.js.map +0 -1
- package/dist/core/p-1d9a929b.entry.js +0 -2
- package/dist/core/p-1d9a929b.entry.js.map +0 -1
- package/dist/core/p-30a262d2.entry.js.map +0 -1
- package/dist/core/p-40bc1f3e.entry.js.map +0 -1
- package/dist/core/p-4a5ab31e.entry.js.map +0 -1
- package/dist/core/p-55eb89cc.entry.js.map +0 -1
- package/dist/core/p-59287779.entry.js +0 -2
- package/dist/core/p-59287779.entry.js.map +0 -1
- package/dist/core/p-6c8e72b4.entry.js +0 -2
- package/dist/core/p-6c8e72b4.entry.js.map +0 -1
- package/dist/core/p-6fdb8a79.entry.js +0 -2
- package/dist/core/p-6fdb8a79.entry.js.map +0 -1
- package/dist/core/p-76bdbc98.entry.js +0 -2
- package/dist/core/p-76bdbc98.entry.js.map +0 -1
- package/dist/core/p-7ea79205.entry.js +0 -2
- package/dist/core/p-7ea79205.entry.js.map +0 -1
- package/dist/core/p-8577de91.entry.js +0 -2
- package/dist/core/p-8577de91.entry.js.map +0 -1
- package/dist/core/p-8b928cc9.entry.js +0 -2
- package/dist/core/p-8b928cc9.entry.js.map +0 -1
- package/dist/core/p-8d1bee7a.entry.js +0 -2
- package/dist/core/p-8d1bee7a.entry.js.map +0 -1
- package/dist/core/p-8e4e97b4.js +0 -3
- package/dist/core/p-8e4e97b4.js.map +0 -1
- package/dist/core/p-8f319e1e.entry.js +0 -2
- package/dist/core/p-8f319e1e.entry.js.map +0 -1
- package/dist/core/p-90de3f5d.entry.js.map +0 -1
- package/dist/core/p-912c8594.entry.js +0 -2
- package/dist/core/p-912c8594.entry.js.map +0 -1
- package/dist/core/p-9b741f96.entry.js +0 -2
- package/dist/core/p-9b741f96.entry.js.map +0 -1
- package/dist/core/p-9bcd2c77.entry.js +0 -2
- package/dist/core/p-9bcd2c77.entry.js.map +0 -1
- package/dist/core/p-abf767e3.entry.js +0 -2
- package/dist/core/p-abf767e3.entry.js.map +0 -1
- package/dist/core/p-b594bf26.entry.js +0 -2
- package/dist/core/p-b594bf26.entry.js.map +0 -1
- package/dist/core/p-caa46d81.entry.js +0 -2
- package/dist/core/p-caa46d81.entry.js.map +0 -1
- package/dist/core/p-de7542fa.entry.js.map +0 -1
- package/dist/core/p-e1255160.js +0 -2
- package/dist/core/p-e1255160.js.map +0 -1
- package/dist/core/p-e30c6d79.entry.js.map +0 -1
- package/dist/esm/app-globals-0f993ce5.js +0 -5
- package/dist/esm/app-globals-0f993ce5.js.map +0 -1
- package/dist/esm/index-a7a720e7.js.map +0 -1
- /package/dist/core/{p-0f34465d.entry.js.map → p-115a684f.entry.js.map} +0 -0
- /package/dist/core/{p-4e4014cd.entry.js.map → p-2180f2d1.entry.js.map} +0 -0
- /package/dist/core/{p-8856dff4.entry.js.map → p-22eed13e.entry.js.map} +0 -0
- /package/dist/core/{p-fbce5f9a.entry.js.map → p-2f30c66a.entry.js.map} +0 -0
- /package/dist/core/{p-c19cdc86.entry.js.map → p-44594b52.entry.js.map} +0 -0
- /package/dist/core/{p-72140621.entry.js.map → p-4681ab85.entry.js.map} +0 -0
- /package/dist/core/{p-78c3ca49.entry.js.map → p-51aa5330.entry.js.map} +0 -0
- /package/dist/core/{p-1fccec19.entry.js.map → p-56eb4f02.entry.js.map} +0 -0
- /package/dist/core/{p-c3785d57.entry.js.map → p-5f9a9490.entry.js.map} +0 -0
- /package/dist/core/{p-2cb55e86.entry.js.map → p-62a3ddd1.entry.js.map} +0 -0
- /package/dist/core/{p-df56bc50.entry.js.map → p-6ab9a62b.entry.js.map} +0 -0
- /package/dist/core/{p-9206379d.entry.js.map → p-702166d2.entry.js.map} +0 -0
- /package/dist/core/{p-27de359f.entry.js.map → p-79e9381d.entry.js.map} +0 -0
- /package/dist/core/{p-5fa5ba50.entry.js.map → p-7b1869e9.entry.js.map} +0 -0
- /package/dist/core/{p-9ee2fe04.entry.js.map → p-7e243134.entry.js.map} +0 -0
- /package/dist/core/{p-111b3186.entry.js.map → p-8db464d3.entry.js.map} +0 -0
- /package/dist/core/{p-8870d5d8.entry.js.map → p-8fbcf586.entry.js.map} +0 -0
- /package/dist/core/{p-bfee1e84.entry.js.map → p-9b3be8b9.entry.js.map} +0 -0
- /package/dist/core/{p-5b7d8ee9.entry.js.map → p-9f6cfe53.entry.js.map} +0 -0
- /package/dist/core/{p-98f906ba.entry.js.map → p-a3607521.entry.js.map} +0 -0
- /package/dist/core/{p-59fc58e1.entry.js.map → p-a509a2ac.entry.js.map} +0 -0
- /package/dist/core/{p-a56ec6d8.entry.js.map → p-b8b0146c.entry.js.map} +0 -0
- /package/dist/core/{p-f486d4f4.entry.js.map → p-b8d90c6d.entry.js.map} +0 -0
- /package/dist/core/{p-180ea8ac.entry.js.map → p-c23d8e7f.entry.js.map} +0 -0
- /package/dist/core/{p-ce0fb53a.entry.js.map → p-c7321a55.entry.js.map} +0 -0
- /package/dist/core/{p-94748b96.entry.js.map → p-cb0b0d39.entry.js.map} +0 -0
- /package/dist/core/{p-bd802c2f.entry.js.map → p-cccf78f3.entry.js.map} +0 -0
- /package/dist/core/{p-144a31ec.entry.js.map → p-d15aa9a1.entry.js.map} +0 -0
- /package/dist/core/{p-269f841d.js.map → p-db4c581c.js.map} +0 -0
- /package/dist/core/{p-47b46637.entry.js.map → p-e4f34246.entry.js.map} +0 -0
- /package/dist/core/{p-999102ee.entry.js.map → p-f27ae8e6.entry.js.map} +0 -0
- /package/dist/core/{p-78c51cba.entry.js.map → p-f482f6d9.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
|
|
1
|
-
import{r as t,c as a,h as e,H as i,g as o}from"./p-8e4e97b4.js";import{D as n,g as s,i as r,O as c,e as l,o as d,f as h,b as p,K as b,I as f,d as m}from"./p-269f841d.js";const v='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;color:var(--ic-top-navigation-text);width:100%;position:relative;--ic-typography-color:var(--ic-top-navigation-text);--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color);--navigation-link-colour:var(--ic-top-navigation-text)}:host(.dark){color:var(--ic-color-text-primary-light);--ic-typography-color:var(--ic-color-text-primary-light);--ic-top-navigation-logo:var(--ic-color-icon-neutral);--ic-top-navigation-icon:var(--ic-color-icon-neutral);--ic-top-navigation-icon-and-label:var(--ic-color-text-primary-light);--ic-top-navigation-theme:var(--ic-color-icon-neutral);--ic-top-navigation-status-tag:var(--ic-color-background-primary-dark);--ic-top-navigation-status-tag-text:var(--ic-color-brand-text);--ic-top-navigation-status-tag-secondary:var(--ic-state-layer-darken-10);--ic-top-navigation-title-hover:var(--ic-action-dark-bg-hover);--ic-top-navigation-title-pressed:var(--ic-action-dark-bg-pressed);--navigation-link-colour:var(--ic-color-text-primary-light)}:host(.dark) ::slotted(ic-navigation-button){--ic-button-icon-monochrome:var(--ic-color-text-primary-light)}::slotted(ic-navigation-button){--ic-button-icon-monochrome:white}:host .top-navigation{background-color:var(--ic-top-navigation-background);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name="search"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active,:host .title-link ::slotted(a),:host .title-link:visited ::slotted(a),:host .title-link:active ::slotted(a){color:var(--ic-top-navigation-icon-and-label);text-decoration:none;outline:none}:host .title-link:hover:not(:focus){background-color:var(--ic-top-navigation-title-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-top-navigation-title-pressed)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-space-1px) solid var(--ic-top-navigation-keyline);padding:0 var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-border-keyline-darken)}.top-panel-container{display:flex;padding-top:0.5rem;padding-bottom:0.5rem}.navigation-tabs{margin-top:calc(-1 * var(--ic-space-1px))}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.title-wrap{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}:host .app-status{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag);color:var(--ic-top-navigation-status-tag-text);--ic-typography-color:var(--ic-top-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}:host .app-version{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag-secondary);color:var(--ic-top-navigation-status-tag);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}slot[name="app-icon"]::slotted(*){fill:var(--ic-top-navigation-logo);width:2em;height:2em}slot[name="toggle-icon"] svg{fill:var(--ic-top-navigation-icon)}.search-menu-container{justify-content:right;display:flex;align-items:center}.menu-button-container{margin-left:var(--ic-space-md)}.menu-button-container .navigation-landmark-button-text{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:2.75rem}.navigation-item-list::-webkit-scrollbar{display:none}:host ic-section-container{padding-bottom:0 !important;padding-top:0 !important}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding:0 var(--ic-space-md)}}:host(.mobile-mode) .app-status,:host(.mobile-mode) .app-version{display:none}:host(.mobile-mode) .title-link{margin-right:var(--ic-space-xs)}:host(.mobile-mode) .search-menu-container{max-width:10rem}:host(.mobile-mode) .search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-border-keyline-darken);height:4rem;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:none;hyphens:none}.top-panel-container{min-height:2.5rem}.search-bar-container{margin-top:0;height:3.5rem;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name="app-icon"]::slotted(*){width:1.5em;height:1.5em}slot[name="toggle-icon"] svg{width:1.5em;height:1.5em}}@media (forced-colors: active){:host .top-navigation{border-bottom:var(--ic-border-hc)}.app-status,.app-version{border:var(--ic-border-hc)}slot[name="app-icon"]::slotted(*){fill:currentcolor}slot[name="toggle-icon"] svg{fill:currentcolor}}';const g=v;const u=class{constructor(e){t(this,e);this.icNavigationMenuClosed=a(this,"icNavigationMenuClosed",7);this.icNavigationMenuOpened=a(this,"icNavigationMenuOpened",7);this.icTopNavResized=a(this,"icTopNavResized",7);this.hasAppIcon=false;this.hasIconButtons=false;this.hasNavigation=false;this.hasSearchSlotContent=false;this.resizeObserver=null;this.searchBar=null;this.deviceSize=n.XL;this.foregroundColor=s();this.hasFullWidthSearchBar=false;this.mobileSearchBarVisible=false;this.mobileSearchHiddenOnBlur=false;this.navMenuVisible=false;this.searchButtonClick=false;this.searchValue="";this.contentAligned="full-width";this.customMobileBreakpoint=n.L;this.href="/";this.inline=false;this.shortAppTitle="";this.status="";this.theme="inherit";this.version="";this.checkSlots=()=>{this.hasAppIcon=r(this.el,"app-icon");this.hasNavigation=r(this.el,"navigation");this.hasIconButtons=r(this.el,"buttons");this.hasSearchSlotContent=r(this.el,"search")};this.initialiseSearchBar=()=>{if(this.hasSearchSlotContent){const t=c(this.el,"search");if((t===null||t===void 0?void 0:t.tagName)==="IC-SEARCH-BAR"){this.searchBar=t}else if((t===null||t===void 0?void 0:t.tagName)==="FORM"){this.searchBar=t.querySelector("ic-search-bar")}if(this.searchBar!==null){this.searchBar.hideLabel=true}}};this.menuButtonClick=()=>{this.showNavMenu(true)};this.searchButtonMouseDownHandler=()=>{this.searchButtonClick=true};this.searchButtonClickHandler=()=>{this.toggleSearchBar();this.searchButtonClick=false};this.resizeObserverCallback=t=>{if(t!==this.deviceSize){this.deviceSize=t;if(t>this.customMobileBreakpoint){this.showNavMenu(false);if(this.mobileSearchBarVisible){this.toggleSearchBar()}}this.icTopNavResized.emit({size:t});if(this.searchBar&&document.activeElement===this.searchBar){this.searchBar.setAttribute("hidden","true");this.searchBar.removeAttribute("hidden");setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback(l())}));this.resizeObserver.observe(this.el)}}watchPropHandler(t,a){d(a,t,this.initialiseSearchBar)}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.checkSlots();this.deviceSize=l();this.initialiseSearchBar()}componentDidLoad(){h(this.runResizeObserver);!r(this.el,"app-title")&&p([{prop:this.appTitle,propName:"app-title"}],"Top Navigation")}componentWillRender(){this.checkSlots()}navBarMenuCloseHandler(){var t,a;this.showNavMenu(false);(a=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("#menu-button"))===null||a===void 0?void 0:a.focus()}searchInputBlurHandler({detail:t}){if(t!==null){if(this.mobileSearchBarVisible&&!this.searchButtonClick){this.toggleSearchBar()}this.searchValue=t.value}}searchValueChangeHandler({detail:t}){this.searchValue=t.value}brandChangeHandler({detail:t}){this.foregroundColor=t.mode}toggleSearchBar(){var t;this.mobileSearchBarVisible=!this.mobileSearchBarVisible;if(this.searchBar!==null){(t=this.mobileSearchButtonEl)===null||t===void 0?void 0:t.setAttribute("aria-label",`${this.mobileSearchBarVisible?"Hide":"Show"} search`);this.hasFullWidthSearchBar=this.mobileSearchBarVisible;this.searchBar.fullWidth=this.mobileSearchBarVisible;if(this.mobileSearchBarVisible){setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}}}showNavMenu(t){this.navMenuVisible=t;(t?this.icNavigationMenuOpened:this.icNavigationMenuClosed).emit();document.body.style.height=t?"100%":"auto";document.body.style.overflow=t?"hidden":"auto"}render(){const{appTitle:t,contentAligned:a,customMobileBreakpoint:o,deviceSize:s,el:c,foregroundColor:l,hasAppIcon:d,hasFullWidthSearchBar:h,hasIconButtons:p,hasNavigation:v,hasSearchSlotContent:g,href:u,inline:y,menuButtonClick:k,mobileSearchBarVisible:x,navMenuVisible:w,searchButtonClickHandler:z,searchButtonMouseDownHandler:H,shortAppTitle:M,status:C,version:B,theme:S}=this;const T=C!=="";const j=B!=="";const N=v||p||T||j;const $=s<=n.S?"medium":"large";const I=t!==""&&m(t);const O=s<=o;const R=O?s<=n.S?"subtitle-small":"h4":"h3";const V=`${x?"Hide":"Show"} search`;const A=s<=n.S?"small":"medium";const D=r(c,"short-app-title");const L=r(c,"app-title");const W=L?"div":"a";const q=W=="a"&&{href:u};return e(i,{key:"5ca49354d8e2344b7d2cfa2089494ca2c4521b84",class:{"fullwidth-searchbar":h,"mobile-mode":O,[f.Dark]:l===f.Dark,[`ic-theme-${S}`]:S!=="inherit"}},e("div",{key:"3447c99cc05b7203ea80d0651f1ac066122697e1",class:"top-navigation"},e("ic-section-container",{key:"563a2b3fc3c7d456fee7261c2d5645948301e953",aligned:a,"full-height":true},e("header",{key:"61d58c8a68ff59cfa1b5cf75daef6c62b2b4692a",role:"banner"},e("div",{key:"17108bd26152301bf07afe95a061debb23184e8b",class:"top-panel-container"},e("div",{key:"86fe01bd6227bc0a1e1633cab7d6cff654e2a808",class:"app-details-container"},(I||L)&&e(W,Object.assign({key:"c6f2a1ed6ce7b7813f12352401c89852d6646327",class:"title-link"},q),d&&e("div",{key:"c5a2e2961b16b5f5dc6e918ba6f758e7bce09cd7",class:"app-icon-container"},e("slot",{key:"9b6d5636aa1f474bac2add8948bcd598f3d5c231",name:"app-icon"})),s<=n.S&&(!b(M)||D)?e("ic-typography",{variant:"subtitle-small","aria-label":(!L||!D)&&`${t} (${M})`},e("h1",null,D?e("slot",{name:"short-app-title"}):M)):e("ic-typography",{variant:R},e("h1",{class:"title-wrap"},L?e("slot",{name:"app-title"}):t))),T&&e("div",{key:"f4365e21d3de5cc7c0f7c6f62a64c3fa0a7415bb",class:"app-status"},e("ic-typography",{key:"9d03f72e0533c1d721142cba78ba216c9abf61c5","aria-label":"app tag",variant:"label-uppercase",class:"app-status-text"},C)),j&&e("div",{key:"318b6cf7cd4359429a6d698d40e3b99f46ac67e0",class:"app-version"},e("ic-typography",{key:"67cc4163765fb967729ba4fa03e857c1b0cc96e3",variant:"label",class:"app-version-text","aria-label":"app version"},B))),(g||N)&&e("div",{key:"0f8ce1b2c3a0cf3f3bbbe2d0285324935e5b1676",class:"search-menu-container"},e("div",{key:"a4033e992457aa434c705d0e35d24c9efb291195",class:"search-actions-container"},!O&&e("slot",{key:"d9347964c2972b338c4e09833ab94f820d8b49c8",name:"search"}),g&&O&&e("ic-button",{key:"2a3abd194a9b28efc44cf5a41151693eb718010e",id:"search-toggle-button",ref:t=>this.mobileSearchButtonEl=t,onMouseDown:H,variant:"icon-tertiary",monochrome:true,size:$,"aria-label":V,theme:l==f.Light?f.Dark:f.Light,onClick:z},e("slot",{key:"c16f8b29d593012ed8dd2b4b445d31dd82d480ba",name:"toggle-icon"},e("svg",{key:"15d23b9c31988779b6de7b70bd25034eba481ba0",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#ffffff"},e("path",{key:"6ea762e76e64bda987fc499de9b3824bd8ac51e4",d:"M0 0h24v24H0V0z",fill:"none"}),e("path",{key:"f3d1542e3882a2181b2878a3f8efffefa25364da",d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})))),p&&!O&&e("div",{key:"1f7983df6dec97f32f424bcedc8a7f535dcb32f1",class:"icon-buttons-container"},e("slot",{key:"6f4003a0878f3a117f8912cdb6c7c933da3a301c",name:"buttons"})),N&&O&&e("div",{key:"e1297f88b99a24cf167cb0b7b0a4e2e8a8af7fc5",class:"menu-button-container"},e("span",{key:"2c3d59c6da504e06992c8ac9e28df5b9b1bfa9bd",id:"navigation-landmark-button-text",class:"navigation-landmark-button-text","aria-hidden":"true"},"Main navigation button"),e("nav",{key:"d5b8883f1d10f224d59abf78a0f34d3a61270005","aria-labelledby":"navigation-landmark-button-text","aria-hidden":`${w}`},e("ic-button",{key:"9ad9fb74ad3a9b0eeec6092e99c2ef8391aa9b11",id:"menu-button",theme:l==f.Light?f.Dark:f.Light,variant:"secondary",monochrome:true,"aria-expanded":"false","aria-haspopup":"true","aria-label":`Open ${v?"navigation":"app"} menu`,size:A,onClick:k},"Menu",e("svg",{key:"ded3f2e5f78a55707eede6d016e98e844af16eb1",xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 0 24 24",width:"24px",fill:"#ffffff",slot:"left-icon"},e("path",{key:"b4fddeaafdf0461389ec523374090dfd7b73dac3",d:"M0 0h24v24H0V0z",fill:"none"}),e("path",{key:"d82f4575eccb93cd129ff89b926197fc916fa6c4",d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"})))))))),x&&e("div",{key:"b0501b50966797481c17928a8c74b51067ce0704",class:"search-bar-container"},e("slot",{key:"3efa664363b652768dac4edd539b9a12d7ce380d",name:"search"})),v&&!O&&e("div",{key:"2910033612e40f130aecbd481227b6b35696f8fa",class:"navigation-tabs"},e("span",{key:"5985db842168ce13f23474ef2f6a12be41b2c3a4",id:"navigation-landmark-text",class:"navigation-landmark-text","aria-hidden":"true"},"Main pages"),e("nav",{key:"d47d0ee9ebb470f648ac1174281b6b929963dda6","aria-labelledby":"navigation-landmark-text",class:"nav-panel-container"},e("ic-horizontal-scroll",{key:"b7e46ecab3d288786f6bdbbdd5ba4c005a77d0a5",monochrome:true,appearance:l},e("ul",{key:"b9298804c3faf2d1408814b07a4308ed5996d2fa",class:"navigation-item-list",tabindex:"-1"},e("slot",{key:"0de95baf787a0590056083079f1a37d10582322a",name:"navigation"})))))))),w&&e("ic-navigation-menu",{key:"2874e8759b549ad92e1d381fe392a3e06803219e",version:B,status:C,class:{["inline"]:!!y}},p&&e("div",{key:"fac76dda5e049b25a748b4764b88e38652b4ea47",class:"menu-buttons-slot",slot:"buttons"},e("slot",{key:"2764b8cd6c0aa44ff2021953906a1b8f3e6e3cb2",name:"buttons"})),e("ul",{key:"f492fdb06133f3717d4df00a33fad12701e0c58e",slot:"navigation"},e("slot",{key:"57611b195adad0c9bc003fd38dc6c3389b7e345c",name:"navigation"}))))}get el(){return o(this)}static get watchers(){return{appTitle:["watchPropHandler"]}}};u.style=g;export{u as ic_top_navigation};
|
2
|
-
//# sourceMappingURL=p-8f319e1e.entry.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"names":["icTopNavigationCss","IcTopNavigationStyle0","TopNavigation","constructor","hostRef","this","hasAppIcon","hasIconButtons","hasNavigation","hasSearchSlotContent","resizeObserver","searchBar","deviceSize","DEVICE_SIZES","XL","foregroundColor","getBrandForegroundAppearance","hasFullWidthSearchBar","mobileSearchBarVisible","mobileSearchHiddenOnBlur","navMenuVisible","searchButtonClick","searchValue","contentAligned","customMobileBreakpoint","L","href","inline","shortAppTitle","status","theme","version","checkSlots","isSlotUsed","el","initialiseSearchBar","slot","getSlot","tagName","querySelector","hideLabel","menuButtonClick","showNavMenu","searchButtonMouseDownHandler","searchButtonClickHandler","toggleSearchBar","resizeObserverCallback","currSize","icTopNavResized","emit","size","document","activeElement","setAttribute","removeAttribute","setTimeout","_a","focus","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","watchPropHandler","newValue","oldValue","onComponentPropUndefinedChange","disconnectedCallback","disconnect","componentWillLoad","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","appTitle","propName","componentWillRender","navBarMenuCloseHandler","_b","shadowRoot","searchInputBlurHandler","detail","value","searchValueChangeHandler","brandChangeHandler","mode","mobileSearchButtonEl","fullWidth","show","icNavigationMenuOpened","icNavigationMenuClosed","body","style","height","overflow","render","hasStatus","hasVersion","hasMenuContent","searchButtonSize","S","hasTitle","isPropDefined","overMobileBreakpoint","appTitleVariant","mobileSearchButtonTitle","menuSize","shortAppTitleSlot","hasAppTitleSlot","Component","attrs","h","Host","key","class","IcBrandForegroundEnum","Dark","aligned","role","Object","assign","name","isEmptyString","variant","id","ref","onMouseDown","monochrome","Light","onClick","xmlns","viewBox","fill","d","width","appearance","tabindex"],"sources":["src/components/ic-top-navigation/ic-top-navigation.css?tag=ic-top-navigation&encapsulation=shadow","src/components/ic-top-navigation/ic-top-navigation.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n color: var(--ic-top-navigation-text);\n width: 100%;\n position: relative;\n\n --ic-typography-color: var(--ic-top-navigation-text);\n\n --ic-button-secondary-text-monochrome: var(--ic-brand-text-color);\n --ic-button-secondary-border-monochrome: var(--ic-brand-text-color);\n --navigation-link-colour: var(--ic-top-navigation-text);\n}\n\n:host(.dark) {\n color: var(--ic-color-text-primary-light);\n --ic-typography-color: var(--ic-color-text-primary-light);\n --ic-top-navigation-logo: var(--ic-color-icon-neutral);\n --ic-top-navigation-icon: var(--ic-color-icon-neutral);\n --ic-top-navigation-icon-and-label: var(--ic-color-text-primary-light);\n --ic-top-navigation-theme: var(--ic-color-icon-neutral);\n --ic-top-navigation-status-tag: var(--ic-color-background-primary-dark);\n --ic-top-navigation-status-tag-text: var(--ic-color-brand-text);\n --ic-top-navigation-status-tag-secondary: var(--ic-state-layer-darken-10);\n --ic-top-navigation-title-hover: var(--ic-action-dark-bg-hover);\n --ic-top-navigation-title-pressed: var(--ic-action-dark-bg-pressed);\n --navigation-link-colour: var(--ic-color-text-primary-light);\n}\n\n:host(.dark) ::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: var(--ic-color-text-primary-light);\n}\n\n::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: white;\n}\n\n:host .top-navigation {\n background-color: var(--ic-top-navigation-background);\n height: max-content;\n}\n\n:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form) {\n width: 100%;\n}\n\n:host .title-link {\n display: inline-flex;\n align-items: center;\n text-decoration: none;\n padding: var(--ic-space-xxs);\n transition: var(--ic-easing-transition-fast);\n}\n\n:host .title-link,\n:host .title-link:visited,\n:host .title-link:active,\n:host .title-link ::slotted(a),\n:host .title-link:visited ::slotted(a),\n:host .title-link:active ::slotted(a) {\n color: var(--ic-top-navigation-icon-and-label);\n text-decoration: none;\n outline: none;\n}\n\n:host .title-link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-title-hover);\n}\n\n:host .title-link:active:not(:focus) {\n background-color: var(--ic-top-navigation-title-pressed);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host .title-link ic-typography {\n font-weight: 600;\n}\n\n:host .nav-panel-container {\n border-top: var(--ic-space-1px) solid var(--ic-top-navigation-keyline);\n padding: 0 var(--ic-space-lg);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n display: flex;\n}\n\n:host(.dark) .nav-panel-container {\n border-top: var(--ic-border-keyline-darken);\n}\n\n.top-panel-container {\n display: flex;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navigation-tabs {\n margin-top: calc(-1 * var(--ic-space-1px));\n}\n\n.app-details-container {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n margin-right: var(--ic-space-md);\n}\n\n.app-icon-container {\n display: flex;\n padding-right: var(--ic-space-xs);\n}\n\n.icon-buttons-container {\n display: flex;\n margin-left: var(--ic-space-md);\n}\n\n.icon-buttons-container ::slotted(nav) {\n display: flex;\n}\n\n.title-wrap {\n overflow-wrap: break-word;\n word-wrap: break-word;\n -ms-word-break: break-all;\n word-break: break-word;\n hyphens: auto;\n}\n\n:host .app-status {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag);\n color: var(--ic-top-navigation-status-tag-text);\n --ic-typography-color: var(--ic-top-navigation-status-tag-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n flex: 1 1 0;\n max-width: fit-content;\n}\n\n:host .app-version {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag-secondary);\n color: var(--ic-top-navigation-status-tag);\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n margin-left: var(--ic-space-xs);\n flex: 1 1 0;\n max-width: fit-content;\n}\n\nslot[name=\"app-icon\"]::slotted(*) {\n fill: var(--ic-top-navigation-logo);\n width: 2em;\n height: 2em;\n}\n\nslot[name=\"toggle-icon\"] svg {\n fill: var(--ic-top-navigation-icon);\n}\n\n.search-menu-container {\n justify-content: right;\n display: flex;\n align-items: center;\n}\n\n.menu-button-container {\n margin-left: var(--ic-space-md);\n}\n\n.menu-button-container .navigation-landmark-button-text {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.search-actions-container {\n display: flex;\n}\n\n.menu-buttons-slot {\n display: flex;\n flex-direction: column;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n\n.navigation-item-list {\n display: flex;\n list-style: none;\n height: 2.75rem;\n}\n\n.navigation-item-list::-webkit-scrollbar {\n display: none;\n}\n\n:host ic-section-container {\n padding-bottom: 0 !important;\n padding-top: 0 !important;\n}\n\n@media screen and (min-width: 993px) {\n .app-details-container {\n margin-right: var(--ic-space-lg);\n }\n}\n\n/* large */\n@media screen and (max-width: 1200px) {\n :host .nav-panel-container {\n padding: 0 var(--ic-space-md);\n }\n}\n\n/** Mobile styling **/\n:host(.mobile-mode) .app-status,\n:host(.mobile-mode) .app-version {\n display: none;\n}\n\n:host(.mobile-mode) .title-link {\n margin-right: var(--ic-space-xs);\n}\n\n:host(.mobile-mode) .search-menu-container {\n max-width: 10rem;\n}\n\n:host(.mobile-mode) .search-bar-container {\n display: flex;\n justify-content: center;\n align-items: center;\n border-top: var(--ic-border-keyline-darken);\n height: 4rem;\n padding-left: var(--ic-space-md);\n padding-right: var(--ic-space-md);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n}\n\n/* x small */\n@media screen and (max-width: 576px) {\n :host .title-link {\n margin-right: var(--ic-space-xxxs);\n word-break: break-word;\n hyphens: none;\n }\n\n .top-panel-container {\n min-height: 2.5rem;\n }\n\n .search-bar-container {\n margin-top: 0;\n height: 3.5rem;\n padding-left: var(--ic-space-xs);\n padding-right: var(--ic-space-xs);\n }\n\n .menu-button-container {\n margin-left: var(--ic-space-sm);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n width: 1.5em;\n height: 1.5em;\n }\n\n slot[name=\"toggle-icon\"] svg {\n width: 1.5em;\n height: 1.5em;\n }\n}\n\n@media (forced-colors: active) {\n :host .top-navigation {\n border-bottom: var(--ic-border-hc);\n }\n\n .app-status,\n .app-version {\n border: var(--ic-border-hc);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n fill: currentcolor;\n }\n\n slot[name=\"toggle-icon\"] svg {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n IcTypographyVariants,\n IcAlignment,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcBrand,\n IcDeviceSizes,\n IcValueEventDetail,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n isEmptyString,\n isPropDefined,\n} from \"../../utils/helpers\";\nimport { IcSearchBarBlurEventDetail } from \"../ic-search-bar/ic-search-bar.types\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title. Anything that is slotted here will be hidden from screen readers.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot short-app-title - Handle routing by nesting a route in the short app title (to be displayed in place of app title on small screen sizes).\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\n@Component({\n tag: \"ic-top-navigation\",\n styleUrl: \"ic-top-navigation.css\",\n shadow: true,\n})\nexport class TopNavigation {\n private hasAppIcon: boolean = false;\n private hasIconButtons: boolean = false;\n private hasNavigation: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private mobileSearchButtonEl?: HTMLIcButtonElement;\n private resizeObserver: ResizeObserver | null = null;\n private searchBar: HTMLIcSearchBarElement | null = null;\n\n @Element() el: HTMLIcTopNavigationElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() hasFullWidthSearchBar: boolean = false;\n @State() mobileSearchBarVisible: boolean = false;\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() searchValue: string = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned?: IcAlignment = \"full-width\";\n /**\n * Can set a custom breakpoint for the top navigation to switch to mobile mode.\n * Must be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`.\n */\n @Prop() customMobileBreakpoint?: IcDeviceSizes = DEVICE_SIZES.L;\n /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href?: string = \"/\";\n\n /**\n * If `true`, the flyout navigation menu on small devices will be contained by the parent element.\n */\n @Prop() inline?: boolean = false;\n\n /**\n * The short title of the app to be displayed at small screen sizes in place of the app title.\n */\n @Prop() shortAppTitle?: string = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status?: string = \"\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version?: string = \"\";\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle?: string;\n\n @Watch(\"appTitle\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for Gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once Gatsby hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * Emitted when the top navigation is resized.\n */\n @Event() icTopNavResized: EventEmitter<{ size: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.checkSlots();\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n componentWillRender(): void {\n this.checkSlots();\n }\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n this.el.shadowRoot?.querySelector<HTMLElement>(\"#menu-button\")?.focus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler({\n detail,\n }: CustomEvent<IcSearchBarBlurEventDetail>): void {\n if (detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = detail.value as string;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler({ detail }: CustomEvent<IcValueEventDetail>): void {\n this.searchValue = detail.value as string;\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.foregroundColor = detail.mode;\n }\n\n private checkSlots = () => {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n };\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot?.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot?.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\"ic-search-bar\");\n }\n\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n\n private toggleSearchBar(): void {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n\n if (this.searchBar !== null) {\n this.mobileSearchButtonEl?.setAttribute(\n \"aria-label\",\n `${this.mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`\n );\n this.hasFullWidthSearchBar = this.mobileSearchBarVisible;\n this.searchBar.fullWidth = this.mobileSearchBarVisible;\n if (this.mobileSearchBarVisible) {\n setTimeout(() => {\n this.searchBar?.focus();\n }, 100);\n }\n }\n }\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();\n document.body.style.height = show ? \"100%\" : \"auto\";\n document.body.style.overflow = show ? \"hidden\" : \"auto\";\n }\n\n private searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n\n private searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > this.customMobileBreakpoint!) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.icTopNavResized.emit({\n size: currSize,\n });\n if (this.searchBar && document.activeElement === this.searchBar) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar?.focus();\n }, 100);\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n render() {\n const {\n appTitle,\n contentAligned,\n customMobileBreakpoint,\n deviceSize,\n el,\n foregroundColor,\n hasAppIcon,\n hasFullWidthSearchBar,\n hasIconButtons,\n hasNavigation,\n hasSearchSlotContent,\n href,\n inline,\n menuButtonClick,\n mobileSearchBarVisible,\n navMenuVisible,\n searchButtonClickHandler,\n searchButtonMouseDownHandler,\n shortAppTitle,\n status,\n version,\n theme,\n } = this;\n\n const hasStatus = status !== \"\";\n const hasVersion = version !== \"\";\n const hasMenuContent =\n hasNavigation || hasIconButtons || hasStatus || hasVersion;\n\n const searchButtonSize = deviceSize <= DEVICE_SIZES.S ? \"medium\" : \"large\";\n const hasTitle = appTitle !== \"\" && isPropDefined(appTitle);\n const overMobileBreakpoint = deviceSize <= customMobileBreakpoint!;\n\n const appTitleVariant: IcTypographyVariants = overMobileBreakpoint\n ? deviceSize <= DEVICE_SIZES.S\n ? \"subtitle-small\"\n : \"h4\"\n : \"h3\";\n\n const mobileSearchButtonTitle = `${\n mobileSearchBarVisible ? \"Hide\" : \"Show\"\n } search`;\n const menuSize = deviceSize <= DEVICE_SIZES.S ? \"small\" : \"medium\";\n\n const shortAppTitleSlot = isSlotUsed(el, \"short-app-title\");\n const hasAppTitleSlot = isSlotUsed(el, \"app-title\");\n const Component = hasAppTitleSlot ? \"div\" : \"a\";\n const attrs = Component == \"a\" && {\n href: href,\n };\n\n return (\n <Host\n class={{\n \"fullwidth-searchbar\": hasFullWidthSearchBar,\n \"mobile-mode\": overMobileBreakpoint,\n [IcBrandForegroundEnum.Dark]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned={contentAligned} full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {(hasTitle || hasAppTitleSlot) && (\n <Component class=\"title-link\" {...attrs}>\n {hasAppIcon && (\n <div class=\"app-icon-container\">\n <slot name=\"app-icon\" />\n </div>\n )}\n {deviceSize <= DEVICE_SIZES.S &&\n (!isEmptyString(shortAppTitle!) || shortAppTitleSlot) ? (\n <ic-typography\n variant=\"subtitle-small\"\n aria-label={\n (!hasAppTitleSlot || !shortAppTitleSlot) &&\n `${appTitle} (${shortAppTitle})`\n }\n >\n <h1>\n {shortAppTitleSlot ? (\n <slot name=\"short-app-title\"></slot>\n ) : (\n shortAppTitle\n )}\n </h1>\n </ic-typography>\n ) : (\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">\n {hasAppTitleSlot ? (\n <slot name=\"app-title\"></slot>\n ) : (\n appTitle\n )}\n </h1>\n </ic-typography>\n )}\n </Component>\n )}\n {hasStatus && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {status}\n </ic-typography>\n </div>\n )}\n {hasVersion && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {!overMobileBreakpoint && <slot name=\"search\"></slot>}\n\n {hasSearchSlotContent && overMobileBreakpoint && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={searchButtonMouseDownHandler}\n variant=\"icon-tertiary\"\n monochrome\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n theme={\n foregroundColor == IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light\n }\n onClick={searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"#ffffff\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" />\n </svg>\n </slot>\n </ic-button>\n )}\n\n {hasIconButtons && !overMobileBreakpoint && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && overMobileBreakpoint && (\n <div class=\"menu-button-container\">\n <span\n id=\"navigation-landmark-button-text\"\n class=\"navigation-landmark-button-text\"\n aria-hidden=\"true\"\n >\n Main navigation button\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-button-text\"\n aria-hidden={`${navMenuVisible}`}\n >\n <ic-button\n id=\"menu-button\"\n theme={\n foregroundColor == IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light\n }\n variant=\"secondary\"\n monochrome\n aria-expanded=\"false\"\n aria-haspopup=\"true\"\n aria-label={`Open ${\n hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={menuButtonClick}\n >\n Menu\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n slot=\"left-icon\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" />\n </svg>\n </ic-button>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n\n {mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {hasNavigation && !overMobileBreakpoint && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main pages\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ic-horizontal-scroll\n monochrome\n appearance={foregroundColor}\n >\n <ul class=\"navigation-item-list\" tabindex=\"-1\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-horizontal-scroll>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {navMenuVisible && (\n <ic-navigation-menu\n version={version}\n status={status}\n class={{\n [\"inline\"]: !!inline,\n }}\n >\n {hasIconButtons && (\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"names":["icChipCss","IcChipStyle0","Chip","constructor","hostRef","this","inAGGrid","customColorClass","hovered","visible","disabled","dismissible","size","theme","transparentBackground","variant","dismissLabel","dismissAction","icDismiss","emit","mouseEnterHandler","mouseLeaveHandler","setChipColour","colorRGBA","customColor","convertToRGBA","r","g","b","a","el","setAttribute","customColorHandler","watchDisabledHandler","removeDisabledFalse","componentWillLoad","componentWillRender","isElInAGGrid","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","handleClick","setFocus","_b","_a","shadowRoot","querySelector","focus","render","h","Host","key","class","chip","isSlotUsed","name","target","id","tabindex","onClick","onMouseEnter","onMouseLeave","innerHTML","dismissIcon"],"sources":["src/components/ic-chip/ic-chip.css?tag=ic-chip&encapsulation=shadow","src/components/ic-chip/ic-chip.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n max-width: 100%;\n vertical-align: middle;\n}\n\n.chip {\n --chip-bg-color: transparent;\n --chip-hover-bg: var(--ic-chip-action-hover);\n --chip-pressed-bg: var(--ic-chip-action-pressed);\n\n display: flex;\n padding: var(--ic-space-xxs);\n font-size: 0.875rem;\n border-radius: var(--ic-space-md);\n text-align: left;\n text-decoration: none;\n position: relative;\n background-color: var(--chip-bg-color);\n border: var(--ic-border-width) solid transparent;\n justify-content: space-between;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .chip {\n transition: var(--ic-easing-transition-fast);\n }\n}\n\n.chip.small {\n padding: var(--ic-space-xxxs);\n border-radius: calc(var(--ic-space-md) - var(--ic-space-xxxs));\n}\n\n.chip.large {\n padding: var(--ic-space-xs);\n border-radius: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n.label {\n padding: 0 var(--ic-space-xs);\n}\n\n.chip:focus-within {\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n z-index: 1;\n}\n\nic-tooltip:focus-within {\n z-index: 1;\n}\n\n.filled {\n --chip-bg-color: var(\n --chip-custom-color,\n var(--ic-chip-background-filled-default)\n );\n --ic-typography-color: var(\n --chip-custom-foreground-color,\n var(--ic-chip-label)\n );\n\n color: var(--chip-custom-foreground-color, var(--ic-chip-label));\n}\n\n.filled.disabled {\n --chip-bg-color: var(--ic-chip-background-filled-inactive);\n}\n\n:host(.ic-chip-dark-text) {\n --chip-custom-foreground-color: var(--ic-architectural-black);\n}\n\n:host(.ic-chip-light-text) {\n --chip-custom-foreground-color: var(--ic-architectural-white);\n}\n\n:host(.ic-chip-dark-text) .chip.filled.hovered:not(:focus-within) {\n --chip-hover-bg: var(--ic-action-dark-bg-hover);\n}\n\n:host(.ic-chip-dark-text) .chip.filled:focus-within {\n --chip-pressed-bg: var(--ic-action-dark-bg-pressed);\n}\n\n:host(.ic-chip-light-text) .chip.filled.hovered:not(:focus-within) {\n --chip-hover-bg: var(--ic-action-light-bg-hover);\n}\n\n:host(.ic-chip-light-text) .chip.filled:focus-within {\n --chip-pressed-bg: var(--ic-action-light-bg-pressed);\n}\n\n.outlined {\n color: var(--ic-chip-label);\n border-color: var(--chip-custom-color, var(--ic-chip-outline));\n padding: calc(var(--ic-space-xxs));\n\n --ic-typography-color: var(--ic-chip-label);\n}\n\n.outlined.disabled {\n border: var(--ic-border-disabled);\n border-color: var(--ic-chip-outline-inactive);\n}\n\n.chip.disabled ic-typography {\n --ic-typography-color: var(--ic-chip-label-inactive);\n}\n\n.dismiss-icon {\n border: none;\n border-radius: 50%;\n padding: 0;\n color: currentcolor;\n background: none;\n cursor: pointer;\n margin: var(--ic-space-xxxs);\n height: calc(var(--ic-space-lg) - var(--ic-space-xxs));\n width: calc(var(--ic-space-lg) - var(--ic-space-xxs));\n}\n\n.dismiss-icon:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n.dismiss-icon[disabled] {\n pointer-events: none;\n color: var(--ic-chip-icon-inactive);\n}\n\n.icon {\n padding: var(--ic-space-xxxs);\n box-sizing: border-box;\n}\n\n.icon,\nic-tooltip {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.chip.disabled path,\n.chip.disabled ::slotted(svg) {\n fill: var(--ic-chip-icon-inactive);\n}\n\n.outlined.non-transparent {\n background-color: var(--ic-chip-outline-background);\n}\n\n:host .chip.hovered:not(:focus-within) {\n background-image: linear-gradient(var(--chip-hover-bg) 0 0);\n}\n\n:host .chip:focus-within {\n background-image: linear-gradient(var(--chip-pressed-bg) 0 0);\n}\n\n@media (forced-colors: active) {\n .chip {\n border: var(--ic-border-hc);\n }\n\n .chip.disabled {\n appearance: none;\n border-color: GrayText;\n }\n\n .chip.disabled ic-typography {\n --ic-typography-color: GrayText;\n }\n\n .chip.disabled path,\n .chip.disabled ::slotted(svg) {\n fill: GrayText;\n }\n\n .chip:focus-within {\n outline: none;\n border-color: Highlight;\n }\n}\n","import {\n Component,\n h,\n Prop,\n State,\n Listen,\n Event,\n EventEmitter,\n Element,\n Method,\n Watch,\n Host,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n removeDisabledFalse,\n convertToRGBA,\n isElInAGGrid,\n} from \"../../utils/helpers\";\nimport { IcColor, IcEmphasisType, IcSizes } from \"../../utils/types\";\nimport dismissIcon from \"../../assets/dismiss-icon.svg\";\n\n/**\n * @slot icon - Content will be rendered at the start of the chip.\n * @slot badge - Badge component overlaying the top right of the chip.\n */\n@Component({\n tag: \"ic-chip\",\n styleUrl: \"ic-chip.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Chip {\n private inAGGrid: boolean = false;\n\n @Element() el: HTMLIcChipElement;\n\n @State() customColorClass: string = \"\";\n @State() hovered: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * The custom chip colour. This will override the theme colour.\n * 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 @Prop() customColor?: IcColor;\n\n @Watch(\"customColor\")\n customColorHandler(): void {\n this.setChipColour();\n }\n\n /**\n * If `true`, the chip will appear disabled.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the chip will have a close button at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n\n /**\n * The text rendered within the chip.\n */\n @Prop() label!: string;\n\n /**\n * The size of the chip.\n */\n @Prop() size?: IcSizes = \"medium\";\n /**\n * Sets the chip to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n * Setting the \"customColor\" prop will override this.\n */\n @Prop() theme?: \"dark\" | \"light\" | \"inherit\" = \"inherit\";\n\n /**\n * If `true`, the outlined variant of chip will have a transparent background rather than the theme defined color.\n */\n @Prop() transparentBackground?: boolean = true;\n\n /**\n * The emphasis of the chip.\n */\n @Prop() variant?: IcEmphasisType = \"filled\";\n\n /**\n * The text in the dismiss button tooltip and aria label.\n */\n @Prop() dismissLabel?: string = \"Dismiss\";\n\n /**\n * Is emitted when the user dismisses the chip.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.customColorHandler();\n }\n\n componentWillRender(): void {\n if (isElInAGGrid(this.el)) {\n this.inAGGrid = true;\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Chip\"\n );\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n /**\n * Sets focus on the chip.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"button\")?.focus();\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private mouseEnterHandler = (): void => {\n this.hovered = true;\n };\n\n private mouseLeaveHandler = (): void => {\n this.hovered = false;\n };\n\n private setChipColour = () => {\n const colorRGBA = this.customColor ? convertToRGBA(this.customColor) : null;\n\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n this.customColorClass =\n (r * 299 + g * 587 + b * 114) / 1000 > 133.3505\n ? \"ic-chip-dark-text\"\n : \"ic-chip-light-text\";\n this.el.setAttribute(\n \"style\",\n `--chip-custom-color: rgba(${r}, ${g}, ${b}, ${a});`\n );\n } else {\n this.customColorClass = \"\";\n }\n };\n\n render() {\n const {\n label,\n variant,\n size,\n dismissible,\n visible,\n disabled,\n hovered,\n theme,\n customColorClass,\n dismissLabel,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`${customColorClass}`]:\n variant === \"filled\" && customColorClass !== \"\",\n }}\n >\n {visible && (\n <div\n class={{\n chip: true,\n [`${variant}`]: true,\n [`${size}`]: true,\n disabled: !!disabled,\n dismissible: !!dismissible,\n hovered,\n \"non-transparent\":\n this.variant === \"outlined\" && !this.transparentBackground,\n }}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"label\"\n apply-vertical-margins={false}\n class={{ label: true, \"in-ag-grid\": this.inAGGrid }}\n >\n <span>{label}</span>\n </ic-typography>\n {dismissible && (\n <ic-tooltip\n label={dismissLabel!}\n target=\"dismiss-icon\"\n class={{ \"tooltip-disabled\": !!disabled }}\n >\n <button\n id=\"dismiss-icon\"\n class=\"dismiss-icon\"\n aria-label={`${dismissLabel} ${label} chip`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n onClick={this.dismissAction}\n onMouseEnter={this.mouseEnterHandler}\n onMouseLeave={this.mouseLeaveHandler}\n innerHTML={dismissIcon}\n ></button>\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import{r as i,c as t,h as e,H as s,g as a}from"./p-8e4e97b4.js";import{c as o}from"./p-f074ef5b.js";import{f as n,t as r,i as l,b as h}from"./p-269f841d.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);opacity:0}:host(.ic-dialog-fade-in){opacity:1}:host(.disable-height-constraint){background:none;justify-content:unset;align-items:unset}.dialog.disable-height-constraint{max-height:none;position:relative}.dialog.disable-height-constraint .content-area{overflow-y:visible}@media (prefers-reduced-motion: no-preference){:host{transition:opacity var(--ic-easing-transition-slow)}.dialog{transform:translateY(-3rem);transition:transform 1000s}:host(.ic-dialog-fade-in) .dialog{transform:translateY(0);transition:transform var(--ic-easing-transition-slow)}}:host(.ic-dialog-hidden){display:none}.dialog{background-color:var(--ic-dialog-background);color:var(--ic-dialog-text-primary);--ic-typography-color:var(--ic-dialog-text-primary);border:var(--ic-space-1px) solid var(--ic-dialog-border);border-radius:var(--ic-border-radius);padding:var(--ic-space-xs) 0 var(--ic-space-md);display:flex;flex-direction:column;box-sizing:border-box;overflow-x:visible}.small{width:50%;max-width:25rem;min-height:11rem;max-height:70vh}.medium{width:70vw;max-width:44rem;min-height:12.5rem;max-height:70vh}.large{width:90vw;max-width:62.5rem;min-height:12.5rem;max-height:90vh}.heading-area{display:flex;margin-bottom:var(--ic-space-xs);padding:0 var(--ic-space-md)}.heading{overflow-wrap:break-word}.close-icon{margin-left:auto}.close-icon>svg{color:var(--ic-dialog-clear-button)}.content-area{padding:0 var(--ic-space-md);margin:0;overflow-y:auto}#dialog-content{margin-bottom:var(--ic-space-sm)}#dialog-content ::slotted(ic-typography){overflow-wrap:break-word}#dialog-content ::slotted(*){position:relative}.dialog-controls{margin-top:auto;padding:var(--ic-space-xs) var(--ic-space-md) 0;display:flex;justify-content:flex-end;gap:var(--ic-space-md)}.dialog-control-button{width:-moz-fit-content;width:fit-content}.backdrop{overflow-y:auto;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);padding-top:16px;padding-bottom:16px}.heading ic-typography{--ic-typography-color:var(--ic-dialog-text-primary)}.label ic-typography{--ic-typography-color:var(--ic-dialog-label)}@media (min-width: 800px){:host([size="large"]) .dialog:not(.disable-width-constraint)>.content-area{width:75%}}@media (max-width: 576px){.dialog{width:100vw;height:100vh;transform:translateY(-5rem);max-width:none;max-height:none;box-sizing:border-box}.backdrop{padding:0}.dialog.disable-height-constraint{height:auto;min-height:100vh}}@media (max-width: 364px){.dialog-control-button{width:unset}}';const c=d;const g=class{constructor(s){i(this,s);this.icDialogCancelled=t(this,"icDialogCancelled",7);this.icDialogClosed=t(this,"icDialogClosed",7);this.icDialogConfirmed=t(this,"icDialogConfirmed",7);this.icDialogOpened=t(this,"icDialogOpened",7);this.contentAreaMutationObserver=null;this.DATA_GETS_FOCUS="data-gets-focus";this.DIALOG_CONTROLS="dialog-controls";this.dialogHeight=0;this.focusedElementIndex=0;this.IC_TEXT_FIELD="IC-TEXT-FIELD";this.IC_ACCORDION="IC-ACCORDION";this.IC_ACCORDION_GROUP="IC-ACCORDION-GROUP";this.IC_CHECKBOX="IC-CHECKBOX";this.IC_SEARCH_BAR="IC-SEARCH-BAR";this.resizeObserver=null;this.dialogRendered=false;this.fadeIn=false;this.buttons=true;this.closeOnBackdropClick=true;this.destructive=false;this.dismissLabel="Dismiss";this.disableHeightConstraint=false;this.disableWidthConstraint=false;this.hideCloseButton=false;this.open=false;this.size="small";this.theme="inherit";this.dialogOpened=()=>{var i,t;this.dialogRendered=true;if(this.disableHeightConstraint){(i=this.dialogEl)===null||i===void 0?void 0:i.show()}else{(t=this.dialogEl)===null||t===void 0?void 0:t.showModal()}setTimeout((()=>{this.fadeIn=true;if(this.backdropEl&&this.disableHeightConstraint&&this.backdropEl.scrollTop!==0){this.backdropEl.scrollTop=0}}),10);setTimeout((()=>{this.setInitialFocus();n(this.runResizeObserver)}),75);setTimeout((()=>{this.icDialogOpened.emit()}),80)};this.runResizeObserver=()=>{if(this.dialogEl){this.resizeObserver=new ResizeObserver((()=>{clearTimeout(this.resizeTimeout);this.resizeTimeout=window.setTimeout(this.resizeObserverCallback,80)}));this.resizeObserver.observe(this.dialogEl)}};this.resizeObserverCallback=()=>{if(this.dialogEl&&this.dialogEl.clientHeight!==this.dialogHeight){this.dialogHeight=this.dialogEl.clientHeight}};this.refreshInteractiveElementsOnSlotChange=()=>{var i,t,e;const s=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("#dialog-content");if(s){this.contentArea=s.querySelector("slot");(t=this.contentArea)===null||t===void 0?void 0:t.addEventListener("slotchange",this.getInteractiveElements);this.contentAreaMutationObserver=new MutationObserver((()=>{this.getInteractiveElements()}));(e=r(s))===null||e===void 0?void 0:e.forEach((i=>{var t;(t=this.contentAreaMutationObserver)===null||t===void 0?void 0:t.observe(i,{childList:true,subtree:true})}))}};this.removeSlotChangeListener=()=>{var i;if(this.contentArea){this.contentArea.removeEventListener("slotchange",this.getInteractiveElements);(i=this.contentAreaMutationObserver)===null||i===void 0?void 0:i.disconnect()}};this.setInitialFocus=()=>{this.sourceElement=document.activeElement;this.focusedElementIndex=this.interactiveElementList?this.interactiveElementList.findIndex((i=>i.hasAttribute(this.DATA_GETS_FOCUS))):0;this.focusElement(this.interactiveElementList[this.focusedElementIndex])};this.getFocusedElementIndex=()=>{var i;for(let t=0;t<this.interactiveElementList.length;t++){if(this.interactiveElementList[t]===(((i=this.el.shadowRoot)===null||i===void 0?void 0:i.activeElement)||document.activeElement)){this.focusedElementIndex=t}}};this.closeIconClick=()=>{this.open=false};this.getInteractiveElements=()=>{var i;this.interactiveElementList=Array.from(((i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelectorAll("ic-button"))||[]);const t=Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex="-1"]),\n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible="true"], ic-footer-link, ic-link, ic-navigation-button,\n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`));if(t.length>0){if(t[0].slot!==this.DIALOG_CONTROLS){t[0].setAttribute(this.DATA_GETS_FOCUS,"")}else if(!this.destructive){t[t.length-1].setAttribute(this.DATA_GETS_FOCUS,"")}}for(let i=0;i<t.length;i++){this.interactiveElementList.splice(1+i,0,t[i])}};this.getNextFocusEl=i=>this.interactiveElementList[i];this.onTabKeyPress=i=>{this.getFocusedElementIndex();if(this.interactiveElementList[this.focusedElementIndex].tagName===this.IC_SEARCH_BAR){return false}this.setFocusIndexBasedOnShiftKey(i);this.loopNextFocusIndexIfLastElement();this.focusElement(this.getNextFocusEl(this.focusedElementIndex),i);return true};this.shouldSkipElement=i=>{const t=getComputedStyle(i).visibility==="hidden"||i.offsetHeight===0||i.hasAttribute("disabled")||i.tagName===this.IC_ACCORDION_GROUP&&i.hasAttribute("single-expansion");let e=false;if(t){e=true}else{if(i.getAttribute("type")==="radio"){const t=i.closest("ic-radio-option");if(t&&!t.hasAttribute("selected")){e=true}}}return e};this.focusElement=(i,t=false)=>{let e=i;if(this.shouldSkipElement(i)){this.setFocusIndexBasedOnShiftKey(t);this.loopNextFocusIndexIfLastElement();e=this.getNextFocusEl(this.focusedElementIndex);this.focusElement(e,t)}else{switch(i.tagName){case this.IC_ACCORDION_GROUP:case this.IC_ACCORDION:case this.IC_SEARCH_BAR:case this.IC_TEXT_FIELD:case this.IC_CHECKBOX:i.setFocus();break;default:i.focus()}}};this.renderDialog=()=>{const{buttons:i,size:t,heading:s,label:a,destructive:n,dismissLabel:r,hideCloseButton:h}=this;return e("dialog",{class:{["dialog"]:true,[`${t}`]:true,["disable-height-constraint"]:!!this.disableHeightConstraint,["disable-width-constraint"]:!!this.disableWidthConstraint},"aria-labelledby":"dialog-label dialog-heading","aria-describedby":"dialog-alert dialog-content",ref:i=>this.dialogEl=i},e("div",{class:"heading-area"},e("div",{class:"heading-content"},e("div",{class:"label"},e("slot",{name:"label"},e("ic-typography",{variant:"label",id:"dialog-label"},a))),e("div",{class:"heading"},e("slot",{name:"heading"},e("ic-typography",{variant:"h4",id:"dialog-heading"},s)))),!h&&e("ic-button",{class:"close-icon",variant:"icon",innerHTML:o,"aria-label":r,onClick:this.closeIconClick,"data-gets-focus":n||!i?"":null})),e("div",{class:"content-area"},l(this.el,"alert")&&e("slot",{name:"alert"}),e("div",{id:"dialog-content"},e("slot",null))),i&&(l(this.el,this.DIALOG_CONTROLS)?e("div",{class:{[this.DIALOG_CONTROLS]:true}},e("slot",{name:this.DIALOG_CONTROLS})):e("div",{class:{[this.DIALOG_CONTROLS]:true}},e("ic-button",{variant:"tertiary",onClick:()=>this.cancelDialog(),class:"dialog-control-button","data-gets-focus":null},"Cancel"),e("ic-button",{variant:this.destructive?"destructive":"primary",onClick:()=>this.confirmDialog(),class:"dialog-control-button","data-gets-focus":""},"Confirm"))))}}watchOpenHandler(){if(this.open){this.dialogOpened()}else{this.fadeIn=false;if(this.resizeObserver!==null){this.resizeObserver.disconnect()}setTimeout((()=>{var i,t;this.dialogRendered=false;(i=this.dialogEl)===null||i===void 0?void 0:i.close();(t=this.sourceElement)===null||t===void 0?void 0:t.focus();this.dialogHeight=0;this.icDialogClosed.emit()}),80)}}disconnectedCallback(){this.removeSlotChangeListener()}componentDidLoad(){this.getInteractiveElements();this.refreshInteractiveElementsOnSlotChange();if(this.open){this.dialogOpened()}!l(this.el,"heading")&&h([{prop:this.heading,propName:"heading"}],"Dialog")}componentDidRender(){if(getComputedStyle(this.el).display!=="none"&&this.disableHeightConstraint){document.body.style.overflow="hidden"}else{document.body.style.overflow="auto"}}handleKeyboard(i){if(this.dialogRendered){switch(i.key){case"Tab":if(this.onTabKeyPress(i.shiftKey)){i.preventDefault()}break;case"Escape":if(!i.repeat){this.open=false}i.stopImmediatePropagation();break}}}handleClick(i){if(this.dialogEl&&this.closeOnBackdropClick&&i.composedPath().indexOf(this.dialogEl)<=0){const t=this.dialogEl.getBoundingClientRect();const e=t.top<=i.clientY&&i.clientY<=t.top+t.height&&t.left<=i.clientX&&i.clientX<=t.left+t.width;if(!e){this.open=false}}}async cancelDialog(){this.icDialogCancelled.emit();this.open=false}async confirmDialog(){this.icDialogConfirmed.emit()}loopNextFocusIndexIfLastElement(){if(this.focusedElementIndex>this.interactiveElementList.length-1)this.focusedElementIndex=0;else if(this.focusedElementIndex<0){this.focusedElementIndex=this.interactiveElementList.length-1}}setFocusIndexBasedOnShiftKey(i){if(i){this.focusedElementIndex-=1}else{this.focusedElementIndex+=1}}render(){return e(s,{key:"e686f8e849f9647ee4a812e4261b7a1576d9c179",class:{["ic-dialog-hidden"]:!this.dialogRendered,["ic-dialog-fade-in"]:this.fadeIn,["disable-height-constraint"]:!!this.disableHeightConstraint,[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},this.disableHeightConstraint?e("div",{class:"backdrop",ref:i=>this.backdropEl=i},this.renderDialog()):this.renderDialog())}get el(){return a(this)}static get watchers(){return{open:["watchOpenHandler"]}}};g.style=c;export{g as ic_dialog};
|
2
|
-
//# sourceMappingURL=p-912c8594.entry.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"names":["icDialogCss","IcDialogStyle0","Dialog","constructor","hostRef","this","contentAreaMutationObserver","DATA_GETS_FOCUS","DIALOG_CONTROLS","dialogHeight","focusedElementIndex","IC_TEXT_FIELD","IC_ACCORDION","IC_ACCORDION_GROUP","IC_CHECKBOX","IC_SEARCH_BAR","resizeObserver","dialogRendered","fadeIn","buttons","closeOnBackdropClick","destructive","dismissLabel","disableHeightConstraint","disableWidthConstraint","hideCloseButton","open","size","theme","dialogOpened","_a","dialogEl","show","_b","showModal","setTimeout","backdropEl","scrollTop","setInitialFocus","checkResizeObserver","runResizeObserver","icDialogOpened","emit","ResizeObserver","clearTimeout","resizeTimeout","window","resizeObserverCallback","observe","clientHeight","refreshInteractiveElementsOnSlotChange","contentWrapper","el","shadowRoot","querySelector","contentArea","addEventListener","getInteractiveElements","MutationObserver","_c","getSlotElements","forEach","childList","subtree","removeSlotChangeListener","removeEventListener","disconnect","sourceElement","document","activeElement","interactiveElementList","findIndex","element","hasAttribute","focusElement","getFocusedElementIndex","i","length","closeIconClick","Array","from","querySelectorAll","slottedInteractiveElements","slot","setAttribute","splice","getNextFocusEl","onTabKeyPress","shiftKey","tagName","setFocusIndexBasedOnShiftKey","loopNextFocusIndexIfLastElement","shouldSkipElement","isHidden","getComputedStyle","visibility","offsetHeight","getAttribute","radioEl","closest","nextFocusEl","setFocus","focus","renderDialog","heading","label","h","class","ref","name","variant","id","innerHTML","closeIcon","onClick","isSlotUsed","cancelDialog","confirmDialog","watchOpenHandler","close","icDialogClosed","disconnectedCallback","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentDidRender","display","body","style","overflow","handleKeyboard","ev","key","preventDefault","repeat","stopImmediatePropagation","handleClick","composedPath","indexOf","rect","getBoundingClientRect","isInDialog","top","clientY","height","left","clientX","width","icDialogCancelled","icDialogConfirmed","render","Host"],"sources":["src/components/ic-dialog/ic-dialog.css?tag=ic-dialog&encapsulation=shadow","src/components/ic-dialog/ic-dialog.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-dialog: z-index of dialog \n */\n\n:host {\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100% !important;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n opacity: 0;\n}\n\n:host(.ic-dialog-fade-in) {\n opacity: 1;\n}\n\n:host(.disable-height-constraint) {\n background: none;\n justify-content: unset;\n align-items: unset;\n}\n\n.dialog.disable-height-constraint {\n max-height: none;\n position: relative;\n}\n\n.dialog.disable-height-constraint .content-area {\n overflow-y: visible;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host {\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n .dialog {\n transform: translateY(-3rem);\n transition: transform 1000s;\n }\n\n :host(.ic-dialog-fade-in) .dialog {\n transform: translateY(0);\n transition: transform var(--ic-easing-transition-slow);\n }\n}\n\n:host(.ic-dialog-hidden) {\n display: none;\n}\n\n.dialog {\n background-color: var(--ic-dialog-background);\n color: var(--ic-dialog-text-primary);\n --ic-typography-color: var(--ic-dialog-text-primary);\n border: var(--ic-space-1px) solid var(--ic-dialog-border);\n border-radius: var(--ic-border-radius);\n padding: var(--ic-space-xs) 0 var(--ic-space-md);\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n overflow-x: visible;\n}\n\n.small {\n width: 50%;\n max-width: 25rem;\n min-height: 11rem;\n max-height: 70vh;\n}\n\n.medium {\n width: 70vw;\n max-width: 44rem;\n min-height: 12.5rem;\n max-height: 70vh;\n}\n\n.large {\n width: 90vw;\n max-width: 62.5rem;\n min-height: 12.5rem;\n max-height: 90vh;\n}\n\n.heading-area {\n display: flex;\n margin-bottom: var(--ic-space-xs);\n padding: 0 var(--ic-space-md);\n}\n\n.heading {\n overflow-wrap: break-word;\n}\n\n.close-icon {\n margin-left: auto;\n}\n\n.close-icon > svg {\n color: var(--ic-dialog-clear-button);\n}\n\n.content-area {\n padding: 0 var(--ic-space-md);\n margin: 0;\n overflow-y: auto;\n}\n\n#dialog-content {\n margin-bottom: var(--ic-space-sm);\n}\n\n#dialog-content ::slotted(ic-typography) {\n overflow-wrap: break-word;\n}\n\n#dialog-content ::slotted(*) {\n position: relative;\n}\n\n.dialog-controls {\n margin-top: auto;\n padding: var(--ic-space-xs) var(--ic-space-md) 0;\n display: flex;\n justify-content: flex-end;\n gap: var(--ic-space-md);\n}\n\n.dialog-control-button {\n width: fit-content;\n}\n\n.backdrop {\n overflow-y: auto;\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n padding-top: 16px;\n padding-bottom: 16px;\n}\n\n.heading ic-typography {\n --ic-typography-color: var(--ic-dialog-text-primary);\n}\n\n.label ic-typography {\n --ic-typography-color: var(--ic-dialog-label);\n}\n\n@media (min-width: 800px) {\n :host([size=\"large\"]) .dialog:not(.disable-width-constraint) > .content-area {\n width: 75%;\n }\n}\n\n@media (max-width: 576px) {\n .dialog {\n width: 100vw;\n height: 100vh;\n transform: translateY(-5rem);\n max-width: none;\n max-height: none;\n box-sizing: border-box;\n }\n\n .backdrop {\n padding: 0;\n }\n\n .dialog.disable-height-constraint {\n height: auto;\n min-height: 100vh;\n }\n}\n\n@media (max-width: 364px) {\n .dialog-control-button {\n width: unset;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n State,\n Method,\n Listen,\n Watch,\n h,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport {\n isSlotUsed,\n checkResizeObserver,\n onComponentRequiredPropUndefined,\n getSlotElements,\n} from \"../../utils/helpers\";\nimport { IcFocusableComponents, IcThemeMode } from \"../../utils/types\";\n\n/**\n * @slot dialog-controls - Content will be place at the bottom of the dialog.\n * @slot heading - Content will be placed at the top of the dialog.\n * @slot label - Content will be placed above the dialog heading.\n * @slot alert - Content will be placed at the top of the content area of the dialog.\n */\n@Component({\n tag: \"ic-dialog\",\n styleUrl: \"ic-dialog.css\",\n shadow: true,\n})\nexport class Dialog {\n private backdropEl?: HTMLDivElement;\n private contentArea: HTMLSlotElement | null;\n private contentAreaMutationObserver: MutationObserver | null = null;\n private DATA_GETS_FOCUS: string = \"data-gets-focus\";\n private DIALOG_CONTROLS: string = \"dialog-controls\";\n private dialogEl?: HTMLDialogElement;\n private dialogHeight: number = 0;\n private focusedElementIndex = 0;\n private IC_TEXT_FIELD: string = \"IC-TEXT-FIELD\";\n private IC_ACCORDION: string = \"IC-ACCORDION\";\n private IC_ACCORDION_GROUP: string = \"IC-ACCORDION-GROUP\";\n private IC_CHECKBOX = \"IC-CHECKBOX\";\n private IC_SEARCH_BAR: string = \"IC-SEARCH-BAR\";\n private interactiveElementList: HTMLElement[];\n private resizeObserver: ResizeObserver | null = null;\n private resizeTimeout: number;\n private sourceElement: HTMLElement;\n\n @Element() el: HTMLIcDialogElement;\n\n @State() dialogRendered: boolean = false;\n @State() fadeIn: boolean = false;\n\n /**\n * If set to `false`, default buttons will not be shown, but slotted dialog controls will still be displayed.\n */\n @Prop() buttons?: boolean = true;\n\n /**\n * If set to `false`, the dialog will not close when the backdrop is clicked.\n */\n @Prop() closeOnBackdropClick?: boolean = true;\n\n /**\n * If 'true', sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button.\n */\n @Prop() destructive?: boolean = false;\n\n /**\n * Sets the dismiss label tooltip and aria label.\n */\n @Prop() dismissLabel?: string = \"Dismiss\";\n\n /**\n * If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold.\n * This prop also prevents popover elements from being cut off within the content area.\n */\n @Prop() disableHeightConstraint?: boolean = false;\n\n /**\n * If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant.\n */\n @Prop() disableWidthConstraint?: boolean = false;\n\n /**\n * If `true`, the close button will not be displayed.\n */\n @Prop() hideCloseButton?: boolean = false;\n\n /**\n * Sets the heading for the dialog.\n */\n @Prop() heading?: string;\n\n /**\n * Sets the optional label for the dialog which appears above the heading.\n */\n @Prop() label?: string;\n\n /**\n * If `true`, the dialog will be displayed.\n */\n @Prop({ reflect: true, mutable: true }) open?: boolean = false;\n\n @Watch(\"open\")\n watchOpenHandler(): void {\n if (this.open) {\n this.dialogOpened();\n } else {\n this.fadeIn = false;\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n setTimeout(() => {\n this.dialogRendered = false;\n this.dialogEl?.close();\n this.sourceElement?.focus();\n this.dialogHeight = 0;\n this.icDialogClosed.emit();\n }, 80);\n }\n }\n\n /**\n * Sets the maximum and minimum height and width for the dialog.\n */\n @Prop() size?: \"small\" | \"medium\" | \"large\" = \"small\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * Cancelation event emitted when default 'Cancel' button clicked or 'cancelDialog' method is called.\n */\n @Event() icDialogCancelled: EventEmitter<void>;\n\n /**\n * Emitted when dialog has closed.\n */\n @Event() icDialogClosed: EventEmitter<void>;\n\n /**\n * Confirmation event emitted when default 'Confirm' primary button clicked or 'confirmDialog' method is called.\n */\n @Event() icDialogConfirmed: EventEmitter<void>;\n\n /**\n * Emitted when dialog has opened.\n */\n @Event() icDialogOpened: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.removeSlotChangeListener();\n }\n\n componentDidLoad(): void {\n this.getInteractiveElements();\n\n this.refreshInteractiveElementsOnSlotChange();\n\n if (this.open) {\n this.dialogOpened();\n }\n\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Dialog\"\n );\n }\n\n componentDidRender(): void {\n if (\n getComputedStyle(this.el).display !== \"none\" &&\n this.disableHeightConstraint\n ) {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"auto\";\n }\n }\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeyboard(ev: KeyboardEvent): void {\n if (this.dialogRendered) {\n switch (ev.key) {\n case \"Tab\":\n if (this.onTabKeyPress(ev.shiftKey)) {\n ev.preventDefault();\n }\n break;\n case \"Escape\":\n if (!ev.repeat) {\n this.open = false;\n }\n ev.stopImmediatePropagation();\n break;\n }\n }\n }\n\n @Listen(\"click\", {})\n handleClick(ev: MouseEvent): void {\n if (\n this.dialogEl &&\n this.closeOnBackdropClick &&\n ev.composedPath().indexOf(this.dialogEl) <= 0\n ) {\n const rect = this.dialogEl.getBoundingClientRect();\n const isInDialog =\n rect.top <= ev.clientY &&\n ev.clientY <= rect.top + rect.height &&\n rect.left <= ev.clientX &&\n ev.clientX <= rect.left + rect.width;\n if (!isInDialog) {\n this.open = false;\n }\n }\n }\n\n /**\n * Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog.\n */\n @Method()\n async cancelDialog(): Promise<void> {\n this.icDialogCancelled.emit();\n this.open = false;\n }\n\n /**\n * Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog.\n */\n @Method()\n async confirmDialog(): Promise<void> {\n this.icDialogConfirmed.emit();\n }\n\n private dialogOpened = () => {\n this.dialogRendered = true;\n\n if (this.disableHeightConstraint) {\n this.dialogEl?.show();\n } else {\n this.dialogEl?.showModal();\n }\n\n setTimeout(() => {\n this.fadeIn = true;\n\n /**\n * This is required to set scroll back to top if:\n * - dialog content goes below the fold\n * - is closed using cancel or confirm and reopened.\n *\n * Without this, the scroll bar will start from the dialog's last scroll-x coordinate.\n */\n if (\n this.backdropEl &&\n this.disableHeightConstraint &&\n this.backdropEl.scrollTop !== 0\n ) {\n this.backdropEl.scrollTop = 0;\n }\n }, 10);\n\n setTimeout(() => {\n this.setInitialFocus();\n checkResizeObserver(this.runResizeObserver);\n }, 75);\n\n setTimeout(() => {\n this.icDialogOpened.emit();\n }, 80);\n };\n\n private runResizeObserver = () => {\n if (this.dialogEl) {\n this.resizeObserver = new ResizeObserver(() => {\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(this.resizeObserverCallback, 80);\n });\n this.resizeObserver.observe(this.dialogEl);\n }\n };\n\n private resizeObserverCallback = () => {\n if (this.dialogEl && this.dialogEl.clientHeight !== this.dialogHeight) {\n this.dialogHeight = this.dialogEl.clientHeight;\n }\n };\n\n private refreshInteractiveElementsOnSlotChange = () => {\n const contentWrapper = this.el.shadowRoot?.querySelector(\"#dialog-content\");\n\n if (contentWrapper) {\n this.contentArea = contentWrapper.querySelector(\"slot\");\n\n // Detect changes to slotted elements\n this.contentArea?.addEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n\n this.contentAreaMutationObserver = new MutationObserver(() => {\n this.getInteractiveElements();\n });\n\n // Detect changes to children of slotted elements\n getSlotElements(contentWrapper)?.forEach((el) => {\n this.contentAreaMutationObserver?.observe(el, {\n childList: true,\n subtree: true,\n });\n });\n }\n };\n\n private removeSlotChangeListener = () => {\n if (this.contentArea) {\n this.contentArea.removeEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n\n this.contentAreaMutationObserver?.disconnect();\n }\n };\n\n private setInitialFocus = () => {\n this.sourceElement = document.activeElement as HTMLElement;\n this.focusedElementIndex = this.interactiveElementList\n ? this.interactiveElementList.findIndex((element) =>\n element.hasAttribute(this.DATA_GETS_FOCUS)\n )\n : 0;\n this.focusElement(this.interactiveElementList[this.focusedElementIndex]);\n };\n\n private getFocusedElementIndex = () => {\n for (let i = 0; i < this.interactiveElementList.length; i++) {\n if (\n (this.interactiveElementList[i] as HTMLElement) ===\n (this.el.shadowRoot?.activeElement || document.activeElement)\n ) {\n this.focusedElementIndex = i;\n }\n }\n };\n\n private closeIconClick = () => {\n this.open = false;\n };\n\n private getInteractiveElements = () => {\n this.interactiveElementList = Array.from(\n this.el.shadowRoot?.querySelectorAll(\"ic-button\") || []\n );\n const slottedInteractiveElements = Array.from(\n this.el.querySelectorAll(\n `a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex=\"-1\"]),\n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible=\"true\"], ic-footer-link, ic-link, ic-navigation-button,\n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`\n )\n );\n if (slottedInteractiveElements.length > 0) {\n if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {\n slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, \"\");\n } else if (!this.destructive) {\n slottedInteractiveElements[\n slottedInteractiveElements.length - 1\n ].setAttribute(this.DATA_GETS_FOCUS, \"\");\n }\n }\n for (let i = 0; i < slottedInteractiveElements.length; i++) {\n this.interactiveElementList.splice(\n 1 + i,\n 0,\n slottedInteractiveElements[i] as HTMLElement\n );\n }\n };\n\n private getNextFocusEl = (focusedElementIndex: number) =>\n this.interactiveElementList[focusedElementIndex];\n\n private onTabKeyPress = (shiftKey: boolean): boolean => {\n this.getFocusedElementIndex();\n\n if (\n this.interactiveElementList[this.focusedElementIndex].tagName ===\n this.IC_SEARCH_BAR\n ) {\n return false;\n }\n\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n this.focusElement(this.getNextFocusEl(this.focusedElementIndex), shiftKey);\n return true;\n };\n\n private shouldSkipElement = (element: HTMLElement): boolean => {\n const isHidden =\n getComputedStyle(element).visibility === \"hidden\" ||\n element.offsetHeight === 0 ||\n element.hasAttribute(\"disabled\") ||\n (element.tagName === this.IC_ACCORDION_GROUP &&\n element.hasAttribute(\"single-expansion\"));\n\n let shouldSkipElement = false;\n\n if (isHidden) {\n shouldSkipElement = true;\n } else {\n if (element.getAttribute(\"type\") === \"radio\") {\n const radioEl = element.closest(\"ic-radio-option\");\n if (radioEl && !radioEl.hasAttribute(\"selected\")) {\n shouldSkipElement = true;\n }\n }\n }\n\n return shouldSkipElement;\n };\n\n private focusElement = (element: HTMLElement, shiftKey = false) => {\n let nextFocusEl = element;\n\n if (this.shouldSkipElement(element)) {\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n this.focusElement(nextFocusEl, shiftKey);\n } else {\n switch (element.tagName) {\n case this.IC_ACCORDION_GROUP:\n case this.IC_ACCORDION:\n case this.IC_SEARCH_BAR:\n case this.IC_TEXT_FIELD:\n case this.IC_CHECKBOX:\n (element as IcFocusableComponents).setFocus();\n break;\n default:\n (element as HTMLElement).focus();\n }\n }\n };\n\n private loopNextFocusIndexIfLastElement() {\n if (this.focusedElementIndex > this.interactiveElementList.length - 1)\n this.focusedElementIndex = 0;\n else if (this.focusedElementIndex < 0) {\n this.focusedElementIndex = this.interactiveElementList.length - 1;\n }\n }\n\n private setFocusIndexBasedOnShiftKey(shiftKey: boolean) {\n if (shiftKey) {\n this.focusedElementIndex -= 1;\n } else {\n this.focusedElementIndex += 1;\n }\n }\n\n private renderDialog = () => {\n const {\n buttons,\n size,\n heading,\n label,\n destructive,\n dismissLabel,\n hideCloseButton,\n } = this;\n\n return (\n <dialog\n class={{\n [\"dialog\"]: true,\n [`${size}`]: true,\n [\"disable-height-constraint\"]: !!this.disableHeightConstraint,\n [\"disable-width-constraint\"]: !!this.disableWidthConstraint,\n }}\n aria-labelledby=\"dialog-label dialog-heading\"\n aria-describedby=\"dialog-alert dialog-content\"\n ref={(el) => (this.dialogEl = el)}\n >\n <div class=\"heading-area\">\n <div class=\"heading-content\">\n <div class=\"label\">\n <slot name=\"label\">\n <ic-typography variant=\"label\" id=\"dialog-label\">\n {label}\n </ic-typography>\n </slot>\n </div>\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\" id=\"dialog-heading\">\n {heading}\n </ic-typography>\n </slot>\n </div>\n </div>\n {!hideCloseButton && (\n <ic-button\n class=\"close-icon\"\n variant=\"icon\"\n innerHTML={closeIcon}\n aria-label={dismissLabel}\n onClick={this.closeIconClick}\n data-gets-focus={destructive || !buttons ? \"\" : null}\n ></ic-button>\n )}\n </div>\n <div class=\"content-area\">\n {isSlotUsed(this.el, \"alert\") && <slot name=\"alert\"></slot>}\n <div id=\"dialog-content\">\n <slot></slot>\n </div>\n </div>\n {buttons &&\n (isSlotUsed(this.el, this.DIALOG_CONTROLS) ? (\n <div\n class={{\n [this.DIALOG_CONTROLS]: true,\n }}\n >\n <slot name={this.DIALOG_CONTROLS}></slot>\n </div>\n ) : (\n <div\n class={{\n [this.DIALOG_CONTROLS]: true,\n }}\n >\n <ic-button\n variant=\"tertiary\"\n onClick={() => this.cancelDialog()}\n class=\"dialog-control-button\"\n data-gets-focus={null}\n >\n Cancel\n </ic-button>\n <ic-button\n variant={this.destructive ? \"destructive\" : \"primary\"}\n onClick={() => this.confirmDialog()}\n class=\"dialog-control-button\"\n data-gets-focus=\"\"\n >\n Confirm\n </ic-button>\n </div>\n ))}\n </dialog>\n );\n };\n\n render() {\n return (\n <Host\n class={{\n [\"ic-dialog-hidden\"]: !this.dialogRendered,\n [\"ic-dialog-fade-in\"]: this.fadeIn,\n [\"disable-height-constraint\"]: !!this.disableHeightConstraint,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n >\n {this.disableHeightConstraint ? (\n <div class=\"backdrop\" ref={(el) => (this.backdropEl = el)}>\n {this.renderDialog()}\n </div>\n ) : (\n this.renderDialog()\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import{r as e,c as t,f as i,h as a,H as s,g as r}from"./p-8e4e97b4.js";import{F as o,r as n,C as l,k as c,w as d,j as h,b as u,J as b,n as p,l as f,m,i as x,K as v,x as y}from"./p-269f841d.js";const g='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-input-label-helpertext-padding:var(--ic-space-xxs);--border-color:var(--ic-text-field-border-neutral);--border-color-hover:var(--ic-text-field-border-neutral-hover);--border-color-pressed:var(--ic-text-field-border-neutral-pressed);--border-color-disabled:var(--ic-text-field-border-disabled);--border-color-error:var(--ic-text-field-border-error);--border-color-error-hover:var(--ic-text-field-border-error-hover);--border-color-error-pressed:var(--ic-text-field-border-error-pressed);--border-color-success:var(--ic-text-field-border-success);--border-color-success-hover:var(--ic-text-field-border-success-hover);--border-color-success-pressed:var(--ic-text-field-border-success-pressed);--border-color-warning:var(--ic-text-field-border-warning);--border-color-warning-hover:var(--ic-text-field-border-warning-hover);--border-color-warning-pressed:var(--ic-text-field-border-warning-pressed);--ic-input-label-text-color:var(--ic-text-field-label);--ic-input-label-helper-text-color:var(--ic-text-field-subtitle);--ic-input-validation-status-text-color:var(--ic-text-field-state-text);--ic-input-validation-error:var(--ic-text-field-state-icon-error);--ic-input-validation-warning-icon-color:var(\n --ic-text-field-state-icon-warning\n );--ic-input-validation-success-icon-color:var(\n --ic-text-field-state-icon-success\n );--ic-input-component-container-success-icon-inline-color:var(\n --ic-text-field-state-icon-success\n )}:host(.ic-text-field-disabled){--ic-input-label-text-color:var(--ic-text-field-label-disabled);--ic-input-label-helper-text-color:var(--ic-text-field-subtitle-disabled);--text-field-placeholder-color:var(\n --ic-text-field-text-area-placeholder-text-disabled\n )}:host(.ic-text-field-full-width){width:100%}::-moz-placeholder{color:var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );opacity:1}::placeholder{color:var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );opacity:1}input,textarea{border:0;border-radius:var(--ic-border-radius);color:var(--text-field-text-color, var(--ic-text-field-text));background-color:var(--input-bg-color, var(--ic-text-field-background));line-height:1.5rem;letter-spacing:0.005rem;width:100%;padding-right:var(--ic-space-xs);padding-left:var(--ic-space-xs);caret-color:var(\n --text-field-typing-cursor,\n var(--ic-text-field-typing-cursor)\n )}textarea{min-height:var(--ic-space-lg);resize:vertical;padding-top:0.375rem}input:focus,textarea:focus{border:0;outline:0}input:disabled,textarea:disabled{color:var(\n --text-field-disabled-text-color,\n var(--ic-text-field-text-disabled)\n )}input.readonly,textarea.readonly{color:var(--ic-text-field-read-only-input-text-internal)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type="number"]{-moz-appearance:textfield}textarea.no-resize{resize:none}.char-count-text{--ic-typography-color:var(--ic-text-field-character-limit);padding-right:var(--ic-space-xxxs)}:host(.ic-text-field-disabled) .char-count-text{--ic-typography-color:var(--ic-text-field-character-limit-disabled)}.no-left-pad{padding-left:0}::slotted([slot="icon"]){fill:var(--ic-text-field-text-disabled)}.has-value ::slotted([slot="icon"]){fill:var(--ic-text-field-input-internal-icon)}.char-count{margin-right:calc(-1 * var(--ic-space-xxxs))}.remaining-char-count-desc{position:absolute;left:-9999px}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-results-button,input[type="search"]::-webkit-search-results-decoration{display:none}input[type="search"].truncate-value{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media (forced-colors: active){input.readonly,textarea.readonly{color:canvastext}.has-value ::slotted([slot="icon"]){fill:currentcolor}}';const w=g;let k=0;const z=[...y,"title"];const C=class{constructor(a){e(this,a);this.getValidationText=t(this,"getValidationText",7);this.icBlur=t(this,"icBlur",7);this.icChange=t(this,"icChange",7);this.icFocus=t(this,"icFocus",7);this.icInput=t(this,"icInput",7);this.icKeydown=t(this,"icKeydown",7);this.inheritedAttributes={};this.hostMutationObserver=null;this.numChars=0;this.maxCharactersReached=false;this.maxCharactersWarning=false;this.minCharactersUnattained=false;this.maxValueExceeded=false;this.minValueUnattained=false;this.ariaAutocomplete=undefined;this.autocapitalize="off";this.autocomplete="off";this.autocorrect="off";this.autofocus=false;this.disabled=false;this.fullWidth=false;this.helperText="";this.hideCharCount=false;this.hideLabel=false;this.hiddenInput=true;this.inputId=`ic-text-field-input-${k++}`;this.inputmode="text";this.maxCharacters=0;this.minCharacters=0;this.name=this.inputId;this.placeholder="";this.readonly=false;this.required=false;this.resize=false;this.rows=1;this.size="medium";this.spellcheck=false;this.theme="inherit";this.type="text";this.validationInline=false;this.validationInlineInternal=false;this.validationStatus="";this.validationText="";this.debounce=0;this.value="";this.initialValue=this.value;this.checkChildHydration=()=>{var e;const t=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("ic-typography");if(this.hideLabel||t&&t.classList.contains("hydrated")){this.setFocus();clearInterval(this.interval)}};this.getNumberOfCharacters=e=>e!==null&&e!==undefined?e.length:0;this.getMaxValueExceeded=e=>{this.numChars=this.getNumberOfCharacters(e);if(this.type==="number"){this.minValueUnattained=!!e&&Number(e)<Number(this.min);this.maxValueExceeded=Number(e)>Number(this.max)}};this.getMaxCharactersReached=e=>{this.numChars=this.getNumberOfCharacters(e);this.maxCharactersReached=this.maxCharacters>0?this.numChars>=this.maxCharacters:false;if(this.maxCharactersWarning&&!this.maxCharactersReached){this.maxCharactersWarning=false}};this.onInput=e=>{this.value=e.target.value;this.icInput.emit({value:this.value})};this.onBlur=e=>{const t=e.target;t.removeEventListener("wheel",this.onWheel);const i=e.target.value;this.numChars=i.length;this.minCharactersUnattained=this.minCharacters>0?this.numChars<this.minCharacters:false;this.icBlur.emit({value:i})};this.onFocus=e=>{const t=e.target;t.addEventListener("wheel",this.onWheel);this.icFocus.emit({value:e.target.value})};this.onWheel=e=>{const t=e.target;if(t.type==="number"){t.blur();setTimeout((()=>{t.focus()}),0)}};this.hasStatus=e=>e!==""&&!this.disabled;this.handleFormReset=()=>{this.value=this.initialValue};this.hostMutationCallback=e=>{let t=false;e.forEach((({attributeName:e,type:i,addedNodes:a,removedNodes:s})=>{if(e&&z.includes(e)){const i=this.el.getAttribute(e);if(i){this.inheritedAttributes[e]=i}t=true}else if(i==="childList"){t=o(a,s,"icon")}}));if(t){i(this)}}}watchDisabledHandler(){n(this.disabled,this.el)}debounceChanged(){this.icChange=l(this.icChange,this.debounce)}watchValueHandler(e){let t;if(this.maxCharacters>0){t=e.substring(0,this.maxCharacters);this.value=t}else{t=e}if(this.inputEl&&this.inputEl.value!==t){this.inputEl.value=t}this.getMaxValueExceeded(t);this.getMaxCharactersReached(t);this.icChange.emit({value:t})}connectedCallback(){this.debounceChanged()}disconnectedCallback(){var e;c(this.el,this.handleFormReset);(e=this.hostMutationObserver)===null||e===void 0?void 0:e.disconnect()}componentWillLoad(){if(this.value!==this.initialValue){this.watchValueHandler(this.value)}else if(this.maxCharacters>0){this.value=this.value.substring(0,this.maxCharacters)}this.getMaxValueExceeded(this.value);this.getMaxCharactersReached(this.value);this.inheritedAttributes=d(this.el,z);if(this.readonly){this.maxValueExceeded=false;this.minValueUnattained=false}h(this.el,this.handleFormReset);n(this.disabled,this.el)}componentDidLoad(){u([{prop:this.label,propName:"label"}],"Text Field");if(this.validationInlineInternal){this.getValidationText.emit({value:this.validationText})}this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true,childList:true});if(this.autofocus&&!this.disabled&&!this.readonly){this.interval=setInterval(this.checkChildHydration,50)}}handleKeyDown(e){this.icKeydown.emit({event:e});this.maxCharactersWarning=this.maxCharactersReached}async setFocus(){var e;(e=this.inputEl)===null||e===void 0?void 0:e.focus()}render(){const{inputId:e,name:t,label:i,required:r,size:o,placeholder:n,helperText:l,hideCharCount:c,rows:d,resize:h,disabled:u,value:y,min:g,max:w,numChars:k,readonly:z,maxCharacters:C,maxCharactersWarning:I,maxCharactersReached:$,minCharacters:N,minCharactersUnattained:T,minValueUnattained:j,maxValueExceeded:F,validationStatus:L,validationText:M,validationInline:q,validationInlineInternal:V,spellcheck:H,inputmode:W,fullWidth:B,truncateValue:D,hiddenInput:K,theme:O}=this;const S=this.el;const U=z||u;const _=F||j||T||I?I?b.Warning:b.Error:L;const E=I?`Maximum input is ${C} characters`:F?`Maximum value of ${w} exceeded`:j?`Minimum value of ${g} not met`:T?`Minimum input is ${N} characters`:M;const J=z?0:C;const R=I||F||j||_===b.Error?"assertive":"polite";const A=this.hasStatus(_)&&!(_==b.Success&&q)&&!V;const G=d>1;const P=J-k;const Q=`${P} character${P===1?"":"s"} remaining.`;const X=C>0?`${e}-char-count-desc`:"";const Y=`${X} ${p(e,l!=="",A)}`.trim();const Z=U&&!z;const ee=!!this.el.querySelector(`[slot="icon"]`)&&!Z;const te=`${_===b.Error}`;K?f(true,this.el,t,y,U):m(this.el);return a(s,{key:"9175054afc7f5ab0f44c2c02d73a209676690f26",class:{"ic-text-field-full-width":!!B,[`ic-theme-${O}`]:O!=="inherit","ic-text-field-disabled":!!U}},a("ic-input-container",{key:"2cf32636f95f8ec80f25424483fcdf2afe262534",readonly:z,disabled:U},!this.hideLabel&&a("ic-input-label",{key:"3ee4d01a7e1705d1bdd1e88dc734a16f990c35c9",for:e,label:i,helperText:l,required:r,disabled:Z,readonly:z}),a("ic-input-component-container",{key:"d6300116fc334d565681cedb6c2e4b637dd8fe5f",size:o,validationStatus:_,multiLine:G,disabled:U,readonly:z,validationInline:q,fullWidth:B},ee&&a("span",{key:"2dae55d8265539a3c1b1975ebb63015fb2b66ceb",class:{readonly:!!z,"has-value":this.getNumberOfCharacters(y)>0},slot:"left-icon"},a("slot",{key:"c363bc9c876a3be7db91dd1afd8eac8013f176a2",name:"icon"})),!G?a("input",Object.assign({id:e,name:t,ref:e=>this.inputEl=e,type:this.type,min:g,max:w,value:y,class:{"no-left-pad":!ee&&!!z,readonly:!!z,"truncate-value":!!D},placeholder:n?n:"",required:r,disabled:U,readonly:z,onInput:this.onInput,onBlur:this.onBlur,onFocus:this.onFocus,"aria-label":i,"aria-describedby":Y,"aria-invalid":te,"aria-activedescendant":this.ariaActiveDescendant,"aria-expanded":this.ariaExpanded,"aria-owns":this.ariaOwns,autocomplete:this.autocomplete,autocapitalize:this.autocapitalize,spellcheck:H,inputmode:W,role:this.role,maxlength:$?C:undefined,minlength:T?N:undefined},this.inheritedAttributes)):a("textarea",Object.assign({id:e,class:{"no-resize":h===false||!!z,"no-left-pad":!ee&&!!z,readonly:!!z},name:t,ref:e=>this.inputEl=e,value:y,rows:d,required:r,disabled:U,placeholder:n?n:"",readonly:z,onInput:this.onInput,onBlur:this.onBlur,onFocus:this.onFocus,"aria-label":i,"aria-describedby":Y,"aria-invalid":te,autocapitalize:this.autocapitalize,spellcheck:H,inputmode:W,maxlength:$?C:undefined,minlength:T?N:undefined},this.inheritedAttributes)),x(S,"clear-button")&&a("slot",{key:"f08406702167a6155246e26df7fe64ef06b82976",name:"clear-button"}),x(S,"search-submit-button")&&a("slot",{key:"58c8ed7ed396953f0d4dff0aba462b10e58bd78b",name:"search-submit-button"})),x(S,"menu")&&a("slot",{key:"15496f93b502c8b0d55b0a2da6622e8ab425ef49",name:"menu"}),(!v(L)||!v(M)||J>0||F||I||T||j)&&!V&&a("ic-input-validation",{key:"675805dbde2426192861938a009728af5d0ea56f",status:this.hasStatus(_)===false||_===b.Success&&q||V?"":_,message:A?E:"",ariaLiveMode:R,for:e,fullWidth:B},!z&&J>0&&a("div",{key:"92b805a2b9b4d87347f767c750c7d9ce8be6c909",slot:"validation-message-adornment"},!c&&a("ic-typography",{key:"2a24743dc253ab95c360c2ae78e559c0437202dc",variant:"caption",class:"char-count-text"},a("span",{key:"a71f41c5313d828123d275a41ae694ec2c0b2f5e",class:"char-count"},k,"/",J)),a("span",{key:"9c6d7a87b3d4a0f2baf9b1f732f0940d5e0fbe7b",class:"remaining-char-count-desc","aria-live":"polite"},Q),a("span",{key:"3aba077c149ce80fa5732245829e6e02c4bf52c8",hidden:true,id:X},"Field can contain a maximum of ",J," characters.")))))}get el(){return r(this)}static get watchers(){return{disabled:["watchDisabledHandler"],debounce:["debounceChanged"],value:["watchValueHandler"]}}};C.style=w;export{C as ic_text_field};
|
2
|
-
//# sourceMappingURL=p-9b741f96.entry.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"names":["icTextFieldCss","IcTextFieldStyle0","inputIds","MUTABLE_ATTRIBUTES","IC_INHERITED_ARIA","TextField","constructor","hostRef","this","inheritedAttributes","hostMutationObserver","numChars","maxCharactersReached","maxCharactersWarning","minCharactersUnattained","maxValueExceeded","minValueUnattained","ariaAutocomplete","undefined","autocapitalize","autocomplete","autocorrect","autofocus","disabled","fullWidth","helperText","hideCharCount","hideLabel","hiddenInput","inputId","inputmode","maxCharacters","minCharacters","name","placeholder","readonly","required","resize","rows","size","spellcheck","theme","type","validationInline","validationInlineInternal","validationStatus","validationText","debounce","value","initialValue","checkChildHydration","el","_a","shadowRoot","querySelector","classList","contains","setFocus","clearInterval","interval","getNumberOfCharacters","length","getMaxValueExceeded","Number","min","max","getMaxCharactersReached","onInput","ev","target","icInput","emit","onBlur","removeEventListener","onWheel","icBlur","onFocus","addEventListener","icFocus","blur","setTimeout","focus","hasStatus","status","handleFormReset","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","addedNodes","removedNodes","includes","attribute","getAttribute","checkSlotInChildMutations","forceUpdate","watchDisabledHandler","removeDisabledFalse","debounceChanged","icChange","debounceEvent","watchValueHandler","newValue","substring","inputEl","connectedCallback","disconnectedCallback","removeFormResetListener","disconnect","componentWillLoad","inheritAttributes","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","getValidationText","MutationObserver","observe","attributes","childList","setInterval","handleKeyDown","icKeydown","event","render","truncateValue","disabledMode","currentStatus","IcInformationStatus","Warning","Error","currentValidationText","maxNumChars","messageAriaLive","showStatusText","Success","multiline","charsRemaining","hiddenRemainingCharCountDesc","hiddenCharCountDescId","describedBy","getInputDescribedByText","trim","disabledText","showLeftIcon","invalid","renderHiddenInput","removeHiddenInput","h","Host","key","class","for","multiLine","slot","Object","assign","id","ref","ariaActiveDescendant","ariaExpanded","ariaOwns","role","maxlength","minlength","isSlotUsed","isEmptyString","message","ariaLiveMode","variant","hidden"],"sources":["src/components/ic-text-field/ic-text-field.css?tag=ic-text-field&encapsulation=shadow","src/components/ic-text-field/ic-text-field.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n /**\n * @prop --input-width: Width of the input field\n */\n display: block;\n\n --ic-input-label-helpertext-padding: var(--ic-space-xxs);\n --border-color: var(--ic-text-field-border-neutral);\n --border-color-hover: var(--ic-text-field-border-neutral-hover);\n --border-color-pressed: var(--ic-text-field-border-neutral-pressed);\n --border-color-disabled: var(--ic-text-field-border-disabled);\n --border-color-error: var(--ic-text-field-border-error);\n --border-color-error-hover: var(--ic-text-field-border-error-hover);\n --border-color-error-pressed: var(--ic-text-field-border-error-pressed);\n --border-color-success: var(--ic-text-field-border-success);\n --border-color-success-hover: var(--ic-text-field-border-success-hover);\n --border-color-success-pressed: var(--ic-text-field-border-success-pressed);\n --border-color-warning: var(--ic-text-field-border-warning);\n --border-color-warning-hover: var(--ic-text-field-border-warning-hover);\n --border-color-warning-pressed: var(--ic-text-field-border-warning-pressed);\n --ic-input-label-text-color: var(--ic-text-field-label);\n --ic-input-label-helper-text-color: var(--ic-text-field-subtitle);\n --ic-input-validation-status-text-color: var(--ic-text-field-state-text);\n --ic-input-validation-error: var(--ic-text-field-state-icon-error);\n --ic-input-validation-warning-icon-color: var(\n --ic-text-field-state-icon-warning\n );\n --ic-input-validation-success-icon-color: var(\n --ic-text-field-state-icon-success\n );\n --ic-input-component-container-success-icon-inline-color: var(\n --ic-text-field-state-icon-success\n );\n}\n\n:host(.ic-text-field-disabled) {\n --ic-input-label-text-color: var(--ic-text-field-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-text-field-subtitle-disabled);\n --text-field-placeholder-color: var(\n --ic-text-field-text-area-placeholder-text-disabled\n );\n}\n\n:host(.ic-text-field-full-width) {\n width: 100%;\n}\n\n::placeholder {\n color: var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );\n opacity: 1;\n}\n\ninput,\ntextarea {\n border: 0;\n border-radius: var(--ic-border-radius);\n color: var(--text-field-text-color, var(--ic-text-field-text));\n background-color: var(--input-bg-color, var(--ic-text-field-background));\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n padding-right: var(--ic-space-xs);\n padding-left: var(--ic-space-xs);\n caret-color: var(\n --text-field-typing-cursor,\n var(--ic-text-field-typing-cursor)\n );\n}\n\ntextarea {\n min-height: var(--ic-space-lg);\n resize: vertical;\n padding-top: 0.375rem;\n}\n\ninput:focus,\ntextarea:focus {\n border: 0;\n outline: 0;\n}\n\ninput:disabled,\ntextarea:disabled {\n color: var(\n --text-field-disabled-text-color,\n var(--ic-text-field-text-disabled)\n );\n}\n\ninput.readonly,\ntextarea.readonly {\n color: var(--ic-text-field-read-only-input-text-internal);\n}\n\n/* Chrome, Safari, Edge */\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n/* Firefox */\ninput[type=\"number\"] {\n -moz-appearance: textfield;\n}\n\ntextarea.no-resize {\n resize: none;\n}\n\n.char-count-text {\n --ic-typography-color: var(--ic-text-field-character-limit);\n\n padding-right: var(--ic-space-xxxs);\n}\n\n:host(.ic-text-field-disabled) .char-count-text {\n --ic-typography-color: var(--ic-text-field-character-limit-disabled);\n}\n\n.no-left-pad {\n padding-left: 0;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-text-field-text-disabled);\n}\n\n.has-value ::slotted([slot=\"icon\"]) {\n fill: var(--ic-text-field-input-internal-icon);\n}\n\n.char-count {\n margin-right: calc(-1 * var(--ic-space-xxxs));\n}\n\n.remaining-char-count-desc {\n position: absolute;\n left: -9999px;\n}\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n display: none;\n}\n\ninput[type=\"search\"].truncate-value {\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n@media (forced-colors: active) {\n input.readonly,\n textarea.readonly {\n color: canvastext;\n }\n\n .has-value ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n Method,\n h,\n forceUpdate,\n} from \"@stencil/core\";\nimport {\n IcInformationStatus,\n IcAutocompleteTypes,\n IcAutocorrectStates,\n IcInformationStatusOrEmpty,\n IcValueEventDetail,\n IcSizesNoLarge,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n inheritAttributes,\n debounceEvent,\n getInputDescribedByText,\n renderHiddenInput,\n isEmptyString,\n onComponentRequiredPropUndefined,\n addFormResetListener,\n removeFormResetListener,\n isSlotUsed,\n removeDisabledFalse,\n checkSlotInChildMutations,\n removeHiddenInput,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcAriaAutocompleteTypes,\n IcTextFieldInputModes,\n IcTextFieldTypes,\n} from \"./ic-text-field.types\";\n\nlet inputIds = 0;\nconst MUTABLE_ATTRIBUTES = [...IC_INHERITED_ARIA, \"title\"];\n\n/**\n * @slot icon - Content will be placed to the left of the text input.\n */\n@Component({\n tag: \"ic-text-field\",\n styleUrl: \"ic-text-field.css\",\n shadow: true,\n})\nexport class TextField {\n private inheritedAttributes: { [k: string]: string } = {};\n private inputEl: HTMLInputElement | HTMLTextAreaElement;\n private hostMutationObserver: MutationObserver | null = null;\n private interval: ReturnType<typeof setInterval>;\n\n @Element() el: HTMLIcTextFieldElement;\n\n @State() numChars: number = 0;\n @State() maxCharactersReached: boolean = false;\n @State() maxCharactersWarning: boolean = false;\n @State() minCharactersUnattained: boolean = false;\n @State() maxValueExceeded: boolean = false;\n @State() minValueUnattained: boolean = false;\n\n /**\n * @slot clear-button - an ic-button clear component will render as an end adornment to the input.\n * @slot search-submit-button - an ic-button search submit component will render as an end adornment to the input.\n * @slot menu - an ic-menu component will appear below the input.\n */\n\n /**\n * @internal The active element when focus is on the ic-menu items.\n */\n @Prop() ariaActiveDescendant?: string;\n\n /**\n * @internal Used to identify whether inputting any text triggers more predictions\n */\n @Prop() ariaAutocomplete?: IcAriaAutocompleteTypes = undefined;\n\n /**\n * @internal Used to identify if the slotted menu is rendered\n */\n @Prop() ariaExpanded: string | undefined;\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaOwns?: string;\n\n /**\n * The automatic capitalisation of the text value as it is entered/edited by the user.\n * Available options: \"off\", \"none\", \"on\", \"sentences\", \"words\", \"characters\".\n */\n @Prop() autocapitalize: string | undefined = \"off\";\n\n /**\n * The state of autocompletion the browser can apply on the text value.\n */\n @Prop() autocomplete?: IcAutocompleteTypes = \"off\";\n\n /**\n * The state of autocorrection the browser can apply when the user is entering/editing the text value.\n */\n @Prop() autocorrect?: IcAutocorrectStates = \"off\";\n\n /**\n * If `true`, the form control will have input focus when the page loads.\n */\n @Prop() autofocus: boolean | undefined = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el as HTMLElement);\n }\n\n /**\n * Specify whether the text field fills the full width of the container.\n * If `true`, this overrides the --input-width CSS variable.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the character count which is displayed when `maxCharacters` is set will be visually hidden.\n */\n @Prop() hideCharCount?: boolean = false;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * @internal If `true`, the hidden form input will stop rendering for form submission.\n */\n @Prop() hiddenInput?: boolean = true;\n\n /**\n * The ID for the input.\n */\n @Prop() inputId?: string = `ic-text-field-input-${inputIds++}`;\n\n /**\n * A hint to the browser for which keyboard to display.\n * Possible values: `\"none\"`, `\"text\"`, `\"tel\"`, `\"url\"`,\n * `\"email\"`, `\"numeric\"`, `\"decimal\"`, and `\"search\"`.\n */\n @Prop() inputmode?: IcTextFieldInputModes = \"text\";\n\n /**\n * The label for the input.\n */\n @Prop() label!: string;\n\n /**\n * The maximum number that can be accepted as a value, when `type` is `number` and `rows` is `1`. (NOTE: Ensure to include visual indication of max value in `helperText` or `label`)\n */\n @Prop() max?: string | number;\n\n /**\n * The count of characters in the field. Will display a warning if the bound is reached. (NOTE: If the value of the text field has been set using the `value` prop, it will be truncated to this number of characters)\n */\n @Prop() maxCharacters?: number = 0;\n\n /**\n * The minimum number that can be accepted as a value, when `type` is `number` and `rows` is `1`. (NOTE: Ensure to include visual indication of min value in `helperText` or `label`)\n */\n @Prop() min?: string | number;\n\n /**\n * The minimum number of characters that can be entered in the field.\n */\n @Prop() minCharacters?: number = 0;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The placeholder value to be displayed.\n */\n @Prop() placeholder?: string = \"\";\n\n /**\n * If `true`, the read only state will be set.\n */\n @Prop({ reflect: true }) readonly?: boolean = false;\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, the multiline text area will be resizeable.\n */\n @Prop() resize?: boolean = false;\n\n /**\n * @internal Used to set the role if not default textbox;\n */\n @Prop() role: string | undefined;\n\n /**\n * The number of rows to transform the text field into a text area with a specific height.\n */\n @Prop() rows?: number = 1;\n\n /**\n * The size of the text field component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * If `true`, the value of the text field will have its spelling and grammar checked.\n */\n @Prop() spellcheck: boolean | undefined = false;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal If `true`, an ellipsis will be displayed at the end of the value if the value is longer than the container.\n */\n @Prop() truncateValue?: boolean;\n\n /**\n * The type of control to display. The default type is text.\n */\n @Prop() type?: IcTextFieldTypes = \"text\";\n\n /**\n * If `true`, the icon in input control will be displayed - only applies when validationStatus ='success'.\n */\n @Prop() validationInline?: boolean = false;\n\n /**\n * @internal If `true`, the validation will display inline.\n */\n @Prop() validationInlineInternal?: boolean = false;\n\n /**\n * The validation state - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The validation state - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce?: number = 0;\n\n @Watch(\"debounce\")\n private debounceChanged() {\n this.icChange = debounceEvent(this.icChange, this.debounce!);\n }\n\n /**\n * The value of the text field.\n */\n @Prop({ reflect: true, mutable: true }) value: string = \"\";\n @State() initialValue = this.value;\n\n @Watch(\"value\")\n private watchValueHandler(newValue: string): void {\n let value;\n\n if (this.maxCharacters! > 0) {\n value = newValue.substring(0, this.maxCharacters);\n this.value = value;\n } else {\n value = newValue;\n }\n\n if (this.inputEl && this.inputEl.value !== value) {\n this.inputEl.value = value;\n }\n\n this.getMaxValueExceeded(value);\n\n this.getMaxCharactersReached(value);\n\n this.icChange.emit({ value });\n }\n\n /**\n * @internal Emitted when the validationInlineInternal is `true`\n */\n @Event() getValidationText: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when input loses focus.\n */\n @Event() icBlur: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when input gains focus.\n */\n @Event() icFocus: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when a keydown event occurred.\n */\n @Event() icKeydown: EventEmitter<{ event: KeyboardEvent }>;\n\n connectedCallback(): void {\n this.debounceChanged();\n }\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el as HTMLElement, this.handleFormReset);\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n if (this.value !== this.initialValue) {\n this.watchValueHandler(this.value);\n } else if (this.maxCharacters! > 0) {\n this.value = this.value.substring(0, this.maxCharacters);\n }\n\n this.getMaxValueExceeded(this.value);\n this.getMaxCharactersReached(this.value);\n\n this.inheritedAttributes = inheritAttributes(\n this.el as HTMLElement,\n MUTABLE_ATTRIBUTES\n );\n\n if (this.readonly) {\n this.maxValueExceeded = false;\n this.minValueUnattained = false;\n }\n\n addFormResetListener(this.el as HTMLElement, this.handleFormReset);\n\n removeDisabledFalse(this.disabled, this.el as HTMLElement);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Text Field\"\n );\n if (this.validationInlineInternal) {\n this.getValidationText.emit({ value: this.validationText! });\n }\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n childList: true,\n });\n\n if (this.autofocus && !this.disabled && !this.readonly) {\n this.interval = setInterval(this.checkChildHydration, 50);\n }\n }\n\n private checkChildHydration = () => {\n const el = this.el.shadowRoot?.querySelector(\"ic-typography\");\n if (this.hideLabel || (el && el.classList.contains(\"hydrated\"))) {\n this.setFocus();\n clearInterval(this.interval);\n }\n };\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n this.icKeydown.emit({ event: ev });\n this.maxCharactersWarning = this.maxCharactersReached;\n }\n\n /**\n * Sets focus on the native `input`.\n */\n\n @Method()\n async setFocus() {\n this.inputEl?.focus();\n }\n\n private getNumberOfCharacters = (value: string) =>\n value !== null && value !== undefined ? value.length : 0;\n\n private getMaxValueExceeded = (value: string) => {\n this.numChars = this.getNumberOfCharacters(value);\n\n if (this.type === \"number\") {\n this.minValueUnattained = !!value && Number(value) < Number(this.min);\n this.maxValueExceeded = Number(value) > Number(this.max);\n }\n };\n\n private getMaxCharactersReached = (value: string) => {\n this.numChars = this.getNumberOfCharacters(value);\n\n this.maxCharactersReached =\n this.maxCharacters! > 0 ? this.numChars >= this.maxCharacters! : false;\n\n if (this.maxCharactersWarning && !this.maxCharactersReached) {\n this.maxCharactersWarning = false;\n }\n };\n\n private onInput = (ev: Event) => {\n this.value = (ev.target as HTMLInputElement).value;\n this.icInput.emit({ value: this.value });\n };\n\n private onBlur = (ev: Event) => {\n const target = ev.target as HTMLInputElement;\n target.removeEventListener(\"wheel\", this.onWheel);\n const value = (ev.target as HTMLInputElement).value;\n this.numChars = value.length;\n this.minCharactersUnattained =\n this.minCharacters! > 0 ? this.numChars < this.minCharacters! : false;\n this.icBlur.emit({ value: value });\n };\n\n private onFocus = (ev: Event) => {\n const target = ev.target as HTMLInputElement;\n target.addEventListener(\"wheel\", this.onWheel);\n this.icFocus.emit({ value: (ev.target as HTMLInputElement).value });\n };\n\n private onWheel = (ev: WheelEvent) => {\n const target = ev.target as HTMLInputElement;\n if (target.type === \"number\") {\n target.blur();\n setTimeout(() => {\n target.focus();\n }, 0);\n }\n };\n\n private hasStatus = (status: IcInformationStatusOrEmpty) =>\n status !== \"\" && !this.disabled;\n\n private handleFormReset = (): void => {\n this.value = this.initialValue;\n };\n\n // triggered when attributes of host element change\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n let forceComponentUpdate = false;\n mutationList.forEach(\n ({ attributeName, type, addedNodes, removedNodes }) => {\n if (attributeName && MUTABLE_ATTRIBUTES.includes(attributeName)) {\n const attribute = this.el.getAttribute(attributeName);\n if (attribute) {\n this.inheritedAttributes[attributeName] = attribute;\n }\n forceComponentUpdate = true;\n } else if (type === \"childList\") {\n forceComponentUpdate = checkSlotInChildMutations(\n addedNodes,\n removedNodes,\n \"icon\"\n );\n }\n }\n );\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n render() {\n const {\n inputId,\n name,\n label,\n required,\n size,\n placeholder,\n helperText,\n hideCharCount,\n rows,\n resize,\n disabled,\n value,\n min,\n max,\n numChars,\n readonly,\n maxCharacters,\n maxCharactersWarning,\n maxCharactersReached,\n minCharacters,\n minCharactersUnattained,\n minValueUnattained,\n maxValueExceeded,\n validationStatus,\n validationText,\n validationInline,\n validationInlineInternal,\n spellcheck,\n inputmode,\n fullWidth,\n truncateValue,\n hiddenInput,\n theme,\n } = this;\n\n const el = this.el as HTMLElement;\n\n const disabledMode = readonly || disabled;\n\n const currentStatus =\n maxValueExceeded ||\n minValueUnattained ||\n minCharactersUnattained ||\n maxCharactersWarning\n ? maxCharactersWarning\n ? IcInformationStatus.Warning\n : IcInformationStatus.Error\n : validationStatus;\n\n const currentValidationText = maxCharactersWarning\n ? `Maximum input is ${maxCharacters} characters`\n : maxValueExceeded\n ? `Maximum value of ${max} exceeded`\n : minValueUnattained\n ? `Minimum value of ${min} not met`\n : minCharactersUnattained\n ? `Minimum input is ${minCharacters} characters`\n : validationText;\n\n const maxNumChars = readonly ? 0 : maxCharacters;\n const messageAriaLive =\n maxCharactersWarning ||\n maxValueExceeded ||\n minValueUnattained ||\n currentStatus === IcInformationStatus.Error\n ? \"assertive\"\n : \"polite\";\n\n const showStatusText =\n this.hasStatus(currentStatus!) &&\n !(currentStatus == IcInformationStatus.Success && validationInline) &&\n !validationInlineInternal;\n\n const multiline = rows! > 1;\n\n const charsRemaining = maxNumChars! - numChars;\n const hiddenRemainingCharCountDesc = `${charsRemaining} character${\n charsRemaining === 1 ? \"\" : \"s\"\n } remaining.`;\n const hiddenCharCountDescId =\n maxCharacters! > 0 ? `${inputId}-char-count-desc` : \"\";\n\n const describedBy = `${hiddenCharCountDescId} ${getInputDescribedByText(\n inputId!,\n helperText !== \"\",\n showStatusText\n )}`.trim();\n\n const disabledText = disabledMode && !readonly;\n const showLeftIcon =\n !!this.el.querySelector(`[slot=\"icon\"]`) && !disabledText;\n\n const invalid = `${currentStatus === IcInformationStatus.Error}`;\n\n hiddenInput\n ? renderHiddenInput(\n true,\n this.el as HTMLElement,\n name!,\n value,\n disabledMode\n )\n : removeHiddenInput(this.el as HTMLElement);\n\n return (\n <Host\n class={{\n \"ic-text-field-full-width\": !!fullWidth,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-text-field-disabled\": !!disabledMode,\n }}\n >\n <ic-input-container readonly={readonly} disabled={disabledMode}>\n {!this.hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabledText}\n readonly={readonly}\n ></ic-input-label>\n )}\n\n <ic-input-component-container\n size={size}\n validationStatus={currentStatus}\n multiLine={multiline}\n disabled={disabledMode}\n readonly={readonly}\n validationInline={validationInline}\n fullWidth={fullWidth}\n >\n {showLeftIcon && (\n <span\n class={{\n readonly: !!readonly,\n \"has-value\": this.getNumberOfCharacters(value) > 0,\n }}\n slot=\"left-icon\"\n >\n <slot name=\"icon\" />\n </span>\n )}\n\n {!multiline ? (\n <input\n id={inputId}\n name={name}\n ref={(el) => (this.inputEl = el as HTMLInputElement)}\n type={this.type}\n min={min}\n max={max}\n value={value}\n class={{\n \"no-left-pad\": !showLeftIcon && !!readonly,\n readonly: !!readonly,\n \"truncate-value\": !!truncateValue,\n }}\n placeholder={placeholder ? placeholder : \"\"}\n required={required}\n disabled={disabledMode}\n readonly={readonly}\n onInput={this.onInput}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-expanded={this.ariaExpanded}\n aria-owns={this.ariaOwns}\n autocomplete={this.autocomplete}\n autocapitalize={this.autocapitalize}\n spellcheck={spellcheck}\n inputmode={inputmode}\n role={this.role}\n maxlength={maxCharactersReached ? maxCharacters : undefined}\n minlength={minCharactersUnattained ? minCharacters : undefined}\n {...this.inheritedAttributes}\n ></input>\n ) : (\n <textarea\n id={inputId}\n class={{\n \"no-resize\": resize === false || !!readonly,\n \"no-left-pad\": !showLeftIcon && !!readonly,\n readonly: !!readonly,\n }}\n name={name}\n ref={(el) => (this.inputEl = el as HTMLTextAreaElement)}\n value={value}\n rows={rows}\n required={required}\n disabled={disabledMode}\n placeholder={placeholder ? placeholder : \"\"}\n readonly={readonly}\n onInput={this.onInput}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n autocapitalize={this.autocapitalize}\n spellcheck={spellcheck}\n inputmode={inputmode}\n maxlength={maxCharactersReached ? maxCharacters : undefined}\n minlength={minCharactersUnattained ? minCharacters : undefined}\n {...this.inheritedAttributes}\n ></textarea>\n )}\n {isSlotUsed(el, \"clear-button\") && (\n <slot name=\"clear-button\"></slot>\n )}\n {isSlotUsed(el, \"search-submit-button\") && (\n <slot name=\"search-submit-button\"></slot>\n )}\n </ic-input-component-container>\n {isSlotUsed(el, \"menu\") && <slot name=\"menu\"></slot>}\n {(!isEmptyString(validationStatus!) ||\n !isEmptyString(validationText!) ||\n maxNumChars! > 0 ||\n maxValueExceeded ||\n maxCharactersWarning ||\n minCharactersUnattained ||\n minValueUnattained) &&\n !validationInlineInternal && (\n <ic-input-validation\n status={\n this.hasStatus(currentStatus!) === false ||\n (currentStatus === IcInformationStatus.Success &&\n validationInline) ||\n validationInlineInternal\n ? \"\"\n : currentStatus\n }\n message={showStatusText ? currentValidationText! : \"\"}\n ariaLiveMode={messageAriaLive}\n for={inputId}\n fullWidth={fullWidth}\n >\n {!readonly && maxNumChars! > 0 && (\n <div slot=\"validation-message-adornment\">\n {!hideCharCount && (\n <ic-typography variant=\"caption\" class=\"char-count-text\">\n <span class=\"char-count\">\n {numChars}/{maxNumChars}\n </span>\n </ic-typography>\n )}\n <span class=\"remaining-char-count-desc\" aria-live=\"polite\">\n {hiddenRemainingCharCountDesc}\n </span>\n <span hidden={true} id={hiddenCharCountDescId}>\n Field can contain a maximum of {maxNumChars} characters.\n </span>\n </div>\n )}\n </ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import{r as i,c as t,f as e,h as s,H as l,g as o}from"./p-8e4e97b4.js";import{F as a,E as h,A as n,G as r,r as c,k as d,w as u,j as p,b,l as f,n as v,p as m,H as g,x,J as w}from"./p-269f841d.js";const y=`<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\n<path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor" />\n</svg>\n`;const k=`<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">\n<path d="M12.6666 4.27334L11.7266 3.33334L7.99998 7.06001L4.27331 3.33334L3.33331 4.27334L7.05998 8.00001L3.33331 11.7267L4.27331 12.6667L7.99998 8.94001L11.7266 12.6667L12.6666 11.7267L8.93998 8.00001L12.6666 4.27334Z" fill="currentColor" />\n</svg>\n`;const L='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;position:relative;--ic-input-label-helpertext-padding:var(--ic-space-xxs);--menu-max-height:100px;--border-color:var(--ic-select-field-border);--border-color-hover:var(--ic-select-field-border-hover);--border-color-pressed:var(--ic-select-field-border-pressed);--border-color-disabled:var(--ic-select-field-border-disabled);--border-color-error:var(--ic-select-field-border-error);--border-color-error-hover:var(--ic-select-field-border-error-hover);--border-color-error-pressed:var(--ic-select-field-border-error-pressed);--border-color-success:var(--ic-select-field-border-success);--border-color-success-hover:var(--ic-select-field-border-success-hover);--border-color-success-pressed:var(--ic-select-field-border-success-pressed);--border-color-warning:var(--ic-select-field-border-warning);--border-color-warning-hover:var(--ic-select-field-border-warning-hover);--border-color-warning-pressed:var(--ic-select-field-border-warning-pressed);--ic-input-label-text-color:var(--ic-select-field-labe);--ic-input-label-helper-text-color:var(\n --ic-select-input-field-label-subtitle\n );--ic-input-validation-status-text-color:var(--ic-select-state-text);--ic-input-validation-error:var(--ic-select-state-icon-error);--ic-input-validation-warning-icon-color:var(--ic-select-state-icon-warning);--ic-input-validation-success-icon-color:var(--ic-select-state-icon-success);--menu-item-text-color:var(--ic-select-list-option-text);--menu-bg-color:var(--ic-select-list-option-background);--menu-border-color:var(--ic-select-dropdown-list-border)}:host(.ic-select-disabled){--ic-input-label-text-color:var(--ic-select-field-label-disabled);--ic-input-label-helper-text-color:var(\n --ic-select-input-field-label-subtitle-disabled\n )}:host(.ic-select-full-width){width:100%}ic-input-component-container.menu-open{--border-color:var(--ic-select-field-border-pressed)}ic-input-validation .status-icon,ic-input-validation .statustext{visibility:visible}ic-input-validation.menu-open .status-icon,ic-input-validation.menu-open .statustext{visibility:hidden;transition:visibility 0s}ic-input-label{margin-bottom:var(--ic-space-xs) !important}select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-select-field-background);color:var(--ic-select-content-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:0.375rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 0.375rem center;background-image:var(--ic-select-mobile-dropdown-icon);caret-color:var(--ic-select-input-field-text-cursor)}select option,.select-option-selected{color:var(--ic-select-list-option-text)}select:disabled{color:var(--ic-select-content-text-disabled);background-image:var(--ic-select-mobile-dropdown-icon-disabled)}select:focus{border:0;outline:0}select:not([disabled]){cursor:pointer}.select-container{width:100%;display:flex;align-items:center;position:relative}.select-input{width:100%;height:100%;padding:0 0.375rem;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none;background-color:var(--ic-select-field-background);color:var(--ic-select-content-text)}.select-input:focus{outline:none}.select-input[disabled]{pointer-events:none}:host(.ic-select-searchable) .select-input{cursor:auto}.select-input.with-clear-button{padding-right:0}.value-text{max-width:calc(100% - (var(--ic-space-lg) + var(--ic-space-xxs)));box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-bottom:0 !important}.value-text.with-clear-button{padding-right:calc(var(--ic-space-xl) + var(--ic-space-xs))}.searchable-select-container{align-items:center;display:flex;width:100%;position:relative}.expand-icon{height:var(--ic-space-lg);padding-left:var(--ic-space-xxs);color:var(--ic-select-expand-icon-color)}.expand-icon>svg{display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}:host(.ic-select-disabled) .expand-icon,:host(.ic-select-disabled) .expand-icon>svg>path{color:var(--ic-select-disabled-expand-icon-color)}:host(.ic-select-searchable) .expand-icon{padding-left:0;height:2.25rem}:host(.ic-select-searchable) .expand-icon>svg{height:2.25rem;padding:0 calc(var(--ic-space-xxxs) + var(--ic-space-xxs)) 0\n var(--ic-space-xxs)}:host(.ic-select-searchable:not(.ic-select-disabled)) .expand-icon>svg{cursor:pointer}.expand-icon-open{color:var(--ic-select-expand-icon-color)}.expand-icon-open,:host(.ic-select-searchable) .expand-icon-open{transform:rotateX(180deg)}:host(.ic-select-disabled) .value-text,.placeholder{color:var(--ic-select-content-placeholder-text)}.select-input-end{display:flex;align-items:center}.clear-button-container{display:flex;align-items:center}.divider{width:var(--ic-space-1px);background-color:var(--ic-select-content-divider);margin:var(--ic-space-xxs) 0;border-radius:var(--ic-space-1px);height:var(--ic-space-lg)}:host(.ic-select-small) .divider{height:var(--ic-space-md)}:host(.ic-select-large) .divider{height:var(--ic-space-xl)}.clear-button{color:var(--ic-select-clear-button);position:absolute;right:calc(var(--ic-space-xl) + var(--ic-space-xxs) - var(--ic-space-1px));border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus,.clear-button:active{background-color:var(--ic-color-focus-inner);box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer);border-radius:0.25rem}.clear-button:focus,.clear-button:active *{fill:var(--ic-atoms-input-clear-button-focus)}.clear-button.searchable{position:static}.searchable-select-results-status,.multi-select-selected-count{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}::slotted([slot="icon"]){fill:var(--ic-select-content-placeholder-text)}.has-value ::slotted([slot="icon"]){fill:var(--ic-select-content-text)}.readonly ::slotted([slot="icon"]){padding:0.375rem;margin-bottom:0.75rem}@media (forced-colors: active){.has-value ::slotted([slot="icon"]){fill:currentcolor}}';const z=L;let C=0;const $=[...x,"tabindex","title"];const H=class{constructor(s){i(this,s);this.icBlur=t(this,"icBlur",7);this.icChange=t(this,"icChange",7);this.icClear=t(this,"icClear",7);this.icClose=t(this,"icClose",7);this.icFocus=t(this,"icFocus",7);this.icInput=t(this,"icInput",7);this.icOpen=t(this,"icOpen",7);this.icOptionSelect=t(this,"icOptionSelect",7);this.icOptionDeselect=t(this,"icOptionDeselect",7);this.icRetryLoad=t(this,"icRetryLoad",7);this.hasSetDefaultValue=false;this.inheritedAttributes={};this.initialOptionsEmpty=false;this.inputId=`ic-select-input-${C++}`;this.menuId=`${this.inputId}-menu`;this.searchableMenuItemSelected=false;this.ungroupedOptions=[];this.hostMutationObserver=null;this.clearButtonFocused=false;this.noOptions=null;this.open=false;this.pressedCharacters="";this.searchableSelectInputValue=null;this.disabled=false;this.disableAutoFiltering=false;this.emptyOptionListText="No results found";this.fullWidth=false;this.helperText="";this.hideLabel=false;this.includeDescriptionsInSearch=false;this.includeGroupTitlesInSearch=false;this.loadingErrorLabel="Loading Error";this.loadingLabel="Loading...";this.multiple=false;this.name=this.inputId;this.placeholder="Select an option";this.readonly=false;this.required=false;this.searchable=false;this.searchMatchPosition="anywhere";this.selectOnEnter=false;this.showClearButton=false;this.size="medium";this.theme="inherit";this.validationStatus="";this.validationText="";this.loading=false;this.options=[];this.filteredOptions=this.options;this.uniqueOptions=this.options;this.debounce=0;this.currDebounce=this.debounce;this.initialValue=this.value;this.inputValueToFilter=this.value;this.hostMutationCallback=i=>{let t=false;i.forEach((({attributeName:i,type:e,addedNodes:s,removedNodes:l})=>{if(i){const e=this.el.getAttribute(i);if(e&&$.includes(i)){this.inheritedAttributes[i]=e;t=true}}else if(e==="childList"){t=a(s,l,"icon")}}));if(t){e(this)}};this.handleRetry=i=>{var t;if(i.detail.keyPressed)(t=this.searchableSelectElement)===null||t===void 0?void 0:t.focus();this.blurredBecauseButtonPressed=true;this.retryButtonClick=true;this.hasSetDefaultValue=true;this.icRetryLoad.emit({value:this.searchable?this.searchableSelectInputValue:this.hiddenInputValue})};this.emitIcChange=i=>{if(this.multiple&&!Array.isArray(i)&&i!==null){this.handleMultipleSelectChange(String(i))}else{this.value=i}const t=this.multiple?this.value:i;this.icChange.emit({value:t||null})};this.emitIcInput=i=>{clearTimeout(this.debounceIcInput);this.debounceIcInput=window.setTimeout((()=>this.icInput.emit({value:i})),this.currDebounce)};this.deduplicateOptions=i=>{const t=[];const e=[];let s;i.forEach((i=>{if(i.children){s=[];i.children.forEach((i=>{if(t.includes(i.value)){console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${i.value}) which has been removed.`)}else{t.push(i.value);s.push(i)}}));const l=Object.assign(Object.assign({},i),{children:s});e.push(l)}else{if(t.includes(i.value)){console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${i.value}) which has been removed.`)}else{t.push(i.value);e.push(i)}}}));return e};this.setOptionsValuesFromLabels=()=>{if(this.options.length>0){this.options.map((i=>{if(!i.value){i.value=i.label}}))}};this.setUngroupedOptions=i=>{this.ungroupedOptions=i.detail.options};this.setTextColor=()=>{if(this.nativeSelectElement){if(this.nativeSelectElement.selectedIndex===0){this.nativeSelectElement.className="placeholder"}else{this.nativeSelectElement.className="select-option-selected"}}};this.setMenuChange=i=>{if(this.open!==i){this.open=i}};this.getLabelFromValue=i=>h(i,this.uniqueOptions);this.getMultipleOptionsString=i=>{const t=i===null||i===void 0?void 0:i.map((i=>this.getLabelFromValue(i))).filter((i=>!!i));return t===null||t===void 0?void 0:t.join(", ")};this.getFilteredChildMenuOptions=i=>{let t=i.children;if(i.children){if(this.searchable){t=n(i.children,!!this.includeDescriptionsInSearch,this.searchableSelectInputValue||"",this.searchMatchPosition)}else{t=n(i.children,false,this.pressedCharacters,"start")}}const e=Object.assign({},i);e.children=t;return e};this.getValueSortedByOptions=i=>{const t=i;const e=this.ungroupedOptions.map((i=>i.value));t.sort(((i,t)=>e.indexOf(i)-e.indexOf(t)));return t};this.handleNativeSelectChange=()=>{if(this.nativeSelectElement){this.icOptionSelect.emit({value:this.nativeSelectElement.value});this.emitIcChange(this.nativeSelectElement.value)}this.setTextColor()};this.handleCustomSelectChange=i=>{var t,e;const s=i.detail.value;if(i.detail.label===this.emptyOptionListText){(t=this.searchableSelectElement)===null||t===void 0?void 0:t.focus();return}if(this.searchable){this.value=s;this.searchableMenuItemSelected=true;if(this.value===this.currValue){this.searchableSelectInputValue=this.getLabelFromValue(this.value)||null}this.inputValueToFilter=null;this.hiddenInputValue=this.getValueFromLabel(this.searchableSelectInputValue)||null}if(this.multiple&&((e=this.value)===null||e===void 0?void 0:e.includes(s))){this.icOptionDeselect.emit({value:s})}else{this.icOptionSelect.emit({value:s})}this.ariaActiveDescendant=i.detail.optionId;this.emitIcChange(s)};this.handleMultipleSelectChange=i=>{if(this.value){let t=this.value.slice();if(this.value.includes(i)){const e=t.indexOf(i);t.splice(e,1)}else{t.push(i);t=this.getValueSortedByOptions(t)}this.value=t.length===0?null:t}else{const t=[];t.push(i);this.value=t}};this.handleSelectAllChange=i=>{const t=i.detail.select;const e=this.ungroupedOptions.filter((i=>!i.disabled));const s=e.map((i=>i.value));let l;if(t){let i;if(this.value){i=s.filter((i=>this.value&&!this.value.includes(i)))}else{i=s}i.forEach((i=>this.icOptionSelect.emit({value:i})));l=s}else{this.value.forEach((i=>this.icOptionDeselect.emit({value:i})));l=null}this.emitIcChange(l)};this.handleMenuChange=i=>{this.open=i.detail.open;this.pressedCharacters="";this.searchable&&this.handleFocusIndicatorDisplay()};this.handleMenuKeyPress=i=>{i.cancelBubble=true;if(!this.multiple){this.handleCharacterKeyDown(i.detail.key)}};this.handleFocusIndicatorDisplay=()=>{var i;const t=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".focus-indicator");if(t){if(this.open){t.classList.add("focus-indicator-enabled")}else{t.classList.remove("focus-indicator-enabled")}}};this.handleMouseDown=i=>{if(!this.open){i.preventDefault()}};this.isExternalFiltering=()=>this.searchable&&!!this.disableAutoFiltering;this.handleClick=i=>{var t,e;if(!this.open&&this.menu){if(this.isExternalFiltering()){this.menu.options=this.filteredOptions}else if(!this.hasTimedOut&&!this.loading&&!((t=this.noOptions)===null||t===void 0?void 0:t.length)&&(!this.searchable||this.searchableMenuItemSelected)){this.noOptions=null;this.menu.options=this.uniqueOptions}}if(i.detail!==0){(e=this.menu)===null||e===void 0?void 0:e.handleClickOpen()}};this.handleExpandIconMouseDown=i=>{var t;if(!this.disabled){i.preventDefault();(t=this.searchableSelectElement)===null||t===void 0?void 0:t.focus();this.handleClick(i)}};this.handleClear=i=>{var t,e;i.stopPropagation();this.hasTimedOut=false;clearTimeout(this.timeoutTimer);this.clearInput();this.emitIcChange(null);this.icClear.emit();if(this.searchable){this.hiddenInputValue=null;(t=this.searchableSelectElement)===null||t===void 0?void 0:t.focus()}else{(e=this.customSelectElement)===null||e===void 0?void 0:e.focus()}};this.handleCharacterKeyDown=i=>{if(this.open&&i===" "&&this.pressedCharacters.length===0&&!this.hasTimedOut&&!this.loading){this.setMenuChange(false)}if(i.length===1&&!this.searchable){window.clearTimeout(this.characterKeyPressTimer);this.characterKeyPressTimer=window.setTimeout((()=>this.pressedCharacters=""),1e3);if(!(i===" "&&!this.pressedCharacters)){this.pressedCharacters+=i;this.handleFilter();if(!this.noOptions){this.emitIcChange(this.filteredOptions[0].value)}}}else{this.pressedCharacters=""}};this.handleNativeSelectKeyDown=i=>{if(i.key!=="Escape"&&i.key!=="Tab"||this.open){i.cancelBubble=true}this.handleCharacterKeyDown(i.key)};this.handleKeyDown=i=>{var t;if(i.key!=="Escape"&&i.key!=="Tab"||this.open){i.cancelBubble=true}const e=i.key==="ArrowDown"||i.key==="ArrowUp";if(this.menu&&!this.open){if(this.isExternalFiltering()&&(i.key==="Enter"||e)){this.menu.options=this.filteredOptions}else{if(!this.hasTimedOut){this.noOptions=null;this.menu.options=this.uniqueOptions}}}if(this.open&&i.key==="Enter"){this.setMenuChange(false)}else{if(!(e&&this.noOptions!==null)){if(!(i.key===" "&&this.pressedCharacters.length>0)){(t=this.menu)===null||t===void 0?void 0:t.handleKeyboardOpen(i)}if(!this.multiple){this.handleCharacterKeyDown(i.key)}}}};this.handleClearButtonFocus=()=>{this.clearButtonFocused=true};this.handleClearButtonBlur=i=>{var t;const e=(t=this.menu)===null||t===void 0?void 0:t.querySelector("#retry-button");if(!(this.searchableSelectElement&&i.relatedTarget===this.searchableSelectElement)&&!(e&&i.relatedTarget===e)){this.setMenuChange(false);this.handleFocusIndicatorDisplay()}this.clearButtonFocused=false};this.handleFilter=()=>{var i;const t=this.deduplicateOptions(this.searchable?[...this.uniqueOptions]:this.ungroupedOptions);let e=false;let s=[];t.map((i=>{if(i.children)e=true}));let l;if(this.searchable){l=n(t,!!this.includeDescriptionsInSearch,this.inputValueToFilter||"",this.searchMatchPosition);this.searchableMenuItemSelected=false}else{l=n(t,false,this.pressedCharacters,"start")}if(!e&&((i=l[0])===null||i===void 0?void 0:i.label)!==this.emptyOptionListText){s=l}else if(e){t.map((i=>{if(this.includeGroupTitlesInSearch){if(l.indexOf(i)!==-1){s.push(i)}else{s.push(this.getFilteredChildMenuOptions(i))}}else{s.push(this.getFilteredChildMenuOptions(i))}}))}let o=false;if(e){o=true;s.map((i=>{if(i.children&&i.children.length>0){o=false}}))}if(s.length>0&&!o){this.noOptions=null;this.filteredOptions=s}else{this.noOptions=[{label:this.emptyOptionListText,value:""}];this.filteredOptions=this.noOptions}};this.triggerLoading=()=>{this.hasTimedOut=false;this.noOptions=[{label:this.loadingLabel,value:"",loading:true}];if(this.filteredOptions!==this.noOptions&&this.searchable){this.filteredOptions=this.noOptions}else if(this.uniqueOptions!==this.noOptions&&!this.searchable){this.uniqueOptions=this.noOptions}if(this.timeout){this.timeoutTimer=window.setTimeout((()=>{this.loading=false;this.hasTimedOut=true;this.noOptions=[{label:this.loadingErrorLabel,value:"",timedOut:true}];this.filteredOptions=this.noOptions;if(!this.searchable)this.uniqueOptions=this.noOptions}),this.timeout)}};this.getValueFromLabel=i=>{var t;return i&&((t=this.uniqueOptions.find((t=>t.label===i)))===null||t===void 0?void 0:t.value)};this.handleSearchableSelectInput=i=>{this.searchableSelectInputValue=i.target.value;this.emitIcInput(this.searchableSelectInputValue);if(this.value!=null){this.emitIcChange(null)}this.hiddenInputValue=null;this.inputValueToFilter=this.searchableSelectInputValue;this.setMenuChange(true);if(!this.disableAutoFiltering){this.handleFilter();this.debounceAriaLiveUpdate()}};this.updateSearchableSelectResultAriaLive=()=>{var i;const t=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".searchable-select-results-status");if(t){if(this.noOptions!==null){t.innerText=this.emptyOptionListText}else{t.innerText=""}}};this.updateMultiSelectedCountAriaLive=()=>{var i,t;const e=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".multi-select-selected-count");const s=`${(t=this.currValue)===null||t===void 0?void 0:t.length} of ${r(this.options)} selected`;if(e&&e.innerText!==s){e.innerText=s}};this.getDefaultValue=i=>this.getLabelFromValue(i)||null;this.setDefaultValue=()=>{if(!this.hasSetDefaultValue&&this.currValue){this.searchableSelectInputValue=this.searchable?this.getDefaultValue(this.currValue):null;this.initialValue=this.currValue;this.hasSetDefaultValue=true}};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=({relatedTarget:i})=>{var t;const e=i;if(e!==null&&(e.tagName==="UL"&&e.className.includes("menu")||e.tagName==="LI"&&e.className.includes("option"))){return}const s=(t=this.menu)===null||t===void 0?void 0:t.querySelector("#retry-button");const l=this.searchable&&!!this.menu&&e!==this.menu&&!Array.from(this.menu.querySelectorAll("[role='option']")).includes(e)&&!(this.clearButton&&e===this.clearButton)&&!(s&&e===s);if(l){if(!this.retryButtonClick){this.setMenuChange(false);if(!this.value){this.clearInput()}}this.handleFocusIndicatorDisplay()}this.retryButtonClick=false;this.icBlur.emit()};this.onTimeoutBlur=i=>{if(i.detail.ev.relatedTarget!==this.searchableSelectElement&&!this.blurredBecauseButtonPressed){this.setMenuChange(false);this.handleFocusIndicatorDisplay();this.icBlur.emit()}this.blurredBecauseButtonPressed=false};this.handleFormReset=()=>{this.value=this.initialValue;if(this.searchable){this.searchableSelectInputValue=this.getDefaultValue(this.value);this.hiddenInputValue=this.value}};this.clearInput=()=>{var i;this.noOptions=null;if(this.searchable){(i=this.searchableSelectElement)===null||i===void 0?void 0:i.setAttribute("value","");this.searchableSelectInputValue=null;this.filteredOptions=this.uniqueOptions}}}watchDisabledHandler(){c(this.disabled,this.el)}loadingHandler(i){i&&this.triggerLoading()}watchOptionsHandler(){if(!this.hasTimedOut&&this.options!==this.noOptions){this.loading=false;clearTimeout(this.timeoutTimer);if(this.isExternalFiltering()){if(this.options.length>0){this.setOptionsValuesFromLabels();this.noOptions=null;this.uniqueOptions=this.deduplicateOptions(this.options);this.filteredOptions=this.uniqueOptions}else{this.noOptions=[{label:this.emptyOptionListText,value:""}];this.uniqueOptions=this.noOptions;this.filteredOptions=this.noOptions}this.updateSearchableSelectResultAriaLive();this.setDefaultValue()}else{this.setOptionsValuesFromLabels();this.uniqueOptions=this.deduplicateOptions(this.options);this.filteredOptions=this.uniqueOptions;if(this.initialOptionsEmpty){this.setDefaultValue();this.initialOptionsEmpty=false}}}else{if(!this.searchable){this.options=this.noOptions||[]}}}debounceChangedHandler(i){this.updateOnChangeDebounce(i)}valueChangedHandler(){if(this.value!==this.currValue){if(this.value&&this.multiple){this.currValue=this.getMultipleOptionsString(this.value)?this.getValueSortedByOptions(this.value):null;this.updateMultiSelectedCountAriaLive()}else{this.currValue=this.getLabelFromValue(this.value)?this.value:null}}if(this.searchable&&this.value){this.searchableSelectInputValue=this.getLabelFromValue(String(this.currValue))||null}}openChangedHandler(){this.open?this.icOpen.emit():this.icClose.emit()}disconnectedCallback(){var i;d(this.el,this.handleFormReset);(i=this.hostMutationObserver)===null||i===void 0?void 0:i.disconnect()}componentWillLoad(){const i=this.multiple?this.getMultipleOptionsString(this.value):this.getLabelFromValue(this.value);this.currValue=i?this.value:null;this.inheritedAttributes=u(this.el,$);c(this.disabled,this.el);this.setOptionsValuesFromLabels();p(this.el,this.handleFormReset);if(!this.options.length){this.initialOptionsEmpty=true;this.noOptions=[{label:this.emptyOptionListText,value:""}];this.uniqueOptions=this.noOptions;this.filteredOptions=this.noOptions}else{this.setDefaultValue();this.uniqueOptions=this.deduplicateOptions(this.options)}}componentDidLoad(){b([{prop:this.label,propName:"label"}],"Select");if(this.loading){this.triggerLoading()}if(this.searchable){this.hiddenInputValue=this.currValue}this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true,childList:true})}componentDidRender(){if(this.nativeSelectElement&&!this.disabled){this.setTextColor()}}async setFocus(){if(this.nativeSelectElement){this.nativeSelectElement.focus()}else if(this.customSelectElement){this.customSelectElement.focus()}else if(this.searchableSelectElement){this.searchableSelectElement.focus()}}updateOnChangeDebounce(i){if(this.currDebounce!==i){this.currDebounce=i}}debounceAriaLiveUpdate(){clearTimeout(this.debounceAria);window.setTimeout((()=>{this.updateSearchableSelectResultAriaLive()}),800)}render(){const{size:i,disabled:t,fullWidth:e,helperText:o,hideLabel:a,label:h,menuId:n,multiple:c,name:d,options:u,placeholder:p,readonly:b,required:x,searchable:L,showClearButton:z,validationStatus:C,validationText:$,currValue:H,theme:T}=this;f(true,this.el,d||this.inputId,this.searchable?this.hiddenInputValue:H,t);const O=`${C===w.Error}`;const M=v(this.inputId,o!=="",m(this.validationStatus,!!this.disabled)).trim();let B=!!this.el.querySelector(`[slot="icon"]`);if(B&&(t||b&&!this.value)){B=false}const D=`${H===null||H===void 0?void 0:H.length} of ${r(this.options)} selected`;const S=c?this.getMultipleOptionsString(H):this.getLabelFromValue(H);return s(l,{key:"a08c97d65908130dc6b5de05218ae287550c48ac",class:{"ic-select-disabled":!!t,"ic-select-searchable":!!L,[`ic-select-${i}`]:i!=="medium","ic-select-full-width":!!e,[`ic-theme-${T}`]:T!=="inherit"},onBlur:this.onBlur},s("ic-input-container",{key:"93a38861621dd8f17daebf50ff7ef3d78992375f",readonly:b},!a&&s("ic-input-label",{key:"5804f9f6d7441274c0a3d2e879a31bd818d41d95",for:this.inputId,label:h,helperText:o,required:x,disabled:t,readonly:b}),s("ic-input-component-container",{key:"6c108a21fcbfcda9d080fbed1a4b936140106904",ref:i=>this.anchorEl=i,class:{"menu-open":this.open},size:i,fullWidth:e,disabled:t,readonly:b,validationStatus:C},B&&s("span",{key:"94abd85030247c8d578167e9c822607017e41de1",slot:"left-icon",class:{["readonly"]:!!b,["has-value"]:!!this.value}},s("slot",{key:"54a0758173e4c5c40895cccdb894e1757b7623ec",name:"icon"})),b?s("ic-typography",null,s("p",null,S)):g()&&!c?s("select",Object.assign({ref:i=>this.nativeSelectElement=i,disabled:t,onChange:this.handleNativeSelectChange,required:x,id:this.inputId,"aria-label":h,"aria-describedby":M,"aria-invalid":O,onBlur:this.onBlur,onFocus:this.onFocus,onKeyDown:this.handleNativeSelectKeyDown,form:this.form},this.inheritedAttributes),s("option",{value:"",selected:true,disabled:!z},p),u.map((i=>{if(i.children){return s("optgroup",{label:i.label},i.children.map((i=>s("option",{value:i.value,disabled:i.disabled,selected:i.value===H},i.label))))}else{return s("option",{value:i.value,disabled:i.disabled,selected:i.value===H},i.label)}}))):L?s("div",{class:"searchable-select-container"},s("input",{class:{"select-input":true,"with-clear-button":!!this.searchableSelectInputValue},role:"combobox",autocomplete:"off","aria-label":h,"aria-describedby":M,"aria-activedescendant":this.ariaActiveDescendant,"aria-autocomplete":"list","aria-expanded":`${this.open}`,"aria-invalid":O,"aria-required":`${x}`,"aria-controls":n,ref:i=>this.searchableSelectElement=i,id:this.inputId,value:this.searchableSelectInputValue||undefined,placeholder:p,disabled:t,onInput:this.handleSearchableSelectInput,onClick:this.handleClick,onKeyDown:this.handleKeyDown,onFocus:this.onFocus,onBlur:this.onBlur,form:this.form}),this.searchableSelectInputValue&&(z||L)&&s("div",{class:"clear-button-container"},s("ic-button",{id:"clear-button",ref:i=>this.clearButton=i,"aria-label":this.searchableSelectInputValue&&H===null?"Clear input":"Clear selection",class:"clear-button",innerHTML:k,onClick:this.handleClear,onFocus:this.handleClearButtonFocus,onBlur:this.handleClearButtonBlur,size:i,variant:"icon",theme:this.clearButtonFocused?"light":"dark"}),s("div",{class:"divider"})),s("span",{onMouseDown:this.handleExpandIconMouseDown,class:{"expand-icon":true,"expand-icon-open":this.open},innerHTML:y,"aria-hidden":"true"}),s("div",{"aria-live":"polite",role:"status",class:"searchable-select-results-status"})):s("div",{class:"select-container"},s("button",{class:"select-input",ref:i=>this.customSelectElement=i,id:this.inputId,"aria-label":`${h}, ${(c&&H?`${D}, ${S}`:S)||p}${x?", required":""}`,"aria-describedby":M,"aria-invalid":O,"aria-haspopup":"listbox","aria-expanded":this.open?"true":"false","aria-owns":n,"aria-controls":n,disabled:t,onBlur:this.onBlur,onFocus:this.onFocus,onClick:this.handleClick,onMouseDown:this.handleMouseDown,onKeyDown:this.handleKeyDown},s("ic-typography",{variant:"body",class:{"value-text":true,"with-clear-button":!!H&&!!z,placeholder:c?!this.value||this.value.length<1:!this.getLabelFromValue(H)}},S||p),s("div",{class:"select-input-end"},H&&z&&s("div",{class:"divider"}),s("span",{class:{"expand-icon":true,"expand-icon-open":this.open},innerHTML:y,"aria-hidden":"true"}))),H&&z&&s("ic-button",{id:"clear-button","aria-label":"Clear selection",class:"clear-button",innerHTML:k,onClick:this.handleClear,onFocus:this.handleClearButtonFocus,onBlur:this.handleClearButtonBlur,size:i,variant:"icon",theme:this.clearButtonFocused?"light":"dark"}))),(!g()||c)&&s("ic-menu",{key:"7b42c8ca273832353725cf7b67a7ccb737ba8839",class:{"no-results":this.loading||this.hasTimedOut||this.noOptions!==null&&this.noOptions[0]&&this.noOptions[0].label===this.emptyOptionListText},ref:i=>this.menu=i,inputEl:L?this.searchableSelectElement:this.customSelectElement,inputLabel:h,anchorEl:this.anchorEl,size:i,menuId:n,open:this.open,options:L?this.filteredOptions:this.uniqueOptions,value:c?H:H,fullWidth:e,selectOnEnter:this.selectOnEnter,onMenuStateChange:this.handleMenuChange,onMenuOptionSelect:this.handleCustomSelectChange,onMenuOptionSelectAll:this.handleSelectAllChange,onMenuKeyPress:this.handleMenuKeyPress,onUngroupedOptionsSet:this.setUngroupedOptions,onRetryButtonClicked:this.handleRetry,parentEl:this.el,onTimeoutBlur:this.onTimeoutBlur,activationType:this.searchable||c||this.selectOnEnter?"manual":"automatic",closeOnSelect:!c}),this.multiple&&s("div",{key:"987a7413ebb847face31c4b6f056dca55f60f4df","aria-live":"polite",role:"status",class:"multi-select-selected-count"}),m(this.validationStatus,!!this.disabled)&&s("ic-input-validation",{key:"236971ab6ec4b3bacce2c0f199870db2d560aa70",class:{"menu-open":this.open},ariaLiveMode:"polite",status:C,message:$||"",for:this.inputId})))}static get delegatesFocus(){return true}get el(){return o(this)}static get watchers(){return{disabled:["watchDisabledHandler"],loading:["loadingHandler"],options:["watchOptionsHandler"],debounce:["debounceChangedHandler"],value:["valueChangedHandler"],open:["openChangedHandler"]}}};H.style=z;export{H as ic_select};
|
2
|
-
//# sourceMappingURL=p-9bcd2c77.entry.js.map
|