@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,199 @@
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1500de1f.js';
|
2
|
+
import { w as IcInformationStatus, t as debounceEvent, k as inheritAttributes, a as onComponentRequiredPropUndefined, d as getInputDescribedByText, r as renderHiddenInput, C as isEmptyString, l as IC_INHERITED_ARIA } from './helpers-db00eae1.js';
|
3
|
+
|
4
|
+
const icTextFieldCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block}::-moz-placeholder{color:var(--ic-color-tertiary-text);opacity:1}::placeholder{color:var(--ic-color-tertiary-text);opacity:1}input,textarea{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);line-height:1.5rem;letter-spacing:0.005rem;width:100%;padding-right:var(--ic-space-xs);padding-left:var(--ic-space-xs)}textarea{min-height:var(--ic-space-lg);resize:vertical;padding-top:6px}input:focus,textarea:focus{border:0;outline:0}input:disabled,textarea:disabled{color:var(--ic-architectural-200)}input.readonly,textarea.readonly{color:var(--ic-color-primary-text)}.fullwidth{position:relative;width:100%}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=\"number\"]{-moz-appearance:textfield}textarea.no-resize{resize:none}.maxlengthtext{color:var(--ic-color-secondary-text)}.exceeded{color:var(--ic-status-error)}.disabled{color:var(--ic-architectural-200)}.no-left-pad{padding-left:0}::slotted([slot=\"icon\"]){fill:var(--ic-color-tertiary-text)}.has-value ::slotted([slot=\"icon\"]){fill:var(--ic-color-primary-text)}.charcount{margin-right:calc(-1 * var(--ic-space-xxxs))}input[type=\"search\"]::-webkit-search-cancel-button,input[type=\"search\"]::-webkit-search-decoration,input[type=\"search\"]::-webkit-search-results-button,input[type=\"search\"]::-webkit-search-results-decoration{display:none}input[type=\"search\"].truncate-value{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}";
|
5
|
+
|
6
|
+
let inputIds = 0;
|
7
|
+
const TextField = class {
|
8
|
+
constructor(hostRef) {
|
9
|
+
registerInstance(this, hostRef);
|
10
|
+
this.icKeydown = createEvent(this, "icKeydown", 7);
|
11
|
+
this.icInput = createEvent(this, "icInput", 7);
|
12
|
+
this.icBlur = createEvent(this, "icBlur", 7);
|
13
|
+
this.icFocus = createEvent(this, "icFocus", 7);
|
14
|
+
this.icChange = createEvent(this, "icChange", 7);
|
15
|
+
this.inheritedAttributes = {};
|
16
|
+
this.showLeftIcon = this.hasLeftIconSlot();
|
17
|
+
this.onInput = (ev) => {
|
18
|
+
this.value = ev.target.value;
|
19
|
+
this.icInput.emit({ value: this.value });
|
20
|
+
};
|
21
|
+
this.onBlur = (ev) => {
|
22
|
+
const value = ev.target.value;
|
23
|
+
this.icBlur.emit({ value: value });
|
24
|
+
};
|
25
|
+
this.onFocus = (ev) => {
|
26
|
+
const value = ev.target.value;
|
27
|
+
this.icFocus.emit({ value: value });
|
28
|
+
};
|
29
|
+
this.isTextArea = () => {
|
30
|
+
return this.rows > 1;
|
31
|
+
};
|
32
|
+
this.hasStatus = (status) => {
|
33
|
+
return status !== "" && !this.disabled;
|
34
|
+
};
|
35
|
+
this.showStatusText = (status) => {
|
36
|
+
if (this.hasStatus(status) &&
|
37
|
+
!(status == IcInformationStatus.Success && this.validationInline)) {
|
38
|
+
return true;
|
39
|
+
}
|
40
|
+
return false;
|
41
|
+
};
|
42
|
+
this.inputId = `ic-text-field-input-${inputIds++}`;
|
43
|
+
this.label = undefined;
|
44
|
+
this.required = false;
|
45
|
+
this.disabled = false;
|
46
|
+
this.readonly = false;
|
47
|
+
this.placeholder = "";
|
48
|
+
this.fullWidth = false;
|
49
|
+
this.hideLabel = false;
|
50
|
+
this.helperText = "";
|
51
|
+
this.rows = 1;
|
52
|
+
this.resize = false;
|
53
|
+
this.dense = false;
|
54
|
+
this.value = "";
|
55
|
+
this.maxLength = 0;
|
56
|
+
this.validationStatus = "";
|
57
|
+
this.validationText = "";
|
58
|
+
this.validationInline = false;
|
59
|
+
this.autocapitalize = "off";
|
60
|
+
this.autocomplete = "off";
|
61
|
+
this.autocorrect = "off";
|
62
|
+
this.autoFocus = false;
|
63
|
+
this.debounce = 0;
|
64
|
+
this.dark = false;
|
65
|
+
this.type = "text";
|
66
|
+
this.inputmode = "text";
|
67
|
+
this.name = this.inputId;
|
68
|
+
this.spellcheck = false;
|
69
|
+
this.ariaActiveDescendant = undefined;
|
70
|
+
this.truncateValue = undefined;
|
71
|
+
this.ariaExpanded = undefined;
|
72
|
+
this.ariaOwns = undefined;
|
73
|
+
this.ariaAutocomplete = undefined;
|
74
|
+
this.role = undefined;
|
75
|
+
this.hiddenInput = true;
|
76
|
+
this.numChars = 0;
|
77
|
+
this.maxLengthExceeded = false;
|
78
|
+
}
|
79
|
+
debounceChanged() {
|
80
|
+
this.icChange = debounceEvent(this.icChange, this.debounce);
|
81
|
+
}
|
82
|
+
watchValueHandler(newValue) {
|
83
|
+
if (this.inputEl && this.inputEl.value !== newValue) {
|
84
|
+
this.inputEl.value = newValue;
|
85
|
+
}
|
86
|
+
if (this.maxLength > 0) {
|
87
|
+
this.numChars = newValue.length;
|
88
|
+
if (newValue.length > this.maxLength) {
|
89
|
+
this.maxLengthExceeded = true;
|
90
|
+
}
|
91
|
+
else {
|
92
|
+
this.maxLengthExceeded = false;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
this.icChange.emit({ value: newValue });
|
96
|
+
}
|
97
|
+
/**
|
98
|
+
* Sets focus on the native `input`
|
99
|
+
*/
|
100
|
+
async setFocus() {
|
101
|
+
if (this.inputEl) {
|
102
|
+
this.inputEl.focus();
|
103
|
+
}
|
104
|
+
}
|
105
|
+
//stop keydown event bubbling up to storybook
|
106
|
+
handleKeyDown(ev) {
|
107
|
+
this.icKeydown.emit({ event: ev });
|
108
|
+
ev.cancelBubble = true;
|
109
|
+
}
|
110
|
+
hasLeftIconSlot() {
|
111
|
+
const iconEl = this.el.querySelector(`[slot="icon"]`);
|
112
|
+
if (iconEl != null) {
|
113
|
+
return true;
|
114
|
+
}
|
115
|
+
return false;
|
116
|
+
}
|
117
|
+
connectedCallback() {
|
118
|
+
this.debounceChanged();
|
119
|
+
}
|
120
|
+
componentWillLoad() {
|
121
|
+
this.watchValueHandler(this.value);
|
122
|
+
this.inheritedAttributes = inheritAttributes(this.el, [
|
123
|
+
...IC_INHERITED_ARIA,
|
124
|
+
"title",
|
125
|
+
"aria-autocomplete",
|
126
|
+
"aria-haspopup",
|
127
|
+
]);
|
128
|
+
if (this.readonly) {
|
129
|
+
this.maxLengthExceeded = false;
|
130
|
+
}
|
131
|
+
}
|
132
|
+
componentDidLoad() {
|
133
|
+
onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Text Field");
|
134
|
+
}
|
135
|
+
render() {
|
136
|
+
const { dark, inputId, name, label, required, dense, placeholder, helperText, rows, resize, disabled, value, maxLength, numChars, readonly, maxLengthExceeded, validationStatus, validationText, validationInline, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, } = this;
|
137
|
+
const disabledMode = readonly ? true : disabled;
|
138
|
+
const placeholderText = disabled ? "" : placeholder;
|
139
|
+
const currentStatus = maxLengthExceeded
|
140
|
+
? IcInformationStatus.Error
|
141
|
+
: validationStatus;
|
142
|
+
const currentValidationText = maxLengthExceeded
|
143
|
+
? "Maximum length exceeded"
|
144
|
+
: validationText;
|
145
|
+
const maxNumChars = readonly ? 0 : maxLength;
|
146
|
+
const messageAriaLive = maxLengthExceeded ||
|
147
|
+
(maxLength === 0 && currentStatus === IcInformationStatus.Error)
|
148
|
+
? "assertive"
|
149
|
+
: "polite";
|
150
|
+
const showStatusText = this.showStatusText(currentStatus);
|
151
|
+
const multiline = this.isTextArea();
|
152
|
+
const hiddenCharCountDescId = maxLength > 0 ? inputId + "-charcount-desc" : "";
|
153
|
+
const describedBy = (hiddenCharCountDescId +
|
154
|
+
" " +
|
155
|
+
getInputDescribedByText(inputId, helperText !== "", showStatusText)).trim();
|
156
|
+
if (this.showLeftIcon) {
|
157
|
+
if (!readonly && disabledMode) {
|
158
|
+
this.showLeftIcon = false;
|
159
|
+
}
|
160
|
+
}
|
161
|
+
const invalid = currentStatus === IcInformationStatus.Error ? "true" : "false";
|
162
|
+
const disabledText = disabledMode && !readonly;
|
163
|
+
if (hiddenInput) {
|
164
|
+
renderHiddenInput(true, this.el, name, value, disabledMode);
|
165
|
+
}
|
166
|
+
return (h(Host, { class: { ["fullwidth"]: fullWidth } }, h("ic-input-container", { readonly: readonly, disabled: disabledMode }, !this.hideLabel && (h("ic-input-label", { for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly, dark: dark })), h("ic-input-component-container", { dark: dark, dense: dense, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, this.showLeftIcon && (h("span", { class: {
|
167
|
+
["readonly"]: readonly,
|
168
|
+
["has-value"]: value.length > 0,
|
169
|
+
}, slot: "left-icon" }, h("slot", { name: "icon" }))), !multiline && (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: this.type, value: value, class: {
|
170
|
+
["no-left-pad"]: !this.showLeftIcon && readonly,
|
171
|
+
["readonly"]: readonly,
|
172
|
+
["truncate-value"]: truncateValue,
|
173
|
+
}, placeholder: placeholderText, required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-activedescendant": this.ariaActiveDescendant, "aria-expanded": this.ariaExpanded, "aria-owns": this.ariaOwns, autocomplete: this.autocomplete, autocapitalize: this.autocapitalize, autoFocus: this.autoFocus, spellcheck: spellcheck, inputmode: inputmode, role: this.role }, this.inheritedAttributes))), multiline && (h("textarea", Object.assign({ id: inputId, class: {
|
174
|
+
["no-resize"]: resize === false || readonly,
|
175
|
+
["no-left-pad"]: !this.showLeftIcon && readonly,
|
176
|
+
["readonly"]: readonly,
|
177
|
+
}, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholderText, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocapitalize: this.autocapitalize, autoFocus: this.autoFocus, spellcheck: spellcheck, inputmode: inputmode }, this.inheritedAttributes))), h("slot", { name: "clear-button" }), h("slot", { name: "search-submit-button" })), h("slot", { name: "menu" }), (!isEmptyString(validationStatus) ||
|
178
|
+
!isEmptyString(validationText) ||
|
179
|
+
maxNumChars > 0) && (h("ic-input-validation", { status: this.hasStatus(currentStatus) === false ||
|
180
|
+
(currentStatus === IcInformationStatus.Success &&
|
181
|
+
validationInline)
|
182
|
+
? ""
|
183
|
+
: currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { slot: "validation-message-adornment" }, h("ic-typography", { variant: "caption", class: {
|
184
|
+
["maxlengthtext"]: true,
|
185
|
+
["exceeded"]: maxLengthExceeded,
|
186
|
+
["disabled"]: disabledText,
|
187
|
+
} }, h("span", { "aria-live": "polite", id: `${inputId}-charcount`, class: "charcount" }, numChars, "/", maxNumChars), h("span", { hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters.")))))))));
|
188
|
+
}
|
189
|
+
get el() { return getElement(this); }
|
190
|
+
static get watchers() { return {
|
191
|
+
"debounce": ["debounceChanged"],
|
192
|
+
"value": ["watchValueHandler"]
|
193
|
+
}; }
|
194
|
+
};
|
195
|
+
TextField.style = icTextFieldCss;
|
196
|
+
|
197
|
+
export { TextField as ic_text_field };
|
198
|
+
|
199
|
+
//# sourceMappingURL=ic-text-field.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"file":"ic-text-field.entry.js","mappings":"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","names":[],"sources":["./src/components/ic-text-field/ic-text-field.css?tag=ic-text-field&encapsulation=shadow","./src/components/ic-text-field/ic-text-field.tsx"],"sourcesContent":["@import \"../../global/normalise.css\";\n\n:host {\n /**\n * @prop --input-width: Width of the input field \n */\n display: block;\n}\n\n::placeholder {\n color: var(--ic-color-tertiary-text);\n opacity: 1;\n}\n\ninput,\ntextarea {\n border: 0;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-architectural-white);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n padding-right: var(--ic-space-xs);\n padding-left: var(--ic-space-xs);\n}\n\ntextarea {\n min-height: var(--ic-space-lg);\n resize: vertical;\n padding-top: 6px;\n}\n\ninput:focus,\ntextarea:focus {\n border: 0;\n outline: 0;\n}\n\ninput:disabled,\ntextarea:disabled {\n color: var(--ic-architectural-200);\n}\n\ninput.readonly,\ntextarea.readonly {\n color: var(--ic-color-primary-text);\n}\n\n.fullwidth {\n position: relative;\n width: 100%;\n}\n\n/* Chrome, Safari, Edge */\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n/* Firefox */\ninput[type=\"number\"] {\n -moz-appearance: textfield;\n}\n\ntextarea.no-resize {\n resize: none;\n}\n\n.maxlengthtext {\n color: var(--ic-color-secondary-text);\n}\n\n.exceeded {\n color: var(--ic-status-error);\n}\n\n.disabled {\n color: var(--ic-architectural-200);\n}\n\n.no-left-pad {\n padding-left: 0;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-color-tertiary-text);\n}\n\n.has-value ::slotted([slot=\"icon\"]) {\n fill: var(--ic-color-primary-text);\n}\n\n.charcount {\n margin-right: calc(-1 * var(--ic-space-xxxs));\n}\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n display: none;\n}\n\ninput[type=\"search\"].truncate-value {\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n Method,\n h,\n} from \"@stencil/core\";\n\nimport {\n IcAutocompleteTypes,\n IcAutocorrectStates,\n IcInformationStatusOrEmpty,\n IcValueEventDetail,\n} from \"../../interface\";\nimport { IcInformationStatus } from \"../../utils/types\";\nimport {\n inheritAttributes,\n debounceEvent,\n getInputDescribedByText,\n renderHiddenInput,\n isEmptyString,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcAriaAutocompleteTypes,\n IcTextFieldInputModes,\n IcTextFieldTypes,\n} from \"./ic-text-field.types\";\n\nlet inputIds = 0;\n\n/**\n * @slot icon - Content will be placed to the left of the text input.\n */\n@Component({\n tag: \"ic-text-field\",\n styleUrl: \"ic-text-field.css\",\n shadow: true,\n})\nexport class TextField {\n @Element() el: HTMLIcTextFieldElement;\n\n private inputEl: HTMLInputElement | HTMLTextAreaElement;\n private inheritedAttributes: { [k: string]: unknown } = {};\n\n /**\n * @slot clear-button - an ic-button clear component will render as an end adornment to the input\n * @slot search-submit-button - an ic-button search submit component will render as an end adornment to the input\n * @slot menu - an ic-menu component will appear below the input\n */\n\n /**\n * Provide an id for the input\n */\n @Prop() inputId?: string = `ic-text-field-input-${inputIds++}`;\n\n /**\n * Provide a label for the input.\n */\n @Prop() label!: string;\n\n /**\n * Specify if the input requires a value.\n */\n @Prop() required: boolean = false;\n /**\n * Specify whether the input is disabled.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Specify whether the input is read only.\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Provide a placeholder value to display.\n */\n @Prop() placeholder: string = \"\";\n\n /**\n * Specify whether the component fills the full width of the container.\n * If true, this overrides the --input-width css prop.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * Hides the label and applies the required label value as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * Provide helper text to display additional field guidance.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * Specify the number of rows to transform the text field into a text area with a specific height.\n */\n @Prop() rows: number = 1;\n\n /**\n * Allow resizing of a multiline text area\n */\n @Prop() resize: boolean = false;\n\n /**\n * Specify whether dense styling is to be applied to the element.\n */\n @Prop() dense: boolean = false;\n\n /**\n * Value of TextField.\n */\n @Prop({ reflect: true, mutable: true }) value: string = \"\";\n\n /**\n * Maximum number of characters that can be entered in the field.\n */\n @Prop() maxLength: number = 0;\n\n /**\n * Provide validation state - 'error' | 'warning' | 'success'\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * Provide validation state - 'error' | 'warning' | 'success'\n */\n @Prop() validationText: string = \"\";\n\n /**\n * Show icon in input control - only applies when validationStatus ='success'\n */\n @Prop() validationInline: boolean = false;\n\n /**\n * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.\n * Available options: \"off\", \"none\", \"on\", \"sentences\", \"words\", \"characters\".\n */\n @Prop() autocapitalize = \"off\";\n\n /**\n * Indicates whether the value of the control can be automatically completed by the browser.\n */\n @Prop() autocomplete: IcAutocompleteTypes = \"off\";\n\n /**\n * Whether auto correction should be enabled when the user is entering/editing the text value.\n */\n @Prop() autocorrect: IcAutocorrectStates = \"off\";\n\n /**\n * This Boolean attribute lets you specify that a form control should have input focus when the page loads.\n */\n @Prop() autoFocus = false;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce: number = 0;\n\n /**\n * Determines whether the dark variant of the text field should be displayed.\n */\n @Prop() dark?: boolean = false;\n\n private showLeftIcon: boolean = this.hasLeftIconSlot();\n\n @Watch(\"debounce\")\n private debounceChanged() {\n this.icChange = debounceEvent(this.icChange, this.debounce);\n }\n\n /**\n * The type of control to display. The default type is text.\n */\n @Prop() type: IcTextFieldTypes = \"text\";\n\n /**\n * A hint to the browser for which keyboard to display.\n * Possible values: `\"none\"`, `\"text\"`, `\"tel\"`, `\"url\"`,\n * `\"email\"`, `\"numeric\"`, `\"decimal\"`, and `\"search\"`.\n */\n @Prop() inputmode: IcTextFieldInputModes = \"text\";\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name: string = this.inputId;\n\n /**\n * If `true`, the element will have its spelling and grammar checked.\n */\n @Prop() spellcheck: boolean = false;\n\n /**\n * @internal Used to identify the active element when focus is on the ic-menu items\n */\n @Prop() ariaActiveDescendant?: string;\n /**\n * @internal This boolean sets an ellipsis at the end of the value if the value is longer than the container\n */\n @Prop() truncateValue?: boolean;\n\n /**\n * @internal Used to identify if the slotted menu is rendered\n */\n @Prop() ariaExpanded: string;\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaOwns: string;\n\n /**\n * @internal Used to identify whether inputting any text triggers more predictions\n */\n @Prop() ariaAutocomplete: IcAriaAutocompleteTypes = undefined;\n\n /**\n * @internal Used to set the role if not default textbox;\n */\n @Prop() role: string;\n\n /**\n * @internal Used to stop rendering of hidden form input for form submission;\n */\n @Prop() hiddenInput: boolean = true;\n\n @State() numChars: number = 0;\n @State() maxLengthExceeded: boolean = false;\n\n @Watch(\"value\")\n watchValueHandler(newValue: string): void {\n if (this.inputEl && this.inputEl.value !== newValue) {\n this.inputEl.value = newValue;\n }\n\n if (this.maxLength > 0) {\n this.numChars = newValue.length;\n if (newValue.length > this.maxLength) {\n this.maxLengthExceeded = true;\n } else {\n this.maxLengthExceeded = false;\n }\n }\n this.icChange.emit({ value: newValue });\n }\n\n /**\n * Sets focus on the native `input`\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.inputEl) {\n this.inputEl.focus();\n }\n }\n\n //stop keydown event bubbling up to storybook\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n this.icKeydown.emit({ event: ev });\n ev.cancelBubble = true;\n }\n\n /**\n * Emitted when a keydown event occurred.\n */\n @Event() icKeydown: EventEmitter<{ event: KeyboardEvent }>;\n\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n private onInput = (ev: Event) => {\n this.value = (ev.target as HTMLInputElement).value;\n this.icInput.emit({ value: this.value });\n };\n\n /**\n * Emitted when input loses focus.\n */\n @Event() icBlur: EventEmitter<IcValueEventDetail>;\n private onBlur = (ev: Event) => {\n const value = (ev.target as HTMLInputElement).value;\n this.icBlur.emit({ value: value });\n };\n\n /**\n * Emitted when input gains focus.\n */\n @Event() icFocus: EventEmitter<IcValueEventDetail>;\n private onFocus = (ev: Event) => {\n const value = (ev.target as HTMLInputElement).value;\n this.icFocus.emit({ value: value });\n };\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n private isTextArea = (): boolean => {\n return this.rows > 1;\n };\n\n private hasLeftIconSlot(): boolean {\n const iconEl = this.el.querySelector(`[slot=\"icon\"]`);\n if (iconEl != null) {\n return true;\n }\n return false;\n }\n\n private hasStatus = (status: IcInformationStatusOrEmpty): boolean => {\n return status !== \"\" && !this.disabled;\n };\n\n private showStatusText = (status: IcInformationStatusOrEmpty): boolean => {\n if (\n this.hasStatus(status) &&\n !(status == IcInformationStatus.Success && this.validationInline)\n ) {\n return true;\n }\n return false;\n };\n\n connectedCallback(): void {\n this.debounceChanged();\n }\n\n componentWillLoad(): void {\n this.watchValueHandler(this.value);\n\n this.inheritedAttributes = inheritAttributes(this.el, [\n ...IC_INHERITED_ARIA,\n \"title\",\n \"aria-autocomplete\",\n \"aria-haspopup\",\n ]);\n\n if (this.readonly) {\n this.maxLengthExceeded = false;\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Text Field\"\n );\n }\n\n render() {\n const {\n dark,\n inputId,\n name,\n label,\n required,\n dense,\n placeholder,\n helperText,\n rows,\n resize,\n disabled,\n value,\n maxLength,\n numChars,\n readonly,\n maxLengthExceeded,\n validationStatus,\n validationText,\n validationInline,\n spellcheck,\n inputmode,\n fullWidth,\n truncateValue,\n hiddenInput,\n } = this;\n\n const disabledMode = readonly ? true : disabled;\n\n const placeholderText = disabled ? \"\" : placeholder;\n\n const currentStatus = maxLengthExceeded\n ? IcInformationStatus.Error\n : validationStatus;\n\n const currentValidationText = maxLengthExceeded\n ? \"Maximum length exceeded\"\n : validationText;\n\n const maxNumChars = readonly ? 0 : maxLength;\n\n const messageAriaLive =\n maxLengthExceeded ||\n (maxLength === 0 && currentStatus === IcInformationStatus.Error)\n ? \"assertive\"\n : \"polite\";\n\n const showStatusText = this.showStatusText(currentStatus);\n const multiline = this.isTextArea();\n const hiddenCharCountDescId =\n maxLength > 0 ? inputId + \"-charcount-desc\" : \"\";\n const describedBy = (\n hiddenCharCountDescId +\n \" \" +\n getInputDescribedByText(inputId, helperText !== \"\", showStatusText)\n ).trim();\n\n if (this.showLeftIcon) {\n if (!readonly && disabledMode) {\n this.showLeftIcon = false;\n }\n }\n\n const invalid =\n currentStatus === IcInformationStatus.Error ? \"true\" : \"false\";\n const disabledText = disabledMode && !readonly;\n\n if (hiddenInput) {\n renderHiddenInput(true, this.el, name, value, disabledMode);\n }\n\n return (\n <Host class={{ [\"fullwidth\"]: fullWidth }}>\n <ic-input-container readonly={readonly} disabled={disabledMode}>\n {!this.hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabledText}\n readonly={readonly}\n dark={dark}\n ></ic-input-label>\n )}\n\n <ic-input-component-container\n dark={dark}\n dense={dense}\n validationStatus={currentStatus}\n multiLine={multiline}\n disabled={disabledMode}\n readonly={readonly}\n validationInline={validationInline}\n fullWidth={fullWidth}\n >\n {this.showLeftIcon && (\n <span\n class={{\n [\"readonly\"]: readonly,\n [\"has-value\"]: value.length > 0,\n }}\n slot=\"left-icon\"\n >\n <slot name=\"icon\" />\n </span>\n )}\n\n {!multiline && (\n <input\n id={inputId}\n name={name}\n ref={(el) => (this.inputEl = el as HTMLInputElement)}\n type={this.type}\n value={value}\n class={{\n [\"no-left-pad\"]: !this.showLeftIcon && readonly,\n [\"readonly\"]: readonly,\n [\"truncate-value\"]: truncateValue,\n }}\n placeholder={placeholderText}\n required={required}\n disabled={disabledMode}\n readonly={readonly}\n onInput={this.onInput}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-expanded={this.ariaExpanded}\n aria-owns={this.ariaOwns}\n autocomplete={this.autocomplete}\n autocapitalize={this.autocapitalize}\n autoFocus={this.autoFocus}\n spellcheck={spellcheck}\n inputmode={inputmode}\n role={this.role}\n {...this.inheritedAttributes}\n ></input>\n )}\n {multiline && (\n <textarea\n id={inputId}\n class={{\n [\"no-resize\"]: resize === false || readonly,\n [\"no-left-pad\"]: !this.showLeftIcon && readonly,\n [\"readonly\"]: readonly,\n }}\n name={name}\n ref={(el) => (this.inputEl = el as HTMLTextAreaElement)}\n value={value}\n rows={rows}\n required={required}\n disabled={disabledMode}\n placeholder={placeholderText}\n readonly={readonly}\n onInput={this.onInput}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n autocapitalize={this.autocapitalize}\n autoFocus={this.autoFocus}\n spellcheck={spellcheck}\n inputmode={inputmode}\n {...this.inheritedAttributes}\n ></textarea>\n )}\n <slot name=\"clear-button\"></slot>\n <slot name=\"search-submit-button\"></slot>\n </ic-input-component-container>\n <slot name=\"menu\"></slot>\n {(!isEmptyString(validationStatus) ||\n !isEmptyString(validationText) ||\n maxNumChars > 0) && (\n <ic-input-validation\n status={\n this.hasStatus(currentStatus) === false ||\n (currentStatus === IcInformationStatus.Success &&\n validationInline)\n ? \"\"\n : currentStatus\n }\n message={showStatusText ? currentValidationText : \"\"}\n ariaLiveMode={messageAriaLive}\n for={inputId}\n fullWidth={fullWidth}\n >\n {!readonly && maxNumChars > 0 && (\n <div slot=\"validation-message-adornment\">\n <ic-typography\n variant=\"caption\"\n class={{\n [\"maxlengthtext\"]: true,\n [\"exceeded\"]: maxLengthExceeded,\n [\"disabled\"]: disabledText,\n }}\n >\n <span\n aria-live=\"polite\"\n id={`${inputId}-charcount`}\n class=\"charcount\"\n >\n {numChars}/{maxNumChars}\n </span>\n <span hidden={true} id={hiddenCharCountDescId}>\n Field can contain a maximum of {maxNumChars} characters.\n </span>\n </ic-typography>\n </div>\n )}\n </ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"version":3}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host } from './index-1500de1f.js';
|
2
|
+
import { z as hexToRgb, A as rgbStrToObj, f as getThemeForegroundColor } from './helpers-db00eae1.js';
|
3
|
+
|
4
|
+
const Theme = class {
|
5
|
+
constructor(hostRef) {
|
6
|
+
registerInstance(this, hostRef);
|
7
|
+
this.icThemeChange = createEvent(this, "icThemeChange", 7);
|
8
|
+
this.setThemeColor = () => {
|
9
|
+
if (this.color !== null) {
|
10
|
+
let colorRGB = null;
|
11
|
+
const firstChar = this.color.slice(0, 1);
|
12
|
+
if (firstChar === "#") {
|
13
|
+
colorRGB = hexToRgb(this.color);
|
14
|
+
}
|
15
|
+
else if (firstChar.toLowerCase() === "r") {
|
16
|
+
colorRGB = rgbStrToObj(this.color);
|
17
|
+
}
|
18
|
+
this.setThemeRGB(colorRGB);
|
19
|
+
}
|
20
|
+
};
|
21
|
+
this.setThemeRGB = (colorRGB) => {
|
22
|
+
if (colorRGB !== null) {
|
23
|
+
const root = document.documentElement;
|
24
|
+
root.style.setProperty("--ic-theme-primary-r", colorRGB.r.toString());
|
25
|
+
root.style.setProperty("--ic-theme-primary-g", colorRGB.g.toString());
|
26
|
+
root.style.setProperty("--ic-theme-primary-b", colorRGB.b.toString());
|
27
|
+
const foregroundColor = getThemeForegroundColor();
|
28
|
+
this.icThemeChange.emit({ mode: foregroundColor, color: colorRGB });
|
29
|
+
}
|
30
|
+
};
|
31
|
+
this.color = null;
|
32
|
+
}
|
33
|
+
watchColorPropHandler() {
|
34
|
+
this.setThemeColor();
|
35
|
+
}
|
36
|
+
componentWillLoad() {
|
37
|
+
this.setThemeColor();
|
38
|
+
}
|
39
|
+
render() {
|
40
|
+
return h(Host, null);
|
41
|
+
}
|
42
|
+
static get watchers() { return {
|
43
|
+
"color": ["watchColorPropHandler"]
|
44
|
+
}; }
|
45
|
+
};
|
46
|
+
|
47
|
+
export { Theme as ic_theme };
|
48
|
+
|
49
|
+
//# sourceMappingURL=ic-theme.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"file":"ic-theme.entry.js","mappings":";;;MAqBa,KAAK;;;;IAgBR,kBAAa,GAAG;MACtB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;QACvB,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,IAAI,SAAS,KAAK,GAAG,EAAE;UACrB,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjC;aAAM,IAAI,SAAS,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE;UAC1C,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpC;QACD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;OAC5B;KACF,CAAC;IAEM,gBAAW,GAAG,CAAC,QAAoB;MACzC,IAAI,QAAQ,KAAK,IAAI,EAAE;QACrB,MAAM,IAAI,GAAG,QAAQ,CAAC,eAAe,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,MAAM,eAAe,GAAG,uBAAuB,EAAE,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;OACrE;KACF,CAAC;iBAlCuB,IAAI;;EAG7B,qBAAqB;IACnB,IAAI,CAAC,aAAa,EAAE,CAAC;GACtB;EA+BD,iBAAiB;IACf,IAAI,CAAC,aAAa,EAAE,CAAC;GACtB;EAED,MAAM;IACJ,OAAO,EAAC,IAAI,OAAQ,CAAC;GACtB;;;;;;;;","names":[],"sources":["./src/components/ic-theme/ic-theme.tsx"],"sourcesContent":["import {\n Component,\n Host,\n Event,\n EventEmitter,\n h,\n Watch,\n Prop,\n} from \"@stencil/core\";\n\nimport { IcColorRGB, IcTheme } from \"../../utils/types\";\nimport {\n getThemeForegroundColor,\n hexToRgb,\n rgbStrToObj,\n} from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-theme\",\n shadow: true,\n})\nexport class Theme {\n /**\n * The theme colour. Can be a hex value eg \"#ff0000\" or RGB eg \"rgb(255, 0, 0)\"\n */\n @Prop() color?: string = null;\n\n @Watch(\"color\")\n watchColorPropHandler(): void {\n this.setThemeColor();\n }\n\n /**\n * Emitted when the theme is changed.\n */\n @Event() icThemeChange: EventEmitter<IcTheme>;\n\n private setThemeColor = () => {\n if (this.color !== null) {\n let colorRGB = null;\n const firstChar = this.color.slice(0, 1);\n if (firstChar === \"#\") {\n colorRGB = hexToRgb(this.color);\n } else if (firstChar.toLowerCase() === \"r\") {\n colorRGB = rgbStrToObj(this.color);\n }\n this.setThemeRGB(colorRGB);\n }\n };\n\n private setThemeRGB = (colorRGB: IcColorRGB) => {\n if (colorRGB !== null) {\n const root = document.documentElement;\n root.style.setProperty(\"--ic-theme-primary-r\", colorRGB.r.toString());\n root.style.setProperty(\"--ic-theme-primary-g\", colorRGB.g.toString());\n root.style.setProperty(\"--ic-theme-primary-b\", colorRGB.b.toString());\n const foregroundColor = getThemeForegroundColor();\n this.icThemeChange.emit({ mode: foregroundColor, color: colorRGB });\n }\n };\n\n componentWillLoad(): void {\n this.setThemeColor();\n }\n\n render() {\n return <Host></Host>;\n }\n}\n"],"version":3}
|
@@ -0,0 +1,203 @@
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1500de1f.js';
|
2
|
+
import { B as getSlot, D as DEVICE_SIZES, g as getCurrentDeviceSize, f as getThemeForegroundColor, o as onComponentPropUndefinedChange, i as isSlotUsed, c as checkResizeObserver, a as onComponentRequiredPropUndefined, I as IcThemeForegroundEnum } from './helpers-db00eae1.js';
|
3
|
+
|
4
|
+
const icTopNavigationCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;color:var(--ic-theme-text);width:100%;position:relative}:host .top-navigation{background-color:var(--ic-theme-primary);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);margin-left:calc(-1 * var(--ic-space-xxs));transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active{color:var(--ic-theme-text)}:host .title-link:hover:not(:focus){background-color:var(--ic-theme-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-theme-active)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .title-link:focus{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:none}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-keyline-lighten);padding-left:var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-keyline-darken)}.top-panel-container{display:flex;padding-top:8px;padding-bottom:8px}.navigation-tabs{margin-top:-1px}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.app-title{padding-right:var(--ic-space-lg)}:host .app-status{border-radius:80px;background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md)}:host(.dark) .app-status{background-color:var(--ic-theme-text);color:var(--ic-color-white-text)}:host .app-version{border-radius:16px;background-color:var(--ic-theme-active);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs)}.app-status-text,.app-version-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:96px}slot[name=\"app-icon\"]::slotted(svg){fill:var(--ic-theme-text);width:2em;height:2em}slot[name=\"toggle-icon\"] svg{fill:var(--ic-theme-text)}.search-menu-container{justify-content:right;display:flex;align-items:center;flex:1 auto}.menu-button-container{margin-left:var(--ic-space-md)}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:44px}:host([content-aligned=\"left\"]) .app-details-container{flex-basis:1}:host([content-aligned=\"left\"]) .app-details-container,:host([content-aligned=\"left\"]) .nav-panel-container,:host([content-aligned=\"center\"]) .nav-panel-container,:host([content-aligned=\"left\"]) .search-menu-container,:host([content-aligned=\"center\"]) .search-menu-container{justify-content:flex-start}:host([content-aligned=\"center\"]) .app-details-container{justify-content:flex-end}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}:host([content-aligned=\"center\"]) .top-navigation{display:flex;justify-content:center}:host([content-aligned=\"left\"]) .top-navigation{display:flex}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding-left:var(--ic-space-md)}@media screen and (max-width: 992px){:host .nav-panel-container,:host .app-status,:host .app-version{display:none}:host .title-link{margin-right:var(--ic-space-xs)}.search-menu-container{max-width:160px}.search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-keyline-darken);height:64px;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}:host([content-aligned=\"left\"]) .app-details-container,:host([content-aligned=\"left\"]) .search-menu-container,:host([content-aligned=\"center\"]) .search-menu-container,:host([content-aligned=\"center\"]) .app-details-container{justify-content:flex-start}}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.top-panel-container{min-height:40px}.searchbox-inline{display:none}.search-bar-container{margin-top:0;height:56px;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name=\"app-icon\"]::slotted(svg){width:1.5em;height:1.5em}slot[name=\"toggle-icon\"] svg{width:1.5em;height:1.5em}:host([content-aligned=\"left\"]) .app-details-container,:host([content-aligned=\"left\"]) .search-menu-container,:host([content-aligned=\"center\"]) .app-details-container,:host([content-aligned=\"center\"]) .search-menu-container{justify-content:flex-start}}}";
|
5
|
+
|
6
|
+
const TopNavigation = class {
|
7
|
+
constructor(hostRef) {
|
8
|
+
registerInstance(this, hostRef);
|
9
|
+
this.icNavigationMenuOpened = createEvent(this, "icNavigationMenuOpened", 7);
|
10
|
+
this.icNavigationMenuClosed = createEvent(this, "icNavigationMenuClosed", 7);
|
11
|
+
this.hasAppIcon = false;
|
12
|
+
this.hasNavigation = false;
|
13
|
+
this.hasIconButtons = false;
|
14
|
+
this.hasSearchSlotContent = false;
|
15
|
+
this.searchBar = null;
|
16
|
+
this.initialiseSearchBar = () => {
|
17
|
+
if (this.hasSearchSlotContent) {
|
18
|
+
const slot = getSlot(this.el, "search");
|
19
|
+
if (slot && slot.tagName === "IC-SEARCH-BAR") {
|
20
|
+
this.searchBar = slot;
|
21
|
+
}
|
22
|
+
else if (slot && slot.tagName === "FORM") {
|
23
|
+
this.searchBar = slot.querySelector("ic-search-bar");
|
24
|
+
}
|
25
|
+
if (this.searchBar !== null) {
|
26
|
+
this.searchBar.hideLabel = true;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
};
|
30
|
+
this.emitTopNavResized = (size) => {
|
31
|
+
const event = new CustomEvent("topNavResized", { detail: { size: size } });
|
32
|
+
this.el.dispatchEvent(event);
|
33
|
+
};
|
34
|
+
this.menuButtonClick = () => {
|
35
|
+
this.showNavMenu(true);
|
36
|
+
};
|
37
|
+
this.searchButtonMouseDownHandler = () => {
|
38
|
+
this.searchButtonClick = true;
|
39
|
+
};
|
40
|
+
this.searchButtonClickHandler = () => {
|
41
|
+
this.toggleSearchBar();
|
42
|
+
this.searchButtonClick = false;
|
43
|
+
};
|
44
|
+
this.resizeObserver = null;
|
45
|
+
this.resizeObserverCallback = (currSize) => {
|
46
|
+
if (currSize !== this.deviceSize) {
|
47
|
+
this.deviceSize = currSize;
|
48
|
+
if (currSize > DEVICE_SIZES.L) {
|
49
|
+
this.showNavMenu(false);
|
50
|
+
if (this.mobileSearchBarVisible) {
|
51
|
+
this.toggleSearchBar();
|
52
|
+
}
|
53
|
+
}
|
54
|
+
this.emitTopNavResized(currSize);
|
55
|
+
if (document.activeElement !== null &&
|
56
|
+
document.activeElement !== undefined &&
|
57
|
+
document.activeElement.tagName === "IC-SEARCH-BAR") {
|
58
|
+
this.searchBar.setAttribute("hidden", "true");
|
59
|
+
//remove attribute again as this trigger a redraw & applies css
|
60
|
+
this.searchBar.removeAttribute("hidden");
|
61
|
+
setTimeout(() => {
|
62
|
+
this.searchBar.setFocus();
|
63
|
+
}, 100);
|
64
|
+
}
|
65
|
+
}
|
66
|
+
};
|
67
|
+
this.runResizeObserver = () => {
|
68
|
+
this.resizeObserver = new ResizeObserver(() => {
|
69
|
+
const currSize = getCurrentDeviceSize();
|
70
|
+
this.resizeObserverCallback(currSize);
|
71
|
+
});
|
72
|
+
this.resizeObserver.observe(this.el);
|
73
|
+
};
|
74
|
+
this.appTitle = undefined;
|
75
|
+
this.href = "/";
|
76
|
+
this.version = "";
|
77
|
+
this.status = "";
|
78
|
+
this.contentAligned = "full-width";
|
79
|
+
this.inline = false;
|
80
|
+
this.menuOpen = false;
|
81
|
+
this.deviceSize = DEVICE_SIZES.XL;
|
82
|
+
this.mobileSearchBarVisible = false;
|
83
|
+
this.navMenuVisible = false;
|
84
|
+
this.searchValue = "";
|
85
|
+
this.mobileSearchHiddenOnBlur = false;
|
86
|
+
this.searchButtonClick = false;
|
87
|
+
this.foregroundColor = getThemeForegroundColor();
|
88
|
+
this.hasFullWidthSearchBar = false;
|
89
|
+
}
|
90
|
+
watchPropHandler(newValue, oldValue) {
|
91
|
+
//added for gatsby rehydration issue where prop is initially undefined but then changes to actual value
|
92
|
+
//this watch can be removed once gatbsy hydration issue is resolved
|
93
|
+
onComponentPropUndefinedChange(oldValue, newValue, this.initialiseSearchBar);
|
94
|
+
}
|
95
|
+
navBarMenuCloseHandler() {
|
96
|
+
this.showNavMenu(false);
|
97
|
+
const menuBtn = this.el.shadowRoot.querySelector("#menu-button");
|
98
|
+
menuBtn.setFocus();
|
99
|
+
}
|
100
|
+
searchInputBlurHandler(ev) {
|
101
|
+
if (ev.detail !== null) {
|
102
|
+
if (this.mobileSearchBarVisible && !this.searchButtonClick) {
|
103
|
+
//don't hide if blur was triggered by click on search button - let the click handler toggle the state
|
104
|
+
this.toggleSearchBar();
|
105
|
+
}
|
106
|
+
this.searchValue = ev.detail.value;
|
107
|
+
}
|
108
|
+
}
|
109
|
+
searchValueChangeHandler(ev) {
|
110
|
+
this.searchValue = ev.detail.value;
|
111
|
+
}
|
112
|
+
themeChangeHandler(ev) {
|
113
|
+
const theme = ev.detail;
|
114
|
+
this.foregroundColor = theme.mode;
|
115
|
+
}
|
116
|
+
toggleSearchBar() {
|
117
|
+
this.mobileSearchBarVisible = !this.mobileSearchBarVisible;
|
118
|
+
if (this.searchBar !== null) {
|
119
|
+
if (this.mobileSearchBarVisible) {
|
120
|
+
this.mobileSearchButtonEl.updateAriaLabel("Hide search");
|
121
|
+
this.hasFullWidthSearchBar = true;
|
122
|
+
this.searchBar.fullWidth = true;
|
123
|
+
setTimeout(() => {
|
124
|
+
this.searchBar.setFocus();
|
125
|
+
}, 100);
|
126
|
+
}
|
127
|
+
else {
|
128
|
+
this.mobileSearchButtonEl.updateAriaLabel("Show search");
|
129
|
+
this.hasFullWidthSearchBar = false;
|
130
|
+
this.searchBar.fullWidth = false;
|
131
|
+
}
|
132
|
+
}
|
133
|
+
}
|
134
|
+
showNavMenu(show) {
|
135
|
+
this.navMenuVisible = show;
|
136
|
+
if (show) {
|
137
|
+
this.icNavigationMenuOpened.emit();
|
138
|
+
}
|
139
|
+
else {
|
140
|
+
this.icNavigationMenuClosed.emit();
|
141
|
+
}
|
142
|
+
}
|
143
|
+
componentWillLoad() {
|
144
|
+
this.hasAppIcon = isSlotUsed(this.el, "app-icon");
|
145
|
+
this.hasNavigation = isSlotUsed(this.el, "navigation");
|
146
|
+
this.hasIconButtons = isSlotUsed(this.el, "buttons");
|
147
|
+
this.hasSearchSlotContent = isSlotUsed(this.el, "search");
|
148
|
+
this.deviceSize = getCurrentDeviceSize();
|
149
|
+
this.initialiseSearchBar();
|
150
|
+
}
|
151
|
+
componentWillRender() {
|
152
|
+
this.hasNavigation = isSlotUsed(this.el, "navigation");
|
153
|
+
this.hasSearchSlotContent = isSlotUsed(this.el, "search");
|
154
|
+
this.hasIconButtons = isSlotUsed(this.el, "buttons");
|
155
|
+
this.hasAppIcon = isSlotUsed(this.el, "app-icon");
|
156
|
+
}
|
157
|
+
componentDidLoad() {
|
158
|
+
checkResizeObserver(this.runResizeObserver);
|
159
|
+
onComponentRequiredPropUndefined([{ prop: this.appTitle, propName: "app-title" }], "Top Navigation");
|
160
|
+
}
|
161
|
+
disconnectedCallback() {
|
162
|
+
if (this.resizeObserver !== null) {
|
163
|
+
this.resizeObserver.disconnect();
|
164
|
+
}
|
165
|
+
}
|
166
|
+
render() {
|
167
|
+
const hasMenuContent = this.hasNavigation ||
|
168
|
+
this.hasIconButtons ||
|
169
|
+
this.status !== "" ||
|
170
|
+
this.version !== "";
|
171
|
+
const searchButtonSize = this.deviceSize <= DEVICE_SIZES.S ? "default" : "emphasis";
|
172
|
+
let appTitleVariant = "h3";
|
173
|
+
const hasTitle = this.appTitle !== "" && this.appTitle !== undefined;
|
174
|
+
if (this.deviceSize <= DEVICE_SIZES.L) {
|
175
|
+
appTitleVariant = "h4";
|
176
|
+
if (this.deviceSize <= DEVICE_SIZES.S) {
|
177
|
+
appTitleVariant = "subtitle-small";
|
178
|
+
}
|
179
|
+
}
|
180
|
+
const mobileSearchButtonTitle = this.mobileSearchBarVisible
|
181
|
+
? "Hide search"
|
182
|
+
: "Show search";
|
183
|
+
const menuSize = this.deviceSize <= DEVICE_SIZES.S ? "dense" : "default";
|
184
|
+
return (h(Host, { class: {
|
185
|
+
["fullwidth-searchbar"]: this.hasFullWidthSearchBar,
|
186
|
+
[IcThemeForegroundEnum.Dark]: this.foregroundColor === IcThemeForegroundEnum.Dark,
|
187
|
+
} }, h("div", { class: "top-navigation" }, h("ic-section-container", { aligned: "full-width", "full-height": true }, h("header", { role: "banner" }, h("div", { class: "top-panel-container" }, h("div", { class: "app-details-container" }, hasTitle && (h("a", { class: "title-link", href: this.href }, this.hasAppIcon && (h("div", { class: "app-icon-container", "aria-hidden": "true" }, h("slot", { name: "app-icon" }))), h("ic-typography", { variant: appTitleVariant }, h("h1", null, this.appTitle)))), this.status !== "" && (h("div", { class: "app-status" }, h("ic-typography", { "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, this.status))), this.version !== "" && (h("div", { class: "app-version" }, h("ic-typography", { variant: "label", class: "app-version-text", "aria-label": "app version" }, this.version)))), (this.hasSearchSlotContent || hasMenuContent) && (h("div", { class: "search-menu-container" }, h("div", { class: "search-actions-container" }, this.deviceSize > DEVICE_SIZES.L && (h("slot", { name: "search" })), this.hasSearchSlotContent &&
|
188
|
+
this.deviceSize <= DEVICE_SIZES.L && (h("ic-button", { id: "search-toggle-button", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: this.searchButtonMouseDownHandler, variant: "icon", size: searchButtonSize, "aria-label": mobileSearchButtonTitle, buttonStyle: this.foregroundColor, onClick: this.searchButtonClickHandler }, h("slot", { name: "toggle-icon", slot: "icon" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#ffffff" }, h("path", { d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { d: "M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" }))))), this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (h("div", { class: "icon-buttons-container" }, h("slot", { name: "buttons" }))), hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (h("div", { class: "menu-button-container" }, h("nav", { "aria-labelledby": "navigation-landmark-text", "aria-hidden": !this.hasNavigation || this.navMenuVisible
|
189
|
+
? "true"
|
190
|
+
: "false" }, h("ic-button", { id: "menu-button", buttonStyle: this.foregroundColor, variant: "secondary", "aria-expanded": this.menuOpen ? "true" : "false", "aria-haspopup": "true", "aria-label": `Open ${this.hasNavigation ? "navigation" : "app"} menu`, size: menuSize, onClick: this.menuButtonClick }, "Menu", h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#ffffff", slot: "icon" }, h("path", { d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" })))))))))), this.mobileSearchBarVisible && (h("div", { class: "search-bar-container" }, h("slot", { name: "search" }))), this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (h("div", { class: "navigation-tabs" }, h("span", { id: "navigation-landmark-text", class: "navigation-landmark-text", "aria-hidden": "true" }, "Main navigation"), h("nav", { "aria-labelledby": "navigation-landmark-text", class: "nav-panel-container" }, h("ul", { class: "navigation-item-list" }, h("slot", { name: "navigation" })))))))), this.navMenuVisible && (h("ic-navigation-menu", { version: this.version, status: this.status, class: {
|
191
|
+
["inline"]: this.inline,
|
192
|
+
} }, h("div", { class: "menu-buttons-slot", slot: "buttons" }, h("slot", { name: "buttons" })), h("ul", { slot: "navigation" }, h("slot", { name: "navigation" }))))));
|
193
|
+
}
|
194
|
+
get el() { return getElement(this); }
|
195
|
+
static get watchers() { return {
|
196
|
+
"appTitle": ["watchPropHandler"]
|
197
|
+
}; }
|
198
|
+
};
|
199
|
+
TopNavigation.style = icTopNavigationCss;
|
200
|
+
|
201
|
+
export { TopNavigation as ic_top_navigation };
|
202
|
+
|
203
|
+
//# sourceMappingURL=ic-top-navigation.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"file":"ic-top-navigation.entry.js","mappings":"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","names":[],"sources":["./src/components/ic-top-navigation/ic-top-navigation.css?tag=ic-top-navigation&encapsulation=shadow","./src/components/ic-top-navigation/ic-top-navigation.tsx"],"sourcesContent":["@import \"../../global/normalise.css\";\n\n:host {\n display: block;\n color: var(--ic-theme-text);\n width: 100%;\n position: relative;\n}\n\n:host .top-navigation {\n background-color: var(--ic-theme-primary);\n height: max-content;\n}\n\n:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form) {\n width: 100%;\n}\n\n:host .title-link {\n display: inline-flex;\n align-items: center;\n text-decoration: none;\n padding: var(--ic-space-xxs);\n margin-left: calc(-1 * var(--ic-space-xxs));\n transition: var(--ic-easing-transition-fast);\n}\n\n:host .title-link,\n:host .title-link:visited,\n:host .title-link:active {\n color: var(--ic-theme-text);\n}\n\n:host .title-link:hover:not(:focus) {\n background-color: var(--ic-theme-hover);\n}\n\n:host .title-link:active:not(:focus) {\n background-color: var(--ic-theme-active);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n}\n\n:host .title-link:focus {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: none;\n}\n\n:host .title-link ic-typography {\n font-weight: 600;\n}\n\n:host .nav-panel-container {\n border-top: var(--ic-keyline-lighten);\n padding-left: var(--ic-space-lg);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n display: flex;\n}\n\n:host(.dark) .nav-panel-container {\n border-top: var(--ic-keyline-darken);\n}\n\n.top-panel-container {\n display: flex;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n.navigation-tabs {\n margin-top: -1px;\n}\n\n.app-details-container {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n margin-right: var(--ic-space-md);\n}\n\n.app-icon-container {\n display: flex;\n padding-right: var(--ic-space-xs);\n}\n\n.icon-buttons-container {\n display: flex;\n margin-left: var(--ic-space-md);\n}\n\n.icon-buttons-container ::slotted(nav) {\n display: flex;\n}\n\n.app-title {\n padding-right: var(--ic-space-lg);\n}\n\n:host .app-status {\n border-radius: 80px;\n background-color: var(--ic-architectural-white);\n color: var(--ic-color-primary-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n}\n\n:host(.dark) .app-status {\n background-color: var(--ic-theme-text);\n color: var(--ic-color-white-text);\n}\n\n:host .app-version {\n border-radius: 16px;\n background-color: var(--ic-theme-active);\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n margin-left: var(--ic-space-xs);\n}\n\n.app-status-text,\n.app-version-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 96px;\n}\n\nslot[name=\"app-icon\"]::slotted(svg) {\n fill: var(--ic-theme-text);\n width: 2em;\n height: 2em;\n}\n\nslot[name=\"toggle-icon\"] svg {\n fill: var(--ic-theme-text);\n}\n\n.search-menu-container {\n justify-content: right;\n display: flex;\n align-items: center;\n flex: 1 auto;\n}\n\n.menu-button-container {\n margin-left: var(--ic-space-md);\n}\n\n.search-actions-container {\n display: flex;\n}\n\n.menu-buttons-slot {\n display: flex;\n flex-direction: column;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n}\n\n.navigation-item-list {\n display: flex;\n list-style: none;\n height: 44px;\n}\n\n:host([content-aligned=\"left\"]) .app-details-container {\n flex-basis: 1;\n}\n\n:host([content-aligned=\"left\"]) .app-details-container,\n:host([content-aligned=\"left\"]) .nav-panel-container,\n:host([content-aligned=\"center\"]) .nav-panel-container,\n:host([content-aligned=\"left\"]) .search-menu-container,\n:host([content-aligned=\"center\"]) .search-menu-container {\n justify-content: flex-start;\n}\n\n:host([content-aligned=\"center\"]) .app-details-container {\n justify-content: flex-end;\n}\n\n@media screen and (min-width: 993px) {\n .app-details-container {\n margin-right: var(--ic-space-lg);\n }\n\n :host([content-aligned=\"center\"]) .top-navigation {\n display: flex;\n justify-content: center;\n }\n\n :host([content-aligned=\"left\"]) .top-navigation {\n display: flex;\n }\n}\n\n/* large */\n@media screen and (max-width: 1200px) {\n :host .nav-panel-container {\n padding-left: var(--ic-space-md);\n }\n\n /* medium */\n @media screen and (max-width: 992px) {\n :host .nav-panel-container,\n :host .app-status,\n :host .app-version {\n display: none;\n }\n\n :host .title-link {\n margin-right: var(--ic-space-xs);\n }\n\n .search-menu-container {\n max-width: 160px;\n }\n\n .search-bar-container {\n display: flex;\n justify-content: center;\n align-items: center;\n border-top: var(--ic-keyline-darken);\n height: 64px;\n padding-left: var(--ic-space-md);\n padding-right: var(--ic-space-md);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n }\n\n :host([content-aligned=\"left\"]) .app-details-container,\n :host([content-aligned=\"left\"]) .search-menu-container,\n :host([content-aligned=\"center\"]) .search-menu-container,\n :host([content-aligned=\"center\"]) .app-details-container {\n justify-content: flex-start;\n }\n }\n\n /* x small */\n @media screen and (max-width: 576px) {\n :host .title-link {\n margin-right: var(--ic-space-xxxs);\n word-break: break-word;\n hyphens: auto;\n }\n\n .top-panel-container {\n min-height: 40px;\n }\n\n .searchbox-inline {\n display: none;\n }\n\n .search-bar-container {\n margin-top: 0;\n height: 56px;\n padding-left: var(--ic-space-xs);\n padding-right: var(--ic-space-xs);\n }\n\n .menu-button-container {\n margin-left: var(--ic-space-sm);\n }\n\n slot[name=\"app-icon\"]::slotted(svg) {\n width: 1.5em;\n height: 1.5em;\n }\n\n slot[name=\"toggle-icon\"] svg {\n width: 1.5em;\n height: 1.5em;\n }\n\n :host([content-aligned=\"left\"]) .app-details-container,\n :host([content-aligned=\"left\"]) .search-menu-container,\n :host([content-aligned=\"center\"]) .app-details-container,\n :host([content-aligned=\"center\"]) .search-menu-container {\n justify-content: flex-start;\n }\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n IcTypographyVariants,\n IcAlignment,\n IcThemeForeground,\n IcThemeForegroundEnum,\n IcTheme,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getThemeForegroundColor,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title.\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\n@Component({\n tag: \"ic-top-navigation\",\n styleUrl: \"ic-top-navigation.css\",\n shadow: true,\n})\nexport class TopNavigation {\n @Element() el: HTMLIcTopNavigationElement;\n\n /**\n * Title to display\n */\n @Prop() appTitle!: string;\n\n /**\n * The url to navigate to when title is clicked\n */\n @Prop() href: string = \"/\";\n\n /**\n * Version info to display\n */\n @Prop() version: string = \"\";\n\n /**\n * Status info to display\n */\n @Prop() status: string = \"\";\n\n /**\n * The alignment of the top nav content\n */\n @Prop() contentAligned: IcAlignment = \"full-width\";\n\n /**\n * If true, the flyout navigation menu on small devices will be contained by the parent element\n */\n @Prop() inline: boolean = false;\n\n @State() menuOpen: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() mobileSearchBarVisible: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchValue: string = \"\";\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n @State() hasFullWidthSearchBar: boolean = false;\n\n @Watch(\"appTitle\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once gatbsy hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n private hasAppIcon: boolean = false;\n private hasNavigation: boolean = false;\n private hasIconButtons: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private searchBar: HTMLIcSearchBarElement = null;\n private mobileSearchButtonEl: HTMLIcButtonElement;\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n const menuBtn = this.el.shadowRoot.querySelector(\n \"#menu-button\"\n ) as HTMLIcButtonElement;\n menuBtn.setFocus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler(ev: CustomEvent): void {\n if (ev.detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = ev.detail.value;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler(ev: CustomEvent): void {\n this.searchValue = ev.detail.value;\n }\n\n @Listen(\"icThemeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot && slot.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot && slot.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\n \"ic-search-bar\"\n ) as HTMLIcSearchBarElement;\n }\n\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n\n private toggleSearchBar(): void {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n\n if (this.searchBar !== null) {\n if (this.mobileSearchBarVisible) {\n this.mobileSearchButtonEl.updateAriaLabel(\"Hide search\");\n this.hasFullWidthSearchBar = true;\n this.searchBar.fullWidth = true;\n setTimeout(() => {\n this.searchBar.setFocus();\n }, 100);\n } else {\n this.mobileSearchButtonEl.updateAriaLabel(\"Show search\");\n this.hasFullWidthSearchBar = false;\n this.searchBar.fullWidth = false;\n }\n }\n }\n\n private emitTopNavResized = (size: number): void => {\n const event = new CustomEvent(\"topNavResized\", { detail: { size: size } });\n this.el.dispatchEvent(event);\n };\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n if (show) {\n this.icNavigationMenuOpened.emit();\n } else {\n this.icNavigationMenuClosed.emit();\n }\n }\n\n private searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n\n private searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n\n private resizeObserver: ResizeObserver = null;\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > DEVICE_SIZES.L) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.emitTopNavResized(currSize);\n if (\n document.activeElement !== null &&\n document.activeElement !== undefined &&\n document.activeElement.tagName === \"IC-SEARCH-BAR\"\n ) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar.setFocus();\n }, 100);\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n componentWillLoad(): void {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentWillRender(): void {\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const hasMenuContent =\n this.hasNavigation ||\n this.hasIconButtons ||\n this.status !== \"\" ||\n this.version !== \"\";\n\n const searchButtonSize =\n this.deviceSize <= DEVICE_SIZES.S ? \"default\" : \"emphasis\";\n\n let appTitleVariant: IcTypographyVariants = \"h3\";\n\n const hasTitle = this.appTitle !== \"\" && this.appTitle !== undefined;\n\n if (this.deviceSize <= DEVICE_SIZES.L) {\n appTitleVariant = \"h4\";\n if (this.deviceSize <= DEVICE_SIZES.S) {\n appTitleVariant = \"subtitle-small\";\n }\n }\n\n const mobileSearchButtonTitle = this.mobileSearchBarVisible\n ? \"Hide search\"\n : \"Show search\";\n const menuSize = this.deviceSize <= DEVICE_SIZES.S ? \"dense\" : \"default\";\n\n return (\n <Host\n class={{\n [\"fullwidth-searchbar\"]: this.hasFullWidthSearchBar,\n [IcThemeForegroundEnum.Dark]:\n this.foregroundColor === IcThemeForegroundEnum.Dark,\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned=\"full-width\" full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {hasTitle && (\n <a class=\"title-link\" href={this.href}>\n {this.hasAppIcon && (\n <div class=\"app-icon-container\" aria-hidden=\"true\">\n <slot name=\"app-icon\" />\n </div>\n )}\n <ic-typography variant={appTitleVariant}>\n <h1>{this.appTitle}</h1>\n </ic-typography>\n </a>\n )}\n {this.status !== \"\" && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {this.status}\n </ic-typography>\n </div>\n )}\n {this.version !== \"\" && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {this.version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(this.hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {this.deviceSize > DEVICE_SIZES.L && (\n <slot name=\"search\"></slot>\n )}\n\n {this.hasSearchSlotContent &&\n this.deviceSize <= DEVICE_SIZES.L && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={this.searchButtonMouseDownHandler}\n variant=\"icon\"\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n buttonStyle={this.foregroundColor}\n onClick={this.searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\" slot=\"icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" />\n </svg>\n </slot>\n </ic-button>\n )}\n\n {this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (\n <div class=\"menu-button-container\">\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n aria-hidden={\n !this.hasNavigation || this.navMenuVisible\n ? \"true\"\n : \"false\"\n }\n >\n <ic-button\n id=\"menu-button\"\n buttonStyle={this.foregroundColor}\n variant=\"secondary\"\n aria-expanded={this.menuOpen ? \"true\" : \"false\"}\n aria-haspopup=\"true\"\n aria-label={`Open ${\n this.hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={this.menuButtonClick}\n >\n Menu\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n slot=\"icon\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" />\n </svg>\n </ic-button>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n\n {this.mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main navigation\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ul class=\"navigation-item-list\">\n <slot name=\"navigation\"></slot>\n </ul>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {this.navMenuVisible && (\n <ic-navigation-menu\n version={this.version}\n status={this.status}\n class={{\n [\"inline\"]: this.inline,\n }}\n >\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|