@ukic/web-components 2.1.0-beta.15 → 2.1.0-beta.16
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/core.cjs.js +10 -3
- package/dist/cjs/core.cjs.js.map +1 -1
- package/dist/cjs/{helpers-d6b5880e.js → helpers-eb53c416.js} +7 -1
- package/dist/cjs/helpers-eb53c416.js.map +1 -0
- package/dist/cjs/ic-alert.cjs.entry.js +2 -2
- package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -2
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/ic-button_3.cjs.entry.js +31 -31
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card.cjs.entry.js +4 -3
- package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +5 -2
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +3 -2
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +5 -2
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-entity.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-dialog.cjs.entry.js +296 -0
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-divider.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer.cjs.entry.js +3 -3
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +2 -2
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +2 -2
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +65 -26
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +3 -3
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +4 -3
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-group.cjs.entry.js +44 -18
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +2 -2
- package/dist/cjs/ic-page-header.cjs.entry.js +3 -3
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +6 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +3 -2
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +3 -3
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +16 -5
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +5 -11
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +6 -3
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +34 -32
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +51 -42
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
- 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 +2 -2
- package/dist/cjs/ic-switch.cjs.entry.js +4 -3
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +5 -1
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +4 -5
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +2 -2
- package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +2 -2
- package/dist/cjs/ic-top-navigation.cjs.entry.js +2 -2
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/{index-a62312a7.js → index-014e3058.js} +222 -43
- package/dist/cjs/index-014e3058.js.map +1 -0
- package/dist/cjs/loader.cjs.js +4 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +13 -12
- package/dist/collection/components/ic-alert/ic-alert.e2e.js +16 -0
- package/dist/collection/components/ic-alert/ic-alert.e2e.js.map +1 -0
- package/dist/collection/components/ic-alert/ic-alert.spec.js +182 -0
- package/dist/collection/components/ic-alert/ic-alert.spec.js.map +1 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.e2e.js +68 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.e2e.js.map +1 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.spec.js +123 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.spec.js.map +1 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.spec.js +118 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.spec.js.map +1 -0
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.e2e.js +41 -0
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.e2e.js.map +1 -0
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.spec.js +181 -0
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.spec.js.map +1 -0
- package/dist/collection/components/ic-button/ic-button.e2e.js +173 -0
- package/dist/collection/components/ic-button/ic-button.e2e.js.map +1 -0
- package/dist/collection/components/ic-button/ic-button.js +3 -2
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.spec.js +230 -0
- package/dist/collection/components/ic-button/ic-button.spec.js.map +1 -0
- package/dist/collection/components/ic-card/ic-card.css +3 -2
- package/dist/collection/components/ic-card/ic-card.e2e.js +23 -0
- package/dist/collection/components/ic-card/ic-card.e2e.js.map +1 -0
- package/dist/collection/components/ic-card/ic-card.js +2 -1
- package/dist/collection/components/ic-card/ic-card.js.map +1 -1
- package/dist/collection/components/ic-card/ic-card.spec.js +152 -0
- package/dist/collection/components/ic-card/ic-card.spec.js.map +1 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +2 -1
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.e2e.js +201 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.e2e.js.map +1 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +4 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.spec.js +175 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.spec.js.map +1 -0
- package/dist/collection/components/ic-chip/ic-chip.js +4 -1
- package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
- package/dist/collection/components/ic-chip/ic-chip.spec.js +110 -0
- package/dist/collection/components/ic-chip/ic-chip.spec.js.map +1 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.spec.js +140 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.spec.js.map +1 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.spec.js +161 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.spec.js.map +1 -0
- package/dist/collection/components/ic-data-row/ic-data-row.spec.js +185 -0
- package/dist/collection/components/ic-data-row/ic-data-row.spec.js.map +1 -0
- package/dist/collection/components/ic-dialog/ic-dialog.css +595 -0
- package/dist/collection/components/ic-dialog/ic-dialog.e2e.js +204 -0
- package/dist/collection/components/ic-dialog/ic-dialog.e2e.js.map +1 -0
- package/dist/collection/components/ic-dialog/ic-dialog.js +641 -0
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -0
- package/dist/collection/components/ic-dialog/ic-dialog.spec.js +520 -0
- package/dist/collection/components/ic-dialog/ic-dialog.spec.js.map +1 -0
- package/dist/collection/components/ic-dialog/ic-dialog.test.a11y.js +28 -0
- package/dist/collection/components/ic-dialog/ic-dialog.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-divider/ic-divider.spec.js +24 -0
- package/dist/collection/components/ic-divider/ic-divider.spec.js.map +1 -0
- package/dist/collection/components/ic-footer/ic-footer.e2e.js +50 -0
- package/dist/collection/components/ic-footer/ic-footer.e2e.js.map +1 -0
- 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/ic-footer.spec.js +140 -0
- package/dist/collection/components/ic-footer/ic-footer.spec.js.map +1 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.spec.js +62 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.spec.js.map +1 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.spec.js +98 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.spec.js.map +1 -0
- package/dist/collection/components/ic-hero/ic-hero.spec.js +76 -0
- package/dist/collection/components/ic-hero/ic-hero.spec.js.map +1 -0
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.spec.js +180 -0
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.spec.js.map +1 -0
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +32 -4
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.spec.js +117 -0
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.spec.js.map +1 -0
- package/dist/collection/components/ic-input-container/ic-input-container.spec.js +38 -0
- package/dist/collection/components/ic-input-container/ic-input-container.spec.js.map +1 -0
- package/dist/collection/components/ic-input-label/ic-input-label.spec.js +98 -0
- package/dist/collection/components/ic-input-label/ic-input-label.spec.js.map +1 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.css +0 -8
- package/dist/collection/components/ic-input-validation/ic-input-validation.spec.js +89 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.spec.js.map +1 -0
- package/dist/collection/components/ic-link/ic-link.spec.js +203 -0
- package/dist/collection/components/ic-link/ic-link.spec.js.map +1 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.e2e.js +34 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.e2e.js.map +1 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.spec.js +141 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.spec.js.map +1 -0
- package/dist/collection/components/ic-menu/ic-menu.css +9 -1
- package/dist/collection/components/ic-menu/ic-menu.js +85 -22
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu/ic-menu.spec.js +650 -0
- package/dist/collection/components/ic-menu/ic-menu.spec.js.map +1 -0
- package/dist/collection/components/ic-menu-group/ic-menu-group.spec.js +94 -0
- package/dist/collection/components/ic-menu-group/ic-menu-group.spec.js.map +1 -0
- package/dist/collection/components/ic-menu-item/ic-menu-item.css +2 -2
- package/dist/collection/components/ic-menu-item/ic-menu-item.js +2 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.spec.js +105 -0
- package/dist/collection/components/ic-menu-item/ic-menu-item.spec.js.map +1 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.spec.js +84 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.spec.js.map +1 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +41 -15
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.spec.js +309 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.spec.js.map +1 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.spec.js +118 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.spec.js.map +1 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.e2e.js +29 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.e2e.js.map +1 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.spec.js +176 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.spec.js.map +1 -0
- package/dist/collection/components/ic-page-header/ic-page-header.css +1 -1
- package/dist/collection/components/ic-page-header/ic-page-header.e2e.js +177 -0
- package/dist/collection/components/ic-page-header/ic-page-header.e2e.js.map +1 -0
- package/dist/collection/components/ic-page-header/ic-page-header.spec.js +284 -0
- package/dist/collection/components/ic-page-header/ic-page-header.spec.js.map +1 -0
- package/dist/collection/components/ic-pagination/ic-pagination.e2e.js +128 -0
- package/dist/collection/components/ic-pagination/ic-pagination.e2e.js.map +1 -0
- package/dist/collection/components/ic-pagination/ic-pagination.js +3 -2
- package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.spec.js +325 -0
- package/dist/collection/components/ic-pagination/ic-pagination.spec.js.map +1 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +5 -1
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.e2e.js +30 -0
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.e2e.js.map +1 -0
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.spec.js +381 -0
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.spec.js.map +1 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.e2e.js +343 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.e2e.js.map +1 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +19 -8
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.spec.js +303 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.spec.js.map +1 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.types.js +2 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.types.js.map +1 -0
- package/dist/collection/components/ic-radio-option/ic-radio-option.css +1 -1
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +5 -14
- package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.e2e.js +1054 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.e2e.js.map +1 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.js +12 -9
- package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.spec.js +570 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.spec.js.map +1 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
- package/dist/collection/components/ic-section-container/ic-section-container.spec.js +69 -0
- package/dist/collection/components/ic-section-container/ic-section-container.spec.js.map +1 -0
- package/dist/collection/components/ic-select/ic-select.e2e.js +1765 -0
- package/dist/collection/components/ic-select/ic-select.e2e.js.map +1 -0
- package/dist/collection/components/ic-select/ic-select.js +35 -33
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select.spec.js +1276 -0
- package/dist/collection/components/ic-select/ic-select.spec.js.map +1 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +0 -7
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.e2e.js +412 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.e2e.js.map +1 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +48 -39
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.spec.js +470 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.spec.js.map +1 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.spec.js +89 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.spec.js.map +1 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +2 -6
- package/dist/collection/components/ic-status-tag/ic-status-tag.spec.js +43 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.spec.js.map +1 -0
- package/dist/collection/components/ic-step/ic-step.spec.js +176 -0
- package/dist/collection/components/ic-step/ic-step.spec.js.map +1 -0
- package/dist/collection/components/ic-stepper/ic-stepper.e2e.js +49 -0
- package/dist/collection/components/ic-stepper/ic-stepper.e2e.js.map +1 -0
- package/dist/collection/components/ic-stepper/ic-stepper.spec.js +706 -0
- package/dist/collection/components/ic-stepper/ic-stepper.spec.js.map +1 -0
- package/dist/collection/components/ic-switch/ic-switch.css +1 -1
- package/dist/collection/components/ic-switch/ic-switch.js +2 -1
- package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
- package/dist/collection/components/ic-switch/ic-switch.spec.js +104 -0
- package/dist/collection/components/ic-switch/ic-switch.spec.js.map +1 -0
- package/dist/collection/components/ic-tab/ic-tab.e2e.js +32 -0
- package/dist/collection/components/ic-tab/ic-tab.e2e.js.map +1 -0
- package/dist/collection/components/ic-tab/ic-tab.js +4 -0
- package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
- package/dist/collection/components/ic-tab/ic-tab.spec.js +159 -0
- package/dist/collection/components/ic-tab/ic-tab.spec.js.map +1 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.e2e.js +317 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.e2e.js.map +1 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.spec.js +369 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.spec.js.map +1 -0
- package/dist/collection/components/ic-tab-group/ic-tab-group.css +2 -2
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.spec.js +65 -0
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.spec.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.css +0 -4
- package/dist/collection/components/ic-text-field/ic-text-field.e2e.js +98 -0
- package/dist/collection/components/ic-text-field/ic-text-field.e2e.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.input.spec.js +236 -0
- package/dist/collection/components/ic-text-field/ic-text-field.input.spec.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.js +11 -12
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
- package/dist/collection/components/ic-text-field/ic-text-field.textarea.spec.js +310 -0
- package/dist/collection/components/ic-text-field/ic-text-field.textarea.spec.js.map +1 -0
- package/dist/collection/components/ic-theme/ic-theme.e2e.js +72 -0
- package/dist/collection/components/ic-theme/ic-theme.e2e.js.map +1 -0
- package/dist/collection/components/ic-theme/ic-theme.spec.js +77 -0
- package/dist/collection/components/ic-theme/ic-theme.spec.js.map +1 -0
- package/dist/collection/components/ic-toast/ic-toast.e2e.js +82 -0
- package/dist/collection/components/ic-toast/ic-toast.e2e.js.map +1 -0
- package/dist/collection/components/ic-toast/ic-toast.spec.js +278 -0
- package/dist/collection/components/ic-toast/ic-toast.spec.js.map +1 -0
- package/dist/collection/components/ic-toast-region/ic-toast-region.spec.js +62 -0
- package/dist/collection/components/ic-toast-region/ic-toast-region.spec.js.map +1 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.css +22 -8
- package/dist/collection/components/ic-tooltip/ic-tooltip.e2e.js +115 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.e2e.js.map +1 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.js +26 -27
- package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.spec.js +128 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.spec.js.map +1 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.e2e.js +42 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.e2e.js.map +1 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.mobile.e2e.js +242 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.mobile.e2e.js.map +1 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.spec.js +286 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.spec.js.map +1 -0
- package/dist/collection/components/ic-typography/ic-typography.e2e.js +36 -0
- package/dist/collection/components/ic-typography/ic-typography.e2e.js.map +1 -0
- package/dist/collection/components/ic-typography/ic-typography.spec.js +296 -0
- package/dist/collection/components/ic-typography/ic-typography.spec.js.map +1 -0
- package/dist/collection/testspec.setup.js +11 -0
- package/dist/collection/testspec.setup.js.map +1 -1
- package/dist/collection/utils/helpers.js +5 -0
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/components/helpers.js +6 -1
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-alert.js +1 -113
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-alert2.js +117 -0
- package/dist/components/ic-alert2.js.map +1 -0
- package/dist/components/ic-back-to-top.js +2 -2
- package/dist/components/ic-breadcrumb-group.js +2 -2
- package/dist/components/ic-breadcrumb2.js +1 -1
- package/dist/components/ic-button2.js +4 -3
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card.js +4 -3
- package/dist/components/ic-card.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +5 -2
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +3 -2
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +5 -2
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-classification-banner.js +1 -1
- package/dist/components/ic-data-entity.js +1 -1
- package/dist/components/ic-data-row.js +2 -2
- package/dist/components/ic-dialog.d.ts +11 -0
- package/dist/components/ic-dialog.js +357 -0
- package/dist/components/ic-dialog.js.map +1 -0
- package/dist/components/ic-divider2.js +2 -2
- package/dist/components/ic-footer-link-group.js +2 -2
- package/dist/components/ic-footer-link.js +2 -2
- package/dist/components/ic-footer.js +3 -3
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +2 -2
- package/dist/components/ic-horizontal-scroll2.js +2 -2
- package/dist/components/ic-input-component-container2.js +3 -3
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-container2.js +1 -1
- package/dist/components/ic-input-label2.js +2 -2
- package/dist/components/ic-input-validation2.js +3 -3
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link2.js +2 -2
- package/dist/components/ic-loading-indicator2.js +1 -1
- package/dist/components/ic-menu-group.js +1 -1
- package/dist/components/ic-menu-item2.js +4 -3
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +65 -26
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +2 -2
- package/dist/components/ic-navigation-group.js +44 -18
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +2 -2
- package/dist/components/ic-navigation-menu2.js +2 -2
- package/dist/components/ic-page-header.js +3 -3
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +5 -1
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination.js +3 -2
- package/dist/components/ic-pagination.js.map +1 -1
- package/dist/components/ic-popover-menu.js +3 -3
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +16 -5
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +5 -11
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +6 -3
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-section-container2.js +1 -1
- package/dist/components/ic-select.js +34 -32
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +51 -42
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +1 -1
- package/dist/components/ic-status-tag.js +3 -3
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +1 -1
- package/dist/components/ic-stepper.js +2 -2
- package/dist/components/ic-switch.js +4 -3
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +1 -1
- package/dist/components/ic-tab-group.js +3 -3
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +1 -1
- package/dist/components/ic-tab.js +5 -1
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +4 -5
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +2 -2
- package/dist/components/ic-toast-region.js +1 -1
- package/dist/components/ic-toast.js +2 -2
- package/dist/components/ic-tooltip2.js +29 -30
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +2 -2
- package/dist/components/ic-typography2.js +1 -1
- package/dist/components/index.d.ts +9 -60
- package/dist/components/index.js +1 -58
- package/dist/components/index.js.map +1 -1
- package/dist/core/core.css +41 -2
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/index.esm.js.map +1 -1
- package/dist/core/{p-de45134c.entry.js → p-04d626ee.entry.js} +2 -2
- package/dist/core/p-04d626ee.entry.js.map +1 -0
- package/dist/core/p-06321d19.js.map +1 -1
- package/dist/core/{p-050dbce8.entry.js → p-0d325b4c.entry.js} +2 -2
- package/dist/core/p-0d325b4c.entry.js.map +1 -0
- package/dist/core/{p-46371c05.entry.js → p-249af8ab.entry.js} +2 -2
- package/dist/core/p-249af8ab.entry.js.map +1 -0
- package/dist/core/{p-36e0671f.entry.js → p-29d9fea1.entry.js} +2 -2
- package/dist/core/p-29d9fea1.entry.js.map +1 -0
- package/dist/core/p-2e051e1e.entry.js +2 -0
- package/dist/core/p-2e051e1e.entry.js.map +1 -0
- package/dist/core/{p-bffa2e1a.entry.js → p-2ec49a7e.entry.js} +2 -2
- package/dist/core/p-2ec49a7e.entry.js.map +1 -0
- package/dist/core/{p-223a214f.entry.js → p-3114a4b3.entry.js} +2 -2
- package/dist/core/p-3114a4b3.entry.js.map +1 -0
- package/dist/core/{p-50421f27.entry.js → p-311c38b3.entry.js} +2 -2
- package/dist/core/p-311c38b3.entry.js.map +1 -0
- package/dist/core/p-31ccdd50.entry.js +2 -0
- package/dist/core/p-31ccdd50.entry.js.map +1 -0
- package/dist/core/p-31e80ccb.entry.js +2 -0
- package/dist/core/p-31e80ccb.entry.js.map +1 -0
- package/dist/core/p-323bce82.entry.js +2 -0
- package/dist/core/p-323bce82.entry.js.map +1 -0
- package/dist/core/{p-a9184841.entry.js → p-3918c27a.entry.js} +2 -2
- package/dist/core/p-3918c27a.entry.js.map +1 -0
- package/dist/core/p-3ce0aa02.entry.js +2 -0
- package/dist/core/p-3ce0aa02.entry.js.map +1 -0
- package/dist/core/p-44512ebe.js.map +1 -1
- package/dist/core/{p-471820e6.js → p-4a385752.js} +2 -2
- package/dist/core/p-4a385752.js.map +1 -0
- package/dist/core/{p-312c10b0.entry.js → p-4c4fa082.entry.js} +2 -2
- package/dist/core/p-4c4fa082.entry.js.map +1 -0
- package/dist/core/{p-fc7dce3d.entry.js → p-4f7b34ed.entry.js} +2 -2
- package/dist/core/p-4f7b34ed.entry.js.map +1 -0
- package/dist/core/{p-c85476c0.entry.js → p-524557bc.entry.js} +2 -2
- package/dist/core/p-524557bc.entry.js.map +1 -0
- package/dist/core/p-551986d1.entry.js +2 -0
- package/dist/core/p-551986d1.entry.js.map +1 -0
- package/dist/core/p-57460fa3.entry.js +2 -0
- package/dist/core/p-57460fa3.entry.js.map +1 -0
- package/dist/core/p-5fcd965f.entry.js +2 -0
- package/dist/core/p-5fcd965f.entry.js.map +1 -0
- package/dist/core/{p-68547339.entry.js → p-617950f8.entry.js} +2 -2
- package/dist/core/p-617950f8.entry.js.map +1 -0
- package/dist/core/{p-af815dfb.entry.js → p-68308ecd.entry.js} +2 -2
- package/dist/core/p-68308ecd.entry.js.map +1 -0
- package/dist/core/p-6c76c6ba.entry.js +2 -0
- package/dist/core/p-6c76c6ba.entry.js.map +1 -0
- package/dist/core/p-6f57b13c.js.map +1 -1
- package/dist/core/p-79914e0c.entry.js +2 -0
- package/dist/core/p-79914e0c.entry.js.map +1 -0
- package/dist/core/{p-e6217f40.entry.js → p-820e4c17.entry.js} +2 -2
- package/dist/core/p-820e4c17.entry.js.map +1 -0
- package/dist/core/{p-1585e5c1.entry.js → p-84c8c4c7.entry.js} +2 -2
- package/dist/core/p-84c8c4c7.entry.js.map +1 -0
- package/dist/core/{p-29ea6f88.entry.js → p-8911656b.entry.js} +2 -2
- package/dist/core/p-8911656b.entry.js.map +1 -0
- package/dist/core/p-8c7f4343.js.map +1 -1
- package/dist/core/p-8d4f7027.js.map +1 -1
- package/dist/core/p-97286148.entry.js +2 -0
- package/dist/core/p-97286148.entry.js.map +1 -0
- package/dist/core/{p-454b1ecd.entry.js → p-97fd0cc1.entry.js} +2 -2
- package/dist/core/p-97fd0cc1.entry.js.map +1 -0
- package/dist/core/p-a74b8476.entry.js +2 -0
- package/dist/core/p-a74b8476.entry.js.map +1 -0
- package/dist/core/{p-4dd0eb6a.entry.js → p-a9de9aba.entry.js} +2 -2
- package/dist/core/p-a9de9aba.entry.js.map +1 -0
- package/dist/core/p-ad6c4c02.entry.js +2 -0
- package/dist/core/p-ad6c4c02.entry.js.map +1 -0
- package/dist/core/{p-ca20c9c3.entry.js → p-aeef3c9d.entry.js} +2 -2
- package/dist/core/p-aeef3c9d.entry.js.map +1 -0
- package/dist/core/p-b03bd9c6.entry.js +2 -0
- package/dist/core/p-b03bd9c6.entry.js.map +1 -0
- package/dist/core/p-b0685167.entry.js +2 -0
- package/dist/core/p-b0685167.entry.js.map +1 -0
- package/dist/core/p-b35a9909.entry.js +2 -0
- package/dist/core/p-b35a9909.entry.js.map +1 -0
- package/dist/core/p-bad10f6c.entry.js +2 -0
- package/dist/core/p-bad10f6c.entry.js.map +1 -0
- package/dist/core/{p-a18c0672.entry.js → p-bda4414e.entry.js} +2 -2
- package/dist/core/p-bda4414e.entry.js.map +1 -0
- package/dist/core/p-c0333310.entry.js +2 -0
- package/dist/core/p-c0333310.entry.js.map +1 -0
- package/dist/core/{p-2e63f202.entry.js → p-c3f9fb1d.entry.js} +2 -2
- package/dist/core/p-c3f9fb1d.entry.js.map +1 -0
- package/dist/core/{p-fb5861c6.entry.js → p-ca6820dc.entry.js} +2 -2
- package/dist/core/p-ca6820dc.entry.js.map +1 -0
- package/dist/core/p-d6694b41.entry.js +2 -0
- package/dist/core/p-d6694b41.entry.js.map +1 -0
- package/dist/core/{p-70124e59.entry.js → p-da4c1409.entry.js} +2 -2
- package/dist/core/p-da4c1409.entry.js.map +1 -0
- package/dist/core/p-dbe06c3b.entry.js +2 -0
- package/dist/core/p-dbe06c3b.entry.js.map +1 -0
- package/dist/core/{p-28bc3bf0.entry.js → p-df67b151.entry.js} +2 -2
- package/dist/core/p-df67b151.entry.js.map +1 -0
- package/dist/core/{p-df1b0f17.entry.js → p-dfd31e28.entry.js} +2 -2
- package/dist/core/p-dfd31e28.entry.js.map +1 -0
- package/dist/core/{p-5e896163.entry.js → p-e3e6308b.entry.js} +2 -2
- package/dist/core/p-e3e6308b.entry.js.map +1 -0
- package/dist/core/{p-b7cf6411.entry.js → p-ea233813.entry.js} +2 -2
- package/dist/core/p-ea233813.entry.js.map +1 -0
- package/dist/core/p-ec26fc38.js.map +1 -1
- package/dist/core/{p-d2d5132d.entry.js → p-ecdcae46.entry.js} +2 -2
- package/dist/core/p-ecdcae46.entry.js.map +1 -0
- package/dist/core/{p-443052a7.entry.js → p-ef91c17e.entry.js} +2 -2
- package/dist/core/p-ef91c17e.entry.js.map +1 -0
- package/dist/core/{p-cee45622.entry.js → p-f0714432.entry.js} +2 -2
- package/dist/core/p-f0714432.entry.js.map +1 -0
- package/dist/core/p-f3053872.js +3 -0
- package/dist/core/p-f3053872.js.map +1 -0
- package/dist/core/{p-a8dc8196.entry.js → p-f381e93f.entry.js} +2 -2
- package/dist/core/p-f381e93f.entry.js.map +1 -0
- package/dist/core/p-fd482bd7.entry.js +2 -0
- package/dist/core/p-fd482bd7.entry.js.map +1 -0
- package/dist/core/p-fe2c4009.entry.js +2 -0
- package/dist/core/p-fe2c4009.entry.js.map +1 -0
- package/dist/esm/core.js +7 -3
- package/dist/esm/core.js.map +1 -1
- package/dist/esm/{helpers-73666f14.js → helpers-8e57082b.js} +7 -2
- package/dist/esm/helpers-8e57082b.js.map +1 -0
- package/dist/esm/ic-alert.entry.js +2 -2
- package/dist/esm/ic-back-to-top.entry.js +2 -2
- package/dist/esm/ic-breadcrumb-group.entry.js +2 -2
- package/dist/esm/ic-breadcrumb.entry.js +2 -2
- package/dist/esm/ic-button_3.entry.js +31 -31
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card.entry.js +4 -3
- package/dist/esm/ic-card.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +5 -2
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +3 -2
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +5 -2
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +1 -1
- package/dist/esm/ic-data-entity.entry.js +1 -1
- package/dist/esm/ic-data-row.entry.js +2 -2
- package/dist/esm/ic-dialog.entry.js +292 -0
- package/dist/esm/ic-dialog.entry.js.map +1 -0
- package/dist/esm/ic-divider.entry.js +2 -2
- package/dist/esm/ic-footer-link-group.entry.js +2 -2
- package/dist/esm/ic-footer-link.entry.js +2 -2
- package/dist/esm/ic-footer.entry.js +3 -3
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +2 -2
- package/dist/esm/ic-horizontal-scroll.entry.js +2 -2
- package/dist/esm/ic-input-component-container_3.entry.js +65 -26
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +3 -3
- package/dist/esm/ic-input-label_2.entry.js.map +1 -1
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-menu-group.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js +4 -3
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js +44 -18
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +2 -2
- package/dist/esm/ic-navigation-menu.entry.js +2 -2
- package/dist/esm/ic-page-header.entry.js +3 -3
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination-item.entry.js +6 -1
- package/dist/esm/ic-pagination-item.entry.js.map +1 -1
- package/dist/esm/ic-pagination.entry.js +3 -2
- package/dist/esm/ic-pagination.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +3 -3
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +16 -5
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +5 -11
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +6 -3
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +1 -1
- package/dist/esm/ic-select.entry.js +34 -32
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +51 -42
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +1 -1
- package/dist/esm/ic-status-tag.entry.js +3 -3
- 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 +2 -2
- package/dist/esm/ic-switch.entry.js +4 -3
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +1 -1
- package/dist/esm/ic-tab-group.entry.js +3 -3
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +1 -1
- package/dist/esm/ic-tab.entry.js +5 -1
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-text-field.entry.js +4 -5
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +2 -2
- package/dist/esm/ic-toast-region.entry.js +1 -1
- package/dist/esm/ic-toast.entry.js +2 -2
- package/dist/esm/ic-top-navigation.entry.js +2 -2
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/{index-3b144b17.js → index-a77644e1.js} +222 -44
- package/dist/esm/index-a77644e1.js.map +1 -0
- package/dist/esm/loader.js +4 -3
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/polyfills/css-shim.js +1 -1
- package/dist/types/components/ic-breadcrumb/ic-breadcrumb.types.d.ts +1 -1
- package/dist/types/components/ic-button/ic-button.types.d.ts +4 -4
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -0
- package/dist/types/components/ic-chip/ic-chip.d.ts +1 -0
- package/dist/types/components/ic-chip/ic-chip.types.d.ts +2 -2
- package/dist/types/components/ic-classification-banner/ic-classification-banner.types.d.ts +1 -1
- package/dist/types/components/ic-dialog/ic-dialog.d.ts +123 -0
- package/dist/types/components/ic-dialog/ic-dialog.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-footer/ic-footer.types.d.ts +1 -1
- package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +1 -1
- package/dist/types/components/ic-hero/ic-hero.types.d.ts +1 -1
- package/dist/types/components/ic-input-validation/ic-input-validation.types.d.ts +1 -1
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +2 -2
- package/dist/types/components/ic-menu/ic-menu.d.ts +6 -0
- package/dist/types/components/ic-menu-item/ic-menu-item.types.d.ts +1 -1
- package/dist/types/components/ic-navigation-button/ic-navigation-button.types.d.ts +1 -1
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +3 -1
- package/dist/types/components/ic-pagination/ic-pagination.d.ts +1 -1
- package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +1 -1
- package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +2 -1
- package/dist/types/components/ic-pagination-item/ic-pagination-item.types.d.ts +1 -1
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +4 -3
- package/dist/types/components/ic-radio-group/ic-radio-group.types.d.ts +7 -0
- package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +1 -3
- package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +1 -1
- package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +1 -1
- package/dist/types/components/ic-select/ic-select.d.ts +3 -3
- package/dist/types/components/ic-skeleton/ic-skeleton.types.d.ts +1 -1
- package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +2 -2
- package/dist/types/components/ic-step/ic-step.types.d.ts +3 -3
- package/dist/types/components/ic-stepper/ic-stepper.types.d.ts +1 -1
- package/dist/types/components/ic-tab/ic-tab.d.ts +1 -0
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +1 -1
- package/dist/types/components/ic-text-field/ic-text-field.types.d.ts +3 -3
- package/dist/types/components/ic-toast/ic-toast.types.d.ts +1 -1
- package/dist/types/components/ic-tooltip/ic-tooltip.types.d.ts +1 -1
- package/dist/types/components.d.ts +187 -27
- package/dist/types/stencil-public-runtime.d.ts +72 -15
- package/dist/types/testspec.setup.d.ts +9 -0
- package/dist/types/utils/helpers.d.ts +1 -0
- package/dist/types/utils/types.d.ts +22 -22
- package/hydrate/index.d.ts +17 -16
- package/hydrate/index.js +699 -262
- package/loader/index.d.ts +9 -0
- package/package.json +5 -5
- package/dist/cjs/helpers-d6b5880e.js.map +0 -1
- package/dist/cjs/index-a62312a7.js.map +0 -1
- package/dist/core/p-050dbce8.entry.js.map +0 -1
- package/dist/core/p-06962e10.entry.js +0 -2
- package/dist/core/p-06962e10.entry.js.map +0 -1
- package/dist/core/p-0969a95a.entry.js +0 -2
- package/dist/core/p-0969a95a.entry.js.map +0 -1
- package/dist/core/p-0a11ec35.entry.js +0 -2
- package/dist/core/p-0a11ec35.entry.js.map +0 -1
- package/dist/core/p-0f153569.entry.js +0 -2
- package/dist/core/p-0f153569.entry.js.map +0 -1
- package/dist/core/p-1585e5c1.entry.js.map +0 -1
- package/dist/core/p-223a214f.entry.js.map +0 -1
- package/dist/core/p-28bc3bf0.entry.js.map +0 -1
- package/dist/core/p-29ea6f88.entry.js.map +0 -1
- package/dist/core/p-2e63f202.entry.js.map +0 -1
- package/dist/core/p-2e6ea6d3.entry.js +0 -2
- package/dist/core/p-2e6ea6d3.entry.js.map +0 -1
- package/dist/core/p-2fb97a1b.entry.js +0 -2
- package/dist/core/p-2fb97a1b.entry.js.map +0 -1
- package/dist/core/p-312c10b0.entry.js.map +0 -1
- package/dist/core/p-31b4b684.entry.js +0 -2
- package/dist/core/p-31b4b684.entry.js.map +0 -1
- package/dist/core/p-32cc8827.entry.js +0 -2
- package/dist/core/p-32cc8827.entry.js.map +0 -1
- package/dist/core/p-3498db0b.entry.js +0 -2
- package/dist/core/p-3498db0b.entry.js.map +0 -1
- package/dist/core/p-36e0671f.entry.js.map +0 -1
- package/dist/core/p-443052a7.entry.js.map +0 -1
- package/dist/core/p-454b1ecd.entry.js.map +0 -1
- package/dist/core/p-46371c05.entry.js.map +0 -1
- package/dist/core/p-471820e6.js.map +0 -1
- package/dist/core/p-4dd0eb6a.entry.js.map +0 -1
- package/dist/core/p-50421f27.entry.js.map +0 -1
- package/dist/core/p-559b3d17.entry.js +0 -2
- package/dist/core/p-559b3d17.entry.js.map +0 -1
- package/dist/core/p-589f6dd3.js +0 -3
- package/dist/core/p-589f6dd3.js.map +0 -1
- package/dist/core/p-5a3f3f37.entry.js +0 -2
- package/dist/core/p-5a3f3f37.entry.js.map +0 -1
- package/dist/core/p-5e896163.entry.js.map +0 -1
- package/dist/core/p-68547339.entry.js.map +0 -1
- package/dist/core/p-6f2be5bd.entry.js +0 -2
- package/dist/core/p-6f2be5bd.entry.js.map +0 -1
- package/dist/core/p-70124e59.entry.js.map +0 -1
- package/dist/core/p-80164baa.entry.js +0 -2
- package/dist/core/p-80164baa.entry.js.map +0 -1
- package/dist/core/p-80eff050.entry.js +0 -2
- package/dist/core/p-80eff050.entry.js.map +0 -1
- package/dist/core/p-8edd3a9b.entry.js +0 -2
- package/dist/core/p-8edd3a9b.entry.js.map +0 -1
- package/dist/core/p-9715ec62.entry.js +0 -2
- package/dist/core/p-9715ec62.entry.js.map +0 -1
- package/dist/core/p-983cb33c.entry.js +0 -2
- package/dist/core/p-983cb33c.entry.js.map +0 -1
- package/dist/core/p-a18c0672.entry.js.map +0 -1
- package/dist/core/p-a8dc8196.entry.js.map +0 -1
- package/dist/core/p-a9184841.entry.js.map +0 -1
- package/dist/core/p-af815dfb.entry.js.map +0 -1
- package/dist/core/p-b69226d2.entry.js +0 -2
- package/dist/core/p-b69226d2.entry.js.map +0 -1
- package/dist/core/p-b7cf6411.entry.js.map +0 -1
- package/dist/core/p-bffa2e1a.entry.js.map +0 -1
- package/dist/core/p-c85476c0.entry.js.map +0 -1
- package/dist/core/p-ca20c9c3.entry.js.map +0 -1
- package/dist/core/p-cee45622.entry.js.map +0 -1
- package/dist/core/p-d2d5132d.entry.js.map +0 -1
- package/dist/core/p-de45134c.entry.js.map +0 -1
- package/dist/core/p-df1b0f17.entry.js.map +0 -1
- package/dist/core/p-e16e817e.entry.js +0 -2
- package/dist/core/p-e16e817e.entry.js.map +0 -1
- package/dist/core/p-e6217f40.entry.js.map +0 -1
- package/dist/core/p-faeedfd1.entry.js +0 -2
- package/dist/core/p-faeedfd1.entry.js.map +0 -1
- package/dist/core/p-fb5861c6.entry.js.map +0 -1
- package/dist/core/p-fc7dce3d.entry.js.map +0 -1
- package/dist/core/p-fd18d7a3.entry.js +0 -2
- package/dist/core/p-fd18d7a3.entry.js.map +0 -1
- package/dist/esm/helpers-73666f14.js.map +0 -1
- package/dist/esm/index-3b144b17.js.map +0 -1
@@ -0,0 +1,343 @@
|
|
1
|
+
import { newE2EPage } from "@stencil/core/testing";
|
2
|
+
beforeAll(() => {
|
3
|
+
jest.spyOn(console, "warn").mockImplementation(jest.fn());
|
4
|
+
});
|
5
|
+
describe("ic-radio-group component", () => {
|
6
|
+
it("Should have tabIndex of first option 0, when no options are selected", async () => {
|
7
|
+
const page = await newE2EPage();
|
8
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
9
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
10
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
11
|
+
</ic-radio-group>
|
12
|
+
`);
|
13
|
+
await page.waitForChanges();
|
14
|
+
const radioButton1 = await page.find("ic-radio-option[value='test1']");
|
15
|
+
const input1 = radioButton1.shadowRoot.querySelector("input");
|
16
|
+
const radioButton2 = await page.find("ic-radio-option[value='test2']");
|
17
|
+
const input2 = radioButton2.shadowRoot.querySelector("input");
|
18
|
+
expect(input1.tabIndex).toBe(0);
|
19
|
+
expect(input2.tabIndex).toBe(-1);
|
20
|
+
});
|
21
|
+
it("Should not be clickable when disabled", async () => {
|
22
|
+
const page = await newE2EPage();
|
23
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
24
|
+
<ic-radio-option value="test1" disabled></ic-radio-option>
|
25
|
+
<ic-radio-option value="test2" disabled></ic-radio-option>
|
26
|
+
</ic-radio-group>
|
27
|
+
`);
|
28
|
+
const radioButton = await page.find("ic-radio-option[value='test2']");
|
29
|
+
await radioButton.click();
|
30
|
+
await page.waitForChanges();
|
31
|
+
expect(await radioButton.getProperty("selected")).toBe(false);
|
32
|
+
});
|
33
|
+
it("Should be selected when clicked", async () => {
|
34
|
+
const page = await newE2EPage();
|
35
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
36
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
37
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
38
|
+
</ic-radio-group>
|
39
|
+
`);
|
40
|
+
let radioButton = await page.find("ic-radio-option[value='test2']");
|
41
|
+
await radioButton.click();
|
42
|
+
await page.waitForChanges();
|
43
|
+
expect(await radioButton.getProperty("selected")).toBe(true);
|
44
|
+
radioButton = await page.find("ic-radio-option[value='test2']");
|
45
|
+
const input = radioButton.shadowRoot.querySelector("input");
|
46
|
+
expect(input.tabIndex).toBe(0);
|
47
|
+
});
|
48
|
+
it("Should enable textfield when associated option is selected when static", async () => {
|
49
|
+
const page = await newE2EPage();
|
50
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
51
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
52
|
+
<ic-radio-option value="test2" selected>
|
53
|
+
<ic-text-field
|
54
|
+
slot="additional-field"
|
55
|
+
label="Test label"
|
56
|
+
></ic-text-field>
|
57
|
+
</ic-radio-option>
|
58
|
+
</ic-radio-group>
|
59
|
+
`);
|
60
|
+
const radioButton = await page.find("ic-radio-option[value='test1']");
|
61
|
+
const textfield = await page.find("ic-text-field");
|
62
|
+
expect(textfield).not.toHaveAttribute("disabled");
|
63
|
+
await radioButton.click();
|
64
|
+
await page.waitForChanges();
|
65
|
+
expect(textfield).toHaveAttribute("disabled");
|
66
|
+
});
|
67
|
+
it("Should display textfield when associated option is selected when dynamic", async () => {
|
68
|
+
const page = await newE2EPage();
|
69
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
70
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
71
|
+
<ic-radio-option value="test2" additional-field-display="dynamic">
|
72
|
+
<ic-text-field
|
73
|
+
slot="additional-field"
|
74
|
+
label="Test label"
|
75
|
+
></ic-text-field>
|
76
|
+
</ic-radio-option>
|
77
|
+
</ic-radio-group>
|
78
|
+
`);
|
79
|
+
const radioButton = await page.find("ic-radio-option[value='test2']");
|
80
|
+
let additionalFieldDisplay = await page.evaluate(() => {
|
81
|
+
const additionalField = document
|
82
|
+
.querySelector("ic-radio-option[value='test2']")
|
83
|
+
.shadowRoot.querySelector(".dynamic-container");
|
84
|
+
return window.getComputedStyle(additionalField).display;
|
85
|
+
});
|
86
|
+
expect(additionalFieldDisplay).toBe("none");
|
87
|
+
await radioButton.click();
|
88
|
+
await page.waitForChanges();
|
89
|
+
additionalFieldDisplay = await page.evaluate(() => {
|
90
|
+
const additionalField = document
|
91
|
+
.querySelector("ic-radio-option[value='test2']")
|
92
|
+
.shadowRoot.querySelector(".dynamic-container");
|
93
|
+
return window.getComputedStyle(additionalField).display;
|
94
|
+
});
|
95
|
+
expect(additionalFieldDisplay).not.toBe("none");
|
96
|
+
});
|
97
|
+
it("Should emit icChange event when radio option is selected", async () => {
|
98
|
+
const page = await newE2EPage();
|
99
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
100
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
101
|
+
<ic-radio-option value="test2" >
|
102
|
+
</ic-radio-option>
|
103
|
+
</ic-radio-group>
|
104
|
+
`);
|
105
|
+
const radioButton = await page.find("ic-radio-option[value='test2']");
|
106
|
+
const icChange = await page.spyOnEvent("icChange");
|
107
|
+
await radioButton.click();
|
108
|
+
await page.waitForChanges();
|
109
|
+
const radioElement = await page.evaluate(() => document.querySelector("ic-radio-option[value='test2']"));
|
110
|
+
expect(icChange).toHaveReceivedEventDetail({
|
111
|
+
selectedOption: {
|
112
|
+
radio: radioElement,
|
113
|
+
},
|
114
|
+
value: "test2",
|
115
|
+
});
|
116
|
+
});
|
117
|
+
it("Should emit icCheck event when radio option is selected", async () => {
|
118
|
+
const page = await newE2EPage();
|
119
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
120
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
121
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
122
|
+
</ic-radio-group>
|
123
|
+
`);
|
124
|
+
const radioButton = await page.find("ic-radio-option[value='test2']");
|
125
|
+
const icChecked = await page.spyOnEvent("icCheck");
|
126
|
+
await radioButton.click();
|
127
|
+
await page.waitForChanges();
|
128
|
+
expect(icChecked).toHaveReceivedEventDetail({
|
129
|
+
value: "test2",
|
130
|
+
});
|
131
|
+
});
|
132
|
+
it("Should select when spacebar is pressed", async () => {
|
133
|
+
const page = await newE2EPage();
|
134
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
135
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
136
|
+
<ic-radio-option value="test2" >
|
137
|
+
</ic-radio-option>
|
138
|
+
</ic-radio-group>
|
139
|
+
`);
|
140
|
+
const radioButton = await page.find("ic-radio-option[value='test1']");
|
141
|
+
expect(await radioButton.getProperty("selected")).toBe(false);
|
142
|
+
await page.keyboard.press("Tab");
|
143
|
+
await radioButton.press(" ");
|
144
|
+
await page.waitForChanges();
|
145
|
+
expect(await radioButton.getProperty("selected")).toBe(true);
|
146
|
+
const input = radioButton.shadowRoot.querySelector("input");
|
147
|
+
expect(input.tabIndex).toBe(0);
|
148
|
+
});
|
149
|
+
it("Should select next radio option down when arrow down is used", async () => {
|
150
|
+
const page = await newE2EPage();
|
151
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
152
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
153
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
154
|
+
<ic-radio-option value="test3" ></ic-radio-option>
|
155
|
+
</ic-radio-group>
|
156
|
+
`);
|
157
|
+
const radioButton1 = await page.find("ic-radio-option[value='test1']");
|
158
|
+
const radioButton2 = await page.find("ic-radio-option[value='test2']");
|
159
|
+
await page.keyboard.press("Tab");
|
160
|
+
await radioButton1.press(" ");
|
161
|
+
await page.waitForChanges();
|
162
|
+
await radioButton1.press("ArrowDown");
|
163
|
+
await page.waitForChanges();
|
164
|
+
const input = radioButton2.shadowRoot.querySelector("input");
|
165
|
+
expect(input.tabIndex).toBe(0);
|
166
|
+
});
|
167
|
+
it("Should select next radio option down when arrow right is used", async () => {
|
168
|
+
const page = await newE2EPage();
|
169
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
170
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
171
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
172
|
+
<ic-radio-option value="test3" ></ic-radio-option>
|
173
|
+
</ic-radio-group>
|
174
|
+
`);
|
175
|
+
const radioButton1 = await page.find("ic-radio-option[value='test1']");
|
176
|
+
const radioButton2 = await page.find("ic-radio-option[value='test2']");
|
177
|
+
await page.keyboard.press("Tab");
|
178
|
+
await radioButton1.press(" ");
|
179
|
+
await page.waitForChanges();
|
180
|
+
await radioButton1.press("ArrowRight");
|
181
|
+
await page.waitForChanges();
|
182
|
+
const input = radioButton2.shadowRoot.querySelector("input");
|
183
|
+
expect(input.tabIndex).toBe(0);
|
184
|
+
});
|
185
|
+
it("Should select next radio option down when arrow up is used", async () => {
|
186
|
+
const page = await newE2EPage();
|
187
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
188
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
189
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
190
|
+
<ic-radio-option value="test3" ></ic-radio-option>
|
191
|
+
</ic-radio-group>
|
192
|
+
`);
|
193
|
+
const radioButton2 = await page.find("ic-radio-option[value='test2']");
|
194
|
+
const radioButton1 = await page.find("ic-radio-option[value='test1']");
|
195
|
+
await radioButton2.click();
|
196
|
+
await page.waitForChanges();
|
197
|
+
await radioButton2.press("ArrowUp");
|
198
|
+
await page.waitForChanges();
|
199
|
+
const input = radioButton1.shadowRoot.querySelector("input");
|
200
|
+
expect(input.tabIndex).toBe(0);
|
201
|
+
});
|
202
|
+
it("Should select next radio option down when arrow left is used", async () => {
|
203
|
+
const page = await newE2EPage();
|
204
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
205
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
206
|
+
<ic-radio-option value="test2" ></ic-radio-option>
|
207
|
+
<ic-radio-option value="test3" ></ic-radio-option>
|
208
|
+
</ic-radio-group>
|
209
|
+
`);
|
210
|
+
const radioButton2 = await page.find("ic-radio-option[value='test2']");
|
211
|
+
const radioButton1 = await page.find("ic-radio-option[value='test1']");
|
212
|
+
await radioButton2.click();
|
213
|
+
await page.waitForChanges();
|
214
|
+
await radioButton2.press("ArrowLeft");
|
215
|
+
await page.waitForChanges();
|
216
|
+
const input = radioButton1.shadowRoot.querySelector("input");
|
217
|
+
expect(input.tabIndex).toBe(0);
|
218
|
+
});
|
219
|
+
it("Works on a form", async () => {
|
220
|
+
const page = await newE2EPage();
|
221
|
+
await page.setContent(` <form>
|
222
|
+
<ic-radio-group label="this is a label" name="1">
|
223
|
+
<ic-radio-option
|
224
|
+
value="valueName1"
|
225
|
+
label="Unselected / Default"
|
226
|
+
></ic-radio-option>
|
227
|
+
<ic-radio-option
|
228
|
+
value="valueName2"
|
229
|
+
label="Selected / Default"
|
230
|
+
selected
|
231
|
+
></ic-radio-option>
|
232
|
+
<ic-radio-option
|
233
|
+
value="valueName3"
|
234
|
+
label="Unselected / Disabled"
|
235
|
+
disabled
|
236
|
+
></ic-radio-option>
|
237
|
+
</ic-radio-group>
|
238
|
+
<input type="submit" value="Submit">
|
239
|
+
</form>
|
240
|
+
<script>document.querySelector('form').addEventListener('submit', (ev) => {
|
241
|
+
ev.preventDefault();
|
242
|
+
})
|
243
|
+
</script>
|
244
|
+
`);
|
245
|
+
await page.waitForChanges();
|
246
|
+
const radioButton = await page.find("ic-radio-option[value='valueName1']");
|
247
|
+
await radioButton.click();
|
248
|
+
await page.waitForChanges();
|
249
|
+
const value = await (await page.find('input[name="1"]')).getProperty("value");
|
250
|
+
expect(value).toBe("valueName1");
|
251
|
+
});
|
252
|
+
it("Passes the value of radio button correctly when already selected", async () => {
|
253
|
+
const page = await newE2EPage();
|
254
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
255
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
256
|
+
<ic-radio-option value="test2" selected ></ic-radio-option>
|
257
|
+
</ic-radio-group>
|
258
|
+
`);
|
259
|
+
await page.waitForChanges();
|
260
|
+
const value = await (await page.find('input[name="test"]')).getProperty("value");
|
261
|
+
expect(value).toBe("test2");
|
262
|
+
});
|
263
|
+
it("Passes the value of radio button and textfield correctly when already selected", async () => {
|
264
|
+
const page = await newE2EPage();
|
265
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
266
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
267
|
+
<ic-radio-option value="test2" additional-field-display="dynamic" >
|
268
|
+
<ic-text-field
|
269
|
+
slot="additional-field"
|
270
|
+
label="Test label"
|
271
|
+
></ic-text-field>
|
272
|
+
</ic-radio-option>
|
273
|
+
</ic-radio-group>
|
274
|
+
`);
|
275
|
+
const radioButton = await page.find("ic-radio-option[value='test2']");
|
276
|
+
await radioButton.click();
|
277
|
+
await page.waitForChanges();
|
278
|
+
await page.keyboard.press("Tab");
|
279
|
+
await page.waitForChanges();
|
280
|
+
await page.keyboard.press("t");
|
281
|
+
await page.keyboard.press("e");
|
282
|
+
await page.keyboard.press("s");
|
283
|
+
await page.keyboard.press("t");
|
284
|
+
await page.waitForChanges();
|
285
|
+
let value = await (await page.find('input[name="test"]')).getProperty("value");
|
286
|
+
expect(value).toBe("test");
|
287
|
+
await page.keyboard.press("Backspace");
|
288
|
+
await page.keyboard.press("Backspace");
|
289
|
+
await page.keyboard.press("Backspace");
|
290
|
+
await page.keyboard.press("Backspace");
|
291
|
+
await page.waitForChanges();
|
292
|
+
value = await (await page.find('input[name="test"]')).getProperty("value");
|
293
|
+
expect(value).toBe("test2");
|
294
|
+
});
|
295
|
+
it("Passes the value of radio button and textfield correctly when already selected and has a value in texfield", async () => {
|
296
|
+
const page = await newE2EPage();
|
297
|
+
await page.setContent(`<ic-radio-group label="test label" name="test">
|
298
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
299
|
+
<ic-radio-option value="test2" additional-field-display="dynamic" >
|
300
|
+
<ic-text-field
|
301
|
+
slot="additional-field"
|
302
|
+
label="Test label"
|
303
|
+
value="testValue1"
|
304
|
+
></ic-text-field>
|
305
|
+
</ic-radio-option>
|
306
|
+
</ic-radio-group>
|
307
|
+
`);
|
308
|
+
const radioButton = await page.find("ic-radio-option[value='test2']");
|
309
|
+
await radioButton.click();
|
310
|
+
await page.waitForChanges();
|
311
|
+
const value = await (await page.find('input[name="test"]')).getProperty("value");
|
312
|
+
expect(value).toBe("testValue1");
|
313
|
+
});
|
314
|
+
it("Should reset to initial state on form reset event", async () => {
|
315
|
+
const page = await newE2EPage();
|
316
|
+
await page.setContent(`<form><ic-radio-group label="test label" name="test">
|
317
|
+
<ic-radio-option value="test1" ></ic-radio-option>
|
318
|
+
<ic-radio-option value="test2" selected></ic-radio-option>
|
319
|
+
</ic-radio-group>
|
320
|
+
<button type="reset" id="resetButton">Reset</button>
|
321
|
+
</form>
|
322
|
+
`);
|
323
|
+
await page.waitForChanges();
|
324
|
+
let radioButton1 = await page.find("ic-radio-option[value='test1']");
|
325
|
+
let radioButton2 = await page.find("ic-radio-option[value='test2']");
|
326
|
+
expect(await radioButton1.getProperty("selected")).toBe(false);
|
327
|
+
expect(await radioButton2.getProperty("selected")).toBe(true);
|
328
|
+
await radioButton1.click();
|
329
|
+
await page.waitForChanges();
|
330
|
+
radioButton1 = await page.find("ic-radio-option[value='test1']");
|
331
|
+
radioButton2 = await page.find("ic-radio-option[value='test2']");
|
332
|
+
expect(await radioButton1.getProperty("selected")).toBe(true);
|
333
|
+
expect(await radioButton2.getProperty("selected")).toBe(false);
|
334
|
+
const resetButton = await page.find("#resetButton");
|
335
|
+
await resetButton.click();
|
336
|
+
await page.waitForChanges();
|
337
|
+
radioButton1 = await page.find("ic-radio-option[value='test1']");
|
338
|
+
radioButton2 = await page.find("ic-radio-option[value='test2']");
|
339
|
+
expect(await radioButton1.getProperty("selected")).toBe(false);
|
340
|
+
expect(await radioButton2.getProperty("selected")).toBe(true);
|
341
|
+
});
|
342
|
+
});
|
343
|
+
//# sourceMappingURL=ic-radio-group.e2e.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ic-radio-group.e2e.js","sourceRoot":"","sources":["../../../src/components/ic-radio-group/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,17 +1,17 @@
|
|
1
1
|
import { Host, h, } from "@stencil/core";
|
2
|
-
import { hasValidationStatus, isSlotUsed, onComponentRequiredPropUndefined, renderHiddenInput, } from "../../utils/helpers";
|
2
|
+
import { hasValidationStatus, isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, renderHiddenInput, } from "../../utils/helpers";
|
3
3
|
export class RadioGroup {
|
4
4
|
constructor() {
|
5
5
|
this.handleKeyDown = (event) => {
|
6
6
|
switch (event.key) {
|
7
7
|
case "ArrowDown":
|
8
8
|
case "ArrowRight":
|
9
|
-
this.radioOptions[this.getNextItemToSelect(this.selectedChild, true)].
|
9
|
+
this.radioOptions[this.getNextItemToSelect(this.selectedChild, true)].click();
|
10
10
|
event.preventDefault();
|
11
11
|
break;
|
12
12
|
case "ArrowUp":
|
13
13
|
case "ArrowLeft":
|
14
|
-
this.radioOptions[this.getNextItemToSelect(this.selectedChild, false)].
|
14
|
+
this.radioOptions[this.getNextItemToSelect(this.selectedChild, false)].click();
|
15
15
|
event.preventDefault();
|
16
16
|
}
|
17
17
|
};
|
@@ -48,8 +48,16 @@ export class RadioGroup {
|
|
48
48
|
this.selectedChild = -1;
|
49
49
|
}
|
50
50
|
selectHandler(event) {
|
51
|
+
var _a;
|
51
52
|
this.checkedValue = event.detail.value;
|
52
|
-
|
53
|
+
const selectedOption = event.target;
|
54
|
+
this.icChange.emit({
|
55
|
+
value: this.checkedValue,
|
56
|
+
selectedOption: {
|
57
|
+
radio: selectedOption,
|
58
|
+
textFieldValue: (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.querySelector("ic-text-field")) === null || _a === void 0 ? void 0 : _a.value,
|
59
|
+
},
|
60
|
+
});
|
53
61
|
if (this.radioOptions !== undefined) {
|
54
62
|
this.radioOptions.forEach((radioOption, index) => {
|
55
63
|
radioOption.selected = this.checkedValue === radioOption.value;
|
@@ -61,6 +69,9 @@ export class RadioGroup {
|
|
61
69
|
this.selectedChild > 0 ? -1 : 0;
|
62
70
|
}
|
63
71
|
}
|
72
|
+
componentWillLoad() {
|
73
|
+
removeDisabledFalse(this.disabled, this.host);
|
74
|
+
}
|
64
75
|
componentDidLoad() {
|
65
76
|
this.radioOptions = Array.from(this.host.querySelectorAll("ic-radio-option"));
|
66
77
|
this.radioOptions.forEach((radioOption, index) => {
|
@@ -314,12 +325,12 @@ export class RadioGroup {
|
|
314
325
|
"text": "Emitted when a user selects a radio."
|
315
326
|
},
|
316
327
|
"complexType": {
|
317
|
-
"original": "
|
318
|
-
"resolved": "
|
328
|
+
"original": "IcChangeEventDetail",
|
329
|
+
"resolved": "IcChangeEventDetail",
|
319
330
|
"references": {
|
320
|
-
"
|
331
|
+
"IcChangeEventDetail": {
|
321
332
|
"location": "import",
|
322
|
-
"path": "
|
333
|
+
"path": "./ic-radio-group.types"
|
323
334
|
}
|
324
335
|
}
|
325
336
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ic-radio-group.js","sourceRoot":"","sources":["../../../src/components/ic-radio-group/ic-radio-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n State,\n Listen,\n Element,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\nimport {\n hasValidationStatus,\n isSlotUsed,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport { IcInformationStatusOrEmpty, IcOrientation } from \"../../utils/types\";\nimport { IcValueEventDetail } from \"../../interface\";\n\n@Component({\n tag: \"ic-radio-group\",\n styleUrl: \"ic-radio-group.css\",\n shadow: true,\n})\nexport class RadioGroup {\n private radioOptions: HTMLIcRadioOptionElement[];\n\n @Element() host: HTMLIcRadioGroupElement;\n\n /**\n * The label for the radio group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the radio group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n /**\n * If `true`, the radio group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\n */\n @Prop({ reflect: true, mutable: true }) orientation: IcOrientation =\n \"vertical\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string;\n\n /**\n * If `true`, the small styling will be applied to the radio group.\n */\n @Prop() small: boolean = false;\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n /**\n * The checked state.\n */\n @State() checkedValue: string = \"\";\n @State() selectedChild: number = -1;\n\n /**\n * Emitted when a user selects a radio.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n @Listen(\"icCheck\")\n selectHandler(event: CustomEvent<IcValueEventDetail>): void {\n this.checkedValue = event.detail.value;\n this.icChange.emit({ value: this.checkedValue });\n\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = this.checkedValue === radioOption.value;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n }\n }\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, true)\n ].selected = true;\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, false)\n ].selected = true;\n event.preventDefault();\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numRadios = this.radioOptions.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n } else if (nextItem > numRadios) {\n nextItem = 0;\n }\n\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n componentDidLoad(): void {\n this.radioOptions = Array.from(\n this.host.querySelectorAll(\"ic-radio-option\")\n );\n\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n\n if (\n this.orientation === \"horizontal\" &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (isSlotUsed(this.radioOptions[0], \"additional-field\") ||\n isSlotUsed(this.radioOptions[1], \"additional-field\"))))\n ) {\n this.orientation = \"vertical\";\n }\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Radio Group\"\n );\n }\n\n render() {\n renderHiddenInput(\n true,\n this.host,\n this.name,\n this.checkedValue,\n this.disabled\n );\n\n return (\n <Host onKeyDown={this.handleKeyDown} class={{ small: this.small }}>\n <div\n role=\"radiogroup\"\n aria-label={`${this.label}${this.required ? \", required\" : \"\"}`}\n >\n {!this.hideLabel && (\n <ic-input-label\n class={{ [`${this.validationStatus}`]: true }}\n label={this.label}\n helperText={this.helperText}\n required={this.required}\n disabled={this.disabled}\n ></ic-input-label>\n )}\n <div class=\"radio-buttons-container\">\n <slot></slot>\n </div>\n </div>\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n ariaLiveMode=\"polite\"\n status={this.validationStatus}\n message={this.validationText}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"ic-radio-group.js","sourceRoot":"","sources":["../../../src/components/ic-radio-group/ic-radio-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n State,\n Listen,\n Element,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\nimport {\n hasValidationStatus,\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport {\n IcInformationStatusOrEmpty,\n IcOrientation,\n IcValueEventDetail,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-radio-group.types\";\n\n@Component({\n tag: \"ic-radio-group\",\n styleUrl: \"ic-radio-group.css\",\n shadow: true,\n})\nexport class RadioGroup {\n private radioOptions: HTMLIcRadioOptionElement[];\n\n @Element() host: HTMLIcRadioGroupElement;\n\n /**\n * The label for the radio group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the radio group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n /**\n * If `true`, the radio group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\n */\n @Prop({ reflect: true, mutable: true }) orientation: IcOrientation =\n \"vertical\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string;\n\n /**\n * If `true`, the small styling will be applied to the radio group.\n */\n @Prop() small: boolean = false;\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n /**\n * The checked state.\n */\n @State() checkedValue: string = \"\";\n @State() selectedChild: number = -1;\n\n /**\n * Emitted when a user selects a radio.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icCheck\")\n selectHandler(event: CustomEvent<IcValueEventDetail>): void {\n this.checkedValue = event.detail.value;\n const selectedOption = event.target as HTMLIcRadioOptionElement;\n this.icChange.emit({\n value: this.checkedValue,\n selectedOption: {\n radio: selectedOption,\n textFieldValue: selectedOption?.querySelector(\"ic-text-field\")?.value,\n },\n });\n\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = this.checkedValue === radioOption.value;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n }\n }\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, true)\n ].click();\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, false)\n ].click();\n event.preventDefault();\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numRadios = this.radioOptions.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n } else if (nextItem > numRadios) {\n nextItem = 0;\n }\n\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.host);\n }\n\n componentDidLoad(): void {\n this.radioOptions = Array.from(\n this.host.querySelectorAll(\"ic-radio-option\")\n );\n\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n\n if (\n this.orientation === \"horizontal\" &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (isSlotUsed(this.radioOptions[0], \"additional-field\") ||\n isSlotUsed(this.radioOptions[1], \"additional-field\"))))\n ) {\n this.orientation = \"vertical\";\n }\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Radio Group\"\n );\n }\n\n render() {\n renderHiddenInput(\n true,\n this.host,\n this.name,\n this.checkedValue,\n this.disabled\n );\n\n return (\n <Host onKeyDown={this.handleKeyDown} class={{ small: this.small }}>\n <div\n role=\"radiogroup\"\n aria-label={`${this.label}${this.required ? \", required\" : \"\"}`}\n >\n {!this.hideLabel && (\n <ic-input-label\n class={{ [`${this.validationStatus}`]: true }}\n label={this.label}\n helperText={this.helperText}\n required={this.required}\n disabled={this.disabled}\n ></ic-input-label>\n )}\n <div class=\"radio-buttons-container\">\n <slot></slot>\n </div>\n </div>\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n ariaLiveMode=\"polite\"\n status={this.validationStatus}\n message={this.validationText}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"]}
|