@ukic/web-components 2.1.0-beta.11 → 2.1.0-beta.13
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/core.cjs.js +2 -2
- package/dist/cjs/ic-alert.cjs.entry.js +2 -2
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -2
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +44 -10
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card.cjs.entry.js +4 -4
- package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +16 -18
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +11 -4
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +2 -2
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-entity.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +2 -2
- package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +4 -2
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- 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 +146 -63
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +2 -2
- 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-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +3 -2
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +2 -2
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +51 -0
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-pagination.cjs.entry.js +206 -0
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-popover-menu.cjs.entry.js +8 -7
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +3 -3
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +79 -12
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +153 -54
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +11 -3
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +2 -2
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +2 -2
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +42 -5
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +3 -2
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +11 -2
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +14 -2
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +50 -11
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +5 -1
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +7 -5
- 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/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/{index-f79a4e53.js → index-a62312a7.js} +11 -1
- package/dist/cjs/index-a62312a7.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/types-3eb02246.js.map +1 -1
- package/dist/collection/assets/pagination-first-last.svg +3 -0
- package/dist/collection/assets/pagination-next-previous.svg +3 -0
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/ic-alert/ic-alert.css +1 -1
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +3 -3
- package/dist/collection/components/ic-button/ic-button.css +6 -2
- package/dist/collection/components/ic-button/ic-button.js +118 -1
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-card/ic-card.css +17 -7
- package/dist/collection/components/ic-card/ic-card.js +2 -2
- package/dist/collection/components/ic-card/ic-card.js.map +1 -1
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +11 -8
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +28 -2
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +3 -3
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +15 -21
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.types.js.map +1 -1
- package/dist/collection/components/ic-chip/ic-chip.css +11 -10
- package/dist/collection/components/ic-data-entity/ic-data-entity.css +1 -1
- package/dist/collection/components/ic-data-row/ic-data-row.css +1 -1
- package/dist/collection/components/ic-divider/ic-divider.css +1 -1
- package/dist/collection/components/ic-hero/ic-hero.css +23 -22
- package/dist/collection/components/ic-hero/ic-hero.js +2 -0
- package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +4 -8
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +6 -5
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +4 -4
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +11 -3
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
- package/dist/collection/components/ic-menu/ic-menu.css +39 -10
- package/dist/collection/components/ic-menu/ic-menu.js +188 -61
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.css +1 -6
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +4 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +2 -2
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +2 -2
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +1 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +18 -14
- package/dist/collection/components/ic-page-header/ic-page-header.css +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.css +490 -0
- package/dist/collection/components/ic-pagination/ic-pagination.js +435 -0
- package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -0
- package/dist/collection/components/ic-pagination/ic-pagination.test.a11y.js +11 -0
- package/dist/collection/components/ic-pagination/ic-pagination.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-pagination/ic-pagination.types.js +2 -0
- package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +1 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +581 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +225 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js +2 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js.map +1 -0
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +2 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +7 -6
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.css +4 -4
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-radio-option/ic-radio-option.css +6 -6
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +1 -1
- package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -10
- package/dist/collection/components/ic-search-bar/ic-search-bar.js +172 -11
- package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select.css +4 -4
- package/dist/collection/components/ic-select/ic-select.js +247 -53
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +43 -20
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +9 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +8 -7
- package/dist/collection/components/ic-step/ic-step.css +1 -1
- package/dist/collection/components/ic-switch/ic-switch.css +4 -4
- package/dist/collection/components/ic-tab/ic-tab.css +4 -4
- package/dist/collection/components/ic-tab/ic-tab.js +50 -0
- package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
- package/dist/collection/components/ic-tab-context/ic-tab-context.js +79 -4
- package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
- package/dist/collection/components/ic-tab-group/ic-tab-group.css +1 -1
- package/dist/collection/components/ic-tab-group/ic-tab-group.js +6 -2
- package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +0 -4
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +56 -3
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
- package/dist/collection/components/ic-text-field/ic-text-field.css +2 -3
- package/dist/collection/components/ic-text-field/ic-text-field.js +129 -9
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
- package/dist/collection/components/ic-toast/ic-toast.js +7 -3
- package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.js +53 -4
- package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +21 -15
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +5 -3
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
- package/dist/collection/components/ic-typography/ic-typography.css +19 -1
- package/dist/collection/components/ic-typography/ic-typography.js +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/ic-alert.js +1 -1
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-back-to-top.js +1 -1
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-button2.js +23 -2
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card.js +3 -3
- package/dist/components/ic-card.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +16 -19
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +11 -3
- 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-data-entity.js +1 -1
- package/dist/components/ic-data-entity.js.map +1 -1
- package/dist/components/ic-data-row.js +1 -1
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-divider2.js +1 -1
- package/dist/components/ic-divider2.js.map +1 -1
- package/dist/components/ic-hero.js +3 -1
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +1 -1
- package/dist/components/ic-horizontal-scroll2.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-loading-indicator2.js +12 -4
- package/dist/components/ic-loading-indicator2.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-menu2.js +164 -64
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +1 -1
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +1 -1
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +2 -1
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +1 -1
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +1 -1
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item.d.ts +11 -0
- package/dist/components/ic-pagination-item.js +8 -0
- package/dist/components/ic-pagination-item.js.map +1 -0
- package/dist/components/ic-pagination-item2.js +77 -0
- package/dist/components/ic-pagination-item2.js.map +1 -0
- package/dist/components/ic-pagination.d.ts +11 -0
- package/dist/components/ic-pagination.js +266 -0
- package/dist/components/ic-pagination.js.map +1 -0
- package/dist/components/ic-popover-menu.js +8 -8
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +2 -2
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +2 -2
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +82 -12
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-select.js +158 -53
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +10 -2
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-status-tag.js +1 -1
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +1 -1
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-switch.js +1 -1
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +44 -6
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +2 -1
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +11 -2
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +13 -1
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +54 -10
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-toast.js +7 -3
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-tooltip2.js +1817 -8
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +6 -4
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-typography2.js +1 -1
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/types.js.map +1 -1
- package/dist/core/core.css +8 -3
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-25b208ae.entry.js → p-002a63e9.entry.js} +2 -2
- package/dist/core/p-002a63e9.entry.js.map +1 -0
- package/dist/core/p-0575a77f.entry.js +2 -0
- package/dist/core/p-0575a77f.entry.js.map +1 -0
- package/dist/core/p-0a41c3cb.entry.js +2 -0
- package/dist/core/p-0a41c3cb.entry.js.map +1 -0
- package/dist/core/{p-b7fc1f35.entry.js → p-100dbcec.entry.js} +2 -2
- package/dist/core/{p-c9068822.entry.js → p-14835d6f.entry.js} +2 -2
- package/dist/core/p-14835d6f.entry.js.map +1 -0
- package/dist/core/p-1eb0992b.entry.js +2 -0
- package/dist/core/p-1eb0992b.entry.js.map +1 -0
- package/dist/core/{p-62b3516e.entry.js → p-223a214f.entry.js} +2 -2
- package/dist/core/{p-dd71a986.entry.js → p-276f7ecb.entry.js} +2 -2
- package/dist/core/{p-3d84a743.entry.js → p-28bc3bf0.entry.js} +2 -2
- package/dist/core/{p-8ffa00c9.entry.js → p-312c10b0.entry.js} +2 -2
- package/dist/core/p-3845b769.entry.js +2 -0
- package/dist/core/p-3845b769.entry.js.map +1 -0
- package/dist/core/{p-cc62d065.entry.js → p-3a67718c.entry.js} +2 -2
- package/dist/core/p-3c23f963.entry.js +2 -0
- package/dist/core/p-3c23f963.entry.js.map +1 -0
- package/dist/core/{p-ed6cf9b9.entry.js → p-3dc2ff7b.entry.js} +2 -2
- package/dist/core/p-3dc2ff7b.entry.js.map +1 -0
- package/dist/core/p-3e5eb873.entry.js +2 -0
- package/dist/core/p-3e5eb873.entry.js.map +1 -0
- package/dist/core/{p-58ff516f.entry.js → p-3fb307e6.entry.js} +2 -2
- package/dist/core/{p-d2508752.entry.js → p-454b1ecd.entry.js} +2 -2
- package/dist/core/{p-33a0aabe.entry.js → p-47b0ed42.entry.js} +2 -2
- package/dist/core/p-47b0ed42.entry.js.map +1 -0
- package/dist/core/p-4b87445b.entry.js +2 -0
- package/dist/core/p-4b87445b.entry.js.map +1 -0
- package/dist/core/p-4c8fcfe6.entry.js +2 -0
- package/dist/core/p-4c8fcfe6.entry.js.map +1 -0
- package/dist/core/p-52fd3533.entry.js +2 -0
- package/dist/core/p-52fd3533.entry.js.map +1 -0
- package/dist/core/{p-0a463a65.entry.js → p-546b620e.entry.js} +2 -2
- package/dist/core/p-56fe91ad.entry.js +2 -0
- package/dist/core/p-56fe91ad.entry.js.map +1 -0
- package/dist/core/{p-5450cebf.js → p-589f6dd3.js} +3 -3
- package/dist/core/p-589f6dd3.js.map +1 -0
- package/dist/core/p-5d077cf7.entry.js +2 -0
- package/dist/core/p-5d077cf7.entry.js.map +1 -0
- package/dist/core/{p-8c9cc4d5.entry.js → p-6a77992e.entry.js} +2 -2
- package/dist/core/{p-acb08809.entry.js → p-6b39f8b4.entry.js} +2 -2
- package/dist/core/p-6b39f8b4.entry.js.map +1 -0
- package/dist/core/p-6f57b13c.js.map +1 -1
- package/dist/core/p-80eff050.entry.js +2 -0
- package/dist/core/p-80eff050.entry.js.map +1 -0
- package/dist/core/p-864b46bf.entry.js +2 -0
- package/dist/core/p-864b46bf.entry.js.map +1 -0
- package/dist/core/p-8780890e.entry.js +2 -0
- package/dist/core/p-8780890e.entry.js.map +1 -0
- package/dist/core/p-895bda21.entry.js +2 -0
- package/dist/core/p-895bda21.entry.js.map +1 -0
- package/dist/core/p-92c4fa7f.entry.js +2 -0
- package/dist/core/p-92c4fa7f.entry.js.map +1 -0
- package/dist/core/{p-dbfdfa8a.entry.js → p-9413d639.entry.js} +2 -2
- package/dist/core/p-9413d639.entry.js.map +1 -0
- package/dist/core/{p-81652a98.entry.js → p-a0f4e641.entry.js} +2 -2
- package/dist/core/p-a0f4e641.entry.js.map +1 -0
- package/dist/core/{p-4d8392fe.entry.js → p-a33a04b2.entry.js} +2 -2
- package/dist/core/p-a5bee11f.entry.js +2 -0
- package/dist/core/p-a5bee11f.entry.js.map +1 -0
- package/dist/core/p-b61e76e2.entry.js +2 -0
- package/dist/core/p-b61e76e2.entry.js.map +1 -0
- package/dist/core/p-c0813424.entry.js +2 -0
- package/dist/core/p-c0813424.entry.js.map +1 -0
- package/dist/core/p-cb437317.entry.js +2 -0
- package/dist/core/p-cb437317.entry.js.map +1 -0
- package/dist/core/p-d5d9923a.entry.js +2 -0
- package/dist/core/p-d5d9923a.entry.js.map +1 -0
- package/dist/core/{p-f777679c.entry.js → p-db7131b6.entry.js} +2 -2
- package/dist/core/p-dc0b9e80.entry.js +2 -0
- package/dist/core/p-dc0b9e80.entry.js.map +1 -0
- package/dist/core/{p-7fd50355.entry.js → p-de45134c.entry.js} +2 -2
- package/dist/core/p-de45134c.entry.js.map +1 -0
- package/dist/core/p-de891d3d.entry.js +2 -0
- package/dist/core/p-de891d3d.entry.js.map +1 -0
- package/dist/core/p-e0f24ccd.entry.js +2 -0
- package/dist/core/p-e0f24ccd.entry.js.map +1 -0
- package/dist/core/{p-741b4ea3.entry.js → p-e384aaee.entry.js} +2 -2
- package/dist/core/{p-26c9e522.entry.js → p-e41e701a.entry.js} +2 -2
- package/dist/core/p-e41e701a.entry.js.map +1 -0
- package/dist/core/p-e839e5dc.entry.js +2 -0
- package/dist/core/p-e839e5dc.entry.js.map +1 -0
- package/dist/core/p-ea526b54.entry.js +2 -0
- package/dist/core/p-ea526b54.entry.js.map +1 -0
- package/dist/core/{p-4ee03271.entry.js → p-ec8b228c.entry.js} +2 -2
- package/dist/core/p-ec8b228c.entry.js.map +1 -0
- package/dist/core/p-f3e10149.entry.js +2 -0
- package/dist/core/p-f3e10149.entry.js.map +1 -0
- package/dist/core/{p-ad2477d8.entry.js → p-fc7dce3d.entry.js} +2 -2
- package/dist/core/p-ff6583e6.entry.js +2 -0
- package/dist/core/p-ff6583e6.entry.js.map +1 -0
- package/dist/esm/core.js +2 -2
- package/dist/esm/ic-alert.entry.js +2 -2
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +2 -2
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js +44 -10
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card.entry.js +4 -4
- package/dist/esm/ic-card.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +16 -18
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +11 -4
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +2 -2
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +1 -1
- package/dist/esm/ic-data-entity.entry.js +2 -2
- package/dist/esm/ic-data-entity.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +2 -2
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +2 -2
- package/dist/esm/ic-divider.entry.js.map +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +1 -1
- package/dist/esm/ic-footer.entry.js +1 -1
- package/dist/esm/ic-hero.entry.js +4 -2
- package/dist/esm/ic-hero.entry.js.map +1 -1
- 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 +146 -63
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +1 -1
- package/dist/esm/ic-link.entry.js +1 -1
- package/dist/esm/ic-menu-group.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js +2 -2
- 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-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +3 -2
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +2 -2
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +2 -2
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination-item.entry.js +47 -0
- package/dist/esm/ic-pagination-item.entry.js.map +1 -0
- package/dist/esm/ic-pagination.entry.js +202 -0
- package/dist/esm/ic-pagination.entry.js.map +1 -0
- package/dist/esm/ic-popover-menu.entry.js +8 -7
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +3 -3
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +3 -3
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +79 -12
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +1 -1
- package/dist/esm/ic-select.entry.js +153 -54
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +11 -3
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +1 -1
- package/dist/esm/ic-status-tag.entry.js +2 -2
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +2 -2
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +1 -1
- package/dist/esm/ic-switch.entry.js +2 -2
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +42 -5
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +3 -2
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +11 -2
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +14 -2
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-text-field.entry.js +50 -11
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +1 -1
- package/dist/esm/ic-toast-region.entry.js +1 -1
- package/dist/esm/ic-toast.entry.js +5 -1
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +7 -5
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/{index-90721b3c.js → index-3b144b17.js} +11 -2
- package/dist/esm/index-3b144b17.js.map +1 -0
- package/dist/esm/loader.js +2 -2
- package/dist/esm/types-dd515332.js.map +1 -1
- package/dist/types/components/ic-button/ic-button.d.ts +24 -0
- package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +4 -0
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -3
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.types.d.ts +5 -0
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +2 -0
- package/dist/types/components/ic-menu/ic-menu.d.ts +26 -7
- package/dist/types/components/ic-pagination/ic-pagination.d.ts +74 -0
- package/dist/types/components/ic-pagination/ic-pagination.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +4 -0
- package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +46 -0
- package/dist/types/components/ic-pagination-item/ic-pagination-item.types.d.ts +1 -0
- package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +30 -1
- package/dist/types/components/ic-select/ic-select.d.ts +31 -3
- package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +2 -1
- package/dist/types/components/ic-tab/ic-tab.d.ts +11 -0
- package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +13 -6
- package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +2 -1
- package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +25 -5
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +19 -0
- package/dist/types/components/ic-toast/ic-toast.d.ts +1 -0
- package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +7 -0
- package/dist/types/components.d.ts +359 -19
- package/dist/types/utils/types.d.ts +4 -1
- package/hydrate/index.js +931 -219
- package/package.json +3 -3
- package/dist/cjs/index-f79a4e53.js.map +0 -1
- package/dist/components/popper.js +0 -1801
- package/dist/components/popper.js.map +0 -1
- package/dist/core/p-037dfe9d.entry.js +0 -2
- package/dist/core/p-037dfe9d.entry.js.map +0 -1
- package/dist/core/p-05c5c6c4.entry.js +0 -2
- package/dist/core/p-05c5c6c4.entry.js.map +0 -1
- package/dist/core/p-0faf328a.entry.js +0 -2
- package/dist/core/p-0faf328a.entry.js.map +0 -1
- package/dist/core/p-102281fd.entry.js +0 -2
- package/dist/core/p-102281fd.entry.js.map +0 -1
- package/dist/core/p-1549adc1.entry.js +0 -2
- package/dist/core/p-1549adc1.entry.js.map +0 -1
- package/dist/core/p-25b208ae.entry.js.map +0 -1
- package/dist/core/p-26c9e522.entry.js.map +0 -1
- package/dist/core/p-31a595c1.entry.js +0 -2
- package/dist/core/p-31a595c1.entry.js.map +0 -1
- package/dist/core/p-33a0aabe.entry.js.map +0 -1
- package/dist/core/p-360adc51.entry.js +0 -2
- package/dist/core/p-360adc51.entry.js.map +0 -1
- package/dist/core/p-3fd4f8eb.entry.js +0 -2
- package/dist/core/p-3fd4f8eb.entry.js.map +0 -1
- package/dist/core/p-48a5c2a7.entry.js +0 -2
- package/dist/core/p-48a5c2a7.entry.js.map +0 -1
- package/dist/core/p-4ee03271.entry.js.map +0 -1
- package/dist/core/p-5450cebf.js.map +0 -1
- package/dist/core/p-73fddc63.entry.js +0 -2
- package/dist/core/p-73fddc63.entry.js.map +0 -1
- package/dist/core/p-7dcb9104.entry.js +0 -2
- package/dist/core/p-7dcb9104.entry.js.map +0 -1
- package/dist/core/p-7fd50355.entry.js.map +0 -1
- package/dist/core/p-81652a98.entry.js.map +0 -1
- package/dist/core/p-87c7ba3b.entry.js +0 -2
- package/dist/core/p-87c7ba3b.entry.js.map +0 -1
- package/dist/core/p-897e967a.entry.js +0 -2
- package/dist/core/p-897e967a.entry.js.map +0 -1
- package/dist/core/p-a2c7dc6c.entry.js +0 -2
- package/dist/core/p-a2c7dc6c.entry.js.map +0 -1
- package/dist/core/p-a3742d40.entry.js +0 -2
- package/dist/core/p-a3742d40.entry.js.map +0 -1
- package/dist/core/p-a44a0500.entry.js +0 -2
- package/dist/core/p-a44a0500.entry.js.map +0 -1
- package/dist/core/p-a8e969ea.entry.js +0 -2
- package/dist/core/p-a8e969ea.entry.js.map +0 -1
- package/dist/core/p-ac6ecdb6.entry.js +0 -2
- package/dist/core/p-ac6ecdb6.entry.js.map +0 -1
- package/dist/core/p-acb08809.entry.js.map +0 -1
- package/dist/core/p-affb42c7.entry.js +0 -2
- package/dist/core/p-affb42c7.entry.js.map +0 -1
- package/dist/core/p-b8b960a5.entry.js +0 -2
- package/dist/core/p-b8b960a5.entry.js.map +0 -1
- package/dist/core/p-b921bb19.entry.js +0 -2
- package/dist/core/p-b921bb19.entry.js.map +0 -1
- package/dist/core/p-c9068822.entry.js.map +0 -1
- package/dist/core/p-c996810e.entry.js +0 -2
- package/dist/core/p-c996810e.entry.js.map +0 -1
- package/dist/core/p-d28d7f24.entry.js +0 -2
- package/dist/core/p-d28d7f24.entry.js.map +0 -1
- package/dist/core/p-dbfdfa8a.entry.js.map +0 -1
- package/dist/core/p-e4547265.entry.js +0 -2
- package/dist/core/p-e4547265.entry.js.map +0 -1
- package/dist/core/p-ea0c4aca.entry.js +0 -2
- package/dist/core/p-ea0c4aca.entry.js.map +0 -1
- package/dist/core/p-ed6cf9b9.entry.js.map +0 -1
- package/dist/core/p-f6ddd32f.entry.js +0 -2
- package/dist/core/p-f6ddd32f.entry.js.map +0 -1
- package/dist/esm/index-90721b3c.js.map +0 -1
- /package/dist/core/{p-b7fc1f35.entry.js.map → p-100dbcec.entry.js.map} +0 -0
- /package/dist/core/{p-62b3516e.entry.js.map → p-223a214f.entry.js.map} +0 -0
- /package/dist/core/{p-dd71a986.entry.js.map → p-276f7ecb.entry.js.map} +0 -0
- /package/dist/core/{p-3d84a743.entry.js.map → p-28bc3bf0.entry.js.map} +0 -0
- /package/dist/core/{p-8ffa00c9.entry.js.map → p-312c10b0.entry.js.map} +0 -0
- /package/dist/core/{p-cc62d065.entry.js.map → p-3a67718c.entry.js.map} +0 -0
- /package/dist/core/{p-58ff516f.entry.js.map → p-3fb307e6.entry.js.map} +0 -0
- /package/dist/core/{p-d2508752.entry.js.map → p-454b1ecd.entry.js.map} +0 -0
- /package/dist/core/{p-0a463a65.entry.js.map → p-546b620e.entry.js.map} +0 -0
- /package/dist/core/{p-8c9cc4d5.entry.js.map → p-6a77992e.entry.js.map} +0 -0
- /package/dist/core/{p-4d8392fe.entry.js.map → p-a33a04b2.entry.js.map} +0 -0
- /package/dist/core/{p-f777679c.entry.js.map → p-db7131b6.entry.js.map} +0 -0
- /package/dist/core/{p-741b4ea3.entry.js.map → p-e384aaee.entry.js.map} +0 -0
- /package/dist/core/{p-ad2477d8.entry.js.map → p-fc7dce3d.entry.js.map} +0 -0
@@ -5,6 +5,7 @@ import { IcInformationStatus, IcThemeForegroundEnum, } from "../../utils/types";
|
|
5
5
|
import Expand from "./assets/Expand.svg";
|
6
6
|
import Clear from "./assets/Clear.svg";
|
7
7
|
let inputIds = 0;
|
8
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
8
9
|
export class Select {
|
9
10
|
constructor() {
|
10
11
|
this.inputId = `ic-select-input-${inputIds++}`;
|
@@ -12,10 +13,20 @@ export class Select {
|
|
12
13
|
this.ungroupedOptions = [];
|
13
14
|
this.inheritedAttributes = {};
|
14
15
|
this.hasSetDefaultValue = false;
|
15
|
-
this.initialRender = false;
|
16
16
|
this.initialOptionsEmpty = false;
|
17
|
+
this.handleRetry = (ev) => {
|
18
|
+
var _a;
|
19
|
+
if (ev.detail.keyPressed)
|
20
|
+
(_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.focus();
|
21
|
+
this.blurredBecauseButtonPressed = true;
|
22
|
+
this.retryButtonClick = true;
|
23
|
+
this.hasSetDefaultValue = true;
|
24
|
+
this.icRetryLoad.emit({ value: this.hiddenInputValue });
|
25
|
+
};
|
17
26
|
this.emitIcChange = (value) => {
|
18
|
-
this.
|
27
|
+
if (!this.searchable) {
|
28
|
+
this.value = value;
|
29
|
+
}
|
19
30
|
clearTimeout(this.debounceIcChange);
|
20
31
|
this.debounceIcChange = window.setTimeout(() => {
|
21
32
|
this.icChange.emit({ value: value });
|
@@ -58,11 +69,6 @@ export class Select {
|
|
58
69
|
this.getLabelFromValue = (value) => {
|
59
70
|
return getLabelFromValue(value, this.options);
|
60
71
|
};
|
61
|
-
this.getValueFromLabel = (label) => {
|
62
|
-
var _a;
|
63
|
-
const value = (_a = this.options.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value;
|
64
|
-
return value;
|
65
|
-
};
|
66
72
|
this.getFilteredChildMenuOptions = (option) => {
|
67
73
|
let children = option.children;
|
68
74
|
if (this.searchable) {
|
@@ -86,7 +92,13 @@ export class Select {
|
|
86
92
|
return;
|
87
93
|
}
|
88
94
|
if (this.searchable) {
|
89
|
-
this.
|
95
|
+
this.value = event.detail.value;
|
96
|
+
// After editing the input, if selecting the same option as before, set the input value to label again
|
97
|
+
if (this.value === this.currValue) {
|
98
|
+
this.searchableSelectInputValue = this.getLabelFromValue(this.value);
|
99
|
+
}
|
100
|
+
this.inputValueToFilter = null;
|
101
|
+
this.hiddenInputValue = this.getValueFromLabel(this.searchableSelectInputValue);
|
90
102
|
}
|
91
103
|
this.ariaActiveDescendant = event.detail.optionId;
|
92
104
|
this.icOptionSelect.emit({ value: event.detail.value });
|
@@ -123,8 +135,10 @@ export class Select {
|
|
123
135
|
this.menu.options = this.filteredOptions;
|
124
136
|
}
|
125
137
|
else {
|
126
|
-
this.
|
127
|
-
|
138
|
+
if (!this.hasTimedOut && !this.loading) {
|
139
|
+
this.noOptions = null;
|
140
|
+
this.menu.options = this.options;
|
141
|
+
}
|
128
142
|
}
|
129
143
|
if (event.detail !== 0 && this.isMenuEnabled()) {
|
130
144
|
this.menu.handleClickOpen();
|
@@ -139,13 +153,15 @@ export class Select {
|
|
139
153
|
};
|
140
154
|
this.handleClear = (event) => {
|
141
155
|
event.stopPropagation();
|
156
|
+
this.hasTimedOut = false;
|
142
157
|
this.noOptions = null;
|
143
158
|
this.emitImmediateIcChange(null);
|
144
159
|
this.icClear.emit();
|
145
160
|
if (this.searchable) {
|
146
161
|
this.searchableSelectElement.value = null;
|
147
162
|
this.searchableSelectInputValue = null;
|
148
|
-
this.
|
163
|
+
this.filteredOptions = this.options;
|
164
|
+
this.hiddenInputValue = null;
|
149
165
|
this.searchableSelectElement.focus();
|
150
166
|
if (!this.isMenuEnabled()) {
|
151
167
|
this.setMenuChange(false);
|
@@ -157,7 +173,11 @@ export class Select {
|
|
157
173
|
};
|
158
174
|
this.handleCharacterKeyDown = (key) => {
|
159
175
|
// Only close menu when space is pressed if not being used alongside character keys to quickly select options
|
160
|
-
if (this.open &&
|
176
|
+
if (this.open &&
|
177
|
+
key === " " &&
|
178
|
+
this.pressedCharacters.length === 0 &&
|
179
|
+
!this.hasTimedOut &&
|
180
|
+
!this.loading) {
|
161
181
|
this.setMenuChange(false);
|
162
182
|
}
|
163
183
|
if (key.length === 1 && !this.searchable) {
|
@@ -185,8 +205,10 @@ export class Select {
|
|
185
205
|
this.menu.options = this.filteredOptions;
|
186
206
|
}
|
187
207
|
else {
|
188
|
-
this.
|
189
|
-
|
208
|
+
if (!this.hasTimedOut) {
|
209
|
+
this.noOptions = null;
|
210
|
+
this.menu.options = this.options;
|
211
|
+
}
|
190
212
|
}
|
191
213
|
}
|
192
214
|
if (this.open && event.key === "Enter") {
|
@@ -195,6 +217,7 @@ export class Select {
|
|
195
217
|
else {
|
196
218
|
if (!(isArrowKey && this.noOptions !== null) && this.isMenuEnabled()) {
|
197
219
|
if (!(event.key === " " && this.pressedCharacters.length > 0)) {
|
220
|
+
// Keyboard events get passed onto ic-menu
|
198
221
|
this.menu.handleKeyboardOpen(event);
|
199
222
|
}
|
200
223
|
this.handleCharacterKeyDown(event.key);
|
@@ -204,7 +227,15 @@ export class Select {
|
|
204
227
|
this.handleClearButtonFocus = () => {
|
205
228
|
this.clearButtonFocused = true;
|
206
229
|
};
|
207
|
-
this.handleClearButtonBlur = () => {
|
230
|
+
this.handleClearButtonBlur = (ev) => {
|
231
|
+
var _a;
|
232
|
+
const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
|
233
|
+
if (!(this.searchableSelectElement &&
|
234
|
+
ev.relatedTarget === this.searchableSelectElement) &&
|
235
|
+
!(retryButton && ev.relatedTarget === retryButton)) {
|
236
|
+
this.setMenuChange(false);
|
237
|
+
this.handleFocusIndicatorDisplay();
|
238
|
+
}
|
208
239
|
this.clearButtonFocused = false;
|
209
240
|
};
|
210
241
|
this.handleFilter = () => {
|
@@ -217,7 +248,7 @@ export class Select {
|
|
217
248
|
});
|
218
249
|
let menuOptionsFiltered;
|
219
250
|
if (this.searchable) {
|
220
|
-
menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.
|
251
|
+
menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.inputValueToFilter, this.searchMatchPosition);
|
221
252
|
}
|
222
253
|
else {
|
223
254
|
menuOptionsFiltered = getFilteredMenuOptions(options, false, this.pressedCharacters, "start");
|
@@ -259,15 +290,37 @@ export class Select {
|
|
259
290
|
this.filteredOptions = this.noOptions;
|
260
291
|
}
|
261
292
|
};
|
293
|
+
this.triggerLoading = () => {
|
294
|
+
this.hasTimedOut = false;
|
295
|
+
this.noOptions = [{ label: this.loadingLabel, value: "", loading: true }];
|
296
|
+
if (this.filteredOptions !== this.noOptions && this.searchable)
|
297
|
+
this.filteredOptions = this.noOptions;
|
298
|
+
else if (!this.searchable && this.options !== this.noOptions)
|
299
|
+
this.options = this.noOptions;
|
300
|
+
if (this.timeout) {
|
301
|
+
this.timeoutTimer = window.setTimeout(() => {
|
302
|
+
this.loading = false;
|
303
|
+
this.hasTimedOut = true;
|
304
|
+
this.noOptions = [
|
305
|
+
{ label: this.loadingErrorLabel, value: "", timedOut: true },
|
306
|
+
];
|
307
|
+
this.filteredOptions = this.noOptions;
|
308
|
+
if (!this.searchable)
|
309
|
+
this.options = this.noOptions;
|
310
|
+
}, this.timeout);
|
311
|
+
}
|
312
|
+
};
|
313
|
+
this.getValueFromLabel = (label) => {
|
314
|
+
var _a;
|
315
|
+
const value = (_a = this.options.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value;
|
316
|
+
return value;
|
317
|
+
};
|
262
318
|
this.handleSearchableSelectInput = (event) => {
|
263
319
|
this.searchableSelectInputValue = event.target.value;
|
264
320
|
this.icInput.emit({ value: this.searchableSelectInputValue });
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
else if (this.getValueFromLabel(this.searchableSelectInputValue) === undefined) {
|
269
|
-
this.emitIcChange(null);
|
270
|
-
}
|
321
|
+
this.emitIcChange(this.searchableSelectInputValue);
|
322
|
+
this.hiddenInputValue = this.searchableSelectInputValue;
|
323
|
+
this.inputValueToFilter = this.searchableSelectInputValue;
|
271
324
|
if (this.isMenuEnabled()) {
|
272
325
|
this.setMenuChange(true);
|
273
326
|
}
|
@@ -295,20 +348,43 @@ export class Select {
|
|
295
348
|
this.icFocus.emit();
|
296
349
|
};
|
297
350
|
this.onBlur = (event) => {
|
351
|
+
var _a;
|
352
|
+
const target = event.relatedTarget;
|
353
|
+
if (target !== null &&
|
354
|
+
target.tagName === "UL" &&
|
355
|
+
target.className.includes("menu")) {
|
356
|
+
return;
|
357
|
+
}
|
358
|
+
const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
|
298
359
|
const isSearchableAndNoFocusedInternalElements = this.searchable &&
|
299
360
|
event.relatedTarget !== this.menu &&
|
300
361
|
!Array.from(this.menu.querySelectorAll("[role='option']")).includes(event.relatedTarget) &&
|
301
|
-
!(this.clearButton && event.relatedTarget === this.clearButton)
|
362
|
+
!(this.clearButton && event.relatedTarget === this.clearButton) &&
|
363
|
+
!(retryButton && event.relatedTarget === retryButton);
|
302
364
|
if (isSearchableAndNoFocusedInternalElements) {
|
303
|
-
this.
|
365
|
+
if (!this.retryButtonClick) {
|
366
|
+
this.setMenuChange(false);
|
367
|
+
}
|
304
368
|
this.handleFocusIndicatorDisplay();
|
305
369
|
}
|
370
|
+
this.retryButtonClick = false;
|
306
371
|
this.icBlur.emit();
|
307
372
|
};
|
373
|
+
this.onTimeoutBlur = (ev) => {
|
374
|
+
if (ev.detail.ev.relatedTarget !==
|
375
|
+
this.searchableSelectElement &&
|
376
|
+
!this.blurredBecauseButtonPressed) {
|
377
|
+
this.setMenuChange(false);
|
378
|
+
this.handleFocusIndicatorDisplay();
|
379
|
+
this.icBlur.emit();
|
380
|
+
}
|
381
|
+
this.blurredBecauseButtonPressed = false;
|
382
|
+
};
|
308
383
|
this.handleFormReset = () => {
|
309
384
|
this.value = this.initialValue;
|
310
385
|
if (this.searchable) {
|
311
386
|
this.searchableSelectInputValue = this.getDefaultValue(this.value);
|
387
|
+
this.hiddenInputValue = this.value;
|
312
388
|
}
|
313
389
|
};
|
314
390
|
this.label = undefined;
|
@@ -334,6 +410,10 @@ export class Select {
|
|
334
410
|
this.charactersUntilSuggestions = 0;
|
335
411
|
this.emptyOptionListText = "No results found";
|
336
412
|
this.disableFilter = false;
|
413
|
+
this.timeout = undefined;
|
414
|
+
this.loadingLabel = "Loading...";
|
415
|
+
this.loadingErrorLabel = "Loading Error";
|
416
|
+
this.loading = false;
|
337
417
|
this.open = false;
|
338
418
|
this.clearButtonFocused = false;
|
339
419
|
this.searchableSelectInputValue = null;
|
@@ -345,32 +425,41 @@ export class Select {
|
|
345
425
|
this.currValue = this.value;
|
346
426
|
this.debounceIcChange = undefined;
|
347
427
|
this.pressedCharacters = "";
|
428
|
+
this.hiddenInputValue = undefined;
|
429
|
+
this.inputValueToFilter = this.value;
|
430
|
+
}
|
431
|
+
loadingHandler(newValue) {
|
432
|
+
newValue && this.triggerLoading();
|
348
433
|
}
|
349
434
|
watchOptionsHandler() {
|
350
|
-
if (this.
|
351
|
-
|
435
|
+
if (!this.hasTimedOut) {
|
436
|
+
this.loading = false;
|
437
|
+
clearTimeout(this.timeoutTimer);
|
438
|
+
if (this.isExternalFiltering()) {
|
439
|
+
if (this.options.length > 0) {
|
440
|
+
this.setOptionsValuesFromLabels();
|
441
|
+
this.noOptions = null;
|
442
|
+
this.filteredOptions = this.options;
|
443
|
+
}
|
444
|
+
else if (this.isMenuEnabled()) {
|
445
|
+
this.noOptions = [{ label: this.emptyOptionListText, value: "" }];
|
446
|
+
this.filteredOptions = this.noOptions;
|
447
|
+
}
|
448
|
+
this.updateSearchableSelectResultAriaLive();
|
449
|
+
this.setDefaultValue();
|
450
|
+
}
|
451
|
+
else {
|
352
452
|
this.setOptionsValuesFromLabels();
|
353
|
-
this.noOptions = null;
|
354
453
|
this.filteredOptions = this.options;
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
this.filteredOptions = this.noOptions;
|
359
|
-
// Will prevent 'No results found' displaying on initial load and setting default value
|
360
|
-
if (!this.initialRender) {
|
361
|
-
this.setMenuChange(true);
|
454
|
+
if (this.initialOptionsEmpty) {
|
455
|
+
this.setDefaultValue();
|
456
|
+
this.initialOptionsEmpty = false;
|
362
457
|
}
|
363
458
|
}
|
364
|
-
this.updateSearchableSelectResultAriaLive();
|
365
|
-
this.setDefaultValue();
|
366
459
|
}
|
367
460
|
else {
|
368
|
-
this.
|
369
|
-
|
370
|
-
if (this.initialOptionsEmpty) {
|
371
|
-
this.setDefaultValue();
|
372
|
-
this.initialOptionsEmpty = false;
|
373
|
-
}
|
461
|
+
if (!this.searchable)
|
462
|
+
this.options = this.noOptions;
|
374
463
|
}
|
375
464
|
}
|
376
465
|
debounceChangedHandler(newValue) {
|
@@ -380,6 +469,10 @@ export class Select {
|
|
380
469
|
if (this.value !== this.currValue) {
|
381
470
|
this.currValue = this.value;
|
382
471
|
}
|
472
|
+
if (this.searchable && !!this.currValue) {
|
473
|
+
this.searchableSelectInputValue =
|
474
|
+
this.getLabelFromValue(this.currValue) || this.currValue;
|
475
|
+
}
|
383
476
|
}
|
384
477
|
/**
|
385
478
|
* Sets focus on the input box.
|
@@ -421,11 +514,10 @@ export class Select {
|
|
421
514
|
]);
|
422
515
|
this.setOptionsValuesFromLabels();
|
423
516
|
addFormResetListener(this.host, this.handleFormReset);
|
424
|
-
this.initialRender = true;
|
425
517
|
if (!this.options.length) {
|
426
518
|
this.initialOptionsEmpty = true;
|
427
519
|
}
|
428
|
-
else
|
520
|
+
else {
|
429
521
|
this.setDefaultValue();
|
430
522
|
}
|
431
523
|
}
|
@@ -434,18 +526,24 @@ export class Select {
|
|
434
526
|
this.setTextColor();
|
435
527
|
}
|
436
528
|
}
|
437
|
-
componentWillUpdate() {
|
438
|
-
this.initialRender = false;
|
439
|
-
}
|
440
529
|
componentDidLoad() {
|
441
530
|
onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Select");
|
531
|
+
if (this.loading)
|
532
|
+
this.triggerLoading();
|
533
|
+
this.hiddenInputValue = this.searchable && this.currValue;
|
442
534
|
}
|
443
535
|
disconnectedCallback() {
|
444
536
|
removeFormResetListener(this.host, this.handleFormReset);
|
445
537
|
}
|
446
538
|
render() {
|
539
|
+
var _a, _b;
|
447
540
|
const { small, disabled, fullWidth, helperText, hideLabel, label, menuId, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, } = this;
|
448
|
-
|
541
|
+
const isOrHasLoaded = ((_a = (searchable ? this.filteredOptions : options)[0]) === null || _a === void 0 ? void 0 : _a.label) ===
|
542
|
+
this.loadingLabel ||
|
543
|
+
((_b = (searchable ? this.filteredOptions : options)[0]) === null || _b === void 0 ? void 0 : _b.label) ===
|
544
|
+
this.loadingErrorLabel;
|
545
|
+
const inputValue = this.searchable ? this.hiddenInputValue : currValue;
|
546
|
+
renderHiddenInput(true, this.host, name, inputValue, disabled);
|
449
547
|
const invalid = validationStatus === IcInformationStatus.Error ? "true" : "false";
|
450
548
|
const describedBy = getInputDescribedByText(this.inputId, helperText !== "", hasValidationStatus(this.validationStatus, this.disabled)).trim();
|
451
549
|
return (h(Host, { class: {
|
@@ -453,14 +551,14 @@ export class Select {
|
|
453
551
|
searchable: searchable,
|
454
552
|
small: small,
|
455
553
|
"full-width": fullWidth,
|
456
|
-
} }, h("ic-input-container", { readonly: readonly }, !hideLabel && (h("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, readonly ? (h("ic-typography", null, h("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet() ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
|
554
|
+
}, onBlur: this.onBlur }, h("ic-input-container", { readonly: readonly }, !hideLabel && (h("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, readonly ? (h("ic-typography", null, h("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet() ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
|
457
555
|
if (option.children) {
|
458
556
|
return (h("optgroup", { label: option.label }, option.children.map((option) => (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label)))));
|
459
557
|
}
|
460
558
|
else {
|
461
559
|
return (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label));
|
462
560
|
}
|
463
|
-
}))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: "select-input", role: "combobox", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": this.open ? "true" : "false", "aria-invalid": invalid, "aria-required": required ? "true" : "false", "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur }), this.searchableSelectInputValue &&
|
561
|
+
}))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: "select-input", role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": this.open ? "true" : "false", "aria-invalid": invalid, "aria-required": required ? "true" : "false", "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur }), this.searchableSelectInputValue &&
|
464
562
|
(showClearButton || searchable) && (h("div", { class: "clear-button-container" }, h("ic-button", { id: "clear-button", ref: (el) => (this.clearButton = el), "aria-label": this.searchableSelectInputValue && currValue === null
|
465
563
|
? "Clear input"
|
466
564
|
: "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: small ? "small" : "default", variant: "icon", appearance: this.clearButtonFocused
|
@@ -479,10 +577,10 @@ export class Select {
|
|
479
577
|
}, innerHTML: Expand, "aria-hidden": "true" }))), currValue && showClearButton && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: small ? "small" : "default", variant: "icon", appearance: this.clearButtonFocused
|
480
578
|
? IcThemeForegroundEnum.Light
|
481
579
|
: IcThemeForegroundEnum.Dark }))))), !isMobileOrTablet() && (h("ic-menu", { class: {
|
482
|
-
"no-results": this.noOptions !== null
|
580
|
+
"no-results": this.noOptions !== null || isOrHasLoaded,
|
483
581
|
}, ref: (el) => (this.menu = el), inputEl: searchable
|
484
582
|
? this.searchableSelectElement
|
485
|
-
: this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : options, value: currValue, fullWidth: fullWidth, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, parentEl: this.host })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
|
583
|
+
: this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : options, value: currValue, fullWidth: fullWidth, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.host, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable ? "manual" : "automatic" })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
|
486
584
|
}
|
487
585
|
static get is() { return "ic-select"; }
|
488
586
|
static get encapsulation() { return "shadow"; }
|
@@ -926,6 +1024,77 @@ export class Select {
|
|
926
1024
|
"attribute": "disable-filter",
|
927
1025
|
"reflect": false,
|
928
1026
|
"defaultValue": "false"
|
1027
|
+
},
|
1028
|
+
"timeout": {
|
1029
|
+
"type": "number",
|
1030
|
+
"mutable": false,
|
1031
|
+
"complexType": {
|
1032
|
+
"original": "number",
|
1033
|
+
"resolved": "number",
|
1034
|
+
"references": {}
|
1035
|
+
},
|
1036
|
+
"required": false,
|
1037
|
+
"optional": true,
|
1038
|
+
"docs": {
|
1039
|
+
"tags": [],
|
1040
|
+
"text": "If using external filtering, set a timeout for when loading takes too long."
|
1041
|
+
},
|
1042
|
+
"attribute": "timeout",
|
1043
|
+
"reflect": false
|
1044
|
+
},
|
1045
|
+
"loadingLabel": {
|
1046
|
+
"type": "string",
|
1047
|
+
"mutable": false,
|
1048
|
+
"complexType": {
|
1049
|
+
"original": "string",
|
1050
|
+
"resolved": "string",
|
1051
|
+
"references": {}
|
1052
|
+
},
|
1053
|
+
"required": false,
|
1054
|
+
"optional": true,
|
1055
|
+
"docs": {
|
1056
|
+
"tags": [],
|
1057
|
+
"text": "Change the message displayed whilst the options are being loaded externally."
|
1058
|
+
},
|
1059
|
+
"attribute": "loading-label",
|
1060
|
+
"reflect": false,
|
1061
|
+
"defaultValue": "\"Loading...\""
|
1062
|
+
},
|
1063
|
+
"loadingErrorLabel": {
|
1064
|
+
"type": "string",
|
1065
|
+
"mutable": false,
|
1066
|
+
"complexType": {
|
1067
|
+
"original": "string",
|
1068
|
+
"resolved": "string",
|
1069
|
+
"references": {}
|
1070
|
+
},
|
1071
|
+
"required": false,
|
1072
|
+
"optional": true,
|
1073
|
+
"docs": {
|
1074
|
+
"tags": [],
|
1075
|
+
"text": "Change the message displayed when external loading times out."
|
1076
|
+
},
|
1077
|
+
"attribute": "loading-error-label",
|
1078
|
+
"reflect": false,
|
1079
|
+
"defaultValue": "\"Loading Error\""
|
1080
|
+
},
|
1081
|
+
"loading": {
|
1082
|
+
"type": "boolean",
|
1083
|
+
"mutable": true,
|
1084
|
+
"complexType": {
|
1085
|
+
"original": "boolean",
|
1086
|
+
"resolved": "boolean",
|
1087
|
+
"references": {}
|
1088
|
+
},
|
1089
|
+
"required": false,
|
1090
|
+
"optional": true,
|
1091
|
+
"docs": {
|
1092
|
+
"tags": [],
|
1093
|
+
"text": "Trigger loading state when fetching options asyncronously"
|
1094
|
+
},
|
1095
|
+
"attribute": "loading",
|
1096
|
+
"reflect": false,
|
1097
|
+
"defaultValue": "false"
|
929
1098
|
}
|
930
1099
|
};
|
931
1100
|
}
|
@@ -941,7 +1110,9 @@ export class Select {
|
|
941
1110
|
"currDebounce": {},
|
942
1111
|
"currValue": {},
|
943
1112
|
"debounceIcChange": {},
|
944
|
-
"pressedCharacters": {}
|
1113
|
+
"pressedCharacters": {},
|
1114
|
+
"hiddenInputValue": {},
|
1115
|
+
"inputValueToFilter": {}
|
945
1116
|
};
|
946
1117
|
}
|
947
1118
|
static get events() {
|
@@ -1050,6 +1221,26 @@ export class Select {
|
|
1050
1221
|
}
|
1051
1222
|
}
|
1052
1223
|
}
|
1224
|
+
}, {
|
1225
|
+
"method": "icRetryLoad",
|
1226
|
+
"name": "icRetryLoad",
|
1227
|
+
"bubbles": true,
|
1228
|
+
"cancelable": true,
|
1229
|
+
"composed": true,
|
1230
|
+
"docs": {
|
1231
|
+
"tags": [],
|
1232
|
+
"text": "Emitted when the 'retry loading' button is clicked"
|
1233
|
+
},
|
1234
|
+
"complexType": {
|
1235
|
+
"original": "IcValueEventDetail",
|
1236
|
+
"resolved": "IcValueEventDetail",
|
1237
|
+
"references": {
|
1238
|
+
"IcValueEventDetail": {
|
1239
|
+
"location": "import",
|
1240
|
+
"path": "../../interface"
|
1241
|
+
}
|
1242
|
+
}
|
1243
|
+
}
|
1053
1244
|
}];
|
1054
1245
|
}
|
1055
1246
|
static get methods() {
|
@@ -1075,6 +1266,9 @@ export class Select {
|
|
1075
1266
|
static get elementRef() { return "host"; }
|
1076
1267
|
static get watchers() {
|
1077
1268
|
return [{
|
1269
|
+
"propName": "loading",
|
1270
|
+
"methodName": "loadingHandler"
|
1271
|
+
}, {
|
1078
1272
|
"propName": "options",
|
1079
1273
|
"methodName": "watchOptionsHandler"
|
1080
1274
|
}, {
|