@ukic/web-components 3.0.0-alpha.3 → 3.0.0-alpha.5
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-69219f14.js → helpers-529aaa3a.js} +5 -4
- package/dist/cjs/helpers-529aaa3a.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +10 -10
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +5 -5
- package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +7 -5
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +8 -5
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +2 -2
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +43 -20
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +11 -13
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +25 -26
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +16 -5
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +5 -3
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +4 -2
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +71 -7
- package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +2 -2
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +15 -7
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +14 -25
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +21 -25
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +3 -8
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +18 -17
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +7 -3
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +7 -4
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +57 -5
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -4
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +5 -3
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +8 -11
- package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +19 -15
- package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +9 -9
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +14 -5
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +8 -4
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +12 -9
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +10 -12
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +13 -8
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +5 -4
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +2 -2
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +2 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +3 -19
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +18 -15
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +3 -3
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +29 -5
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +9 -6
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +6 -4
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/ag-theme-icds.css +217 -0
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/ic-accordion/ic-accordion.css +21 -19
- package/dist/collection/components/ic-accordion/ic-accordion.js +27 -30
- package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +3 -3
- package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +2 -12
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +18 -18
- package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +3 -3
- package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
- package/dist/collection/components/ic-alert/ic-alert.css +29 -18
- package/dist/collection/components/ic-alert/ic-alert.js +48 -22
- package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
- package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +1 -1
- package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +5 -2
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +31 -4
- package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +14 -0
- package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
- package/dist/collection/components/ic-badge/ic-badge.css +3 -3
- package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +4 -7
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +44 -19
- package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.css +658 -421
- package/dist/collection/components/ic-button/ic-button.js +51 -35
- package/dist/collection/components/ic-button/ic-button.js.map +1 -1
- package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +3 -3
- package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +99 -115
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +50 -27
- package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +42 -39
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +28 -2
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +15 -2
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +39 -2
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
- package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +13 -25
- package/dist/collection/components/ic-dialog/ic-dialog.css +16 -3
- package/dist/collection/components/ic-dialog/ic-dialog.js +26 -0
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
- package/dist/collection/components/ic-divider/ic-divider.css +341 -4
- package/dist/collection/components/ic-divider/ic-divider.js +235 -8
- package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
- 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-divider/test/basic/ic-divider.spec.js +89 -4
- package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
- package/dist/collection/components/ic-footer/ic-footer.css +20 -19
- package/dist/collection/components/ic-footer-link/ic-footer-link.css +2 -2
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +11 -19
- package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +1 -1
- 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 +23 -8
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +0 -4
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +62 -6
- package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
- package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +43 -0
- package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -1
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +40 -17
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +8 -38
- package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
- package/dist/collection/components/ic-input-label/ic-input-label.css +18 -20
- package/dist/collection/components/ic-input-label/ic-input-label.js +11 -33
- 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 +7 -7
- package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
- package/dist/collection/components/ic-link/ic-link.css +0 -24
- package/dist/collection/components/ic-link/ic-link.js +3 -8
- package/dist/collection/components/ic-link/ic-link.js.map +1 -1
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +2 -2
- package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
- package/dist/collection/components/ic-menu/ic-menu.css +35 -19
- package/dist/collection/components/ic-menu/ic-menu.js +3 -2
- package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
- package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
- package/dist/collection/components/ic-menu-item/ic-menu-item.js +58 -25
- package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
- package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +2 -2
- package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +14 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +29 -1
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +1 -1
- package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +13 -8
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +29 -2
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +20 -18
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +83 -6
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
- package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +12 -0
- package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +9 -6
- package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +27 -2
- 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 +2 -1
- package/dist/collection/components/ic-page-header/ic-page-header.js +27 -1
- package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
- package/dist/collection/components/ic-pagination/ic-pagination.css +15 -0
- package/dist/collection/components/ic-pagination/ic-pagination.js +59 -37
- package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +1 -1
- package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +26 -6
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +48 -33
- package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +25 -12
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +37 -2
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/components/ic-radio-option/ic-radio-option.css +34 -25
- package/dist/collection/components/ic-radio-option/ic-radio-option.js +30 -2
- 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 +42 -5
- package/dist/collection/components/ic-search-bar/ic-search-bar.js +34 -8
- package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
- package/dist/collection/components/ic-select/ic-select.css +50 -36
- package/dist/collection/components/ic-select/ic-select.js +34 -12
- package/dist/collection/components/ic-select/ic-select.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +48 -32
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +11 -6
- package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +3 -3
- package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
- package/dist/collection/components/ic-status-tag/ic-status-tag.css +5 -5
- package/dist/collection/components/ic-status-tag/ic-status-tag.js +21 -2
- package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
- package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +15 -32
- package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
- package/dist/collection/components/ic-switch/ic-switch.css +3 -0
- package/dist/collection/components/ic-tab-context/ic-tab-context.js +2 -1
- package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
- package/dist/collection/components/ic-tab-group/ic-tab-group.css +8 -0
- package/dist/collection/components/ic-tab-group/ic-tab-group.js +1 -17
- package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
- package/dist/collection/components/ic-text-field/ic-text-field.css +61 -8
- package/dist/collection/components/ic-text-field/ic-text-field.js +40 -13
- package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +2 -2
- package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
- package/dist/collection/components/ic-toast/ic-toast.css +25 -16
- package/dist/collection/components/ic-toast/ic-toast.js +1 -2
- package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
- package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +12 -12
- package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +189 -54
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +53 -32
- package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
- 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 +77 -28
- package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +18 -0
- package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +41 -17
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +28 -2
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
- package/dist/collection/components/ic-typography/ic-typography.css +4 -6
- package/dist/collection/utils/helpers.js +4 -3
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/components/helpers.js +5 -4
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-accordion-group.js +11 -11
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-accordion.js +5 -5
- package/dist/components/ic-accordion.js.map +1 -1
- package/dist/components/ic-alert.js +8 -5
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-back-to-top.js +9 -5
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +1 -1
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +43 -19
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +1 -1
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-button2.js +12 -13
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +27 -27
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +18 -5
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +5 -2
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-classification-banner.js +1 -1
- package/dist/components/ic-classification-banner.js.map +1 -1
- package/dist/components/ic-dialog.js +4 -1
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-divider2.js +86 -9
- package/dist/components/ic-divider2.js.map +1 -1
- package/dist/components/ic-footer-link-group.js +2 -2
- package/dist/components/ic-footer-link-group.js.map +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-footer.js +1 -1
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +1 -1
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +16 -6
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +9 -22
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-label2.js +12 -17
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation2.js +8 -8
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link2.js +4 -9
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-menu-group.js +1 -1
- package/dist/components/ic-menu-group.js.map +1 -1
- package/dist/components/ic-menu-item2.js +20 -19
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +4 -3
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +7 -2
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +7 -3
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +60 -6
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +6 -4
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +5 -2
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +10 -12
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination.js +20 -15
- package/dist/components/ic-pagination.js.map +1 -1
- package/dist/components/ic-popover-menu.js +8 -8
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +16 -5
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +8 -3
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +13 -9
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-select.js +11 -12
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-side-navigation.js +13 -8
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-status-tag.js +5 -3
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-switch.js +1 -1
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +2 -1
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +2 -18
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-text-field2.js +19 -15
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-toast.js +3 -3
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +36 -7
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +11 -7
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-top-navigation.js +7 -4
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-typography2.js +1 -1
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/ag-theme-icds.css +217 -0
- package/dist/core/core.css +934 -66
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-03dc6b93.entry.js +2 -0
- package/dist/core/p-03dc6b93.entry.js.map +1 -0
- package/dist/core/p-04339c98.entry.js +2 -0
- package/dist/core/p-04339c98.entry.js.map +1 -0
- package/dist/core/p-0aec7fab.entry.js +2 -0
- package/dist/core/p-0aec7fab.entry.js.map +1 -0
- package/dist/core/{p-37dea10d.entry.js → p-0cef50b7.entry.js} +2 -2
- package/dist/core/{p-4a3b1f06.entry.js → p-12f72d83.entry.js} +2 -2
- package/dist/core/p-12f72d83.entry.js.map +1 -0
- package/dist/core/{p-f5b2b26d.entry.js → p-15fd6539.entry.js} +2 -2
- package/dist/core/p-175baf98.entry.js +2 -0
- package/dist/core/p-175baf98.entry.js.map +1 -0
- package/dist/core/{p-726673ee.entry.js → p-2223c7ee.entry.js} +2 -2
- package/dist/core/p-2223c7ee.entry.js.map +1 -0
- package/dist/core/p-274b1ed7.entry.js +2 -0
- package/dist/core/p-274b1ed7.entry.js.map +1 -0
- package/dist/core/p-2a300ec7.entry.js +2 -0
- package/dist/core/p-2a300ec7.entry.js.map +1 -0
- package/dist/core/p-303307bb.entry.js +2 -0
- package/dist/core/p-303307bb.entry.js.map +1 -0
- package/dist/core/p-3317f083.entry.js +2 -0
- package/dist/core/p-3317f083.entry.js.map +1 -0
- package/dist/core/p-35bd9d76.entry.js +2 -0
- package/dist/core/p-35bd9d76.entry.js.map +1 -0
- package/dist/core/p-36f4e0bd.entry.js +2 -0
- package/dist/core/p-36f4e0bd.entry.js.map +1 -0
- package/dist/core/p-3a4000d8.entry.js +2 -0
- package/dist/core/p-3a4000d8.entry.js.map +1 -0
- package/dist/core/{p-5cd016e1.entry.js → p-48463a79.entry.js} +2 -2
- package/dist/core/p-48463a79.entry.js.map +1 -0
- package/dist/core/{p-dd36bf1b.entry.js → p-4fea4610.entry.js} +2 -2
- package/dist/core/p-4fea4610.entry.js.map +1 -0
- package/dist/core/p-60d458e5.entry.js +2 -0
- package/dist/core/p-60d458e5.entry.js.map +1 -0
- package/dist/core/{p-690c5e80.entry.js → p-685d6aa9.entry.js} +2 -2
- package/dist/core/p-6bb3ef22.entry.js +2 -0
- package/dist/core/p-6bb3ef22.entry.js.map +1 -0
- package/dist/core/p-6cb1f1da.entry.js +2 -0
- package/dist/core/p-6cb1f1da.entry.js.map +1 -0
- package/dist/core/{p-c9cf932c.entry.js → p-78f46cf8.entry.js} +2 -2
- package/dist/core/p-78f46cf8.entry.js.map +1 -0
- package/dist/core/p-79c132e3.entry.js +2 -0
- package/dist/core/p-79c132e3.entry.js.map +1 -0
- package/dist/core/p-7cba80ac.entry.js +2 -0
- package/dist/core/p-7cba80ac.entry.js.map +1 -0
- package/dist/core/p-81f80487.entry.js +2 -0
- package/dist/core/p-81f80487.entry.js.map +1 -0
- package/dist/core/p-85be0268.entry.js +2 -0
- package/dist/core/p-85be0268.entry.js.map +1 -0
- package/dist/core/p-85d33e38.entry.js +2 -0
- package/dist/core/p-85d33e38.entry.js.map +1 -0
- package/dist/core/{p-b78f8b8c.entry.js → p-88810080.entry.js} +2 -2
- package/dist/core/p-88810080.entry.js.map +1 -0
- package/dist/core/{p-b01ffa55.entry.js → p-96b4ca6e.entry.js} +2 -2
- package/dist/core/p-96b4ca6e.entry.js.map +1 -0
- package/dist/core/p-97e8246c.entry.js +2 -0
- package/dist/core/p-97e8246c.entry.js.map +1 -0
- package/dist/core/p-98816f52.entry.js +2 -0
- package/dist/core/p-98816f52.entry.js.map +1 -0
- package/dist/core/p-a01841e2.entry.js +2 -0
- package/dist/core/p-a01841e2.entry.js.map +1 -0
- package/dist/core/p-a6be333f.entry.js +2 -0
- package/dist/core/p-a6be333f.entry.js.map +1 -0
- package/dist/core/p-a91b0212.entry.js +2 -0
- package/dist/core/p-a91b0212.entry.js.map +1 -0
- package/dist/core/p-ae42affc.entry.js +2 -0
- package/dist/core/p-ae42affc.entry.js.map +1 -0
- package/dist/core/p-b06939fa.entry.js +2 -0
- package/dist/core/p-b06939fa.entry.js.map +1 -0
- package/dist/core/{p-95f603dd.entry.js → p-ba37e169.entry.js} +2 -2
- package/dist/core/p-ba55afea.entry.js +2 -0
- package/dist/core/p-ba55afea.entry.js.map +1 -0
- package/dist/core/p-bbd2febe.entry.js +2 -0
- package/dist/core/p-bbd2febe.entry.js.map +1 -0
- package/dist/core/p-c0d5043e.entry.js +2 -0
- package/dist/core/p-c0d5043e.entry.js.map +1 -0
- package/dist/core/p-c43d676b.entry.js +2 -0
- package/dist/core/p-c43d676b.entry.js.map +1 -0
- package/dist/core/p-c4f32f77.entry.js +2 -0
- package/dist/core/p-c4f32f77.entry.js.map +1 -0
- package/dist/core/p-c563d479.entry.js +2 -0
- package/dist/core/p-c563d479.entry.js.map +1 -0
- package/dist/core/{p-922984cb.entry.js → p-c5d3c71e.entry.js} +2 -2
- package/dist/core/p-c7e01fcd.entry.js +2 -0
- package/dist/core/p-c7e01fcd.entry.js.map +1 -0
- package/dist/core/p-c82240b7.entry.js +2 -0
- package/dist/core/p-c82240b7.entry.js.map +1 -0
- package/dist/core/{p-7b35de65.entry.js → p-cdbc3414.entry.js} +2 -2
- package/dist/core/p-d3263ed9.entry.js +2 -0
- package/dist/core/p-d3263ed9.entry.js.map +1 -0
- package/dist/core/p-d43e0f4b.entry.js +2 -0
- package/dist/core/p-d43e0f4b.entry.js.map +1 -0
- package/dist/core/p-d987bdc0.entry.js +2 -0
- package/dist/core/p-d987bdc0.entry.js.map +1 -0
- package/dist/core/{p-50ead56c.entry.js → p-df957570.entry.js} +2 -2
- package/dist/core/p-df957570.entry.js.map +1 -0
- package/dist/core/p-e107f362.entry.js +2 -0
- package/dist/core/p-e107f362.entry.js.map +1 -0
- package/dist/core/{p-ee6dd94c.entry.js → p-ec097c1f.entry.js} +2 -2
- package/dist/core/{p-14dfd8db.entry.js → p-f069f50e.entry.js} +2 -2
- package/dist/core/p-f069f50e.entry.js.map +1 -0
- package/dist/core/{p-acbd15ab.entry.js → p-f580f0ce.entry.js} +2 -2
- package/dist/core/{p-b7eb8ef9.js → p-f99576e0.js} +2 -2
- package/dist/core/p-f99576e0.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-e8797e8d.js → helpers-7bf8c67f.js} +6 -5
- package/dist/esm/helpers-7bf8c67f.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +10 -10
- package/dist/esm/ic-accordion-group.entry.js.map +1 -1
- package/dist/esm/ic-accordion.entry.js +5 -5
- package/dist/esm/ic-accordion.entry.js.map +1 -1
- package/dist/esm/ic-alert.entry.js +7 -5
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +9 -6
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +2 -2
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +43 -20
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +2 -2
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +11 -13
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +26 -27
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +16 -5
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +5 -3
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +1 -1
- package/dist/esm/ic-classification-banner.entry.js +1 -1
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +1 -1
- package/dist/esm/ic-dialog.entry.js +4 -2
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +72 -8
- package/dist/esm/ic-divider.entry.js.map +1 -1
- package/dist/esm/ic-empty-state.entry.js +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +3 -3
- package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
- package/dist/esm/ic-footer-link.entry.js +2 -2
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +2 -2
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +2 -2
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +15 -7
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +14 -25
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-input-label_2.entry.js +21 -25
- package/dist/esm/ic-input-label_2.entry.js.map +1 -1
- package/dist/esm/ic-link.entry.js +3 -8
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +2 -2
- package/dist/esm/ic-menu-group.entry.js.map +1 -1
- package/dist/esm/ic-menu-item.entry.js +18 -17
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +7 -3
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +7 -4
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +58 -6
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +5 -4
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +5 -3
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination-item.entry.js +8 -11
- package/dist/esm/ic-pagination-item.entry.js.map +1 -1
- package/dist/esm/ic-pagination.entry.js +19 -15
- package/dist/esm/ic-pagination.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +9 -9
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +14 -5
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +8 -4
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +12 -9
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-select.entry.js +10 -12
- package/dist/esm/ic-select.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +13 -8
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +5 -4
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +1 -1
- package/dist/esm/ic-stepper.entry.js +1 -1
- package/dist/esm/ic-switch.entry.js +2 -2
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +2 -1
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +3 -19
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +1 -1
- package/dist/esm/ic-tab.entry.js +1 -1
- package/dist/esm/ic-text-field.entry.js +18 -15
- package/dist/esm/ic-text-field.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +1 -1
- package/dist/esm/ic-toast.entry.js +3 -3
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +29 -5
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +9 -6
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +6 -4
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-accordion/ic-accordion.d.ts +5 -5
- package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +4 -4
- package/dist/types/components/ic-alert/ic-alert.d.ts +9 -5
- package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +5 -0
- package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +1 -0
- package/dist/types/components/ic-button/ic-button.d.ts +9 -5
- package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +8 -4
- package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +6 -2
- package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +7 -1
- package/dist/types/components/ic-dialog/ic-dialog.d.ts +5 -0
- package/dist/types/components/ic-divider/ic-divider.d.ts +31 -1
- package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
- package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +2 -1
- package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +7 -1
- package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +0 -4
- package/dist/types/components/ic-input-label/ic-input-label.d.ts +0 -4
- package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +11 -5
- package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +6 -2
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +6 -2
- package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +13 -2
- package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -0
- package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
- package/dist/types/components/ic-pagination/ic-pagination.d.ts +9 -5
- package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +9 -5
- package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +3 -6
- package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +6 -1
- package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +5 -1
- package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +5 -1
- package/dist/types/components/ic-select/ic-select.d.ts +6 -2
- package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +4 -0
- package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +0 -4
- package/dist/types/components/ic-text-field/ic-text-field.d.ts +5 -1
- package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +9 -5
- package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +12 -5
- package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +5 -1
- package/dist/types/components.d.ts +328 -79
- package/dist/types/utils/helpers.d.ts +2 -2
- package/hydrate/index.js +550 -330
- package/package.json +2 -2
- package/vscode-data.json +482 -118
- package/dist/cjs/helpers-69219f14.js.map +0 -1
- package/dist/core/p-0395442c.entry.js +0 -2
- package/dist/core/p-0395442c.entry.js.map +0 -1
- package/dist/core/p-0d233b0c.entry.js +0 -2
- package/dist/core/p-0d233b0c.entry.js.map +0 -1
- package/dist/core/p-134def81.entry.js +0 -2
- package/dist/core/p-134def81.entry.js.map +0 -1
- package/dist/core/p-14dfd8db.entry.js.map +0 -1
- package/dist/core/p-1b116dd1.entry.js +0 -2
- package/dist/core/p-1b116dd1.entry.js.map +0 -1
- package/dist/core/p-21cc87c0.entry.js +0 -2
- package/dist/core/p-21cc87c0.entry.js.map +0 -1
- package/dist/core/p-2eae9b27.entry.js +0 -2
- package/dist/core/p-2eae9b27.entry.js.map +0 -1
- package/dist/core/p-31fc8756.entry.js +0 -2
- package/dist/core/p-31fc8756.entry.js.map +0 -1
- package/dist/core/p-3618ac34.entry.js +0 -2
- package/dist/core/p-3618ac34.entry.js.map +0 -1
- package/dist/core/p-384d454d.entry.js +0 -2
- package/dist/core/p-384d454d.entry.js.map +0 -1
- package/dist/core/p-3d417eff.entry.js +0 -2
- package/dist/core/p-3d417eff.entry.js.map +0 -1
- package/dist/core/p-3d9726a3.entry.js +0 -2
- package/dist/core/p-3d9726a3.entry.js.map +0 -1
- package/dist/core/p-43256b7c.entry.js +0 -2
- package/dist/core/p-43256b7c.entry.js.map +0 -1
- package/dist/core/p-4a3b1f06.entry.js.map +0 -1
- package/dist/core/p-50ead56c.entry.js.map +0 -1
- package/dist/core/p-5cd016e1.entry.js.map +0 -1
- package/dist/core/p-5ef8e106.entry.js +0 -2
- package/dist/core/p-5ef8e106.entry.js.map +0 -1
- package/dist/core/p-6d3e4bb1.entry.js +0 -2
- package/dist/core/p-6d3e4bb1.entry.js.map +0 -1
- package/dist/core/p-726673ee.entry.js.map +0 -1
- package/dist/core/p-72d30c8a.entry.js +0 -2
- package/dist/core/p-72d30c8a.entry.js.map +0 -1
- package/dist/core/p-76263187.entry.js +0 -2
- package/dist/core/p-76263187.entry.js.map +0 -1
- package/dist/core/p-7827b5cb.entry.js +0 -2
- package/dist/core/p-7827b5cb.entry.js.map +0 -1
- package/dist/core/p-79d0be03.entry.js +0 -2
- package/dist/core/p-79d0be03.entry.js.map +0 -1
- package/dist/core/p-7fbf2d3e.entry.js +0 -2
- package/dist/core/p-7fbf2d3e.entry.js.map +0 -1
- package/dist/core/p-91cf9b2b.entry.js +0 -2
- package/dist/core/p-91cf9b2b.entry.js.map +0 -1
- package/dist/core/p-97fb2bdf.entry.js +0 -2
- package/dist/core/p-97fb2bdf.entry.js.map +0 -1
- package/dist/core/p-ac4b7329.entry.js +0 -2
- package/dist/core/p-ac4b7329.entry.js.map +0 -1
- package/dist/core/p-b01ffa55.entry.js.map +0 -1
- package/dist/core/p-b17c94b7.entry.js +0 -2
- package/dist/core/p-b17c94b7.entry.js.map +0 -1
- package/dist/core/p-b78f8b8c.entry.js.map +0 -1
- package/dist/core/p-b7eb8ef9.js.map +0 -1
- package/dist/core/p-b95a72a3.entry.js +0 -2
- package/dist/core/p-b95a72a3.entry.js.map +0 -1
- package/dist/core/p-b997064c.entry.js +0 -2
- package/dist/core/p-b997064c.entry.js.map +0 -1
- package/dist/core/p-ba6ecc15.entry.js +0 -2
- package/dist/core/p-ba6ecc15.entry.js.map +0 -1
- package/dist/core/p-c0fc3d02.entry.js +0 -2
- package/dist/core/p-c0fc3d02.entry.js.map +0 -1
- package/dist/core/p-c396bd4d.entry.js +0 -2
- package/dist/core/p-c396bd4d.entry.js.map +0 -1
- package/dist/core/p-c9cf932c.entry.js.map +0 -1
- package/dist/core/p-cf7db84a.entry.js +0 -2
- package/dist/core/p-cf7db84a.entry.js.map +0 -1
- package/dist/core/p-dd36bf1b.entry.js.map +0 -1
- package/dist/core/p-e488de54.entry.js +0 -2
- package/dist/core/p-e488de54.entry.js.map +0 -1
- package/dist/core/p-e4d1839e.entry.js +0 -2
- package/dist/core/p-e4d1839e.entry.js.map +0 -1
- package/dist/core/p-eb3b4935.entry.js +0 -2
- package/dist/core/p-eb3b4935.entry.js.map +0 -1
- package/dist/core/p-ebafab37.entry.js +0 -2
- package/dist/core/p-ebafab37.entry.js.map +0 -1
- package/dist/core/p-f0fc1bf0.entry.js +0 -2
- package/dist/core/p-f0fc1bf0.entry.js.map +0 -1
- package/dist/core/p-f24984c5.entry.js +0 -2
- package/dist/core/p-f24984c5.entry.js.map +0 -1
- package/dist/core/p-f60dbd0e.entry.js +0 -2
- package/dist/core/p-f60dbd0e.entry.js.map +0 -1
- package/dist/core/p-f71c00ce.entry.js +0 -2
- package/dist/core/p-f71c00ce.entry.js.map +0 -1
- package/dist/core/p-ff4298b1.entry.js +0 -2
- package/dist/core/p-ff4298b1.entry.js.map +0 -1
- package/dist/esm/helpers-e8797e8d.js.map +0 -1
- /package/dist/core/{p-37dea10d.entry.js.map → p-0cef50b7.entry.js.map} +0 -0
- /package/dist/core/{p-f5b2b26d.entry.js.map → p-15fd6539.entry.js.map} +0 -0
- /package/dist/core/{p-690c5e80.entry.js.map → p-685d6aa9.entry.js.map} +0 -0
- /package/dist/core/{p-95f603dd.entry.js.map → p-ba37e169.entry.js.map} +0 -0
- /package/dist/core/{p-922984cb.entry.js.map → p-c5d3c71e.entry.js.map} +0 -0
- /package/dist/core/{p-7b35de65.entry.js.map → p-cdbc3414.entry.js.map} +0 -0
- /package/dist/core/{p-ee6dd94c.entry.js.map → p-ec097c1f.entry.js.map} +0 -0
- /package/dist/core/{p-acbd15ab.entry.js.map → p-f580f0ce.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ic-footer-link-group.js","sourceRoot":"","sources":["../../../src/components/ic-footer-link-group/ic-footer-link-group.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,OAAO,EACP,MAAM,EACN,IAAI,EACJ,CAAC,EACD,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"ic-footer-link-group.js","sourceRoot":"","sources":["../../../src/components/ic-footer-link-group/ic-footer-link-group.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,OAAO,EACP,MAAM,EACN,IAAI,EACJ,CAAC,EACD,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAc7B,MAAM,OAAO,eAAe;;QAgDlB,kBAAa,GAAG,CAAC,KAAoB,EAAQ,EAAE;YACrD,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC/C,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;QACH,CAAC,CAAC;QAEM,mBAAc,GAAG,GAAS,EAAE;YAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC;wBArD2B,KAAK;0BACJ,YAAY,CAAC,EAAE;iCAE3C,uBAAuB,EAAE;qBACD,KAAK;;;IAO/B,iBAAiB;QACf,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,gBAAgB;QACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,mBAAmB,CACpB,CAAC;IACJ,CAAC;IAGD,mBAAmB;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAGD,wBAAwB,CAAC,EAAe;QACtC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC;IACtC,CAAC;IAEO,OAAO,CAAC,CAAc;QAC5B,IAAI,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACpD,OAAO,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAYD,MAAM;QACJ,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAE9B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CACd,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,CAAC,4CAA4C,CAAC,EAAE,IAAI;gBACpD,CAAC,qBAAqB,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,IAAI;aACtD,EACD,IAAI,EAAC,UAAU;YAEf,WAAK,KAAK,EAAC,mBAAmB;gBAC5B,qBAAe,OAAO,EAAC,gBAAgB,IAAE,KAAK,CAAiB,CAC3D;YACN,WAAK,KAAK,EAAC,yBAAyB,EAAC,IAAI,EAAC,MAAM;gBAC9C,eAAQ,CACJ,CACD,CACR,CAAC,CAAC,CAAC,CACF,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,CAAC,2CAA2C,CAAC,EAAE,IAAI;gBACnD,CAAC,qBAAqB,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,IAAI;aACtD,EACD,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,SAAS,EAAE,IAAI,CAAC,aAAa,mBACd,IAAI,CAAC,QAAQ,EAC5B,IAAI,EAAC,UAAU;YAEf,4BAAsB,QAAQ,EAAC,GAAG,EAAC,UAAU,EAAE,IAAI;gBACjD,WAAK,KAAK,EAAC,0BAA0B;oBACnC,WAAK,KAAK,EAAC,mBAAmB;wBAC5B,qBAAe,OAAO,EAAC,OAAO,IAAE,KAAK,CAAiB,CAClD;oBACL,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CACf,WACE,KAAK,EAAC,0BAA0B,EAChC,KAAK,EAAC,4BAA4B,iBACtB,MAAM,EAClB,IAAI,EAAC,KAAK,EACV,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,EACZ,mBAAmB,EAAC,eAAe,EACnC,OAAO,EAAC,eAAe;wBAEvB,YACE,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,0IAA0I,GAC5I,CACE,CACP,CAAC,CAAC,CAAC,CACF,WACE,KAAK,EAAC,0BAA0B,EAChC,KAAK,EAAC,4BAA4B,iBACtB,MAAM,EAClB,IAAI,EAAC,KAAK,EACV,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,EACZ,mBAAmB,EAAC,eAAe,EACnC,OAAO,EAAC,eAAe;wBAEvB,SAAG,SAAS,EAAC,+BAA+B;4BAC1C,YACE,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,0IAA0I,GAC5I,CACA,CACA,CACP,CACG;gBACL,IAAI,CAAC,QAAQ,IAAI,CAChB,WAAK,KAAK,EAAC,yBAAyB,EAAC,IAAI,EAAC,MAAM;oBAC9C,eAAQ,CACJ,CACP,CACoB,CAClB,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n Component,\n Host,\n Element,\n Listen,\n Prop,\n h,\n State,\n} from \"@stencil/core\";\nimport {\n DEVICE_SIZES,\n getThemeForegroundColor,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundNoDefault,\n} from \"../../utils/types\";\n\n@Component({\n tag: \"ic-footer-link-group\",\n styleUrl: \"ic-footer-link-group.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class FooterLinkGroup {\n @Element() el: HTMLIcFooterLinkGroupElement;\n\n @State() expanded: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() dropdownIconStyle: IcThemeForegroundNoDefault | IcThemeForeground =\n getThemeForegroundColor();\n @State() small: boolean = false;\n\n /**\n * The title of the link group to be displayed.\n */\n @Prop() label!: string;\n\n componentWillLoad(): void {\n this.small = this.isSmall(this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Footer Link Group\"\n );\n }\n\n @Listen(\"footerResized\", { target: \"document\" })\n footerResizeHandler(): void {\n this.small = this.isSmall(this.el);\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n footerThemeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.dropdownIconStyle = theme.mode;\n }\n\n private isSmall(e: HTMLElement): boolean {\n if (e.parentElement !== null) {\n if (e.parentElement.classList.contains(\"ic-footer\")) {\n return e.parentElement.classList.contains(\"ic-footer-small\");\n } else {\n return this.isSmall(e.parentElement);\n }\n } else {\n return false;\n }\n }\n\n private handleKeydown = (event: KeyboardEvent): void => {\n if (event.key === \" \" || event.key === \"Enter\") {\n this.toggleExpanded();\n }\n };\n\n private toggleExpanded = (): void => {\n this.expanded = !this.expanded;\n };\n\n render() {\n const { small, label } = this;\n\n return !small ? (\n <Host\n class={{\n [\"footer-link-group footer-link-group-sparse\"]: true,\n [`footer-link-group-${this.dropdownIconStyle}`]: true,\n }}\n role=\"listitem\"\n >\n <div class=\"footer-link-label\">\n <ic-typography variant=\"subtitle-small\">{label}</ic-typography>\n </div>\n <div class=\"footer-link-group-links\" role=\"list\">\n <slot />\n </div>\n </Host>\n ) : (\n <Host\n class={{\n [\"footer-link-group footer-link-group-small\"]: true,\n [`footer-link-group-${this.dropdownIconStyle}`]: true,\n }}\n onClick={this.toggleExpanded}\n onKeydown={this.handleKeydown}\n aria-expanded={this.expanded}\n role=\"listitem\"\n >\n <ic-section-container tabindex=\"0\" fullHeight={true}>\n <div class=\"footer-link-group-header\">\n <div class=\"footer-link-label\">\n <ic-typography variant=\"label\">{label}</ic-typography>\n </div>\n {this.expanded ? (\n <svg\n class=\"footer-link-group-toggle\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n role=\"img\"\n width=\"1em\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n viewBox=\"0 0 1200 1200\"\n >\n <path\n fill=\"currentColor\"\n d=\"M600.002 210.605L421.285 389.336L0 810.559l178.721 178.836l421.281-421.341l421.281 421.341L1200 810.559L778.733 389.336L600.002 210.605z\"\n />\n </svg>\n ) : (\n <svg\n class=\"footer-link-group-toggle\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n role=\"img\"\n width=\"1em\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n viewBox=\"0 0 1200 1200\"\n >\n <g transform=\"translate(0 1200) scale(1 -1)\">\n <path\n fill=\"currentColor\"\n d=\"M600.002 210.605L421.285 389.336L0 810.559l178.721 178.836l421.281-421.341l421.281 421.341L1200 810.559L778.733 389.336L600.002 210.605z\"\n />\n </g>\n </svg>\n )}\n </div>\n {this.expanded && (\n <div class=\"footer-link-group-links\" role=\"list\">\n <slot />\n </div>\n )}\n </ic-section-container>\n </Host>\n );\n }\n}\n"]}
|
@@ -445,12 +445,34 @@ video {
|
|
445
445
|
display: block;
|
446
446
|
background-color: var(--ic-theme-tertiary);
|
447
447
|
|
448
|
-
--ic-typography-color: var(--ic-theme-text);
|
449
448
|
--hero-heading-bottom-margin: var(--ic-space-md);
|
449
|
+
--hero-keyline: var(--ic-hero-keyline);
|
450
450
|
}
|
451
451
|
|
452
452
|
:host(.ic-hero-dark) {
|
453
453
|
background-color: var(--ic-theme-secondary);
|
454
|
+
|
455
|
+
--ic-hero-heading: var(--ic-color-text-primary-light);
|
456
|
+
--ic-hero-body: var(--ic-color-text-primary-light);
|
457
|
+
--ic-hero-secondary-heading: var(--ic-color-text-primary-light);
|
458
|
+
--hero-keyline: var(--ic-color-text-primary);
|
459
|
+
}
|
460
|
+
|
461
|
+
.heading {
|
462
|
+
--ic-typography-color: var(--ic-hero-heading);
|
463
|
+
}
|
464
|
+
|
465
|
+
.subheading {
|
466
|
+
--ic-typography-color: var(--ic-hero-body);
|
467
|
+
}
|
468
|
+
|
469
|
+
.secondary-container {
|
470
|
+
--ic-typography-color: var(--ic-hero-secondary-heading);
|
471
|
+
|
472
|
+
display: flex;
|
473
|
+
flex-direction: column;
|
474
|
+
justify-content: center;
|
475
|
+
border-left: var(--ic-space-xxxs) solid var(--hero-keyline);
|
454
476
|
}
|
455
477
|
|
456
478
|
:host(.has-background-image) {
|
@@ -499,13 +521,6 @@ ic-typography.heading-bottom-spacing {
|
|
499
521
|
flex-wrap: wrap;
|
500
522
|
}
|
501
523
|
|
502
|
-
.secondary-container {
|
503
|
-
display: flex;
|
504
|
-
flex-direction: column;
|
505
|
-
justify-content: center;
|
506
|
-
border-left: var(--ic-space-xxxs) solid var(--ic-theme-text);
|
507
|
-
}
|
508
|
-
|
509
524
|
.secondary-subheading {
|
510
525
|
margin-top: var(--ic-space-xxs);
|
511
526
|
}
|
@@ -525,10 +525,6 @@ video {
|
|
525
525
|
background-color: transparent;
|
526
526
|
}
|
527
527
|
|
528
|
-
.disabled ic-button > svg {
|
529
|
-
color: var(--ic-color-keyline-darken);
|
530
|
-
}
|
531
|
-
|
532
528
|
:host(.ic-horizontal-scroll-dark) .disabled ic-button > svg,
|
533
529
|
:host(.ic-horizontal-scroll-light) .disabled ic-button > svg {
|
534
530
|
color: var(--splitter-color) !important;
|
@@ -3,7 +3,7 @@ import LeftArrow from "./assets/left-arrow.svg";
|
|
3
3
|
import RightArrow from "./assets/right-arrow.svg";
|
4
4
|
import { getSlotElements } from "../../utils/helpers";
|
5
5
|
import { checkResizeObserver, elementOverflowsX } from "../../utils/helpers";
|
6
|
-
import { IcThemeForegroundEnum } from "../../utils/types";
|
6
|
+
import { IcThemeForegroundEnum, } from "../../utils/types";
|
7
7
|
const SCROLL_DELAY_MS = 200;
|
8
8
|
export class HorizontalScroll {
|
9
9
|
constructor() {
|
@@ -80,6 +80,8 @@ export class HorizontalScroll {
|
|
80
80
|
this.itemOverflow = false;
|
81
81
|
this.lastItemVisible = false;
|
82
82
|
this.appearance = "default";
|
83
|
+
this.monochrome = false;
|
84
|
+
this.theme = "inherit";
|
83
85
|
this.focusTrigger = "focus";
|
84
86
|
}
|
85
87
|
componentWillLoad() {
|
@@ -108,6 +110,7 @@ export class HorizontalScroll {
|
|
108
110
|
});
|
109
111
|
}
|
110
112
|
disconnectedCallback() {
|
113
|
+
var _a, _b;
|
111
114
|
if (this.resizeObserver !== undefined) {
|
112
115
|
this.resizeObserver.disconnect();
|
113
116
|
}
|
@@ -115,12 +118,12 @@ export class HorizontalScroll {
|
|
115
118
|
["mouseup", "mouseleave"].forEach((event) => {
|
116
119
|
scrollArrows.forEach((arrow) => arrow.removeEventListener(event, this.arrowMouseUpHandler));
|
117
120
|
});
|
118
|
-
this.items.forEach((item) => {
|
121
|
+
(_a = this.items) === null || _a === void 0 ? void 0 : _a.forEach((item) => {
|
119
122
|
if (item.removeEventListener) {
|
120
123
|
item.removeEventListener(this.focusTrigger, this.focusHandler);
|
121
124
|
}
|
122
125
|
});
|
123
|
-
this.itemsContainerEl.removeEventListener("scroll", this.scrollHandler);
|
126
|
+
(_b = this.itemsContainerEl) === null || _b === void 0 ? void 0 : _b.removeEventListener("scroll", this.scrollHandler);
|
124
127
|
}
|
125
128
|
/**
|
126
129
|
* @internal if side scrolling enabled, scrolls the specified item into view.
|
@@ -140,20 +143,25 @@ export class HorizontalScroll {
|
|
140
143
|
}
|
141
144
|
}
|
142
145
|
render() {
|
143
|
-
const {
|
146
|
+
const { firstItemVisible, lastItemVisible, itemOverflow } = this;
|
144
147
|
return (h(Host, { class: {
|
145
148
|
["ic-horizontal-scroll-visible"]: itemOverflow,
|
146
149
|
["ic-horizontal-scroll-dark"]: this.appearance === IcThemeForegroundEnum.Dark,
|
147
150
|
["ic-horizontal-scroll-light"]: this.appearance === IcThemeForegroundEnum.Light,
|
151
|
+
[`ic-theme-${this.theme}`]: this.theme !== "inherit",
|
148
152
|
} }, h("div", { "aria-hidden": "true", class: {
|
149
153
|
["scroll-container-left"]: true,
|
150
154
|
["hidden"]: !itemOverflow,
|
151
155
|
["disabled"]: firstItemVisible,
|
152
|
-
}, role: "tab" }, h("ic-button", { class: "scroll-arrow", variant: "icon", "aria-label": "Scroll left",
|
156
|
+
}, role: "tab" }, h("ic-button", { class: "scroll-arrow", variant: "icon-tertiary", "aria-label": "Scroll left", theme: this.theme === "light" || this.theme === "inherit"
|
157
|
+
? "dark"
|
158
|
+
: "light", monochrome: this.monochrome, innerHTML: LeftArrow, disabled: firstItemVisible, tabindex: "-1", onClick: this.scrollLeft, onMouseDown: this.leftArrowMouseDownHandler }), h("span", { class: "scroll-splitter-left" })), h("slot", null), h("div", { "aria-hidden": "true", class: {
|
153
159
|
["scroll-container-right"]: true,
|
154
160
|
["hidden"]: !itemOverflow,
|
155
161
|
["disabled"]: lastItemVisible,
|
156
|
-
}, role: "tab" }, h("span", { class: "scroll-splitter-right" }), h("ic-button", { class: "scroll-arrow", variant: "icon", "aria-label": "Scroll right",
|
162
|
+
}, role: "tab" }, h("span", { class: "scroll-splitter-right" }), h("ic-button", { class: "scroll-arrow", variant: "icon-tertiary", "aria-label": "Scroll right", theme: this.theme === "light" || this.theme === "inherit"
|
163
|
+
? "dark"
|
164
|
+
: "light", monochrome: this.monochrome, innerHTML: RightArrow, disabled: lastItemVisible, tabindex: "-1", onClick: this.scrollRight, onMouseDown: this.rightArrowMouseDownHandler }))));
|
157
165
|
}
|
158
166
|
static get is() { return "ic-horizontal-scroll"; }
|
159
167
|
static get encapsulation() { return "shadow"; }
|
@@ -193,6 +201,54 @@ export class HorizontalScroll {
|
|
193
201
|
"reflect": false,
|
194
202
|
"defaultValue": "\"default\""
|
195
203
|
},
|
204
|
+
"monochrome": {
|
205
|
+
"type": "boolean",
|
206
|
+
"mutable": false,
|
207
|
+
"complexType": {
|
208
|
+
"original": "boolean",
|
209
|
+
"resolved": "boolean",
|
210
|
+
"references": {}
|
211
|
+
},
|
212
|
+
"required": false,
|
213
|
+
"optional": true,
|
214
|
+
"docs": {
|
215
|
+
"tags": [{
|
216
|
+
"name": "internal",
|
217
|
+
"text": "Determines whether black variant of the tabs should be displayed."
|
218
|
+
}],
|
219
|
+
"text": ""
|
220
|
+
},
|
221
|
+
"attribute": "monochrome",
|
222
|
+
"reflect": false,
|
223
|
+
"defaultValue": "false"
|
224
|
+
},
|
225
|
+
"theme": {
|
226
|
+
"type": "string",
|
227
|
+
"mutable": false,
|
228
|
+
"complexType": {
|
229
|
+
"original": "IcThemeMode",
|
230
|
+
"resolved": "\"dark\" | \"inherit\" | \"light\"",
|
231
|
+
"references": {
|
232
|
+
"IcThemeMode": {
|
233
|
+
"location": "import",
|
234
|
+
"path": "../../utils/types",
|
235
|
+
"id": "src/utils/types.ts::IcThemeMode"
|
236
|
+
}
|
237
|
+
}
|
238
|
+
},
|
239
|
+
"required": false,
|
240
|
+
"optional": true,
|
241
|
+
"docs": {
|
242
|
+
"tags": [{
|
243
|
+
"name": "internal",
|
244
|
+
"text": "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."
|
245
|
+
}],
|
246
|
+
"text": ""
|
247
|
+
},
|
248
|
+
"attribute": "theme",
|
249
|
+
"reflect": false,
|
250
|
+
"defaultValue": "\"inherit\""
|
251
|
+
},
|
196
252
|
"focusTrigger": {
|
197
253
|
"type": "string",
|
198
254
|
"mutable": false,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ic-horizontal-scroll.js","sourceRoot":"","sources":["../../../src/components/ic-horizontal-scroll/ic-horizontal-scroll.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n h,\n Host,\n State,\n Method,\n Prop,\n} from \"@stencil/core\";\n\nimport LeftArrow from \"./assets/left-arrow.svg\";\nimport RightArrow from \"./assets/right-arrow.svg\";\nimport { getSlotElements } from \"../../utils/helpers\";\n\nimport { checkResizeObserver, elementOverflowsX } from \"../../utils/helpers\";\nimport { IcThemeForeground, IcThemeForegroundEnum } from \"../../utils/types\";\n\nconst SCROLL_DELAY_MS = 200;\n\n@Component({\n tag: \"ic-horizontal-scroll\",\n styleUrl: \"./ic-horizontal-scroll.css\",\n shadow: true,\n})\nexport class HorizontalScroll {\n private buttonStateSet: boolean = false;\n private isScrolling: number;\n private itemOffsets: number[];\n private items: HTMLElement[];\n private itemsContainerEl: HTMLElement;\n private resizeObserver: ResizeObserver;\n private scrollDelay: number;\n\n @Element() el: HTMLIcHorizontalScrollElement;\n\n @State() firstItemVisible: boolean = true;\n @State() itemOverflow: boolean = false;\n @State() lastItemVisible: boolean = false;\n\n /**\n * The appearance of the horizontal scroll, e.g. dark, light or the default.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\n\n /**\n * @internal The name of the event that triggers focus handler logic.\n */\n @Prop() focusTrigger?: string = \"focus\";\n\n componentWillLoad(): void {\n this.itemsContainerEl = this.el.children[0] as HTMLElement;\n this.itemsContainerEl.addEventListener(\"scroll\", this.scrollHandler);\n this.items = getSlotElements(this.itemsContainerEl) as HTMLElement[];\n this.items.forEach((item) => {\n if (item.addEventListener) {\n item.addEventListener(this.focusTrigger, this.focusHandler);\n }\n });\n }\n\n componentDidLoad(): void {\n let runningTotal = 0;\n this.itemOffsets = this.items.map((item) => {\n runningTotal += item.offsetWidth;\n return runningTotal;\n });\n\n checkResizeObserver(this.runResizeObserver);\n\n // Add event listener to scroll containers as mouse events are not fired on disabled elements (ic-button's <button>)\n // 'mouseleave' needed in case the user moves their mouse while holding the arrow buttons\n // - 'mouseup' otherwise not detected and scrolling not stopped\n const scrollArrows = Array.from(\n this.el.shadowRoot.querySelectorAll(\"div\")\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.addEventListener(event, this.arrowMouseUpHandler)\n );\n });\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== undefined) {\n this.resizeObserver.disconnect();\n }\n\n const scrollArrows = Array.from(\n this.el.shadowRoot.querySelectorAll(\"div\")\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.removeEventListener(event, this.arrowMouseUpHandler)\n );\n });\n\n this.items.forEach((item) => {\n if (item.removeEventListener) {\n item.removeEventListener(this.focusTrigger, this.focusHandler);\n }\n });\n\n this.itemsContainerEl.removeEventListener(\"scroll\", this.scrollHandler);\n }\n\n /**\n * @internal if side scrolling enabled, scrolls the specified item into view.\n */\n @Method()\n async scrollItemIntoView(itemPosition: number): Promise<void> {\n this.firstItemVisible = itemPosition <= 0;\n const newScrollPos =\n itemPosition <= 0 ? 0 : this.itemOffsets[itemPosition - 1];\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + newScrollPos >=\n this.itemsContainerEl.scrollWidth;\n this.buttonStateSet = true;\n this.itemsContainerEl.scrollLeft = newScrollPos;\n }\n\n private focusHandler = (event: FocusEvent) => {\n this.itemFocusHandler(\n Array.from(this.items).indexOf(event.target as HTMLElement)\n );\n };\n\n private itemFocusHandler(itemPosition: number): void {\n if (this.itemOverflow) {\n this.scrollItemIntoView(itemPosition);\n }\n }\n\n private resizeObserverCallback = () => {\n if (this.el.clientWidth >= this.itemsContainerEl.scrollWidth) {\n this.itemOverflow = false;\n } else {\n this.itemOverflow = elementOverflowsX(this.itemsContainerEl);\n }\n\n if (this.itemOverflow) {\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + this.itemsContainerEl.scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback();\n });\n this.resizeObserver.observe(this.itemsContainerEl);\n };\n\n private scrollLeft = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() - 1);\n };\n\n private scrollRight = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() + 1);\n };\n\n private longScrollRight = () => {\n this.scrollRight();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private longScrollLeft = () => {\n this.scrollLeft();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private leftArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private rightArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private arrowMouseUpHandler = () => {\n window.clearTimeout(this.scrollDelay);\n };\n\n private getCurrentLeftItem = (): number => {\n const index = this.itemOffsets.findIndex(\n (el) => el > Math.round(this.itemsContainerEl.scrollLeft)\n );\n return index < 0 ? 0 : index;\n };\n\n private scrollHandler = () => {\n window.clearTimeout(this.isScrolling);\n // Set a timeout to run after scrolling ends\n this.isScrolling = window.setTimeout(this.scrollStopped, 50);\n };\n\n private scrollStopped = () => {\n // If scrollItemIntoView has been called, the button states will already be set\n // Can't just handle it here as it causes strange jumping behaviour in positioning\n const scrollLeft = Math.round(this.itemsContainerEl.scrollLeft);\n if (this.buttonStateSet === false) {\n this.firstItemVisible = scrollLeft === 0;\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n this.buttonStateSet = false;\n };\n\n render() {\n const { appearance, firstItemVisible, lastItemVisible, itemOverflow } =\n this;\n\n return (\n <Host\n class={{\n [\"ic-horizontal-scroll-visible\"]: itemOverflow,\n [\"ic-horizontal-scroll-dark\"]:\n this.appearance === IcThemeForegroundEnum.Dark,\n [\"ic-horizontal-scroll-light\"]:\n this.appearance === IcThemeForegroundEnum.Light,\n }}\n >\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-left\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: firstItemVisible,\n }}\n role=\"tab\"\n >\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon\"\n aria-label=\"Scroll left\"\n appearance={appearance}\n innerHTML={LeftArrow}\n disabled={firstItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollLeft}\n onMouseDown={this.leftArrowMouseDownHandler}\n ></ic-button>\n <span class=\"scroll-splitter-left\"></span>\n </div>\n <slot></slot>\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-right\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: lastItemVisible,\n }}\n role=\"tab\"\n >\n <span class=\"scroll-splitter-right\"></span>\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon\"\n aria-label=\"Scroll right\"\n appearance={appearance}\n innerHTML={RightArrow}\n disabled={lastItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollRight}\n onMouseDown={this.rightArrowMouseDownHandler}\n ></ic-button>\n </div>\n </Host>\n );\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"ic-horizontal-scroll.js","sourceRoot":"","sources":["../../../src/components/ic-horizontal-scroll/ic-horizontal-scroll.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n h,\n Host,\n State,\n Method,\n Prop,\n} from \"@stencil/core\";\n\nimport LeftArrow from \"./assets/left-arrow.svg\";\nimport RightArrow from \"./assets/right-arrow.svg\";\nimport { getSlotElements } from \"../../utils/helpers\";\n\nimport { checkResizeObserver, elementOverflowsX } from \"../../utils/helpers\";\nimport {\n IcThemeForeground,\n IcThemeForegroundEnum,\n IcThemeMode,\n} from \"../../utils/types\";\n\nconst SCROLL_DELAY_MS = 200;\n\n@Component({\n tag: \"ic-horizontal-scroll\",\n styleUrl: \"./ic-horizontal-scroll.css\",\n shadow: true,\n})\nexport class HorizontalScroll {\n private buttonStateSet: boolean = false;\n private isScrolling: number;\n private itemOffsets: number[];\n private items: HTMLElement[];\n private itemsContainerEl: HTMLElement;\n private resizeObserver: ResizeObserver;\n private scrollDelay: number;\n\n @Element() el: HTMLIcHorizontalScrollElement;\n\n @State() firstItemVisible: boolean = true;\n @State() itemOverflow: boolean = false;\n @State() lastItemVisible: boolean = false;\n\n /**\n * The appearance of the horizontal scroll, e.g. dark, light or the default.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\n\n /** @internal Determines whether black variant of the tabs should be displayed. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * @internal 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 * @internal The name of the event that triggers focus handler logic.\n */\n @Prop() focusTrigger?: string = \"focus\";\n\n componentWillLoad(): void {\n this.itemsContainerEl = this.el.children[0] as HTMLElement;\n this.itemsContainerEl.addEventListener(\"scroll\", this.scrollHandler);\n this.items = getSlotElements(this.itemsContainerEl) as HTMLElement[];\n this.items.forEach((item) => {\n if (item.addEventListener) {\n item.addEventListener(this.focusTrigger, this.focusHandler);\n }\n });\n }\n\n componentDidLoad(): void {\n let runningTotal = 0;\n this.itemOffsets = this.items.map((item) => {\n runningTotal += item.offsetWidth;\n return runningTotal;\n });\n\n checkResizeObserver(this.runResizeObserver);\n\n // Add event listener to scroll containers as mouse events are not fired on disabled elements (ic-button's <button>)\n // 'mouseleave' needed in case the user moves their mouse while holding the arrow buttons\n // - 'mouseup' otherwise not detected and scrolling not stopped\n const scrollArrows = Array.from(\n this.el.shadowRoot.querySelectorAll(\"div\")\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.addEventListener(event, this.arrowMouseUpHandler)\n );\n });\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== undefined) {\n this.resizeObserver.disconnect();\n }\n\n const scrollArrows = Array.from(\n this.el.shadowRoot.querySelectorAll(\"div\")\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.removeEventListener(event, this.arrowMouseUpHandler)\n );\n });\n\n this.items?.forEach((item) => {\n if (item.removeEventListener) {\n item.removeEventListener(this.focusTrigger, this.focusHandler);\n }\n });\n\n this.itemsContainerEl?.removeEventListener(\"scroll\", this.scrollHandler);\n }\n\n /**\n * @internal if side scrolling enabled, scrolls the specified item into view.\n */\n @Method()\n async scrollItemIntoView(itemPosition: number): Promise<void> {\n this.firstItemVisible = itemPosition <= 0;\n const newScrollPos =\n itemPosition <= 0 ? 0 : this.itemOffsets[itemPosition - 1];\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + newScrollPos >=\n this.itemsContainerEl.scrollWidth;\n this.buttonStateSet = true;\n this.itemsContainerEl.scrollLeft = newScrollPos;\n }\n\n private focusHandler = (event: FocusEvent) => {\n this.itemFocusHandler(\n Array.from(this.items).indexOf(event.target as HTMLElement)\n );\n };\n\n private itemFocusHandler(itemPosition: number): void {\n if (this.itemOverflow) {\n this.scrollItemIntoView(itemPosition);\n }\n }\n\n private resizeObserverCallback = () => {\n if (this.el.clientWidth >= this.itemsContainerEl.scrollWidth) {\n this.itemOverflow = false;\n } else {\n this.itemOverflow = elementOverflowsX(this.itemsContainerEl);\n }\n\n if (this.itemOverflow) {\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + this.itemsContainerEl.scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback();\n });\n this.resizeObserver.observe(this.itemsContainerEl);\n };\n\n private scrollLeft = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() - 1);\n };\n\n private scrollRight = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() + 1);\n };\n\n private longScrollRight = () => {\n this.scrollRight();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private longScrollLeft = () => {\n this.scrollLeft();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private leftArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private rightArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private arrowMouseUpHandler = () => {\n window.clearTimeout(this.scrollDelay);\n };\n\n private getCurrentLeftItem = (): number => {\n const index = this.itemOffsets.findIndex(\n (el) => el > Math.round(this.itemsContainerEl.scrollLeft)\n );\n return index < 0 ? 0 : index;\n };\n\n private scrollHandler = () => {\n window.clearTimeout(this.isScrolling);\n // Set a timeout to run after scrolling ends\n this.isScrolling = window.setTimeout(this.scrollStopped, 50);\n };\n\n private scrollStopped = () => {\n // If scrollItemIntoView has been called, the button states will already be set\n // Can't just handle it here as it causes strange jumping behaviour in positioning\n const scrollLeft = Math.round(this.itemsContainerEl.scrollLeft);\n if (this.buttonStateSet === false) {\n this.firstItemVisible = scrollLeft === 0;\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n this.buttonStateSet = false;\n };\n\n render() {\n const { firstItemVisible, lastItemVisible, itemOverflow } = this;\n\n return (\n <Host\n class={{\n [\"ic-horizontal-scroll-visible\"]: itemOverflow,\n [\"ic-horizontal-scroll-dark\"]:\n this.appearance === IcThemeForegroundEnum.Dark,\n [\"ic-horizontal-scroll-light\"]:\n this.appearance === IcThemeForegroundEnum.Light,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n >\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-left\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: firstItemVisible,\n }}\n role=\"tab\"\n >\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon-tertiary\"\n aria-label=\"Scroll left\"\n theme={\n this.theme === \"light\" || this.theme === \"inherit\"\n ? \"dark\"\n : \"light\"\n }\n monochrome={this.monochrome}\n innerHTML={LeftArrow}\n disabled={firstItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollLeft}\n onMouseDown={this.leftArrowMouseDownHandler}\n ></ic-button>\n <span class=\"scroll-splitter-left\"></span>\n </div>\n <slot></slot>\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-right\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: lastItemVisible,\n }}\n role=\"tab\"\n >\n <span class=\"scroll-splitter-right\"></span>\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon-tertiary\"\n aria-label=\"Scroll right\"\n theme={\n this.theme === \"light\" || this.theme === \"inherit\"\n ? \"dark\"\n : \"light\"\n }\n monochrome={this.monochrome}\n innerHTML={RightArrow}\n disabled={lastItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollRight}\n onMouseDown={this.rightArrowMouseDownHandler}\n ></ic-button>\n </div>\n </Host>\n );\n }\n}\n"]}
|
package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js
CHANGED
@@ -11,6 +11,18 @@ const testHorizontalScroll = `<ic-horizontal-scroll>
|
|
11
11
|
<ic-navigation-item label="Test nav item 6"></ic-navigation-item>
|
12
12
|
</div>
|
13
13
|
</ic-horizontal-scroll>`;
|
14
|
+
const testTheme = (theme) => {
|
15
|
+
return `<ic-horizontal-scroll theme="${theme}">
|
16
|
+
<div>
|
17
|
+
<ic-navigation-item label="Test nav item 1"></ic-navigation-item>
|
18
|
+
<ic-navigation-item label="Test nav item 2"></ic-navigation-item>
|
19
|
+
<ic-navigation-item label="Test nav item 3"></ic-navigation-item>
|
20
|
+
<ic-navigation-item label="Test nav item 4"></ic-navigation-item>
|
21
|
+
<ic-navigation-item label="Test nav item 5"></ic-navigation-item>
|
22
|
+
<ic-navigation-item label="Test nav item 6"></ic-navigation-item>
|
23
|
+
</div>
|
24
|
+
</ic-horizontal-scroll>`;
|
25
|
+
};
|
14
26
|
describe("ic-horizontal-scroll", () => {
|
15
27
|
it("should render", async () => {
|
16
28
|
const page = await newSpecPage({
|
@@ -19,6 +31,20 @@ describe("ic-horizontal-scroll", () => {
|
|
19
31
|
});
|
20
32
|
expect(page.root).toMatchSnapshot("renders");
|
21
33
|
});
|
34
|
+
it("should render light", async () => {
|
35
|
+
const page = await newSpecPage({
|
36
|
+
components: [HorizontalScroll, NavigationItem],
|
37
|
+
html: testTheme("light"),
|
38
|
+
});
|
39
|
+
expect(page.root).toMatchSnapshot("renders");
|
40
|
+
});
|
41
|
+
it("should render dark", async () => {
|
42
|
+
const page = await newSpecPage({
|
43
|
+
components: [HorizontalScroll, NavigationItem],
|
44
|
+
html: testTheme("dark"),
|
45
|
+
});
|
46
|
+
expect(page.root).toMatchSnapshot("renders");
|
47
|
+
});
|
22
48
|
it("should render the correct HTML for the chosen appearance", async () => {
|
23
49
|
const page = await newSpecPage({
|
24
50
|
components: [HorizontalScroll, NavigationItem],
|
@@ -176,5 +202,22 @@ describe("ic-horizontal-scroll", () => {
|
|
176
202
|
page.waitForChanges();
|
177
203
|
expect(page.rootInstance.itemOverflow).toBe(true);
|
178
204
|
});
|
205
|
+
// Code Coverage
|
206
|
+
it("should call the runResizeObserver function", async () => {
|
207
|
+
const page = await newSpecPage({
|
208
|
+
components: [HorizontalScroll, NavigationItem],
|
209
|
+
html: `<ic-horizontal-scroll appearance="dark">
|
210
|
+
<div>
|
211
|
+
<ic-navigation-item label="Test nav item 1"></ic-navigation-item>
|
212
|
+
<ic-navigation-item label="Test nav item 2"></ic-navigation-item>
|
213
|
+
<ic-navigation-item label="Test nav item 3"></ic-navigation-item>
|
214
|
+
<ic-navigation-item label="Test nav item 4"></ic-navigation-item>
|
215
|
+
<ic-navigation-item label="Test nav item 5"></ic-navigation-item>
|
216
|
+
<ic-navigation-item label="Test nav item 6"></ic-navigation-item>
|
217
|
+
</div>
|
218
|
+
</ic-horizontal-scroll>`,
|
219
|
+
});
|
220
|
+
page.rootInstance.runResizeObserver();
|
221
|
+
});
|
179
222
|
});
|
180
223
|
//# sourceMappingURL=ic-horizontal-scroll.spec.js.map
|
package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ic-horizontal-scroll.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { NavigationItem } from \"../../../ic-navigation-item/ic-navigation-item\";\nimport { HorizontalScroll } from \"../../ic-horizontal-scroll\";\n\nconst testHorizontalScroll = `<ic-horizontal-scroll>\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`;\n\ndescribe(\"ic-horizontal-scroll\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n expect(page.root).toMatchSnapshot(\"renders\");\n });\n\n it(\"should render the correct HTML for the chosen appearance\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-appearance\");\n });\n\n it(\"should scroll item into view\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.scrollItemIntoView(6);\n expect(page.rootInstance.buttonStateSet).toBe(true);\n });\n\n it(\"should long scroll left\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.longScrollLeft();\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n });\n\n it(\"should long scroll right\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.longScrollRight();\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n });\n\n it(\"should delay on left arrow mouse down and set a timeout after the scrolling ends\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n const event = new Event(\"mousedown\", {\n bubbles: true,\n cancelable: true,\n });\n\n page.rootInstance.leftArrowMouseDownHandler(event);\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n\n page.rootInstance.isScrolling = 200;\n page.waitForChanges();\n\n page.rootInstance.scrollHandler();\n\n expect(page.rootInstance.isScrolling._idleNext.msecs).toBe(50);\n });\n\n it(\"should delay on right arrow mouse down and revoke delay on mouse up\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n const event = new Event(\"mousedown\", {\n bubbles: true,\n cancelable: true,\n });\n\n page.rootInstance.rightArrowMouseDownHandler(event);\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n\n page.rootInstance.arrowMouseUpHandler();\n expect(page.rootInstance.scrollDelay._idleNext).toBeNull();\n });\n\n it(\"should stop scrolling if mouse leaves the scroll button\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n const scrollContainer = page.root.shadowRoot.querySelector(\n \".scroll-container-right\"\n );\n const mouseDownEvent = new Event(\"mousedown\", {\n bubbles: true,\n cancelable: true,\n });\n const mouseLeaveEvent = new Event(\"mouseleave\", {\n bubbles: true,\n cancelable: true,\n });\n\n page.rootInstance.rightArrowMouseDownHandler(mouseDownEvent);\n page.waitForChanges();\n\n scrollContainer.dispatchEvent(mouseLeaveEvent);\n page.waitForChanges();\n\n expect(page.rootInstance.arrowMouseUpHandler()).toHaveBeenCalled;\n });\n\n it(\"should stop scrolling\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n //when buttonStateSet is true\n page.rootInstance.buttonStateSet = true;\n page.rootInstance.scrollStopped();\n page.waitForChanges();\n\n expect(page.rootInstance.buttonStateSet).toBe(false);\n\n //when buttonStateSet is false\n page.rootInstance.itemsContainerEl.scrollLeft = 0;\n page.rootInstance.scrollStopped();\n page.waitForChanges();\n\n expect(page.rootInstance.firstItemVisible).toBe(true);\n });\n\n it(\"should handle item focus\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.itemOverflow = true;\n page.waitForChanges();\n\n const item: HTMLElement = page.root.querySelector(\n \"[label='Test nav item 4']\"\n );\n item.focus();\n page.waitForChanges();\n\n expect(page.rootInstance.itemFocusHandler()).toHaveBeenCalled;\n expect(page.rootInstance.firstItemVisible).toBe(false);\n });\n\n it(\"should render scroll arrows when items overflow\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: `<ic-horizontal-scroll>\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`,\n });\n\n page.rootInstance.itemOverflow = true;\n page.waitForChanges();\n const scroll = page.root.shadowRoot.querySelector(\".scroll-arrow\");\n\n expect(scroll).not.toBeNull();\n\n //call runResizeObserver\n page.rootInstance.runResizeObserver();\n\n //test disconnected callback\n page.setContent(\"\");\n });\n\n it(\"should set itemOverflow to true where scrollWidth > clientWidth on the scroll container element\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: `<ic-horizontal-scroll>\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`,\n });\n\n page.rootInstance.itemsContainerEl.scrollWidth = 100;\n page.rootInstance.itemsContainerEl.clientWidth = 50;\n page.rootInstance.resizeObserverCallback();\n page.waitForChanges();\n\n expect(page.rootInstance.itemOverflow).toBe(true);\n });\n});\n"]}
|
1
|
+
{"version":3,"file":"ic-horizontal-scroll.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { NavigationItem } from \"../../../ic-navigation-item/ic-navigation-item\";\nimport { HorizontalScroll } from \"../../ic-horizontal-scroll\";\n\nconst testHorizontalScroll = `<ic-horizontal-scroll>\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`;\n\nconst testTheme = (theme: string) => {\n return `<ic-horizontal-scroll theme=\"${theme}\">\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`;\n};\n\ndescribe(\"ic-horizontal-scroll\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n expect(page.root).toMatchSnapshot(\"renders\");\n });\n it(\"should render light\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testTheme(\"light\"),\n });\n\n expect(page.root).toMatchSnapshot(\"renders\");\n });\n it(\"should render dark\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testTheme(\"dark\"),\n });\n\n expect(page.root).toMatchSnapshot(\"renders\");\n });\n\n it(\"should render the correct HTML for the chosen appearance\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-appearance\");\n });\n\n it(\"should scroll item into view\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.scrollItemIntoView(6);\n expect(page.rootInstance.buttonStateSet).toBe(true);\n });\n\n it(\"should long scroll left\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.longScrollLeft();\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n });\n\n it(\"should long scroll right\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.longScrollRight();\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n });\n\n it(\"should delay on left arrow mouse down and set a timeout after the scrolling ends\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n const event = new Event(\"mousedown\", {\n bubbles: true,\n cancelable: true,\n });\n\n page.rootInstance.leftArrowMouseDownHandler(event);\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n\n page.rootInstance.isScrolling = 200;\n page.waitForChanges();\n\n page.rootInstance.scrollHandler();\n\n expect(page.rootInstance.isScrolling._idleNext.msecs).toBe(50);\n });\n\n it(\"should delay on right arrow mouse down and revoke delay on mouse up\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n const event = new Event(\"mousedown\", {\n bubbles: true,\n cancelable: true,\n });\n\n page.rootInstance.rightArrowMouseDownHandler(event);\n page.waitForChanges();\n\n expect(page.rootInstance.scrollDelay._idleNext.msecs).toBe(200);\n\n page.rootInstance.arrowMouseUpHandler();\n expect(page.rootInstance.scrollDelay._idleNext).toBeNull();\n });\n\n it(\"should stop scrolling if mouse leaves the scroll button\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n const scrollContainer = page.root.shadowRoot.querySelector(\n \".scroll-container-right\"\n );\n const mouseDownEvent = new Event(\"mousedown\", {\n bubbles: true,\n cancelable: true,\n });\n const mouseLeaveEvent = new Event(\"mouseleave\", {\n bubbles: true,\n cancelable: true,\n });\n\n page.rootInstance.rightArrowMouseDownHandler(mouseDownEvent);\n page.waitForChanges();\n\n scrollContainer.dispatchEvent(mouseLeaveEvent);\n page.waitForChanges();\n\n expect(page.rootInstance.arrowMouseUpHandler()).toHaveBeenCalled;\n });\n\n it(\"should stop scrolling\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n //when buttonStateSet is true\n page.rootInstance.buttonStateSet = true;\n page.rootInstance.scrollStopped();\n page.waitForChanges();\n\n expect(page.rootInstance.buttonStateSet).toBe(false);\n\n //when buttonStateSet is false\n page.rootInstance.itemsContainerEl.scrollLeft = 0;\n page.rootInstance.scrollStopped();\n page.waitForChanges();\n\n expect(page.rootInstance.firstItemVisible).toBe(true);\n });\n\n it(\"should handle item focus\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: testHorizontalScroll,\n });\n\n page.rootInstance.itemOverflow = true;\n page.waitForChanges();\n\n const item: HTMLElement = page.root.querySelector(\n \"[label='Test nav item 4']\"\n );\n item.focus();\n page.waitForChanges();\n\n expect(page.rootInstance.itemFocusHandler()).toHaveBeenCalled;\n expect(page.rootInstance.firstItemVisible).toBe(false);\n });\n\n it(\"should render scroll arrows when items overflow\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: `<ic-horizontal-scroll>\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`,\n });\n\n page.rootInstance.itemOverflow = true;\n page.waitForChanges();\n const scroll = page.root.shadowRoot.querySelector(\".scroll-arrow\");\n\n expect(scroll).not.toBeNull();\n\n //call runResizeObserver\n page.rootInstance.runResizeObserver();\n\n //test disconnected callback\n page.setContent(\"\");\n });\n\n it(\"should set itemOverflow to true where scrollWidth > clientWidth on the scroll container element\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: `<ic-horizontal-scroll>\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`,\n });\n\n page.rootInstance.itemsContainerEl.scrollWidth = 100;\n page.rootInstance.itemsContainerEl.clientWidth = 50;\n page.rootInstance.resizeObserverCallback();\n page.waitForChanges();\n\n expect(page.rootInstance.itemOverflow).toBe(true);\n });\n\n // Code Coverage\n it(\"should call the runResizeObserver function\", async () => {\n const page = await newSpecPage({\n components: [HorizontalScroll, NavigationItem],\n html: `<ic-horizontal-scroll appearance=\"dark\">\n <div>\n <ic-navigation-item label=\"Test nav item 1\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 2\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 3\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 4\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 5\"></ic-navigation-item>\n <ic-navigation-item label=\"Test nav item 6\"></ic-navigation-item>\n </div>\n </ic-horizontal-scroll>`,\n });\n\n page.rootInstance.runResizeObserver();\n });\n});\n"]}
|
package/dist/collection/components/ic-input-component-container/ic-input-component-container.css
CHANGED
@@ -1,6 +1,18 @@
|
|
1
1
|
ic-input-component-container {
|
2
2
|
/**
|
3
3
|
* @prop --border-color: Border colour of the input component container
|
4
|
+
* @prop --border-color-hover: Border colour of the input component container on hover
|
5
|
+
* @prop --border-color-pressed: Border colour of the input component container when pressed
|
6
|
+
* @prop --border-color-disabled: Border colour of the input component container when disabled
|
7
|
+
* @prop --border-color-error: Border colour of the error variant for input component container
|
8
|
+
* @prop --border-color-error-hover: Border colour of the error hover variant for input component container
|
9
|
+
* @prop --border-color-error-pressed: Border colour of the error pressed variant for input component container
|
10
|
+
* @prop --border-color-warning: Border colour of the warning variant for input component container
|
11
|
+
* @prop --border-color-warning-hover: Border colour of the warning hover variant for input component container
|
12
|
+
* @prop --border-color-warning-pressed: Border colour of the warning pressed variant for input component container
|
13
|
+
* @prop --border-color-success: Border colour of the success variant for input component container
|
14
|
+
* @prop --border-color-success-hover: Border colour of the success hover variant for input component container
|
15
|
+
* @prop --border-color-success-pressed: Border colour of the success pressed variant for input component container
|
4
16
|
*/
|
5
17
|
|
6
18
|
display: flex;
|
@@ -11,7 +23,7 @@ ic-input-component-container {
|
|
11
23
|
height: 2.5rem;
|
12
24
|
width: var(--input-width, 20rem);
|
13
25
|
padding: var(--ic-space-1px);
|
14
|
-
background-color: var(--ic-
|
26
|
+
background-color: var(--input-bg-color, var(--ic-color-background-primary));
|
15
27
|
box-sizing: border-box;
|
16
28
|
fill: var(--ic-architectural-400);
|
17
29
|
outline: none;
|
@@ -23,7 +35,8 @@ ic-input-component-container.ic-input-component-container-full-width {
|
|
23
35
|
|
24
36
|
ic-input-component-container.ic-input-component-container-disabled,
|
25
37
|
ic-input-component-container.ic-input-component-container-disabled:hover {
|
26
|
-
border: var(--ic-border-width) dashed
|
38
|
+
border: var(--ic-border-width) dashed
|
39
|
+
var(--border-color-disabled, var(--ic-color-border-neutral-disabled));
|
27
40
|
}
|
28
41
|
|
29
42
|
ic-input-component-container.ic-input-component-container-readonly,
|
@@ -33,42 +46,51 @@ ic-input-component-container.ic-input-component-container-readonly:hover {
|
|
33
46
|
}
|
34
47
|
|
35
48
|
ic-input-component-container.ic-input-component-container-error {
|
36
|
-
border: var(--ic-
|
49
|
+
border: var(--ic-space-xxxs) solid
|
50
|
+
var(--border-color-error, var(--ic-color-border-error));
|
37
51
|
padding: 0;
|
38
52
|
}
|
39
53
|
|
40
54
|
ic-input-component-container.ic-input-component-container-error:hover {
|
41
|
-
border: var(--ic-
|
55
|
+
border: var(--ic-space-xxxs) solid
|
56
|
+
var(--border-color-error-hover, var(--ic-color-border-error-hover));
|
42
57
|
}
|
43
58
|
|
44
59
|
ic-input-component-container.ic-input-component-container-error:focus-within {
|
45
|
-
border: var(--ic-
|
60
|
+
border: var(--ic-space-xxxs) solid
|
61
|
+
var(--border-color-error-pressed, var(--ic-color-border-error-pressed));
|
46
62
|
}
|
47
63
|
|
48
64
|
ic-input-component-container.ic-input-component-container-warning {
|
49
|
-
border: var(--ic-
|
65
|
+
border: var(--ic-space-xxxs) solid
|
66
|
+
var(--border-color-warning, var(--ic-color-border-warning));
|
50
67
|
padding: 0;
|
51
68
|
}
|
52
69
|
|
53
70
|
ic-input-component-container.ic-input-component-container-warning:hover {
|
54
|
-
border: var(--ic-
|
71
|
+
border: var(--ic-space-xxxs) solid
|
72
|
+
var(--border-color-warning-hover, var(--ic-color-border-warning-hover));
|
55
73
|
}
|
56
74
|
|
57
75
|
ic-input-component-container.ic-input-component-container-warning:focus-within {
|
58
|
-
border: var(--ic-
|
76
|
+
border: var(--ic-space-xxxs) solid
|
77
|
+
var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed));
|
59
78
|
}
|
60
79
|
|
61
80
|
ic-input-component-container.ic-input-component-container-success {
|
62
|
-
border: var(--ic-
|
81
|
+
border: var(--ic-space-xxxs) solid
|
82
|
+
var(--border-color-success, var(--ic-color-border-success));
|
63
83
|
padding: 0;
|
64
84
|
}
|
65
85
|
|
66
86
|
ic-input-component-container.ic-input-component-container-success:hover {
|
67
|
-
border: var(--ic-
|
87
|
+
border: var(--ic-space-xxxs) solid
|
88
|
+
var(--border-color-success-hover, var(--ic-color-border-success-hover));
|
68
89
|
}
|
69
90
|
|
70
91
|
ic-input-component-container.ic-input-component-container-success:focus-within {
|
71
|
-
border: var(--ic-
|
92
|
+
border: var(--ic-space-xxxs) solid
|
93
|
+
var(--border-color-success-pressed, var(--ic-color-border-success-pressed));
|
72
94
|
}
|
73
95
|
|
74
96
|
ic-input-component-container.ic-input-component-container-small {
|
@@ -119,23 +141,24 @@ ic-input-component-container .inline-success {
|
|
119
141
|
align-items: center;
|
120
142
|
}
|
121
143
|
|
122
|
-
ic-input-component-container.ic-input-component-container-dark:hover {
|
123
|
-
--border-color: var(--ic-architectural-400);
|
124
|
-
}
|
125
|
-
|
126
144
|
ic-input-component-container .inline-success > svg {
|
127
|
-
fill: var(--ic-
|
145
|
+
fill: var(--ic-input-component-container-success-icon-inline-color);
|
128
146
|
height: 1.25rem;
|
129
147
|
width: 1.25rem;
|
130
148
|
}
|
131
149
|
|
132
150
|
ic-input-component-container:hover {
|
133
|
-
border: var(--ic-
|
151
|
+
border: var(--ic-input-component-container-hover-border);
|
152
|
+
border-color: var(--border-color-hover, var(--ic-color-border-neutral-hover));
|
134
153
|
color: var(--ic-action-dark-hover);
|
135
154
|
}
|
136
155
|
|
137
156
|
ic-input-component-container:focus {
|
138
157
|
border: var(--ic-border-pressed);
|
158
|
+
border-color: var(
|
159
|
+
--border-color-pressed,
|
160
|
+
var(--ic-color-border-neutral-pressed)
|
161
|
+
);
|
139
162
|
}
|
140
163
|
|
141
164
|
.focus-indicator {
|