@ukic/web-components 3.0.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -5
- package/dist/cjs/app-globals-3a1e7e63.js +7 -0
- package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
- package/dist/cjs/core.cjs.js +13 -11
- package/dist/cjs/core.cjs.js.map +1 -1
- package/dist/cjs/{helpers-94b33ab0.js → helpers-789082d4.js} +159 -75
- package/dist/cjs/helpers-789082d4.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +38 -22
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +75 -46
- package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +93 -46
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +32 -16
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +91 -42
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +114 -63
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +78 -18
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +366 -168
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +93 -72
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +51 -14
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +55 -31
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +64 -32
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +22 -6
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +17 -7
- package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +31 -20
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +170 -114
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +95 -12
- package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +21 -24
- package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +12 -14
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +15 -16
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +52 -30
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +35 -32
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +40 -21
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +587 -244
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +65 -40
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +43 -28
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +6 -7
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +41 -33
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +32 -24
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +69 -44
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +122 -45
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +55 -33
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +53 -31
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +37 -24
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +76 -36
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +97 -60
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +103 -48
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +70 -39
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +195 -108
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +12 -5
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +418 -199
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +119 -79
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +15 -8
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skip-link.cjs.entry.js +62 -0
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-status-tag.cjs.entry.js +30 -10
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +37 -37
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +60 -36
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +63 -31
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +112 -152
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +18 -14
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +19 -15
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +31 -22
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +235 -87
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +54 -23
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js +8 -3
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +30 -23
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +117 -35
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +110 -23
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +65 -35
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +59 -30
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-d337cd8a.js +2611 -0
- package/dist/cjs/index-d337cd8a.js.map +1 -0
- package/dist/cjs/loader.cjs.js +5 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/collection/ag-theme-icds.css +218 -0
- package/dist/collection/collection-manifest.json +8 -7
- package/dist/collection/components/ic-accordion/ic-accordion.css +30 -17
- package/dist/collection/components/ic-accordion/ic-accordion.js +116 -76
- package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
- package/dist/collection/components/ic-accordion/ic-accordion.stories.js +611 -0
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +3 -8
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +65 -37
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
- package/dist/collection/components/ic-alert/ic-alert.css +52 -19
- package/dist/collection/components/ic-alert/ic-alert.js +164 -50
- package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
- package/dist/collection/components/ic-alert/ic-alert.stories.js +271 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +54 -20
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +86 -14
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.stories.js +216 -0
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.types.js.map +1 -1
- package/dist/collection/components/ic-badge/ic-badge.css +44 -11
- package/dist/collection/components/ic-badge/ic-badge.js +160 -53
- package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
- package/dist/collection/components/ic-badge/ic-badge.stories.js +1092 -0
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +32 -8
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +142 -46
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +165 -84
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +362 -0
- package/dist/collection/components/ic-button/ic-button.css +722 -429
- package/dist/collection/components/ic-button/ic-button.js +331 -139
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.stories.js +2364 -0
- package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +115 -104
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +160 -86
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1050 -0
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +80 -35
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +123 -45
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +20 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +108 -23
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +726 -0
- package/dist/collection/components/ic-chip/ic-chip.css +66 -48
- package/dist/collection/components/ic-chip/ic-chip.js +126 -38
- package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
- package/dist/collection/components/ic-chip/ic-chip.stories.js +980 -0
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +20 -10
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +33 -8
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.stories.js +131 -0
- package/dist/collection/components/ic-data-list/ic-data-list.css +5 -1
- package/dist/collection/components/ic-data-list/ic-data-list.js +47 -8
- package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -1
- package/dist/collection/components/ic-data-list/ic-data-list.stories.js +493 -0
- package/dist/collection/components/ic-data-row/ic-data-row.css +5 -2
- package/dist/collection/components/ic-data-row/ic-data-row.js +64 -21
- package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.css +18 -10
- package/dist/collection/components/ic-dialog/ic-dialog.js +248 -144
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.stories.js +1118 -0
- package/dist/collection/components/ic-divider/ic-divider.css +298 -4
- package/dist/collection/components/ic-divider/ic-divider.js +272 -12
- package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
- package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
- package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
- package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
- package/dist/collection/components/ic-empty-state/ic-empty-state.css +17 -2
- package/dist/collection/components/ic-empty-state/ic-empty-state.js +63 -28
- package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
- package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +404 -0
- package/dist/collection/components/ic-footer/ic-footer.css +25 -17
- package/dist/collection/components/ic-footer/ic-footer.js +72 -38
- package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
- package/dist/collection/components/ic-footer/ic-footer.stories.js +384 -0
- package/dist/collection/components/ic-footer-link/ic-footer-link.css +28 -5
- package/dist/collection/components/ic-footer-link/ic-footer-link.js +32 -22
- package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +13 -20
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +12 -12
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
- package/dist/collection/components/ic-hero/ic-hero.css +25 -10
- package/dist/collection/components/ic-hero/ic-hero.js +66 -45
- package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
- package/dist/collection/components/ic-hero/ic-hero.stories.js +448 -0
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +2 -6
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +97 -22
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +51 -18
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +74 -64
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
- package/dist/collection/components/ic-input-container/ic-input-container.js +16 -6
- package/dist/collection/components/ic-input-container/ic-input-container.js.map +1 -1
- package/dist/collection/components/ic-input-label/ic-input-label.css +19 -20
- package/dist/collection/components/ic-input-label/ic-input-label.js +97 -41
- package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
- package/dist/collection/components/ic-input-validation/ic-input-validation.css +12 -3
- package/dist/collection/components/ic-input-validation/ic-input-validation.js +36 -19
- package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
- package/dist/collection/components/ic-link/ic-link.css +66 -25
- package/dist/collection/components/ic-link/ic-link.js +107 -59
- package/dist/collection/components/ic-link/ic-link.js.map +1 -1
- package/dist/collection/components/ic-link/ic-link.stories.js +85 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +20 -13
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +183 -102
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +464 -0
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
- package/dist/collection/components/ic-menu/ic-menu.css +116 -23
- package/dist/collection/components/ic-menu/ic-menu.js +640 -257
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu/ic-menu.types.js.map +1 -1
- package/dist/collection/components/ic-menu-group/ic-menu-group.css +3 -2
- package/dist/collection/components/ic-menu-group/ic-menu-group.js +4 -5
- package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.css +45 -23
- package/dist/collection/components/ic-menu-item/ic-menu-item.js +115 -48
- package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +18 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +77 -29
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +52 -51
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +158 -47
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js +2 -0
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js.map +1 -0
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +60 -65
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +188 -62
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +13 -5
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +84 -32
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
- package/dist/collection/components/ic-page-header/ic-page-header.css +7 -3
- package/dist/collection/components/ic-page-header/ic-page-header.js +99 -35
- package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
- package/dist/collection/components/ic-page-header/ic-page-header.stories.js +823 -0
- package/dist/collection/components/ic-pagination/ic-pagination.css +24 -1
- package/dist/collection/components/ic-pagination/ic-pagination.js +157 -73
- package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.stories.js +164 -0
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +54 -15
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +99 -52
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +8 -4
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +184 -69
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +573 -0
- package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +162 -59
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +474 -0
- package/dist/collection/components/ic-radio-option/ic-radio-option.css +59 -27
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +130 -47
- package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.css +109 -16
- package/dist/collection/components/ic-search-bar/ic-search-bar.js +342 -147
- package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +593 -0
- package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
- package/dist/collection/components/ic-section-container/ic-section-container.js +15 -5
- package/dist/collection/components/ic-section-container/ic-section-container.js.map +1 -1
- package/dist/collection/components/ic-section-container/ic-section-container.stories.js +62 -0
- package/dist/collection/components/ic-select/ic-select.css +105 -55
- package/dist/collection/components/ic-select/ic-select.js +591 -248
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
- package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +965 -0
- package/dist/collection/components/ic-select/ic-select_(single).stories.js +790 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +64 -38
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +162 -100
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +2547 -0
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
- package/dist/collection/components/ic-skeleton/ic-skeleton.css +4 -27
- package/dist/collection/components/ic-skeleton/ic-skeleton.js +29 -13
- package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
- package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +143 -0
- package/dist/collection/components/ic-skip-link/ic-skip-link.css +46 -0
- package/dist/collection/components/ic-skip-link/ic-skip-link.js +231 -0
- package/dist/collection/components/ic-skip-link/ic-skip-link.js.map +1 -0
- package/dist/collection/components/ic-skip-link/ic-skip-link.stories.js +504 -0
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +27 -17
- package/dist/collection/components/ic-status-tag/ic-status-tag.js +80 -10
- package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +196 -0
- package/dist/collection/components/ic-step/ic-step.css +69 -126
- package/dist/collection/components/ic-step/ic-step.js +95 -42
- package/dist/collection/components/ic-step/ic-step.js.map +1 -1
- package/dist/collection/components/ic-stepper/ic-stepper.js +96 -54
- package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
- package/dist/collection/components/ic-stepper/ic-stepper.stories.js +281 -0
- package/dist/collection/components/ic-switch/ic-switch.css +30 -48
- package/dist/collection/components/ic-switch/ic-switch.js +106 -48
- package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
- package/dist/collection/components/ic-switch/ic-switch.stories.js +149 -0
- package/dist/collection/components/ic-tab/ic-tab.css +53 -17
- package/dist/collection/components/ic-tab/ic-tab.js +97 -51
- package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
- package/dist/collection/components/ic-tab-context/ic-tab-context.js +170 -180
- package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
- package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +316 -0
- package/dist/collection/components/ic-tab-group/ic-tab-group.css +14 -7
- package/dist/collection/components/ic-tab-group/ic-tab-group.js +70 -38
- package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +7 -3
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +86 -29
- package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
- package/dist/collection/components/ic-text-field/ic-text-field.css +64 -8
- package/dist/collection/components/ic-text-field/ic-text-field.js +484 -154
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
- package/dist/collection/components/ic-text-field/ic-text-field.stories.js +1048 -0
- package/dist/collection/components/ic-theme/ic-theme.js +121 -35
- package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
- package/dist/collection/components/ic-theme/ic-theme.stories.js +434 -0
- package/dist/collection/components/ic-toast/ic-toast.css +41 -17
- package/dist/collection/components/ic-toast/ic-toast.js +49 -29
- package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
- package/dist/collection/components/ic-toast/ic-toast.stories.js +396 -0
- package/dist/collection/components/ic-toast-region/ic-toast-region.js +12 -5
- package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +188 -58
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +226 -63
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +427 -0
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +23 -16
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +228 -64
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +585 -0
- package/dist/collection/components/ic-tooltip/ic-tooltip.css +14 -5
- package/dist/collection/components/ic-tooltip/ic-tooltip.js +123 -36
- package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +366 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +57 -21
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +122 -50
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +1091 -0
- package/dist/collection/components/ic-typography/ic-typography.css +11 -7
- package/dist/collection/components/ic-typography/ic-typography.js +101 -32
- package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
- package/dist/collection/components/ic-typography/ic-typography.stories.js +447 -0
- package/dist/collection/patterns/top-nav-content-footer.stories.js +109 -0
- package/dist/collection/patterns/z-index.stories.js +474 -0
- package/dist/collection/utils/constants.js +40 -1
- package/dist/collection/utils/constants.js.map +1 -1
- package/dist/collection/utils/helpers.js +97 -68
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/collection/utils/testa11y.helpers.js +2 -1
- package/dist/collection/utils/testa11y.helpers.js.map +1 -1
- package/dist/collection/utils/types.js +6 -6
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/helpers.js +151 -70
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-accordion-group.js +38 -21
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-accordion.js +76 -45
- package/dist/components/ic-accordion.js.map +1 -1
- package/dist/components/ic-alert.js +98 -47
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-back-to-top.js +33 -14
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +93 -42
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +119 -64
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +81 -17
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-button2.js +190 -79
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +98 -74
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +53 -12
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +56 -29
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +68 -31
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-classification-banner.js +21 -5
- package/dist/components/ic-classification-banner.js.map +1 -1
- package/dist/components/ic-data-list.js +18 -7
- package/dist/components/ic-data-list.js.map +1 -1
- package/dist/components/ic-data-row.js +31 -18
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-dialog.js +172 -114
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-divider2.js +110 -14
- package/dist/components/ic-divider2.js.map +1 -1
- package/dist/components/ic-empty-state.js +23 -24
- package/dist/components/ic-empty-state.js.map +1 -1
- package/dist/components/ic-footer-link-group.js +12 -13
- package/dist/components/ic-footer-link-group.js.map +1 -1
- package/dist/components/ic-footer-link.js +15 -15
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-footer.js +52 -30
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +36 -33
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +41 -20
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +48 -36
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-container2.js +12 -5
- package/dist/components/ic-input-container2.js.map +1 -1
- package/dist/components/ic-input-label2.js +42 -23
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation2.js +22 -15
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link2.js +45 -29
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +109 -68
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-group.js +5 -5
- package/dist/components/ic-menu-group.js.map +1 -1
- package/dist/components/ic-menu-item2.js +46 -35
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +535 -209
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +33 -24
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +72 -44
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +125 -45
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +55 -31
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +53 -29
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +39 -23
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination.js +77 -34
- package/dist/components/ic-pagination.js.map +1 -1
- package/dist/components/ic-popover-menu.js +99 -59
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +105 -47
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +72 -38
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +210 -132
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-section-container2.js +11 -4
- package/dist/components/ic-section-container2.js.map +1 -1
- package/dist/components/ic-select.js +421 -199
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +119 -79
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +15 -8
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-skip-link.d.ts +11 -0
- package/dist/components/ic-skip-link.js +91 -0
- package/dist/components/ic-skip-link.js.map +1 -0
- package/dist/components/ic-status-tag.js +30 -7
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +37 -35
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +61 -35
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +65 -31
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +116 -154
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +19 -14
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +22 -16
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +32 -22
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field.js +504 -1
- package/dist/components/ic-text-field.js.map +1 -1
- package/dist/components/ic-theme.js +59 -25
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast-region.js +7 -2
- package/dist/components/ic-toast-region.js.map +1 -1
- package/dist/components/ic-toast.js +29 -22
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +129 -36
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +121 -29
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +75 -25
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +66 -35
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-typography2.js +58 -27
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/ag-theme-icds.css +218 -0
- package/dist/core/core.css +1737 -64
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/index.esm.js.map +1 -1
- package/dist/core/p-005cd8a8.entry.js +2 -0
- package/dist/core/p-005cd8a8.entry.js.map +1 -0
- package/dist/core/p-0631c3ab.entry.js +2 -0
- package/dist/core/p-0631c3ab.entry.js.map +1 -0
- package/dist/core/p-0a8b3967.entry.js +2 -0
- package/dist/core/p-0a8b3967.entry.js.map +1 -0
- package/dist/core/p-0b4350df.entry.js +2 -0
- package/dist/core/p-0b4350df.entry.js.map +1 -0
- package/dist/core/p-0e618fc5.entry.js +2 -0
- package/dist/core/p-0e618fc5.entry.js.map +1 -0
- package/dist/core/p-18ecba80.entry.js +2 -0
- package/dist/core/p-18ecba80.entry.js.map +1 -0
- package/dist/core/p-1e4cdd2d.entry.js +2 -0
- package/dist/core/p-1e4cdd2d.entry.js.map +1 -0
- package/dist/core/p-23d059ff.entry.js +2 -0
- package/dist/core/p-23d059ff.entry.js.map +1 -0
- package/dist/core/{p-54238d16.entry.js → p-23ed8b99.entry.js} +2 -2
- package/dist/core/p-23ed8b99.entry.js.map +1 -0
- package/dist/core/p-281ce313.js +2 -0
- package/dist/core/p-281ce313.js.map +1 -0
- package/dist/core/p-30abe545.entry.js +2 -0
- package/dist/core/p-30abe545.entry.js.map +1 -0
- package/dist/core/p-3132270d.entry.js +2 -0
- package/dist/core/p-3132270d.entry.js.map +1 -0
- package/dist/core/p-33c86ba6.entry.js +2 -0
- package/dist/core/p-33c86ba6.entry.js.map +1 -0
- package/dist/core/p-3675c4b4.entry.js +2 -0
- package/dist/core/p-3675c4b4.entry.js.map +1 -0
- package/dist/core/p-3b185c32.js.map +1 -1
- package/dist/core/p-3b5d3e24.entry.js +2 -0
- package/dist/core/p-3b5d3e24.entry.js.map +1 -0
- package/dist/core/p-3eb7ef1d.entry.js +2 -0
- package/dist/core/p-3eb7ef1d.entry.js.map +1 -0
- package/dist/core/{p-a87d13b3.entry.js → p-40f2f58e.entry.js} +2 -2
- package/dist/core/p-40f2f58e.entry.js.map +1 -0
- package/dist/core/p-4245a976.entry.js +2 -0
- package/dist/core/p-4245a976.entry.js.map +1 -0
- package/dist/core/p-426ec638.js.map +1 -1
- package/dist/core/p-44e4e8c1.entry.js +2 -0
- package/dist/core/p-44e4e8c1.entry.js.map +1 -0
- package/dist/core/p-45432bf5.entry.js +2 -0
- package/dist/core/p-45432bf5.entry.js.map +1 -0
- package/dist/core/p-4b601e06.entry.js +2 -0
- package/dist/core/p-4b601e06.entry.js.map +1 -0
- package/dist/core/{p-bf89c86d.entry.js → p-4b6818d9.entry.js} +2 -2
- package/dist/core/p-4b6818d9.entry.js.map +1 -0
- package/dist/core/p-517d7afb.entry.js +2 -0
- package/dist/core/p-517d7afb.entry.js.map +1 -0
- package/dist/core/p-5206a978.entry.js +2 -0
- package/dist/core/p-5206a978.entry.js.map +1 -0
- package/dist/core/p-5d4b0480.entry.js +2 -0
- package/dist/core/p-5d4b0480.entry.js.map +1 -0
- package/dist/core/p-5e18b899.entry.js +2 -0
- package/dist/core/p-5e18b899.entry.js.map +1 -0
- package/dist/core/p-6337fe1f.entry.js +2 -0
- package/dist/core/p-6337fe1f.entry.js.map +1 -0
- package/dist/core/p-63fe83ad.entry.js +2 -0
- package/dist/core/p-63fe83ad.entry.js.map +1 -0
- package/dist/core/p-68a5aaff.js.map +1 -1
- package/dist/core/p-6de6b6b7.entry.js +2 -0
- package/dist/core/p-6de6b6b7.entry.js.map +1 -0
- package/dist/core/p-70700c7a.entry.js +2 -0
- package/dist/core/p-70700c7a.entry.js.map +1 -0
- package/dist/core/p-7a0d238b.entry.js +2 -0
- package/dist/core/p-7a0d238b.entry.js.map +1 -0
- package/dist/core/p-7afc71d0.entry.js +2 -0
- package/dist/core/p-7afc71d0.entry.js.map +1 -0
- package/dist/core/p-7c0914e7.entry.js +2 -0
- package/dist/core/p-7c0914e7.entry.js.map +1 -0
- package/dist/core/p-7dfe0284.entry.js +2 -0
- package/dist/core/p-7dfe0284.entry.js.map +1 -0
- package/dist/core/p-81a12e36.entry.js +2 -0
- package/dist/core/p-81a12e36.entry.js.map +1 -0
- package/dist/core/p-88924aef.entry.js +2 -0
- package/dist/core/p-88924aef.entry.js.map +1 -0
- package/dist/core/p-8ba129fc.entry.js +2 -0
- package/dist/core/p-8ba129fc.entry.js.map +1 -0
- package/dist/core/p-8e4e97b4.js +3 -0
- package/dist/core/p-8e4e97b4.js.map +1 -0
- package/dist/core/p-950db960.entry.js +2 -0
- package/dist/core/p-950db960.entry.js.map +1 -0
- package/dist/core/p-959a9cdf.entry.js +2 -0
- package/dist/core/p-959a9cdf.entry.js.map +1 -0
- package/dist/core/p-9ea9a4ce.entry.js +2 -0
- package/dist/core/p-9ea9a4ce.entry.js.map +1 -0
- package/dist/core/p-a9c96e3e.entry.js +2 -0
- package/dist/core/p-a9c96e3e.entry.js.map +1 -0
- package/dist/core/p-abaea607.entry.js +2 -0
- package/dist/core/p-abaea607.entry.js.map +1 -0
- package/dist/core/p-ac7db165.entry.js +2 -0
- package/dist/core/p-ac7db165.entry.js.map +1 -0
- package/dist/core/p-acebb05c.entry.js +2 -0
- package/dist/core/p-acebb05c.entry.js.map +1 -0
- package/dist/core/p-b3ac38c5.entry.js +2 -0
- package/dist/core/p-b3ac38c5.entry.js.map +1 -0
- package/dist/core/p-b3d6d5be.entry.js +2 -0
- package/dist/core/p-b3d6d5be.entry.js.map +1 -0
- package/dist/core/p-bbe5596b.entry.js +2 -0
- package/dist/core/p-bbe5596b.entry.js.map +1 -0
- package/dist/core/p-c04f36c5.entry.js +2 -0
- package/dist/core/p-c04f36c5.entry.js.map +1 -0
- package/dist/core/p-c2ca6274.entry.js +2 -0
- package/dist/core/p-c2ca6274.entry.js.map +1 -0
- package/dist/core/p-c2e091d7.js.map +1 -1
- package/dist/core/p-c62318a8.entry.js +2 -0
- package/dist/core/p-c62318a8.entry.js.map +1 -0
- package/dist/core/p-de43d375.entry.js +2 -0
- package/dist/core/p-de43d375.entry.js.map +1 -0
- package/dist/core/p-e1255160.js +2 -0
- package/dist/core/p-e1255160.js.map +1 -0
- package/dist/core/p-e2f893f0.entry.js +2 -0
- package/dist/core/p-e2f893f0.entry.js.map +1 -0
- package/dist/core/p-e56d0db2.entry.js +2 -0
- package/dist/core/p-e56d0db2.entry.js.map +1 -0
- package/dist/core/p-e586ae7b.entry.js +2 -0
- package/dist/core/p-e586ae7b.entry.js.map +1 -0
- package/dist/core/p-ef09b450.entry.js +2 -0
- package/dist/core/p-ef09b450.entry.js.map +1 -0
- package/dist/core/p-f074ef5b.js.map +1 -1
- package/dist/core/p-f34eee68.entry.js +2 -0
- package/dist/core/p-f34eee68.entry.js.map +1 -0
- package/dist/core/p-f3c72ffb.entry.js +2 -0
- package/dist/core/p-f3c72ffb.entry.js.map +1 -0
- package/dist/core/{p-a0e4d6bd.entry.js → p-f815f8c9.entry.js} +2 -2
- package/dist/core/p-f815f8c9.entry.js.map +1 -0
- package/dist/core/p-fbde763c.entry.js +2 -0
- package/dist/core/p-fbde763c.entry.js.map +1 -0
- package/dist/core/p-fc50d582.entry.js +2 -0
- package/dist/core/p-fc50d582.entry.js.map +1 -0
- package/dist/core/p-fe833509.entry.js +2 -0
- package/dist/core/p-fe833509.entry.js.map +1 -0
- package/dist/esm/app-globals-0f993ce5.js +5 -0
- package/dist/esm/app-globals-0f993ce5.js.map +1 -0
- package/dist/esm/core.js +14 -12
- package/dist/esm/core.js.map +1 -1
- package/dist/esm/{helpers-35ac5e03.js → helpers-46a2d1fd.js} +152 -71
- package/dist/esm/helpers-46a2d1fd.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +38 -22
- package/dist/esm/ic-accordion-group.entry.js.map +1 -1
- package/dist/esm/ic-accordion.entry.js +75 -46
- package/dist/esm/ic-accordion.entry.js.map +1 -1
- package/dist/esm/ic-alert.entry.js +93 -46
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +32 -16
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +91 -42
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +114 -63
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +78 -18
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +366 -168
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +93 -72
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +51 -14
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +55 -31
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +64 -32
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +22 -6
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +17 -7
- package/dist/esm/ic-data-list.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +31 -20
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +170 -114
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +95 -12
- package/dist/esm/ic-divider.entry.js.map +1 -1
- package/dist/esm/ic-empty-state.entry.js +21 -24
- package/dist/esm/ic-empty-state.entry.js.map +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +12 -14
- package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
- package/dist/esm/ic-footer-link.entry.js +15 -16
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +52 -30
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +35 -32
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +40 -21
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +587 -244
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +62 -37
- package/dist/esm/ic-input-label_2.entry.js.map +1 -1
- package/dist/esm/ic-link.entry.js +43 -28
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +6 -7
- package/dist/esm/ic-menu-group.entry.js.map +1 -1
- package/dist/esm/ic-menu-item.entry.js +41 -33
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +32 -24
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +69 -44
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +122 -45
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +55 -33
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +53 -31
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination-item.entry.js +37 -24
- package/dist/esm/ic-pagination-item.entry.js.map +1 -1
- package/dist/esm/ic-pagination.entry.js +76 -36
- package/dist/esm/ic-pagination.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +97 -60
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +103 -48
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +70 -39
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +195 -108
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +12 -5
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-select.entry.js +418 -199
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +119 -79
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +15 -8
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-skip-link.entry.js +58 -0
- package/dist/esm/ic-skip-link.entry.js.map +1 -0
- package/dist/esm/ic-status-tag.entry.js +30 -10
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +37 -37
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +60 -36
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +63 -31
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +112 -152
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +18 -14
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +19 -15
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +31 -22
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-text-field.entry.js +229 -81
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +54 -23
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast-region.entry.js +8 -3
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +30 -23
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +117 -35
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +110 -23
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +65 -35
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +59 -30
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-a7a720e7.js +2580 -0
- package/dist/esm/index-a7a720e7.js.map +1 -0
- package/dist/esm/loader.js +6 -4
- package/dist/esm/loader.js.map +1 -1
- package/dist/types/components/ic-accordion/ic-accordion.d.ts +10 -8
- package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +9 -9
- package/dist/types/components/ic-alert/ic-alert.d.ts +24 -8
- package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +11 -2
- package/dist/types/components/ic-back-to-top/ic-back-to-top.types.d.ts +1 -0
- package/dist/types/components/ic-badge/ic-badge.d.ts +15 -5
- package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +19 -6
- package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +16 -9
- package/dist/types/components/ic-button/ic-button.d.ts +19 -13
- package/dist/types/components/ic-button/ic-button.types.d.ts +0 -1
- package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +9 -5
- package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +17 -12
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +15 -8
- package/dist/types/components/ic-chip/ic-chip.d.ts +13 -2
- package/dist/types/components/ic-data-list/ic-data-list.d.ts +6 -2
- package/dist/types/components/ic-data-row/ic-data-row.d.ts +7 -3
- package/dist/types/components/ic-dialog/ic-dialog.d.ts +21 -12
- package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
- package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
- package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +5 -2
- package/dist/types/components/ic-footer/ic-footer.d.ts +8 -7
- package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
- package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +3 -2
- package/dist/types/components/ic-hero/ic-hero.d.ts +6 -7
- package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
- package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +8 -11
- package/dist/types/components/ic-input-label/ic-input-label.d.ts +10 -6
- package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +4 -4
- package/dist/types/components/ic-link/ic-link.d.ts +10 -6
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +12 -8
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +1 -1
- package/dist/types/components/ic-menu/ic-menu.d.ts +56 -23
- package/dist/types/components/ic-menu/ic-menu.types.d.ts +1 -1
- package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +13 -6
- package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +8 -4
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +25 -9
- package/dist/types/components/ic-navigation-group/ic-navigation-group.types.d.ts +6 -0
- package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +22 -11
- package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +10 -3
- package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
- package/dist/types/components/ic-pagination/ic-pagination.d.ts +19 -14
- package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +14 -9
- package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +13 -11
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +15 -10
- package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +16 -9
- package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +26 -14
- package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +1 -1
- package/dist/types/components/ic-select/ic-select.d.ts +53 -32
- package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +15 -15
- package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
- package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -2
- package/dist/types/components/ic-skip-link/ic-skip-link.d.ts +38 -0
- package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +8 -0
- package/dist/types/components/ic-step/ic-step.d.ts +5 -0
- package/dist/types/components/ic-stepper/ic-stepper.d.ts +7 -5
- package/dist/types/components/ic-switch/ic-switch.d.ts +8 -7
- package/dist/types/components/ic-tab/ic-tab.d.ts +8 -5
- package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +19 -12
- package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +5 -5
- package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +9 -3
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +59 -34
- package/dist/types/components/ic-theme/ic-theme.d.ts +19 -8
- package/dist/types/components/ic-toast/ic-toast.d.ts +3 -3
- package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +2 -1
- package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +17 -8
- package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +21 -5
- package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +9 -1
- package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +16 -12
- package/dist/types/components/ic-typography/ic-typography.d.ts +6 -2
- package/dist/types/components.d.ts +975 -389
- package/dist/types/stencil-public-runtime.d.ts +9 -10
- package/dist/types/utils/constants.d.ts +1 -0
- package/dist/types/utils/helpers.d.ts +35 -17
- package/dist/types/utils/types.d.ts +18 -10
- package/hydrate/index.d.ts +53 -12
- package/hydrate/index.js +32853 -19673
- package/hydrate/index.mjs +34474 -0
- package/hydrate/package.json +7 -1
- package/loader/cdn.js +1 -3
- package/loader/index.cjs.js +1 -3
- package/loader/index.d.ts +3 -0
- package/loader/index.es2017.js +1 -3
- package/loader/index.js +1 -3
- package/package.json +22 -21
- package/vscode-data.json +1017 -653
- package/dist/cjs/helpers-94b33ab0.js.map +0 -1
- package/dist/cjs/index-f982899d.js +0 -3047
- package/dist/cjs/index-f982899d.js.map +0 -1
- package/dist/cjs/types-dc22e301.js +0 -16
- package/dist/cjs/types-dc22e301.js.map +0 -1
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +0 -346
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +0 -1
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +0 -129
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +0 -1
- package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +0 -197
- package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +0 -1
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +0 -131
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +0 -1
- package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +0 -264
- package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +0 -1
- package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +0 -118
- package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +0 -1
- package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +0 -219
- package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +0 -1
- package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +0 -332
- package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +0 -1
- package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +0 -173
- package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +0 -1
- package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +0 -281
- package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +0 -1
- package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +0 -169
- package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +0 -1
- package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +0 -188
- package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +0 -1
- package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js +0 -161
- package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +0 -1
- package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +0 -74
- package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +0 -1
- package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +0 -428
- package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +0 -1
- package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +0 -24
- package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +0 -1
- package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +0 -140
- package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +0 -1
- package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +0 -46
- package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +0 -1
- package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +0 -66
- package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +0 -1
- package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +0 -91
- package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +0 -1
- package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +0 -180
- package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +0 -1
- package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +0 -145
- package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +0 -1
- package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js +0 -38
- package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +0 -1
- package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +0 -98
- package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +0 -1
- package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +0 -89
- package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +0 -1
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +0 -217
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +0 -1
- package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +0 -148
- package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +0 -1
- package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +0 -760
- package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +0 -1
- package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js +0 -94
- package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +0 -1
- package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +0 -108
- package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +0 -1
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +0 -95
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +0 -1
- package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +0 -309
- package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +0 -1
- package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +0 -118
- package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +0 -1
- package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js +0 -176
- package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +0 -1
- package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +0 -291
- package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +0 -1
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +0 -380
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +0 -1
- package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +0 -76
- package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +0 -1
- package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js +0 -398
- package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +0 -1
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -339
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +0 -380
- package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +0 -1
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +0 -584
- package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +0 -1
- package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +0 -69
- package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +0 -1
- package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +0 -1439
- package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +0 -1
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +0 -503
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +0 -1
- package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +0 -89
- package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +0 -1
- package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +0 -43
- package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +0 -1
- package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +0 -176
- package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +0 -1
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +0 -752
- package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +0 -1
- package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +0 -104
- package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +0 -1
- package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +0 -159
- package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +0 -1
- package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +0 -390
- package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +0 -1
- package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +0 -50
- package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +0 -1
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +0 -284
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +0 -1
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +0 -341
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +0 -1
- package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +0 -72
- package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +0 -1
- package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +0 -77
- package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +0 -1
- package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +0 -314
- package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +0 -1
- package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -64
- package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +0 -1
- package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +0 -116
- package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +0 -1
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +0 -150
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +0 -1
- package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
- package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
- package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +0 -307
- package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +0 -1
- package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +0 -314
- package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +0 -1
- package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
- package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
- package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +0 -393
- package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +0 -1
- package/dist/collection/testspec.setup.js +0 -63
- package/dist/collection/testspec.setup.js.map +0 -1
- package/dist/components/ic-text-field2.js +0 -354
- package/dist/components/ic-text-field2.js.map +0 -1
- package/dist/components/types.js +0 -16
- package/dist/components/types.js.map +0 -1
- package/dist/core/p-05d32a4f.entry.js +0 -2
- package/dist/core/p-05d32a4f.entry.js.map +0 -1
- package/dist/core/p-086a6d4f.entry.js +0 -2
- package/dist/core/p-086a6d4f.entry.js.map +0 -1
- package/dist/core/p-0a00a786.entry.js +0 -2
- package/dist/core/p-0a00a786.entry.js.map +0 -1
- package/dist/core/p-145fcef3.entry.js +0 -2
- package/dist/core/p-145fcef3.entry.js.map +0 -1
- package/dist/core/p-15367990.entry.js +0 -2
- package/dist/core/p-15367990.entry.js.map +0 -1
- package/dist/core/p-1737bf2c.entry.js +0 -2
- package/dist/core/p-1737bf2c.entry.js.map +0 -1
- package/dist/core/p-1ace2b02.entry.js +0 -2
- package/dist/core/p-1ace2b02.entry.js.map +0 -1
- package/dist/core/p-1e371012.entry.js +0 -2
- package/dist/core/p-1e371012.entry.js.map +0 -1
- package/dist/core/p-1f227289.entry.js +0 -2
- package/dist/core/p-1f227289.entry.js.map +0 -1
- package/dist/core/p-24275b92.entry.js +0 -2
- package/dist/core/p-24275b92.entry.js.map +0 -1
- package/dist/core/p-26b7b18f.js +0 -2
- package/dist/core/p-26b7b18f.js.map +0 -1
- package/dist/core/p-29e6c33f.entry.js +0 -2
- package/dist/core/p-29e6c33f.entry.js.map +0 -1
- package/dist/core/p-2a6f01ad.entry.js +0 -2
- package/dist/core/p-2a6f01ad.entry.js.map +0 -1
- package/dist/core/p-2f86c53b.entry.js +0 -2
- package/dist/core/p-2f86c53b.entry.js.map +0 -1
- package/dist/core/p-319e40c0.entry.js +0 -2
- package/dist/core/p-319e40c0.entry.js.map +0 -1
- package/dist/core/p-346c6920.entry.js +0 -2
- package/dist/core/p-346c6920.entry.js.map +0 -1
- package/dist/core/p-4b1445b3.entry.js +0 -2
- package/dist/core/p-4b1445b3.entry.js.map +0 -1
- package/dist/core/p-4b621c67.entry.js +0 -2
- package/dist/core/p-4b621c67.entry.js.map +0 -1
- package/dist/core/p-4ca2b177.entry.js +0 -2
- package/dist/core/p-4ca2b177.entry.js.map +0 -1
- package/dist/core/p-54238d16.entry.js.map +0 -1
- package/dist/core/p-5515ad19.entry.js +0 -2
- package/dist/core/p-5515ad19.entry.js.map +0 -1
- package/dist/core/p-5c8081d6.entry.js +0 -2
- package/dist/core/p-5c8081d6.entry.js.map +0 -1
- package/dist/core/p-5f941f3a.entry.js +0 -2
- package/dist/core/p-5f941f3a.entry.js.map +0 -1
- package/dist/core/p-5fd293b3.entry.js +0 -2
- package/dist/core/p-5fd293b3.entry.js.map +0 -1
- package/dist/core/p-60721d95.entry.js +0 -2
- package/dist/core/p-60721d95.entry.js.map +0 -1
- package/dist/core/p-64a5a1d8.entry.js +0 -2
- package/dist/core/p-64a5a1d8.entry.js.map +0 -1
- package/dist/core/p-65e36461.entry.js +0 -2
- package/dist/core/p-65e36461.entry.js.map +0 -1
- package/dist/core/p-66363c7d.entry.js +0 -2
- package/dist/core/p-66363c7d.entry.js.map +0 -1
- package/dist/core/p-69728d76.entry.js +0 -2
- package/dist/core/p-69728d76.entry.js.map +0 -1
- package/dist/core/p-6b328c76.entry.js +0 -2
- package/dist/core/p-6b328c76.entry.js.map +0 -1
- package/dist/core/p-6b5ddacd.entry.js +0 -2
- package/dist/core/p-6b5ddacd.entry.js.map +0 -1
- package/dist/core/p-6b5e91e2.js +0 -3
- package/dist/core/p-6b5e91e2.js.map +0 -1
- package/dist/core/p-7b3d6577.entry.js +0 -2
- package/dist/core/p-7b3d6577.entry.js.map +0 -1
- package/dist/core/p-7d45828d.entry.js +0 -2
- package/dist/core/p-7d45828d.entry.js.map +0 -1
- package/dist/core/p-893eca54.entry.js +0 -2
- package/dist/core/p-893eca54.entry.js.map +0 -1
- package/dist/core/p-8ee262a4.entry.js +0 -2
- package/dist/core/p-8ee262a4.entry.js.map +0 -1
- package/dist/core/p-8f93d92b.entry.js +0 -2
- package/dist/core/p-8f93d92b.entry.js.map +0 -1
- package/dist/core/p-90bb13d2.entry.js +0 -2
- package/dist/core/p-90bb13d2.entry.js.map +0 -1
- package/dist/core/p-9189a82d.entry.js +0 -2
- package/dist/core/p-9189a82d.entry.js.map +0 -1
- package/dist/core/p-9190a84d.entry.js +0 -2
- package/dist/core/p-9190a84d.entry.js.map +0 -1
- package/dist/core/p-93f50a1a.entry.js +0 -2
- package/dist/core/p-93f50a1a.entry.js.map +0 -1
- package/dist/core/p-9474baf3.entry.js +0 -2
- package/dist/core/p-9474baf3.entry.js.map +0 -1
- package/dist/core/p-9857f6b0.entry.js +0 -2
- package/dist/core/p-9857f6b0.entry.js.map +0 -1
- package/dist/core/p-a0e4d6bd.entry.js.map +0 -1
- package/dist/core/p-a1b9a808.entry.js +0 -2
- package/dist/core/p-a1b9a808.entry.js.map +0 -1
- package/dist/core/p-a79bec03.entry.js +0 -2
- package/dist/core/p-a79bec03.entry.js.map +0 -1
- package/dist/core/p-a84a4675.entry.js +0 -2
- package/dist/core/p-a84a4675.entry.js.map +0 -1
- package/dist/core/p-a87d13b3.entry.js.map +0 -1
- package/dist/core/p-a928c7b3.entry.js +0 -2
- package/dist/core/p-a928c7b3.entry.js.map +0 -1
- package/dist/core/p-bf89c86d.entry.js.map +0 -1
- package/dist/core/p-d0524c73.js +0 -2
- package/dist/core/p-d0524c73.js.map +0 -1
- package/dist/core/p-d24410ca.entry.js +0 -2
- package/dist/core/p-d24410ca.entry.js.map +0 -1
- package/dist/core/p-d52ca420.entry.js +0 -2
- package/dist/core/p-d52ca420.entry.js.map +0 -1
- package/dist/core/p-d67a30ca.entry.js +0 -2
- package/dist/core/p-d67a30ca.entry.js.map +0 -1
- package/dist/core/p-de27c59e.entry.js +0 -2
- package/dist/core/p-de27c59e.entry.js.map +0 -1
- package/dist/core/p-dec339ba.entry.js +0 -2
- package/dist/core/p-dec339ba.entry.js.map +0 -1
- package/dist/core/p-e4335135.entry.js +0 -2
- package/dist/core/p-e4335135.entry.js.map +0 -1
- package/dist/core/p-e56a2a06.entry.js +0 -2
- package/dist/core/p-e56a2a06.entry.js.map +0 -1
- package/dist/core/p-e696dc2a.entry.js +0 -2
- package/dist/core/p-e696dc2a.entry.js.map +0 -1
- package/dist/core/p-f0501be1.entry.js +0 -2
- package/dist/core/p-f0501be1.entry.js.map +0 -1
- package/dist/core/p-f50462df.entry.js +0 -2
- package/dist/core/p-f50462df.entry.js.map +0 -1
- package/dist/core/p-feb80f37.entry.js +0 -2
- package/dist/core/p-feb80f37.entry.js.map +0 -1
- package/dist/esm/helpers-35ac5e03.js.map +0 -1
- package/dist/esm/index-d1d2c456.js +0 -3016
- package/dist/esm/index-d1d2c456.js.map +0 -1
- package/dist/esm/polyfills/core-js.js +0 -11
- package/dist/esm/polyfills/dom.js +0 -79
- package/dist/esm/polyfills/es5-html-element.js +0 -1
- package/dist/esm/polyfills/index.js +0 -34
- package/dist/esm/polyfills/system.js +0 -6
- package/dist/esm/types-6f6b41a5.js +0 -16
- package/dist/esm/types-6f6b41a5.js.map +0 -1
- package/dist/types/testspec.setup.d.ts +0 -15
@@ -1,19 +1,34 @@
|
|
1
|
-
import { r as registerInstance, h, g as getElement } from './index-
|
2
|
-
import { o as onComponentPropUndefinedChange,
|
3
|
-
import './types-6f6b41a5.js';
|
1
|
+
import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
|
2
|
+
import { o as onComponentPropUndefinedChange, b as onComponentRequiredPropUndefined } from './helpers-46a2d1fd.js';
|
4
3
|
|
5
4
|
const ArrowUpward = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true">
|
6
5
|
<path d="M0 8L1.41 9.41L7 3.83V16H9V3.83L14.58 9.42L16 8L8 0L0 8Z"/>
|
7
6
|
</svg>
|
8
7
|
`;
|
9
8
|
|
10
|
-
const icBackToTopCss = "/*! 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:
|
9
|
+
const icBackToTopCss = "/*! 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:flex;flex:row;height:0.1px}:host(.ic-back-to-top-right){justify-content:flex-end}:host(.ic-back-to-top-right) ic-button{margin-right:var(--margin-right, 1rem)}:host(.ic-back-to-top-right) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-left){justify-content:flex-start}:host(.ic-back-to-top-left) ic-button{margin-left:var(--margin-left, 1rem)}:host(.ic-back-to-top-left) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-center){justify-content:center}:host(.ic-back-to-top-center) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}ic-button{height:2.5rem;align-items:center;background-color:var(--ic-color-background-primary);border-radius:5rem;box-shadow:var(--ic-elevation-overlay);visibility:hidden;position:fixed;bottom:var(--ic-space-md);opacity:0;transition:visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);z-index:var(--ic-z-index-back-to-top)}:host([variant=\"icon\"]) ic-button::part(button){margin:0}ic-button::part(button){border-radius:5rem}ic-button.show{visibility:visible;opacity:1;transition:visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast)}ic-button.offset-banner:not(.by-footer){margin-bottom:var(--footer-offset, var(--ic-space-lg))}.ic-back-to-top-icon>svg{height:var(--ic-space-md);width:var(--ic-space-md)}.icon-only{width:2.5rem}.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-1px))}ic-button.by-footer{position:relative;bottom:var(--footer-offset, 3.5rem)}@media (forced-colors: active){.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-xxxs))}}";
|
10
|
+
const IcBackToTopStyle0 = icBackToTopCss;
|
11
11
|
|
12
12
|
const backToTopLabel = "Back to top";
|
13
13
|
const BackToTop = class {
|
14
14
|
constructor(hostRef) {
|
15
15
|
registerInstance(this, hostRef);
|
16
16
|
this.topObserver = null;
|
17
|
+
this.bannerOffset = false;
|
18
|
+
this.footerVisible = false;
|
19
|
+
this.targetElVisible = true;
|
20
|
+
/**
|
21
|
+
* The horizontal position of the element.
|
22
|
+
*/
|
23
|
+
this.position = "right";
|
24
|
+
/**
|
25
|
+
* Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component.
|
26
|
+
*/
|
27
|
+
this.theme = "inherit";
|
28
|
+
/**
|
29
|
+
* The variant of the button to render
|
30
|
+
*/
|
31
|
+
this.variant = "default";
|
17
32
|
this.getObservedEl = () => {
|
18
33
|
return document.querySelector("#ic-back-to-top-target");
|
19
34
|
};
|
@@ -70,7 +85,9 @@ const BackToTop = class {
|
|
70
85
|
objBackToTopTargetEl.setAttribute("tabindex", "-1"); // Needed for virtual cursor behaviour to work
|
71
86
|
objParent.insertBefore(objBackToTopTargetEl, this.targetEl);
|
72
87
|
// resize observer needs to factor in any top margin on the target el
|
73
|
-
const marginTop =
|
88
|
+
const marginTop = this.targetEl
|
89
|
+
? getComputedStyle(this.targetEl).marginTop
|
90
|
+
: 0;
|
74
91
|
this.topObserver = new IntersectionObserver(this.targetElObserverCallback, {
|
75
92
|
threshold: [0],
|
76
93
|
rootMargin: `${marginTop} 0px 0px 0px`,
|
@@ -78,11 +95,12 @@ const BackToTop = class {
|
|
78
95
|
this.topObserver.observe(objBackToTopTargetEl);
|
79
96
|
};
|
80
97
|
this.handleClick = () => {
|
98
|
+
var _a;
|
81
99
|
if (this.isTargetElNull) {
|
82
100
|
window.scrollTo(0, 0);
|
83
101
|
}
|
84
102
|
else {
|
85
|
-
this.targetEl.scrollIntoView();
|
103
|
+
(_a = this.targetEl) === null || _a === void 0 ? void 0 : _a.scrollIntoView();
|
86
104
|
}
|
87
105
|
// Get virtual cursor to move
|
88
106
|
this.getObservedEl().focus();
|
@@ -92,11 +110,6 @@ const BackToTop = class {
|
|
92
110
|
const banners = document.querySelectorAll("ic-classification-banner:not([inline='true'])");
|
93
111
|
this.bannerOffset = banners.length > 0;
|
94
112
|
};
|
95
|
-
this.bannerOffset = false;
|
96
|
-
this.footerVisible = false;
|
97
|
-
this.targetElVisible = true;
|
98
|
-
this.target = undefined;
|
99
|
-
this.variant = "default";
|
100
113
|
}
|
101
114
|
watchPropHandler(newValue, oldValue) {
|
102
115
|
//added for gatsby rehydration issue where prop is initially undefined but then changes to actual value
|
@@ -124,15 +137,18 @@ const BackToTop = class {
|
|
124
137
|
}
|
125
138
|
render() {
|
126
139
|
const { variant, bannerOffset, targetElVisible, footerVisible } = this;
|
127
|
-
const btnVariant = variant === "icon" ? "icon" : "
|
128
|
-
const size = variant === "icon" ? "large" : "
|
140
|
+
const btnVariant = variant === "icon" ? "icon-secondary" : "secondary";
|
141
|
+
const size = variant === "icon" ? "large" : "medium";
|
129
142
|
const label = variant === "icon" ? "" : backToTopLabel;
|
130
|
-
return (h(
|
143
|
+
return (h(Host, { key: '81025a66bc45c55d0caa94c0cd649ce2dfb7eb7c', class: {
|
144
|
+
[`ic-theme-${this.theme}`]: this.theme !== "inherit",
|
145
|
+
[`ic-back-to-top-${this.position}`]: true,
|
146
|
+
} }, h("ic-button", { key: '9855a53f4ea50219ba19022a5873b004704bf3a0', "aria-label": backToTopLabel, variant: btnVariant, size: size, onClick: this.handleClick, class: {
|
131
147
|
["offset-banner"]: bannerOffset,
|
132
148
|
["show"]: !targetElVisible,
|
133
149
|
["by-footer"]: footerVisible,
|
134
150
|
["icon-only"]: variant === "icon",
|
135
|
-
} }, h("span", { class: "ic-back-to-top-icon", innerHTML: ArrowUpward }), label));
|
151
|
+
}, theme: this.theme }, h("span", { key: '726b1b15f1e9168e9bb7826451357f6f559efa02', class: "ic-back-to-top-icon", innerHTML: ArrowUpward }), label)));
|
136
152
|
}
|
137
153
|
static get delegatesFocus() { return true; }
|
138
154
|
get el() { return getElement(this); }
|
@@ -140,7 +156,7 @@ const BackToTop = class {
|
|
140
156
|
"target": ["watchPropHandler"]
|
141
157
|
}; }
|
142
158
|
};
|
143
|
-
BackToTop.style =
|
159
|
+
BackToTop.style = IcBackToTopStyle0;
|
144
160
|
|
145
161
|
export { BackToTop as ic_back_to_top };
|
146
162
|
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"ic-back-to-top.entry.js","mappings":"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","names":[],"sources":["src/components/ic-back-to-top/ic-back-to-top.css?tag=ic-back-to-top&encapsulation=shadow","src/components/ic-back-to-top/ic-back-to-top.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-back-to-top: z-index of back to top\n */\n\n:host {\n display: block;\n position: absolute;\n right: 0;\n}\n\nic-button {\n height: 2.5rem;\n align-items: center;\n background-color: var(--ic-architectural-white);\n border-radius: 5rem;\n box-shadow: var(--ic-elevation-overlay);\n visibility: hidden;\n opacity: 0;\n position: fixed;\n right: var(--ic-space-md);\n bottom: var(--ic-space-md);\n transition: visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);\n z-index: var(--ic-z-index-back-to-top);\n}\n\nic-button::part(button) {\n border-radius: 5rem;\n border: var(--ic-border-width) solid var(--ic-action-default);\n}\n\nic-button.show {\n visibility: visible;\n opacity: 1;\n transition: visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast);\n}\n\nic-button.by-footer {\n position: relative;\n right: var(--ic-space-md);\n bottom: 3.5rem;\n}\n\nic-button.offset-banner {\n margin-bottom: var(--ic-space-lg);\n}\n\n.ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n.ic-back-to-top-icon > svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n.icon-only {\n width: 2.5rem;\n}\n\n.icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-1px));\n}\n\n@media (forced-colors: active) {\n .icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-xxxs));\n }\n}\n","import { Component, h, Element, Prop, State, Watch } from \"@stencil/core\";\nimport ArrowUpward from \"./assets/ArrowUpward.svg\";\nimport {\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IcBackToTopVariants } from \"./ic-back-to-top.types\";\n\nconst backToTopLabel = \"Back to top\";\n\n@Component({\n tag: \"ic-back-to-top\",\n styleUrl: \"ic-back-to-top.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BackToTop {\n private isTargetElNull: boolean;\n private targetEl: Element;\n private topObserver: IntersectionObserver = null;\n\n @Element() el: HTMLIcBackToTopElement;\n\n @State() bannerOffset: boolean = false;\n @State() footerVisible: boolean = false;\n @State() targetElVisible: boolean = true;\n\n /**\n * The ID of the element to jump back to when the link is clicked.\n */\n @Prop() target!: string;\n\n /**\n * The variant of the button to render\n */\n @Prop() variant: IcBackToTopVariants = \"default\";\n\n @Watch(\"target\")\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 onComponentPropUndefinedChange(oldValue, newValue, () => {\n this.createTopObserver(newValue);\n });\n }\n\n componentWillLoad(): void {\n this.createTopObserver(this.target);\n this.checkForClassificationBanner();\n\n //observer for when footer scrolls into view\n let footers = document.querySelectorAll(\n \"ic-footer\"\n ) as NodeListOf<HTMLElement>;\n if (footers.length === 0) {\n footers = document.querySelectorAll(\"footer\");\n }\n\n if (footers.length) {\n const footerEl = footers[footers.length - 1];\n const threshold = this.bannerOffset ? 0.15 : 0;\n const footerObserver = new IntersectionObserver(\n this.footerObserverCallback,\n { threshold: [threshold] }\n );\n footerObserver.observe(footerEl);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.target, propName: \"target\" }],\n \"Back to Top\"\n );\n }\n\n private getObservedEl = () => {\n return document.querySelector(\"#ic-back-to-top-target\");\n };\n\n private setTargetElVisible = (visible: boolean) => {\n this.targetElVisible = visible;\n };\n\n private setFooterVisible = (visible: boolean) => {\n this.checkForClassificationBanner();\n this.footerVisible =\n typeof window !== \"undefined\" && window.scrollY === 0 ? false : visible;\n };\n\n private targetElObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setTargetElVisible(entries[0].isIntersecting);\n };\n\n private footerObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setFooterVisible(entries[0].isIntersecting);\n };\n\n private findTargetEl = (target: string): Element => {\n let targetElement: Element = null;\n if (target === null || target === undefined) {\n console.log(\n \"Error: No target ID specified for back to top component - defaulting to top of page\"\n );\n } else {\n targetElement = document.querySelector(\n `${target.startsWith(\"#\") ? \"\" : \"#\"}${target}`\n );\n if (targetElement === null) {\n console.log(\n `Error: Back to top target element '${target}' not found - defaulting to top of page`\n );\n }\n }\n return targetElement;\n };\n\n private createTopObserver = (target: string) => {\n this.targetEl = this.findTargetEl(target);\n let objParent: HTMLElement;\n\n //remove old element & observer\n if (this.topObserver !== null) {\n const observedEl = this.getObservedEl();\n if (observedEl !== null) {\n this.topObserver.unobserve(observedEl);\n observedEl.remove();\n }\n }\n\n if (this.targetEl === null) {\n objParent = document.body;\n this.targetEl = objParent.firstElementChild;\n this.isTargetElNull = true;\n } else {\n objParent = this.targetEl.parentNode as HTMLElement;\n this.isTargetElNull = false;\n }\n\n //insert a new 0px height element before specified target that can be used to determine when page is scrolled\n const objBackToTopTargetEl = document.createElement(\"div\");\n objBackToTopTargetEl.setAttribute(\"id\", \"ic-back-to-top-target\");\n objBackToTopTargetEl.setAttribute(\"tabindex\", \"-1\"); // Needed for virtual cursor behaviour to work\n objParent.insertBefore(objBackToTopTargetEl, this.targetEl);\n\n // resize observer needs to factor in any top margin on the target el\n const marginTop = getComputedStyle(this.targetEl).marginTop;\n this.topObserver = new IntersectionObserver(this.targetElObserverCallback, {\n threshold: [0],\n rootMargin: `${marginTop} 0px 0px 0px`,\n });\n this.topObserver.observe(objBackToTopTargetEl);\n };\n\n private handleClick = () => {\n if (this.isTargetElNull) {\n window.scrollTo(0, 0);\n } else {\n this.targetEl.scrollIntoView();\n }\n // Get virtual cursor to move\n (this.getObservedEl() as HTMLElement).focus();\n };\n\n private checkForClassificationBanner = () => {\n //adjust position for classification banner at bottom\n const banners = document.querySelectorAll(\n \"ic-classification-banner:not([inline='true'])\"\n );\n this.bannerOffset = banners.length > 0;\n };\n\n render() {\n const { variant, bannerOffset, targetElVisible, footerVisible } = this;\n const btnVariant = variant === \"icon\" ? \"icon\" : \"tertiary\";\n const size = variant === \"icon\" ? \"large\" : \"default\";\n const label = variant === \"icon\" ? \"\" : backToTopLabel;\n\n return (\n <ic-button\n aria-label={backToTopLabel}\n variant={btnVariant}\n size={size}\n onClick={this.handleClick}\n class={{\n [\"offset-banner\"]: bannerOffset,\n [\"show\"]: !targetElVisible,\n [\"by-footer\"]: footerVisible,\n [\"icon-only\"]: variant === \"icon\",\n }}\n >\n <span class=\"ic-back-to-top-icon\" innerHTML={ArrowUpward} />\n {label}\n </ic-button>\n );\n }\n}\n"],"version":3}
|
1
|
+
{"file":"ic-back-to-top.entry.js","mappings":"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","names":[],"sources":["src/components/ic-back-to-top/ic-back-to-top.css?tag=ic-back-to-top&encapsulation=shadow","src/components/ic-back-to-top/ic-back-to-top.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-back-to-top: z-index of back to top\n * @prop --margin-right: right y-position of back to top\n * @prop --margin-left: left y-position of back to top\n * @prop --footer-offset: offset of x-position from footer\n */\n\n:host {\n display: flex;\n flex: row;\n height: 0.1px;\n}\n\n:host(.ic-back-to-top-right) {\n justify-content: flex-end;\n}\n\n:host(.ic-back-to-top-right) ic-button {\n margin-right: var(--margin-right, 1rem);\n}\n\n:host(.ic-back-to-top-right) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n:host(.ic-back-to-top-left) {\n justify-content: flex-start;\n}\n\n:host(.ic-back-to-top-left) ic-button {\n margin-left: var(--margin-left, 1rem);\n}\n\n:host(.ic-back-to-top-left) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n:host(.ic-back-to-top-center) {\n justify-content: center;\n}\n\n:host(.ic-back-to-top-center) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\nic-button {\n height: 2.5rem;\n align-items: center;\n background-color: var(--ic-color-background-primary);\n border-radius: 5rem;\n box-shadow: var(--ic-elevation-overlay);\n visibility: hidden;\n position: fixed;\n bottom: var(--ic-space-md);\n opacity: 0;\n transition: visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);\n z-index: var(--ic-z-index-back-to-top);\n}\n\n:host([variant=\"icon\"]) ic-button::part(button) {\n margin: 0;\n}\n\nic-button::part(button) {\n border-radius: 5rem;\n}\n\nic-button.show {\n visibility: visible;\n opacity: 1;\n transition: visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast);\n}\n\nic-button.offset-banner:not(.by-footer) {\n margin-bottom: var(--footer-offset, var(--ic-space-lg));\n}\n\n.ic-back-to-top-icon > svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n.icon-only {\n width: 2.5rem;\n}\n\n.icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-1px));\n}\n\nic-button.by-footer {\n position: relative;\n bottom: var(--footer-offset, 3.5rem);\n}\n\n@media (forced-colors: active) {\n .icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-xxxs));\n }\n}\n","import { Component, h, Host, Element, Prop, State, Watch } from \"@stencil/core\";\nimport ArrowUpward from \"./assets/ArrowUpward.svg\";\nimport {\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport {\n IcBackToTopVariants,\n IcBackToTopPositions,\n} from \"./ic-back-to-top.types\";\n\nconst backToTopLabel = \"Back to top\";\n\n@Component({\n tag: \"ic-back-to-top\",\n styleUrl: \"ic-back-to-top.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BackToTop {\n private isTargetElNull: boolean;\n private targetEl: Element | null;\n private topObserver: IntersectionObserver | null = null;\n\n @Element() el: HTMLIcBackToTopElement;\n\n @State() bannerOffset: boolean = false;\n @State() footerVisible: boolean = false;\n @State() targetElVisible: boolean = true;\n\n /**\n * The horizontal position of the element.\n */\n @Prop() position?: IcBackToTopPositions = \"right\";\n\n /**\n * The ID of the element to jump back to when the link is clicked.\n */\n @Prop() target!: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The variant of the button to render\n */\n @Prop() variant?: IcBackToTopVariants = \"default\";\n\n @Watch(\"target\")\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 onComponentPropUndefinedChange(oldValue, newValue, () => {\n this.createTopObserver(newValue);\n });\n }\n\n componentWillLoad(): void {\n this.createTopObserver(this.target);\n this.checkForClassificationBanner();\n\n //observer for when footer scrolls into view\n let footers = document.querySelectorAll(\n \"ic-footer\"\n ) as NodeListOf<HTMLElement>;\n if (footers.length === 0) {\n footers = document.querySelectorAll(\"footer\");\n }\n\n if (footers.length) {\n const footerEl = footers[footers.length - 1];\n const threshold = this.bannerOffset ? 0.15 : 0;\n const footerObserver = new IntersectionObserver(\n this.footerObserverCallback,\n { threshold: [threshold] }\n );\n footerObserver.observe(footerEl);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.target, propName: \"target\" }],\n \"Back to Top\"\n );\n }\n\n private getObservedEl = () => {\n return document.querySelector(\"#ic-back-to-top-target\");\n };\n\n private setTargetElVisible = (visible: boolean) => {\n this.targetElVisible = visible;\n };\n\n private setFooterVisible = (visible: boolean) => {\n this.checkForClassificationBanner();\n this.footerVisible =\n typeof window !== \"undefined\" && window.scrollY === 0 ? false : visible;\n };\n\n private targetElObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setTargetElVisible(entries[0].isIntersecting);\n };\n\n private footerObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setFooterVisible(entries[0].isIntersecting);\n };\n\n private findTargetEl = (target: string): Element | null => {\n let targetElement = null;\n if (target === null || target === undefined) {\n console.log(\n \"Error: No target ID specified for back to top component - defaulting to top of page\"\n );\n } else {\n targetElement = document.querySelector(\n `${target.startsWith(\"#\") ? \"\" : \"#\"}${target}`\n );\n if (targetElement === null) {\n console.log(\n `Error: Back to top target element '${target}' not found - defaulting to top of page`\n );\n }\n }\n return targetElement;\n };\n\n private createTopObserver = (target: string) => {\n this.targetEl = this.findTargetEl(target);\n let objParent: HTMLElement;\n\n //remove old element & observer\n if (this.topObserver !== null) {\n const observedEl = this.getObservedEl();\n if (observedEl !== null) {\n this.topObserver.unobserve(observedEl);\n observedEl.remove();\n }\n }\n\n if (this.targetEl === null) {\n objParent = document.body;\n this.targetEl = objParent.firstElementChild;\n this.isTargetElNull = true;\n } else {\n objParent = this.targetEl.parentNode as HTMLElement;\n this.isTargetElNull = false;\n }\n\n //insert a new 0px height element before specified target that can be used to determine when page is scrolled\n const objBackToTopTargetEl = document.createElement(\"div\");\n objBackToTopTargetEl.setAttribute(\"id\", \"ic-back-to-top-target\");\n objBackToTopTargetEl.setAttribute(\"tabindex\", \"-1\"); // Needed for virtual cursor behaviour to work\n objParent.insertBefore(objBackToTopTargetEl, this.targetEl);\n\n // resize observer needs to factor in any top margin on the target el\n const marginTop = this.targetEl\n ? getComputedStyle(this.targetEl).marginTop\n : 0;\n this.topObserver = new IntersectionObserver(this.targetElObserverCallback, {\n threshold: [0],\n rootMargin: `${marginTop} 0px 0px 0px`,\n });\n this.topObserver.observe(objBackToTopTargetEl);\n };\n\n private handleClick = () => {\n if (this.isTargetElNull) {\n window.scrollTo(0, 0);\n } else {\n this.targetEl?.scrollIntoView();\n }\n // Get virtual cursor to move\n (this.getObservedEl() as HTMLElement).focus();\n };\n\n private checkForClassificationBanner = () => {\n //adjust position for classification banner at bottom\n const banners = document.querySelectorAll(\n \"ic-classification-banner:not([inline='true'])\"\n );\n this.bannerOffset = banners.length > 0;\n };\n\n render() {\n const { variant, bannerOffset, targetElVisible, footerVisible } = this;\n const btnVariant = variant === \"icon\" ? \"icon-secondary\" : \"secondary\";\n const size = variant === \"icon\" ? \"large\" : \"medium\";\n const label = variant === \"icon\" ? \"\" : backToTopLabel;\n\n return (\n <Host\n class={{\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n [`ic-back-to-top-${this.position}`]: true,\n }}\n >\n <ic-button\n aria-label={backToTopLabel}\n variant={btnVariant}\n size={size}\n onClick={this.handleClick}\n class={{\n [\"offset-banner\"]: bannerOffset,\n [\"show\"]: !targetElVisible,\n [\"by-footer\"]: footerVisible,\n [\"icon-only\"]: variant === \"icon\",\n }}\n theme={this.theme}\n >\n <span class=\"ic-back-to-top-icon\" innerHTML={ArrowUpward} />\n {label}\n </ic-button>\n </Host>\n );\n }\n}\n"],"version":3}
|
@@ -1,40 +1,49 @@
|
|
1
|
-
import { r as registerInstance, h, H as Host, g as getElement } from './index-
|
2
|
-
import {
|
3
|
-
import './types-6f6b41a5.js';
|
1
|
+
import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
|
2
|
+
import { c as convertToRGBA, g as getBrandForegroundAppearance, d as isPropDefined, b as onComponentRequiredPropUndefined } from './helpers-46a2d1fd.js';
|
4
3
|
|
5
|
-
const icBadgeCss = "@media (prefers-reduced-motion: no-preference){:host(.ic-badge-show){animation:expand var(--ic-transition-duration-slow)}:host(.ic-badge-hide){animation:shrink var(--ic-transition-duration-slow)}}:host{display:flex;height:var(--ic-space-md);min-width:var(--ic-space-md);width:-moz-fit-content;width:fit-content;border-radius:calc(2 * var(--ic-space-xxl));position:absolute}:host(.ic-badge-neutral){background-color:var(--ic-
|
4
|
+
const icBadgeCss = "@media (prefers-reduced-motion: no-preference){:host(.ic-badge-show){animation:expand var(--ic-transition-duration-slow)}:host(.ic-badge-hide){animation:shrink var(--ic-transition-duration-slow)}}:host{display:flex;height:var(--ic-space-md);min-width:var(--ic-space-md);width:-moz-fit-content;width:fit-content;border-radius:calc(2 * var(--ic-space-xxl));position:absolute}:host ic-typography{--ic-typography-color:var(--ic-badge-text)}:host(.ic-badge-neutral){background-color:var(--ic-badge-dark) !important}:host(.ic-badge-light) ic-typography{--ic-typography-color:var(--ic-badge-text-monochrome)}:host(.ic-badge-light) ::slotted(*){fill:var(--ic-badge-icon-monochrome)}:host(.ic-badge-info){background-color:var(--ic-badge-info) !important}:host(.ic-badge-light){background-color:var(--ic-badge-light) !important}:host(.ic-badge-warning){background-color:var(--ic-badge-warning) !important}:host(.ic-badge-warning) ic-typography{--ic-typography-color:var(--ic-badge-warning-text)}:host(.ic-badge-warning) ::slotted(*){fill:var(--ic-badge-warning-icon)}:host(.ic-badge-error){background-color:var(--ic-badge-error) !important}:host(.ic-badge-success){background-color:var(--ic-badge-success) !important}:host(.ic-badge-small){height:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host(.ic-badge-large){height:calc(var(--ic-space-md) + var(--ic-space-xxs));min-width:calc(var(--ic-space-md) + var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-medium){height:var(--ic-space-xs);width:var(--ic-space-xs);min-width:var(--ic-space-xs)}:host(.ic-badge-dot.ic-badge-small){height:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));min-width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs))}:host(.ic-badge-dot.ic-badge-large){height:var(--ic-space-sm);width:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host ::slotted(*){fill:var(--ic-badge-icon)}:host(.ic-badge-foreground-dark) ::slotted(*){fill:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ::slotted(*){fill:white}:host(.ic-badge-foreground-dark) ic-typography{--ic-typography-color:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ic-typography{--ic-typography-color:var(--ic-color-primary-text-dark)}:host(.ic-badge-text) ic-typography{align-self:center;padding:0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-text.ic-badge-small) ic-typography{padding:0 0.2132rem}:host(.ic-badge-text.ic-badge-large) ic-typography{padding:0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-icon) ::slotted(svg){width:var(--ic-space-sm);height:var(--ic-space-sm);padding:var(--ic-space-xxxs)}:host(.ic-badge-icon.ic-badge-small) ::slotted(svg){width:var(--ic-space-xs);height:var(--ic-space-xs)}:host(.ic-badge-icon.ic-badge-large) ::slotted(svg){width:calc(var(--ic-space-sm) + var(--ic-space-xxxs));height:calc(var(--ic-space-sm) + var(--ic-space-xxxs));padding:calc(var(--ic-space-xxxs) + var(--ic-space-1px))}:host(.ic-badge-far){top:calc(-1 * var(--ic-space-xs));right:calc(-1 * var(--ic-space-xs))}:host(.ic-badge-far.ic-badge-small),:host(.ic-badge-dot.ic-badge-far.ic-badge-large){top:calc(-1 * var(--ic-space-xxs));right:calc(-1 * var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-far),:host(.ic-badge-dot.ic-badge-far.ic-badge-small){top:calc(-1 * var(--ic-space-xxxs));right:calc(-1 * var(--ic-space-xxxs))}:host(.ic-badge-near){top:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));right:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)))}:host(.ic-badge-dot.ic-badge-near){top:calc(-1 * var(--ic-space-1px));right:calc(-1 * var(--ic-space-1px))}:host(.ic-badge-inline){position:static}:host(.ic-badge-hide){visibility:hidden !important;transition:visibility var(--ic-transition-duration-slow)}.sr-only{position:absolute;left:-9999px}.sr-only:dir(rtl){right:-9999px}@keyframes expand{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes shrink{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}";
|
5
|
+
const IcBadgeStyle0 = icBadgeCss;
|
6
6
|
|
7
|
+
const TOP_NAVIGATION = "IC-TOP-NAVIGATION";
|
8
|
+
const SIDE_NAVIGATION = "IC-SIDE-NAVIGATION";
|
7
9
|
const Badge = class {
|
8
10
|
constructor(hostRef) {
|
9
11
|
registerInstance(this, hostRef);
|
12
|
+
var _a;
|
10
13
|
this.ariaLabel = null;
|
14
|
+
this.initialPosition = (_a = this.position) !== null && _a !== void 0 ? _a : "far";
|
15
|
+
/**
|
16
|
+
* The positioning of the badge in reference to the parent element.
|
17
|
+
*/
|
18
|
+
this.position = "far";
|
19
|
+
/**
|
20
|
+
* The size of the badge to be displayed.
|
21
|
+
*/
|
22
|
+
this.size = "medium";
|
23
|
+
/**
|
24
|
+
* Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component.
|
25
|
+
*/
|
26
|
+
this.theme = "inherit";
|
27
|
+
/**
|
28
|
+
* The type of badge to be displayed.
|
29
|
+
*/
|
30
|
+
this.type = "text";
|
31
|
+
/**
|
32
|
+
* The variant of the badge to be displayed.
|
33
|
+
*/
|
34
|
+
this.variant = "neutral";
|
35
|
+
/**
|
36
|
+
* If `true`, the badge will be displayed.
|
37
|
+
*/
|
38
|
+
this.visible = true;
|
11
39
|
this.setBadgeColour = () => {
|
12
|
-
const colorRGBA = convertToRGBA(this.customColor);
|
40
|
+
const colorRGBA = this.customColor ? convertToRGBA(this.customColor) : null;
|
13
41
|
if (colorRGBA) {
|
14
|
-
this.customColorRGBA = colorRGBA;
|
15
42
|
const { r, g, b, a } = colorRGBA;
|
16
43
|
this.el.style.backgroundColor = `rgba(${r}, ${g}, ${b}, ${a})`;
|
44
|
+
this.foregroundColour = getBrandForegroundAppearance((r * 299 + g * 587 + b * 114) / 1000);
|
17
45
|
}
|
18
46
|
};
|
19
|
-
this.getBadgeRGB = () => {
|
20
|
-
switch (this.variant) {
|
21
|
-
case "custom":
|
22
|
-
return this.customColorRGBA;
|
23
|
-
case "error":
|
24
|
-
case "success":
|
25
|
-
case "warning":
|
26
|
-
case "info": {
|
27
|
-
return rgbaStrToObj(getCssProperty(`--ic-status-${this.variant}`));
|
28
|
-
}
|
29
|
-
case "neutral":
|
30
|
-
case "light":
|
31
|
-
return hexToRgba(getCssProperty(`--ic-architectural-${this.variant === "neutral" ? 500 : 40}`));
|
32
|
-
}
|
33
|
-
};
|
34
|
-
this.getBadgeForeground = () => {
|
35
|
-
const { r, g, b } = this.getBadgeRGB();
|
36
|
-
this.foregroundColour = getThemeForegroundColor((r * 299 + g * 587 + b * 114) / 1000);
|
37
|
-
};
|
38
47
|
this.getLabel = () => this.maxNumber && Number(this.label) > this.maxNumber
|
39
48
|
? `${this.maxNumber}+`
|
40
49
|
: this.label;
|
@@ -54,23 +63,51 @@ const Badge = class {
|
|
54
63
|
: "";
|
55
64
|
parentEl.ariaLabel = this.visible
|
56
65
|
? `${ariaLabelPrefix} ${defaultAriaLabel}`
|
57
|
-
:
|
66
|
+
: null;
|
58
67
|
}
|
59
68
|
else {
|
60
69
|
this.ariaLabel = `, ${defaultAriaLabel}`;
|
61
70
|
}
|
62
71
|
}
|
63
72
|
};
|
73
|
+
this.setPositionInTopNavigation = () => {
|
74
|
+
this.position = this.isInMobileMode() ? "inline" : this.initialPosition;
|
75
|
+
};
|
76
|
+
this.setPositionInSideNavigation = () => {
|
77
|
+
this.position = "near";
|
78
|
+
};
|
79
|
+
this.isInTopNav = () => {
|
80
|
+
const parentEl = this.el.parentElement;
|
81
|
+
if (!parentEl)
|
82
|
+
return false;
|
83
|
+
const grandparentEl = parentEl.parentElement;
|
84
|
+
const greatGrandparentEl = grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.parentElement;
|
85
|
+
return ((grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.tagName) === TOP_NAVIGATION ||
|
86
|
+
(greatGrandparentEl === null || greatGrandparentEl === void 0 ? void 0 : greatGrandparentEl.tagName) === TOP_NAVIGATION);
|
87
|
+
};
|
88
|
+
this.isInSideNav = () => {
|
89
|
+
const parentEl = this.el.parentElement;
|
90
|
+
if (!parentEl)
|
91
|
+
return false;
|
92
|
+
const grandparentEl = parentEl.parentElement;
|
93
|
+
const greatGrandparentEl = grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.parentElement;
|
94
|
+
return ((grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.tagName) === SIDE_NAVIGATION ||
|
95
|
+
(greatGrandparentEl === null || greatGrandparentEl === void 0 ? void 0 : greatGrandparentEl.tagName) === SIDE_NAVIGATION);
|
96
|
+
};
|
97
|
+
this.isInMobileMode = () => {
|
98
|
+
const parentEl = this.el.parentElement;
|
99
|
+
if (!parentEl)
|
100
|
+
return false;
|
101
|
+
const grandparentEl = parentEl.parentElement;
|
102
|
+
const greatGrandparentEl = grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.parentElement;
|
103
|
+
return ((((grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.tagName) === TOP_NAVIGATION ||
|
104
|
+
(grandparentEl === null || grandparentEl === void 0 ? void 0 : grandparentEl.tagName) === SIDE_NAVIGATION) &&
|
105
|
+
grandparentEl.classList.contains("mobile-mode")) ||
|
106
|
+
(((greatGrandparentEl === null || greatGrandparentEl === void 0 ? void 0 : greatGrandparentEl.tagName) === TOP_NAVIGATION ||
|
107
|
+
(greatGrandparentEl === null || greatGrandparentEl === void 0 ? void 0 : greatGrandparentEl.tagName) === SIDE_NAVIGATION) &&
|
108
|
+
greatGrandparentEl.classList.contains("mobile-mode")));
|
109
|
+
};
|
64
110
|
this.isAccessibleLabelDefined = () => isPropDefined(this.accessibleLabel) && this.accessibleLabel !== null;
|
65
|
-
this.accessibleLabel = undefined;
|
66
|
-
this.customColor = null;
|
67
|
-
this.maxNumber = undefined;
|
68
|
-
this.position = "far";
|
69
|
-
this.size = "default";
|
70
|
-
this.label = undefined;
|
71
|
-
this.type = "text";
|
72
|
-
this.variant = "neutral";
|
73
|
-
this.visible = true;
|
74
111
|
}
|
75
112
|
accessibleLabelHandler() {
|
76
113
|
this.setAccessibleLabel();
|
@@ -79,7 +116,9 @@ const Badge = class {
|
|
79
116
|
this.variant === "custom" && this.setBadgeColour();
|
80
117
|
}
|
81
118
|
variantHandler() {
|
82
|
-
this.
|
119
|
+
if (this.variant === "custom") {
|
120
|
+
this.setBadgeColour();
|
121
|
+
}
|
83
122
|
}
|
84
123
|
visibleHandler() {
|
85
124
|
this.setAccessibleLabel();
|
@@ -87,7 +126,6 @@ const Badge = class {
|
|
87
126
|
componentWillLoad() {
|
88
127
|
var _a;
|
89
128
|
this.variant === "custom" && this.setBadgeColour();
|
90
|
-
this.getBadgeForeground();
|
91
129
|
const ariaLabel = (_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.ariaLabel;
|
92
130
|
if (ariaLabel)
|
93
131
|
this.parentAriaLabel = ariaLabel;
|
@@ -97,16 +135,27 @@ const Badge = class {
|
|
97
135
|
this.type === "text" &&
|
98
136
|
onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Badge");
|
99
137
|
}
|
138
|
+
componentWillRender() {
|
139
|
+
this.isInTopNav() && this.setPositionInTopNavigation();
|
140
|
+
this.isInSideNav() && this.setPositionInSideNavigation();
|
141
|
+
}
|
142
|
+
navBarMenuOpenHandler() {
|
143
|
+
this.isInTopNav() && (this.position = "inline");
|
144
|
+
}
|
145
|
+
navBarMenuCloseHandler() {
|
146
|
+
this.isInTopNav() && (this.position = this.initialPosition);
|
147
|
+
}
|
100
148
|
render() {
|
101
|
-
const { ariaLabel, el, foregroundColour, getLabel, position, size, label, type, variant, visible, } = this;
|
102
|
-
return (h(Host, { class: {
|
149
|
+
const { ariaLabel, el, foregroundColour, getLabel, position, size, label, type, variant, visible, theme, } = this;
|
150
|
+
return (h(Host, { key: 'c55c73aa83e0b1612a0545696091955c110f28b3', class: {
|
103
151
|
[`ic-badge-${position}`]: true,
|
104
152
|
[`ic-badge-${size}`]: true,
|
105
153
|
[`ic-badge-${variant}`]: true,
|
106
154
|
[`ic-badge-${type}`]: true,
|
107
|
-
[`ic-badge-foreground-${foregroundColour}`]: foregroundColour !== null,
|
155
|
+
[`ic-badge-foreground-${foregroundColour}`]: foregroundColour !== null && variant === "custom",
|
108
156
|
[`${visible ? "ic-badge-show" : "ic-badge-hide"}`]: true,
|
109
|
-
|
157
|
+
[`ic-theme-${theme}`]: theme !== "inherit",
|
158
|
+
}, id: el.id || null, "aria-label": ariaLabel, role: "status" }, type === "icon" && h("slot", { key: '69638833e6ac739848e645fa22f2732326fe24fe', name: "badge-icon" }), type === "text" && label && (h("ic-typography", { key: '841ec60f30d95c32c30e29c533157fdf199bdb2d', variant: size === "small" ? "badge-small" : "badge" }, getLabel())), type === "dot" && h("span", { key: '9d1198260090039de3093bf0fa191ff09cfd0408', class: "sr-only" }, "badge")));
|
110
159
|
}
|
111
160
|
static get delegatesFocus() { return true; }
|
112
161
|
get el() { return getElement(this); }
|
@@ -117,7 +166,7 @@ const Badge = class {
|
|
117
166
|
"visible": ["visibleHandler"]
|
118
167
|
}; }
|
119
168
|
};
|
120
|
-
Badge.style =
|
169
|
+
Badge.style = IcBadgeStyle0;
|
121
170
|
|
122
171
|
export { Badge as ic_badge };
|
123
172
|
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"ic-badge.entry.js","mappings":"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","names":[],"sources":["src/components/ic-badge/ic-badge.css?tag=ic-badge&encapsulation=shadow","src/components/ic-badge/ic-badge.tsx"],"sourcesContent":["@media (prefers-reduced-motion: no-preference) {\n :host(.ic-badge-show) {\n animation: expand var(--ic-transition-duration-slow);\n }\n\n :host(.ic-badge-hide) {\n animation: shrink var(--ic-transition-duration-slow);\n }\n}\n\n:host {\n display: flex;\n height: var(--ic-space-md);\n min-width: var(--ic-space-md);\n width: fit-content;\n border-radius: calc(2 * var(--ic-space-xxl));\n position: absolute;\n}\n\n:host(.ic-badge-neutral) {\n background-color: var(--ic-architectural-500);\n}\n\n:host(.ic-badge-light) {\n background-color: var(--ic-architectural-40);\n}\n\n:host(.ic-badge-info) {\n background-color: var(--ic-status-info);\n}\n\n:host(.ic-badge-warning) {\n background-color: var(--ic-status-warning);\n}\n\n:host(.ic-badge-error) {\n background-color: var(--ic-status-error);\n}\n\n:host(.ic-badge-success) {\n background-color: var(--ic-status-success);\n}\n\n:host(.ic-badge-small) {\n height: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host(.ic-badge-large) {\n height: calc(var(--ic-space-md) + var(--ic-space-xxs));\n min-width: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-default) {\n height: var(--ic-space-xs);\n width: var(--ic-space-xs);\n min-width: var(--ic-space-xs);\n}\n\n:host(.ic-badge-dot.ic-badge-small) {\n height: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n min-width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-dot.ic-badge-large) {\n height: var(--ic-space-sm);\n width: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host(.ic-badge-foreground-dark) ::slotted(*) {\n fill: var(--ic-color-primary-text);\n}\n\n:host(.ic-badge-foreground-light) ::slotted(*) {\n fill: white;\n}\n\n:host(.ic-badge-foreground-dark) ic-typography {\n color: var(--ic-color-primary-text);\n}\n\n:host(.ic-badge-foreground-light) ic-typography {\n color: white;\n}\n\n:host(.ic-badge-text) ic-typography {\n align-self: center;\n padding: 0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-text.ic-badge-small) ic-typography {\n padding: 0 0.2132rem;\n}\n\n:host(.ic-badge-text.ic-badge-large) ic-typography {\n padding: 0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-icon) ::slotted(svg) {\n width: var(--ic-space-sm);\n height: var(--ic-space-sm);\n padding: var(--ic-space-xxxs);\n}\n\n:host(.ic-badge-icon.ic-badge-small) ::slotted(svg) {\n width: var(--ic-space-xs);\n height: var(--ic-space-xs);\n}\n\n:host(.ic-badge-icon.ic-badge-large) ::slotted(svg) {\n width: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n height: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px));\n}\n\n:host(.ic-badge-far) {\n top: calc(-1 * var(--ic-space-xs));\n right: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.ic-badge-far.ic-badge-small),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-large) {\n top: calc(-1 * var(--ic-space-xxs));\n right: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-far),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-small) {\n top: calc(-1 * var(--ic-space-xxxs));\n right: calc(-1 * var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-near) {\n top: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n right: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n}\n\n:host(.ic-badge-dot.ic-badge-near) {\n top: calc(-1 * var(--ic-space-1px));\n right: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-badge-inline) {\n position: static;\n}\n\n:host(.ic-badge-hide) {\n visibility: hidden !important;\n transition: visibility var(--ic-transition-duration-slow);\n}\n\n@keyframes expand {\n from {\n opacity: 0;\n transform: scale(0);\n }\n\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@keyframes shrink {\n from {\n opacity: 1;\n transform: scale(1);\n }\n\n to {\n opacity: 0;\n transform: scale(0);\n }\n}\n","import { Component, Element, Host, Prop, Watch, h } from \"@stencil/core\";\nimport {\n IcBadgePositions,\n IcBadgeTypes,\n IcBadgeVariants,\n} from \"./ic-badge.types\";\nimport {\n IcColorRGBA,\n IcSizes,\n IcThemeForeground,\n IcColor,\n} from \"../../utils/types\";\nimport {\n convertToRGBA,\n getCssProperty,\n getThemeForegroundColor,\n hexToRgba,\n isPropDefined,\n onComponentRequiredPropUndefined,\n rgbaStrToObj,\n} from \"../../utils/helpers\";\n\n/**\n * @slot badge-icon - Icon will be rendered inside the badge if type is set to icon.\n */\n@Component({\n tag: \"ic-badge\",\n styleUrl: \"ic-badge.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Badge {\n private ariaLabel: string = null;\n private customColorRGBA: IcColorRGBA;\n private foregroundColour: IcThemeForeground;\n private parentAriaLabel: string;\n\n @Element() el: HTMLIcBadgeElement;\n\n /**\n * The accessible label of the badge component to provide context for screen reader users.\n */\n @Prop() accessibleLabel?: string;\n\n @Watch(\"accessibleLabel\")\n accessibleLabelHandler(): void {\n this.setAccessibleLabel();\n }\n\n /**\n * The custom badge colour. This will only style the badge component if variant=\"custom\".\n * Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n @Prop() customColor?: IcColor = null;\n\n @Watch(\"customColor\")\n customColorHandler(): void {\n this.variant === \"custom\" && this.setBadgeColour();\n }\n\n /**\n * The maximum number shown on the badge appended with a +.\n * This will only be displayed if type=\"text\" and label is not empty.\n */\n @Prop() maxNumber?: number;\n\n /**\n * The positioning of the badge in reference to the parent element.\n */\n @Prop() position?: IcBadgePositions = \"far\";\n\n /**\n * The size of the badge to be displayed.\n */\n @Prop() size?: IcSizes = \"default\";\n\n /**\n * The text displayed in the badge. This will only be displayed if type=\"text\".\n */\n @Prop() label?: string;\n\n /**\n * The type of badge to be displayed.\n */\n @Prop() type?: IcBadgeTypes = \"text\";\n\n /**\n * The variant of the badge to be displayed.\n */\n @Prop() variant?: IcBadgeVariants = \"neutral\";\n\n @Watch(\"variant\")\n variantHandler(): void {\n this.getBadgeForeground();\n }\n\n /**\n * If `true`, the badge will be displayed.\n */\n @Prop() visible: boolean = true;\n\n @Watch(\"visible\")\n visibleHandler(): void {\n this.setAccessibleLabel();\n }\n\n componentWillLoad(): void {\n this.variant === \"custom\" && this.setBadgeColour();\n\n this.getBadgeForeground();\n\n const ariaLabel = this.el.parentElement?.ariaLabel;\n if (ariaLabel) this.parentAriaLabel = ariaLabel;\n this.setAccessibleLabel();\n }\n\n componentDidLoad(): void {\n this.type === \"text\" &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Badge\"\n );\n }\n\n private setBadgeColour = () => {\n const colorRGBA = convertToRGBA(this.customColor);\n\n if (colorRGBA) {\n this.customColorRGBA = colorRGBA;\n const { r, g, b, a } = colorRGBA;\n this.el.style.backgroundColor = `rgba(${r}, ${g}, ${b}, ${a})`;\n }\n };\n\n private getBadgeRGB = () => {\n switch (this.variant) {\n case \"custom\":\n return this.customColorRGBA;\n case \"error\":\n case \"success\":\n case \"warning\":\n case \"info\": {\n return rgbaStrToObj(getCssProperty(`--ic-status-${this.variant}`));\n }\n case \"neutral\":\n case \"light\":\n return hexToRgba(\n getCssProperty(\n `--ic-architectural-${this.variant === \"neutral\" ? 500 : 40}`\n )\n );\n }\n };\n\n private getBadgeForeground = () => {\n const { r, g, b } = this.getBadgeRGB();\n this.foregroundColour = getThemeForegroundColor(\n (r * 299 + g * 587 + b * 114) / 1000\n );\n };\n\n private getLabel = () =>\n this.maxNumber && Number(this.label) > this.maxNumber\n ? `${this.maxNumber}+`\n : this.label;\n\n // Set aria-label on badge and / or parent element\n // Aria-describedby seems to not work, probably due to shadow DOM\n private setAccessibleLabel = () => {\n const parentEl = this.el.parentElement;\n const defaultAriaLabel = this.isAccessibleLabelDefined()\n ? this.accessibleLabel\n : this.label || \"with badge being displayed\";\n\n if (parentEl) {\n const { tagName } = parentEl;\n if (\n tagName !== \"IC-CARD\" &&\n (tagName !== \"IC-TAB\" || (tagName === \"IC-TAB\" && this.parentAriaLabel))\n ) {\n const ariaLabelPrefix = this.parentAriaLabel\n ? `${this.parentAriaLabel} ,`\n : \"\";\n parentEl.ariaLabel = this.visible\n ? `${ariaLabelPrefix} ${defaultAriaLabel}`\n : undefined;\n } else {\n this.ariaLabel = `, ${defaultAriaLabel}`;\n }\n }\n };\n\n private isAccessibleLabelDefined = () =>\n isPropDefined(this.accessibleLabel) && this.accessibleLabel !== null;\n\n render() {\n const {\n ariaLabel,\n el,\n foregroundColour,\n getLabel,\n position,\n size,\n label,\n type,\n variant,\n visible,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-badge-${position}`]: true,\n [`ic-badge-${size}`]: true,\n [`ic-badge-${variant}`]: true,\n [`ic-badge-${type}`]: true,\n [`ic-badge-foreground-${foregroundColour}`]:\n foregroundColour !== null,\n [`${visible ? \"ic-badge-show\" : \"ic-badge-hide\"}`]: true,\n }}\n id={el.id || null}\n aria-label={ariaLabel}\n role=\"status\"\n >\n {type === \"icon\" && <slot name=\"badge-icon\"></slot>}\n {type === \"text\" && label && (\n <ic-typography variant={size === \"small\" ? \"badge-small\" : \"badge\"}>\n {getLabel()}\n </ic-typography>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|
1
|
+
{"file":"ic-badge.entry.js","mappings":"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","names":[],"sources":["src/components/ic-badge/ic-badge.css?tag=ic-badge&encapsulation=shadow","src/components/ic-badge/ic-badge.tsx"],"sourcesContent":["@media (prefers-reduced-motion: no-preference) {\n :host(.ic-badge-show) {\n animation: expand var(--ic-transition-duration-slow);\n }\n\n :host(.ic-badge-hide) {\n animation: shrink var(--ic-transition-duration-slow);\n }\n}\n\n:host {\n display: flex;\n height: var(--ic-space-md);\n min-width: var(--ic-space-md);\n width: fit-content;\n border-radius: calc(2 * var(--ic-space-xxl));\n position: absolute;\n}\n\n:host ic-typography {\n --ic-typography-color: var(--ic-badge-text);\n}\n\n:host(.ic-badge-neutral) {\n background-color: var(--ic-badge-dark) !important;\n}\n\n:host(.ic-badge-light) ic-typography {\n --ic-typography-color: var(--ic-badge-text-monochrome);\n}\n\n:host(.ic-badge-light) ::slotted(*) {\n fill: var(--ic-badge-icon-monochrome);\n}\n\n:host(.ic-badge-info) {\n background-color: var(--ic-badge-info) !important;\n}\n\n:host(.ic-badge-light) {\n background-color: var(--ic-badge-light) !important;\n}\n\n:host(.ic-badge-warning) {\n background-color: var(--ic-badge-warning) !important;\n}\n\n:host(.ic-badge-warning) ic-typography {\n --ic-typography-color: var(--ic-badge-warning-text);\n}\n\n:host(.ic-badge-warning) ::slotted(*) {\n fill: var(--ic-badge-warning-icon);\n}\n\n:host(.ic-badge-error) {\n background-color: var(--ic-badge-error) !important;\n}\n\n:host(.ic-badge-success) {\n background-color: var(--ic-badge-success) !important;\n}\n\n:host(.ic-badge-small) {\n height: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host(.ic-badge-large) {\n height: calc(var(--ic-space-md) + var(--ic-space-xxs));\n min-width: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-medium) {\n height: var(--ic-space-xs);\n width: var(--ic-space-xs);\n min-width: var(--ic-space-xs);\n}\n\n:host(.ic-badge-dot.ic-badge-small) {\n height: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n min-width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-dot.ic-badge-large) {\n height: var(--ic-space-sm);\n width: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host ::slotted(*) {\n fill: var(--ic-badge-icon);\n}\n\n:host(.ic-badge-foreground-dark) ::slotted(*) {\n fill: var(--ic-color-text-primary-light);\n}\n\n:host(.ic-badge-foreground-light) ::slotted(*) {\n fill: white;\n}\n\n:host(.ic-badge-foreground-dark) ic-typography {\n --ic-typography-color: var(--ic-color-text-primary-light);\n}\n\n:host(.ic-badge-foreground-light) ic-typography {\n --ic-typography-color: var(--ic-color-primary-text-dark);\n}\n\n:host(.ic-badge-text) ic-typography {\n align-self: center;\n padding: 0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-text.ic-badge-small) ic-typography {\n padding: 0 0.2132rem;\n}\n\n:host(.ic-badge-text.ic-badge-large) ic-typography {\n padding: 0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-icon) ::slotted(svg) {\n width: var(--ic-space-sm);\n height: var(--ic-space-sm);\n padding: var(--ic-space-xxxs);\n}\n\n:host(.ic-badge-icon.ic-badge-small) ::slotted(svg) {\n width: var(--ic-space-xs);\n height: var(--ic-space-xs);\n}\n\n:host(.ic-badge-icon.ic-badge-large) ::slotted(svg) {\n width: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n height: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px));\n}\n\n:host(.ic-badge-far) {\n top: calc(-1 * var(--ic-space-xs));\n right: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.ic-badge-far.ic-badge-small),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-large) {\n top: calc(-1 * var(--ic-space-xxs));\n right: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-far),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-small) {\n top: calc(-1 * var(--ic-space-xxxs));\n right: calc(-1 * var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-near) {\n top: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n right: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n}\n\n:host(.ic-badge-dot.ic-badge-near) {\n top: calc(-1 * var(--ic-space-1px));\n right: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-badge-inline) {\n position: static;\n}\n\n:host(.ic-badge-hide) {\n visibility: hidden !important;\n transition: visibility var(--ic-transition-duration-slow);\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.sr-only:dir(rtl) {\n right: -9999px;\n}\n\n@keyframes expand {\n from {\n opacity: 0;\n transform: scale(0);\n }\n\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@keyframes shrink {\n from {\n opacity: 1;\n transform: scale(1);\n }\n\n to {\n opacity: 0;\n transform: scale(0);\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n Watch,\n h,\n Listen,\n} from \"@stencil/core\";\nimport {\n IcBadgePositions,\n IcBadgeTypes,\n IcBadgeVariants,\n} from \"./ic-badge.types\";\nimport {\n IcSizes,\n IcBrandForeground,\n IcColor,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n convertToRGBA,\n getBrandForegroundAppearance,\n isPropDefined,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\nconst TOP_NAVIGATION = \"IC-TOP-NAVIGATION\";\nconst SIDE_NAVIGATION = \"IC-SIDE-NAVIGATION\";\n\n/**\n * @slot badge-icon - Icon will be rendered inside the badge if type is set to icon.\n */\n@Component({\n tag: \"ic-badge\",\n styleUrl: \"ic-badge.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Badge {\n private ariaLabel: string | null = null;\n private foregroundColour: IcBrandForeground;\n private parentAriaLabel: string;\n private initialPosition: IcBadgePositions = this.position ?? \"far\";\n\n @Element() el: HTMLIcBadgeElement;\n\n /**\n * The accessible label of the badge component to provide context for screen reader users.\n */\n @Prop() accessibleLabel?: string;\n\n @Watch(\"accessibleLabel\")\n accessibleLabelHandler(): void {\n this.setAccessibleLabel();\n }\n\n /**\n * The custom badge colour. This will only style the badge component if variant=\"custom\".\n * Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n @Prop() customColor?: IcColor;\n\n @Watch(\"customColor\")\n customColorHandler(): void {\n this.variant === \"custom\" && this.setBadgeColour();\n }\n\n /**\n * The maximum number shown on the badge appended with a +.\n * This will only be displayed if type=\"text\" and label is not empty.\n */\n @Prop() maxNumber?: number;\n\n /**\n * The positioning of the badge in reference to the parent element.\n */\n @Prop({ mutable: true }) position?: IcBadgePositions = \"far\";\n\n /**\n * The size of the badge to be displayed.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The text displayed in the badge. This will only be displayed if type=\"text\".\n */\n @Prop() label?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The type of badge to be displayed.\n */\n @Prop() type?: IcBadgeTypes = \"text\";\n\n /**\n * The variant of the badge to be displayed.\n */\n @Prop() variant?: IcBadgeVariants = \"neutral\";\n\n @Watch(\"variant\")\n variantHandler(): void {\n if (this.variant === \"custom\") {\n this.setBadgeColour();\n }\n }\n\n /**\n * If `true`, the badge will be displayed.\n */\n @Prop() visible?: boolean = true;\n\n @Watch(\"visible\")\n visibleHandler(): void {\n this.setAccessibleLabel();\n }\n\n componentWillLoad(): void {\n this.variant === \"custom\" && this.setBadgeColour();\n\n const ariaLabel = this.el.parentElement?.ariaLabel;\n if (ariaLabel) this.parentAriaLabel = ariaLabel;\n this.setAccessibleLabel();\n }\n\n componentDidLoad(): void {\n this.type === \"text\" &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Badge\"\n );\n }\n\n componentWillRender(): void {\n this.isInTopNav() && this.setPositionInTopNavigation();\n this.isInSideNav() && this.setPositionInSideNavigation();\n }\n\n @Listen(\"icNavigationMenuOpened\", { target: \"document\" })\n navBarMenuOpenHandler(): void {\n this.isInTopNav() && (this.position = \"inline\");\n }\n\n @Listen(\"icNavigationMenuClosed\", { target: \"document\" })\n navBarMenuCloseHandler(): void {\n this.isInTopNav() && (this.position = this.initialPosition);\n }\n\n private setBadgeColour = () => {\n const colorRGBA = this.customColor ? convertToRGBA(this.customColor) : null;\n\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n this.el.style.backgroundColor = `rgba(${r}, ${g}, ${b}, ${a})`;\n this.foregroundColour = getBrandForegroundAppearance(\n (r * 299 + g * 587 + b * 114) / 1000\n );\n }\n };\n\n private getLabel = () =>\n this.maxNumber && Number(this.label) > this.maxNumber\n ? `${this.maxNumber}+`\n : this.label;\n\n // Set aria-label on badge and / or parent element\n // Aria-describedby seems to not work, probably due to shadow DOM\n private setAccessibleLabel = () => {\n const parentEl = this.el.parentElement;\n const defaultAriaLabel = this.isAccessibleLabelDefined()\n ? this.accessibleLabel\n : this.label || \"with badge being displayed\";\n\n if (parentEl) {\n const { tagName } = parentEl;\n if (\n tagName !== \"IC-CARD\" &&\n (tagName !== \"IC-TAB\" || (tagName === \"IC-TAB\" && this.parentAriaLabel))\n ) {\n const ariaLabelPrefix = this.parentAriaLabel\n ? `${this.parentAriaLabel} ,`\n : \"\";\n parentEl.ariaLabel = this.visible\n ? `${ariaLabelPrefix} ${defaultAriaLabel}`\n : null;\n } else {\n this.ariaLabel = `, ${defaultAriaLabel}`;\n }\n }\n };\n\n private setPositionInTopNavigation = () => {\n this.position = this.isInMobileMode() ? \"inline\" : this.initialPosition;\n };\n\n private setPositionInSideNavigation = () => {\n this.position = \"near\";\n };\n\n private isInTopNav = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n const grandparentEl = parentEl.parentElement;\n const greatGrandparentEl = grandparentEl?.parentElement;\n return (\n grandparentEl?.tagName === TOP_NAVIGATION ||\n greatGrandparentEl?.tagName === TOP_NAVIGATION\n );\n };\n\n private isInSideNav = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n const grandparentEl = parentEl.parentElement;\n const greatGrandparentEl = grandparentEl?.parentElement;\n return (\n grandparentEl?.tagName === SIDE_NAVIGATION ||\n greatGrandparentEl?.tagName === SIDE_NAVIGATION\n );\n };\n\n private isInMobileMode = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n const grandparentEl = parentEl.parentElement;\n const greatGrandparentEl = grandparentEl?.parentElement;\n return (\n ((grandparentEl?.tagName === TOP_NAVIGATION ||\n grandparentEl?.tagName === SIDE_NAVIGATION) &&\n grandparentEl.classList.contains(\"mobile-mode\")) ||\n ((greatGrandparentEl?.tagName === TOP_NAVIGATION ||\n greatGrandparentEl?.tagName === SIDE_NAVIGATION) &&\n greatGrandparentEl.classList.contains(\"mobile-mode\"))\n );\n };\n\n private isAccessibleLabelDefined = () =>\n isPropDefined(this.accessibleLabel) && this.accessibleLabel !== null;\n\n render() {\n const {\n ariaLabel,\n el,\n foregroundColour,\n getLabel,\n position,\n size,\n label,\n type,\n variant,\n visible,\n theme,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-badge-${position}`]: true,\n [`ic-badge-${size}`]: true,\n [`ic-badge-${variant}`]: true,\n [`ic-badge-${type}`]: true,\n [`ic-badge-foreground-${foregroundColour}`]:\n foregroundColour !== null && variant === \"custom\",\n [`${visible ? \"ic-badge-show\" : \"ic-badge-hide\"}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n id={el.id || null}\n aria-label={ariaLabel}\n role=\"status\"\n >\n {type === \"icon\" && <slot name=\"badge-icon\"></slot>}\n {type === \"text\" && label && (\n <ic-typography variant={size === \"small\" ? \"badge-small\" : \"badge\"}>\n {getLabel()}\n </ic-typography>\n )}\n {type === \"dot\" && <span class=\"sr-only\">badge</span>}\n </Host>\n );\n }\n}\n"],"version":3}
|