@ukic/web-components 2.0.0-alpha.121
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +21 -0
- package/dist/cjs/check-icon-999d9877.js +10 -0
- package/dist/cjs/check-icon-999d9877.js.map +1 -0
- package/dist/cjs/chevron-icon-d175fe66.js +10 -0
- package/dist/cjs/chevron-icon-d175fe66.js.map +1 -0
- package/dist/cjs/close-icon-8ccb0163.js +12 -0
- package/dist/cjs/close-icon-8ccb0163.js.map +1 -0
- package/dist/cjs/core.cjs.js +21 -0
- package/dist/cjs/core.cjs.js.map +1 -0
- package/dist/cjs/error-icon-99504103.js +18 -0
- package/dist/cjs/error-icon-99504103.js.map +1 -0
- package/dist/cjs/helpers-9d4961dc.js +430 -0
- package/dist/cjs/helpers-9d4961dc.js.map +1 -0
- package/dist/cjs/ic-alert.cjs.entry.js +91 -0
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-back-to-top.cjs.entry.js +132 -0
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +63 -0
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-breadcrumbs.cjs.entry.js +181 -0
- package/dist/cjs/ic-breadcrumbs.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-button_3.cjs.entry.js +432 -0
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-card.cjs.entry.js +87 -0
- package/dist/cjs/ic-card.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +66 -0
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-checkbox.cjs.entry.js +72 -0
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-classification-banner.cjs.entry.js +42 -0
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-data-entity.cjs.entry.js +31 -0
- package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-data-row.cjs.entry.js +74 -0
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-divider.cjs.entry.js +29 -0
- package/dist/cjs/ic-divider.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +69 -0
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer-link.cjs.entry.js +59 -0
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer.cjs.entry.js +87 -0
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-hero.cjs.entry.js +72 -0
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +485 -0
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-input-label_2.cjs.entry.js +86 -0
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-link.cjs.entry.js +69 -0
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-button.cjs.entry.js +86 -0
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-group.cjs.entry.js +240 -0
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-item.cjs.entry.js +146 -0
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +129 -0
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-page-header.cjs.entry.js +107 -0
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-radio-group.cjs.entry.js +103 -0
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-radio-option.cjs.entry.js +108 -0
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-search-bar.cjs.entry.js +393 -0
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-section-container.cjs.entry.js +29 -0
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-select.cjs.entry.js +166 -0
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-side-navigation.cjs.entry.js +384 -0
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-skeleton.cjs.entry.js +59 -0
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-status-tag.cjs.entry.js +34 -0
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-step.cjs.entry.js +59 -0
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-stepper.cjs.entry.js +96 -0
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-switch.cjs.entry.js +65 -0
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-tab-context.cjs.entry.js +226 -0
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-tab-list.cjs.entry.js +145 -0
- package/dist/cjs/ic-tab-list.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-tab-panel.cjs.entry.js +33 -0
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-tab.cjs.entry.js +73 -0
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-text-field.cjs.entry.js +203 -0
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-theme.cjs.entry.js +53 -0
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-top-navigation.cjs.entry.js +207 -0
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-typography.cjs.entry.js +28 -0
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -0
- package/dist/cjs/index-3ef30d9d.js +2459 -0
- package/dist/cjs/index-3ef30d9d.js.map +1 -0
- package/dist/cjs/index.cjs.js +4 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +23 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/popper-11d5f714.js +1803 -0
- package/dist/cjs/popper-11d5f714.js.map +1 -0
- package/dist/cjs/success-icon-887b2097.js +11 -0
- package/dist/cjs/success-icon-887b2097.js.map +1 -0
- package/dist/collection/assets/back-icon.svg +3 -0
- package/dist/collection/assets/check-icon.svg +3 -0
- package/dist/collection/assets/chevron-icon.svg +3 -0
- package/dist/collection/assets/clear-icon.svg +3 -0
- package/dist/collection/assets/close-icon.svg +5 -0
- package/dist/collection/assets/error-icon.svg +5 -0
- package/dist/collection/assets/hamburger-menu-icon.svg +5 -0
- package/dist/collection/assets/info-icon.svg +5 -0
- package/dist/collection/assets/neutral-icon.svg +5 -0
- package/dist/collection/assets/search-icon.svg +3 -0
- package/dist/collection/assets/success-icon.svg +5 -0
- package/dist/collection/assets/warning-icon.svg +5 -0
- package/dist/collection/collection-manifest.json +59 -0
- package/dist/collection/components/ic-alert/ic-alert.css +615 -0
- package/dist/collection/components/ic-alert/ic-alert.js +235 -0
- package/dist/collection/components/ic-alert/ic-alert.js.map +1 -0
- package/dist/collection/components/ic-alert/ic-alert.test.a11y.js +11 -0
- package/dist/collection/components/ic-alert/ic-alert.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-alert/ic-alert.types.js +2 -0
- package/dist/collection/components/ic-alert/ic-alert.types.js.map +1 -0
- package/dist/collection/components/ic-back-to-top/assets/ArrowUpward.svg +3 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +526 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +160 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.test.a11y.js +28 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +80 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +136 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.types.js +2 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.types.js.map +1 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs-test-examples.js +35 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs-test-examples.js.map +1 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs.css +35 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs.js +228 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs.js.map +1 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs.test.a11y.js +21 -0
- package/dist/collection/components/ic-breadcrumbs/ic-breadcrumbs.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-button/ic-button.css +840 -0
- package/dist/collection/components/ic-button/ic-button.js +613 -0
- package/dist/collection/components/ic-button/ic-button.js.map +1 -0
- package/dist/collection/components/ic-button/ic-button.test.a11y.js +11 -0
- package/dist/collection/components/ic-button/ic-button.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-button/ic-button.types.js +2 -0
- package/dist/collection/components/ic-button/ic-button.types.js.map +1 -0
- package/dist/collection/components/ic-card/ic-card.css +546 -0
- package/dist/collection/components/ic-card/ic-card.js +291 -0
- package/dist/collection/components/ic-card/ic-card.js.map +1 -0
- package/dist/collection/components/ic-card/ic-card.test.a11y.js +21 -0
- package/dist/collection/components/ic-card/ic-card.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +597 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +256 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +466 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +271 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js +16 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.types.js +2 -0
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.types.js.map +1 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +494 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +141 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.test.a11y.js +11 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.types.js +2 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.types.js.map +1 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.css +468 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.js +70 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.js.map +1 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.test.a11y.js +11 -0
- package/dist/collection/components/ic-data-entity/ic-data-entity.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-data-row/ic-data-row.css +499 -0
- package/dist/collection/components/ic-data-row/ic-data-row.js +141 -0
- package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -0
- package/dist/collection/components/ic-data-row/ic-data-row.test.a11y.js +18 -0
- package/dist/collection/components/ic-data-row/ic-data-row.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-divider/ic-divider.css +11 -0
- package/dist/collection/components/ic-divider/ic-divider.js +44 -0
- package/dist/collection/components/ic-divider/ic-divider.js.map +1 -0
- package/dist/collection/components/ic-footer/ic-footer.css +537 -0
- package/dist/collection/components/ic-footer/ic-footer.js +247 -0
- package/dist/collection/components/ic-footer/ic-footer.js.map +1 -0
- package/dist/collection/components/ic-footer/ic-footer.test.a11y.js +21 -0
- package/dist/collection/components/ic-footer/ic-footer.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-footer/ic-footer.types.js +2 -0
- package/dist/collection/components/ic-footer/ic-footer.types.js.map +1 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.css +558 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.js +103 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.test.a11y.js +21 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +522 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +113 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js +21 -0
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-hero/ic-hero.css +703 -0
- package/dist/collection/components/ic-hero/ic-hero.js +273 -0
- package/dist/collection/components/ic-hero/ic-hero.js.map +1 -0
- package/dist/collection/components/ic-hero/ic-hero.test.a11y.js +11 -0
- package/dist/collection/components/ic-hero/ic-hero.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-hero/ic-hero.types.js +2 -0
- package/dist/collection/components/ic-hero/ic-hero.types.js.map +1 -0
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +118 -0
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +208 -0
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -0
- package/dist/collection/components/ic-input-container/ic-input-container.css +5 -0
- package/dist/collection/components/ic-input-container/ic-input-container.js +66 -0
- package/dist/collection/components/ic-input-container/ic-input-container.js.map +1 -0
- package/dist/collection/components/ic-input-label/ic-input-label.css +39 -0
- package/dist/collection/components/ic-input-label/ic-input-label.js +194 -0
- package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.css +43 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.js +152 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.types.js +2 -0
- package/dist/collection/components/ic-input-validation/ic-input-validation.types.js.map +1 -0
- package/dist/collection/components/ic-link/assets/OpenInNew.svg +1 -0
- package/dist/collection/components/ic-link/ic-link.css +545 -0
- package/dist/collection/components/ic-link/ic-link.js +231 -0
- package/dist/collection/components/ic-link/ic-link.js.map +1 -0
- package/dist/collection/components/ic-link/ic-link.test.a11y.js +11 -0
- package/dist/collection/components/ic-link/ic-link.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +672 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +334 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.test.a11y.js +11 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js +2 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -0
- package/dist/collection/components/ic-menu/ic-menu.css +579 -0
- package/dist/collection/components/ic-menu/ic-menu.js +806 -0
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -0
- package/dist/collection/components/ic-menu/ic-menu.types.js +2 -0
- package/dist/collection/components/ic-menu/ic-menu.types.js.map +1 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +452 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +266 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.types.js +2 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.types.js.map +1 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +639 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +331 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.test.a11y.js +18 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +967 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +347 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.test.a11y.js +18 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +87 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +208 -0
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -0
- package/dist/collection/components/ic-page-header/ic-page-header.css +561 -0
- package/dist/collection/components/ic-page-header/ic-page-header.js +275 -0
- package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -0
- package/dist/collection/components/ic-page-header/ic-page-header.test.a11y.js +13 -0
- package/dist/collection/components/ic-page-header/ic-page-header.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.css +454 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +308 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js +16 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-radio-option/ic-radio-option.css +639 -0
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +305 -0
- package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.css +552 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.js +1127 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.test.a11y.js +11 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.types.js +2 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -0
- package/dist/collection/components/ic-section-container/ic-section-container.css +513 -0
- package/dist/collection/components/ic-section-container/ic-section-container.js +74 -0
- package/dist/collection/components/ic-section-container/ic-section-container.js.map +1 -0
- package/dist/collection/components/ic-select/assets/Check.svg +3 -0
- package/dist/collection/components/ic-select/assets/Clear.svg +3 -0
- package/dist/collection/components/ic-select/assets/Expand.svg +3 -0
- package/dist/collection/components/ic-select/ic-select.css +592 -0
- package/dist/collection/components/ic-select/ic-select.js +516 -0
- package/dist/collection/components/ic-select/ic-select.js.map +1 -0
- package/dist/collection/components/ic-select/ic-select.test.a11y.js +28 -0
- package/dist/collection/components/ic-select/ic-select.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation-test-examples.js +321 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation-test-examples.js.map +1 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +607 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +566 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.test.a11y.js +14 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js +2 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.css +495 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.js +112 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.test.a11y.js +11 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.types.js +2 -0
- package/dist/collection/components/ic-skeleton/ic-skeleton.types.js.map +1 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +499 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.js +119 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.test.a11y.js +11 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.types.js +2 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.types.js.map +1 -0
- package/dist/collection/components/ic-step/ic-step.css +146 -0
- package/dist/collection/components/ic-step/ic-step.js +160 -0
- package/dist/collection/components/ic-step/ic-step.js.map +1 -0
- package/dist/collection/components/ic-step/ic-step.types.js +2 -0
- package/dist/collection/components/ic-step/ic-step.types.js.map +1 -0
- package/dist/collection/components/ic-stepper/ic-stepper.css +14 -0
- package/dist/collection/components/ic-stepper/ic-stepper.js +147 -0
- package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -0
- package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js +24 -0
- package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-stepper/ic-stepper.types.js +2 -0
- package/dist/collection/components/ic-stepper/ic-stepper.types.js.map +1 -0
- package/dist/collection/components/ic-switch/ic-switch.css +626 -0
- package/dist/collection/components/ic-switch/ic-switch.js +288 -0
- package/dist/collection/components/ic-switch/ic-switch.js.map +1 -0
- package/dist/collection/components/ic-switch/ic-switch.test.a11y.js +11 -0
- package/dist/collection/components/ic-switch/ic-switch.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-switch/ic-switch.types.js +2 -0
- package/dist/collection/components/ic-switch/ic-switch.types.js.map +1 -0
- package/dist/collection/components/ic-tab/ic-tab.css +511 -0
- package/dist/collection/components/ic-tab/ic-tab.js +245 -0
- package/dist/collection/components/ic-tab/ic-tab.js.map +1 -0
- package/dist/collection/components/ic-tab/ic-tab.types.js +2 -0
- package/dist/collection/components/ic-tab/ic-tab.types.js.map +1 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.js +337 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js +19 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-tab-list/assets/left-arrow.svg +3 -0
- package/dist/collection/components/ic-tab-list/assets/right-arrow.svg +3 -0
- package/dist/collection/components/ic-tab-list/ic-tab-list.css +139 -0
- package/dist/collection/components/ic-tab-list/ic-tab-list.js +258 -0
- package/dist/collection/components/ic-tab-list/ic-tab-list.js.map +1 -0
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +3 -0
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +115 -0
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.css +556 -0
- package/dist/collection/components/ic-text-field/ic-text-field.js +1006 -0
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.test.a11y.js +33 -0
- package/dist/collection/components/ic-text-field/ic-text-field.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-text-field/ic-text-field.types.js +2 -0
- package/dist/collection/components/ic-text-field/ic-text-field.types.js.map +1 -0
- package/dist/collection/components/ic-theme/ic-theme.js +93 -0
- package/dist/collection/components/ic-theme/ic-theme.js.map +1 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.css +538 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.js +192 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.test.a11y.js +15 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.types.js +2 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.types.js.map +1 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +736 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +411 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js +23 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-typography/ic-typography.css +543 -0
- package/dist/collection/components/ic-typography/ic-typography.js +73 -0
- package/dist/collection/components/ic-typography/ic-typography.js.map +1 -0
- package/dist/collection/components/ic-typography/ic-typography.test.a11y.js +11 -0
- package/dist/collection/components/ic-typography/ic-typography.test.a11y.js.map +1 -0
- package/dist/collection/index.js +2 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/testspec.setup.js +32 -0
- package/dist/collection/testspec.setup.js.map +1 -0
- package/dist/collection/utils/constants.js +44 -0
- package/dist/collection/utils/constants.js.map +1 -0
- package/dist/collection/utils/helpers.js +339 -0
- package/dist/collection/utils/helpers.js.map +1 -0
- package/dist/collection/utils/testa11y.helpers.js +8 -0
- package/dist/collection/utils/testa11y.helpers.js.map +1 -0
- package/dist/collection/utils/types.js +13 -0
- package/dist/collection/utils/types.js.map +1 -0
- package/dist/components/check-icon.js +8 -0
- package/dist/components/check-icon.js.map +1 -0
- package/dist/components/chevron-icon.js +8 -0
- package/dist/components/chevron-icon.js.map +1 -0
- package/dist/components/close-icon.js +10 -0
- package/dist/components/close-icon.js.map +1 -0
- package/dist/components/error-icon.js +15 -0
- package/dist/components/error-icon.js.map +1 -0
- package/dist/components/helpers.js +397 -0
- package/dist/components/helpers.js.map +1 -0
- package/dist/components/ic-alert.d.ts +11 -0
- package/dist/components/ic-alert.js +138 -0
- package/dist/components/ic-alert.js.map +1 -0
- package/dist/components/ic-back-to-top.d.ts +11 -0
- package/dist/components/ic-back-to-top.js +157 -0
- package/dist/components/ic-back-to-top.js.map +1 -0
- package/dist/components/ic-breadcrumb.d.ts +11 -0
- package/dist/components/ic-breadcrumb.js +8 -0
- package/dist/components/ic-breadcrumb.js.map +1 -0
- package/dist/components/ic-breadcrumb2.js +85 -0
- package/dist/components/ic-breadcrumb2.js.map +1 -0
- package/dist/components/ic-breadcrumbs.d.ts +11 -0
- package/dist/components/ic-breadcrumbs.js +212 -0
- package/dist/components/ic-breadcrumbs.js.map +1 -0
- package/dist/components/ic-button.d.ts +11 -0
- package/dist/components/ic-button.js +8 -0
- package/dist/components/ic-button.js.map +1 -0
- package/dist/components/ic-button2.js +243 -0
- package/dist/components/ic-button2.js.map +1 -0
- package/dist/components/ic-card.d.ts +11 -0
- package/dist/components/ic-card.js +121 -0
- package/dist/components/ic-card.js.map +1 -0
- package/dist/components/ic-checkbox-group.d.ts +11 -0
- package/dist/components/ic-checkbox-group.js +109 -0
- package/dist/components/ic-checkbox-group.js.map +1 -0
- package/dist/components/ic-checkbox.d.ts +11 -0
- package/dist/components/ic-checkbox.js +102 -0
- package/dist/components/ic-checkbox.js.map +1 -0
- package/dist/components/ic-classification-banner.d.ts +11 -0
- package/dist/components/ic-classification-banner.js +68 -0
- package/dist/components/ic-classification-banner.js.map +1 -0
- package/dist/components/ic-data-entity.d.ts +11 -0
- package/dist/components/ic-data-entity.js +54 -0
- package/dist/components/ic-data-entity.js.map +1 -0
- package/dist/components/ic-data-row.d.ts +11 -0
- package/dist/components/ic-data-row.js +100 -0
- package/dist/components/ic-data-row.js.map +1 -0
- package/dist/components/ic-divider.d.ts +11 -0
- package/dist/components/ic-divider.js +8 -0
- package/dist/components/ic-divider.js.map +1 -0
- package/dist/components/ic-divider2.js +41 -0
- package/dist/components/ic-divider2.js.map +1 -0
- package/dist/components/ic-footer-link-group.d.ts +11 -0
- package/dist/components/ic-footer-link-group.js +101 -0
- package/dist/components/ic-footer-link-group.js.map +1 -0
- package/dist/components/ic-footer-link.d.ts +11 -0
- package/dist/components/ic-footer-link.js +78 -0
- package/dist/components/ic-footer-link.js.map +1 -0
- package/dist/components/ic-footer.d.ts +11 -0
- package/dist/components/ic-footer.js +122 -0
- package/dist/components/ic-footer.js.map +1 -0
- package/dist/components/ic-hero.d.ts +11 -0
- package/dist/components/ic-hero.js +112 -0
- package/dist/components/ic-hero.js.map +1 -0
- package/dist/components/ic-input-component-container.d.ts +11 -0
- package/dist/components/ic-input-component-container.js +8 -0
- package/dist/components/ic-input-component-container.js.map +1 -0
- package/dist/components/ic-input-component-container2.js +71 -0
- package/dist/components/ic-input-component-container2.js.map +1 -0
- package/dist/components/ic-input-container.d.ts +11 -0
- package/dist/components/ic-input-container.js +8 -0
- package/dist/components/ic-input-container.js.map +1 -0
- package/dist/components/ic-input-container2.js +40 -0
- package/dist/components/ic-input-container2.js.map +1 -0
- package/dist/components/ic-input-label.d.ts +11 -0
- package/dist/components/ic-input-label.js +8 -0
- package/dist/components/ic-input-label.js.map +1 -0
- package/dist/components/ic-input-label2.js +74 -0
- package/dist/components/ic-input-label2.js.map +1 -0
- package/dist/components/ic-input-validation.d.ts +11 -0
- package/dist/components/ic-input-validation.js +8 -0
- package/dist/components/ic-input-validation.js.map +1 -0
- package/dist/components/ic-input-validation2.js +68 -0
- package/dist/components/ic-input-validation2.js.map +1 -0
- package/dist/components/ic-link.d.ts +11 -0
- package/dist/components/ic-link.js +8 -0
- package/dist/components/ic-link.js.map +1 -0
- package/dist/components/ic-link2.js +89 -0
- package/dist/components/ic-link2.js.map +1 -0
- package/dist/components/ic-loading-indicator.d.ts +11 -0
- package/dist/components/ic-loading-indicator.js +8 -0
- package/dist/components/ic-loading-indicator.js.map +1 -0
- package/dist/components/ic-loading-indicator2.js +158 -0
- package/dist/components/ic-loading-indicator2.js.map +1 -0
- package/dist/components/ic-menu.d.ts +11 -0
- package/dist/components/ic-menu.js +8 -0
- package/dist/components/ic-menu.js.map +1 -0
- package/dist/components/ic-menu2.js +461 -0
- package/dist/components/ic-menu2.js.map +1 -0
- package/dist/components/ic-navigation-button.d.ts +11 -0
- package/dist/components/ic-navigation-button.js +135 -0
- package/dist/components/ic-navigation-button.js.map +1 -0
- package/dist/components/ic-navigation-group.d.ts +11 -0
- package/dist/components/ic-navigation-group.js +271 -0
- package/dist/components/ic-navigation-group.js.map +1 -0
- package/dist/components/ic-navigation-item.d.ts +11 -0
- package/dist/components/ic-navigation-item.js +188 -0
- package/dist/components/ic-navigation-item.js.map +1 -0
- package/dist/components/ic-navigation-menu.d.ts +11 -0
- package/dist/components/ic-navigation-menu.js +8 -0
- package/dist/components/ic-navigation-menu.js.map +1 -0
- package/dist/components/ic-navigation-menu2.js +167 -0
- package/dist/components/ic-navigation-menu2.js.map +1 -0
- package/dist/components/ic-page-header.d.ts +11 -0
- package/dist/components/ic-page-header.js +145 -0
- package/dist/components/ic-page-header.js.map +1 -0
- package/dist/components/ic-radio-group.d.ts +11 -0
- package/dist/components/ic-radio-group.js +147 -0
- package/dist/components/ic-radio-group.js.map +1 -0
- package/dist/components/ic-radio-option.d.ts +11 -0
- package/dist/components/ic-radio-option.js +137 -0
- package/dist/components/ic-radio-option.js.map +1 -0
- package/dist/components/ic-search-bar.d.ts +11 -0
- package/dist/components/ic-search-bar.js +500 -0
- package/dist/components/ic-search-bar.js.map +1 -0
- package/dist/components/ic-section-container.d.ts +11 -0
- package/dist/components/ic-section-container.js +8 -0
- package/dist/components/ic-section-container.js.map +1 -0
- package/dist/components/ic-section-container2.js +43 -0
- package/dist/components/ic-section-container2.js.map +1 -0
- package/dist/components/ic-select.d.ts +11 -0
- package/dist/components/ic-select.js +253 -0
- package/dist/components/ic-select.js.map +1 -0
- package/dist/components/ic-side-navigation.d.ts +11 -0
- package/dist/components/ic-side-navigation.js +444 -0
- package/dist/components/ic-side-navigation.js.map +1 -0
- package/dist/components/ic-skeleton.d.ts +11 -0
- package/dist/components/ic-skeleton.js +80 -0
- package/dist/components/ic-skeleton.js.map +1 -0
- package/dist/components/ic-status-tag.d.ts +11 -0
- package/dist/components/ic-status-tag.js +59 -0
- package/dist/components/ic-status-tag.js.map +1 -0
- package/dist/components/ic-step.d.ts +11 -0
- package/dist/components/ic-step.js +85 -0
- package/dist/components/ic-step.js.map +1 -0
- package/dist/components/ic-stepper.d.ts +11 -0
- package/dist/components/ic-stepper.js +115 -0
- package/dist/components/ic-stepper.js.map +1 -0
- package/dist/components/ic-switch.d.ts +11 -0
- package/dist/components/ic-switch.js +102 -0
- package/dist/components/ic-switch.js.map +1 -0
- package/dist/components/ic-tab-context.d.ts +11 -0
- package/dist/components/ic-tab-context.js +245 -0
- package/dist/components/ic-tab-context.js.map +1 -0
- package/dist/components/ic-tab-list.d.ts +11 -0
- package/dist/components/ic-tab-list.js +180 -0
- package/dist/components/ic-tab-list.js.map +1 -0
- package/dist/components/ic-tab-panel.d.ts +11 -0
- package/dist/components/ic-tab-panel.js +52 -0
- package/dist/components/ic-tab-panel.js.map +1 -0
- package/dist/components/ic-tab.d.ts +11 -0
- package/dist/components/ic-tab.js +100 -0
- package/dist/components/ic-tab.js.map +1 -0
- package/dist/components/ic-text-field.d.ts +11 -0
- package/dist/components/ic-text-field.js +8 -0
- package/dist/components/ic-text-field.js.map +1 -0
- package/dist/components/ic-text-field2.js +282 -0
- package/dist/components/ic-text-field2.js.map +1 -0
- package/dist/components/ic-theme.d.ts +11 -0
- package/dist/components/ic-theme.js +69 -0
- package/dist/components/ic-theme.js.map +1 -0
- package/dist/components/ic-tooltip.d.ts +11 -0
- package/dist/components/ic-tooltip.js +8 -0
- package/dist/components/ic-tooltip.js.map +1 -0
- package/dist/components/ic-tooltip2.js +149 -0
- package/dist/components/ic-tooltip2.js.map +1 -0
- package/dist/components/ic-top-navigation.d.ts +11 -0
- package/dist/components/ic-top-navigation.js +273 -0
- package/dist/components/ic-top-navigation.js.map +1 -0
- package/dist/components/ic-typography.d.ts +11 -0
- package/dist/components/ic-typography.js +8 -0
- package/dist/components/ic-typography.js.map +1 -0
- package/dist/components/ic-typography2.js +42 -0
- package/dist/components/ic-typography2.js.map +1 -0
- package/dist/components/index.d.ts +69 -0
- package/dist/components/index.js +51 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/popper.js +1801 -0
- package/dist/components/popper.js.map +1 -0
- package/dist/components/success-icon.js +9 -0
- package/dist/components/success-icon.js.map +1 -0
- package/dist/core/core.css +57 -0
- package/dist/core/core.esm.js +2 -0
- package/dist/core/core.esm.js.map +1 -0
- package/dist/core/index.esm.js +2 -0
- package/dist/core/index.esm.js.map +1 -0
- package/dist/core/p-012dc33c.entry.js +2 -0
- package/dist/core/p-012dc33c.entry.js.map +1 -0
- package/dist/core/p-0d4ac3c9.entry.js +2 -0
- package/dist/core/p-0d4ac3c9.entry.js.map +1 -0
- package/dist/core/p-0ebbf9e7.entry.js +2 -0
- package/dist/core/p-0ebbf9e7.entry.js.map +1 -0
- package/dist/core/p-13854b65.entry.js +2 -0
- package/dist/core/p-13854b65.entry.js.map +1 -0
- package/dist/core/p-17420c90.entry.js +2 -0
- package/dist/core/p-17420c90.entry.js.map +1 -0
- package/dist/core/p-1e7b4310.js +2 -0
- package/dist/core/p-1e7b4310.js.map +1 -0
- package/dist/core/p-263018da.entry.js +2 -0
- package/dist/core/p-263018da.entry.js.map +1 -0
- package/dist/core/p-28ef3fe0.entry.js +2 -0
- package/dist/core/p-28ef3fe0.entry.js.map +1 -0
- package/dist/core/p-3b9d4007.entry.js +2 -0
- package/dist/core/p-3b9d4007.entry.js.map +1 -0
- package/dist/core/p-43e646c6.entry.js +2 -0
- package/dist/core/p-43e646c6.entry.js.map +1 -0
- package/dist/core/p-44355e34.entry.js +2 -0
- package/dist/core/p-44355e34.entry.js.map +1 -0
- package/dist/core/p-44512ebe.js +2 -0
- package/dist/core/p-44512ebe.js.map +1 -0
- package/dist/core/p-44af91df.entry.js +2 -0
- package/dist/core/p-44af91df.entry.js.map +1 -0
- package/dist/core/p-4b1b46f5.entry.js +2 -0
- package/dist/core/p-4b1b46f5.entry.js.map +1 -0
- package/dist/core/p-4b692529.entry.js +2 -0
- package/dist/core/p-4b692529.entry.js.map +1 -0
- package/dist/core/p-4cf60a22.entry.js +2 -0
- package/dist/core/p-4cf60a22.entry.js.map +1 -0
- package/dist/core/p-4fba6cae.entry.js +2 -0
- package/dist/core/p-4fba6cae.entry.js.map +1 -0
- package/dist/core/p-5316e421.entry.js +2 -0
- package/dist/core/p-5316e421.entry.js.map +1 -0
- package/dist/core/p-5d3dd182.entry.js +2 -0
- package/dist/core/p-5d3dd182.entry.js.map +1 -0
- package/dist/core/p-5e0b88fa.entry.js +2 -0
- package/dist/core/p-5e0b88fa.entry.js.map +1 -0
- package/dist/core/p-6be5e06b.entry.js +2 -0
- package/dist/core/p-6be5e06b.entry.js.map +1 -0
- package/dist/core/p-7152788d.entry.js +2 -0
- package/dist/core/p-7152788d.entry.js.map +1 -0
- package/dist/core/p-79905074.entry.js +2 -0
- package/dist/core/p-79905074.entry.js.map +1 -0
- package/dist/core/p-7ed79493.entry.js +2 -0
- package/dist/core/p-7ed79493.entry.js.map +1 -0
- package/dist/core/p-7f6ba60a.entry.js +2 -0
- package/dist/core/p-7f6ba60a.entry.js.map +1 -0
- package/dist/core/p-836c93b1.entry.js +2 -0
- package/dist/core/p-836c93b1.entry.js.map +1 -0
- package/dist/core/p-85436343.entry.js +2 -0
- package/dist/core/p-85436343.entry.js.map +1 -0
- package/dist/core/p-85dc9100.entry.js +2 -0
- package/dist/core/p-85dc9100.entry.js.map +1 -0
- package/dist/core/p-8a677ff1.entry.js +2 -0
- package/dist/core/p-8a677ff1.entry.js.map +1 -0
- package/dist/core/p-8af2a343.entry.js +2 -0
- package/dist/core/p-8af2a343.entry.js.map +1 -0
- package/dist/core/p-a3df537f.entry.js +2 -0
- package/dist/core/p-a3df537f.entry.js.map +1 -0
- package/dist/core/p-a968ff18.entry.js +2 -0
- package/dist/core/p-a968ff18.entry.js.map +1 -0
- package/dist/core/p-ae6aa67f.js +2 -0
- package/dist/core/p-ae6aa67f.js.map +1 -0
- package/dist/core/p-b1d83eb6.entry.js +2 -0
- package/dist/core/p-b1d83eb6.entry.js.map +1 -0
- package/dist/core/p-b858dc5a.entry.js +2 -0
- package/dist/core/p-b858dc5a.entry.js.map +1 -0
- package/dist/core/p-b9253509.entry.js +2 -0
- package/dist/core/p-b9253509.entry.js.map +1 -0
- package/dist/core/p-bbe0b521.entry.js +2 -0
- package/dist/core/p-bbe0b521.entry.js.map +1 -0
- package/dist/core/p-bdd2f166.entry.js +2 -0
- package/dist/core/p-bdd2f166.entry.js.map +1 -0
- package/dist/core/p-bddb885a.entry.js +2 -0
- package/dist/core/p-bddb885a.entry.js.map +1 -0
- package/dist/core/p-bf5717ca.js +2 -0
- package/dist/core/p-bf5717ca.js.map +1 -0
- package/dist/core/p-c09e9589.entry.js +2 -0
- package/dist/core/p-c09e9589.entry.js.map +1 -0
- package/dist/core/p-d10ce0a7.entry.js +2 -0
- package/dist/core/p-d10ce0a7.entry.js.map +1 -0
- package/dist/core/p-d198ae1f.entry.js +2 -0
- package/dist/core/p-d198ae1f.entry.js.map +1 -0
- package/dist/core/p-dc79694a.entry.js +2 -0
- package/dist/core/p-dc79694a.entry.js.map +1 -0
- package/dist/core/p-e28af65b.js +2 -0
- package/dist/core/p-e28af65b.js.map +1 -0
- package/dist/core/p-e5a09372.js +2 -0
- package/dist/core/p-e5a09372.js.map +1 -0
- package/dist/core/p-ec26fc38.js +2 -0
- package/dist/core/p-ec26fc38.js.map +1 -0
- package/dist/core/p-ed1d8712.entry.js +2 -0
- package/dist/core/p-ed1d8712.entry.js.map +1 -0
- package/dist/core/p-f7828fde.entry.js +2 -0
- package/dist/core/p-f7828fde.entry.js.map +1 -0
- package/dist/core/p-f9370be6.js +3 -0
- package/dist/core/p-f9370be6.js.map +1 -0
- package/dist/core/p-fba2f052.entry.js +2 -0
- package/dist/core/p-fba2f052.entry.js.map +1 -0
- package/dist/esm/check-icon-53f1d9e5.js +8 -0
- package/dist/esm/check-icon-53f1d9e5.js.map +1 -0
- package/dist/esm/chevron-icon-5b38c60a.js +8 -0
- package/dist/esm/chevron-icon-5b38c60a.js.map +1 -0
- package/dist/esm/close-icon-2f02b42a.js +10 -0
- package/dist/esm/close-icon-2f02b42a.js.map +1 -0
- package/dist/esm/core.js +19 -0
- package/dist/esm/core.js.map +1 -0
- package/dist/esm/error-icon-6046a380.js +15 -0
- package/dist/esm/error-icon-6046a380.js.map +1 -0
- package/dist/esm/helpers-db00eae1.js +397 -0
- package/dist/esm/helpers-db00eae1.js.map +1 -0
- package/dist/esm/ic-alert.entry.js +87 -0
- package/dist/esm/ic-alert.entry.js.map +1 -0
- package/dist/esm/ic-back-to-top.entry.js +128 -0
- package/dist/esm/ic-back-to-top.entry.js.map +1 -0
- package/dist/esm/ic-breadcrumb.entry.js +59 -0
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -0
- package/dist/esm/ic-breadcrumbs.entry.js +177 -0
- package/dist/esm/ic-breadcrumbs.entry.js.map +1 -0
- package/dist/esm/ic-button_3.entry.js +426 -0
- package/dist/esm/ic-button_3.entry.js.map +1 -0
- package/dist/esm/ic-card.entry.js +83 -0
- package/dist/esm/ic-card.entry.js.map +1 -0
- package/dist/esm/ic-checkbox-group.entry.js +62 -0
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -0
- package/dist/esm/ic-checkbox.entry.js +68 -0
- package/dist/esm/ic-checkbox.entry.js.map +1 -0
- package/dist/esm/ic-classification-banner.entry.js +38 -0
- package/dist/esm/ic-classification-banner.entry.js.map +1 -0
- package/dist/esm/ic-data-entity.entry.js +27 -0
- package/dist/esm/ic-data-entity.entry.js.map +1 -0
- package/dist/esm/ic-data-row.entry.js +70 -0
- package/dist/esm/ic-data-row.entry.js.map +1 -0
- package/dist/esm/ic-divider.entry.js +25 -0
- package/dist/esm/ic-divider.entry.js.map +1 -0
- package/dist/esm/ic-footer-link-group.entry.js +65 -0
- package/dist/esm/ic-footer-link-group.entry.js.map +1 -0
- package/dist/esm/ic-footer-link.entry.js +55 -0
- package/dist/esm/ic-footer-link.entry.js.map +1 -0
- package/dist/esm/ic-footer.entry.js +83 -0
- package/dist/esm/ic-footer.entry.js.map +1 -0
- package/dist/esm/ic-hero.entry.js +68 -0
- package/dist/esm/ic-hero.entry.js.map +1 -0
- package/dist/esm/ic-input-component-container_3.entry.js +479 -0
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -0
- package/dist/esm/ic-input-label_2.entry.js +81 -0
- package/dist/esm/ic-input-label_2.entry.js.map +1 -0
- package/dist/esm/ic-link.entry.js +65 -0
- package/dist/esm/ic-link.entry.js.map +1 -0
- package/dist/esm/ic-navigation-button.entry.js +82 -0
- package/dist/esm/ic-navigation-button.entry.js.map +1 -0
- package/dist/esm/ic-navigation-group.entry.js +236 -0
- package/dist/esm/ic-navigation-group.entry.js.map +1 -0
- package/dist/esm/ic-navigation-item.entry.js +142 -0
- package/dist/esm/ic-navigation-item.entry.js.map +1 -0
- package/dist/esm/ic-navigation-menu.entry.js +125 -0
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -0
- package/dist/esm/ic-page-header.entry.js +103 -0
- package/dist/esm/ic-page-header.entry.js.map +1 -0
- package/dist/esm/ic-radio-group.entry.js +99 -0
- package/dist/esm/ic-radio-group.entry.js.map +1 -0
- package/dist/esm/ic-radio-option.entry.js +104 -0
- package/dist/esm/ic-radio-option.entry.js.map +1 -0
- package/dist/esm/ic-search-bar.entry.js +389 -0
- package/dist/esm/ic-search-bar.entry.js.map +1 -0
- package/dist/esm/ic-section-container.entry.js +25 -0
- package/dist/esm/ic-section-container.entry.js.map +1 -0
- package/dist/esm/ic-select.entry.js +162 -0
- package/dist/esm/ic-select.entry.js.map +1 -0
- package/dist/esm/ic-side-navigation.entry.js +380 -0
- package/dist/esm/ic-side-navigation.entry.js.map +1 -0
- package/dist/esm/ic-skeleton.entry.js +55 -0
- package/dist/esm/ic-skeleton.entry.js.map +1 -0
- package/dist/esm/ic-status-tag.entry.js +30 -0
- package/dist/esm/ic-status-tag.entry.js.map +1 -0
- package/dist/esm/ic-step.entry.js +55 -0
- package/dist/esm/ic-step.entry.js.map +1 -0
- package/dist/esm/ic-stepper.entry.js +92 -0
- package/dist/esm/ic-stepper.entry.js.map +1 -0
- package/dist/esm/ic-switch.entry.js +61 -0
- package/dist/esm/ic-switch.entry.js.map +1 -0
- package/dist/esm/ic-tab-context.entry.js +222 -0
- package/dist/esm/ic-tab-context.entry.js.map +1 -0
- package/dist/esm/ic-tab-list.entry.js +141 -0
- package/dist/esm/ic-tab-list.entry.js.map +1 -0
- package/dist/esm/ic-tab-panel.entry.js +29 -0
- package/dist/esm/ic-tab-panel.entry.js.map +1 -0
- package/dist/esm/ic-tab.entry.js +69 -0
- package/dist/esm/ic-tab.entry.js.map +1 -0
- package/dist/esm/ic-text-field.entry.js +199 -0
- package/dist/esm/ic-text-field.entry.js.map +1 -0
- package/dist/esm/ic-theme.entry.js +49 -0
- package/dist/esm/ic-theme.entry.js.map +1 -0
- package/dist/esm/ic-top-navigation.entry.js +203 -0
- package/dist/esm/ic-top-navigation.entry.js.map +1 -0
- package/dist/esm/ic-typography.entry.js +24 -0
- package/dist/esm/ic-typography.entry.js.map +1 -0
- package/dist/esm/index-1500de1f.js +2431 -0
- package/dist/esm/index-1500de1f.js.map +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +19 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/polyfills/core-js.js +11 -0
- package/dist/esm/polyfills/css-shim.js +1 -0
- package/dist/esm/polyfills/dom.js +79 -0
- package/dist/esm/polyfills/es5-html-element.js +1 -0
- package/dist/esm/polyfills/index.js +34 -0
- package/dist/esm/polyfills/system.js +6 -0
- package/dist/esm/popper-f860750c.js +1801 -0
- package/dist/esm/popper-f860750c.js.map +1 -0
- package/dist/esm/success-icon-2f71b115.js +9 -0
- package/dist/esm/success-icon-2f71b115.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/types/components/ic-alert/ic-alert.d.ts +44 -0
- package/dist/types/components/ic-alert/ic-alert.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-alert/ic-alert.types.d.ts +1 -0
- package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +24 -0
- package/dist/types/components/ic-back-to-top/ic-back-to-top.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +26 -0
- package/dist/types/components/ic-breadcrumb/ic-breadcrumb.types.d.ts +1 -0
- package/dist/types/components/ic-breadcrumbs/ic-breadcrumbs-test-examples.d.ts +2 -0
- package/dist/types/components/ic-breadcrumbs/ic-breadcrumbs.d.ts +33 -0
- package/dist/types/components/ic-breadcrumbs/ic-breadcrumbs.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-button/ic-button.d.ts +111 -0
- package/dist/types/components/ic-button/ic-button.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-button/ic-button.types.d.ts +5 -0
- package/dist/types/components/ic-card/ic-card.d.ts +58 -0
- package/dist/types/components/ic-card/ic-card.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +50 -0
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +51 -0
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.types.d.ts +3 -0
- package/dist/types/components/ic-classification-banner/ic-classification-banner.d.ts +24 -0
- package/dist/types/components/ic-classification-banner/ic-classification-banner.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-classification-banner/ic-classification-banner.types.d.ts +1 -0
- package/dist/types/components/ic-data-entity/ic-data-entity.d.ts +12 -0
- package/dist/types/components/ic-data-entity/ic-data-entity.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-data-row/ic-data-row.d.ts +31 -0
- package/dist/types/components/ic-data-row/ic-data-row.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-divider/ic-divider.d.ts +6 -0
- package/dist/types/components/ic-footer/ic-footer.d.ts +52 -0
- package/dist/types/components/ic-footer/ic-footer.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-footer/ic-footer.types.d.ts +1 -0
- package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +21 -0
- package/dist/types/components/ic-footer-link/ic-footer-link.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +19 -0
- package/dist/types/components/ic-footer-link-group/ic-footer-link-group.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-hero/ic-hero.d.ts +57 -0
- package/dist/types/components/ic-hero/ic-hero.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-hero/ic-hero.types.d.ts +1 -0
- package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +40 -0
- package/dist/types/components/ic-input-container/ic-input-container.d.ts +11 -0
- package/dist/types/components/ic-input-label/ic-input-label.d.ts +36 -0
- package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +30 -0
- package/dist/types/components/ic-input-validation/ic-input-validation.types.d.ts +1 -0
- package/dist/types/components/ic-link/ic-link.d.ts +44 -0
- package/dist/types/components/ic-link/ic-link.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +66 -0
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +3 -0
- package/dist/types/components/ic-menu/ic-menu.d.ts +116 -0
- package/dist/types/components/ic-menu/ic-menu.types.d.ts +11 -0
- package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +53 -0
- package/dist/types/components/ic-navigation-button/ic-navigation-button.types.d.ts +1 -0
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +56 -0
- package/dist/types/components/ic-navigation-group/ic-navigation-group.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +65 -0
- package/dist/types/components/ic-navigation-item/ic-navigation-item.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +36 -0
- package/dist/types/components/ic-page-header/ic-page-header.d.ts +55 -0
- package/dist/types/components/ic-page-header/ic-page-header.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +57 -0
- package/dist/types/components/ic-radio-group/ic-radio-group.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +57 -0
- package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +211 -0
- package/dist/types/components/ic-search-bar/ic-search-bar.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +4 -0
- package/dist/types/components/ic-section-container/ic-section-container.d.ts +12 -0
- package/dist/types/components/ic-select/ic-select.d.ts +108 -0
- package/dist/types/components/ic-select/ic-select.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-side-navigation/ic-side-navigation-test-examples.d.ts +5 -0
- package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +89 -0
- package/dist/types/components/ic-side-navigation/ic-side-navigation.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +9 -0
- package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +18 -0
- package/dist/types/components/ic-skeleton/ic-skeleton.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-skeleton/ic-skeleton.types.d.ts +1 -0
- package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +21 -0
- package/dist/types/components/ic-status-tag/ic-status-tag.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +2 -0
- package/dist/types/components/ic-step/ic-step.d.ts +26 -0
- package/dist/types/components/ic-step/ic-step.types.d.ts +1 -0
- package/dist/types/components/ic-stepper/ic-stepper.d.ts +26 -0
- package/dist/types/components/ic-stepper/ic-stepper.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-stepper/ic-stepper.types.d.ts +1 -0
- package/dist/types/components/ic-switch/ic-switch.d.ts +67 -0
- package/dist/types/components/ic-switch/ic-switch.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-switch/ic-switch.types.d.ts +4 -0
- package/dist/types/components/ic-tab/ic-tab.d.ts +38 -0
- package/dist/types/components/ic-tab/ic-tab.types.d.ts +8 -0
- package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +51 -0
- package/dist/types/components/ic-tab-context/ic-tab-context.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-tab-list/ic-tab-list.d.ts +49 -0
- package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +15 -0
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +199 -0
- package/dist/types/components/ic-text-field/ic-text-field.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-text-field/ic-text-field.types.d.ts +3 -0
- package/dist/types/components/ic-theme/ic-theme.d.ts +17 -0
- package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +35 -0
- package/dist/types/components/ic-tooltip/ic-tooltip.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-tooltip/ic-tooltip.types.d.ts +1 -0
- package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +79 -0
- package/dist/types/components/ic-top-navigation/ic-top-navigation.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-typography/ic-typography.d.ts +13 -0
- package/dist/types/components/ic-typography/ic-typography.test.a11y.d.ts +1 -0
- package/dist/types/components.d.ts +3276 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/interface.d.ts +15 -0
- package/dist/types/stencil-public-runtime.d.ts +1581 -0
- package/dist/types/testspec.setup.d.ts +3 -0
- package/dist/types/utils/constants.d.ts +14 -0
- package/dist/types/utils/helpers.d.ts +95 -0
- package/dist/types/utils/testa11y.helpers.d.ts +2 -0
- package/dist/types/utils/types.d.ts +53 -0
- package/hydrate/index.d.ts +217 -0
- package/hydrate/index.js +14702 -0
- package/hydrate/package.json +6 -0
- package/loader/cdn.js +3 -0
- package/loader/index.cjs.js +3 -0
- package/loader/index.d.ts +12 -0
- package/loader/index.es2017.js +3 -0
- package/loader/index.js +4 -0
- package/loader/package.json +11 -0
- package/package.json +74 -0
@@ -0,0 +1,245 @@
|
|
1
|
+
import { Host, h, } from "@stencil/core";
|
2
|
+
import { onComponentRequiredPropUndefined } from "../../utils/helpers";
|
3
|
+
/**
|
4
|
+
* @slot icon - Content will be rendered next to the tab label.
|
5
|
+
*/
|
6
|
+
export class Tab {
|
7
|
+
constructor() {
|
8
|
+
this.isInitialRender = true;
|
9
|
+
this.focusFromClick = false;
|
10
|
+
this.handleClick = () => {
|
11
|
+
this.tabClick.emit({
|
12
|
+
tabId: this.tabId,
|
13
|
+
contextId: this.contextId,
|
14
|
+
position: this.tabPosition,
|
15
|
+
});
|
16
|
+
if (this.focusFromClick) {
|
17
|
+
this.tabFocus.emit({
|
18
|
+
tabId: this.tabId,
|
19
|
+
contextId: this.contextId,
|
20
|
+
position: this.tabPosition,
|
21
|
+
});
|
22
|
+
this.focusFromClick = false;
|
23
|
+
}
|
24
|
+
};
|
25
|
+
this.handleFocus = () => {
|
26
|
+
if (!this.focusFromClick) {
|
27
|
+
this.tabFocus.emit({
|
28
|
+
tabId: this.tabId,
|
29
|
+
contextId: this.contextId,
|
30
|
+
position: this.tabPosition,
|
31
|
+
});
|
32
|
+
}
|
33
|
+
};
|
34
|
+
this.handleMouseDown = () => {
|
35
|
+
//set flag so that focus gets handled after click
|
36
|
+
//there is a timing issue where a long click only causes focus to happen & not the click
|
37
|
+
//the focus does need to be a seperate event though to handle focus from keyboard
|
38
|
+
this.focusFromClick = true;
|
39
|
+
};
|
40
|
+
this.contextId = "default";
|
41
|
+
this.disabled = false;
|
42
|
+
this.selected = false;
|
43
|
+
this.tabId = undefined;
|
44
|
+
this.tabPosition = undefined;
|
45
|
+
this.dark = false;
|
46
|
+
}
|
47
|
+
componentDidUpdate() {
|
48
|
+
this.isInitialRender = false;
|
49
|
+
}
|
50
|
+
componentDidLoad() {
|
51
|
+
onComponentRequiredPropUndefined([{ prop: this.tabPosition, propName: "tab-position" }], "Tab");
|
52
|
+
}
|
53
|
+
render() {
|
54
|
+
const { disabled, selected, dark } = this;
|
55
|
+
return (h(Host, { class: {
|
56
|
+
["with-transition"]: !this.isInitialRender,
|
57
|
+
["ic-tab-dark"]: dark,
|
58
|
+
}, role: "tab", "aria-selected": selected ? "true" : "false", onClick: this.handleClick, onFocus: this.handleFocus, onMouseDown: this.handleMouseDown, "aria-disabled": disabled ? "true" : "false", tabindex: this.selected ? 0 : -1 }, this.host.querySelector('[slot="icon"]') && h("slot", { name: "icon" }), h("ic-typography", { class: "ic-tab-label", variant: "label" }, h("span", null, h("slot", null)))));
|
59
|
+
}
|
60
|
+
static get is() { return "ic-tab"; }
|
61
|
+
static get encapsulation() { return "shadow"; }
|
62
|
+
static get originalStyleUrls() {
|
63
|
+
return {
|
64
|
+
"$": ["ic-tab.css"]
|
65
|
+
};
|
66
|
+
}
|
67
|
+
static get styleUrls() {
|
68
|
+
return {
|
69
|
+
"$": ["ic-tab.css"]
|
70
|
+
};
|
71
|
+
}
|
72
|
+
static get properties() {
|
73
|
+
return {
|
74
|
+
"contextId": {
|
75
|
+
"type": "string",
|
76
|
+
"mutable": false,
|
77
|
+
"complexType": {
|
78
|
+
"original": "string",
|
79
|
+
"resolved": "string",
|
80
|
+
"references": {}
|
81
|
+
},
|
82
|
+
"required": false,
|
83
|
+
"optional": true,
|
84
|
+
"docs": {
|
85
|
+
"tags": [{
|
86
|
+
"name": "internal",
|
87
|
+
"text": "Provide a unique context if using multiple tabs inside one another i.e. rendering another tabs inside a tab panel."
|
88
|
+
}],
|
89
|
+
"text": ""
|
90
|
+
},
|
91
|
+
"attribute": "context-id",
|
92
|
+
"reflect": true,
|
93
|
+
"defaultValue": "\"default\""
|
94
|
+
},
|
95
|
+
"disabled": {
|
96
|
+
"type": "boolean",
|
97
|
+
"mutable": false,
|
98
|
+
"complexType": {
|
99
|
+
"original": "boolean",
|
100
|
+
"resolved": "boolean",
|
101
|
+
"references": {}
|
102
|
+
},
|
103
|
+
"required": false,
|
104
|
+
"optional": true,
|
105
|
+
"docs": {
|
106
|
+
"tags": [],
|
107
|
+
"text": "Disables the tab."
|
108
|
+
},
|
109
|
+
"attribute": "disabled",
|
110
|
+
"reflect": false,
|
111
|
+
"defaultValue": "false"
|
112
|
+
},
|
113
|
+
"selected": {
|
114
|
+
"type": "boolean",
|
115
|
+
"mutable": false,
|
116
|
+
"complexType": {
|
117
|
+
"original": "boolean",
|
118
|
+
"resolved": "boolean",
|
119
|
+
"references": {}
|
120
|
+
},
|
121
|
+
"required": false,
|
122
|
+
"optional": true,
|
123
|
+
"docs": {
|
124
|
+
"tags": [{
|
125
|
+
"name": "internal",
|
126
|
+
"text": "Will display a selected indicator and set tabIndex."
|
127
|
+
}],
|
128
|
+
"text": ""
|
129
|
+
},
|
130
|
+
"attribute": "selected",
|
131
|
+
"reflect": true,
|
132
|
+
"defaultValue": "false"
|
133
|
+
},
|
134
|
+
"tabId": {
|
135
|
+
"type": "string",
|
136
|
+
"mutable": false,
|
137
|
+
"complexType": {
|
138
|
+
"original": "string",
|
139
|
+
"resolved": "string",
|
140
|
+
"references": {}
|
141
|
+
},
|
142
|
+
"required": false,
|
143
|
+
"optional": true,
|
144
|
+
"docs": {
|
145
|
+
"tags": [{
|
146
|
+
"name": "internal",
|
147
|
+
"text": "The shared ID between panel and tab."
|
148
|
+
}],
|
149
|
+
"text": ""
|
150
|
+
},
|
151
|
+
"attribute": "tab-id",
|
152
|
+
"reflect": true
|
153
|
+
},
|
154
|
+
"tabPosition": {
|
155
|
+
"type": "number",
|
156
|
+
"mutable": false,
|
157
|
+
"complexType": {
|
158
|
+
"original": "number",
|
159
|
+
"resolved": "number",
|
160
|
+
"references": {}
|
161
|
+
},
|
162
|
+
"required": true,
|
163
|
+
"optional": false,
|
164
|
+
"docs": {
|
165
|
+
"tags": [{
|
166
|
+
"name": "internal",
|
167
|
+
"text": "The position of the tab inside the tabs array in context."
|
168
|
+
}],
|
169
|
+
"text": ""
|
170
|
+
},
|
171
|
+
"attribute": "tab-position",
|
172
|
+
"reflect": false
|
173
|
+
},
|
174
|
+
"dark": {
|
175
|
+
"type": "boolean",
|
176
|
+
"mutable": false,
|
177
|
+
"complexType": {
|
178
|
+
"original": "boolean",
|
179
|
+
"resolved": "boolean",
|
180
|
+
"references": {}
|
181
|
+
},
|
182
|
+
"required": false,
|
183
|
+
"optional": true,
|
184
|
+
"docs": {
|
185
|
+
"tags": [{
|
186
|
+
"name": "internal",
|
187
|
+
"text": "Determines whether the dark variant of the tabs should be displayed."
|
188
|
+
}],
|
189
|
+
"text": ""
|
190
|
+
},
|
191
|
+
"attribute": "dark",
|
192
|
+
"reflect": false,
|
193
|
+
"defaultValue": "false"
|
194
|
+
}
|
195
|
+
};
|
196
|
+
}
|
197
|
+
static get events() {
|
198
|
+
return [{
|
199
|
+
"method": "tabClick",
|
200
|
+
"name": "tabClick",
|
201
|
+
"bubbles": true,
|
202
|
+
"cancelable": true,
|
203
|
+
"composed": true,
|
204
|
+
"docs": {
|
205
|
+
"tags": [],
|
206
|
+
"text": "Called when a tab is selected."
|
207
|
+
},
|
208
|
+
"complexType": {
|
209
|
+
"original": "IcTabClickEventDetail",
|
210
|
+
"resolved": "IcTabClickEventDetail",
|
211
|
+
"references": {
|
212
|
+
"IcTabClickEventDetail": {
|
213
|
+
"location": "import",
|
214
|
+
"path": "./ic-tab.types"
|
215
|
+
}
|
216
|
+
}
|
217
|
+
}
|
218
|
+
}, {
|
219
|
+
"method": "tabFocus",
|
220
|
+
"name": "tabFocus",
|
221
|
+
"bubbles": true,
|
222
|
+
"cancelable": true,
|
223
|
+
"composed": true,
|
224
|
+
"docs": {
|
225
|
+
"tags": [{
|
226
|
+
"name": "internal",
|
227
|
+
"text": "Called when a tab is focussed."
|
228
|
+
}],
|
229
|
+
"text": ""
|
230
|
+
},
|
231
|
+
"complexType": {
|
232
|
+
"original": "IcTabClickEventDetail",
|
233
|
+
"resolved": "IcTabClickEventDetail",
|
234
|
+
"references": {
|
235
|
+
"IcTabClickEventDetail": {
|
236
|
+
"location": "import",
|
237
|
+
"path": "./ic-tab.types"
|
238
|
+
}
|
239
|
+
}
|
240
|
+
}
|
241
|
+
}];
|
242
|
+
}
|
243
|
+
static get elementRef() { return "host"; }
|
244
|
+
}
|
245
|
+
//# sourceMappingURL=ic-tab.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ic-tab.js","sourceRoot":"","sources":["../../../src/components/ic-tab/ic-tab.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n h,\n} from \"@stencil/core\";\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\n\nimport { IcTabClickEventDetail } from \"./ic-tab.types\";\n\n/**\n * @slot icon - Content will be rendered next to the tab label.\n */\n@Component({\n tag: \"ic-tab\",\n styleUrl: \"ic-tab.css\",\n shadow: true,\n})\nexport class Tab {\n @Element() host: HTMLIcTabElement;\n\n /** @internal Provide a unique context if using multiple tabs inside one another i.e. rendering another tabs inside a tab panel. */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * Disables the tab.\n */\n @Prop() disabled?: boolean = false;\n\n /** @internal Will display a selected indicator and set tabIndex. */\n @Prop({ reflect: true }) selected?: boolean = false;\n\n /** @internal The shared ID between panel and tab. */\n @Prop({ reflect: true }) tabId?: string;\n\n /** @internal The position of the tab inside the tabs array in context. */\n @Prop() tabPosition!: number;\n\n /** @internal Determines whether the dark variant of the tabs should be displayed. */\n @Prop() dark?: boolean = false;\n\n /**\n * Called when a tab is selected.\n */\n @Event() tabClick: EventEmitter<IcTabClickEventDetail>;\n\n /**\n * @internal Called when a tab is focussed.\n */\n @Event() tabFocus: EventEmitter<IcTabClickEventDetail>;\n\n private isInitialRender: boolean = true;\n private focusFromClick: boolean = false;\n\n private handleClick = () => {\n this.tabClick.emit({\n tabId: this.tabId,\n contextId: this.contextId,\n position: this.tabPosition,\n });\n if (this.focusFromClick) {\n this.tabFocus.emit({\n tabId: this.tabId,\n contextId: this.contextId,\n position: this.tabPosition,\n });\n this.focusFromClick = false;\n }\n };\n\n private handleFocus = () => {\n if (!this.focusFromClick) {\n this.tabFocus.emit({\n tabId: this.tabId,\n contextId: this.contextId,\n position: this.tabPosition,\n });\n }\n };\n\n private handleMouseDown = () => {\n //set flag so that focus gets handled after click\n //there is a timing issue where a long click only causes focus to happen & not the click\n //the focus does need to be a seperate event though to handle focus from keyboard\n this.focusFromClick = true;\n };\n\n componentDidUpdate(): void {\n this.isInitialRender = false;\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.tabPosition, propName: \"tab-position\" }],\n \"Tab\"\n );\n }\n\n render() {\n const { disabled, selected, dark } = this;\n return (\n <Host\n class={{\n [\"with-transition\"]: !this.isInitialRender,\n [\"ic-tab-dark\"]: dark,\n }}\n role=\"tab\"\n aria-selected={selected ? \"true\" : \"false\"}\n onClick={this.handleClick}\n onFocus={this.handleFocus}\n onMouseDown={this.handleMouseDown}\n aria-disabled={disabled ? \"true\" : \"false\"}\n tabindex={this.selected ? 0 : -1}\n >\n {this.host.querySelector('[slot=\"icon\"]') && <slot name=\"icon\"></slot>}\n <ic-typography class=\"ic-tab-label\" variant=\"label\">\n <span>\n <slot></slot>\n </span>\n </ic-typography>\n </Host>\n );\n }\n}\n"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ic-tab.types.js","sourceRoot":"","sources":["../../../src/components/ic-tab/ic-tab.types.ts"],"names":[],"mappings":"","sourcesContent":["export interface IcTabClickEventDetail {\n tabId: string;\n contextId: string;\n position: number;\n}\n\nexport interface IcTabSelectEventDetail {\n tabIndex: number;\n}\n"]}
|
@@ -0,0 +1,337 @@
|
|
1
|
+
import { h, } from "@stencil/core";
|
2
|
+
export class TabContext {
|
3
|
+
constructor() {
|
4
|
+
// Sets attributes to link tabs and tabpanels
|
5
|
+
this.linkTabs = () => {
|
6
|
+
this.tabs.forEach((tab, index) => {
|
7
|
+
const tabId = `ic-tab-${index}-context-${this.contextId}`;
|
8
|
+
const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;
|
9
|
+
const shared = `ic-tab--${index}-context-${this.contextId}`;
|
10
|
+
tab.setAttribute("id", tabId);
|
11
|
+
tab.tabId = shared;
|
12
|
+
tab.tabPosition = index;
|
13
|
+
tab.setAttribute("aria-controls", tabPanelId);
|
14
|
+
tab.setAttribute("context-id", this.contextId);
|
15
|
+
this.tabPanels[index].setAttribute("id", tabPanelId);
|
16
|
+
this.tabPanels[index].panelId = shared;
|
17
|
+
this.tabPanels[index].tabPosition = index;
|
18
|
+
this.tabPanels[index].setAttribute("aria-labelledby", tabId);
|
19
|
+
if (this.dark) {
|
20
|
+
tab.dark = true;
|
21
|
+
}
|
22
|
+
});
|
23
|
+
if (this.dark) {
|
24
|
+
this.tabList.dark = true;
|
25
|
+
}
|
26
|
+
};
|
27
|
+
// Gets tabs and tabpanels with the same context ID
|
28
|
+
this.getChildren = () => {
|
29
|
+
this.tabList = Array.from(this.host.querySelectorAll("ic-tab-list")).find((tabList) => tabList.contextId === this.contextId);
|
30
|
+
this.tabs = Array.from(this.tabList.querySelectorAll("ic-tab")).filter((tab) => tab.contextId === this.contextId);
|
31
|
+
this.enabledTabs = this.getEnabledTabs();
|
32
|
+
this.tabPanels = Array.from(this.host.querySelectorAll("ic-tab-panel"));
|
33
|
+
};
|
34
|
+
// Determines how keyboard navigation is to be handled based on the activation type
|
35
|
+
this.attatchEventListeners = () => {
|
36
|
+
if (this.activationType === "automatic") {
|
37
|
+
this.tabList.addEventListener("keydown", (event) => {
|
38
|
+
this.handleKeyBoardNavAutomatic(event);
|
39
|
+
});
|
40
|
+
}
|
41
|
+
else {
|
42
|
+
this.tabList.addEventListener("keydown", (event) => {
|
43
|
+
this.handleKeyBoardNavManual(event);
|
44
|
+
});
|
45
|
+
}
|
46
|
+
};
|
47
|
+
// Determines whether the selected tab is being controlled within the component
|
48
|
+
// or by the user (via selectedTabIndex and onTabSelect)
|
49
|
+
this.setControlledMode = () => {
|
50
|
+
if (this.selectedTabIndex !== undefined) {
|
51
|
+
this.controlledMode = true;
|
52
|
+
this.selectedTab = this.selectedTabIndex;
|
53
|
+
}
|
54
|
+
};
|
55
|
+
// Sets the tab that is selected on initial render
|
56
|
+
this.setInitialTab = () => {
|
57
|
+
if (this.controlledMode) {
|
58
|
+
this.selectedTab = this.selectedTabIndex;
|
59
|
+
this.focusedTabIndex = this.selectedTabIndex;
|
60
|
+
}
|
61
|
+
else {
|
62
|
+
const firstEnabledTabIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[0].tabId);
|
63
|
+
this.selectedTab = firstEnabledTabIndex;
|
64
|
+
this.focusedTabIndex = firstEnabledTabIndex;
|
65
|
+
}
|
66
|
+
};
|
67
|
+
// Passes the selected tab to the tab and tab panel components
|
68
|
+
this.configureTabs = () => {
|
69
|
+
this.enabledTabs.forEach((tab) => {
|
70
|
+
tab.selected = tab.tabPosition === this.selectedTab;
|
71
|
+
});
|
72
|
+
this.tabPanels.forEach((tabPanel) => {
|
73
|
+
tabPanel.selectedTab = this.tabs[this.selectedTab].tabId;
|
74
|
+
});
|
75
|
+
};
|
76
|
+
this.getEnabledTabs = () => {
|
77
|
+
return Array.from(this.tabs).filter((child) => !child.disabled);
|
78
|
+
};
|
79
|
+
this.getIndexOfEnabledTab = (allTabsIndex) => {
|
80
|
+
return this.enabledTabs.findIndex((tab) => tab.tabId === this.tabs[allTabsIndex].tabId);
|
81
|
+
};
|
82
|
+
// Sets focus on tab and selects it
|
83
|
+
this.keyboardSelectTab = (enabledTabIndex) => {
|
84
|
+
const newIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);
|
85
|
+
this.enabledTabs[enabledTabIndex].focus();
|
86
|
+
if (!this.controlledMode) {
|
87
|
+
this.selectedTab = newIndex;
|
88
|
+
}
|
89
|
+
else {
|
90
|
+
this.tabSelect.emit({ tabIndex: newIndex });
|
91
|
+
}
|
92
|
+
};
|
93
|
+
// Sets focus on tab without selecting it (for manual activation)
|
94
|
+
this.keyboardFocusTab = (enabledTabIndex) => {
|
95
|
+
const newIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);
|
96
|
+
this.enabledTabs[enabledTabIndex].focus();
|
97
|
+
this.focusedTabIndex = newIndex;
|
98
|
+
};
|
99
|
+
this.handleKeyBoardNavAutomatic = (event) => {
|
100
|
+
const key = event.key;
|
101
|
+
const enabledTabIndex = this.getIndexOfEnabledTab(this.selectedTab);
|
102
|
+
let preventDefault = true;
|
103
|
+
switch (key) {
|
104
|
+
case "Home":
|
105
|
+
this.keyboardSelectTab(0);
|
106
|
+
break;
|
107
|
+
case "End":
|
108
|
+
this.keyboardSelectTab(this.enabledTabs.length - 1);
|
109
|
+
break;
|
110
|
+
case "ArrowRight":
|
111
|
+
if (enabledTabIndex < this.enabledTabs.length - 1) {
|
112
|
+
this.keyboardSelectTab(enabledTabIndex + 1);
|
113
|
+
}
|
114
|
+
else {
|
115
|
+
this.keyboardSelectTab(0);
|
116
|
+
}
|
117
|
+
break;
|
118
|
+
case "ArrowLeft":
|
119
|
+
if (enabledTabIndex > 0) {
|
120
|
+
this.keyboardSelectTab(enabledTabIndex - 1);
|
121
|
+
}
|
122
|
+
else {
|
123
|
+
this.keyboardSelectTab(this.enabledTabs.length - 1);
|
124
|
+
}
|
125
|
+
break;
|
126
|
+
default:
|
127
|
+
preventDefault = false;
|
128
|
+
}
|
129
|
+
if (preventDefault)
|
130
|
+
event.preventDefault();
|
131
|
+
};
|
132
|
+
this.handleKeyBoardNavManual = (event) => {
|
133
|
+
const key = event.key;
|
134
|
+
const enabledTabIndex = this.getIndexOfEnabledTab(this.focusedTabIndex);
|
135
|
+
let preventDefault = true;
|
136
|
+
switch (key) {
|
137
|
+
case "Home":
|
138
|
+
this.keyboardFocusTab(0);
|
139
|
+
break;
|
140
|
+
case "End":
|
141
|
+
this.keyboardFocusTab(this.enabledTabs.length - 1);
|
142
|
+
break;
|
143
|
+
case "ArrowRight":
|
144
|
+
if (enabledTabIndex < this.enabledTabs.length - 1) {
|
145
|
+
this.keyboardFocusTab(enabledTabIndex + 1);
|
146
|
+
}
|
147
|
+
else {
|
148
|
+
this.keyboardFocusTab(0);
|
149
|
+
}
|
150
|
+
break;
|
151
|
+
case "ArrowLeft":
|
152
|
+
if (enabledTabIndex > 0) {
|
153
|
+
this.keyboardFocusTab(enabledTabIndex - 1);
|
154
|
+
}
|
155
|
+
else {
|
156
|
+
this.keyboardFocusTab(this.enabledTabs.length - 1);
|
157
|
+
}
|
158
|
+
break;
|
159
|
+
case "Enter":
|
160
|
+
this.keyboardSelectTab(this.focusedTabIndex);
|
161
|
+
break;
|
162
|
+
case " ":
|
163
|
+
this.keyboardSelectTab(this.focusedTabIndex);
|
164
|
+
break;
|
165
|
+
default:
|
166
|
+
preventDefault = false;
|
167
|
+
}
|
168
|
+
if (preventDefault)
|
169
|
+
event.preventDefault();
|
170
|
+
};
|
171
|
+
this.contextId = "default";
|
172
|
+
this.activationType = "automatic";
|
173
|
+
this.selectedTabIndex = undefined;
|
174
|
+
this.dark = false;
|
175
|
+
this.selectedTab = undefined;
|
176
|
+
}
|
177
|
+
updateSelectedTab(newValue) {
|
178
|
+
this.selectedTab = newValue;
|
179
|
+
}
|
180
|
+
tabClickHandler(event) {
|
181
|
+
if (this.selectedTabIndex === undefined &&
|
182
|
+
event.detail.contextId === this.contextId) {
|
183
|
+
this.selectedTab = event.detail.position;
|
184
|
+
}
|
185
|
+
this.tabSelect.emit({
|
186
|
+
tabIndex: event.detail.position,
|
187
|
+
});
|
188
|
+
}
|
189
|
+
componentDidLoad() {
|
190
|
+
this.setControlledMode();
|
191
|
+
this.getChildren();
|
192
|
+
this.linkTabs();
|
193
|
+
this.attatchEventListeners();
|
194
|
+
this.setInitialTab();
|
195
|
+
this.configureTabs();
|
196
|
+
}
|
197
|
+
componentWillUpdate() {
|
198
|
+
this.configureTabs();
|
199
|
+
}
|
200
|
+
disconnectedCallback() {
|
201
|
+
if (this.activationType === "manual") {
|
202
|
+
this.tabList.removeEventListener("keydown", (event) => this.handleKeyBoardNavManual(event));
|
203
|
+
}
|
204
|
+
else {
|
205
|
+
this.tabList.removeEventListener("keydown", (event) => this.handleKeyBoardNavAutomatic(event));
|
206
|
+
}
|
207
|
+
}
|
208
|
+
render() {
|
209
|
+
return h("slot", null);
|
210
|
+
}
|
211
|
+
static get is() { return "ic-tab-context"; }
|
212
|
+
static get properties() {
|
213
|
+
return {
|
214
|
+
"contextId": {
|
215
|
+
"type": "string",
|
216
|
+
"mutable": false,
|
217
|
+
"complexType": {
|
218
|
+
"original": "string",
|
219
|
+
"resolved": "string",
|
220
|
+
"references": {}
|
221
|
+
},
|
222
|
+
"required": false,
|
223
|
+
"optional": true,
|
224
|
+
"docs": {
|
225
|
+
"tags": [],
|
226
|
+
"text": "Provide a unique context if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel."
|
227
|
+
},
|
228
|
+
"attribute": "context-id",
|
229
|
+
"reflect": true,
|
230
|
+
"defaultValue": "\"default\""
|
231
|
+
},
|
232
|
+
"activationType": {
|
233
|
+
"type": "string",
|
234
|
+
"mutable": false,
|
235
|
+
"complexType": {
|
236
|
+
"original": "IcActivationTypes",
|
237
|
+
"resolved": "\"automatic\" | \"manual\"",
|
238
|
+
"references": {
|
239
|
+
"IcActivationTypes": {
|
240
|
+
"location": "import",
|
241
|
+
"path": "../../utils/types"
|
242
|
+
}
|
243
|
+
}
|
244
|
+
},
|
245
|
+
"required": false,
|
246
|
+
"optional": true,
|
247
|
+
"docs": {
|
248
|
+
"tags": [],
|
249
|
+
"text": "Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation."
|
250
|
+
},
|
251
|
+
"attribute": "activation-type",
|
252
|
+
"reflect": false,
|
253
|
+
"defaultValue": "\"automatic\""
|
254
|
+
},
|
255
|
+
"selectedTabIndex": {
|
256
|
+
"type": "number",
|
257
|
+
"mutable": false,
|
258
|
+
"complexType": {
|
259
|
+
"original": "number",
|
260
|
+
"resolved": "number",
|
261
|
+
"references": {}
|
262
|
+
},
|
263
|
+
"required": false,
|
264
|
+
"optional": true,
|
265
|
+
"docs": {
|
266
|
+
"tags": [],
|
267
|
+
"text": "Allows the user to control the selected tab. Must be used alongside the tabSelect event to manage tab selection."
|
268
|
+
},
|
269
|
+
"attribute": "selected-tab-index",
|
270
|
+
"reflect": false
|
271
|
+
},
|
272
|
+
"dark": {
|
273
|
+
"type": "boolean",
|
274
|
+
"mutable": false,
|
275
|
+
"complexType": {
|
276
|
+
"original": "boolean",
|
277
|
+
"resolved": "boolean",
|
278
|
+
"references": {}
|
279
|
+
},
|
280
|
+
"required": false,
|
281
|
+
"optional": true,
|
282
|
+
"docs": {
|
283
|
+
"tags": [],
|
284
|
+
"text": "Determines whether the dark variant of the tabs should be displayed."
|
285
|
+
},
|
286
|
+
"attribute": "dark",
|
287
|
+
"reflect": false,
|
288
|
+
"defaultValue": "false"
|
289
|
+
}
|
290
|
+
};
|
291
|
+
}
|
292
|
+
static get states() {
|
293
|
+
return {
|
294
|
+
"selectedTab": {}
|
295
|
+
};
|
296
|
+
}
|
297
|
+
static get events() {
|
298
|
+
return [{
|
299
|
+
"method": "tabSelect",
|
300
|
+
"name": "tabSelect",
|
301
|
+
"bubbles": true,
|
302
|
+
"cancelable": true,
|
303
|
+
"composed": true,
|
304
|
+
"docs": {
|
305
|
+
"tags": [],
|
306
|
+
"text": "Emitted when a user selects a tab."
|
307
|
+
},
|
308
|
+
"complexType": {
|
309
|
+
"original": "IcTabSelectEventDetail",
|
310
|
+
"resolved": "IcTabSelectEventDetail",
|
311
|
+
"references": {
|
312
|
+
"IcTabSelectEventDetail": {
|
313
|
+
"location": "import",
|
314
|
+
"path": "../ic-tab/ic-tab.types"
|
315
|
+
}
|
316
|
+
}
|
317
|
+
}
|
318
|
+
}];
|
319
|
+
}
|
320
|
+
static get elementRef() { return "host"; }
|
321
|
+
static get watchers() {
|
322
|
+
return [{
|
323
|
+
"propName": "selectedTabIndex",
|
324
|
+
"methodName": "updateSelectedTab"
|
325
|
+
}];
|
326
|
+
}
|
327
|
+
static get listeners() {
|
328
|
+
return [{
|
329
|
+
"name": "tabClick",
|
330
|
+
"method": "tabClickHandler",
|
331
|
+
"target": undefined,
|
332
|
+
"capture": false,
|
333
|
+
"passive": false
|
334
|
+
}];
|
335
|
+
}
|
336
|
+
}
|
337
|
+
//# sourceMappingURL=ic-tab-context.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ic-tab-context.js","sourceRoot":"","sources":["../../../src/components/ic-tab-context/ic-tab-context.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Listen,\n Prop,\n State,\n h,\n Watch,\n} from \"@stencil/core\";\nimport { IcActivationTypes } from \"../../utils/types\";\n\nimport {\n IcTabClickEventDetail,\n IcTabSelectEventDetail,\n} from \"../ic-tab/ic-tab.types\";\n\n@Component({\n tag: \"ic-tab-context\",\n})\nexport class TabContext {\n @Element() host: HTMLIcTabContextElement;\n\n /**\n * Provide a unique context if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\n */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\n */\n @Prop() activationType?: IcActivationTypes = \"automatic\";\n\n /**\n * Allows the user to control the selected tab. Must be used alongside the tabSelect event to manage tab selection.\n */\n @Prop() selectedTabIndex?: number;\n\n /**\n * Determines whether the dark variant of the tabs should be displayed.\n */\n @Prop() dark?: boolean = false;\n\n @State() selectedTab: number | null;\n\n @Watch(\"selectedTabIndex\")\n updateSelectedTab(newValue: number): void {\n this.selectedTab = newValue;\n }\n\n /**\n * Emitted when a user selects a tab.\n */\n @Event() tabSelect: EventEmitter<IcTabSelectEventDetail>;\n\n @Listen(\"tabClick\")\n tabClickHandler(event: CustomEvent<IcTabClickEventDetail>): void {\n if (\n this.selectedTabIndex === undefined &&\n event.detail.contextId === this.contextId\n ) {\n this.selectedTab = event.detail.position;\n }\n this.tabSelect.emit({\n tabIndex: event.detail.position,\n });\n }\n\n private controlledMode: boolean;\n private tabs: HTMLIcTabElement[];\n private enabledTabs: HTMLIcTabElement[];\n private tabPanels: HTMLIcTabPanelElement[];\n private tabList: HTMLIcTabListElement;\n private focusedTabIndex: number;\n\n // Sets attributes to link tabs and tabpanels\n private linkTabs = () => {\n this.tabs.forEach((tab, index) => {\n const tabId = `ic-tab-${index}-context-${this.contextId}`;\n const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;\n const shared = `ic-tab--${index}-context-${this.contextId}`;\n tab.setAttribute(\"id\", tabId);\n tab.tabId = shared;\n tab.tabPosition = index;\n tab.setAttribute(\"aria-controls\", tabPanelId);\n tab.setAttribute(\"context-id\", this.contextId);\n this.tabPanels[index].setAttribute(\"id\", tabPanelId);\n this.tabPanels[index].panelId = shared;\n this.tabPanels[index].tabPosition = index;\n this.tabPanels[index].setAttribute(\"aria-labelledby\", tabId);\n\n if (this.dark) {\n tab.dark = true;\n }\n });\n\n if (this.dark) {\n this.tabList.dark = true;\n }\n };\n\n // Gets tabs and tabpanels with the same context ID\n private getChildren = (): void => {\n this.tabList = Array.from(this.host.querySelectorAll(\"ic-tab-list\")).find(\n (tabList) => tabList.contextId === this.contextId\n );\n this.tabs = Array.from(this.tabList.querySelectorAll(\"ic-tab\")).filter(\n (tab) => tab.contextId === this.contextId\n );\n this.enabledTabs = this.getEnabledTabs();\n this.tabPanels = Array.from(this.host.querySelectorAll(\"ic-tab-panel\"));\n };\n\n // Determines how keyboard navigation is to be handled based on the activation type\n private attatchEventListeners = (): void => {\n if (this.activationType === \"automatic\") {\n this.tabList.addEventListener(\"keydown\", (event) => {\n this.handleKeyBoardNavAutomatic(event);\n });\n } else {\n this.tabList.addEventListener(\"keydown\", (event) => {\n this.handleKeyBoardNavManual(event);\n });\n }\n };\n\n // Determines whether the selected tab is being controlled within the component\n // or by the user (via selectedTabIndex and onTabSelect)\n private setControlledMode = (): void => {\n if (this.selectedTabIndex !== undefined) {\n this.controlledMode = true;\n this.selectedTab = this.selectedTabIndex;\n }\n };\n\n // Sets the tab that is selected on initial render\n private setInitialTab = (): void => {\n if (this.controlledMode) {\n this.selectedTab = this.selectedTabIndex;\n this.focusedTabIndex = this.selectedTabIndex;\n } else {\n const firstEnabledTabIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[0].tabId\n );\n this.selectedTab = firstEnabledTabIndex;\n this.focusedTabIndex = firstEnabledTabIndex;\n }\n };\n\n // Passes the selected tab to the tab and tab panel components\n private configureTabs = () => {\n this.enabledTabs.forEach((tab) => {\n tab.selected = tab.tabPosition === this.selectedTab;\n });\n this.tabPanels.forEach((tabPanel) => {\n tabPanel.selectedTab = this.tabs[this.selectedTab].tabId;\n });\n };\n\n private getEnabledTabs = () => {\n return Array.from(this.tabs).filter((child) => !child.disabled);\n };\n\n private getIndexOfEnabledTab = (allTabsIndex: number) => {\n return this.enabledTabs.findIndex(\n (tab) => tab.tabId === this.tabs[allTabsIndex].tabId\n );\n };\n\n // Sets focus on tab and selects it\n private keyboardSelectTab = (enabledTabIndex: number) => {\n const newIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n this.enabledTabs[enabledTabIndex].focus();\n if (!this.controlledMode) {\n this.selectedTab = newIndex;\n } else {\n this.tabSelect.emit({ tabIndex: newIndex });\n }\n };\n\n // Sets focus on tab without selecting it (for manual activation)\n private keyboardFocusTab = (enabledTabIndex: number) => {\n const newIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n this.enabledTabs[enabledTabIndex].focus();\n this.focusedTabIndex = newIndex;\n };\n\n private handleKeyBoardNavAutomatic = (event: KeyboardEvent) => {\n const key = event.key;\n const enabledTabIndex = this.getIndexOfEnabledTab(this.selectedTab);\n let preventDefault = true;\n switch (key) {\n case \"Home\":\n this.keyboardSelectTab(0);\n break;\n case \"End\":\n this.keyboardSelectTab(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n if (enabledTabIndex < this.enabledTabs.length - 1) {\n this.keyboardSelectTab(enabledTabIndex + 1);\n } else {\n this.keyboardSelectTab(0);\n }\n break;\n case \"ArrowLeft\":\n if (enabledTabIndex > 0) {\n this.keyboardSelectTab(enabledTabIndex - 1);\n } else {\n this.keyboardSelectTab(this.enabledTabs.length - 1);\n }\n break;\n default:\n preventDefault = false;\n }\n if (preventDefault) event.preventDefault();\n };\n\n private handleKeyBoardNavManual = (event: KeyboardEvent) => {\n const key = event.key;\n const enabledTabIndex = this.getIndexOfEnabledTab(this.focusedTabIndex);\n let preventDefault = true;\n switch (key) {\n case \"Home\":\n this.keyboardFocusTab(0);\n break;\n case \"End\":\n this.keyboardFocusTab(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n if (enabledTabIndex < this.enabledTabs.length - 1) {\n this.keyboardFocusTab(enabledTabIndex + 1);\n } else {\n this.keyboardFocusTab(0);\n }\n break;\n case \"ArrowLeft\":\n if (enabledTabIndex > 0) {\n this.keyboardFocusTab(enabledTabIndex - 1);\n } else {\n this.keyboardFocusTab(this.enabledTabs.length - 1);\n }\n break;\n case \"Enter\":\n this.keyboardSelectTab(this.focusedTabIndex);\n break;\n case \" \":\n this.keyboardSelectTab(this.focusedTabIndex);\n break;\n default:\n preventDefault = false;\n }\n if (preventDefault) event.preventDefault();\n };\n\n componentDidLoad(): void {\n this.setControlledMode();\n this.getChildren();\n this.linkTabs();\n this.attatchEventListeners();\n this.setInitialTab();\n this.configureTabs();\n }\n\n componentWillUpdate(): void {\n this.configureTabs();\n }\n\n disconnectedCallback(): void {\n if (this.activationType === \"manual\") {\n this.tabList.removeEventListener(\"keydown\", (event) =>\n this.handleKeyBoardNavManual(event)\n );\n } else {\n this.tabList.removeEventListener(\"keydown\", (event) =>\n this.handleKeyBoardNavAutomatic(event)\n );\n }\n }\n\n render() {\n return <slot></slot>;\n }\n}\n"]}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { fixture } from "@open-wc/testing-helpers";
|
2
|
+
import { axe } from "jest-axe";
|
3
|
+
describe("ic-tab-context", () => {
|
4
|
+
it("passes accessibility", async () => {
|
5
|
+
const el = await fixture(`<ic-tab-context>
|
6
|
+
<ic-tab-list>
|
7
|
+
<ic-tab>One</ic-tab>
|
8
|
+
<ic-tab>Two</ic-tab>
|
9
|
+
<ic-tab>Three</ic-tab>
|
10
|
+
</ic-tab-list>
|
11
|
+
<ic-tab-panel> Tab One </ic-tab-panel>
|
12
|
+
<ic-tab-panel> Tab Two </ic-tab-panel>
|
13
|
+
<ic-tab-panel> Tab Three </ic-tab-panel>
|
14
|
+
</ic-tab-context>`);
|
15
|
+
expect(el.getAttribute("context-id")).toBe("default");
|
16
|
+
expect(await axe(el)).toHaveNoViolations();
|
17
|
+
});
|
18
|
+
});
|
19
|
+
//# sourceMappingURL=ic-tab-context.test.a11y.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ic-tab-context.test.a11y.js","sourceRoot":"","sources":["../../../src/components/ic-tab-context/ic-tab-context.test.a11y.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;EAC9B,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IACpC,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC;;;;;;;;;oBAST,CAAC,CAAC;IAElB,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;EAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { fixture } from \"@open-wc/testing-helpers\";\nimport { axe } from \"jest-axe\";\n\ndescribe(\"ic-tab-context\", () => {\n it(\"passes accessibility\", async () => {\n const el = await fixture(`<ic-tab-context>\n <ic-tab-list>\n <ic-tab>One</ic-tab>\n <ic-tab>Two</ic-tab>\n <ic-tab>Three</ic-tab>\n </ic-tab-list>\n <ic-tab-panel> Tab One </ic-tab-panel>\n <ic-tab-panel> Tab Two </ic-tab-panel>\n <ic-tab-panel> Tab Three </ic-tab-panel>\n </ic-tab-context>`);\n\n expect(el.getAttribute(\"context-id\")).toBe(\"default\");\n expect(await axe(el)).toHaveNoViolations();\n });\n});\n"]}
|