@ukic/web-components 2.35.2 → 3.0.0-alpha.10
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/README.md +0 -4
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-6f6991cb.js → helpers-eca4c27e.js} +70 -26
- package/dist/cjs/helpers-eca4c27e.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +14 -15
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +7 -8
- package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +8 -9
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +15 -16
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +22 -51
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +26 -14
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +53 -8
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +59 -53
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +150 -0
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +21 -10
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +8 -16
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +22 -23
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +32 -0
- package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-data-row.cjs.entry.js +12 -12
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +14 -105
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +73 -10
- package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +9 -8
- package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +12 -14
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +11 -12
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +11 -13
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +12 -15
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +15 -9
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +478 -201
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +26 -31
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +22 -15
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +2 -3
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +12 -13
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +12 -10
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +14 -14
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +11 -10
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +10 -10
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +8 -12
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +51 -46
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +23 -4
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +32 -18
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +34 -40
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +56 -57
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +194 -81
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +19 -22
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +5 -6
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +8 -16
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +41 -46
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +27 -18
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +17 -18
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +34 -28
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +9 -11
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +12 -11
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +10 -9
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +86 -77
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +45 -22
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js +0 -7
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +83 -36
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +63 -30
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +64 -33
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +17 -12
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +9 -8
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-f982899d.js +16 -16
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/ag-theme-icds.css +32 -31
- package/dist/collection/collection-manifest.json +4 -4
- package/dist/collection/components/ic-accordion/ic-accordion.css +23 -19
- package/dist/collection/components/ic-accordion/ic-accordion.js +31 -34
- package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
- package/dist/collection/components/ic-accordion/ic-accordion.stories.js +52 -76
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +3 -3
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +5 -11
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +27 -27
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +9 -9
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
- package/dist/collection/components/ic-alert/ic-alert.css +34 -18
- package/dist/collection/components/ic-alert/ic-alert.js +49 -42
- package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
- package/dist/collection/components/ic-alert/ic-alert.stories.js +30 -16
- package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +1 -1
- package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +22 -59
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +38 -14
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +23 -10
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
- package/dist/collection/components/ic-badge/ic-badge.css +65 -41
- package/dist/collection/components/ic-badge/ic-badge.js +51 -99
- package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
- package/dist/collection/components/ic-badge/ic-badge.stories.js +50 -40
- package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +40 -50
- package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +20 -10
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +104 -34
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +48 -4
- package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +7 -5
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +66 -33
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +60 -200
- package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +3 -3
- package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.css +730 -432
- package/dist/collection/components/ic-button/ic-button.js +72 -59
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.stories.js +1246 -1256
- package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +9 -9
- package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
- package/dist/collection/components/{ic-card/ic-card.css → ic-card-vertical/ic-card-vertical.css} +99 -109
- package/dist/collection/components/{ic-card/ic-card.js → ic-card-vertical/ic-card-vertical.js} +65 -39
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -0
- package/dist/collection/components/{ic-card/ic-card.stories.js → ic-card-vertical/ic-card-vertical.stories.js} +61 -45
- package/dist/collection/components/{ic-card/test/basic/ic-card.spec.js → ic-card-vertical/test/basic/ic-card-vertical.spec.js} +43 -43
- package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +54 -45
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +22 -128
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +19 -4
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +38 -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.stories.js +18 -6
- package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +2 -2
- package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
- package/dist/collection/components/ic-chip/ic-chip.css +66 -53
- package/dist/collection/components/ic-chip/ic-chip.js +44 -68
- package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
- package/dist/collection/components/ic-chip/ic-chip.stories.js +713 -403
- package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +16 -0
- package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +17 -11
- 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-data-entity/ic-data-entity.css → ic-data-list/ic-data-list.css} +7 -3
- package/dist/collection/components/{ic-data-entity/ic-data-entity.js → ic-data-list/ic-data-list.js} +33 -27
- package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -0
- package/dist/collection/components/{ic-data-entity/ic-data-entity.stories.js → ic-data-list/ic-data-list.stories.js} +59 -53
- package/dist/collection/components/{ic-data-entity/test/basic/ic-data-entity.spec.js → ic-data-list/test/basic/ic-data-list.spec.js} +32 -32
- package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +1 -0
- package/dist/collection/components/ic-data-row/ic-data-row.css +6 -3
- package/dist/collection/components/ic-data-row/ic-data-row.js +28 -24
- package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
- package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +4 -4
- package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.css +19 -15
- package/dist/collection/components/ic-dialog/ic-dialog.js +28 -212
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.stories.js +19 -225
- package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +5 -228
- package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
- package/dist/collection/components/ic-divider/ic-divider.css +295 -4
- package/dist/collection/components/ic-divider/ic-divider.js +239 -12
- package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
- package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
- package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
- package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
- package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +90 -5
- package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
- package/dist/collection/components/ic-empty-state/ic-empty-state.css +21 -6
- package/dist/collection/components/ic-empty-state/ic-empty-state.js +35 -9
- package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
- package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +13 -6
- package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js +101 -0
- package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js.map +1 -0
- package/dist/collection/components/ic-footer/ic-footer.css +30 -22
- package/dist/collection/components/ic-footer/ic-footer.js +13 -14
- package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
- package/dist/collection/components/ic-footer/ic-footer.stories.js +23 -22
- package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +3 -3
- package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
- package/dist/collection/components/ic-footer-link/ic-footer-link.css +49 -100
- package/dist/collection/components/ic-footer-link/ic-footer-link.js +12 -12
- package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
- package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +1 -1
- package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -1
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +19 -27
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +15 -16
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
- package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +8 -8
- package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
- package/dist/collection/components/ic-hero/ic-hero.css +38 -23
- package/dist/collection/components/ic-hero/ic-hero.js +18 -41
- package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
- package/dist/collection/components/ic-hero/ic-hero.stories.js +65 -106
- package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +8 -8
- package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +7 -11
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +65 -10
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
- package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +43 -0
- package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -1
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +70 -42
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +12 -87
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
- package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +10 -10
- package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
- package/dist/collection/components/ic-input-label/ic-input-label.css +19 -21
- package/dist/collection/components/ic-input-label/ic-input-label.js +52 -74
- package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
- package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +14 -58
- package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
- package/dist/collection/components/ic-input-validation/ic-input-validation.css +13 -4
- package/dist/collection/components/ic-input-validation/ic-input-validation.js +7 -7
- package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
- package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +4 -4
- package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -1
- package/dist/collection/components/ic-link/ic-link.css +77 -45
- package/dist/collection/components/ic-link/ic-link.js +64 -58
- package/dist/collection/components/ic-link/ic-link.js.map +1 -1
- package/dist/collection/components/ic-link/ic-link.stories.js +16 -45
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +19 -114
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +24 -16
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +73 -50
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +84 -36
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
- package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +3 -2
- package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +1 -1
- package/dist/collection/components/ic-menu/ic-menu.css +119 -30
- package/dist/collection/components/ic-menu/ic-menu.js +525 -228
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +382 -34
- package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
- package/dist/collection/components/ic-menu-group/ic-menu-group.css +3 -2
- package/dist/collection/components/ic-menu-item/ic-menu-item.css +63 -44
- package/dist/collection/components/ic-menu-item/ic-menu-item.js +30 -30
- package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
- package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +2 -2
- package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +14 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +38 -11
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +3 -3
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +28 -21
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +39 -14
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +3 -3
- package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +33 -29
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +36 -10
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
- package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +3 -3
- package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +13 -5
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +27 -2
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
- package/dist/collection/components/ic-page-header/ic-page-header.css +4 -3
- package/dist/collection/components/ic-page-header/ic-page-header.js +34 -30
- package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
- package/dist/collection/components/ic-page-header/ic-page-header.stories.js +306 -40
- package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +15 -15
- package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.css +15 -0
- package/dist/collection/components/ic-pagination/ic-pagination.js +97 -73
- package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.stories.js +69 -30
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +27 -27
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +36 -13
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +48 -33
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +10 -6
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +45 -1
- 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 +34 -16
- package/dist/collection/components/ic-radio-group/ic-radio-group.css +21 -5
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +58 -38
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +21 -28
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +3 -3
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
- package/dist/collection/components/ic-radio-option/ic-radio-option.css +40 -30
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +58 -148
- 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 +115 -16
- package/dist/collection/components/ic-search-bar/ic-search-bar.js +112 -129
- package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +21 -19
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +78 -112
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select.css +103 -63
- package/dist/collection/components/ic-select/ic-select.js +269 -220
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
- package/dist/collection/components/ic-select/{ic-select-searchable.stories.js → ic-select_(searchable).stories.js} +21 -9
- package/dist/collection/components/ic-select/{ic-select-single.stories.js → ic-select_(single).stories.js} +14 -4
- package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +230 -7
- package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +60 -43
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +22 -24
- 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 +11 -11
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +3 -110
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
- package/dist/collection/components/ic-skeleton/ic-skeleton.css +5 -28
- package/dist/collection/components/ic-skeleton/ic-skeleton.js +17 -33
- package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
- package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +11 -9
- package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +1 -1
- package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +20 -17
- package/dist/collection/components/ic-status-tag/ic-status-tag.js +44 -62
- package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +41 -6
- package/dist/collection/components/ic-status-tag/ic-status-tag.types.js.map +1 -1
- package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +15 -32
- package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
- package/dist/collection/components/ic-step/ic-step.css +97 -128
- package/dist/collection/components/ic-step/ic-step.js +77 -54
- package/dist/collection/components/ic-step/ic-step.js.map +1 -1
- package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +30 -30
- package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -1
- package/dist/collection/components/ic-stepper/ic-stepper.css +4 -4
- package/dist/collection/components/ic-stepper/ic-stepper.js +51 -33
- package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
- package/dist/collection/components/ic-stepper/ic-stepper.stories.js +103 -153
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js +37 -37
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -1
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +237 -237
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
- package/dist/collection/components/ic-switch/ic-switch.css +26 -49
- package/dist/collection/components/ic-switch/ic-switch.js +33 -48
- package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
- package/dist/collection/components/ic-switch/ic-switch.stories.js +20 -42
- package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +1 -15
- package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
- package/dist/collection/components/ic-tab/ic-tab.css +47 -21
- package/dist/collection/components/ic-tab/ic-tab.js +56 -34
- package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
- package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +2 -2
- package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
- package/dist/collection/components/ic-tab-context/ic-tab-context.js +79 -76
- package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
- package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +11 -83
- package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +3 -3
- package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
- package/dist/collection/components/ic-tab-group/ic-tab-group.css +15 -8
- package/dist/collection/components/ic-tab-group/ic-tab-group.js +52 -54
- 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 +2 -2
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +91 -30
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
- package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +50 -0
- package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.css +71 -13
- package/dist/collection/components/ic-text-field/ic-text-field.js +122 -128
- 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 +36 -257
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +59 -26
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +59 -58
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
- package/dist/collection/components/ic-theme/ic-theme.js +81 -33
- package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
- package/dist/collection/components/ic-theme/ic-theme.stories.js +271 -8
- package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +7 -7
- package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -1
- package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +24 -22
- package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -1
- package/dist/collection/components/ic-toast/ic-toast.css +40 -17
- package/dist/collection/components/ic-toast/ic-toast.js +83 -33
- package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
- package/dist/collection/components/ic-toast/ic-toast.stories.js +1 -18
- package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +55 -19
- package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
- package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -43
- package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
- package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -20
- package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +217 -79
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +126 -69
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +16 -126
- package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +4 -4
- package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +29 -19
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +116 -52
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +140 -165
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.types.js.map +1 -1
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +121 -39
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.css +14 -5
- package/dist/collection/components/ic-tooltip/ic-tooltip.js +30 -2
- package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +10 -0
- package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +14 -0
- package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +1 -1
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +46 -20
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +44 -14
- 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 +28 -13
- package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +3 -3
- package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -1
- package/dist/collection/components/ic-typography/ic-typography.css +16 -12
- package/dist/collection/components/ic-typography/ic-typography.js +31 -5
- package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
- package/dist/collection/components/ic-typography/ic-typography.stories.js +10 -0
- package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +14 -0
- package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -1
- package/dist/collection/patterns/z-index.stories.js +2 -2
- package/dist/collection/utils/constants.js +1 -1
- package/dist/collection/utils/constants.js.map +1 -1
- package/dist/collection/utils/helpers.js +49 -19
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/collection/utils/types.js +6 -6
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/helpers.js +64 -21
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-accordion-group.js +16 -16
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-accordion.js +7 -7
- package/dist/components/ic-accordion.js.map +1 -1
- package/dist/components/ic-alert.js +128 -1
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-back-to-top.js +29 -16
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +25 -54
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +31 -16
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +57 -8
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-button2.js +29 -33
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/{ic-data-entity.d.ts → ic-card-vertical.d.ts} +4 -4
- package/dist/components/ic-card-vertical.js +198 -0
- package/dist/components/ic-card-vertical.js.map +1 -0
- package/dist/components/ic-checkbox-group.js +24 -11
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +9 -21
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +24 -23
- 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-card.d.ts → ic-data-list.d.ts} +4 -4
- package/dist/components/ic-data-list.js +56 -0
- package/dist/components/ic-data-list.js.map +1 -0
- package/dist/components/ic-data-row.js +14 -13
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-dialog.js +17 -119
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-divider2.js +89 -13
- package/dist/components/ic-divider2.js.map +1 -1
- package/dist/components/ic-empty-state.js +11 -8
- package/dist/components/ic-empty-state.js.map +1 -1
- package/dist/components/ic-footer-link-group.js +14 -15
- package/dist/components/ic-footer-link-group.js.map +1 -1
- package/dist/components/ic-footer-link.js +19 -13
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-footer.js +12 -14
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +13 -17
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +17 -9
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +12 -31
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-label2.js +18 -23
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation2.js +9 -10
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link2.js +25 -18
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +29 -23
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-group.js +2 -2
- package/dist/components/ic-menu-group.js.map +1 -1
- package/dist/components/ic-menu-item2.js +14 -14
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +473 -180
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +14 -11
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +16 -14
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +13 -10
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +6 -4
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +11 -10
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +10 -12
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination.js +56 -49
- package/dist/components/ic-pagination.js.map +1 -1
- package/dist/components/ic-popover-menu.js +24 -3
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +35 -19
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +37 -47
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +73 -85
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-select.js +197 -89
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +20 -23
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +6 -8
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-status-tag.js +9 -16
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +48 -51
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +29 -18
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +18 -19
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +39 -31
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +11 -13
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +17 -13
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +11 -9
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field.js +371 -1
- package/dist/components/ic-text-field.js.map +1 -1
- package/dist/components/ic-theme.js +51 -25
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast-region.js +1 -9
- package/dist/components/ic-toast-region.js.map +1 -1
- package/dist/components/ic-toast.js +86 -37
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +71 -30
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +73 -40
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +8 -3
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +19 -13
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-typography2.js +9 -6
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/ag-theme-icds.css +32 -31
- package/dist/core/core.css +1606 -64
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-0cb72d37.entry.js +2 -0
- package/dist/core/p-0cb72d37.entry.js.map +1 -0
- package/dist/core/p-1223d0e9.entry.js +2 -0
- package/dist/core/p-1223d0e9.entry.js.map +1 -0
- package/dist/core/p-190c3474.entry.js +2 -0
- package/dist/core/p-190c3474.entry.js.map +1 -0
- package/dist/core/p-199b9196.entry.js +2 -0
- package/dist/core/p-199b9196.entry.js.map +1 -0
- package/dist/core/p-1bf956cb.entry.js +2 -0
- package/dist/core/p-1bf956cb.entry.js.map +1 -0
- package/dist/core/p-20ac0d2a.entry.js +2 -0
- package/dist/core/p-20ac0d2a.entry.js.map +1 -0
- package/dist/core/p-2197e83e.entry.js +2 -0
- package/dist/core/p-2197e83e.entry.js.map +1 -0
- package/dist/core/p-243ad74c.entry.js +2 -0
- package/dist/core/p-243ad74c.entry.js.map +1 -0
- package/dist/core/p-24a34d72.entry.js +2 -0
- package/dist/core/p-24a34d72.entry.js.map +1 -0
- package/dist/core/{p-7438ab1f.entry.js → p-26bc7c62.entry.js} +2 -2
- package/dist/core/p-26bc7c62.entry.js.map +1 -0
- package/dist/core/{p-3eda4e14.entry.js → p-27274ca8.entry.js} +2 -2
- package/dist/core/p-27274ca8.entry.js.map +1 -0
- package/dist/core/p-29afeb33.entry.js +2 -0
- package/dist/core/p-29afeb33.entry.js.map +1 -0
- package/dist/core/p-2cc0d6b9.entry.js +2 -0
- package/dist/core/p-2cc0d6b9.entry.js.map +1 -0
- package/dist/core/p-31c84a47.entry.js +2 -0
- package/dist/core/p-31c84a47.entry.js.map +1 -0
- package/dist/core/p-33b44dc1.entry.js +2 -0
- package/dist/core/p-33b44dc1.entry.js.map +1 -0
- package/dist/core/p-36ac5305.entry.js +2 -0
- package/dist/core/p-36ac5305.entry.js.map +1 -0
- package/dist/core/{p-3969d3c0.entry.js → p-3ea4a005.entry.js} +2 -2
- package/dist/core/p-3ea4a005.entry.js.map +1 -0
- package/dist/core/p-404b482e.entry.js +2 -0
- package/dist/core/p-404b482e.entry.js.map +1 -0
- package/dist/core/p-419d3378.entry.js +2 -0
- package/dist/core/p-419d3378.entry.js.map +1 -0
- package/dist/core/p-47038ea3.entry.js +2 -0
- package/dist/core/p-47038ea3.entry.js.map +1 -0
- package/dist/core/p-490bf0ee.entry.js +2 -0
- package/dist/core/p-490bf0ee.entry.js.map +1 -0
- package/dist/core/p-4e6e34fe.entry.js +2 -0
- package/dist/core/p-4e6e34fe.entry.js.map +1 -0
- package/dist/core/p-4fce49bd.entry.js +2 -0
- package/dist/core/p-4fce49bd.entry.js.map +1 -0
- package/dist/core/p-50b04d0f.entry.js +2 -0
- package/dist/core/p-50b04d0f.entry.js.map +1 -0
- package/dist/core/p-5b42dbef.entry.js +2 -0
- package/dist/core/p-5b42dbef.entry.js.map +1 -0
- package/dist/core/p-5be2c26a.entry.js +2 -0
- package/dist/core/p-5be2c26a.entry.js.map +1 -0
- package/dist/core/p-5d5345a4.entry.js +2 -0
- package/dist/core/p-5d5345a4.entry.js.map +1 -0
- package/dist/core/p-5dcc0489.entry.js +2 -0
- package/dist/core/p-5dcc0489.entry.js.map +1 -0
- package/dist/core/p-5f6d6b3f.entry.js +2 -0
- package/dist/core/p-5f6d6b3f.entry.js.map +1 -0
- package/dist/core/p-5f74782e.entry.js +2 -0
- package/dist/core/p-5f74782e.entry.js.map +1 -0
- package/dist/core/p-641e244d.entry.js +2 -0
- package/dist/core/p-641e244d.entry.js.map +1 -0
- package/dist/core/p-6c1cf351.entry.js +2 -0
- package/dist/core/p-6c1cf351.entry.js.map +1 -0
- package/dist/core/p-6e630778.entry.js +2 -0
- package/dist/core/p-6e630778.entry.js.map +1 -0
- package/dist/core/p-7c8cd719.entry.js +2 -0
- package/dist/core/p-7c8cd719.entry.js.map +1 -0
- package/dist/core/p-7c94e055.entry.js +2 -0
- package/dist/core/p-7c94e055.entry.js.map +1 -0
- package/dist/core/p-7fa74998.entry.js +2 -0
- package/dist/core/p-7fa74998.entry.js.map +1 -0
- package/dist/core/p-7ff4632d.entry.js +2 -0
- package/dist/core/p-7ff4632d.entry.js.map +1 -0
- package/dist/core/p-84c3a870.entry.js +2 -0
- package/dist/core/p-84c3a870.entry.js.map +1 -0
- package/dist/core/p-8624bb98.entry.js +2 -0
- package/dist/core/p-8624bb98.entry.js.map +1 -0
- package/dist/core/p-87aa30b4.entry.js +2 -0
- package/dist/core/p-87aa30b4.entry.js.map +1 -0
- package/dist/core/p-932f3e3c.js +2 -0
- package/dist/core/p-932f3e3c.js.map +1 -0
- package/dist/core/{p-6fae7e1f.entry.js → p-96b4ca6e.entry.js} +2 -2
- package/dist/core/p-96b4ca6e.entry.js.map +1 -0
- package/dist/core/p-9ad4bbf4.entry.js +2 -0
- package/dist/core/p-9ad4bbf4.entry.js.map +1 -0
- package/dist/core/p-9cfd6855.entry.js +2 -0
- package/dist/core/p-9cfd6855.entry.js.map +1 -0
- package/dist/core/p-a38f5453.entry.js +2 -0
- package/dist/core/p-a38f5453.entry.js.map +1 -0
- package/dist/core/p-af934e73.entry.js +2 -0
- package/dist/core/p-af934e73.entry.js.map +1 -0
- package/dist/core/p-b9941d97.entry.js +2 -0
- package/dist/core/p-b9941d97.entry.js.map +1 -0
- package/dist/core/p-cf0176be.entry.js +2 -0
- package/dist/core/p-cf0176be.entry.js.map +1 -0
- package/dist/core/p-cf5d88a9.entry.js +2 -0
- package/dist/core/p-cf5d88a9.entry.js.map +1 -0
- package/dist/core/p-d21d8014.entry.js +2 -0
- package/dist/core/p-d21d8014.entry.js.map +1 -0
- package/dist/core/p-df957570.entry.js +2 -0
- package/dist/core/p-df957570.entry.js.map +1 -0
- package/dist/core/p-e0730a5d.entry.js +2 -0
- package/dist/core/p-e0730a5d.entry.js.map +1 -0
- package/dist/core/p-e1f8d915.entry.js +2 -0
- package/dist/core/p-e1f8d915.entry.js.map +1 -0
- package/dist/core/p-e4cb5585.entry.js +2 -0
- package/dist/core/p-e4cb5585.entry.js.map +1 -0
- package/dist/core/p-f073fc69.entry.js +2 -0
- package/dist/core/p-f073fc69.entry.js.map +1 -0
- package/dist/core/p-f2d9eefe.entry.js +2 -0
- package/dist/core/p-f2d9eefe.entry.js.map +1 -0
- package/dist/core/p-f7872eef.entry.js +2 -0
- package/dist/core/p-f7872eef.entry.js.map +1 -0
- package/dist/core/{p-9df32798.entry.js → p-f9dceda0.entry.js} +2 -2
- package/dist/core/p-f9dceda0.entry.js.map +1 -0
- package/dist/core/p-fac53f92.entry.js +2 -0
- package/dist/core/p-fac53f92.entry.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-003f27c9.js → helpers-2624c32c.js} +65 -22
- package/dist/esm/helpers-2624c32c.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +14 -15
- package/dist/esm/ic-accordion-group.entry.js.map +1 -1
- package/dist/esm/ic-accordion.entry.js +7 -8
- package/dist/esm/ic-accordion.entry.js.map +1 -1
- package/dist/esm/ic-alert.entry.js +8 -9
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +16 -17
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +22 -51
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +26 -14
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +53 -8
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +59 -53
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +146 -0
- package/dist/esm/ic-card-vertical.entry.js.map +1 -0
- package/dist/esm/ic-checkbox-group.entry.js +21 -10
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +8 -16
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +23 -24
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +2 -2
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +28 -0
- package/dist/esm/ic-data-list.entry.js.map +1 -0
- package/dist/esm/ic-data-row.entry.js +12 -12
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +14 -105
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +74 -11
- package/dist/esm/ic-divider.entry.js.map +1 -1
- package/dist/esm/ic-empty-state.entry.js +9 -8
- package/dist/esm/ic-empty-state.entry.js.map +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +12 -14
- package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
- package/dist/esm/ic-footer-link.entry.js +11 -12
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +11 -13
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +12 -15
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +15 -9
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +478 -201
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +23 -28
- package/dist/esm/ic-input-label_2.entry.js.map +1 -1
- package/dist/esm/ic-link.entry.js +22 -15
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +2 -3
- package/dist/esm/ic-menu-group.entry.js.map +1 -1
- package/dist/esm/ic-menu-item.entry.js +12 -13
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +12 -10
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +14 -14
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +11 -10
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +5 -5
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +10 -10
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination-item.entry.js +8 -12
- package/dist/esm/ic-pagination-item.entry.js.map +1 -1
- package/dist/esm/ic-pagination.entry.js +51 -46
- package/dist/esm/ic-pagination.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +23 -4
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +32 -18
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +34 -40
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +56 -57
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-select.entry.js +193 -80
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +19 -22
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +5 -6
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +8 -16
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +41 -46
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +27 -18
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +17 -18
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +34 -28
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +9 -11
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +12 -11
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +10 -9
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-text-field.entry.js +81 -72
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +45 -22
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast-region.entry.js +0 -7
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +83 -36
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +63 -30
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +65 -34
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +17 -12
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +9 -8
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-d1d2c456.js +16 -16
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-accordion/ic-accordion.d.ts +5 -5
- package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +6 -6
- package/dist/types/components/ic-alert/ic-alert.d.ts +9 -9
- package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +5 -1
- package/dist/types/components/ic-badge/ic-badge.d.ts +8 -15
- package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +17 -5
- package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +13 -7
- package/dist/types/components/ic-button/ic-button.d.ts +10 -7
- package/dist/types/components/{ic-card/ic-card.d.ts → ic-card-vertical/ic-card-vertical.d.ts} +10 -6
- package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +3 -27
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +5 -3
- package/dist/types/components/ic-chip/ic-chip.d.ts +8 -11
- package/dist/types/components/ic-data-list/ic-data-list.d.ts +20 -0
- package/dist/types/components/ic-data-row/ic-data-row.d.ts +4 -4
- package/dist/types/components/ic-dialog/ic-dialog.d.ts +5 -37
- package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
- package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
- package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +6 -2
- package/dist/types/components/ic-footer/ic-footer.d.ts +3 -3
- package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
- package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +4 -3
- package/dist/types/components/ic-hero/ic-hero.d.ts +5 -9
- package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
- package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +0 -12
- package/dist/types/components/ic-input-label/ic-input-label.d.ts +8 -12
- package/dist/types/components/ic-link/ic-link.d.ts +10 -10
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +12 -8
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +1 -1
- package/dist/types/components/ic-menu/ic-menu.d.ts +49 -20
- package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +5 -5
- package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +7 -3
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +7 -3
- package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +7 -3
- package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -0
- package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -5
- package/dist/types/components/ic-pagination/ic-pagination.d.ts +13 -9
- package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +9 -5
- package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +5 -0
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +7 -6
- package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +8 -27
- package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +17 -18
- package/dist/types/components/ic-select/ic-select.d.ts +36 -47
- package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +4 -4
- package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
- package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -6
- package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +9 -10
- package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +0 -1
- package/dist/types/components/ic-step/ic-step.d.ts +11 -6
- package/dist/types/components/ic-stepper/ic-stepper.d.ts +6 -4
- package/dist/types/components/ic-stepper/test/basic/ic-stepper-test-examples.d.ts +4 -4
- package/dist/types/components/ic-switch/ic-switch.d.ts +4 -8
- package/dist/types/components/ic-tab/ic-tab.d.ts +5 -3
- package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +11 -11
- package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +5 -10
- package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +13 -7
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +15 -19
- package/dist/types/components/ic-theme/ic-theme.d.ts +15 -8
- package/dist/types/components/ic-toast/ic-toast.d.ts +8 -1
- package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +0 -5
- package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +11 -10
- package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +15 -5
- package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.types.d.ts +1 -1
- package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +5 -0
- package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +8 -4
- package/dist/types/components/ic-typography/ic-typography.d.ts +5 -1
- package/dist/types/components.d.ts +647 -662
- package/dist/types/utils/helpers.d.ts +16 -8
- package/dist/types/utils/types.d.ts +11 -9
- package/hydrate/index.js +2155 -1491
- package/package.json +13 -12
- package/vscode-data.json +827 -467
- package/dist/cjs/helpers-6f6991cb.js.map +0 -1
- package/dist/cjs/ic-card.cjs.entry.js +0 -149
- package/dist/cjs/ic-card.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-data-entity.cjs.entry.js +0 -29
- package/dist/cjs/ic-data-entity.cjs.entry.js.map +0 -1
- package/dist/cjs/types-dc22e301.js +0 -16
- package/dist/cjs/types-dc22e301.js.map +0 -1
- package/dist/collection/components/ic-card/ic-card.js.map +0 -1
- package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +0 -1
- package/dist/collection/components/ic-chip/ic-chip.types.js +0 -2
- package/dist/collection/components/ic-chip/ic-chip.types.js.map +0 -1
- package/dist/collection/components/ic-data-entity/ic-data-entity.js.map +0 -1
- package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +0 -1
- package/dist/components/ic-alert2.js +0 -132
- package/dist/components/ic-alert2.js.map +0 -1
- package/dist/components/ic-card.js +0 -196
- package/dist/components/ic-card.js.map +0 -1
- package/dist/components/ic-data-entity.js +0 -53
- package/dist/components/ic-data-entity.js.map +0 -1
- package/dist/components/ic-text-field2.js +0 -368
- package/dist/components/ic-text-field2.js.map +0 -1
- package/dist/components/types.js +0 -16
- package/dist/components/types.js.map +0 -1
- package/dist/core/p-08478a4c.entry.js +0 -2
- package/dist/core/p-08478a4c.entry.js.map +0 -1
- package/dist/core/p-12bac804.entry.js +0 -2
- package/dist/core/p-12bac804.entry.js.map +0 -1
- package/dist/core/p-13b2c3a2.entry.js +0 -2
- package/dist/core/p-13b2c3a2.entry.js.map +0 -1
- package/dist/core/p-168a7440.entry.js +0 -2
- package/dist/core/p-168a7440.entry.js.map +0 -1
- package/dist/core/p-193fc7d0.entry.js +0 -2
- package/dist/core/p-193fc7d0.entry.js.map +0 -1
- package/dist/core/p-1e4690f8.entry.js +0 -2
- package/dist/core/p-1e4690f8.entry.js.map +0 -1
- package/dist/core/p-1f6d36d5.entry.js +0 -2
- package/dist/core/p-1f6d36d5.entry.js.map +0 -1
- package/dist/core/p-26b7b18f.js +0 -2
- package/dist/core/p-26b7b18f.js.map +0 -1
- package/dist/core/p-2a11be1e.entry.js +0 -2
- package/dist/core/p-2a11be1e.entry.js.map +0 -1
- package/dist/core/p-3969d3c0.entry.js.map +0 -1
- package/dist/core/p-3ba915a5.entry.js +0 -2
- package/dist/core/p-3ba915a5.entry.js.map +0 -1
- package/dist/core/p-3e8023ff.entry.js +0 -2
- package/dist/core/p-3e8023ff.entry.js.map +0 -1
- package/dist/core/p-3eda4e14.entry.js.map +0 -1
- package/dist/core/p-4c6dc1b2.entry.js +0 -2
- package/dist/core/p-4c6dc1b2.entry.js.map +0 -1
- package/dist/core/p-51407872.entry.js +0 -2
- package/dist/core/p-51407872.entry.js.map +0 -1
- package/dist/core/p-597c221c.entry.js +0 -2
- package/dist/core/p-597c221c.entry.js.map +0 -1
- package/dist/core/p-65dc77ba.entry.js +0 -2
- package/dist/core/p-65dc77ba.entry.js.map +0 -1
- package/dist/core/p-6beed7db.entry.js +0 -2
- package/dist/core/p-6beed7db.entry.js.map +0 -1
- package/dist/core/p-6d8dc552.entry.js +0 -2
- package/dist/core/p-6d8dc552.entry.js.map +0 -1
- package/dist/core/p-6fae7e1f.entry.js.map +0 -1
- package/dist/core/p-72f292f2.entry.js +0 -2
- package/dist/core/p-72f292f2.entry.js.map +0 -1
- package/dist/core/p-7438ab1f.entry.js.map +0 -1
- package/dist/core/p-78f16b1a.entry.js +0 -2
- package/dist/core/p-78f16b1a.entry.js.map +0 -1
- package/dist/core/p-7b3a4b3f.entry.js +0 -2
- package/dist/core/p-7b3a4b3f.entry.js.map +0 -1
- package/dist/core/p-7f1594d9.entry.js +0 -2
- package/dist/core/p-7f1594d9.entry.js.map +0 -1
- package/dist/core/p-8dd2d3df.entry.js +0 -2
- package/dist/core/p-8dd2d3df.entry.js.map +0 -1
- package/dist/core/p-90433147.entry.js +0 -2
- package/dist/core/p-90433147.entry.js.map +0 -1
- package/dist/core/p-915e5888.entry.js +0 -2
- package/dist/core/p-915e5888.entry.js.map +0 -1
- package/dist/core/p-91fab13d.entry.js +0 -2
- package/dist/core/p-91fab13d.entry.js.map +0 -1
- package/dist/core/p-96e79d69.entry.js +0 -2
- package/dist/core/p-96e79d69.entry.js.map +0 -1
- package/dist/core/p-9a6790d8.entry.js +0 -2
- package/dist/core/p-9a6790d8.entry.js.map +0 -1
- package/dist/core/p-9df32798.entry.js.map +0 -1
- package/dist/core/p-9ef08234.entry.js +0 -2
- package/dist/core/p-9ef08234.entry.js.map +0 -1
- package/dist/core/p-a020afbd.entry.js +0 -2
- package/dist/core/p-a020afbd.entry.js.map +0 -1
- package/dist/core/p-a141ea39.entry.js +0 -2
- package/dist/core/p-a141ea39.entry.js.map +0 -1
- package/dist/core/p-a32016ff.entry.js +0 -2
- package/dist/core/p-a32016ff.entry.js.map +0 -1
- package/dist/core/p-a438656d.entry.js +0 -2
- package/dist/core/p-a438656d.entry.js.map +0 -1
- package/dist/core/p-a9cea205.entry.js +0 -2
- package/dist/core/p-a9cea205.entry.js.map +0 -1
- package/dist/core/p-b21d5f94.entry.js +0 -2
- package/dist/core/p-b21d5f94.entry.js.map +0 -1
- package/dist/core/p-b262eaff.entry.js +0 -2
- package/dist/core/p-b262eaff.entry.js.map +0 -1
- package/dist/core/p-b60912a7.entry.js +0 -2
- package/dist/core/p-b60912a7.entry.js.map +0 -1
- package/dist/core/p-b62735aa.entry.js +0 -2
- package/dist/core/p-b62735aa.entry.js.map +0 -1
- package/dist/core/p-ba06cc95.entry.js +0 -2
- package/dist/core/p-ba06cc95.entry.js.map +0 -1
- package/dist/core/p-ba884064.entry.js +0 -2
- package/dist/core/p-ba884064.entry.js.map +0 -1
- package/dist/core/p-bdaff5c9.entry.js +0 -2
- package/dist/core/p-bdaff5c9.entry.js.map +0 -1
- package/dist/core/p-bfaa257c.entry.js +0 -2
- package/dist/core/p-bfaa257c.entry.js.map +0 -1
- package/dist/core/p-c05474f3.entry.js +0 -2
- package/dist/core/p-c05474f3.entry.js.map +0 -1
- package/dist/core/p-c939d07d.entry.js +0 -2
- package/dist/core/p-c939d07d.entry.js.map +0 -1
- package/dist/core/p-d0299926.entry.js +0 -2
- package/dist/core/p-d0299926.entry.js.map +0 -1
- package/dist/core/p-d3344518.entry.js +0 -2
- package/dist/core/p-d3344518.entry.js.map +0 -1
- package/dist/core/p-d375858e.entry.js +0 -2
- package/dist/core/p-d375858e.entry.js.map +0 -1
- package/dist/core/p-d41c847e.js +0 -2
- package/dist/core/p-d41c847e.js.map +0 -1
- package/dist/core/p-e1ab5945.entry.js +0 -2
- package/dist/core/p-e1ab5945.entry.js.map +0 -1
- package/dist/core/p-e668390c.entry.js +0 -2
- package/dist/core/p-e668390c.entry.js.map +0 -1
- package/dist/core/p-eae017ce.entry.js +0 -2
- package/dist/core/p-eae017ce.entry.js.map +0 -1
- package/dist/core/p-ee6aa6a1.entry.js +0 -2
- package/dist/core/p-ee6aa6a1.entry.js.map +0 -1
- package/dist/core/p-f3599009.entry.js +0 -2
- package/dist/core/p-f3599009.entry.js.map +0 -1
- package/dist/core/p-f39741be.entry.js +0 -2
- package/dist/core/p-f39741be.entry.js.map +0 -1
- package/dist/core/p-f404b35e.entry.js +0 -2
- package/dist/core/p-f404b35e.entry.js.map +0 -1
- package/dist/core/p-f4382f1f.entry.js +0 -2
- package/dist/core/p-f4382f1f.entry.js.map +0 -1
- package/dist/esm/helpers-003f27c9.js.map +0 -1
- package/dist/esm/ic-card.entry.js +0 -145
- package/dist/esm/ic-card.entry.js.map +0 -1
- package/dist/esm/ic-data-entity.entry.js +0 -25
- package/dist/esm/ic-data-entity.entry.js.map +0 -1
- package/dist/esm/types-6f6b41a5.js +0 -16
- package/dist/esm/types-6f6b41a5.js.map +0 -1
- package/dist/types/components/ic-chip/ic-chip.types.d.ts +0 -1
- package/dist/types/components/ic-data-entity/ic-data-entity.d.ts +0 -20
@@ -1,18 +1,26 @@
|
|
1
1
|
import { h, Host, Fragment, } from "@stencil/core";
|
2
2
|
import { createPopper } from "@popperjs/core";
|
3
3
|
import Check from "../../assets/check-icon.svg";
|
4
|
-
import { onComponentRequiredPropUndefined } from "../../utils/helpers";
|
4
|
+
import { getOptionsWithoutGroupTitlesCount, isMacDevice, onComponentRequiredPropUndefined, } from "../../utils/helpers";
|
5
5
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
6
6
|
export class Menu {
|
7
7
|
constructor() {
|
8
|
+
this.ACTIVE_DESCENDANT = "aria-activedescendant";
|
9
|
+
this.CLEAR_BUTTON_ID = "clear-button";
|
10
|
+
this.SEARCH_BAR_TAG = "IC-SEARCH-BAR";
|
8
11
|
this.disabledOptionSelected = false;
|
9
12
|
this.hasPreviouslyBlurred = false;
|
10
13
|
this.hasTimedOut = false;
|
11
14
|
this.isLoading = false;
|
15
|
+
this.isMultiSelect = false;
|
12
16
|
this.isSearchBar = false;
|
13
17
|
this.isSearchableSelect = false;
|
14
|
-
|
15
|
-
this.
|
18
|
+
this.lastOptionSelected = null; // Index of last option selected
|
19
|
+
this.lastOptionFocused = null; // Index of last option focused
|
20
|
+
this.multiOptionClicked = null;
|
21
|
+
this.preventClickOpen = false; // Prevents menu re-opening immediately after it is closed on blur when clicking input.
|
22
|
+
this.preventMenuFocus = false; // (When multiple) ensures focus moves straight to select all button from menu.
|
23
|
+
this.shiftPressed = false;
|
16
24
|
this.ungroupedOptions = [];
|
17
25
|
this.handleClearListener = () => {
|
18
26
|
this.optionHighlighted = "";
|
@@ -23,9 +31,16 @@ export class Menu {
|
|
23
31
|
};
|
24
32
|
this.handleMenuChange = (open, focusInput) => {
|
25
33
|
this.menuStateChange.emit({ open, focusInput });
|
26
|
-
if (!open
|
27
|
-
|
28
|
-
|
34
|
+
if (!open) {
|
35
|
+
if (focusInput !== false) {
|
36
|
+
this.inputEl.focus();
|
37
|
+
this.preventClickOpen = false;
|
38
|
+
}
|
39
|
+
// Reset optionHighlighted so previously highlighted option doesn't get reselected when Enter pressed
|
40
|
+
if (this.isMultiSelect) {
|
41
|
+
this.optionHighlighted = undefined;
|
42
|
+
this.multiOptionClicked = null;
|
43
|
+
}
|
29
44
|
}
|
30
45
|
};
|
31
46
|
this.setNextOptionValue = (selectedOptionIndex) => {
|
@@ -57,27 +72,37 @@ export class Menu {
|
|
57
72
|
}
|
58
73
|
};
|
59
74
|
this.getParentEl = (parent) => {
|
60
|
-
if (parent.tagName ===
|
75
|
+
if (parent.tagName === this.SEARCH_BAR_TAG) {
|
61
76
|
this.isSearchBar = true;
|
62
77
|
}
|
63
|
-
else if (parent.tagName === "IC-SELECT"
|
64
|
-
parent.getAttribute("searchable") !== null &&
|
65
|
-
|
66
|
-
|
78
|
+
else if (parent.tagName === "IC-SELECT") {
|
79
|
+
if (parent.getAttribute("searchable") !== null &&
|
80
|
+
parent.getAttribute("searchable") !== undefined) {
|
81
|
+
this.isSearchableSelect = true;
|
82
|
+
}
|
83
|
+
else if (parent.getAttribute("multiple") !== null &&
|
84
|
+
parent.getAttribute("multiple") !== undefined) {
|
85
|
+
this.isMultiSelect = true;
|
86
|
+
}
|
67
87
|
}
|
68
88
|
};
|
89
|
+
// Open menu when up or down arrow keys are pressed
|
69
90
|
this.arrowBehaviour = (event) => {
|
70
91
|
event.preventDefault();
|
71
92
|
this.handleMenuChange(true);
|
72
93
|
};
|
73
|
-
this.
|
94
|
+
this.getMenuOptions = () => this.isSearchBar ? this.options : this.ungroupedOptions;
|
95
|
+
// Set option that is focused and so should show focus state
|
74
96
|
this.setHighlightedOption = (highlightedIndex) => {
|
75
|
-
const menuOptions = this.
|
97
|
+
const menuOptions = this.getMenuOptions();
|
76
98
|
menuOptions[highlightedIndex] &&
|
77
99
|
!menuOptions[highlightedIndex].timedOut &&
|
78
100
|
(this.optionHighlighted =
|
79
101
|
menuOptions[highlightedIndex][this.valueField] || undefined);
|
80
102
|
};
|
103
|
+
// Determines keyboard behaviour when selection is automatic
|
104
|
+
// (i.e. you don't have to press Enter select an option - just focus on it)
|
105
|
+
// and menu is closed
|
81
106
|
this.autoSetInputValueKeyboardOpen = (event) => {
|
82
107
|
const selectedOptionIndex = this.ungroupedOptions.findIndex((option) => option[this.valueField] === this.value);
|
83
108
|
this.keyboardNav = false;
|
@@ -94,147 +119,278 @@ export class Menu {
|
|
94
119
|
break;
|
95
120
|
case " ":
|
96
121
|
case "Enter":
|
97
|
-
if (event.target.id !==
|
122
|
+
if (event.target.id !== this.CLEAR_BUTTON_ID) {
|
98
123
|
this.handleMenuChange(true);
|
99
124
|
}
|
100
125
|
break;
|
101
126
|
}
|
102
127
|
};
|
103
|
-
this.
|
104
|
-
|
105
|
-
|
106
|
-
|
128
|
+
this.selectHighlightedOption = (options, highlightedOptionIndex) => {
|
129
|
+
if (!this.isLoading && !this.hasTimedOut) {
|
130
|
+
this.keyboardNav = true;
|
131
|
+
}
|
107
132
|
const isOpen = this.isSearchBar || this.isSearchableSelect || this.open;
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
else {
|
119
|
-
this.setHighlightedOption(0);
|
120
|
-
this.menuOptionId.emit({
|
121
|
-
optionId: getOptionId(0),
|
122
|
-
});
|
133
|
+
if (isOpen) {
|
134
|
+
if (highlightedOptionIndex >= 0) {
|
135
|
+
if (options[highlightedOptionIndex] !== undefined) {
|
136
|
+
if (this.isSearchBar &&
|
137
|
+
options[highlightedOptionIndex].disabled === true) {
|
138
|
+
this.disabledOptionSelected = true;
|
139
|
+
}
|
140
|
+
else {
|
141
|
+
this.setInputValue(highlightedOptionIndex);
|
142
|
+
}
|
123
143
|
}
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
144
|
+
}
|
145
|
+
else {
|
146
|
+
this.setInputValue(highlightedOptionIndex);
|
147
|
+
}
|
148
|
+
}
|
149
|
+
else {
|
150
|
+
this.handleMenuChange(true);
|
151
|
+
}
|
152
|
+
};
|
153
|
+
// Check if option is selected based on the index of the option
|
154
|
+
this.isOptionSelected = (index) => {
|
155
|
+
const menuOptions = this.getMenuOptions();
|
156
|
+
return this.value
|
157
|
+
? this.value.includes(menuOptions[index][this.valueField])
|
158
|
+
: false;
|
159
|
+
};
|
160
|
+
// Deselect currently selected options when shift pressed, but keep certain options selected
|
161
|
+
this.deselectSelectedOptions = (optionsToKeepSelected) => {
|
162
|
+
const menuOptions = this.getMenuOptions();
|
163
|
+
if (this.value) {
|
164
|
+
const selectedOptionIndexes = this.value.map((value) => {
|
165
|
+
return menuOptions.findIndex((option) => option[this.valueField] === value);
|
166
|
+
});
|
167
|
+
// Call setInputValue (which toggles the selected state) on options that need to be deselected
|
168
|
+
selectedOptionIndexes.forEach((index) => !optionsToKeepSelected.includes(index) && this.setInputValue(index));
|
169
|
+
}
|
170
|
+
};
|
171
|
+
// Determines keyboard behaviour when selection is manual (i.e. when you have to press Enter to select an option)
|
172
|
+
this.manualSetInputValueKeyboardOpen = (event) => {
|
173
|
+
const menuOptions = this.getMenuOptions();
|
174
|
+
// For preventing focus disappearing on currently focused option when Shift / Cmd / Ctrl pressed
|
175
|
+
// (i.e. when user is likely in the middle of executing a keyboard combination to select options)
|
176
|
+
const isKeyboardCombination = event.shiftKey || event.metaKey || event.ctrlKey;
|
177
|
+
const highlightedOptionIndex = this.getOptionHighlightedIndex();
|
178
|
+
const clickedMultiOptionIndex = menuOptions.findIndex((option) => option[this.valueField] === this.multiOptionClicked);
|
179
|
+
const getOptionId = (index) => { var _a; return (_a = Array.from(this.host.querySelectorAll("li"))[index]) === null || _a === void 0 ? void 0 : _a.id; };
|
180
|
+
// Space press should be equivalent to Enter when multi-select
|
181
|
+
if (event.key === " " && this.isMultiSelect) {
|
182
|
+
this.handleOptionSelect(event, highlightedOptionIndex);
|
183
|
+
}
|
184
|
+
else {
|
185
|
+
switch (event.key) {
|
186
|
+
case "ArrowDown":
|
187
|
+
this.keyboardNav = true;
|
188
|
+
this.arrowBehaviour(event);
|
189
|
+
if (this.multiOptionClicked) {
|
190
|
+
// Set focus to option last clicked
|
191
|
+
// Prevents it resetting to the top of the menu when user switches to using keyboard
|
192
|
+
this.setHighlightedOption(clickedMultiOptionIndex);
|
193
|
+
this.multiOptionClicked = null;
|
194
|
+
}
|
195
|
+
else {
|
196
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex, menuOptions);
|
197
|
+
if (highlightedOptionIndex < menuOptions.length - 1) {
|
198
|
+
this.setHighlightedOption(highlightedOptionIndex + 1);
|
199
|
+
this.menuOptionId.emit({
|
200
|
+
optionId: getOptionId(highlightedOptionIndex + 1),
|
201
|
+
});
|
202
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex + 1, menuOptions);
|
203
|
+
}
|
204
|
+
else {
|
205
|
+
this.setHighlightedOption(0);
|
206
|
+
this.menuOptionId.emit({
|
207
|
+
optionId: getOptionId(0),
|
208
|
+
});
|
209
|
+
this.handleSingleShiftSelect(event, 0, menuOptions);
|
210
|
+
}
|
211
|
+
// Deselect currently selected options if arrow was pressed for first time after shift is held
|
212
|
+
if (this.isMultiSelect && this.shiftPressed) {
|
213
|
+
this.deselectSelectedOptions([
|
214
|
+
highlightedOptionIndex,
|
215
|
+
this.getOptionHighlightedIndex(),
|
216
|
+
]);
|
217
|
+
this.shiftPressed = false;
|
218
|
+
}
|
219
|
+
}
|
220
|
+
this.lastOptionFocused = this.getOptionHighlightedIndex();
|
221
|
+
this.preventIncorrectTabOrder = false;
|
222
|
+
this.focusFromSearchKeypress = false;
|
223
|
+
break;
|
224
|
+
case "ArrowUp":
|
225
|
+
this.keyboardNav = true;
|
226
|
+
this.arrowBehaviour(event);
|
227
|
+
if (this.multiOptionClicked) {
|
228
|
+
// Set focus to option last clicked
|
229
|
+
// Prevents it resetting to the bottom of the menu when user switches to using keyboard
|
230
|
+
this.setHighlightedOption(clickedMultiOptionIndex);
|
231
|
+
this.multiOptionClicked = null;
|
232
|
+
}
|
233
|
+
else {
|
234
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex, menuOptions);
|
235
|
+
if (highlightedOptionIndex <= 0 ||
|
236
|
+
highlightedOptionIndex > menuOptions.length + 1) {
|
237
|
+
this.setHighlightedOption(menuOptions.length - 1);
|
238
|
+
this.menuOptionId.emit({
|
239
|
+
optionId: getOptionId(menuOptions.length - 1),
|
240
|
+
});
|
241
|
+
this.handleSingleShiftSelect(event, menuOptions.length - 1, menuOptions);
|
242
|
+
}
|
243
|
+
else {
|
244
|
+
this.setHighlightedOption(highlightedOptionIndex - 1);
|
245
|
+
this.menuOptionId.emit({
|
246
|
+
optionId: getOptionId(highlightedOptionIndex - 1),
|
247
|
+
});
|
248
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex - 1, menuOptions);
|
249
|
+
}
|
250
|
+
// Deselect currently selected options if arrow was pressed for first time after shift is held
|
251
|
+
if (this.isMultiSelect && this.shiftPressed) {
|
252
|
+
this.deselectSelectedOptions([
|
253
|
+
highlightedOptionIndex,
|
254
|
+
this.getOptionHighlightedIndex(),
|
255
|
+
]);
|
256
|
+
this.shiftPressed = false;
|
257
|
+
}
|
258
|
+
}
|
259
|
+
this.lastOptionFocused = this.getOptionHighlightedIndex();
|
260
|
+
this.preventIncorrectTabOrder = false;
|
261
|
+
this.focusFromSearchKeypress = false;
|
262
|
+
break;
|
263
|
+
case "Home": {
|
264
|
+
const startOptionIndex = 0;
|
265
|
+
this.keyboardNav = true;
|
266
|
+
event.preventDefault();
|
267
|
+
this.arrowBehaviour(event);
|
268
|
+
this.setHighlightedOption(startOptionIndex);
|
133
269
|
this.menuOptionId.emit({
|
134
|
-
optionId: getOptionId(
|
270
|
+
optionId: getOptionId(startOptionIndex),
|
135
271
|
});
|
272
|
+
if (event.shiftKey && event.ctrlKey) {
|
273
|
+
this.handleMultipleShiftSelect(startOptionIndex);
|
274
|
+
}
|
275
|
+
this.lastOptionFocused = startOptionIndex;
|
276
|
+
this.lastOptionSelected = startOptionIndex;
|
277
|
+
break;
|
136
278
|
}
|
137
|
-
|
138
|
-
|
279
|
+
case "End": {
|
280
|
+
const endOptionIndex = menuOptions.length - 1;
|
281
|
+
this.keyboardNav = true;
|
282
|
+
event.preventDefault();
|
283
|
+
this.arrowBehaviour(event);
|
284
|
+
this.setHighlightedOption(endOptionIndex);
|
139
285
|
this.menuOptionId.emit({
|
140
|
-
optionId: getOptionId(
|
286
|
+
optionId: getOptionId(endOptionIndex),
|
141
287
|
});
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
this.keyboardNav = true;
|
148
|
-
event.preventDefault();
|
149
|
-
this.arrowBehaviour(event);
|
150
|
-
this.setHighlightedOption(0);
|
151
|
-
this.menuOptionId.emit({
|
152
|
-
optionId: getOptionId(0),
|
153
|
-
});
|
154
|
-
break;
|
155
|
-
case "End":
|
156
|
-
this.keyboardNav = true;
|
157
|
-
event.preventDefault();
|
158
|
-
this.arrowBehaviour(event);
|
159
|
-
this.setHighlightedOption(menuOptions.length - 1);
|
160
|
-
this.menuOptionId.emit({
|
161
|
-
optionId: getOptionId(menuOptions.length - 1),
|
162
|
-
});
|
163
|
-
break;
|
164
|
-
case " ":
|
165
|
-
this.keyboardNav = false;
|
166
|
-
if (this.isSearchBar || this.isSearchableSelect) {
|
288
|
+
if (event.shiftKey && event.ctrlKey) {
|
289
|
+
this.handleMultipleShiftSelect(endOptionIndex);
|
290
|
+
}
|
291
|
+
this.lastOptionFocused = endOptionIndex;
|
292
|
+
this.lastOptionSelected = endOptionIndex;
|
167
293
|
break;
|
168
294
|
}
|
169
|
-
|
170
|
-
if (
|
171
|
-
this.
|
295
|
+
case " ":
|
296
|
+
if (!isKeyboardCombination) {
|
297
|
+
this.keyboardNav = false;
|
172
298
|
}
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
299
|
+
if (this.isSearchBar || this.isSearchableSelect) {
|
300
|
+
break;
|
301
|
+
}
|
302
|
+
else {
|
303
|
+
if (event.target.id !== this.CLEAR_BUTTON_ID) {
|
304
|
+
this.handleMenuChange(true);
|
305
|
+
}
|
306
|
+
}
|
307
|
+
break;
|
308
|
+
case "Enter":
|
309
|
+
event.preventDefault();
|
310
|
+
if (!isKeyboardCombination) {
|
311
|
+
this.keyboardNav = false;
|
312
|
+
}
|
313
|
+
this.handleOptionSelect(event, highlightedOptionIndex);
|
314
|
+
break;
|
315
|
+
case "Escape":
|
316
|
+
if (this.open) {
|
317
|
+
event.stopImmediatePropagation();
|
318
|
+
}
|
319
|
+
this.handleMenuChange(false);
|
320
|
+
this.menuOptionId.emit({ optionId: undefined });
|
321
|
+
break;
|
322
|
+
case "a":
|
323
|
+
// Checks if Cmd (meta) key is pressed if Mac device (while excluding meta key on Windows)
|
324
|
+
// Otherwise, if a different OS, checks Ctrl key
|
325
|
+
if ((isMacDevice() && event.metaKey) ||
|
326
|
+
(!isMacDevice() && event.ctrlKey)) {
|
327
|
+
this.emitSelectAllEvents();
|
328
|
+
this.lastOptionFocused = null;
|
329
|
+
this.lastOptionSelected = null;
|
330
|
+
}
|
331
|
+
break;
|
332
|
+
case "Shift":
|
333
|
+
case "Tab":
|
334
|
+
if (event.key === "Shift") {
|
335
|
+
this.shiftPressed = true;
|
336
|
+
}
|
337
|
+
if (this.isSearchBar) {
|
338
|
+
this.keyboardNav = true;
|
339
|
+
}
|
340
|
+
if (this.isMultiSelect) {
|
341
|
+
if (this.open && !event.shiftKey && this.selectAllButton) {
|
342
|
+
event.preventDefault();
|
343
|
+
this.selectAllButton.focus(); // Move focus to select all button instead of focused option
|
344
|
+
this.preventMenuFocus = true;
|
345
|
+
this.preventClickOpen = true;
|
346
|
+
this.optionHighlighted = undefined; // Stop any option focus states showing when focus moved to select all button
|
190
347
|
}
|
191
348
|
}
|
192
349
|
else {
|
193
|
-
this.
|
350
|
+
this.preventIncorrectTabOrder = true;
|
194
351
|
}
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
event.stopImmediatePropagation();
|
203
|
-
}
|
204
|
-
this.handleMenuChange(false);
|
205
|
-
this.menuOptionId.emit({ optionId: undefined });
|
206
|
-
break;
|
207
|
-
case "Shift":
|
208
|
-
case "Tab":
|
209
|
-
if (this.isSearchBar) {
|
210
|
-
this.keyboardNav = true;
|
211
|
-
}
|
212
|
-
this.preventIncorrectTabOrder = true;
|
213
|
-
break;
|
214
|
-
default:
|
215
|
-
this.keyboardNav = false;
|
216
|
-
this.focusOnSearchOrSelectInput(menuOptions, highlightedOptionIndex);
|
217
|
-
break;
|
352
|
+
break;
|
353
|
+
default:
|
354
|
+
if (!isKeyboardCombination) {
|
355
|
+
this.keyboardNav = false;
|
356
|
+
}
|
357
|
+
this.focusOnSearchOrSelectInput(menuOptions, highlightedOptionIndex);
|
358
|
+
}
|
218
359
|
}
|
219
360
|
};
|
220
361
|
this.setInputValue = (highlightedOptionIndex) => {
|
221
|
-
const menuOptions = this.
|
362
|
+
const menuOptions = this.getMenuOptions();
|
222
363
|
if (menuOptions[highlightedOptionIndex] !== undefined) {
|
223
364
|
this.menuOptionSelect.emit({
|
224
365
|
value: menuOptions[highlightedOptionIndex][this.valueField],
|
225
366
|
});
|
226
|
-
this.
|
227
|
-
|
367
|
+
if (this.closeOnSelect) {
|
368
|
+
this.optionHighlighted = undefined;
|
369
|
+
this.menuOptionId.emit({ optionId: undefined });
|
370
|
+
}
|
371
|
+
}
|
372
|
+
if (this.closeOnSelect) {
|
373
|
+
if (!this.hasTimedOut) {
|
374
|
+
this.handleMenuChange(false);
|
375
|
+
}
|
376
|
+
else {
|
377
|
+
this.parentEl.setFocus();
|
378
|
+
}
|
228
379
|
}
|
229
|
-
if (!this.hasTimedOut)
|
230
|
-
this.handleMenuChange(false);
|
231
|
-
else
|
232
|
-
this.parentEl.setFocus();
|
233
380
|
};
|
234
381
|
this.handleOptionClick = (event) => {
|
235
382
|
const { value, label } = event.target.dataset;
|
236
|
-
this.
|
237
|
-
|
383
|
+
if (this.isMultiSelect) {
|
384
|
+
const menuOptions = this.getMenuOptions();
|
385
|
+
const selectedOptionIndex = menuOptions.findIndex((option) => option.value === value);
|
386
|
+
this.handleOptionSelect(event, selectedOptionIndex, true);
|
387
|
+
this.multiOptionClicked = value;
|
388
|
+
}
|
389
|
+
else {
|
390
|
+
this.menuOptionSelect.emit({ value, label });
|
391
|
+
this.handleMenuChange(false);
|
392
|
+
}
|
393
|
+
this.optionHighlighted = undefined;
|
238
394
|
};
|
239
395
|
this.handleRetry = () => {
|
240
396
|
this.retryButtonClicked.emit({ value: this.value });
|
@@ -247,13 +403,23 @@ export class Menu {
|
|
247
403
|
};
|
248
404
|
this.handleBlur = (event) => {
|
249
405
|
if (event.relatedTarget !== this.inputEl) {
|
250
|
-
if (
|
406
|
+
if (event.relatedTarget === this.selectAllButton) {
|
407
|
+
this.menu.removeAttribute(this.ACTIVE_DESCENDANT);
|
408
|
+
}
|
409
|
+
if (!(this.menu.contains(event.relatedTarget) ||
|
410
|
+
event.relatedTarget === this.selectAllButton)) {
|
251
411
|
this.handleMenuChange(false, this.hasPreviouslyBlurred);
|
412
|
+
this.menu.removeAttribute(this.ACTIVE_DESCENDANT);
|
413
|
+
this.lastOptionFocused = null;
|
414
|
+
this.lastOptionSelected = null;
|
252
415
|
}
|
253
416
|
}
|
254
417
|
else {
|
255
418
|
this.handleMenuChange(false);
|
256
419
|
this.preventClickOpen = true;
|
420
|
+
this.menu.removeAttribute(this.ACTIVE_DESCENDANT);
|
421
|
+
this.lastOptionFocused = null;
|
422
|
+
this.lastOptionSelected = null;
|
257
423
|
}
|
258
424
|
if (!this.isSearchBar)
|
259
425
|
this.hasPreviouslyBlurred = !!event.relatedTarget;
|
@@ -266,12 +432,113 @@ export class Menu {
|
|
266
432
|
this.autoSetValueOnMenuKeyDown(event);
|
267
433
|
}
|
268
434
|
else if (this.activationType === "manual" && !this.isSearchBar) {
|
269
|
-
this.
|
435
|
+
this.manualSetInputValueKeyboardOpen(event);
|
436
|
+
}
|
437
|
+
};
|
438
|
+
this.handleMenuKeyUp = (event) => {
|
439
|
+
if (event.key === "Tab" && event.shiftKey) {
|
440
|
+
this.preventClickOpen = false;
|
441
|
+
}
|
442
|
+
if (event.key === "Enter" && this.disabledOptionSelected) {
|
443
|
+
this.disabledOptionSelected = false;
|
444
|
+
event.stopImmediatePropagation();
|
445
|
+
}
|
446
|
+
if (event.key === "Shift") {
|
447
|
+
this.shiftPressed = false;
|
448
|
+
}
|
449
|
+
};
|
450
|
+
this.handleSelectAllClick = () => {
|
451
|
+
this.keyboardNav = false;
|
452
|
+
this.menu.focus();
|
453
|
+
this.emitSelectAllEvents();
|
454
|
+
this.lastOptionFocused = null;
|
455
|
+
this.lastOptionSelected = null;
|
456
|
+
};
|
457
|
+
this.handleSelectAllBlur = (event) => {
|
458
|
+
this.host.classList.remove("ic-select-select-all-focused");
|
459
|
+
if (!this.menu.contains(event.relatedTarget)) {
|
460
|
+
this.handleMenuChange(false, false);
|
461
|
+
}
|
462
|
+
};
|
463
|
+
this.handleSelectAllFocus = () => {
|
464
|
+
this.host.classList.add("ic-select-select-all-focused");
|
465
|
+
this.lastOptionFocused = null;
|
466
|
+
this.lastOptionSelected = null;
|
467
|
+
};
|
468
|
+
// Fix for Safari - select all button click was causing menu to close
|
469
|
+
this.handleSelectAllMouseDown = (event) => {
|
470
|
+
event.preventDefault();
|
471
|
+
};
|
472
|
+
// When shift key is being used to select contiguous options one by one on a multi-select
|
473
|
+
// I.e. holding shift and pressing up and down arrow keys
|
474
|
+
this.handleSingleShiftSelect = (event, optionToSelectIndex, options) => {
|
475
|
+
if (this.isMultiSelect &&
|
476
|
+
event.shiftKey &&
|
477
|
+
!this.isOptionSelected(optionToSelectIndex)) {
|
478
|
+
this.selectHighlightedOption(options, optionToSelectIndex);
|
479
|
+
this.lastOptionSelected = optionToSelectIndex;
|
480
|
+
}
|
481
|
+
};
|
482
|
+
// When shift key is being used to select multiple options at once on a multi-select
|
483
|
+
// I.e. holding shift when selecting another option
|
484
|
+
this.handleMultipleShiftSelect = (lastOptionInSelection, useFocusForSelection = false, firstOptionSelected = null) => {
|
485
|
+
this.shiftPressed = false;
|
486
|
+
const firstOptionInSelection = firstOptionSelected === null
|
487
|
+
? this.getFirstOptionInSelection(useFocusForSelection)
|
488
|
+
: firstOptionSelected;
|
489
|
+
if (firstOptionInSelection !== null) {
|
490
|
+
const optionsToSelect = [];
|
491
|
+
if (firstOptionInSelection < lastOptionInSelection) {
|
492
|
+
for (let i = firstOptionInSelection; i < lastOptionInSelection + 1; i++) {
|
493
|
+
optionsToSelect.push(i);
|
494
|
+
}
|
495
|
+
}
|
496
|
+
else {
|
497
|
+
for (let i = firstOptionInSelection; i > lastOptionInSelection - 1; i--) {
|
498
|
+
optionsToSelect.push(i);
|
499
|
+
}
|
500
|
+
}
|
501
|
+
optionsToSelect.forEach((optionIndex) => !this.isOptionSelected(optionIndex) && this.setInputValue(optionIndex));
|
502
|
+
this.deselectSelectedOptions(optionsToSelect);
|
503
|
+
}
|
504
|
+
};
|
505
|
+
this.handleOptionSelect = (event, optionIndex, useFocusForSelection = false) => {
|
506
|
+
const menuOptions = this.getMenuOptions();
|
507
|
+
const firstOptionInSelection = this.getFirstOptionInSelection(useFocusForSelection);
|
508
|
+
if (event.shiftKey && firstOptionInSelection !== null) {
|
509
|
+
this.handleMultipleShiftSelect(optionIndex, useFocusForSelection, firstOptionInSelection);
|
510
|
+
}
|
511
|
+
else {
|
512
|
+
this.selectHighlightedOption(menuOptions, optionIndex);
|
513
|
+
}
|
514
|
+
this.lastOptionFocused = optionIndex;
|
515
|
+
this.lastOptionSelected = optionIndex;
|
516
|
+
};
|
517
|
+
this.getFirstOptionInSelection = (useFocusForSelection) => {
|
518
|
+
return useFocusForSelection && this.lastOptionFocused !== null
|
519
|
+
? this.lastOptionFocused
|
520
|
+
: this.lastOptionSelected !== null
|
521
|
+
? this.lastOptionSelected
|
522
|
+
: null;
|
523
|
+
};
|
524
|
+
this.emitSelectAllEvents = () => {
|
525
|
+
var _a, _b;
|
526
|
+
// Select all if there is either no value or not all options are selected
|
527
|
+
// 'true' means select all, 'false' means clear all
|
528
|
+
this.menuOptionSelectAll.emit({
|
529
|
+
select: !this.value || !(((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) === this.ungroupedOptions.length),
|
530
|
+
});
|
531
|
+
// Emit clear event if all options are selected
|
532
|
+
if (((_b = this.value) === null || _b === void 0 ? void 0 : _b.length) === this.ungroupedOptions.length) {
|
533
|
+
this.icClear.emit();
|
270
534
|
}
|
271
535
|
};
|
272
536
|
this.emitMenuKeyPress = (isNavKey, key) => {
|
273
537
|
this.menuKeyPress.emit({ isNavKey: isNavKey, key: key });
|
274
538
|
};
|
539
|
+
// Determines keyboard behaviour when selection is automatic
|
540
|
+
// (i.e. you don't have to press Enter select an option - just focus on it)
|
541
|
+
// and menu is focused
|
275
542
|
this.autoSetValueOnMenuKeyDown = (event) => {
|
276
543
|
event.cancelBubble = true;
|
277
544
|
const selectedOptionIndex = this.ungroupedOptions.findIndex((option) => option[this.valueField] === this.value);
|
@@ -331,15 +598,6 @@ export class Menu {
|
|
331
598
|
}
|
332
599
|
this.emitMenuKeyPress(this.keyboardNav, event.key);
|
333
600
|
};
|
334
|
-
this.handleMenuKeyUp = (event) => {
|
335
|
-
if (event.key === "Tab" && event.shiftKey) {
|
336
|
-
this.preventClickOpen = false;
|
337
|
-
}
|
338
|
-
if (event.key === "Enter" && this.disabledOptionSelected) {
|
339
|
-
this.disabledOptionSelected = false;
|
340
|
-
event.stopImmediatePropagation();
|
341
|
-
}
|
342
|
-
};
|
343
601
|
this.getOptionId = (value) => {
|
344
602
|
return `${this.menuId}-${value}`;
|
345
603
|
};
|
@@ -365,6 +623,10 @@ export class Menu {
|
|
365
623
|
}
|
366
624
|
return sorted;
|
367
625
|
};
|
626
|
+
this.getOptionHighlightedIndex = () => {
|
627
|
+
const menuOptions = this.getMenuOptions();
|
628
|
+
return menuOptions.findIndex((option) => option[this.valueField] === this.optionHighlighted);
|
629
|
+
};
|
368
630
|
this.isManualMode = this.activationType === "manual";
|
369
631
|
this.scrollToSelected = (menu) => {
|
370
632
|
const selectedOption = this.selectOnEnter
|
@@ -376,9 +638,14 @@ export class Menu {
|
|
376
638
|
elTop < menu.scrollTop + menu.offsetHeight) {
|
377
639
|
menu.scrollTop = selectedOption.offsetTop;
|
378
640
|
}
|
641
|
+
// 'aria-activedescendant' affects screen reader focus
|
642
|
+
// https://www.w3.org/TR/2017/WD-wai-aria-practices-1.1-20170628/#kbd_focus_activedescendant
|
643
|
+
this.menu.setAttribute(this.ACTIVE_DESCENDANT, selectedOption.id);
|
379
644
|
selectedOption.focus();
|
380
645
|
}
|
381
646
|
};
|
647
|
+
// Set 'ungroupedOptions' variable and emit its value
|
648
|
+
// - this is all the options with disabled options and group titles removed
|
382
649
|
this.loadUngroupedOptions = () => {
|
383
650
|
if (this.options.length > 0 && this.options.map) {
|
384
651
|
this.options.map((option) => {
|
@@ -405,21 +672,24 @@ export class Menu {
|
|
405
672
|
this.handleTimeoutBlur = (ev) => {
|
406
673
|
this.timeoutBlur.emit({ ev });
|
407
674
|
};
|
408
|
-
this.optionContent = (option) => {
|
409
|
-
|
410
|
-
return (h(Fragment, null, option.loading && h("ic-loading-indicator", { size: "icon" }), h("div", { class: "option-text-container" }, h("div", { class: "option-label" }, option.icon && (h("div", { class: "option-icon", innerHTML: option.icon, "aria-hidden": "true" })), h("ic-typography", { variant: "body", "aria-hidden": "true" }, option[this.labelField])), option.description && (h("ic-typography", { id: `${this.getOptionId(option[this.valueField])}-description`, class: "option-description", variant: "caption", "aria-hidden": "true" }, h("p", null, option.description))), option.element && (h("div", { class: "option-element", innerHTML: option.element.component, "aria-hidden": "true" }))), !!option[this.valueField] &&
|
675
|
+
this.optionContent = (option, selected) => {
|
676
|
+
const showCheckIcon = !!option[this.valueField] &&
|
411
677
|
!!this.value &&
|
412
|
-
|
413
|
-
this.parentEl.tagName !==
|
678
|
+
selected &&
|
679
|
+
this.parentEl.tagName !== this.SEARCH_BAR_TAG;
|
680
|
+
return (h(Fragment, null, option.loading && h("ic-loading-indicator", { size: "icon" }), h("div", { class: {
|
681
|
+
"option-text-container": true,
|
682
|
+
"show-check-icon": showCheckIcon,
|
683
|
+
} }, h("div", { class: "option-label" }, option.icon && (h("div", { class: "option-icon", innerHTML: option.icon, "aria-hidden": "true" })), h("ic-typography", { variant: "body", "aria-hidden": "true" }, option[this.labelField])), option.description && (h("ic-typography", { id: `${this.getOptionId(option[this.valueField])}-description`, class: "option-description", variant: "caption", "aria-hidden": "true" }, h("p", null, option.description))), option.element && (h("div", { class: "option-element", innerHTML: option.element.component, "aria-hidden": "true" }))), showCheckIcon && h("span", { class: "check-icon", innerHTML: Check })));
|
414
684
|
};
|
415
|
-
this.displayOption = (option, index, parentOption) => {
|
416
|
-
const { open,
|
685
|
+
this.displayOption = (option, selected, index, parentOption) => {
|
686
|
+
const { open, keyboardNav, isManualMode, initialOptionsListRender, optionHighlighted, options, } = this;
|
417
687
|
return (h("li", { id: this.getOptionId(option[this.valueField]), class: {
|
418
688
|
option: true,
|
419
689
|
"focused-option": isManualMode
|
420
690
|
? (keyboardNav || initialOptionsListRender) &&
|
421
691
|
option[this.valueField] === optionHighlighted
|
422
|
-
: keyboardNav &&
|
692
|
+
: keyboardNav && selected,
|
423
693
|
"last-recommended-option": option.recommended &&
|
424
694
|
options[index + 1] &&
|
425
695
|
!options[index + 1].recommended,
|
@@ -427,20 +697,21 @@ export class Menu {
|
|
427
697
|
"loading-option": option.loading,
|
428
698
|
timeout: option.timedOut,
|
429
699
|
}, role: "option", tabindex: open &&
|
430
|
-
(option[this.valueField] ===
|
431
|
-
option[this.valueField] === optionHighlighted) &&
|
700
|
+
(selected || option[this.valueField] === optionHighlighted) &&
|
432
701
|
keyboardNav
|
433
702
|
? "0"
|
434
|
-
: "-1", "aria-label": this.getOptionAriaLabel(option, parentOption), "aria-selected":
|
703
|
+
: "-1", "aria-label": this.getOptionAriaLabel(option, parentOption), "aria-selected": selected ? "true" : "false", "aria-disabled": option.disabled ? "true" : "false", onClick: !option.timedOut && !option.loading && this.handleOptionClick, onBlur: this.handleBlur, onMouseDown: this.handleMouseDown, "data-value": option[this.valueField], "data-label": option[this.labelField] }, option.timedOut ? (h(Fragment, null, h("div", { class: "loading-error-info" }, h("svg", { class: "error-icon-svg", "aria-labelledby": "error-title", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "#000000" }, h("title", { id: "error-title" }, "Error"), h("g", { id: "close-octagon" }, h("path", { id: "Vector", d: "M8.77 3L3.5 8.27V15.73L8.77 21H16.23L21.5 15.73V8.27L16.23 3M8.91 7L12.5 10.59L16.09 7L17.5 8.41L13.91 12L17.5 15.59L16.09 17L12.5 13.41L8.91 17L7.5 15.59L11.09 12L7.5 8.41" }))), h("ic-typography", { variant: "label" }, option[this.labelField])), h("ic-button", { size: "small", variant: "tertiary", onClick: this.handleRetry, onKeyDown: this.handleRetryKeyDown, onBlur: this.handleTimeoutBlur, id: "retry-button" }, "Retry"))) : (this.optionContent(option, selected))));
|
435
704
|
};
|
436
705
|
this.focusFromSearchKeypress = false;
|
437
706
|
this.initialOptionsListRender = false;
|
438
707
|
this.keyboardNav = false;
|
439
708
|
this.optionHighlighted = undefined;
|
440
709
|
this.preventIncorrectTabOrder = false;
|
710
|
+
this.menuOptions = undefined;
|
441
711
|
this.activationType = "automatic";
|
442
712
|
this.anchorEl = undefined;
|
443
|
-
this.
|
713
|
+
this.autofocusOnSelected = true;
|
714
|
+
this.closeOnSelect = true;
|
444
715
|
this.fullWidth = false;
|
445
716
|
this.inputEl = undefined;
|
446
717
|
this.inputLabel = undefined;
|
@@ -450,8 +721,7 @@ export class Menu {
|
|
450
721
|
this.parentEl = undefined;
|
451
722
|
this.searchMode = "navigation";
|
452
723
|
this.selectOnEnter = false;
|
453
|
-
this.size = "
|
454
|
-
this.small = false;
|
724
|
+
this.size = "medium";
|
455
725
|
this.options = undefined;
|
456
726
|
this.value = undefined;
|
457
727
|
this.valueField = "value";
|
@@ -468,9 +738,6 @@ export class Menu {
|
|
468
738
|
this.ungroupedOptions = [];
|
469
739
|
this.loadUngroupedOptions();
|
470
740
|
}
|
471
|
-
watchValueHandler() {
|
472
|
-
this.menuValueChange.emit({ value: this.value });
|
473
|
-
}
|
474
741
|
connectedCallback() {
|
475
742
|
this.getParentEl(this.parentEl);
|
476
743
|
if (this.isSearchBar) {
|
@@ -497,7 +764,7 @@ export class Menu {
|
|
497
764
|
}
|
498
765
|
componentDidLoad() {
|
499
766
|
if (this.isSearchBar &&
|
500
|
-
this.parentEl.
|
767
|
+
this.parentEl.disableAutoFiltering) {
|
501
768
|
this.focusFromSearchKeypress = true;
|
502
769
|
}
|
503
770
|
onComponentRequiredPropUndefined([
|
@@ -510,16 +777,15 @@ export class Menu {
|
|
510
777
|
}
|
511
778
|
componentDidUpdate() {
|
512
779
|
const inputValueInOptions = this.options.some((option) => option[this.valueField] === this.value);
|
513
|
-
if (this.open && this.options.length !== 0) {
|
780
|
+
if (this.open && this.options.length !== 0 && !this.preventMenuFocus) {
|
514
781
|
if (this.value &&
|
515
782
|
this.keyboardNav &&
|
516
783
|
inputValueInOptions &&
|
517
|
-
this.
|
784
|
+
this.autofocusOnSelected &&
|
518
785
|
!this.isSearchableSelect) {
|
519
786
|
this.scrollToSelected(this.menu);
|
520
787
|
}
|
521
|
-
else if (this.
|
522
|
-
this.inputEl.tagName !== "INPUT") {
|
788
|
+
else if (this.selectOnEnter) {
|
523
789
|
this.menu.focus();
|
524
790
|
}
|
525
791
|
else if (!!this.optionHighlighted &&
|
@@ -527,13 +793,18 @@ export class Menu {
|
|
527
793
|
!this.preventIncorrectTabOrder) {
|
528
794
|
const highlightedEl = this.host.querySelector(`li[data-value="${this.optionHighlighted}"]`);
|
529
795
|
if (highlightedEl) {
|
796
|
+
this.menu.setAttribute(this.ACTIVE_DESCENDANT, highlightedEl.id);
|
530
797
|
highlightedEl.focus();
|
531
798
|
}
|
532
799
|
}
|
800
|
+
else if (this.inputEl.tagName !== "INPUT") {
|
801
|
+
this.menu.focus();
|
802
|
+
}
|
533
803
|
}
|
534
804
|
if (this.open && !this.value && this.selectOnEnter) {
|
535
805
|
this.scrollToSelected(this.menu);
|
536
806
|
}
|
807
|
+
this.preventMenuFocus = false;
|
537
808
|
}
|
538
809
|
componentDidRender() {
|
539
810
|
if (this.open && !this.popperInstance && this.anchorEl) {
|
@@ -563,7 +834,7 @@ export class Menu {
|
|
563
834
|
this.autoSetInputValueKeyboardOpen(event);
|
564
835
|
}
|
565
836
|
else {
|
566
|
-
this.
|
837
|
+
this.manualSetInputValueKeyboardOpen(event);
|
567
838
|
}
|
568
839
|
}
|
569
840
|
/**
|
@@ -578,8 +849,9 @@ export class Menu {
|
|
578
849
|
* boundary behaviour so sticking with PopperJS.
|
579
850
|
*/
|
580
851
|
async initPopperJs(anchor) {
|
852
|
+
// Placements set to "-start" to accommodate for custom menu width - menu should always be aligned to the left
|
581
853
|
this.popperInstance = createPopper(anchor, this.host, {
|
582
|
-
placement: "bottom",
|
854
|
+
placement: "bottom-start",
|
583
855
|
modifiers: [
|
584
856
|
{
|
585
857
|
name: "offset",
|
@@ -590,7 +862,7 @@ export class Menu {
|
|
590
862
|
{
|
591
863
|
name: "flip",
|
592
864
|
options: {
|
593
|
-
fallbackPlacements: ["top"],
|
865
|
+
fallbackPlacements: ["top-start"],
|
594
866
|
rootBoundary: "viewport",
|
595
867
|
},
|
596
868
|
},
|
@@ -611,26 +883,47 @@ export class Menu {
|
|
611
883
|
this.focusFromSearchKeypress = true;
|
612
884
|
}
|
613
885
|
render() {
|
614
|
-
const { inputLabel, options, menuId, value, fullWidth, hasTimedOut, isLoading, size,
|
886
|
+
const { inputLabel, options, menuId, value, fullWidth, hasTimedOut, isLoading, size, open, inputEl, keyboardNav, parentEl, SEARCH_BAR_TAG, } = this;
|
887
|
+
const selectAllButtonText = `${(value === null || value === void 0 ? void 0 : value.length) === this.ungroupedOptions.length ? "Clear" : "Select"} all`;
|
888
|
+
const hasNoResults = this.host.classList.contains("no-results");
|
615
889
|
return (h(Host, { class: {
|
616
|
-
"full-width": fullWidth,
|
617
|
-
"no-focus": (inputEl === null || inputEl === void 0 ? void 0 : inputEl.tagName) === "INPUT"
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
890
|
+
"ic-menu-full-width": fullWidth,
|
891
|
+
"ic-menu-no-focus": ((inputEl === null || inputEl === void 0 ? void 0 : inputEl.tagName) === "INPUT" &&
|
892
|
+
(parentEl === null || parentEl === void 0 ? void 0 : parentEl.tagName) !== SEARCH_BAR_TAG) ||
|
893
|
+
hasTimedOut ||
|
894
|
+
isLoading,
|
895
|
+
[`ic-menu-${size}`]: true,
|
896
|
+
"ic-menu-open": open && options.length !== 0,
|
897
|
+
"ic-menu-multiple": this.isMultiSelect,
|
898
|
+
} }, options.length !== 0 && (h("ul", { id: menuId, class: "menu", role: "listbox", "aria-label": `${inputLabel} pop-up`, "aria-multiselectable": this.isMultiSelect ? "true" : "false", tabindex: open &&
|
899
|
+
!keyboardNav &&
|
900
|
+
((inputEl === null || inputEl === void 0 ? void 0 : inputEl.tagName) !== "INPUT" ||
|
901
|
+
(parentEl === null || parentEl === void 0 ? void 0 : parentEl.tagName) === SEARCH_BAR_TAG)
|
902
|
+
? "0"
|
903
|
+
: "-1", ref: (el) => (this.menu = el), onKeyDown: this.handleMenuKeyDown, onKeyUp: this.handleMenuKeyUp, onBlur: this.handleBlur }, this.getSortedOptions(options).map((option, index) => {
|
622
904
|
if (option.children) {
|
623
905
|
if (option.children.length > 0) {
|
624
|
-
return (h("div", null, h("ic-typography", { class: "option-group-title", role: "presentation", variant: "subtitle-small" }, h("p", null, option[this.labelField])), option.children.map((childOption) =>
|
906
|
+
return (h("div", null, h("ic-typography", { class: "option-group-title", role: "presentation", variant: "subtitle-small" }, h("p", null, option[this.labelField])), option.children.map((childOption) => childOption.label &&
|
907
|
+
this.displayOption(childOption, this.isMultiSelect
|
908
|
+
? value === null || value === void 0 ? void 0 : value.includes(childOption[this.valueField])
|
909
|
+
: childOption[this.valueField] === value, index, option))));
|
625
910
|
}
|
626
911
|
else {
|
627
912
|
return null;
|
628
913
|
}
|
629
914
|
}
|
630
915
|
else {
|
631
|
-
|
916
|
+
// Display option only if it has a label (rather than displaying an empty space)
|
917
|
+
return (option.label &&
|
918
|
+
this.displayOption(option, this.isMultiSelect
|
919
|
+
? value === null || value === void 0 ? void 0 : value.includes(option[this.valueField])
|
920
|
+
: option[this.valueField] === value, index));
|
632
921
|
}
|
633
|
-
})))
|
922
|
+
}))), options.length !== 0 &&
|
923
|
+
this.isMultiSelect &&
|
924
|
+
!isLoading &&
|
925
|
+
!hasTimedOut &&
|
926
|
+
!hasNoResults && (h("div", { class: "option-bar" }, h("ic-typography", null, h("p", null, `${value ? value.length : 0}/${getOptionsWithoutGroupTitlesCount(this.options)} selected`)), h("ic-button", { class: "select-all-button", "aria-label": `${selectAllButtonText} options for ${inputLabel}`, ref: (el) => (this.selectAllButton = el), variant: "tertiary", onClick: this.handleSelectAllClick, onMouseDown: this.handleSelectAllMouseDown, onBlur: this.handleSelectAllBlur, onFocus: this.handleSelectAllFocus, size: size === "small" ? "small" : "medium" }, selectAllButtonText)))));
|
634
927
|
}
|
635
928
|
static get is() { return "ic-menu"; }
|
636
929
|
static get encapsulation() { return "scoped"; }
|
@@ -690,7 +983,7 @@ export class Menu {
|
|
690
983
|
"text": "The reference to an anchor element the menu will position itself from when rendered."
|
691
984
|
}
|
692
985
|
},
|
693
|
-
"
|
986
|
+
"autofocusOnSelected": {
|
694
987
|
"type": "boolean",
|
695
988
|
"mutable": false,
|
696
989
|
"complexType": {
|
@@ -707,7 +1000,25 @@ export class Menu {
|
|
707
1000
|
}],
|
708
1001
|
"text": ""
|
709
1002
|
},
|
710
|
-
"attribute": "
|
1003
|
+
"attribute": "autofocus-on-selected",
|
1004
|
+
"reflect": false,
|
1005
|
+
"defaultValue": "true"
|
1006
|
+
},
|
1007
|
+
"closeOnSelect": {
|
1008
|
+
"type": "boolean",
|
1009
|
+
"mutable": false,
|
1010
|
+
"complexType": {
|
1011
|
+
"original": "boolean",
|
1012
|
+
"resolved": "boolean",
|
1013
|
+
"references": {}
|
1014
|
+
},
|
1015
|
+
"required": false,
|
1016
|
+
"optional": false,
|
1017
|
+
"docs": {
|
1018
|
+
"tags": [],
|
1019
|
+
"text": "If `true`, the menu will close when an option is selected."
|
1020
|
+
},
|
1021
|
+
"attribute": "close-on-select",
|
711
1022
|
"reflect": false,
|
712
1023
|
"defaultValue": "true"
|
713
1024
|
},
|
@@ -891,7 +1202,7 @@ export class Menu {
|
|
891
1202
|
"mutable": false,
|
892
1203
|
"complexType": {
|
893
1204
|
"original": "IcSizes",
|
894
|
-
"resolved": "\"
|
1205
|
+
"resolved": "\"large\" | \"medium\" | \"small\"",
|
895
1206
|
"references": {
|
896
1207
|
"IcSizes": {
|
897
1208
|
"location": "import",
|
@@ -904,32 +1215,11 @@ export class Menu {
|
|
904
1215
|
"optional": true,
|
905
1216
|
"docs": {
|
906
1217
|
"tags": [],
|
907
|
-
"text": "The size of the menu
|
1218
|
+
"text": "The size of the menu."
|
908
1219
|
},
|
909
1220
|
"attribute": "size",
|
910
1221
|
"reflect": false,
|
911
|
-
"defaultValue": "\"
|
912
|
-
},
|
913
|
-
"small": {
|
914
|
-
"type": "boolean",
|
915
|
-
"mutable": false,
|
916
|
-
"complexType": {
|
917
|
-
"original": "boolean",
|
918
|
-
"resolved": "boolean",
|
919
|
-
"references": {}
|
920
|
-
},
|
921
|
-
"required": false,
|
922
|
-
"optional": true,
|
923
|
-
"docs": {
|
924
|
-
"tags": [{
|
925
|
-
"name": "deprecated",
|
926
|
-
"text": "This prop should not be used anymore. Set prop `size` to \"small\" instead."
|
927
|
-
}],
|
928
|
-
"text": ""
|
929
|
-
},
|
930
|
-
"attribute": "small",
|
931
|
-
"reflect": false,
|
932
|
-
"defaultValue": "false"
|
1222
|
+
"defaultValue": "\"medium\""
|
933
1223
|
},
|
934
1224
|
"options": {
|
935
1225
|
"type": "unknown",
|
@@ -954,17 +1244,17 @@ export class Menu {
|
|
954
1244
|
},
|
955
1245
|
"value": {
|
956
1246
|
"type": "string",
|
957
|
-
"mutable":
|
1247
|
+
"mutable": false,
|
958
1248
|
"complexType": {
|
959
|
-
"original": "string",
|
960
|
-
"resolved": "string",
|
1249
|
+
"original": "string | string[]",
|
1250
|
+
"resolved": "string | string[]",
|
961
1251
|
"references": {}
|
962
1252
|
},
|
963
1253
|
"required": true,
|
964
1254
|
"optional": false,
|
965
1255
|
"docs": {
|
966
1256
|
"tags": [],
|
967
|
-
"text": "The value of the currently selected option."
|
1257
|
+
"text": "The value of the currently selected option - or array of values (if multiple options allowed)."
|
968
1258
|
},
|
969
1259
|
"attribute": "value",
|
970
1260
|
"reflect": false
|
@@ -995,11 +1285,27 @@ export class Menu {
|
|
995
1285
|
"initialOptionsListRender": {},
|
996
1286
|
"keyboardNav": {},
|
997
1287
|
"optionHighlighted": {},
|
998
|
-
"preventIncorrectTabOrder": {}
|
1288
|
+
"preventIncorrectTabOrder": {},
|
1289
|
+
"menuOptions": {}
|
999
1290
|
};
|
1000
1291
|
}
|
1001
1292
|
static get events() {
|
1002
1293
|
return [{
|
1294
|
+
"method": "icClear",
|
1295
|
+
"name": "icClear",
|
1296
|
+
"bubbles": true,
|
1297
|
+
"cancelable": true,
|
1298
|
+
"composed": true,
|
1299
|
+
"docs": {
|
1300
|
+
"tags": [],
|
1301
|
+
"text": "Emitted when the clear all button is clicked."
|
1302
|
+
},
|
1303
|
+
"complexType": {
|
1304
|
+
"original": "void",
|
1305
|
+
"resolved": "void",
|
1306
|
+
"references": {}
|
1307
|
+
}
|
1308
|
+
}, {
|
1003
1309
|
"method": "menuKeyPress",
|
1004
1310
|
"name": "menuKeyPress",
|
1005
1311
|
"bubbles": true,
|
@@ -1008,7 +1314,7 @@ export class Menu {
|
|
1008
1314
|
"docs": {
|
1009
1315
|
"tags": [{
|
1010
1316
|
"name": "internal",
|
1011
|
-
"text": "Emitted when key is pressed while menu is open"
|
1317
|
+
"text": "Emitted when key is pressed while menu is open."
|
1012
1318
|
}],
|
1013
1319
|
"text": ""
|
1014
1320
|
},
|
@@ -1026,7 +1332,7 @@ export class Menu {
|
|
1026
1332
|
"docs": {
|
1027
1333
|
"tags": [{
|
1028
1334
|
"name": "internal",
|
1029
|
-
"text": "Emitted when an option has been highlighted"
|
1335
|
+
"text": "Emitted when an option has been highlighted."
|
1030
1336
|
}],
|
1031
1337
|
"text": ""
|
1032
1338
|
},
|
@@ -1066,50 +1372,44 @@ export class Menu {
|
|
1066
1372
|
}
|
1067
1373
|
}
|
1068
1374
|
}, {
|
1069
|
-
"method": "
|
1070
|
-
"name": "
|
1375
|
+
"method": "menuOptionSelectAll",
|
1376
|
+
"name": "menuOptionSelectAll",
|
1071
1377
|
"bubbles": true,
|
1072
1378
|
"cancelable": true,
|
1073
1379
|
"composed": true,
|
1074
1380
|
"docs": {
|
1075
1381
|
"tags": [{
|
1076
1382
|
"name": "internal",
|
1077
|
-
"text": "Emitted when
|
1383
|
+
"text": "Emitted when all options are selected or deselected."
|
1078
1384
|
}],
|
1079
1385
|
"text": ""
|
1080
1386
|
},
|
1081
1387
|
"complexType": {
|
1082
|
-
"original": "
|
1083
|
-
"resolved": "
|
1084
|
-
"references": {
|
1085
|
-
"IcMenuChangeEventDetail": {
|
1086
|
-
"location": "import",
|
1087
|
-
"path": "./ic-menu.types",
|
1088
|
-
"id": "src/components/ic-menu/ic-menu.types.ts::IcMenuChangeEventDetail"
|
1089
|
-
}
|
1090
|
-
}
|
1388
|
+
"original": "{ select: boolean }",
|
1389
|
+
"resolved": "{ select: boolean; }",
|
1390
|
+
"references": {}
|
1091
1391
|
}
|
1092
1392
|
}, {
|
1093
|
-
"method": "
|
1094
|
-
"name": "
|
1393
|
+
"method": "menuStateChange",
|
1394
|
+
"name": "menuStateChange",
|
1095
1395
|
"bubbles": true,
|
1096
1396
|
"cancelable": true,
|
1097
1397
|
"composed": true,
|
1098
1398
|
"docs": {
|
1099
1399
|
"tags": [{
|
1100
1400
|
"name": "internal",
|
1101
|
-
"text": "Emitted when menu
|
1401
|
+
"text": "Emitted when state of menu changes (i.e. open or closed)."
|
1102
1402
|
}],
|
1103
1403
|
"text": ""
|
1104
1404
|
},
|
1105
1405
|
"complexType": {
|
1106
|
-
"original": "
|
1107
|
-
"resolved": "
|
1406
|
+
"original": "IcMenuChangeEventDetail",
|
1407
|
+
"resolved": "IcMenuChangeEventDetail",
|
1108
1408
|
"references": {
|
1109
|
-
"
|
1409
|
+
"IcMenuChangeEventDetail": {
|
1110
1410
|
"location": "import",
|
1111
|
-
"path": "
|
1112
|
-
"id": "src/
|
1411
|
+
"path": "./ic-menu.types",
|
1412
|
+
"id": "src/components/ic-menu/ic-menu.types.ts::IcMenuChangeEventDetail"
|
1113
1413
|
}
|
1114
1414
|
}
|
1115
1415
|
}
|
@@ -1122,7 +1422,7 @@ export class Menu {
|
|
1122
1422
|
"docs": {
|
1123
1423
|
"tags": [{
|
1124
1424
|
"name": "internal",
|
1125
|
-
"text": "Emitted when the retry button is clicked"
|
1425
|
+
"text": "Emitted when the retry button is clicked."
|
1126
1426
|
}],
|
1127
1427
|
"text": ""
|
1128
1428
|
},
|
@@ -1146,7 +1446,7 @@ export class Menu {
|
|
1146
1446
|
"docs": {
|
1147
1447
|
"tags": [{
|
1148
1448
|
"name": "internal",
|
1149
|
-
"text": "Emitted when the timeout menu loses focus"
|
1449
|
+
"text": "Emitted when the timeout menu loses focus."
|
1150
1450
|
}],
|
1151
1451
|
"text": ""
|
1152
1452
|
},
|
@@ -1294,9 +1594,6 @@ export class Menu {
|
|
1294
1594
|
}, {
|
1295
1595
|
"propName": "options",
|
1296
1596
|
"methodName": "watchOptionsHandler"
|
1297
|
-
}, {
|
1298
|
-
"propName": "value",
|
1299
|
-
"methodName": "watchValueHandler"
|
1300
1597
|
}];
|
1301
1598
|
}
|
1302
1599
|
}
|