@ukic/web-components 2.19.0 → 2.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-88e018cf.js → helpers-466a551d.js} +59 -99
- package/dist/cjs/helpers-466a551d.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +3 -1
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +15 -9
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +55 -77
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +3 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +14 -14
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card.cjs.entry.js +1 -1
- package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +23 -16
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +33 -31
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +21 -31
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +4 -2
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +3 -2
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +2 -3
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +5 -5
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +4 -10
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +18 -9
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +21 -9
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +13 -18
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +12 -16
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +37 -37
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +10 -6
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +16 -35
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +2 -2
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +8 -8
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +13 -15
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +15 -24
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +1 -1
- 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.js +5 -1
- 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 +5 -5
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +7 -4
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +37 -7
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.types.js +2 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.types.js.map +1 -0
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +9 -0
- 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.js +64 -78
- package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +4 -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.js +2 -0
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.css +289 -11
- package/dist/collection/components/ic-button/ic-button.js +11 -11
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
- package/dist/collection/components/ic-card/ic-card.css +8 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +1 -1
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +31 -29
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +27 -15
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +12 -0
- 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 +5 -1
- package/dist/collection/components/ic-chip/ic-chip.js +20 -30
- package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
- package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +5 -5
- package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.css +11 -8
- package/dist/collection/components/ic-dialog/ic-dialog.js +4 -2
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
- package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +2 -2
- package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
- package/dist/collection/components/ic-footer/ic-footer.js +1 -1
- package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +1 -1
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
- package/dist/collection/components/ic-hero/ic-hero.js +4 -3
- package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
- package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +1 -1
- 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.js +1 -2
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +2 -2
- 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 +9 -9
- 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-container/test/basic/ic-input-container.spec.js +3 -3
- package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +1 -1
- package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +6 -6
- package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
- package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +5 -5
- 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 +1 -1
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +1 -1
- 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 +0 -1
- package/dist/collection/components/ic-menu/ic-menu.js +3 -3
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +41 -41
- package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.js +4 -10
- package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +5 -5
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +6 -0
- 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/test/basic/ic-navigation-menu.e2e.js +1 -1
- package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.e2e.js.map +1 -1
- package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +1 -1
- 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.js +26 -8
- package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +1 -1
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +44 -0
- 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 +5 -1
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +27 -44
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
- package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +76 -0
- package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +1 -0
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +12 -17
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +11 -15
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +17 -17
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +1 -1
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +37 -37
- package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +5 -5
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +1 -1
- package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +4 -4
- package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select.js +9 -5
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +11 -11
- 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.js +16 -43
- package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.js +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +1 -1
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +1 -1
- package/dist/collection/components/ic-switch/ic-switch.css +11 -3
- package/dist/collection/components/ic-tab/ic-tab.css +17 -5
- package/dist/collection/components/ic-text-field/ic-text-field.css +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.js +6 -6
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +0 -1
- 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 +15 -15
- 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 +21 -17
- package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
- package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +1 -1
- package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +21 -0
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +7 -7
- 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 +7 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +15 -24
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
- package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +14 -14
- 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 +11 -2
- package/dist/collection/utils/helpers.js +58 -102
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/components/helpers.js +57 -97
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-accordion-group.js +2 -1
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-back-to-top.js +22 -9
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +59 -77
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +2 -0
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-button2.js +11 -11
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +26 -16
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +33 -31
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +21 -31
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-dialog.js +4 -2
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-divider2.js +1 -1
- package/dist/components/ic-footer-link-group.js +2 -2
- package/dist/components/ic-footer-link-group.js.map +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer.js +2 -2
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +3 -2
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +2 -3
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +2 -2
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +1 -1
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +4 -10
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +3 -3
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +1 -1
- package/dist/components/ic-navigation-group.js +1 -1
- package/dist/components/ic-navigation-item.js +2 -2
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +1 -1
- package/dist/components/ic-pagination-item2.js +22 -12
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination.js +23 -8
- package/dist/components/ic-pagination.js.map +1 -1
- package/dist/components/ic-popover-menu.js +13 -18
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +11 -15
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +37 -37
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-select.js +9 -5
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +1 -1
- package/dist/components/ic-skeleton.js +17 -40
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-switch.js +1 -1
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab.js +1 -1
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +7 -7
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +13 -15
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast.js +1 -1
- package/dist/components/ic-toggle-button.js +1 -1
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +1 -1
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +15 -24
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-typography2.js +1 -1
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/core.css +2 -2
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-063587c6.js +2 -0
- package/dist/core/p-063587c6.js.map +1 -0
- package/dist/core/{p-346578e4.entry.js → p-099efe2a.entry.js} +2 -2
- package/dist/core/p-0a6fbf35.entry.js +2 -0
- package/dist/core/p-0a6fbf35.entry.js.map +1 -0
- package/dist/core/{p-051583a5.entry.js → p-10dba909.entry.js} +2 -2
- package/dist/core/p-10dba909.entry.js.map +1 -0
- package/dist/core/p-14dd5b2b.entry.js +2 -0
- package/dist/core/p-14dd5b2b.entry.js.map +1 -0
- package/dist/core/{p-ba1c3cf7.entry.js → p-1624f4de.entry.js} +2 -2
- package/dist/core/{p-1b1270a1.entry.js → p-227a3f22.entry.js} +2 -2
- package/dist/core/p-227a3f22.entry.js.map +1 -0
- package/dist/core/{p-04cc2b25.entry.js → p-25606a38.entry.js} +2 -2
- package/dist/core/{p-328bc6a2.entry.js → p-25edb082.entry.js} +2 -2
- package/dist/core/p-25edb082.entry.js.map +1 -0
- package/dist/core/{p-4f3fe190.entry.js → p-2965644e.entry.js} +2 -2
- package/dist/core/{p-bceaf300.entry.js → p-34d719f8.entry.js} +2 -2
- package/dist/core/p-34d719f8.entry.js.map +1 -0
- package/dist/core/{p-3f53446c.entry.js → p-35856434.entry.js} +2 -2
- package/dist/core/{p-7b720034.entry.js → p-3eda4e14.entry.js} +2 -2
- package/dist/core/p-3eda4e14.entry.js.map +1 -0
- package/dist/core/{p-6f9dcfb5.entry.js → p-40c508c8.entry.js} +2 -2
- package/dist/core/{p-6f9dcfb5.entry.js.map → p-40c508c8.entry.js.map} +1 -1
- package/dist/core/p-426a5500.entry.js +2 -0
- package/dist/core/p-426a5500.entry.js.map +1 -0
- package/dist/core/p-4522e5c0.entry.js +2 -0
- package/dist/core/p-4522e5c0.entry.js.map +1 -0
- package/dist/core/{p-d7f4779d.entry.js → p-459355ef.entry.js} +2 -2
- package/dist/core/p-49cdaddc.entry.js +2 -0
- package/dist/core/p-49cdaddc.entry.js.map +1 -0
- package/dist/core/{p-f50a57f3.entry.js → p-4a0acd0f.entry.js} +2 -2
- package/dist/core/{p-f50a57f3.entry.js.map → p-4a0acd0f.entry.js.map} +1 -1
- package/dist/core/{p-32e2ae6f.entry.js → p-4e3a03cb.entry.js} +2 -2
- package/dist/core/{p-c919c571.entry.js → p-521cc9c6.entry.js} +2 -2
- package/dist/core/{p-c3acbefe.entry.js → p-56b709a1.entry.js} +2 -2
- package/dist/core/{p-c3acbefe.entry.js.map → p-56b709a1.entry.js.map} +1 -1
- package/dist/core/{p-2f91e86a.entry.js → p-687af4e5.entry.js} +2 -2
- package/dist/core/{p-8e37e832.entry.js → p-7dbd0a9f.entry.js} +2 -2
- package/dist/core/p-8a0d4ea2.entry.js +2 -0
- package/dist/core/p-8a0d4ea2.entry.js.map +1 -0
- package/dist/core/p-8bb09d94.entry.js +2 -0
- package/dist/core/p-8bb09d94.entry.js.map +1 -0
- package/dist/core/{p-e5957ce0.entry.js → p-8e3cc8e9.entry.js} +2 -2
- package/dist/core/{p-e68485ee.entry.js → p-8ec2105c.entry.js} +2 -2
- package/dist/core/p-8ec2105c.entry.js.map +1 -0
- package/dist/core/{p-adf468f4.entry.js → p-94c512d4.entry.js} +2 -2
- package/dist/core/p-94c512d4.entry.js.map +1 -0
- package/dist/core/p-9e4b8aeb.entry.js +2 -0
- package/dist/core/p-9e4b8aeb.entry.js.map +1 -0
- package/dist/core/{p-692ccc73.entry.js → p-a049705a.entry.js} +2 -2
- package/dist/core/p-a049705a.entry.js.map +1 -0
- package/dist/core/{p-731515cf.entry.js → p-a541cf18.entry.js} +2 -2
- package/dist/core/{p-52a4c223.entry.js → p-ad6176a2.entry.js} +2 -2
- package/dist/core/p-ad932b00.entry.js +2 -0
- package/dist/core/p-ad932b00.entry.js.map +1 -0
- package/dist/core/{p-5481b048.entry.js → p-adecaedd.entry.js} +2 -2
- package/dist/core/{p-2d4e7985.entry.js → p-af5e3bab.entry.js} +2 -2
- package/dist/core/p-af5e3bab.entry.js.map +1 -0
- package/dist/core/{p-8ed04819.entry.js → p-b6be866c.entry.js} +2 -2
- package/dist/core/p-b6be866c.entry.js.map +1 -0
- package/dist/core/p-b8d68163.entry.js +2 -0
- package/dist/core/p-b8d68163.entry.js.map +1 -0
- package/dist/core/{p-8153def1.entry.js → p-c199045d.entry.js} +2 -2
- package/dist/core/{p-1197f0d4.entry.js → p-c649689e.entry.js} +2 -2
- package/dist/core/{p-1197f0d4.entry.js.map → p-c649689e.entry.js.map} +1 -1
- package/dist/core/p-cbba9c7c.entry.js +2 -0
- package/dist/core/p-cbba9c7c.entry.js.map +1 -0
- package/dist/core/{p-1a6fab3e.entry.js → p-cc9e5b0e.entry.js} +2 -2
- package/dist/core/{p-03796d51.entry.js → p-ce4e0e38.entry.js} +2 -2
- package/dist/core/p-d3f10067.entry.js +2 -0
- package/dist/core/p-d3f10067.entry.js.map +1 -0
- package/dist/core/p-dae27567.entry.js +2 -0
- package/dist/core/p-dae27567.entry.js.map +1 -0
- package/dist/core/{p-a13236ef.entry.js → p-de40b0b1.entry.js} +2 -2
- package/dist/core/p-de40b0b1.entry.js.map +1 -0
- package/dist/core/{p-af5eacc1.entry.js → p-e5d5b07e.entry.js} +2 -2
- package/dist/core/{p-b451f27c.entry.js → p-e70c6b33.entry.js} +2 -2
- package/dist/core/{p-8b65be1e.entry.js → p-e776f72a.entry.js} +2 -2
- package/dist/core/p-e9ec912f.entry.js +2 -0
- package/dist/core/p-e9ec912f.entry.js.map +1 -0
- package/dist/core/p-ec77a078.entry.js +2 -0
- package/dist/core/p-ec77a078.entry.js.map +1 -0
- package/dist/core/{p-2b326b17.entry.js → p-f706798e.entry.js} +2 -2
- package/dist/core/{p-2b326b17.entry.js.map → p-f706798e.entry.js.map} +1 -1
- package/dist/core/{p-1c3b619f.entry.js → p-fd6f0ef0.entry.js} +2 -2
- package/dist/core/p-fd6f0ef0.entry.js.map +1 -0
- package/dist/core/{p-ba40f44a.entry.js → p-fe702898.entry.js} +2 -2
- package/dist/core/p-fe702898.entry.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-24ba0b83.js → helpers-c28c228a.js} +58 -98
- package/dist/esm/helpers-c28c228a.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +3 -1
- package/dist/esm/ic-accordion-group.entry.js.map +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-alert.entry.js +1 -1
- package/dist/esm/ic-back-to-top.entry.js +15 -9
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +55 -77
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +3 -1
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js +14 -14
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card.entry.js +1 -1
- package/dist/esm/ic-card.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +23 -16
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +33 -31
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +21 -31
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +1 -1
- package/dist/esm/ic-dialog.entry.js +4 -2
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state.entry.js +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +2 -2
- package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
- package/dist/esm/ic-footer-link.entry.js +1 -1
- package/dist/esm/ic-footer.entry.js +2 -2
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +3 -2
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +2 -3
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +5 -5
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +1 -1
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js +4 -10
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +1 -1
- package/dist/esm/ic-navigation-group.entry.js +1 -1
- package/dist/esm/ic-navigation-item.entry.js +2 -2
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +1 -1
- package/dist/esm/ic-page-header.entry.js +1 -1
- package/dist/esm/ic-pagination-item.entry.js +18 -9
- package/dist/esm/ic-pagination-item.entry.js.map +1 -1
- package/dist/esm/ic-pagination.entry.js +21 -9
- package/dist/esm/ic-pagination.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +13 -18
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +12 -16
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +37 -37
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +1 -1
- package/dist/esm/ic-select.entry.js +10 -6
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +1 -1
- package/dist/esm/ic-skeleton.entry.js +16 -35
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +1 -1
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +1 -1
- package/dist/esm/ic-stepper.entry.js +1 -1
- package/dist/esm/ic-switch.entry.js +2 -2
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab-panel.entry.js +1 -1
- package/dist/esm/ic-tab.entry.js +2 -2
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-text-field.entry.js +8 -8
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +13 -15
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +1 -1
- package/dist/esm/ic-toggle-button.entry.js +2 -2
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +15 -24
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +3 -0
- package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +6 -0
- package/dist/types/components/ic-back-to-top/ic-back-to-top.types.d.ts +1 -0
- package/dist/types/components/ic-badge/ic-badge.d.ts +6 -0
- package/dist/types/components/ic-button/ic-button.d.ts +1 -1
- package/dist/types/components/ic-button/ic-button.types.d.ts +1 -1
- package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +0 -1
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +2 -1
- package/dist/types/components/ic-chip/ic-chip.d.ts +1 -1
- package/dist/types/components/ic-pagination/ic-pagination.d.ts +3 -0
- package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +2 -0
- package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +2 -8
- package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +4 -1
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +1 -1
- package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +1 -0
- package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +0 -5
- package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +1 -0
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +0 -1
- package/dist/types/components/ic-theme/ic-theme.d.ts +2 -3
- package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +2 -1
- package/dist/types/components.d.ts +16 -22
- package/dist/types/utils/helpers.d.ts +7 -13
- package/hydrate/index.js +398 -472
- package/package.json +2 -2
- package/vscode-data.json +25 -9
- package/dist/cjs/helpers-88e018cf.js.map +0 -1
- package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js +0 -32
- package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js.map +0 -1
- package/dist/collection/components/ic-tab-context/test/a11y/ic-tab-context.test.a11y.js +0 -19
- package/dist/collection/components/ic-tab-context/test/a11y/ic-tab-context.test.a11y.js.map +0 -1
- package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js +0 -354
- package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js.map +0 -1
- package/dist/collection/components/ic-text-field/test/a11y/ic-text-field.test.a11y.js +0 -33
- package/dist/collection/components/ic-text-field/test/a11y/ic-text-field.test.a11y.js.map +0 -1
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js +0 -110
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js.map +0 -1
- package/dist/core/p-00c21dd7.entry.js +0 -2
- package/dist/core/p-00c21dd7.entry.js.map +0 -1
- package/dist/core/p-02ad4585.entry.js +0 -2
- package/dist/core/p-02ad4585.entry.js.map +0 -1
- package/dist/core/p-051583a5.entry.js.map +0 -1
- package/dist/core/p-078f7f23.entry.js +0 -2
- package/dist/core/p-078f7f23.entry.js.map +0 -1
- package/dist/core/p-0c097626.entry.js +0 -2
- package/dist/core/p-0c097626.entry.js.map +0 -1
- package/dist/core/p-1b1270a1.entry.js.map +0 -1
- package/dist/core/p-1c3b619f.entry.js.map +0 -1
- package/dist/core/p-24bed047.entry.js +0 -2
- package/dist/core/p-24bed047.entry.js.map +0 -1
- package/dist/core/p-2d4e7985.entry.js.map +0 -1
- package/dist/core/p-328bc6a2.entry.js.map +0 -1
- package/dist/core/p-44ea7a6d.entry.js +0 -2
- package/dist/core/p-44ea7a6d.entry.js.map +0 -1
- package/dist/core/p-498273cb.entry.js +0 -2
- package/dist/core/p-498273cb.entry.js.map +0 -1
- package/dist/core/p-692ccc73.entry.js.map +0 -1
- package/dist/core/p-74f9082d.entry.js +0 -2
- package/dist/core/p-74f9082d.entry.js.map +0 -1
- package/dist/core/p-7b720034.entry.js.map +0 -1
- package/dist/core/p-8bc2a670.entry.js +0 -2
- package/dist/core/p-8bc2a670.entry.js.map +0 -1
- package/dist/core/p-8ed04819.entry.js.map +0 -1
- package/dist/core/p-8fe2b073.entry.js +0 -2
- package/dist/core/p-8fe2b073.entry.js.map +0 -1
- package/dist/core/p-9f29ab99.entry.js +0 -2
- package/dist/core/p-9f29ab99.entry.js.map +0 -1
- package/dist/core/p-a13236ef.entry.js.map +0 -1
- package/dist/core/p-adf468f4.entry.js.map +0 -1
- package/dist/core/p-ba40f44a.entry.js.map +0 -1
- package/dist/core/p-bceaf300.entry.js.map +0 -1
- package/dist/core/p-d19d157d.entry.js +0 -2
- package/dist/core/p-d19d157d.entry.js.map +0 -1
- package/dist/core/p-e4d0d1fb.js +0 -2
- package/dist/core/p-e4d0d1fb.js.map +0 -1
- package/dist/core/p-e68485ee.entry.js.map +0 -1
- package/dist/core/p-e8e0fa96.entry.js +0 -2
- package/dist/core/p-e8e0fa96.entry.js.map +0 -1
- package/dist/core/p-f8df0716.entry.js +0 -2
- package/dist/core/p-f8df0716.entry.js.map +0 -1
- package/dist/core/p-fd737b7e.entry.js +0 -2
- package/dist/core/p-fd737b7e.entry.js.map +0 -1
- package/dist/esm/helpers-24ba0b83.js.map +0 -1
- package/dist/types/components/ic-tab-context/test/a11y/ic-tab-context.test.a11y.d.ts +0 -1
- package/dist/types/components/ic-text-field/test/a11y/ic-text-field.test.a11y.d.ts +0 -1
- /package/dist/core/{p-346578e4.entry.js.map → p-099efe2a.entry.js.map} +0 -0
- /package/dist/core/{p-ba1c3cf7.entry.js.map → p-1624f4de.entry.js.map} +0 -0
- /package/dist/core/{p-04cc2b25.entry.js.map → p-25606a38.entry.js.map} +0 -0
- /package/dist/core/{p-4f3fe190.entry.js.map → p-2965644e.entry.js.map} +0 -0
- /package/dist/core/{p-3f53446c.entry.js.map → p-35856434.entry.js.map} +0 -0
- /package/dist/core/{p-d7f4779d.entry.js.map → p-459355ef.entry.js.map} +0 -0
- /package/dist/core/{p-32e2ae6f.entry.js.map → p-4e3a03cb.entry.js.map} +0 -0
- /package/dist/core/{p-c919c571.entry.js.map → p-521cc9c6.entry.js.map} +0 -0
- /package/dist/core/{p-2f91e86a.entry.js.map → p-687af4e5.entry.js.map} +0 -0
- /package/dist/core/{p-8e37e832.entry.js.map → p-7dbd0a9f.entry.js.map} +0 -0
- /package/dist/core/{p-e5957ce0.entry.js.map → p-8e3cc8e9.entry.js.map} +0 -0
- /package/dist/core/{p-731515cf.entry.js.map → p-a541cf18.entry.js.map} +0 -0
- /package/dist/core/{p-52a4c223.entry.js.map → p-ad6176a2.entry.js.map} +0 -0
- /package/dist/core/{p-5481b048.entry.js.map → p-adecaedd.entry.js.map} +0 -0
- /package/dist/core/{p-8153def1.entry.js.map → p-c199045d.entry.js.map} +0 -0
- /package/dist/core/{p-1a6fab3e.entry.js.map → p-cc9e5b0e.entry.js.map} +0 -0
- /package/dist/core/{p-03796d51.entry.js.map → p-ce4e0e38.entry.js.map} +0 -0
- /package/dist/core/{p-af5eacc1.entry.js.map → p-e5d5b07e.entry.js.map} +0 -0
- /package/dist/core/{p-b451f27c.entry.js.map → p-e70c6b33.entry.js.map} +0 -0
- /package/dist/core/{p-8b65be1e.entry.js.map → p-e776f72a.entry.js.map} +0 -0
|
@@ -3,7 +3,7 @@ beforeAll(() => {
|
|
|
3
3
|
jest.spyOn(console, "warn").mockImplementation(jest.fn());
|
|
4
4
|
});
|
|
5
5
|
describe("ic-radio-group component", () => {
|
|
6
|
-
it("
|
|
6
|
+
it("should have tabIndex of first option 0, when no options are selected", async () => {
|
|
7
7
|
const page = await newE2EPage();
|
|
8
8
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
9
9
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -18,7 +18,7 @@ describe("ic-radio-group component", () => {
|
|
|
18
18
|
expect(input1.tabIndex).toBe(0);
|
|
19
19
|
expect(input2.tabIndex).toBe(-1);
|
|
20
20
|
});
|
|
21
|
-
it("
|
|
21
|
+
it("should not be clickable when disabled", async () => {
|
|
22
22
|
const page = await newE2EPage();
|
|
23
23
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
24
24
|
<ic-radio-option value="test1" disabled></ic-radio-option>
|
|
@@ -30,7 +30,7 @@ describe("ic-radio-group component", () => {
|
|
|
30
30
|
await page.waitForChanges();
|
|
31
31
|
expect(await radioButton.getProperty("selected")).toBe(false);
|
|
32
32
|
});
|
|
33
|
-
it("
|
|
33
|
+
it("should be selected when clicked", async () => {
|
|
34
34
|
const page = await newE2EPage();
|
|
35
35
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
36
36
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -45,7 +45,7 @@ describe("ic-radio-group component", () => {
|
|
|
45
45
|
const input = radioButton.shadowRoot.querySelector("input");
|
|
46
46
|
expect(input.tabIndex).toBe(0);
|
|
47
47
|
});
|
|
48
|
-
it("
|
|
48
|
+
it("should enable textfield when associated option is selected when static", async () => {
|
|
49
49
|
const page = await newE2EPage();
|
|
50
50
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
51
51
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -64,7 +64,7 @@ describe("ic-radio-group component", () => {
|
|
|
64
64
|
await page.waitForChanges();
|
|
65
65
|
expect(textfield).toHaveAttribute("disabled");
|
|
66
66
|
});
|
|
67
|
-
it("
|
|
67
|
+
it("should display textfield when associated option is selected when dynamic", async () => {
|
|
68
68
|
const page = await newE2EPage();
|
|
69
69
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
70
70
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -94,7 +94,7 @@ describe("ic-radio-group component", () => {
|
|
|
94
94
|
});
|
|
95
95
|
expect(additionalFieldDisplay).not.toBe("none");
|
|
96
96
|
});
|
|
97
|
-
it("
|
|
97
|
+
it("should emit icChange event when radio option is selected", async () => {
|
|
98
98
|
const page = await newE2EPage();
|
|
99
99
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
100
100
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -114,7 +114,7 @@ describe("ic-radio-group component", () => {
|
|
|
114
114
|
value: "test2",
|
|
115
115
|
});
|
|
116
116
|
});
|
|
117
|
-
it("
|
|
117
|
+
it("should emit icCheck event when radio option is selected", async () => {
|
|
118
118
|
const page = await newE2EPage();
|
|
119
119
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
120
120
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -129,7 +129,7 @@ describe("ic-radio-group component", () => {
|
|
|
129
129
|
value: "test2",
|
|
130
130
|
});
|
|
131
131
|
});
|
|
132
|
-
it("
|
|
132
|
+
it("should select when spacebar is pressed", async () => {
|
|
133
133
|
const page = await newE2EPage();
|
|
134
134
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
135
135
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -146,7 +146,7 @@ describe("ic-radio-group component", () => {
|
|
|
146
146
|
const input = radioButton.shadowRoot.querySelector("input");
|
|
147
147
|
expect(input.tabIndex).toBe(0);
|
|
148
148
|
});
|
|
149
|
-
it("
|
|
149
|
+
it("should select next radio option down when arrow down is used", async () => {
|
|
150
150
|
const page = await newE2EPage();
|
|
151
151
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
152
152
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -164,7 +164,7 @@ describe("ic-radio-group component", () => {
|
|
|
164
164
|
const input = radioButton2.shadowRoot.querySelector("input");
|
|
165
165
|
expect(input.tabIndex).toBe(0);
|
|
166
166
|
});
|
|
167
|
-
it("
|
|
167
|
+
it("should select next radio option down when arrow right is used", async () => {
|
|
168
168
|
const page = await newE2EPage();
|
|
169
169
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
170
170
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -182,7 +182,7 @@ describe("ic-radio-group component", () => {
|
|
|
182
182
|
const input = radioButton2.shadowRoot.querySelector("input");
|
|
183
183
|
expect(input.tabIndex).toBe(0);
|
|
184
184
|
});
|
|
185
|
-
it("
|
|
185
|
+
it("should select next radio option down when arrow up is used", async () => {
|
|
186
186
|
const page = await newE2EPage();
|
|
187
187
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
188
188
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -199,7 +199,7 @@ describe("ic-radio-group component", () => {
|
|
|
199
199
|
const input = radioButton1.shadowRoot.querySelector("input");
|
|
200
200
|
expect(input.tabIndex).toBe(0);
|
|
201
201
|
});
|
|
202
|
-
it("
|
|
202
|
+
it("should select next radio option down when arrow left is used", async () => {
|
|
203
203
|
const page = await newE2EPage();
|
|
204
204
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
205
205
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -216,7 +216,7 @@ describe("ic-radio-group component", () => {
|
|
|
216
216
|
const input = radioButton1.shadowRoot.querySelector("input");
|
|
217
217
|
expect(input.tabIndex).toBe(0);
|
|
218
218
|
});
|
|
219
|
-
it("
|
|
219
|
+
it("shold works in a form", async () => {
|
|
220
220
|
const page = await newE2EPage();
|
|
221
221
|
await page.setContent(` <form>
|
|
222
222
|
<ic-radio-group label="this is a label" name="1">
|
|
@@ -249,7 +249,7 @@ describe("ic-radio-group component", () => {
|
|
|
249
249
|
const value = await (await page.find('input[name="1"]')).getProperty("value");
|
|
250
250
|
expect(value).toBe("valueName1");
|
|
251
251
|
});
|
|
252
|
-
it("
|
|
252
|
+
it("should pass the value of radio button correctly when already selected", async () => {
|
|
253
253
|
const page = await newE2EPage();
|
|
254
254
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
255
255
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -260,7 +260,7 @@ describe("ic-radio-group component", () => {
|
|
|
260
260
|
const value = await (await page.find('input[name="test"]')).getProperty("value");
|
|
261
261
|
expect(value).toBe("test2");
|
|
262
262
|
});
|
|
263
|
-
it("
|
|
263
|
+
it("should pass the value of radio button and textfield correctly when already selected", async () => {
|
|
264
264
|
const page = await newE2EPage();
|
|
265
265
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
266
266
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -292,7 +292,7 @@ describe("ic-radio-group component", () => {
|
|
|
292
292
|
value = await (await page.find('input[name="test"]')).getProperty("value");
|
|
293
293
|
expect(value).toBe("test2");
|
|
294
294
|
});
|
|
295
|
-
it("
|
|
295
|
+
it("should pass the value of radio button and textfield correctly when already selected and has a value in texfield", async () => {
|
|
296
296
|
const page = await newE2EPage();
|
|
297
297
|
await page.setContent(`<ic-radio-group label="test label" name="test">
|
|
298
298
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -311,7 +311,7 @@ describe("ic-radio-group component", () => {
|
|
|
311
311
|
const value = await (await page.find('input[name="test"]')).getProperty("value");
|
|
312
312
|
expect(value).toBe("testValue1");
|
|
313
313
|
});
|
|
314
|
-
it("
|
|
314
|
+
it("should reset to initial state on form reset event", async () => {
|
|
315
315
|
const page = await newE2EPage();
|
|
316
316
|
await page.setContent(`<form><ic-radio-group label="test label" name="test">
|
|
317
317
|
<ic-radio-option value="test1" ></ic-radio-option>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ic-radio-group.e2e.js","sourceRoot":"","sources":["../../../../../src/components/ic-radio-group/test/basic/ic-radio-group.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { newE2EPage } from \"@stencil/core/testing\";\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\ndescribe(\"ic-radio-group component\", () => {\n it(\"Should have tabIndex of first option 0, when no options are selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n </ic-radio-group>\n `);\n await page.waitForChanges();\n\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n const input1 = radioButton1.shadowRoot.querySelector(\"input\");\n\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n const input2 = radioButton2.shadowRoot.querySelector(\"input\");\n\n expect(input1.tabIndex).toBe(0);\n expect(input2.tabIndex).toBe(-1);\n });\n it(\"Should not be clickable when disabled\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" disabled></ic-radio-option> \n <ic-radio-option value=\"test2\" disabled></ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n await radioButton.click();\n await page.waitForChanges();\n expect(await radioButton.getProperty(\"selected\")).toBe(false);\n });\n it(\"Should be selected when clicked\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n </ic-radio-group>\n `);\n let radioButton = await page.find(\"ic-radio-option[value='test2']\");\n await radioButton.click();\n await page.waitForChanges();\n\n expect(await radioButton.getProperty(\"selected\")).toBe(true);\n\n radioButton = await page.find(\"ic-radio-option[value='test2']\");\n const input = radioButton.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"Should enable textfield when associated option is selected when static\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" selected>\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test1']\");\n const textfield = await page.find(\"ic-text-field\");\n expect(textfield).not.toHaveAttribute(\"disabled\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n expect(textfield).toHaveAttribute(\"disabled\");\n });\n it(\"Should display textfield when associated option is selected when dynamic\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" additional-field-display=\"dynamic\">\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n\n let additionalFieldDisplay = await page.evaluate(() => {\n const additionalField = document\n .querySelector(\"ic-radio-option[value='test2']\")\n .shadowRoot.querySelector(\".dynamic-container\");\n\n return window.getComputedStyle(additionalField).display;\n });\n expect(additionalFieldDisplay).toBe(\"none\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n additionalFieldDisplay = await page.evaluate(() => {\n const additionalField = document\n .querySelector(\"ic-radio-option[value='test2']\")\n .shadowRoot.querySelector(\".dynamic-container\");\n\n return window.getComputedStyle(additionalField).display;\n });\n expect(additionalFieldDisplay).not.toBe(\"none\");\n });\n it(\"Should emit icChange event when radio option is selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" >\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n const icChange = await page.spyOnEvent(\"icChange\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n const radioElement = await page.evaluate(\n () =>\n document.querySelector(\n \"ic-radio-option[value='test2']\"\n ) as HTMLIcRadioOptionElement\n );\n\n expect(icChange).toHaveReceivedEventDetail({\n selectedOption: {\n radio: radioElement,\n },\n value: \"test2\",\n });\n });\n it(\"Should emit icCheck event when radio option is selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n const icChecked = await page.spyOnEvent(\"icCheck\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n expect(icChecked).toHaveReceivedEventDetail({\n value: \"test2\",\n });\n });\n it(\"Should select when spacebar is pressed\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" >\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test1']\");\n expect(await radioButton.getProperty(\"selected\")).toBe(false);\n\n await page.keyboard.press(\"Tab\");\n await radioButton.press(\" \");\n await page.waitForChanges();\n\n expect(await radioButton.getProperty(\"selected\")).toBe(true);\n const input = radioButton.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"Should select next radio option down when arrow down is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n await page.keyboard.press(\"Tab\");\n await radioButton1.press(\" \");\n await page.waitForChanges();\n await radioButton1.press(\"ArrowDown\");\n await page.waitForChanges();\n\n const input = radioButton2.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"Should select next radio option down when arrow right is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n await page.keyboard.press(\"Tab\");\n await radioButton1.press(\" \");\n await page.waitForChanges();\n await radioButton1.press(\"ArrowRight\");\n await page.waitForChanges();\n\n const input = radioButton2.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"Should select next radio option down when arrow up is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n\n await radioButton2.click();\n await page.waitForChanges();\n await radioButton2.press(\"ArrowUp\");\n await page.waitForChanges();\n\n const input = radioButton1.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"Should select next radio option down when arrow left is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n\n await radioButton2.click();\n await page.waitForChanges();\n await radioButton2.press(\"ArrowLeft\");\n await page.waitForChanges();\n\n const input = radioButton1.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"Works on a form\", async () => {\n const page = await newE2EPage();\n\n await page.setContent(` <form>\n <ic-radio-group label=\"this is a label\" name=\"1\">\n <ic-radio-option\n value=\"valueName1\"\n label=\"Unselected / Default\"\n ></ic-radio-option>\n <ic-radio-option\n value=\"valueName2\"\n label=\"Selected / Default\"\n selected\n ></ic-radio-option>\n <ic-radio-option\n value=\"valueName3\"\n label=\"Unselected / Disabled\"\n disabled\n ></ic-radio-option>\n </ic-radio-group>\n <input type=\"submit\" value=\"Submit\">\n </form>\n <script>document.querySelector('form').addEventListener('submit', (ev) => {\n ev.preventDefault();\n })\n </script>\n `);\n await page.waitForChanges();\n\n const radioButton = await page.find(\"ic-radio-option[value='valueName1']\");\n\n await radioButton.click();\n await page.waitForChanges();\n const value = await (\n await page.find('input[name=\"1\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"valueName1\");\n });\n it(\"Passes the value of radio button correctly when already selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" selected ></ic-radio-option> \n </ic-radio-group>\n `);\n\n await page.waitForChanges();\n\n const value = await (\n await page.find('input[name=\"test\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"test2\");\n });\n\n it(\"Passes the value of radio button and textfield correctly when already selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" additional-field-display=\"dynamic\" >\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n\n await page.keyboard.press(\"t\");\n await page.keyboard.press(\"e\");\n await page.keyboard.press(\"s\");\n await page.keyboard.press(\"t\");\n\n await page.waitForChanges();\n\n let value = await (\n await page.find('input[name=\"test\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"test\");\n\n await page.keyboard.press(\"Backspace\");\n await page.keyboard.press(\"Backspace\");\n await page.keyboard.press(\"Backspace\");\n await page.keyboard.press(\"Backspace\");\n\n await page.waitForChanges();\n\n value = await (await page.find('input[name=\"test\"]')).getProperty(\"value\");\n\n expect(value).toBe(\"test2\");\n });\n\n it(\"Passes the value of radio button and textfield correctly when already selected and has a value in texfield\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" additional-field-display=\"dynamic\" >\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n value=\"testValue1\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n const value = await (\n await page.find('input[name=\"test\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"testValue1\");\n });\n\n it(\"Should reset to initial state on form reset event\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<form><ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" selected></ic-radio-option> \n </ic-radio-group>\n <button type=\"reset\" id=\"resetButton\">Reset</button>\n </form>\n `);\n\n await page.waitForChanges();\n\n let radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n let radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n expect(await radioButton1.getProperty(\"selected\")).toBe(false);\n expect(await radioButton2.getProperty(\"selected\")).toBe(true);\n\n await radioButton1.click();\n await page.waitForChanges();\n\n radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n expect(await radioButton1.getProperty(\"selected\")).toBe(true);\n expect(await radioButton2.getProperty(\"selected\")).toBe(false);\n\n const resetButton = await page.find(\"#resetButton\");\n await resetButton.click();\n\n await page.waitForChanges();\n\n radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n expect(await radioButton1.getProperty(\"selected\")).toBe(false);\n expect(await radioButton2.getProperty(\"selected\")).toBe(true);\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"ic-radio-group.e2e.js","sourceRoot":"","sources":["../../../../../src/components/ic-radio-group/test/basic/ic-radio-group.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { newE2EPage } from \"@stencil/core/testing\";\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\ndescribe(\"ic-radio-group component\", () => {\n it(\"should have tabIndex of first option 0, when no options are selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n </ic-radio-group>\n `);\n await page.waitForChanges();\n\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n const input1 = radioButton1.shadowRoot.querySelector(\"input\");\n\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n const input2 = radioButton2.shadowRoot.querySelector(\"input\");\n\n expect(input1.tabIndex).toBe(0);\n expect(input2.tabIndex).toBe(-1);\n });\n it(\"should not be clickable when disabled\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" disabled></ic-radio-option> \n <ic-radio-option value=\"test2\" disabled></ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n await radioButton.click();\n await page.waitForChanges();\n expect(await radioButton.getProperty(\"selected\")).toBe(false);\n });\n it(\"should be selected when clicked\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n </ic-radio-group>\n `);\n let radioButton = await page.find(\"ic-radio-option[value='test2']\");\n await radioButton.click();\n await page.waitForChanges();\n\n expect(await radioButton.getProperty(\"selected\")).toBe(true);\n\n radioButton = await page.find(\"ic-radio-option[value='test2']\");\n const input = radioButton.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"should enable textfield when associated option is selected when static\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" selected>\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test1']\");\n const textfield = await page.find(\"ic-text-field\");\n expect(textfield).not.toHaveAttribute(\"disabled\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n expect(textfield).toHaveAttribute(\"disabled\");\n });\n it(\"should display textfield when associated option is selected when dynamic\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" additional-field-display=\"dynamic\">\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n\n let additionalFieldDisplay = await page.evaluate(() => {\n const additionalField = document\n .querySelector(\"ic-radio-option[value='test2']\")\n .shadowRoot.querySelector(\".dynamic-container\");\n\n return window.getComputedStyle(additionalField).display;\n });\n expect(additionalFieldDisplay).toBe(\"none\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n additionalFieldDisplay = await page.evaluate(() => {\n const additionalField = document\n .querySelector(\"ic-radio-option[value='test2']\")\n .shadowRoot.querySelector(\".dynamic-container\");\n\n return window.getComputedStyle(additionalField).display;\n });\n expect(additionalFieldDisplay).not.toBe(\"none\");\n });\n it(\"should emit icChange event when radio option is selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" >\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n const icChange = await page.spyOnEvent(\"icChange\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n const radioElement = await page.evaluate(\n () =>\n document.querySelector(\n \"ic-radio-option[value='test2']\"\n ) as HTMLIcRadioOptionElement\n );\n\n expect(icChange).toHaveReceivedEventDetail({\n selectedOption: {\n radio: radioElement,\n },\n value: \"test2\",\n });\n });\n it(\"should emit icCheck event when radio option is selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n const icChecked = await page.spyOnEvent(\"icCheck\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n expect(icChecked).toHaveReceivedEventDetail({\n value: \"test2\",\n });\n });\n it(\"should select when spacebar is pressed\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" >\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test1']\");\n expect(await radioButton.getProperty(\"selected\")).toBe(false);\n\n await page.keyboard.press(\"Tab\");\n await radioButton.press(\" \");\n await page.waitForChanges();\n\n expect(await radioButton.getProperty(\"selected\")).toBe(true);\n const input = radioButton.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"should select next radio option down when arrow down is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n await page.keyboard.press(\"Tab\");\n await radioButton1.press(\" \");\n await page.waitForChanges();\n await radioButton1.press(\"ArrowDown\");\n await page.waitForChanges();\n\n const input = radioButton2.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"should select next radio option down when arrow right is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n await page.keyboard.press(\"Tab\");\n await radioButton1.press(\" \");\n await page.waitForChanges();\n await radioButton1.press(\"ArrowRight\");\n await page.waitForChanges();\n\n const input = radioButton2.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"should select next radio option down when arrow up is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n\n await radioButton2.click();\n await page.waitForChanges();\n await radioButton2.press(\"ArrowUp\");\n await page.waitForChanges();\n\n const input = radioButton1.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"should select next radio option down when arrow left is used\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" ></ic-radio-option> \n <ic-radio-option value=\"test3\" ></ic-radio-option> \n </ic-radio-group>\n `);\n\n const radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n const radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n\n await radioButton2.click();\n await page.waitForChanges();\n await radioButton2.press(\"ArrowLeft\");\n await page.waitForChanges();\n\n const input = radioButton1.shadowRoot.querySelector(\"input\");\n expect(input.tabIndex).toBe(0);\n });\n it(\"shold works in a form\", async () => {\n const page = await newE2EPage();\n\n await page.setContent(` <form>\n <ic-radio-group label=\"this is a label\" name=\"1\">\n <ic-radio-option\n value=\"valueName1\"\n label=\"Unselected / Default\"\n ></ic-radio-option>\n <ic-radio-option\n value=\"valueName2\"\n label=\"Selected / Default\"\n selected\n ></ic-radio-option>\n <ic-radio-option\n value=\"valueName3\"\n label=\"Unselected / Disabled\"\n disabled\n ></ic-radio-option>\n </ic-radio-group>\n <input type=\"submit\" value=\"Submit\">\n </form>\n <script>document.querySelector('form').addEventListener('submit', (ev) => {\n ev.preventDefault();\n })\n </script>\n `);\n await page.waitForChanges();\n\n const radioButton = await page.find(\"ic-radio-option[value='valueName1']\");\n\n await radioButton.click();\n await page.waitForChanges();\n const value = await (\n await page.find('input[name=\"1\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"valueName1\");\n });\n it(\"should pass the value of radio button correctly when already selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" selected ></ic-radio-option> \n </ic-radio-group>\n `);\n\n await page.waitForChanges();\n\n const value = await (\n await page.find('input[name=\"test\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"test2\");\n });\n\n it(\"should pass the value of radio button and textfield correctly when already selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" additional-field-display=\"dynamic\" >\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n\n await page.keyboard.press(\"t\");\n await page.keyboard.press(\"e\");\n await page.keyboard.press(\"s\");\n await page.keyboard.press(\"t\");\n\n await page.waitForChanges();\n\n let value = await (\n await page.find('input[name=\"test\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"test\");\n\n await page.keyboard.press(\"Backspace\");\n await page.keyboard.press(\"Backspace\");\n await page.keyboard.press(\"Backspace\");\n await page.keyboard.press(\"Backspace\");\n\n await page.waitForChanges();\n\n value = await (await page.find('input[name=\"test\"]')).getProperty(\"value\");\n\n expect(value).toBe(\"test2\");\n });\n\n it(\"should pass the value of radio button and textfield correctly when already selected and has a value in texfield\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" additional-field-display=\"dynamic\" >\n <ic-text-field\n slot=\"additional-field\"\n label=\"Test label\"\n value=\"testValue1\"\n ></ic-text-field>\n </ic-radio-option> \n </ic-radio-group>\n `);\n const radioButton = await page.find(\"ic-radio-option[value='test2']\");\n\n await radioButton.click();\n await page.waitForChanges();\n\n const value = await (\n await page.find('input[name=\"test\"]')\n ).getProperty(\"value\");\n\n expect(value).toBe(\"testValue1\");\n });\n\n it(\"should reset to initial state on form reset event\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<form><ic-radio-group label=\"test label\" name=\"test\">\n <ic-radio-option value=\"test1\" ></ic-radio-option> \n <ic-radio-option value=\"test2\" selected></ic-radio-option> \n </ic-radio-group>\n <button type=\"reset\" id=\"resetButton\">Reset</button>\n </form>\n `);\n\n await page.waitForChanges();\n\n let radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n let radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n expect(await radioButton1.getProperty(\"selected\")).toBe(false);\n expect(await radioButton2.getProperty(\"selected\")).toBe(true);\n\n await radioButton1.click();\n await page.waitForChanges();\n\n radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n expect(await radioButton1.getProperty(\"selected\")).toBe(true);\n expect(await radioButton2.getProperty(\"selected\")).toBe(false);\n\n const resetButton = await page.find(\"#resetButton\");\n await resetButton.click();\n\n await page.waitForChanges();\n\n radioButton1 = await page.find(\"ic-radio-option[value='test1']\");\n radioButton2 = await page.find(\"ic-radio-option[value='test2']\");\n\n expect(await radioButton1.getProperty(\"selected\")).toBe(false);\n expect(await radioButton2.getProperty(\"selected\")).toBe(true);\n });\n});\n"]}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Host, h, } from "@stencil/core";
|
|
2
|
-
import {
|
|
2
|
+
import { onComponentRequiredPropUndefined, addFormResetListener, removeFormResetListener, removeDisabledFalse, isPropDefined, isSlotUsed, } from "../../utils/helpers";
|
|
3
|
+
const ADDITIONAL_FIELD = "additional-field";
|
|
4
|
+
const TEXT_FIELD_SELECTOR = "ic-text-field";
|
|
3
5
|
/**
|
|
4
6
|
* @slot additional-field - Content to displayed alongside a radio option.
|
|
5
7
|
*/
|
|
@@ -15,9 +17,9 @@ export class RadioOption {
|
|
|
15
17
|
}
|
|
16
18
|
this.skipFocus = false;
|
|
17
19
|
if (this.hasAdditionalField) {
|
|
18
|
-
const textfield = this.el.querySelector("ic-text-field");
|
|
19
20
|
this.value =
|
|
20
|
-
|
|
21
|
+
this.el.querySelector(TEXT_FIELD_SELECTOR).value ||
|
|
22
|
+
this.defaultRadioValue;
|
|
21
23
|
}
|
|
22
24
|
this.icCheck.emit({
|
|
23
25
|
value: this.value,
|
|
@@ -57,14 +59,11 @@ export class RadioOption {
|
|
|
57
59
|
removeFormResetListener(this.el, this.handleFormReset);
|
|
58
60
|
}
|
|
59
61
|
componentWillLoad() {
|
|
60
|
-
|
|
61
|
-
if (additionalFieldContent !== null) {
|
|
62
|
+
if (isSlotUsed(this.el, ADDITIONAL_FIELD)) {
|
|
62
63
|
this.hasAdditionalField = true;
|
|
63
|
-
const
|
|
64
|
-
if (
|
|
65
|
-
const textField = Element;
|
|
64
|
+
const textField = this.el.querySelector(TEXT_FIELD_SELECTOR);
|
|
65
|
+
if (textField)
|
|
66
66
|
textField.hiddenInput = false;
|
|
67
|
-
}
|
|
68
67
|
}
|
|
69
68
|
this.defaultRadioValue = this.value;
|
|
70
69
|
addFormResetListener(this.el, this.handleFormReset);
|
|
@@ -73,38 +72,38 @@ export class RadioOption {
|
|
|
73
72
|
componentDidLoad() {
|
|
74
73
|
onComponentRequiredPropUndefined([{ prop: this.value, propName: "value" }], "Radio Option");
|
|
75
74
|
}
|
|
75
|
+
componentWillRender() {
|
|
76
|
+
const hasSlot = isSlotUsed(this.el, ADDITIONAL_FIELD);
|
|
77
|
+
if (hasSlot && !this.hasAdditionalField) {
|
|
78
|
+
this.hasAdditionalField = true;
|
|
79
|
+
const textField = this.el.querySelector(TEXT_FIELD_SELECTOR);
|
|
80
|
+
if (textField)
|
|
81
|
+
textField.hiddenInput = false;
|
|
82
|
+
}
|
|
83
|
+
else if (!hasSlot && this.hasAdditionalField) {
|
|
84
|
+
this.hasAdditionalField = false;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
76
87
|
componentDidRender() {
|
|
77
88
|
if (this.additionalFieldDisplay === "static") {
|
|
78
|
-
const textfield = this.el.querySelector(
|
|
89
|
+
const textfield = this.el.querySelector(TEXT_FIELD_SELECTOR);
|
|
79
90
|
if (!this.selected) {
|
|
80
|
-
textfield
|
|
91
|
+
textfield === null || textfield === void 0 ? void 0 : textfield.setAttribute("disabled", "");
|
|
81
92
|
}
|
|
82
93
|
else {
|
|
83
|
-
textfield
|
|
94
|
+
textfield === null || textfield === void 0 ? void 0 : textfield.removeAttribute("disabled");
|
|
84
95
|
}
|
|
85
96
|
}
|
|
86
97
|
}
|
|
87
98
|
textfieldValueHandler(event) {
|
|
88
|
-
const textFieldValue = event.detail.value;
|
|
89
99
|
if (this.selected) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
this.
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
this.
|
|
96
|
-
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
this.value = this.defaultRadioValue;
|
|
101
|
-
this.icCheck.emit({
|
|
102
|
-
value: this.defaultRadioValue,
|
|
103
|
-
});
|
|
104
|
-
this.radioOptionSelect.emit({
|
|
105
|
-
value: this.defaultRadioValue,
|
|
106
|
-
});
|
|
107
|
-
}
|
|
100
|
+
this.value = event.detail.value || this.defaultRadioValue;
|
|
101
|
+
this.icCheck.emit({
|
|
102
|
+
value: this.value,
|
|
103
|
+
});
|
|
104
|
+
this.radioOptionSelect.emit({
|
|
105
|
+
value: this.value,
|
|
106
|
+
});
|
|
108
107
|
}
|
|
109
108
|
event.stopImmediatePropagation();
|
|
110
109
|
}
|
|
@@ -122,13 +121,14 @@ export class RadioOption {
|
|
|
122
121
|
this.radioElement.tabIndex = value;
|
|
123
122
|
}
|
|
124
123
|
render() {
|
|
125
|
-
const
|
|
126
|
-
|
|
124
|
+
const { additionalFieldDisplay, disabled, dynamicText, form, formaction, formenctype, formmethod, formnovalidate, formtarget, groupLabel, handleClick, hasAdditionalField, label, name, selected, swallowClick, value, } = this;
|
|
125
|
+
const id = `ic-radio-option-${isPropDefined(label) || value}-${groupLabel}`;
|
|
126
|
+
return (h(Host, { onClick: handleClick, class: { disabled } }, h("div", { class: { ["container"]: true, disabled } }, h("div", null, h("input", { role: "radio", tabindex: selected ? "0" : "-1", type: "radio", name: name, id: id, value: value, disabled: disabled ? true : null, checked: selected, ref: (el) => (this.radioElement = el), form: form, formaction: formaction, formenctype: formenctype, formmethod: formmethod, formnovalidate: formnovalidate, formtarget: formtarget }), h("span", { class: "checkmark" })), h("ic-typography", { class: "radio-label", variant: "body" }, h("label", { htmlFor: id }, label))), hasAdditionalField && (h("div", { onClick: swallowClick, class: {
|
|
127
127
|
"dynamic-container": true,
|
|
128
|
-
hidden:
|
|
129
|
-
} },
|
|
130
|
-
"additional-field-wrapper":
|
|
131
|
-
} }, h("slot", { name:
|
|
128
|
+
hidden: additionalFieldDisplay === "dynamic" && !selected,
|
|
129
|
+
} }, additionalFieldDisplay === "dynamic" && (h("div", { class: "branch-corner" })), h("div", null, additionalFieldDisplay === "dynamic" && (h("ic-typography", { variant: "caption" }, h("p", { class: "dynamic-text" }, dynamicText))), h("div", { class: {
|
|
130
|
+
"additional-field-wrapper": additionalFieldDisplay === "static",
|
|
131
|
+
} }, h("slot", { name: ADDITIONAL_FIELD })))))));
|
|
132
132
|
}
|
|
133
133
|
static get is() { return "ic-radio-option"; }
|
|
134
134
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ic-radio-option.js","sourceRoot":"","sources":["../../../src/components/ic-radio-option/ic-radio-option.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Listen,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcAdditionalFieldTypes, IcValueEventDetail } from \"../../utils/types\";\nimport {\n getSlotContent,\n onComponentRequiredPropUndefined,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n isPropDefined,\n} from \"../../utils/helpers\";\n\n/**\n * @slot additional-field - Content to displayed alongside a radio option.\n */\n@Component({\n tag: \"ic-radio-option\",\n styleUrl: \"ic-radio-option.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class RadioOption {\n private defaultRadioValue: string = \"\";\n private hasAdditionalField: boolean = false;\n private radioElement: HTMLInputElement;\n private skipFocus = false;\n\n @Element() el: HTMLIcRadioOptionElement;\n\n /**\n * The style of additionalField that will be displayed if used.\n */\n @Prop({ reflect: true }) additionalFieldDisplay: IcAdditionalFieldTypes =\n \"static\";\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The text to be displayed when dynamic.\n */\n @Prop() dynamicText: string = \"This selection requires additional answers\";\n\n /**\n * The <form> element to associate the radio with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the radio. It overrides the action attribute of the radio's form owner. Does nothing if there is no form owner.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the radio's form owner.\n */\n @Prop() formtarget?: string;\n\n /**\n * The group label for the radio option.\n */\n @Prop() groupLabel: string;\n\n /**\n * The label for the radio option.\n */\n @Prop() label?: string;\n\n /**\n * The name for the radio option.\n */\n @Prop() name: string;\n\n /**\n * The value for the radio option.\n */\n @Prop({ mutable: true }) value!: string;\n\n /**\n * If `true`, the radio option will be displayed in a selected state.\n */\n @Prop({ reflect: true, mutable: true }) selected?: boolean = false;\n @State() initiallySelected = this.selected;\n\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n this.icSelectedChange.emit();\n }\n\n /**\n * Emitted when the radio option is selected.\n */\n @Event() icCheck: EventEmitter<IcValueEventDetail>;\n\n /**\n * @deprecated This event should not be used anymore. Use icCheck instead.\n */\n @Event() radioOptionSelect: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the radio option is selected or deselected.\n */\n @Event() icSelectedChange: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n const additionalFieldContent = getSlotContent(this.el, \"additional-field\");\n\n if (additionalFieldContent !== null) {\n this.hasAdditionalField = true;\n const Element = additionalFieldContent[0] as HTMLElement;\n if (Element.tagName === \"IC-TEXT-FIELD\") {\n const textField = Element as HTMLIcTextFieldElement;\n textField.hiddenInput = false;\n }\n }\n\n this.defaultRadioValue = this.value;\n\n addFormResetListener(this.el, this.handleFormReset);\n\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.value, propName: \"value\" }],\n \"Radio Option\"\n );\n }\n\n componentDidRender(): void {\n if (this.additionalFieldDisplay === \"static\") {\n const textfield = this.el.querySelector(\"ic-text-field\");\n if (!this.selected) {\n textfield && textfield.setAttribute(\"disabled\", \"\");\n } else {\n textfield && textfield.removeAttribute(\"disabled\");\n }\n }\n }\n\n @Listen(\"icChange\")\n textfieldValueHandler(event: CustomEvent<{ value: string }>): void {\n const textFieldValue = event.detail.value;\n\n if (this.selected) {\n if (textFieldValue !== \"\") {\n this.value = event.detail.value;\n this.icCheck.emit({\n value: this.value,\n });\n this.radioOptionSelect.emit({\n value: this.value,\n });\n } else {\n this.value = this.defaultRadioValue;\n this.icCheck.emit({\n value: this.defaultRadioValue,\n });\n this.radioOptionSelect.emit({\n value: this.defaultRadioValue,\n });\n }\n }\n\n event.stopImmediatePropagation();\n }\n\n /**\n * Sets focus on the radio option.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.radioElement?.focus();\n }\n\n /**\n * @internal Sets the tabIndex of the radio option.\n */\n @Method()\n async setTabIndex(value: number): Promise<void> {\n this.radioElement.tabIndex = value;\n }\n\n private handleClick = () => {\n if (!this.disabled) {\n if (this.skipFocus === false) {\n this.radioElement.focus();\n }\n this.skipFocus = false;\n\n if (this.hasAdditionalField) {\n const textfield = this.el.querySelector(\"ic-text-field\");\n this.value =\n textfield.value !== \"\" ? textfield.value : this.defaultRadioValue;\n }\n\n this.icCheck.emit({\n value: this.value,\n });\n\n this.radioOptionSelect.emit({\n value: this.value,\n });\n }\n };\n\n private swallowClick = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n private handleFormReset = (): void => {\n this.skipFocus = true;\n this.selected = this.initiallySelected;\n };\n\n render() {\n const id = `ic-radio-option-${\n isPropDefined(this.label) ? this.label : this.value\n }-${this.groupLabel}`;\n\n return (\n <Host onClick={this.handleClick} class={{ disabled: this.disabled }}>\n <div class={{ [\"container\"]: true, [\"disabled\"]: this.disabled }}>\n <div>\n <input\n role=\"radio\"\n tabindex={this.selected ? \"0\" : \"-1\"}\n type=\"radio\"\n name={this.name}\n id={id}\n value={this.value}\n disabled={this.disabled ? true : null}\n checked={this.selected}\n ref={(el) => (this.radioElement = el)}\n form={this.form}\n formaction={this.formaction}\n formenctype={this.formenctype}\n formmethod={this.formmethod}\n formnovalidate={this.formnovalidate}\n formtarget={this.formtarget}\n ></input>\n <span class=\"checkmark\"></span>\n </div>\n <ic-typography class=\"radio-label\" variant=\"body\">\n <label htmlFor={id}>{this.label}</label>\n </ic-typography>\n </div>\n\n {this.hasAdditionalField && (\n <div\n onClick={this.swallowClick}\n class={{\n \"dynamic-container\": true,\n hidden:\n this.additionalFieldDisplay === \"dynamic\" && !this.selected,\n }}\n >\n {this.additionalFieldDisplay === \"dynamic\" && (\n <div class=\"branch-corner\"></div>\n )}\n <div>\n {this.additionalFieldDisplay === \"dynamic\" && (\n <ic-typography variant=\"caption\">\n <p class=\"dynamic-text\">{this.dynamicText}</p>\n </ic-typography>\n )}\n <div\n class={{\n \"additional-field-wrapper\":\n this.additionalFieldDisplay === \"static\",\n }}\n >\n <slot name=\"additional-field\"></slot>\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ic-radio-option.js","sourceRoot":"","sources":["../../../src/components/ic-radio-option/ic-radio-option.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Listen,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcAdditionalFieldTypes, IcValueEventDetail } from \"../../utils/types\";\nimport {\n onComponentRequiredPropUndefined,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n isPropDefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\n\nconst ADDITIONAL_FIELD = \"additional-field\";\nconst TEXT_FIELD_SELECTOR = \"ic-text-field\";\n\n/**\n * @slot additional-field - Content to displayed alongside a radio option.\n */\n@Component({\n tag: \"ic-radio-option\",\n styleUrl: \"ic-radio-option.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class RadioOption {\n private defaultRadioValue: string = \"\";\n private hasAdditionalField: boolean = false;\n private radioElement: HTMLInputElement;\n private skipFocus = false;\n\n @Element() el: HTMLIcRadioOptionElement;\n\n /**\n * The style of additionalField that will be displayed if used.\n */\n @Prop({ reflect: true }) additionalFieldDisplay: IcAdditionalFieldTypes =\n \"static\";\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The text to be displayed when dynamic.\n */\n @Prop() dynamicText: string = \"This selection requires additional answers\";\n\n /**\n * The <form> element to associate the radio with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the radio. It overrides the action attribute of the radio's form owner. Does nothing if there is no form owner.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the radio's form owner.\n */\n @Prop() formtarget?: string;\n\n /**\n * The group label for the radio option.\n */\n @Prop() groupLabel: string;\n\n /**\n * The label for the radio option.\n */\n @Prop() label?: string;\n\n /**\n * The name for the radio option.\n */\n @Prop() name: string;\n\n /**\n * The value for the radio option.\n */\n @Prop({ mutable: true }) value!: string;\n\n /**\n * If `true`, the radio option will be displayed in a selected state.\n */\n @Prop({ reflect: true, mutable: true }) selected?: boolean = false;\n @State() initiallySelected = this.selected;\n\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n this.icSelectedChange.emit();\n }\n\n /**\n * Emitted when the radio option is selected.\n */\n @Event() icCheck: EventEmitter<IcValueEventDetail>;\n\n /**\n * @deprecated This event should not be used anymore. Use icCheck instead.\n */\n @Event() radioOptionSelect: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the radio option is selected or deselected.\n */\n @Event() icSelectedChange: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n if (isSlotUsed(this.el, ADDITIONAL_FIELD)) {\n this.hasAdditionalField = true;\n const textField = this.el.querySelector(TEXT_FIELD_SELECTOR);\n if (textField) textField.hiddenInput = false;\n }\n\n this.defaultRadioValue = this.value;\n\n addFormResetListener(this.el, this.handleFormReset);\n\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.value, propName: \"value\" }],\n \"Radio Option\"\n );\n }\n\n componentWillRender(): void {\n const hasSlot = isSlotUsed(this.el, ADDITIONAL_FIELD);\n if (hasSlot && !this.hasAdditionalField) {\n this.hasAdditionalField = true;\n const textField = this.el.querySelector(TEXT_FIELD_SELECTOR);\n if (textField) textField.hiddenInput = false;\n } else if (!hasSlot && this.hasAdditionalField) {\n this.hasAdditionalField = false;\n }\n }\n\n componentDidRender(): void {\n if (this.additionalFieldDisplay === \"static\") {\n const textfield = this.el.querySelector(TEXT_FIELD_SELECTOR);\n if (!this.selected) {\n textfield?.setAttribute(\"disabled\", \"\");\n } else {\n textfield?.removeAttribute(\"disabled\");\n }\n }\n }\n\n @Listen(\"icChange\")\n textfieldValueHandler(event: CustomEvent<{ value: string }>): void {\n if (this.selected) {\n this.value = event.detail.value || this.defaultRadioValue;\n this.icCheck.emit({\n value: this.value,\n });\n this.radioOptionSelect.emit({\n value: this.value,\n });\n }\n\n event.stopImmediatePropagation();\n }\n\n /**\n * Sets focus on the radio option.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.radioElement?.focus();\n }\n\n /**\n * @internal Sets the tabIndex of the radio option.\n */\n @Method()\n async setTabIndex(value: number): Promise<void> {\n this.radioElement.tabIndex = value;\n }\n\n private handleClick = () => {\n if (!this.disabled) {\n if (this.skipFocus === false) {\n this.radioElement.focus();\n }\n this.skipFocus = false;\n\n if (this.hasAdditionalField) {\n this.value =\n this.el.querySelector(TEXT_FIELD_SELECTOR).value ||\n this.defaultRadioValue;\n }\n\n this.icCheck.emit({\n value: this.value,\n });\n\n this.radioOptionSelect.emit({\n value: this.value,\n });\n }\n };\n\n private swallowClick = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n private handleFormReset = (): void => {\n this.skipFocus = true;\n this.selected = this.initiallySelected;\n };\n\n render() {\n const {\n additionalFieldDisplay,\n disabled,\n dynamicText,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n groupLabel,\n handleClick,\n hasAdditionalField,\n label,\n name,\n selected,\n swallowClick,\n value,\n } = this;\n\n const id = `ic-radio-option-${isPropDefined(label) || value}-${groupLabel}`;\n\n return (\n <Host onClick={handleClick} class={{ disabled }}>\n <div class={{ [\"container\"]: true, disabled }}>\n <div>\n <input\n role=\"radio\"\n tabindex={selected ? \"0\" : \"-1\"}\n type=\"radio\"\n name={name}\n id={id}\n value={value}\n disabled={disabled ? true : null}\n checked={selected}\n ref={(el) => (this.radioElement = el)}\n form={form}\n formaction={formaction}\n formenctype={formenctype}\n formmethod={formmethod}\n formnovalidate={formnovalidate}\n formtarget={formtarget}\n ></input>\n <span class=\"checkmark\"></span>\n </div>\n <ic-typography class=\"radio-label\" variant=\"body\">\n <label htmlFor={id}>{label}</label>\n </ic-typography>\n </div>\n\n {hasAdditionalField && (\n <div\n onClick={swallowClick}\n class={{\n \"dynamic-container\": true,\n hidden: additionalFieldDisplay === \"dynamic\" && !selected,\n }}\n >\n {additionalFieldDisplay === \"dynamic\" && (\n <div class=\"branch-corner\"></div>\n )}\n <div>\n {additionalFieldDisplay === \"dynamic\" && (\n <ic-typography variant=\"caption\">\n <p class=\"dynamic-text\">{dynamicText}</p>\n </ic-typography>\n )}\n <div\n class={{\n \"additional-field-wrapper\":\n additionalFieldDisplay === \"static\",\n }}\n >\n <slot name={ADDITIONAL_FIELD}></slot>\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
|
|
@@ -347,7 +347,7 @@ describe("ic-search-bar", () => {
|
|
|
347
347
|
await menu.press("Enter");
|
|
348
348
|
expect(await searchBar.getProperty("value")).toBe("qux");
|
|
349
349
|
});
|
|
350
|
-
it("
|
|
350
|
+
it("should close menu on escape", async () => {
|
|
351
351
|
const page = await newE2EPage();
|
|
352
352
|
await page.setContent(`
|
|
353
353
|
<ic-search-bar label="Test Label"></ic-search-bar>
|
|
@@ -365,7 +365,7 @@ describe("ic-search-bar", () => {
|
|
|
365
365
|
menu = await page.find("ic-search-bar >>> ic-text-field ic-menu");
|
|
366
366
|
expect(menu).toBeNull();
|
|
367
367
|
});
|
|
368
|
-
it("
|
|
368
|
+
it("should close menu when blurred and open when focused", async () => {
|
|
369
369
|
const page = await newE2EPage();
|
|
370
370
|
await page.setContent(`
|
|
371
371
|
<ic-search-bar label="Test Label"></ic-search-bar>
|
|
@@ -711,7 +711,7 @@ describe("ic-search-bar", () => {
|
|
|
711
711
|
});
|
|
712
712
|
expect(focusedElement).toBe("ic-search-bar-input-0");
|
|
713
713
|
});
|
|
714
|
-
it("
|
|
714
|
+
it("should render menu when shift is pressed while focus on input", async () => {
|
|
715
715
|
const page = await newE2EPage();
|
|
716
716
|
await page.setContent(`<ic-search-bar label="Test Label"></ic-search-bar>`);
|
|
717
717
|
const searchBar = await page.find("ic-search-bar");
|
|
@@ -723,7 +723,7 @@ describe("ic-search-bar", () => {
|
|
|
723
723
|
const menu = await page.find("ic-search-bar >>> ic-menu");
|
|
724
724
|
expect(await menu.isVisible()).toBeTruthy();
|
|
725
725
|
});
|
|
726
|
-
it("
|
|
726
|
+
it("should display tooltip on search buttons when enabled", async () => {
|
|
727
727
|
const page = await newE2EPage();
|
|
728
728
|
await page.setContent(`<ic-search-bar label="Test Label"></ic-search-bar>`);
|
|
729
729
|
await page.keyboard.press("Tab");
|
|
@@ -793,7 +793,7 @@ describe("ic-search-bar", () => {
|
|
|
793
793
|
});
|
|
794
794
|
expect(firstOptionFocused).toBeTruthy();
|
|
795
795
|
});
|
|
796
|
-
it("
|
|
796
|
+
it("should focus onto button from search bar", async () => {
|
|
797
797
|
const page = await newE2EPage();
|
|
798
798
|
await page.setContent(`
|
|
799
799
|
<ic-search-bar label="Test Label"></ic-search-bar>
|