@ukic/web-components 3.0.0 → 3.1.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 +6 -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-a0a128bd.js} +155 -50
- package/dist/cjs/helpers-a0a128bd.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 +50 -30
- 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 +67 -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 +341 -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 +115 -43
- 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 +385 -163
- 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 +55 -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 +52 -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 +27 -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 +2 -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 +50 -19
- package/dist/collection/components/ic-alert/ic-alert.js +113 -34
- 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 +136 -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 +709 -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 +2387 -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 +102 -107
- 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 +78 -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 +16 -9
- 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 +295 -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 +14 -18
- 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 +43 -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 +54 -49
- 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 +40 -64
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +181 -60
- 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 +58 -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 +558 -212
- 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 +63 -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 +203 -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 +21 -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 +70 -124
- 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 +93 -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 +190 -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 +93 -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 +55 -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 +93 -43
- 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 +147 -45
- 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 +52 -30
- 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 +69 -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 +54 -13
- 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 +43 -24
- 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 +118 -43
- 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 +388 -163
- 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 +83 -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 +57 -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 +47 -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-06d97789.entry.js +2 -0
- package/dist/core/p-06d97789.entry.js.map +1 -0
- package/dist/core/{p-54238d16.entry.js → p-071f4748.entry.js} +2 -2
- package/dist/core/p-071f4748.entry.js.map +1 -0
- package/dist/core/p-09070f61.entry.js +2 -0
- package/dist/core/p-09070f61.entry.js.map +1 -0
- package/dist/core/p-0c0ac69d.entry.js +2 -0
- package/dist/core/p-0c0ac69d.entry.js.map +1 -0
- package/dist/core/p-0d016565.entry.js +2 -0
- package/dist/core/p-0d016565.entry.js.map +1 -0
- package/dist/core/p-0e96d4d8.entry.js +2 -0
- package/dist/core/p-0e96d4d8.entry.js.map +1 -0
- package/dist/core/p-10cd26dc.entry.js +2 -0
- package/dist/core/p-10cd26dc.entry.js.map +1 -0
- package/dist/core/{p-a87d13b3.entry.js → p-110486f0.entry.js} +2 -2
- package/dist/core/p-110486f0.entry.js.map +1 -0
- package/dist/core/p-116ad73d.entry.js +2 -0
- package/dist/core/p-116ad73d.entry.js.map +1 -0
- package/dist/core/p-1171a945.entry.js +2 -0
- package/dist/core/p-1171a945.entry.js.map +1 -0
- package/dist/core/p-17cf7b50.entry.js +2 -0
- package/dist/core/p-17cf7b50.entry.js.map +1 -0
- package/dist/core/p-1ac08e6d.entry.js +2 -0
- package/dist/core/p-1ac08e6d.entry.js.map +1 -0
- package/dist/core/p-1f455336.entry.js +2 -0
- package/dist/core/p-1f455336.entry.js.map +1 -0
- package/dist/core/p-20c4d90b.entry.js +2 -0
- package/dist/core/p-20c4d90b.entry.js.map +1 -0
- package/dist/core/p-2537f33e.entry.js +2 -0
- package/dist/core/p-2537f33e.entry.js.map +1 -0
- package/dist/core/p-264ce7a0.entry.js +2 -0
- package/dist/core/p-264ce7a0.entry.js.map +1 -0
- package/dist/core/p-28656111.entry.js +2 -0
- package/dist/core/p-28656111.entry.js.map +1 -0
- package/dist/core/p-2b1a331b.entry.js +2 -0
- package/dist/core/p-2b1a331b.entry.js.map +1 -0
- package/dist/core/p-33243fff.entry.js +2 -0
- package/dist/core/p-33243fff.entry.js.map +1 -0
- package/dist/core/p-37df68fe.entry.js +2 -0
- package/dist/core/p-37df68fe.entry.js.map +1 -0
- package/dist/core/p-3b185c32.js.map +1 -1
- package/dist/core/p-426ec638.js.map +1 -1
- package/dist/core/p-44e32417.entry.js +2 -0
- package/dist/core/p-44e32417.entry.js.map +1 -0
- package/dist/core/p-45595f98.entry.js +2 -0
- package/dist/core/p-45595f98.entry.js.map +1 -0
- package/dist/core/p-49768069.entry.js +2 -0
- package/dist/core/p-49768069.entry.js.map +1 -0
- package/dist/core/p-4c68494c.entry.js +2 -0
- package/dist/core/p-4c68494c.entry.js.map +1 -0
- package/dist/core/p-4f2a1950.entry.js +2 -0
- package/dist/core/p-4f2a1950.entry.js.map +1 -0
- package/dist/core/p-50f4d151.entry.js +2 -0
- package/dist/core/p-50f4d151.entry.js.map +1 -0
- package/dist/core/p-55a37101.entry.js +2 -0
- package/dist/core/p-55a37101.entry.js.map +1 -0
- package/dist/core/p-5c349c9d.entry.js +2 -0
- package/dist/core/p-5c349c9d.entry.js.map +1 -0
- package/dist/core/p-5e1fd097.entry.js +2 -0
- package/dist/core/p-5e1fd097.entry.js.map +1 -0
- package/dist/core/p-68a5aaff.js.map +1 -1
- package/dist/core/p-69e4daec.entry.js +2 -0
- package/dist/core/p-69e4daec.entry.js.map +1 -0
- package/dist/core/p-701696aa.entry.js +2 -0
- package/dist/core/p-701696aa.entry.js.map +1 -0
- package/dist/core/p-729745d3.entry.js +2 -0
- package/dist/core/p-729745d3.entry.js.map +1 -0
- package/dist/core/p-73fc198f.entry.js +2 -0
- package/dist/core/p-73fc198f.entry.js.map +1 -0
- package/dist/core/p-74600ed8.entry.js +2 -0
- package/dist/core/p-74600ed8.entry.js.map +1 -0
- package/dist/core/p-78e7a859.entry.js +2 -0
- package/dist/core/p-78e7a859.entry.js.map +1 -0
- package/dist/core/p-7e79bd0e.entry.js +2 -0
- package/dist/core/p-7e79bd0e.entry.js.map +1 -0
- package/dist/core/p-7eaf8da8.entry.js +2 -0
- package/dist/core/p-7eaf8da8.entry.js.map +1 -0
- package/dist/core/p-811d447b.entry.js +2 -0
- package/dist/core/p-811d447b.entry.js.map +1 -0
- package/dist/core/p-85734ebf.entry.js +2 -0
- package/dist/core/p-85734ebf.entry.js.map +1 -0
- package/dist/core/p-85b7d931.entry.js +2 -0
- package/dist/core/p-85b7d931.entry.js.map +1 -0
- package/dist/core/{p-a0e4d6bd.entry.js → p-8856dff4.entry.js} +2 -2
- package/dist/core/p-8856dff4.entry.js.map +1 -0
- package/dist/core/p-8b268274.entry.js +2 -0
- package/dist/core/p-8b268274.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-972671ea.entry.js +2 -0
- package/dist/core/p-972671ea.entry.js.map +1 -0
- package/dist/core/p-98328cb9.entry.js +2 -0
- package/dist/core/p-98328cb9.entry.js.map +1 -0
- package/dist/core/p-a103068b.entry.js +2 -0
- package/dist/core/p-a103068b.entry.js.map +1 -0
- package/dist/core/p-a20a7cd3.entry.js +2 -0
- package/dist/core/p-a20a7cd3.entry.js.map +1 -0
- package/dist/core/p-a22658fb.entry.js +2 -0
- package/dist/core/p-a22658fb.entry.js.map +1 -0
- package/dist/core/p-a55e7988.entry.js +2 -0
- package/dist/core/p-a55e7988.entry.js.map +1 -0
- package/dist/core/p-a71055c9.entry.js +2 -0
- package/dist/core/p-a71055c9.entry.js.map +1 -0
- package/dist/core/p-a794b724.entry.js +2 -0
- package/dist/core/p-a794b724.entry.js.map +1 -0
- package/dist/core/p-b21b4fea.entry.js +2 -0
- package/dist/core/p-b21b4fea.entry.js.map +1 -0
- package/dist/core/p-b953b22f.entry.js +2 -0
- package/dist/core/p-b953b22f.entry.js.map +1 -0
- package/dist/core/p-c2e091d7.js.map +1 -1
- package/dist/core/p-c9726fbd.entry.js +2 -0
- package/dist/core/p-c9726fbd.entry.js.map +1 -0
- package/dist/core/p-d981598e.entry.js +2 -0
- package/dist/core/p-d981598e.entry.js.map +1 -0
- package/dist/core/p-d9aec0dd.entry.js +2 -0
- package/dist/core/p-d9aec0dd.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-ed8957da.js +2 -0
- package/dist/core/p-ed8957da.js.map +1 -0
- package/dist/core/p-f074ef5b.js.map +1 -1
- package/dist/core/p-f3315216.entry.js +2 -0
- package/dist/core/p-f3315216.entry.js.map +1 -0
- package/dist/core/p-f34efc17.entry.js +2 -0
- package/dist/core/p-f34efc17.entry.js.map +1 -0
- package/dist/core/p-f43f411a.entry.js +2 -0
- package/dist/core/p-f43f411a.entry.js.map +1 -0
- package/dist/core/{p-bf89c86d.entry.js → p-fa02a267.entry.js} +2 -2
- package/dist/core/p-fa02a267.entry.js.map +1 -0
- package/dist/core/p-ff995eb8.entry.js +2 -0
- package/dist/core/p-ff995eb8.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-dd035d0d.js} +148 -46
- package/dist/esm/helpers-dd035d0d.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 +50 -30
- 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 +67 -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 +341 -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 +115 -43
- 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 +385 -163
- 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 +51 -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 +52 -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 +10 -2
- 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 +11 -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 +52 -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 +33 -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 +15 -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 +6 -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 +960 -383
- 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 +31 -17
- package/dist/types/utils/types.d.ts +17 -10
- package/hydrate/index.d.ts +53 -12
- package/hydrate/index.js +32876 -19763
- package/hydrate/index.mjs +34407 -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 +21 -20
- 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,12 +1,13 @@
|
|
1
|
-
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
1
|
+
import { proxyCustomElement, HTMLElement, createEvent, h, Fragment, Host } from '@stencil/core/internal/client';
|
2
2
|
import { c as closeIcon } from './close-icon.js';
|
3
|
-
import { c as checkResizeObserver, i as isSlotUsed, o as onComponentRequiredPropUndefined } from './helpers.js';
|
3
|
+
import { c as checkResizeObserver, m as getSlotElements, i as isSlotUsed, o as onComponentRequiredPropUndefined } from './helpers.js';
|
4
4
|
import { d as defineCustomElement$5 } from './ic-button2.js';
|
5
5
|
import { d as defineCustomElement$4 } from './ic-loading-indicator2.js';
|
6
6
|
import { d as defineCustomElement$3 } from './ic-tooltip2.js';
|
7
7
|
import { d as defineCustomElement$2 } from './ic-typography2.js';
|
8
8
|
|
9
|
-
const icDialogCss = "/*! 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{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);opacity:0}:host(.ic-dialog-fade-in){opacity:1}:host(.disable-height-constraint){background:none;justify-content:unset;align-items:unset}.dialog.disable-height-constraint{max-height:none;position:relative}.dialog.disable-height-constraint .content-area{overflow-y:visible}@media (prefers-reduced-motion: no-preference){:host{transition:opacity var(--ic-easing-transition-slow)}.dialog{transform:translateY(-3rem);transition:transform 1000s}:host(.ic-dialog-fade-in) .dialog{transform:translateY(0);transition:transform var(--ic-easing-transition-slow)}}:host(.ic-dialog-hidden){display:none}.dialog{background-color:var(--ic-
|
9
|
+
const icDialogCss = "/*! 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{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);opacity:0}:host(.ic-dialog-fade-in){opacity:1}:host(.disable-height-constraint){background:none;justify-content:unset;align-items:unset}.dialog.disable-height-constraint{max-height:none;position:relative}.dialog.disable-height-constraint .content-area{overflow-y:visible}@media (prefers-reduced-motion: no-preference){:host{transition:opacity var(--ic-easing-transition-slow)}.dialog{transform:translateY(-3rem);transition:transform 1000s}:host(.ic-dialog-fade-in) .dialog{transform:translateY(0);transition:transform var(--ic-easing-transition-slow)}}:host(.ic-dialog-hidden){display:none}.dialog{background-color:var(--ic-dialog-background);color:var(--ic-dialog-text-primary);--ic-typography-color:var(--ic-dialog-text-primary);border:var(--ic-space-1px) solid var(--ic-dialog-border);border-radius:var(--ic-border-radius);padding:var(--ic-space-xs) 0 var(--ic-space-md);display:flex;flex-direction:column;box-sizing:border-box;overflow-x:visible}.small{width:50%;max-width:25rem;min-height:11rem;max-height:70vh}.medium{width:70vw;max-width:44rem;min-height:12.5rem;max-height:70vh}.large{width:90vw;max-width:62.5rem;min-height:12.5rem;max-height:90vh}.heading-area{display:flex;margin-bottom:var(--ic-space-xs);padding:0 var(--ic-space-md)}.heading{overflow-wrap:break-word}.close-icon{margin-left:auto}.close-icon>svg{color:var(--ic-dialog-clear-button)}.content-area{padding:0 var(--ic-space-md);margin:0;overflow-y:auto}#dialog-content{margin-bottom:var(--ic-space-sm)}#dialog-content ::slotted(ic-typography){overflow-wrap:break-word}#dialog-content ::slotted(*){position:relative}.dialog-controls{margin-top:auto;padding:var(--ic-space-xs) var(--ic-space-md) 0;display:flex;justify-content:flex-end;gap:var(--ic-space-md)}.dialog-control-button{width:-moz-fit-content;width:fit-content}.backdrop{overflow-y:auto;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);padding-top:16px;padding-bottom:16px}.heading ic-typography{--ic-typography-color:var(--ic-dialog-text-primary)}.label ic-typography{--ic-typography-color:var(--ic-dialog-label)}@media (min-width: 800px){:host([size=\"large\"]) .dialog:not(.disable-width-constraint)>.content-area{width:75%}}@media (max-width: 576px){.dialog{width:100vw;height:100vh;transform:translateY(-5rem);max-width:none;max-height:none;box-sizing:border-box}.backdrop{padding:0}.dialog.disable-height-constraint{height:auto;min-height:100vh}}@media (max-width: 364px){.dialog-control-button{width:unset}}";
|
10
|
+
const IcDialogStyle0 = icDialogCss;
|
10
11
|
|
11
12
|
const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement {
|
12
13
|
constructor() {
|
@@ -17,23 +18,68 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
17
18
|
this.icDialogClosed = createEvent(this, "icDialogClosed", 7);
|
18
19
|
this.icDialogConfirmed = createEvent(this, "icDialogConfirmed", 7);
|
19
20
|
this.icDialogOpened = createEvent(this, "icDialogOpened", 7);
|
21
|
+
this.contentAreaMutationObserver = null;
|
20
22
|
this.DATA_GETS_FOCUS = "data-gets-focus";
|
21
|
-
this.DATA_GETS_FOCUS_SELECTOR = "[data-gets-focus]";
|
22
23
|
this.DIALOG_CONTROLS = "dialog-controls";
|
23
24
|
this.dialogHeight = 0;
|
24
25
|
this.focusedElementIndex = 0;
|
25
26
|
this.IC_TEXT_FIELD = "IC-TEXT-FIELD";
|
26
27
|
this.IC_ACCORDION = "IC-ACCORDION";
|
27
28
|
this.IC_ACCORDION_GROUP = "IC-ACCORDION-GROUP";
|
29
|
+
this.IC_CHECKBOX = "IC-CHECKBOX";
|
30
|
+
this.IC_SEARCH_BAR = "IC-SEARCH-BAR";
|
28
31
|
this.resizeObserver = null;
|
32
|
+
this.dialogRendered = false;
|
33
|
+
this.fadeIn = false;
|
34
|
+
/**
|
35
|
+
* If set to `false`, the dialog will not close when the backdrop is clicked.
|
36
|
+
*/
|
37
|
+
this.closeOnBackdropClick = true;
|
38
|
+
/**
|
39
|
+
* If 'true', sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button.
|
40
|
+
*/
|
41
|
+
this.destructive = false;
|
42
|
+
/**
|
43
|
+
* Sets the dismiss label tooltip and aria label.
|
44
|
+
*/
|
45
|
+
this.dismissLabel = "Dismiss";
|
46
|
+
/**
|
47
|
+
* If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold.
|
48
|
+
* This prop also prevents popover elements from being cut off within the content area.
|
49
|
+
*/
|
50
|
+
this.disableHeightConstraint = false;
|
51
|
+
/**
|
52
|
+
* If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant.
|
53
|
+
*/
|
54
|
+
this.disableWidthConstraint = false;
|
55
|
+
/**
|
56
|
+
* If `true`, the close button will not be displayed.
|
57
|
+
*/
|
58
|
+
this.hideCloseButton = false;
|
59
|
+
/**
|
60
|
+
* If set to `true`, default button controls will not be shown, but slotted dialog controls will still be displayed.
|
61
|
+
*/
|
62
|
+
this.hideDefaultControls = false;
|
63
|
+
/**
|
64
|
+
* If `true`, the dialog will be displayed.
|
65
|
+
*/
|
66
|
+
this.open = false;
|
67
|
+
/**
|
68
|
+
* Sets the maximum and minimum height and width for the dialog.
|
69
|
+
*/
|
70
|
+
this.size = "small";
|
71
|
+
/**
|
72
|
+
* 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.
|
73
|
+
*/
|
74
|
+
this.theme = "inherit";
|
29
75
|
this.dialogOpened = () => {
|
30
|
-
var _a;
|
76
|
+
var _a, _b;
|
31
77
|
this.dialogRendered = true;
|
32
78
|
if (this.disableHeightConstraint) {
|
33
|
-
this.dialogEl.show();
|
79
|
+
(_a = this.dialogEl) === null || _a === void 0 ? void 0 : _a.show();
|
34
80
|
}
|
35
81
|
else {
|
36
|
-
(
|
82
|
+
(_b = this.dialogEl) === null || _b === void 0 ? void 0 : _b.showModal();
|
37
83
|
}
|
38
84
|
setTimeout(() => {
|
39
85
|
this.fadeIn = true;
|
@@ -44,7 +90,9 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
44
90
|
*
|
45
91
|
* Without this, the scroll bar will start from the dialog's last scroll-x coordinate.
|
46
92
|
*/
|
47
|
-
if (this.
|
93
|
+
if (this.backdropEl &&
|
94
|
+
this.disableHeightConstraint &&
|
95
|
+
this.backdropEl.scrollTop !== 0) {
|
48
96
|
this.backdropEl.scrollTop = 0;
|
49
97
|
}
|
50
98
|
}, 10);
|
@@ -53,59 +101,62 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
53
101
|
checkResizeObserver(this.runResizeObserver);
|
54
102
|
}, 75);
|
55
103
|
setTimeout(() => {
|
56
|
-
this.getFocusedElementIndex();
|
57
104
|
this.icDialogOpened.emit();
|
58
105
|
}, 80);
|
59
106
|
};
|
60
107
|
this.runResizeObserver = () => {
|
61
|
-
this.
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
108
|
+
if (this.dialogEl) {
|
109
|
+
this.resizeObserver = new ResizeObserver(() => {
|
110
|
+
clearTimeout(this.resizeTimeout);
|
111
|
+
this.resizeTimeout = window.setTimeout(this.resizeObserverCallback, 80);
|
112
|
+
});
|
113
|
+
this.resizeObserver.observe(this.dialogEl);
|
114
|
+
}
|
66
115
|
};
|
67
116
|
this.resizeObserverCallback = () => {
|
68
|
-
if (this.dialogEl.clientHeight !== this.dialogHeight) {
|
117
|
+
if (this.dialogEl && this.dialogEl.clientHeight !== this.dialogHeight) {
|
69
118
|
this.dialogHeight = this.dialogEl.clientHeight;
|
70
119
|
}
|
71
120
|
};
|
72
121
|
this.refreshInteractiveElementsOnSlotChange = () => {
|
73
|
-
|
74
|
-
this.
|
122
|
+
var _a, _b, _c;
|
123
|
+
const contentWrapper = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#dialog-content");
|
124
|
+
if (contentWrapper) {
|
125
|
+
this.contentArea = contentWrapper.querySelector("slot");
|
126
|
+
// Detect changes to slotted elements
|
127
|
+
(_b = this.contentArea) === null || _b === void 0 ? void 0 : _b.addEventListener("slotchange", this.getInteractiveElements);
|
128
|
+
this.contentAreaMutationObserver = new MutationObserver(() => {
|
129
|
+
this.getInteractiveElements();
|
130
|
+
});
|
131
|
+
// Detect changes to children of slotted elements
|
132
|
+
(_c = getSlotElements(contentWrapper)) === null || _c === void 0 ? void 0 : _c.forEach((el) => {
|
133
|
+
var _a;
|
134
|
+
(_a = this.contentAreaMutationObserver) === null || _a === void 0 ? void 0 : _a.observe(el, {
|
135
|
+
childList: true,
|
136
|
+
subtree: true,
|
137
|
+
});
|
138
|
+
});
|
139
|
+
}
|
75
140
|
};
|
76
141
|
this.removeSlotChangeListener = () => {
|
142
|
+
var _a;
|
77
143
|
if (this.contentArea) {
|
78
144
|
this.contentArea.removeEventListener("slotchange", this.getInteractiveElements);
|
145
|
+
(_a = this.contentAreaMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
79
146
|
}
|
80
147
|
};
|
81
148
|
this.setInitialFocus = () => {
|
82
149
|
this.sourceElement = document.activeElement;
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
else {
|
88
|
-
focusedElement = this.el.shadowRoot.querySelector(this.DATA_GETS_FOCUS_SELECTOR);
|
89
|
-
}
|
90
|
-
if (focusedElement.tagName === this.IC_TEXT_FIELD) {
|
91
|
-
focusedElement.setFocus();
|
92
|
-
}
|
93
|
-
else if (focusedElement.tagName === this.IC_ACCORDION_GROUP) {
|
94
|
-
focusedElement.setFocus();
|
95
|
-
}
|
96
|
-
else if (focusedElement.tagName === this.IC_ACCORDION) {
|
97
|
-
focusedElement.setFocus();
|
98
|
-
}
|
99
|
-
else {
|
100
|
-
focusedElement.focus({
|
101
|
-
preventScroll: this.disableHeightConstraint ? true : false,
|
102
|
-
});
|
103
|
-
}
|
150
|
+
this.focusedElementIndex = this.interactiveElementList
|
151
|
+
? this.interactiveElementList.findIndex((element) => element.hasAttribute(this.DATA_GETS_FOCUS))
|
152
|
+
: 0;
|
153
|
+
this.focusElement(this.interactiveElementList[this.focusedElementIndex]);
|
104
154
|
};
|
105
155
|
this.getFocusedElementIndex = () => {
|
156
|
+
var _a;
|
106
157
|
for (let i = 0; i < this.interactiveElementList.length; i++) {
|
107
158
|
if (this.interactiveElementList[i] ===
|
108
|
-
(this.el.shadowRoot.activeElement || document.activeElement)) {
|
159
|
+
(((_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement) || document.activeElement)) {
|
109
160
|
this.focusedElementIndex = i;
|
110
161
|
}
|
111
162
|
}
|
@@ -114,11 +165,12 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
114
165
|
this.open = false;
|
115
166
|
};
|
116
167
|
this.getInteractiveElements = () => {
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
ic-
|
121
|
-
ic-
|
168
|
+
var _a;
|
169
|
+
this.interactiveElementList = Array.from(((_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll("ic-button")) || []);
|
170
|
+
const slottedInteractiveElements = Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex="-1"]),
|
171
|
+
ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group,
|
172
|
+
ic-back-to-top, ic-breadcrumb, ic-chip[dismissible="true"], ic-footer-link, ic-link, ic-navigation-button,
|
173
|
+
ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`));
|
122
174
|
if (slottedInteractiveElements.length > 0) {
|
123
175
|
if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {
|
124
176
|
slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, "");
|
@@ -132,61 +184,65 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
132
184
|
}
|
133
185
|
};
|
134
186
|
this.getNextFocusEl = (focusedElementIndex) => this.interactiveElementList[focusedElementIndex];
|
135
|
-
this.
|
187
|
+
this.onTabKeyPress = (shiftKey) => {
|
136
188
|
this.getFocusedElementIndex();
|
189
|
+
if (this.interactiveElementList[this.focusedElementIndex].tagName ===
|
190
|
+
this.IC_SEARCH_BAR) {
|
191
|
+
return false;
|
192
|
+
}
|
137
193
|
this.setFocusIndexBasedOnShiftKey(shiftKey);
|
138
194
|
this.loopNextFocusIndexIfLastElement();
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
195
|
+
this.focusElement(this.getNextFocusEl(this.focusedElementIndex), shiftKey);
|
196
|
+
return true;
|
197
|
+
};
|
198
|
+
this.shouldSkipElement = (element) => {
|
199
|
+
const isHidden = getComputedStyle(element).visibility === "hidden" ||
|
200
|
+
element.offsetHeight === 0 ||
|
201
|
+
element.hasAttribute("disabled") ||
|
202
|
+
(element.tagName === this.IC_ACCORDION_GROUP &&
|
203
|
+
element.hasAttribute("single-expansion"));
|
204
|
+
const radioEl = element.closest("ic-radio-option");
|
205
|
+
return (isHidden ||
|
206
|
+
(element.getAttribute("type") === "radio" &&
|
207
|
+
!!radioEl &&
|
208
|
+
!radioEl.hasAttribute("selected")));
|
209
|
+
};
|
210
|
+
this.focusElement = (element, shiftKey = false) => {
|
211
|
+
let nextFocusEl = element;
|
212
|
+
if (this.shouldSkipElement(element)) {
|
213
|
+
this.setFocusIndexBasedOnShiftKey(shiftKey);
|
214
|
+
this.loopNextFocusIndexIfLastElement();
|
215
|
+
nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);
|
216
|
+
this.focusElement(nextFocusEl, shiftKey);
|
145
217
|
}
|
146
218
|
else {
|
147
|
-
|
148
|
-
this.
|
149
|
-
this.
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
}
|
158
|
-
else {
|
159
|
-
nextFocusEl.focus();
|
219
|
+
switch (element.tagName) {
|
220
|
+
case this.IC_ACCORDION_GROUP:
|
221
|
+
case this.IC_ACCORDION:
|
222
|
+
case this.IC_SEARCH_BAR:
|
223
|
+
case this.IC_TEXT_FIELD:
|
224
|
+
case this.IC_CHECKBOX:
|
225
|
+
element.setFocus();
|
226
|
+
break;
|
227
|
+
default:
|
228
|
+
element.focus();
|
160
229
|
}
|
161
230
|
}
|
162
231
|
};
|
163
232
|
this.renderDialog = () => {
|
164
|
-
const {
|
233
|
+
const { hideDefaultControls, size, heading, label, destructive, dismissLabel, hideCloseButton, disableHeightConstraint, disableWidthConstraint, closeIconClick, DIALOG_CONTROLS, } = this;
|
234
|
+
const controlsSlotUsed = isSlotUsed(this.el, DIALOG_CONTROLS);
|
165
235
|
return (h("dialog", { class: {
|
166
|
-
|
236
|
+
dialog: true,
|
167
237
|
[`${size}`]: true,
|
168
|
-
|
169
|
-
|
170
|
-
}, "aria-labelledby": "dialog-label dialog-heading", "aria-describedby": "dialog-alert dialog-content", ref: (el) => (this.dialogEl = el) }, h("div", { class: "heading-area" }, h("div", { class: "heading-content" }, h("div", { class: "label" }, h("slot", { name: "label" }, h("ic-typography", { variant: "label", id: "dialog-label" }, label))), h("div", { class: "heading" }, h("slot", { name: "heading" }, h("ic-typography", { variant: "h4", id: "dialog-heading" }, heading)))), !hideCloseButton && (h("ic-button", { class: "close-icon", variant: "icon", innerHTML: closeIcon, "aria-label": dismissLabel, onClick:
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
} }, h("ic-button", { variant: "tertiary", onClick: () => this.cancelDialog(), class: "dialog-control-button", "data-gets-focus": null }, "Cancel"), h("ic-button", { variant: this.destructive ? "destructive" : "primary", onClick: () => this.confirmDialog(), class: "dialog-control-button", "data-gets-focus": "" }, "Confirm"))))));
|
238
|
+
"disable-height-constraint": !!disableHeightConstraint,
|
239
|
+
"disable-width-constraint": !!disableWidthConstraint,
|
240
|
+
}, "aria-labelledby": "dialog-label dialog-heading", "aria-describedby": "dialog-alert dialog-content", ref: (el) => (this.dialogEl = el) }, h("div", { class: "heading-area" }, h("div", { class: "heading-content" }, h("div", { class: "label" }, h("slot", { name: "label" }, h("ic-typography", { variant: "label", id: "dialog-label" }, label))), h("div", { class: "heading" }, h("slot", { name: "heading" }, h("ic-typography", { variant: "h4", id: "dialog-heading" }, heading)))), !hideCloseButton && (h("ic-button", { class: "close-icon", variant: "icon", innerHTML: closeIcon, "aria-label": dismissLabel, onClick: closeIconClick, "data-gets-focus": destructive || (hideDefaultControls && !controlsSlotUsed)
|
241
|
+
? ""
|
242
|
+
: null }))), h("div", { class: "content-area" }, isSlotUsed(this.el, "alert") && h("slot", { name: "alert" }), h("div", { id: "dialog-content" }, h("slot", null))), (controlsSlotUsed || !hideDefaultControls) && (h("div", { class: {
|
243
|
+
[DIALOG_CONTROLS]: true,
|
244
|
+
} }, controlsSlotUsed ? (h("slot", { name: DIALOG_CONTROLS })) : (h(Fragment, null, h("ic-button", { variant: "tertiary", onClick: () => this.cancelDialog(), class: "dialog-control-button", "data-gets-focus": null }, "Cancel"), h("ic-button", { variant: destructive ? "destructive" : "primary", onClick: () => this.confirmDialog(), class: "dialog-control-button", "data-gets-focus": "" }, "Confirm")))))));
|
176
245
|
};
|
177
|
-
this.dialogRendered = false;
|
178
|
-
this.fadeIn = false;
|
179
|
-
this.buttons = true;
|
180
|
-
this.closeOnBackdropClick = true;
|
181
|
-
this.destructive = false;
|
182
|
-
this.dismissLabel = "Dismiss";
|
183
|
-
this.disableHeightConstraint = false;
|
184
|
-
this.disableWidthConstraint = false;
|
185
|
-
this.hideCloseButton = false;
|
186
|
-
this.heading = undefined;
|
187
|
-
this.label = undefined;
|
188
|
-
this.open = undefined;
|
189
|
-
this.size = "small";
|
190
246
|
}
|
191
247
|
watchOpenHandler() {
|
192
248
|
if (this.open) {
|
@@ -198,10 +254,10 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
198
254
|
this.resizeObserver.disconnect();
|
199
255
|
}
|
200
256
|
setTimeout(() => {
|
201
|
-
var _a;
|
257
|
+
var _a, _b;
|
202
258
|
this.dialogRendered = false;
|
203
|
-
this.dialogEl.close();
|
204
|
-
(
|
259
|
+
(_a = this.dialogEl) === null || _a === void 0 ? void 0 : _a.close();
|
260
|
+
(_b = this.sourceElement) === null || _b === void 0 ? void 0 : _b.focus();
|
205
261
|
this.dialogHeight = 0;
|
206
262
|
this.icDialogClosed.emit();
|
207
263
|
}, 80);
|
@@ -220,20 +276,19 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
220
276
|
onComponentRequiredPropUndefined([{ prop: this.heading, propName: "heading" }], "Dialog");
|
221
277
|
}
|
222
278
|
componentDidRender() {
|
223
|
-
|
224
|
-
this.
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
document.body.style.overflow = "auto";
|
229
|
-
}
|
279
|
+
document.body.style.overflow =
|
280
|
+
getComputedStyle(this.el).display !== "none" &&
|
281
|
+
this.disableHeightConstraint
|
282
|
+
? "hidden"
|
283
|
+
: "auto";
|
230
284
|
}
|
231
285
|
handleKeyboard(ev) {
|
232
286
|
if (this.dialogRendered) {
|
233
287
|
switch (ev.key) {
|
234
288
|
case "Tab":
|
235
|
-
ev.
|
236
|
-
|
289
|
+
if (this.onTabKeyPress(ev.shiftKey)) {
|
290
|
+
ev.preventDefault();
|
291
|
+
}
|
237
292
|
break;
|
238
293
|
case "Escape":
|
239
294
|
if (!ev.repeat) {
|
@@ -245,14 +300,14 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
245
300
|
}
|
246
301
|
}
|
247
302
|
handleClick(ev) {
|
248
|
-
|
249
|
-
|
250
|
-
ev.composedPath().indexOf(
|
251
|
-
const
|
252
|
-
const isInDialog =
|
253
|
-
ev.clientY <=
|
254
|
-
|
255
|
-
ev.clientX <=
|
303
|
+
if (this.dialogEl &&
|
304
|
+
this.closeOnBackdropClick &&
|
305
|
+
ev.composedPath().indexOf(this.dialogEl) <= 0) {
|
306
|
+
const { top, height, left, width } = this.dialogEl.getBoundingClientRect();
|
307
|
+
const isInDialog = top <= ev.clientY &&
|
308
|
+
ev.clientY <= top + height &&
|
309
|
+
left <= ev.clientX &&
|
310
|
+
ev.clientX <= left + width;
|
256
311
|
if (!isInDialog) {
|
257
312
|
this.open = false;
|
258
313
|
}
|
@@ -287,29 +342,32 @@ const Dialog = /*@__PURE__*/ proxyCustomElement(class Dialog extends HTMLElement
|
|
287
342
|
}
|
288
343
|
}
|
289
344
|
render() {
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
345
|
+
const { dialogRendered, disableHeightConstraint, fadeIn, theme } = this;
|
346
|
+
return (h(Host, { key: '2920aac3b3891cae0e6575c735e507c4c76752f9', class: {
|
347
|
+
"ic-dialog-hidden": !dialogRendered,
|
348
|
+
"ic-dialog-fade-in": fadeIn,
|
349
|
+
"disable-height-constraint": !!disableHeightConstraint,
|
350
|
+
[`ic-theme-${theme}`]: theme !== "inherit",
|
351
|
+
} }, disableHeightConstraint ? (h("div", { class: "backdrop", ref: (el) => (this.backdropEl = el) }, this.renderDialog())) : (this.renderDialog())));
|
295
352
|
}
|
296
353
|
get el() { return this; }
|
297
354
|
static get watchers() { return {
|
298
355
|
"open": ["watchOpenHandler"]
|
299
356
|
}; }
|
300
|
-
static get style() { return
|
357
|
+
static get style() { return IcDialogStyle0; }
|
301
358
|
}, [1, "ic-dialog", {
|
302
|
-
"buttons": [4],
|
303
359
|
"closeOnBackdropClick": [4, "close-on-backdrop-click"],
|
304
360
|
"destructive": [4],
|
305
361
|
"dismissLabel": [1, "dismiss-label"],
|
306
362
|
"disableHeightConstraint": [4, "disable-height-constraint"],
|
307
363
|
"disableWidthConstraint": [4, "disable-width-constraint"],
|
308
364
|
"hideCloseButton": [4, "hide-close-button"],
|
365
|
+
"hideDefaultControls": [4, "hide-default-controls"],
|
309
366
|
"heading": [1],
|
310
367
|
"label": [1],
|
311
368
|
"open": [1540],
|
312
369
|
"size": [1],
|
370
|
+
"theme": [1],
|
313
371
|
"dialogRendered": [32],
|
314
372
|
"fadeIn": [32],
|
315
373
|
"cancelDialog": [64],
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"ic-dialog.js","mappings":"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","names":[],"sources":["src/components/ic-dialog/ic-dialog.css?tag=ic-dialog&encapsulation=shadow","src/components/ic-dialog/ic-dialog.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-dialog: z-index of dialog \n */\n\n:host {\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100% !important;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n opacity: 0;\n}\n\n:host(.ic-dialog-fade-in) {\n opacity: 1;\n}\n\n:host(.disable-height-constraint) {\n background: none;\n justify-content: unset;\n align-items: unset;\n}\n\n.dialog.disable-height-constraint {\n max-height: none;\n position: relative;\n}\n\n.dialog.disable-height-constraint .content-area {\n overflow-y: visible;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host {\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n .dialog {\n transform: translateY(-3rem);\n transition: transform 1000s;\n }\n\n :host(.ic-dialog-fade-in) .dialog {\n transform: translateY(0);\n transition: transform var(--ic-easing-transition-slow);\n }\n}\n\n:host(.ic-dialog-hidden) {\n display: none;\n}\n\n.dialog {\n background-color: var(--ic-architectural-white);\n color: var(--ic-architectural-black);\n border: var(--ic-border-default);\n border-radius: var(--ic-border-radius);\n padding: var(--ic-space-xs) 0 var(--ic-space-md);\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n overflow-x: visible;\n}\n\n.small {\n width: 50%;\n max-width: 25rem;\n min-height: 11rem;\n max-height: 70vh;\n}\n\n.medium {\n width: 70vw;\n max-width: 44rem;\n min-height: 12.5rem;\n max-height: 70vh;\n}\n\n.large {\n width: 90vw;\n max-width: 62.5rem;\n min-height: 12.5rem;\n max-height: 90vh;\n}\n\n.heading-area {\n display: flex;\n margin-bottom: var(--ic-space-xs);\n padding: 0 var(--ic-space-md);\n}\n\n.heading {\n overflow-wrap: break-word;\n}\n\n.close-icon {\n margin-left: auto;\n}\n\n.content-area {\n -ms-overflow-style: none;\n scrollbar-width: none;\n padding: 0 var(--ic-space-md);\n margin: 0;\n overflow-y: auto;\n}\n\n.content-area::-webkit-scrollbar {\n display: none;\n}\n\n#dialog-content {\n margin-bottom: var(--ic-space-sm);\n}\n\n#dialog-content ::slotted(ic-typography) {\n overflow-wrap: break-word;\n}\n\n#dialog-content ::slotted(*) {\n position: relative;\n}\n\n.dialog-controls {\n margin-top: auto;\n padding: var(--ic-space-xs) var(--ic-space-md) 0;\n display: flex;\n justify-content: flex-end;\n gap: var(--ic-space-md);\n}\n\n.dialog-control-button {\n width: fit-content;\n}\n\n.backdrop {\n overflow-y: auto;\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n padding-top: 16px;\n padding-bottom: 16px;\n}\n\n@media (min-width: 800px) {\n :host([size=\"large\"]) .dialog:not(.disable-width-constraint) > .content-area {\n width: 75%;\n }\n}\n\n@media (max-width: 576px) {\n .dialog {\n width: 100vw;\n height: 100vh;\n transform: translateY(-5rem);\n max-width: none;\n max-height: none;\n box-sizing: border-box;\n }\n\n .backdrop {\n padding: 0;\n }\n\n .dialog.disable-height-constraint {\n height: auto;\n min-height: 100vh;\n }\n}\n\n@media (max-width: 364px) {\n .dialog-control-button {\n width: unset;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n State,\n Method,\n Listen,\n Watch,\n h,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport {\n isSlotUsed,\n checkResizeObserver,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\n/**\n * @slot dialog-controls - Content will be place at the bottom of the dialog.\n * @slot heading - Content will be placed at the top of the dialog.\n * @slot label - Content will be placed above the dialog heading.\n * @slot alert - Content will be placed at the top of the content area of the dialog.\n */\n@Component({\n tag: \"ic-dialog\",\n styleUrl: \"ic-dialog.css\",\n shadow: true,\n})\nexport class Dialog {\n private backdropEl: HTMLDivElement;\n private contentArea: HTMLSlotElement;\n private DATA_GETS_FOCUS: string = \"data-gets-focus\";\n private DATA_GETS_FOCUS_SELECTOR: string = \"[data-gets-focus]\";\n private DIALOG_CONTROLS: string = \"dialog-controls\";\n private dialogEl: HTMLDialogElement;\n private dialogHeight: number = 0;\n private focusedElementIndex = 0;\n private IC_TEXT_FIELD: string = \"IC-TEXT-FIELD\";\n private IC_ACCORDION: string = \"IC-ACCORDION\";\n private IC_ACCORDION_GROUP: string = \"IC-ACCORDION-GROUP\";\n private interactiveElementList: HTMLElement[];\n private resizeObserver: ResizeObserver = null;\n private resizeTimeout: number;\n private sourceElement: HTMLElement;\n\n @Element() el: HTMLIcDialogElement;\n\n @State() dialogRendered: boolean = false;\n @State() fadeIn: boolean = false;\n\n /**\n * If set to `false`, default buttons or slotted dialog controls will not be displayed.\n */\n @Prop() buttons?: boolean = true;\n\n /**\n * If set to `true`, the dialog will not close when the backdrop is clicked.\n */\n @Prop() closeOnBackdropClick?: boolean = true;\n\n /**\n * If default buttons are displayed, sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button.\n */\n @Prop() destructive?: boolean = false;\n\n /**\n * Sets the dismiss label tooltip and aria label.\n */\n @Prop() dismissLabel?: string = \"Dismiss\";\n\n /**\n * If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold.\n * This prop also prevents popover elements from being cut off within the content area.\n */\n @Prop() disableHeightConstraint?: boolean = false;\n\n /**\n * If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant.\n */\n @Prop() disableWidthConstraint?: boolean = false;\n\n /**\n * If `true`, the close button will not be displayed.\n */\n @Prop() hideCloseButton?: boolean = false;\n\n /**\n * Sets the heading for the dialog.\n */\n @Prop() heading: string;\n\n /**\n * Sets the optional label for the dialog which appears above the heading.\n */\n @Prop() label?: string;\n\n /**\n * If `true`, the dialog will be displayed.\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = undefined;\n\n @Watch(\"open\")\n watchOpenHandler(): void {\n if (this.open) {\n this.dialogOpened();\n } else {\n this.fadeIn = false;\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n setTimeout(() => {\n this.dialogRendered = false;\n this.dialogEl.close();\n this.sourceElement?.focus();\n this.dialogHeight = 0;\n this.icDialogClosed.emit();\n }, 80);\n }\n }\n\n /**\n * Sets the maximum and minimum height and width for the dialog.\n */\n @Prop() size?: \"small\" | \"medium\" | \"large\" = \"small\";\n\n /**\n * Cancelation event emitted when default 'Cancel' button clicked or 'cancelDialog' method is called.\n */\n @Event() icDialogCancelled: EventEmitter<void>;\n\n /**\n * Emitted when dialog has closed.\n */\n @Event() icDialogClosed: EventEmitter<void>;\n\n /**\n * Confirmation event emitted when default 'Confirm' primary button clicked or 'confirmDialog' method is called.\n */\n @Event() icDialogConfirmed: EventEmitter<void>;\n\n /**\n * Emitted when dialog has opened.\n */\n @Event() icDialogOpened: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.removeSlotChangeListener();\n }\n\n componentDidLoad(): void {\n this.getInteractiveElements();\n\n this.refreshInteractiveElementsOnSlotChange();\n\n if (this.open) {\n this.dialogOpened();\n }\n\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Dialog\"\n );\n }\n\n componentDidRender(): void {\n if (\n getComputedStyle(this.el).display !== \"none\" &&\n this.disableHeightConstraint\n ) {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"auto\";\n }\n }\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeyboard(ev: KeyboardEvent): void {\n if (this.dialogRendered) {\n switch (ev.key) {\n case \"Tab\":\n ev.preventDefault();\n this.focusNextInteractiveElement(ev.shiftKey);\n break;\n case \"Escape\":\n if (!ev.repeat) {\n this.open = false;\n }\n ev.stopImmediatePropagation();\n break;\n }\n }\n }\n\n @Listen(\"click\", {})\n handleClick(ev: MouseEvent): void {\n const dialogElement = this.el.shadowRoot.querySelector(\"dialog\");\n if (\n this.closeOnBackdropClick &&\n ev.composedPath().indexOf(dialogElement) <= 0\n ) {\n const rect = this.dialogEl.getBoundingClientRect();\n const isInDialog =\n rect.top <= ev.clientY &&\n ev.clientY <= rect.top + rect.height &&\n rect.left <= ev.clientX &&\n ev.clientX <= rect.left + rect.width;\n if (!isInDialog) {\n this.open = false;\n }\n }\n }\n\n /**\n * Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog.\n */\n @Method()\n async cancelDialog(): Promise<void> {\n this.icDialogCancelled.emit();\n this.open = false;\n }\n\n /**\n * Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog.\n */\n @Method()\n async confirmDialog(): Promise<void> {\n this.icDialogConfirmed.emit();\n }\n\n private dialogOpened = () => {\n this.dialogRendered = true;\n\n if (this.disableHeightConstraint) {\n this.dialogEl.show();\n } else {\n this.dialogEl?.showModal();\n }\n\n setTimeout(() => {\n this.fadeIn = true;\n\n /**\n * This is required to set scroll back to top if:\n * - dialog content goes below the fold\n * - is closed using cancel or confirm and reopened.\n *\n * Without this, the scroll bar will start from the dialog's last scroll-x coordinate.\n */\n if (this.disableHeightConstraint && this.backdropEl.scrollTop !== 0) {\n this.backdropEl.scrollTop = 0;\n }\n }, 10);\n\n setTimeout(() => {\n this.setInitialFocus();\n checkResizeObserver(this.runResizeObserver);\n }, 75);\n\n setTimeout(() => {\n this.getFocusedElementIndex();\n this.icDialogOpened.emit();\n }, 80);\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(this.resizeObserverCallback, 80);\n });\n this.resizeObserver.observe(this.dialogEl);\n };\n\n private resizeObserverCallback = () => {\n if (this.dialogEl.clientHeight !== this.dialogHeight) {\n this.dialogHeight = this.dialogEl.clientHeight;\n }\n };\n\n private refreshInteractiveElementsOnSlotChange = () => {\n this.contentArea = this.el.shadowRoot.querySelector(\"#dialog-content slot\");\n\n this.contentArea.addEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n };\n\n private removeSlotChangeListener = () => {\n if (this.contentArea) {\n this.contentArea.removeEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n }\n };\n\n private setInitialFocus = () => {\n this.sourceElement = document.activeElement as HTMLElement;\n\n let focusedElement;\n\n if (this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR) !== null) {\n focusedElement = this.el.querySelector(\n this.DATA_GETS_FOCUS_SELECTOR\n ) as HTMLElement;\n } else {\n focusedElement = this.el.shadowRoot.querySelector(\n this.DATA_GETS_FOCUS_SELECTOR\n ) as HTMLElement;\n }\n if (focusedElement.tagName === this.IC_TEXT_FIELD) {\n (focusedElement as HTMLIcTextFieldElement).setFocus();\n } else if (focusedElement.tagName === this.IC_ACCORDION_GROUP) {\n (focusedElement as HTMLIcAccordionGroupElement).setFocus();\n } else if (focusedElement.tagName === this.IC_ACCORDION) {\n (focusedElement as HTMLIcAccordionElement).setFocus();\n } else {\n focusedElement.focus({\n preventScroll: this.disableHeightConstraint ? true : false,\n });\n }\n };\n\n private getFocusedElementIndex = () => {\n for (let i = 0; i < this.interactiveElementList.length; i++) {\n if (\n (this.interactiveElementList[i] as HTMLElement) ===\n (this.el.shadowRoot.activeElement || document.activeElement)\n ) {\n this.focusedElementIndex = i;\n }\n }\n };\n\n private closeIconClick = () => {\n this.open = false;\n };\n\n private getInteractiveElements = () => {\n this.interactiveElementList = Array.from(\n this.el.shadowRoot.querySelectorAll(\"ic-button\")\n );\n const slottedInteractiveElements = Array.from(\n this.el.querySelectorAll(\n `a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex=\"-1\"]), \n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, ic-radio-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible=\"true\"], ic-footer-link, ic-link, ic-navigation-button, \n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion`\n )\n );\n if (slottedInteractiveElements.length > 0) {\n if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {\n slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, \"\");\n } else if (!this.destructive) {\n slottedInteractiveElements[\n slottedInteractiveElements.length - 1\n ].setAttribute(this.DATA_GETS_FOCUS, \"\");\n }\n }\n for (let i = 0; i < slottedInteractiveElements.length; i++) {\n this.interactiveElementList.splice(\n 1 + i,\n 0,\n slottedInteractiveElements[i] as HTMLElement\n );\n }\n };\n\n private getNextFocusEl = (focusedElementIndex: number) =>\n this.interactiveElementList[focusedElementIndex];\n\n private focusNextInteractiveElement = (shiftKey: boolean) => {\n this.getFocusedElementIndex();\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n let nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n\n const isHidden =\n getComputedStyle(nextFocusEl).visibility === \"hidden\" ||\n (nextFocusEl.tagName === this.IC_ACCORDION_GROUP &&\n nextFocusEl.hasAttribute(\"single-expansion\"));\n\n if (nextFocusEl.tagName === this.IC_TEXT_FIELD) {\n (nextFocusEl as HTMLIcTextFieldElement).setFocus();\n } else {\n if (isHidden) {\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n }\n if (nextFocusEl.tagName === this.IC_ACCORDION_GROUP) {\n (nextFocusEl as HTMLIcAccordionGroupElement).setFocus();\n } else if (nextFocusEl.tagName === this.IC_ACCORDION) {\n (nextFocusEl as HTMLIcAccordionElement).setFocus();\n } else {\n (nextFocusEl as HTMLElement).focus();\n }\n }\n };\n\n private loopNextFocusIndexIfLastElement() {\n if (this.focusedElementIndex > this.interactiveElementList.length - 1)\n this.focusedElementIndex = 0;\n else if (this.focusedElementIndex < 0) {\n this.focusedElementIndex = this.interactiveElementList.length - 1;\n }\n }\n\n private setFocusIndexBasedOnShiftKey(shiftKey: boolean) {\n if (shiftKey) {\n this.focusedElementIndex -= 1;\n } else {\n this.focusedElementIndex += 1;\n }\n }\n\n private renderDialog = () => {\n const {\n buttons,\n size,\n heading,\n label,\n destructive,\n dismissLabel,\n hideCloseButton,\n } = this;\n\n return (\n <dialog\n class={{\n [\"dialog\"]: true,\n [`${size}`]: true,\n [\"disable-height-constraint\"]: this.disableHeightConstraint,\n [\"disable-width-constraint\"]: this.disableWidthConstraint,\n }}\n aria-labelledby=\"dialog-label dialog-heading\"\n aria-describedby=\"dialog-alert dialog-content\"\n ref={(el) => (this.dialogEl = el)}\n >\n <div class=\"heading-area\">\n <div class=\"heading-content\">\n <div class=\"label\">\n <slot name=\"label\">\n <ic-typography variant=\"label\" id=\"dialog-label\">\n {label}\n </ic-typography>\n </slot>\n </div>\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\" id=\"dialog-heading\">\n {heading}\n </ic-typography>\n </slot>\n </div>\n </div>\n {!hideCloseButton && (\n <ic-button\n class=\"close-icon\"\n variant=\"icon\"\n innerHTML={closeIcon}\n aria-label={dismissLabel}\n onClick={this.closeIconClick}\n data-gets-focus={destructive || !buttons ? \"\" : null}\n ></ic-button>\n )}\n </div>\n <div class=\"content-area\">\n {isSlotUsed(this.el, \"alert\") && <slot name=\"alert\"></slot>}\n <div id=\"dialog-content\">\n <slot></slot>\n </div>\n </div>\n {buttons &&\n (isSlotUsed(this.el, this.DIALOG_CONTROLS) ? (\n <div\n class={{\n [this.DIALOG_CONTROLS]: true,\n }}\n >\n <slot name={this.DIALOG_CONTROLS}></slot>\n </div>\n ) : (\n <div\n class={{\n [this.DIALOG_CONTROLS]: true,\n }}\n >\n <ic-button\n variant=\"tertiary\"\n onClick={() => this.cancelDialog()}\n class=\"dialog-control-button\"\n data-gets-focus={null}\n >\n Cancel\n </ic-button>\n <ic-button\n variant={this.destructive ? \"destructive\" : \"primary\"}\n onClick={() => this.confirmDialog()}\n class=\"dialog-control-button\"\n data-gets-focus=\"\"\n >\n Confirm\n </ic-button>\n </div>\n ))}\n </dialog>\n );\n };\n\n render() {\n return (\n <Host\n class={{\n [\"ic-dialog-hidden\"]: !this.dialogRendered,\n [\"ic-dialog-fade-in\"]: this.fadeIn,\n [\"disable-height-constraint\"]: this.disableHeightConstraint,\n }}\n >\n {this.disableHeightConstraint ? (\n <div class=\"backdrop\" ref={(el) => (this.backdropEl = el)}>\n {this.renderDialog()}\n </div>\n ) : (\n this.renderDialog()\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|
1
|
+
{"file":"ic-dialog.js","mappings":"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","names":[],"sources":["src/components/ic-dialog/ic-dialog.css?tag=ic-dialog&encapsulation=shadow","src/components/ic-dialog/ic-dialog.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-dialog: z-index of dialog \n */\n\n:host {\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100% !important;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n opacity: 0;\n}\n\n:host(.ic-dialog-fade-in) {\n opacity: 1;\n}\n\n:host(.disable-height-constraint) {\n background: none;\n justify-content: unset;\n align-items: unset;\n}\n\n.dialog.disable-height-constraint {\n max-height: none;\n position: relative;\n}\n\n.dialog.disable-height-constraint .content-area {\n overflow-y: visible;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host {\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n .dialog {\n transform: translateY(-3rem);\n transition: transform 1000s;\n }\n\n :host(.ic-dialog-fade-in) .dialog {\n transform: translateY(0);\n transition: transform var(--ic-easing-transition-slow);\n }\n}\n\n:host(.ic-dialog-hidden) {\n display: none;\n}\n\n.dialog {\n background-color: var(--ic-dialog-background);\n color: var(--ic-dialog-text-primary);\n --ic-typography-color: var(--ic-dialog-text-primary);\n border: var(--ic-space-1px) solid var(--ic-dialog-border);\n border-radius: var(--ic-border-radius);\n padding: var(--ic-space-xs) 0 var(--ic-space-md);\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n overflow-x: visible;\n}\n\n.small {\n width: 50%;\n max-width: 25rem;\n min-height: 11rem;\n max-height: 70vh;\n}\n\n.medium {\n width: 70vw;\n max-width: 44rem;\n min-height: 12.5rem;\n max-height: 70vh;\n}\n\n.large {\n width: 90vw;\n max-width: 62.5rem;\n min-height: 12.5rem;\n max-height: 90vh;\n}\n\n.heading-area {\n display: flex;\n margin-bottom: var(--ic-space-xs);\n padding: 0 var(--ic-space-md);\n}\n\n.heading {\n overflow-wrap: break-word;\n}\n\n.close-icon {\n margin-left: auto;\n}\n\n.close-icon > svg {\n color: var(--ic-dialog-clear-button);\n}\n\n.content-area {\n padding: 0 var(--ic-space-md);\n margin: 0;\n overflow-y: auto;\n}\n\n#dialog-content {\n margin-bottom: var(--ic-space-sm);\n}\n\n#dialog-content ::slotted(ic-typography) {\n overflow-wrap: break-word;\n}\n\n#dialog-content ::slotted(*) {\n position: relative;\n}\n\n.dialog-controls {\n margin-top: auto;\n padding: var(--ic-space-xs) var(--ic-space-md) 0;\n display: flex;\n justify-content: flex-end;\n gap: var(--ic-space-md);\n}\n\n.dialog-control-button {\n width: fit-content;\n}\n\n.backdrop {\n overflow-y: auto;\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n padding-top: 16px;\n padding-bottom: 16px;\n}\n\n.heading ic-typography {\n --ic-typography-color: var(--ic-dialog-text-primary);\n}\n\n.label ic-typography {\n --ic-typography-color: var(--ic-dialog-label);\n}\n\n@media (min-width: 800px) {\n :host([size=\"large\"]) .dialog:not(.disable-width-constraint) > .content-area {\n width: 75%;\n }\n}\n\n@media (max-width: 576px) {\n .dialog {\n width: 100vw;\n height: 100vh;\n transform: translateY(-5rem);\n max-width: none;\n max-height: none;\n box-sizing: border-box;\n }\n\n .backdrop {\n padding: 0;\n }\n\n .dialog.disable-height-constraint {\n height: auto;\n min-height: 100vh;\n }\n}\n\n@media (max-width: 364px) {\n .dialog-control-button {\n width: unset;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n State,\n Method,\n Listen,\n Watch,\n h,\n Fragment,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport {\n isSlotUsed,\n checkResizeObserver,\n onComponentRequiredPropUndefined,\n getSlotElements,\n} from \"../../utils/helpers\";\nimport { IcFocusableComponents, IcThemeMode } from \"../../utils/types\";\n\n/**\n * @slot dialog-controls - Content will be place at the bottom of the dialog.\n * @slot heading - Content will be placed at the top of the dialog.\n * @slot label - Content will be placed above the dialog heading.\n * @slot alert - Content will be placed at the top of the content area of the dialog.\n */\n@Component({\n tag: \"ic-dialog\",\n styleUrl: \"ic-dialog.css\",\n shadow: true,\n})\nexport class Dialog {\n private backdropEl?: HTMLDivElement;\n private contentArea: HTMLSlotElement | null;\n private contentAreaMutationObserver: MutationObserver | null = null;\n private DATA_GETS_FOCUS: string = \"data-gets-focus\";\n private DIALOG_CONTROLS: string = \"dialog-controls\";\n private dialogEl?: HTMLDialogElement;\n private dialogHeight: number = 0;\n private focusedElementIndex = 0;\n private IC_TEXT_FIELD: string = \"IC-TEXT-FIELD\";\n private IC_ACCORDION: string = \"IC-ACCORDION\";\n private IC_ACCORDION_GROUP: string = \"IC-ACCORDION-GROUP\";\n private IC_CHECKBOX = \"IC-CHECKBOX\";\n private IC_SEARCH_BAR: string = \"IC-SEARCH-BAR\";\n private interactiveElementList: HTMLElement[];\n private resizeObserver: ResizeObserver | null = null;\n private resizeTimeout: number;\n private sourceElement: HTMLElement;\n\n @Element() el: HTMLIcDialogElement;\n\n @State() dialogRendered: boolean = false;\n @State() fadeIn: boolean = false;\n\n /**\n * If set to `false`, the dialog will not close when the backdrop is clicked.\n */\n @Prop() closeOnBackdropClick?: boolean = true;\n\n /**\n * If 'true', sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button.\n */\n @Prop() destructive?: boolean = false;\n\n /**\n * Sets the dismiss label tooltip and aria label.\n */\n @Prop() dismissLabel?: string = \"Dismiss\";\n\n /**\n * If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold.\n * This prop also prevents popover elements from being cut off within the content area.\n */\n @Prop() disableHeightConstraint?: boolean = false;\n\n /**\n * If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant.\n */\n @Prop() disableWidthConstraint?: boolean = false;\n\n /**\n * If `true`, the close button will not be displayed.\n */\n @Prop() hideCloseButton?: boolean = false;\n\n /**\n * If set to `true`, default button controls will not be shown, but slotted dialog controls will still be displayed.\n */\n @Prop() hideDefaultControls: boolean = false;\n\n /**\n * Sets the heading for the dialog.\n */\n @Prop() heading?: string;\n\n /**\n * Sets the optional label for the dialog which appears above the heading.\n */\n @Prop() label?: string;\n\n /**\n * If `true`, the dialog will be displayed.\n */\n @Prop({ reflect: true, mutable: true }) open?: boolean = false;\n\n @Watch(\"open\")\n watchOpenHandler(): void {\n if (this.open) {\n this.dialogOpened();\n } else {\n this.fadeIn = false;\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n setTimeout(() => {\n this.dialogRendered = false;\n this.dialogEl?.close();\n this.sourceElement?.focus();\n this.dialogHeight = 0;\n this.icDialogClosed.emit();\n }, 80);\n }\n }\n\n /**\n * Sets the maximum and minimum height and width for the dialog.\n */\n @Prop() size?: \"small\" | \"medium\" | \"large\" = \"small\";\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 * Cancelation event emitted when default 'Cancel' button clicked or 'cancelDialog' method is called.\n */\n @Event() icDialogCancelled: EventEmitter<void>;\n\n /**\n * Emitted when dialog has closed.\n */\n @Event() icDialogClosed: EventEmitter<void>;\n\n /**\n * Confirmation event emitted when default 'Confirm' primary button clicked or 'confirmDialog' method is called.\n */\n @Event() icDialogConfirmed: EventEmitter<void>;\n\n /**\n * Emitted when dialog has opened.\n */\n @Event() icDialogOpened: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.removeSlotChangeListener();\n }\n\n componentDidLoad(): void {\n this.getInteractiveElements();\n\n this.refreshInteractiveElementsOnSlotChange();\n\n if (this.open) {\n this.dialogOpened();\n }\n\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Dialog\"\n );\n }\n\n componentDidRender(): void {\n document.body.style.overflow =\n getComputedStyle(this.el).display !== \"none\" &&\n this.disableHeightConstraint\n ? \"hidden\"\n : \"auto\";\n }\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeyboard(ev: KeyboardEvent): void {\n if (this.dialogRendered) {\n switch (ev.key) {\n case \"Tab\":\n if (this.onTabKeyPress(ev.shiftKey)) {\n ev.preventDefault();\n }\n break;\n case \"Escape\":\n if (!ev.repeat) {\n this.open = false;\n }\n ev.stopImmediatePropagation();\n break;\n }\n }\n }\n\n @Listen(\"click\", {})\n handleClick(ev: MouseEvent): void {\n if (\n this.dialogEl &&\n this.closeOnBackdropClick &&\n ev.composedPath().indexOf(this.dialogEl) <= 0\n ) {\n const { top, height, left, width } =\n this.dialogEl.getBoundingClientRect();\n const isInDialog =\n top <= ev.clientY &&\n ev.clientY <= top + height &&\n left <= ev.clientX &&\n ev.clientX <= left + width;\n if (!isInDialog) {\n this.open = false;\n }\n }\n }\n\n /**\n * Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog.\n */\n @Method()\n async cancelDialog(): Promise<void> {\n this.icDialogCancelled.emit();\n this.open = false;\n }\n\n /**\n * Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog.\n */\n @Method()\n async confirmDialog(): Promise<void> {\n this.icDialogConfirmed.emit();\n }\n\n private dialogOpened = () => {\n this.dialogRendered = true;\n\n if (this.disableHeightConstraint) {\n this.dialogEl?.show();\n } else {\n this.dialogEl?.showModal();\n }\n\n setTimeout(() => {\n this.fadeIn = true;\n\n /**\n * This is required to set scroll back to top if:\n * - dialog content goes below the fold\n * - is closed using cancel or confirm and reopened.\n *\n * Without this, the scroll bar will start from the dialog's last scroll-x coordinate.\n */\n if (\n this.backdropEl &&\n this.disableHeightConstraint &&\n this.backdropEl.scrollTop !== 0\n ) {\n this.backdropEl.scrollTop = 0;\n }\n }, 10);\n\n setTimeout(() => {\n this.setInitialFocus();\n checkResizeObserver(this.runResizeObserver);\n }, 75);\n\n setTimeout(() => {\n this.icDialogOpened.emit();\n }, 80);\n };\n\n private runResizeObserver = () => {\n if (this.dialogEl) {\n this.resizeObserver = new ResizeObserver(() => {\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(this.resizeObserverCallback, 80);\n });\n this.resizeObserver.observe(this.dialogEl);\n }\n };\n\n private resizeObserverCallback = () => {\n if (this.dialogEl && this.dialogEl.clientHeight !== this.dialogHeight) {\n this.dialogHeight = this.dialogEl.clientHeight;\n }\n };\n\n private refreshInteractiveElementsOnSlotChange = () => {\n const contentWrapper = this.el.shadowRoot?.querySelector(\"#dialog-content\");\n\n if (contentWrapper) {\n this.contentArea = contentWrapper.querySelector(\"slot\");\n\n // Detect changes to slotted elements\n this.contentArea?.addEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n\n this.contentAreaMutationObserver = new MutationObserver(() => {\n this.getInteractiveElements();\n });\n\n // Detect changes to children of slotted elements\n getSlotElements(contentWrapper)?.forEach((el) => {\n this.contentAreaMutationObserver?.observe(el, {\n childList: true,\n subtree: true,\n });\n });\n }\n };\n\n private removeSlotChangeListener = () => {\n if (this.contentArea) {\n this.contentArea.removeEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n\n this.contentAreaMutationObserver?.disconnect();\n }\n };\n\n private setInitialFocus = () => {\n this.sourceElement = document.activeElement as HTMLElement;\n this.focusedElementIndex = this.interactiveElementList\n ? this.interactiveElementList.findIndex((element) =>\n element.hasAttribute(this.DATA_GETS_FOCUS)\n )\n : 0;\n this.focusElement(this.interactiveElementList[this.focusedElementIndex]);\n };\n\n private getFocusedElementIndex = () => {\n for (let i = 0; i < this.interactiveElementList.length; i++) {\n if (\n (this.interactiveElementList[i] as HTMLElement) ===\n (this.el.shadowRoot?.activeElement || document.activeElement)\n ) {\n this.focusedElementIndex = i;\n }\n }\n };\n\n private closeIconClick = () => {\n this.open = false;\n };\n\n private getInteractiveElements = () => {\n this.interactiveElementList = Array.from(\n this.el.shadowRoot?.querySelectorAll(\"ic-button\") || []\n );\n const slottedInteractiveElements = Array.from(\n this.el.querySelectorAll(\n `a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex=\"-1\"]),\n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible=\"true\"], ic-footer-link, ic-link, ic-navigation-button,\n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`\n )\n );\n if (slottedInteractiveElements.length > 0) {\n if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {\n slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, \"\");\n } else if (!this.destructive) {\n slottedInteractiveElements[\n slottedInteractiveElements.length - 1\n ].setAttribute(this.DATA_GETS_FOCUS, \"\");\n }\n }\n for (let i = 0; i < slottedInteractiveElements.length; i++) {\n this.interactiveElementList.splice(\n 1 + i,\n 0,\n slottedInteractiveElements[i] as HTMLElement\n );\n }\n };\n\n private getNextFocusEl = (focusedElementIndex: number) =>\n this.interactiveElementList[focusedElementIndex];\n\n private onTabKeyPress = (shiftKey: boolean): boolean => {\n this.getFocusedElementIndex();\n\n if (\n this.interactiveElementList[this.focusedElementIndex].tagName ===\n this.IC_SEARCH_BAR\n ) {\n return false;\n }\n\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n this.focusElement(this.getNextFocusEl(this.focusedElementIndex), shiftKey);\n return true;\n };\n\n private shouldSkipElement = (element: HTMLElement): boolean => {\n const isHidden =\n getComputedStyle(element).visibility === \"hidden\" ||\n element.offsetHeight === 0 ||\n element.hasAttribute(\"disabled\") ||\n (element.tagName === this.IC_ACCORDION_GROUP &&\n element.hasAttribute(\"single-expansion\"));\n\n const radioEl = element.closest(\"ic-radio-option\");\n\n return (\n isHidden ||\n (element.getAttribute(\"type\") === \"radio\" &&\n !!radioEl &&\n !radioEl.hasAttribute(\"selected\"))\n );\n };\n\n private focusElement = (element: HTMLElement, shiftKey = false) => {\n let nextFocusEl = element;\n\n if (this.shouldSkipElement(element)) {\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n this.focusElement(nextFocusEl, shiftKey);\n } else {\n switch (element.tagName) {\n case this.IC_ACCORDION_GROUP:\n case this.IC_ACCORDION:\n case this.IC_SEARCH_BAR:\n case this.IC_TEXT_FIELD:\n case this.IC_CHECKBOX:\n (element as IcFocusableComponents).setFocus();\n break;\n default:\n (element as HTMLElement).focus();\n }\n }\n };\n\n private loopNextFocusIndexIfLastElement() {\n if (this.focusedElementIndex > this.interactiveElementList.length - 1)\n this.focusedElementIndex = 0;\n else if (this.focusedElementIndex < 0) {\n this.focusedElementIndex = this.interactiveElementList.length - 1;\n }\n }\n\n private setFocusIndexBasedOnShiftKey(shiftKey: boolean) {\n if (shiftKey) {\n this.focusedElementIndex -= 1;\n } else {\n this.focusedElementIndex += 1;\n }\n }\n\n private renderDialog = () => {\n const {\n hideDefaultControls,\n size,\n heading,\n label,\n destructive,\n dismissLabel,\n hideCloseButton,\n disableHeightConstraint,\n disableWidthConstraint,\n closeIconClick,\n DIALOG_CONTROLS,\n } = this;\n\n const controlsSlotUsed = isSlotUsed(this.el, DIALOG_CONTROLS);\n\n return (\n <dialog\n class={{\n dialog: true,\n [`${size}`]: true,\n \"disable-height-constraint\": !!disableHeightConstraint,\n \"disable-width-constraint\": !!disableWidthConstraint,\n }}\n aria-labelledby=\"dialog-label dialog-heading\"\n aria-describedby=\"dialog-alert dialog-content\"\n ref={(el) => (this.dialogEl = el)}\n >\n <div class=\"heading-area\">\n <div class=\"heading-content\">\n <div class=\"label\">\n <slot name=\"label\">\n <ic-typography variant=\"label\" id=\"dialog-label\">\n {label}\n </ic-typography>\n </slot>\n </div>\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\" id=\"dialog-heading\">\n {heading}\n </ic-typography>\n </slot>\n </div>\n </div>\n {!hideCloseButton && (\n <ic-button\n class=\"close-icon\"\n variant=\"icon\"\n innerHTML={closeIcon}\n aria-label={dismissLabel}\n onClick={closeIconClick}\n data-gets-focus={\n destructive || (hideDefaultControls && !controlsSlotUsed)\n ? \"\"\n : null\n }\n ></ic-button>\n )}\n </div>\n <div class=\"content-area\">\n {isSlotUsed(this.el, \"alert\") && <slot name=\"alert\" />}\n <div id=\"dialog-content\">\n <slot />\n </div>\n </div>\n {(controlsSlotUsed || !hideDefaultControls) && (\n <div\n class={{\n [DIALOG_CONTROLS]: true,\n }}\n >\n {controlsSlotUsed ? (\n <slot name={DIALOG_CONTROLS} />\n ) : (\n <Fragment>\n <ic-button\n variant=\"tertiary\"\n onClick={() => this.cancelDialog()}\n class=\"dialog-control-button\"\n data-gets-focus={null}\n >\n Cancel\n </ic-button>\n <ic-button\n variant={destructive ? \"destructive\" : \"primary\"}\n onClick={() => this.confirmDialog()}\n class=\"dialog-control-button\"\n data-gets-focus=\"\"\n >\n Confirm\n </ic-button>\n </Fragment>\n )}\n </div>\n )}\n </dialog>\n );\n };\n\n render() {\n const { dialogRendered, disableHeightConstraint, fadeIn, theme } = this;\n\n return (\n <Host\n class={{\n \"ic-dialog-hidden\": !dialogRendered,\n \"ic-dialog-fade-in\": fadeIn,\n \"disable-height-constraint\": !!disableHeightConstraint,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n {disableHeightConstraint ? (\n <div class=\"backdrop\" ref={(el) => (this.backdropEl = el)}>\n {this.renderDialog()}\n </div>\n ) : (\n this.renderDialog()\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|