@ukic/canary-web-components 3.0.0-canary.21 → 3.0.0-canary.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/cjs/clear-icon-547aa9b9.js +10 -0
- package/dist/cjs/clear-icon-547aa9b9.js.map +1 -0
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/helpers-da852478.js.map +1 -1
- package/dist/cjs/ic-action-chip.cjs.entry.js +116 -0
- package/dist/cjs/ic-action-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-back-to-top.cjs.entry.js +3 -3
- 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 +2 -2
- 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 +41 -86
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +4 -4
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox_3.cjs.entry.js +6 -6
- package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +11 -3
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table.cjs.entry.js +63 -68
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +25 -17
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +17 -10
- package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.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 +3 -3
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +4 -4
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +224 -0
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/{ic-input-component-container_3.cjs.entry.js → ic-menu.cjs.entry.js} +41 -140
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +3 -10
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
- package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +6 -6
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +17 -17
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +4 -4
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +4 -4
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +9 -9
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +4 -4
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +13 -13
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +2 -2
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +4 -4
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-time-input.cjs.entry.js +943 -0
- package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +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 +15 -4
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +13 -4
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +4 -4
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +14 -8
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +23 -15
- package/dist/cjs/ic-tree-view.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/index-d337cd8a.js +12 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/assets/clock.svg +1 -0
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/ic-data-table/ic-data-table.css +3 -2
- package/dist/collection/components/ic-data-table/ic-data-table.js +62 -68
- package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.stories.js +5 -4
- package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
- package/dist/collection/components/ic-data-table/story-data.js +39 -130
- package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
- package/dist/collection/components/ic-date-input/ic-date-input.js +24 -12
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-date-picker/ic-date-picker.js +37 -10
- package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
- package/dist/collection/components/ic-time-input/ic-time-input.css +648 -0
- package/dist/collection/components/ic-time-input/ic-time-input.js +1600 -0
- package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -0
- package/dist/collection/components/ic-time-input/ic-time-input.stories.js +320 -0
- package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -0
- package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js +45 -0
- package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -0
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +14 -8
- package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
- package/dist/collection/components/ic-tree-view/ic-tree-view.js +23 -15
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/clear-icon.js +8 -0
- package/dist/components/clear-icon.js.map +1 -0
- package/dist/components/helpers2.js.map +1 -1
- package/dist/components/ic-action-chip.js +160 -0
- package/dist/components/ic-action-chip.js.map +1 -0
- package/dist/components/ic-back-to-top.js +3 -3
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +2 -2
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +2 -2
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +2 -2
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-button2.js +3 -3
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +4 -4
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +2 -2
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox2.js +4 -4
- package/dist/components/ic-checkbox2.js.map +1 -1
- package/dist/components/ic-chip.js +12 -4
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-classification-banner.js +2 -2
- package/dist/components/ic-classification-banner.js.map +1 -1
- package/dist/components/ic-data-list.js +2 -2
- package/dist/components/ic-data-list.js.map +1 -1
- package/dist/components/ic-data-row.js +2 -2
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-data-table.js +63 -68
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +25 -17
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +18 -10
- package/dist/components/ic-date-picker.js.map +1 -1
- package/dist/components/ic-dialog.js +1 -1
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-empty-state2.js +2 -2
- package/dist/components/ic-empty-state2.js.map +1 -1
- package/dist/components/ic-footer-link.js +2 -2
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-footer.js +3 -3
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +4 -4
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +5 -5
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +3 -3
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-container2.js +2 -2
- package/dist/components/ic-input-container2.js.map +1 -1
- package/dist/components/ic-input-label2.js +2 -2
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation2.js +3 -3
- package/dist/components/ic-input-validation2.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +6 -6
- package/dist/components/ic-loading-indicator2.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-menu2.js +42 -47
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +2 -2
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +1 -1
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +3 -10
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +4 -4
- package/dist/components/ic-navigation-menu2.js.map +1 -1
- package/dist/components/ic-page-header.js +6 -6
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +1 -1
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +4 -4
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +4 -4
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +4 -4
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +4 -4
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +9 -9
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-section-container2.js +2 -2
- package/dist/components/ic-section-container2.js.map +1 -1
- package/dist/components/ic-select2.js +6 -6
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +4 -4
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +2 -2
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-skip-link.js +2 -2
- package/dist/components/ic-skip-link.js.map +1 -1
- package/dist/components/ic-status-tag.js +2 -2
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +13 -13
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +2 -2
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +4 -4
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +1 -1
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-group.js +2 -2
- package/dist/components/ic-tab-group.js.map +1 -1
- package/dist/components/ic-tab-panel.js +2 -2
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +2 -2
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +6 -6
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +1 -1
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-time-input.d.ts +11 -0
- package/dist/components/ic-time-input.js +1045 -0
- package/dist/components/ic-time-input.js.map +1 -0
- package/dist/components/ic-toast-region.js +1 -1
- package/dist/components/ic-toast-region.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 +17 -4
- package/dist/components/ic-toggle-button-group.js.map +1 -1
- package/dist/components/ic-toggle-button.js +14 -4
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +33 -78
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +4 -4
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.js +15 -9
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +24 -16
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/components/ic-typography2.js +2 -2
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/core.css +227 -7
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-137dd76e.entry.js → p-00a89919.entry.js} +2 -2
- package/dist/core/{p-137dd76e.entry.js.map → p-00a89919.entry.js.map} +1 -1
- package/dist/core/{p-e253a857.js → p-0f22f41e.js} +2 -2
- package/dist/core/p-0f22f41e.js.map +1 -0
- package/dist/core/{p-97abdbf7.entry.js → p-1521e96b.entry.js} +2 -2
- package/dist/core/{p-97abdbf7.entry.js.map → p-1521e96b.entry.js.map} +1 -1
- package/dist/core/{p-5d987f8f.entry.js → p-153d3597.entry.js} +2 -2
- package/dist/core/{p-5d987f8f.entry.js.map → p-153d3597.entry.js.map} +1 -1
- package/dist/core/{p-4b6818d9.entry.js → p-1cc402b8.entry.js} +2 -2
- package/dist/core/{p-4b6818d9.entry.js.map → p-1cc402b8.entry.js.map} +1 -1
- package/dist/core/{p-8d908a57.entry.js → p-22863d31.entry.js} +2 -2
- package/dist/core/{p-8d908a57.entry.js.map → p-22863d31.entry.js.map} +1 -1
- package/dist/core/{p-c94e7b0b.entry.js → p-27207aa3.entry.js} +2 -2
- package/dist/core/{p-c94e7b0b.entry.js.map → p-27207aa3.entry.js.map} +1 -1
- package/dist/core/{p-2c4bf16f.entry.js → p-2d6a1b50.entry.js} +2 -2
- package/dist/core/{p-2c4bf16f.entry.js.map → p-2d6a1b50.entry.js.map} +1 -1
- package/dist/core/{p-b6b7c15c.entry.js → p-307c13a1.entry.js} +2 -2
- package/dist/core/p-307c13a1.entry.js.map +1 -0
- package/dist/core/{p-2d8900bf.entry.js → p-30b3afb1.entry.js} +2 -2
- package/dist/core/{p-2d8900bf.entry.js.map → p-30b3afb1.entry.js.map} +1 -1
- package/dist/core/{p-bf93baea.entry.js → p-324862f7.entry.js} +2 -2
- package/dist/core/{p-bf93baea.entry.js.map → p-324862f7.entry.js.map} +1 -1
- package/dist/core/{p-0fe08a58.js → p-33927ee1.js} +2 -2
- package/dist/core/{p-1bcf49fa.entry.js → p-369f4536.entry.js} +2 -2
- package/dist/core/p-369f4536.entry.js.map +1 -0
- package/dist/core/{p-b6d1988d.entry.js → p-3a5da30c.entry.js} +2 -2
- package/dist/core/{p-b6d1988d.entry.js.map → p-3a5da30c.entry.js.map} +1 -1
- package/dist/core/{p-826a6c25.entry.js → p-3d10fa12.entry.js} +2 -2
- package/dist/core/{p-826a6c25.entry.js.map → p-3d10fa12.entry.js.map} +1 -1
- package/dist/core/{p-f569a91f.entry.js → p-48127d40.entry.js} +2 -2
- package/dist/core/{p-f569a91f.entry.js.map → p-48127d40.entry.js.map} +1 -1
- package/dist/core/{p-3448c713.entry.js → p-48db785a.entry.js} +2 -2
- package/dist/core/{p-3448c713.entry.js.map → p-48db785a.entry.js.map} +1 -1
- package/dist/core/{p-b27bc1a1.entry.js → p-4b212968.entry.js} +2 -2
- package/dist/core/{p-b27bc1a1.entry.js.map → p-4b212968.entry.js.map} +1 -1
- package/dist/core/p-53d50d9e.entry.js +2 -0
- package/dist/core/p-53d50d9e.entry.js.map +1 -0
- package/dist/core/p-558936fb.entry.js +2 -0
- package/dist/core/p-558936fb.entry.js.map +1 -0
- package/dist/core/{p-64372a57.entry.js → p-593cc594.entry.js} +2 -2
- package/dist/core/{p-64372a57.entry.js.map → p-593cc594.entry.js.map} +1 -1
- package/dist/core/{p-bbf39a76.entry.js → p-666a671b.entry.js} +2 -2
- package/dist/core/{p-bbf39a76.entry.js.map → p-666a671b.entry.js.map} +1 -1
- package/dist/core/{p-8397766e.entry.js → p-726144b4.entry.js} +2 -2
- package/dist/core/{p-8397766e.entry.js.map → p-726144b4.entry.js.map} +1 -1
- package/dist/core/p-74e0f41f.entry.js +2 -0
- package/dist/core/p-74e0f41f.entry.js.map +1 -0
- package/dist/core/{p-0dc0d839.entry.js → p-75f3038c.entry.js} +2 -2
- package/dist/core/{p-0dc0d839.entry.js.map → p-75f3038c.entry.js.map} +1 -1
- package/dist/core/p-7892130d.entry.js +2 -0
- package/dist/core/p-7892130d.entry.js.map +1 -0
- package/dist/core/{p-b6c3cc1c.entry.js → p-7e5e94a9.entry.js} +2 -2
- package/dist/core/p-7e5e94a9.entry.js.map +1 -0
- package/dist/core/p-8048c7da.entry.js +2 -0
- package/dist/core/{p-1e256460.entry.js.map → p-8048c7da.entry.js.map} +1 -1
- package/dist/core/p-80e43591.entry.js +2 -0
- package/dist/core/{p-8cb5deba.entry.js.map → p-80e43591.entry.js.map} +1 -1
- package/dist/core/{p-75901d06.entry.js → p-86ff903d.entry.js} +2 -2
- package/dist/core/{p-ead0acc3.entry.js → p-8908b8e6.entry.js} +2 -2
- package/dist/core/{p-832c7042.entry.js → p-8bf1022e.entry.js} +2 -2
- package/dist/core/{p-90364cef.entry.js → p-8fa7085e.entry.js} +2 -2
- package/dist/core/{p-90364cef.entry.js.map → p-8fa7085e.entry.js.map} +1 -1
- package/dist/core/{p-5237f3ac.entry.js → p-97c437bb.entry.js} +2 -2
- package/dist/core/p-9c8a98e8.entry.js +2 -0
- package/dist/core/p-9c8a98e8.entry.js.map +1 -0
- package/dist/core/{p-0f86ea09.entry.js → p-9f792a31.entry.js} +2 -2
- package/dist/core/{p-0f86ea09.entry.js.map → p-9f792a31.entry.js.map} +1 -1
- package/dist/core/{p-cd8178a9.entry.js → p-abcc90f0.entry.js} +2 -2
- package/dist/core/{p-cd8178a9.entry.js.map → p-abcc90f0.entry.js.map} +1 -1
- package/dist/core/p-ad48c77c.entry.js +2 -0
- package/dist/core/p-ad48c77c.entry.js.map +1 -0
- package/dist/core/p-b0462734.entry.js +2 -0
- package/dist/core/p-b0462734.entry.js.map +1 -0
- package/dist/core/{p-88c5ec78.entry.js → p-b2680959.entry.js} +2 -2
- package/dist/core/{p-88c5ec78.entry.js.map → p-b2680959.entry.js.map} +1 -1
- package/dist/core/{p-b1b27b7e.entry.js → p-b3ac38c5.entry.js} +2 -2
- package/dist/core/{p-b1b27b7e.entry.js.map → p-b3ac38c5.entry.js.map} +1 -1
- package/dist/core/p-b5ef2799.entry.js +2 -0
- package/dist/core/{p-497918fd.entry.js.map → p-b5ef2799.entry.js.map} +1 -1
- package/dist/core/{p-33404c14.entry.js → p-b7a0dc04.entry.js} +2 -2
- package/dist/core/{p-33404c14.entry.js.map → p-b7a0dc04.entry.js.map} +1 -1
- package/dist/core/p-b8938f93.entry.js +2 -0
- package/dist/core/p-b8938f93.entry.js.map +1 -0
- package/dist/core/{p-9097a16a.entry.js → p-b9d4c0db.entry.js} +2 -2
- package/dist/core/{p-9097a16a.entry.js.map → p-b9d4c0db.entry.js.map} +1 -1
- package/dist/core/{p-b3509380.entry.js → p-c4bf8742.entry.js} +2 -2
- package/dist/core/{p-3cf99186.entry.js → p-c6eabd53.entry.js} +2 -2
- package/dist/core/{p-6f72e6ac.entry.js → p-c7ccc52a.entry.js} +2 -2
- package/dist/core/{p-6f72e6ac.entry.js.map → p-c7ccc52a.entry.js.map} +1 -1
- package/dist/core/p-c82a2e84.entry.js +2 -0
- package/dist/core/p-c82a2e84.entry.js.map +1 -0
- package/dist/core/{p-94065f7a.entry.js → p-ca3c6653.entry.js} +2 -2
- package/dist/core/{p-94065f7a.entry.js.map → p-ca3c6653.entry.js.map} +1 -1
- package/dist/core/{p-d281c3cf.entry.js → p-d47acbd4.entry.js} +2 -2
- package/dist/core/{p-d281c3cf.entry.js.map → p-d47acbd4.entry.js.map} +1 -1
- package/dist/core/{p-a54eb1d1.entry.js → p-d5f8ef77.entry.js} +2 -2
- package/dist/core/{p-c77d6efc.entry.js → p-db3b0c0a.entry.js} +2 -2
- package/dist/core/{p-c77d6efc.entry.js.map → p-db3b0c0a.entry.js.map} +1 -1
- package/dist/core/{p-cc36abaa.entry.js → p-db6d0463.entry.js} +2 -2
- package/dist/core/p-dbde45ff.entry.js +2 -0
- package/dist/core/p-dbde45ff.entry.js.map +1 -0
- package/dist/core/p-dc8eede2.entry.js +2 -0
- package/dist/core/p-dc8eede2.entry.js.map +1 -0
- package/dist/core/p-dd7450fb.js +2 -0
- package/dist/core/p-dd7450fb.js.map +1 -0
- package/dist/core/{p-fc5661ac.entry.js → p-de43d375.entry.js} +2 -2
- package/dist/core/{p-fc5661ac.entry.js.map → p-de43d375.entry.js.map} +1 -1
- package/dist/core/p-de8081c6.entry.js +2 -0
- package/dist/core/{p-a26a60ff.entry.js.map → p-de8081c6.entry.js.map} +1 -1
- package/dist/core/p-e4906394.entry.js +2 -0
- package/dist/core/{p-032113b9.entry.js.map → p-e4906394.entry.js.map} +1 -1
- package/dist/core/p-e595bb87.entry.js +2 -0
- package/dist/core/p-e595bb87.entry.js.map +1 -0
- package/dist/core/{p-42913c5b.entry.js → p-e75514f1.entry.js} +2 -2
- package/dist/core/{p-42913c5b.entry.js.map → p-e75514f1.entry.js.map} +1 -1
- package/dist/core/{p-6dd73165.entry.js → p-ee6caf27.entry.js} +2 -2
- package/dist/core/{p-6dd73165.entry.js.map → p-ee6caf27.entry.js.map} +1 -1
- package/dist/core/{p-2de3287c.entry.js → p-f33eae3c.entry.js} +2 -2
- package/dist/core/{p-2de3287c.entry.js.map → p-f33eae3c.entry.js.map} +1 -1
- package/dist/core/{p-9e051db4.entry.js → p-f34eee68.entry.js} +2 -2
- package/dist/core/{p-9e051db4.entry.js.map → p-f34eee68.entry.js.map} +1 -1
- package/dist/core/{p-fb7f4e2e.entry.js → p-fbb0a74d.entry.js} +2 -2
- package/dist/core/{p-fb7f4e2e.entry.js.map → p-fbb0a74d.entry.js.map} +1 -1
- package/dist/core/{p-9fafa5fa.entry.js → p-fbd80981.entry.js} +2 -2
- package/dist/core/p-fbd80981.entry.js.map +1 -0
- package/dist/core/{p-e18ba5d6.entry.js → p-fffb98c9.entry.js} +2 -2
- package/dist/core/{p-e18ba5d6.entry.js.map → p-fffb98c9.entry.js.map} +1 -1
- package/dist/esm/clear-icon-1c79bda2.js +8 -0
- package/dist/esm/clear-icon-1c79bda2.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-d9387cd3.js → helpers-89cb996d.js} +2 -2
- package/dist/esm/helpers-89cb996d.js.map +1 -0
- package/dist/esm/{helpers-574534c9.js → helpers-dea3fd9b.js} +2 -2
- package/dist/esm/{helpers-574534c9.js.map → helpers-dea3fd9b.js.map} +1 -1
- package/dist/esm/ic-accordion-group.entry.js +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-action-chip.entry.js +112 -0
- package/dist/esm/ic-action-chip.entry.js.map +1 -0
- package/dist/esm/ic-alert.entry.js +1 -1
- package/dist/esm/ic-back-to-top.entry.js +4 -4
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +3 -3
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +3 -3
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +3 -3
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +42 -87
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-horizontal.entry.js +1 -1
- package/dist/esm/ic-card-vertical.entry.js +5 -5
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +3 -3
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox_3.entry.js +8 -8
- package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +12 -4
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +2 -2
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-list.entry.js +2 -2
- package/dist/esm/ic-data-list.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +3 -3
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
- package/dist/esm/ic-data-table.entry.js +64 -69
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +26 -18
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-date-picker.entry.js +18 -11
- package/dist/esm/ic-date-picker.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +2 -2
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +3 -3
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +4 -4
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +5 -5
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_4.entry.js +217 -0
- package/dist/esm/ic-input-component-container_4.entry.js.map +1 -0
- package/dist/esm/ic-link.entry.js +2 -2
- 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 +1 -1
- package/dist/esm/{ic-input-component-container_3.entry.js → ic-menu.entry.js} +43 -140
- package/dist/esm/ic-menu.entry.js.map +1 -0
- package/dist/esm/ic-navigation-button.entry.js +3 -3
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +2 -2
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +4 -11
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +5 -5
- package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
- package/dist/esm/ic-page-header.entry.js +7 -7
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination_4.entry.js +18 -18
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +5 -5
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +5 -5
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +5 -5
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +10 -10
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +2 -2
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-side-navigation.entry.js +5 -5
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +2 -2
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-skip-link.entry.js +2 -2
- package/dist/esm/ic-skip-link.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +3 -3
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +14 -14
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +3 -3
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +5 -5
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +1 -1
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +3 -3
- package/dist/esm/ic-tab-group.entry.js.map +1 -1
- package/dist/esm/ic-tab-panel.entry.js +2 -2
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +3 -3
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +2 -2
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-time-input.entry.js +939 -0
- package/dist/esm/ic-time-input.entry.js.map +1 -0
- package/dist/esm/ic-toast-region.entry.js +1 -1
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +4 -4
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +16 -5
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button.entry.js +14 -5
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +5 -5
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +15 -9
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +24 -16
- package/dist/esm/ic-tree-view.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +3 -3
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-a7a720e7.js +12 -4
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.stories.d.ts +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +12 -7
- package/dist/types/components/ic-data-table/story-data.d.ts +11 -84
- package/dist/types/components/ic-date-input/ic-date-input.d.ts +2 -1
- package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +4 -0
- package/dist/types/components/ic-time-input/ic-time-input.d.ts +229 -0
- package/dist/types/components/ic-time-input/ic-time-input.stories.d.ts +121 -0
- package/dist/types/components/ic-time-input/test/helpers/ic-time-input.d.ts +23 -0
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +2 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +2 -1
- package/dist/types/components.d.ts +242 -2
- package/dist/types/utils/types.d.ts +5 -0
- package/hydrate/index.js +1611 -493
- package/hydrate/index.mjs +1611 -493
- package/package.json +3 -3
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +0 -133
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +0 -1
- package/dist/core/p-032113b9.entry.js +0 -2
- package/dist/core/p-145238fe.entry.js +0 -2
- package/dist/core/p-145238fe.entry.js.map +0 -1
- package/dist/core/p-1b20ab19.entry.js +0 -2
- package/dist/core/p-1b20ab19.entry.js.map +0 -1
- package/dist/core/p-1bcf49fa.entry.js.map +0 -1
- package/dist/core/p-1e256460.entry.js +0 -2
- package/dist/core/p-224b2e14.entry.js +0 -2
- package/dist/core/p-224b2e14.entry.js.map +0 -1
- package/dist/core/p-497918fd.entry.js +0 -2
- package/dist/core/p-5f8b09e4.entry.js +0 -2
- package/dist/core/p-5f8b09e4.entry.js.map +0 -1
- package/dist/core/p-7001f1c1.entry.js +0 -2
- package/dist/core/p-7001f1c1.entry.js.map +0 -1
- package/dist/core/p-8cb5deba.entry.js +0 -2
- package/dist/core/p-95881758.entry.js +0 -2
- package/dist/core/p-95881758.entry.js.map +0 -1
- package/dist/core/p-9fafa5fa.entry.js.map +0 -1
- package/dist/core/p-a26a60ff.entry.js +0 -2
- package/dist/core/p-b6b7c15c.entry.js.map +0 -1
- package/dist/core/p-b6c3cc1c.entry.js.map +0 -1
- package/dist/core/p-b9369ce5.entry.js +0 -2
- package/dist/core/p-b9369ce5.entry.js.map +0 -1
- package/dist/core/p-cbbba154.entry.js +0 -2
- package/dist/core/p-cbbba154.entry.js.map +0 -1
- package/dist/core/p-cdd6d5e8.entry.js +0 -2
- package/dist/core/p-cdd6d5e8.entry.js.map +0 -1
- package/dist/core/p-dc3aba7c.entry.js +0 -2
- package/dist/core/p-dc3aba7c.entry.js.map +0 -1
- package/dist/core/p-e253a857.js.map +0 -1
- package/dist/esm/helpers-d9387cd3.js.map +0 -1
- package/dist/esm/ic-input-component-container_3.entry.js.map +0 -1
- package/dist/esm/ic-input-label_2.entry.js +0 -128
- package/dist/esm/ic-input-label_2.entry.js.map +0 -1
- /package/dist/core/{p-0fe08a58.js.map → p-33927ee1.js.map} +0 -0
- /package/dist/core/{p-75901d06.entry.js.map → p-86ff903d.entry.js.map} +0 -0
- /package/dist/core/{p-ead0acc3.entry.js.map → p-8908b8e6.entry.js.map} +0 -0
- /package/dist/core/{p-832c7042.entry.js.map → p-8bf1022e.entry.js.map} +0 -0
- /package/dist/core/{p-5237f3ac.entry.js.map → p-97c437bb.entry.js.map} +0 -0
- /package/dist/core/{p-b3509380.entry.js.map → p-c4bf8742.entry.js.map} +0 -0
- /package/dist/core/{p-3cf99186.entry.js.map → p-c6eabd53.entry.js.map} +0 -0
- /package/dist/core/{p-a54eb1d1.entry.js.map → p-d5f8ef77.entry.js.map} +0 -0
- /package/dist/core/{p-cc36abaa.entry.js.map → p-db6d0463.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["icBreadcrumbGroupCss","IcBreadcrumbGroupStyle0","BreadcrumbGroup","constructor","hostRef","this","ADD_CLASS_DELAY","IC_BREADCRUMB","SHOW_BACK_ICON","collapsedBreadcrumbs","resizeObserver","lastParentBreadcrumb","deviceSize","DEVICE_SIZES","XL","backBreadcrumbOnly","collapsed","monochrome","theme","setBreadcrumbTheme","Array","from","el","querySelectorAll","forEach","breadcrumb","setBreadcrumbMonochrome","setBackBreadcrumb","setLastParentCollapsedBackBreadcrumb","revertLastParentCollapsedBreadcrumb","setBackBreadcrumbAttr","classList","add","setAttribute","getLastParentBreadcrumb","allBreadcrumbs","length","setCollapsed","_a","_b","remove","renderCollapsedBreadcrumb","splice","filter","contains","collapsedBreadcrumbWrapper","insertAdjacentElement","clickHandler","setTimeout","addEventListener","transitionendHandler","setFocus","collapsedBreadcrumbEl","undefined","document","createElement","ariaLabel","id","innerText","className","ariaDescribed","append","event","propertyName","target","resizeObserverCallback","currSize","isSmallDevice","S","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","watchBackBreadcrumbHandler","watchCollapsedHandler","watchMonochromeHandler","watchThemeHandler","componentWillLoad","checkResizeObserver","disconnectedCallback","removeEventListener","render","h","Host","key","class"],"sources":["../web-components/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css?tag=ic-breadcrumb-group&encapsulation=shadow","../web-components/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js"],"sourcesContent":[":host {\n display: block;\n}\n\n:host ol {\n display: flex;\n list-style-type: none;\n align-items: center;\n flex-wrap: wrap;\n padding: 0;\n margin: 0;\n}\n\n:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb) {\n display: none;\n}\n\n:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb.show) {\n display: flex;\n}\n\n:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.hide) {\n display: none;\n opacity: 0;\n visibility: hidden;\n}\n\n:host(.ic-breadcrumb-group-collapsed)\n ol\n ::slotted(ic-breadcrumb.visuallyhidden) {\n display: block;\n opacity: 0;\n transition: all var(--ic-easing-transition-slow);\n}\n\n:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.fade) {\n opacity: 1;\n}\n","import { Host, h } from \"@stencil/core\";\nimport { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, } from \"../../utils/helpers\";\n// Added ResizeObserver to find out width of breadcrumbs and parents. Use side navigation long title for ref.\nexport class BreadcrumbGroup {\n constructor() {\n this.ADD_CLASS_DELAY = 50;\n this.IC_BREADCRUMB = \"ic-breadcrumb\";\n this.SHOW_BACK_ICON = \"show-back-icon\";\n this.collapsedBreadcrumbs = [];\n this.resizeObserver = null;\n this.lastParentBreadcrumb = null;\n this.deviceSize = DEVICE_SIZES.XL;\n /**\n * If `true`, display only a single breadcrumb for the parent page with a back icon.\n */\n this.backBreadcrumbOnly = false;\n /**\n * If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed.\n */\n this.collapsed = false;\n /**\n * If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme.\n */\n this.monochrome = false;\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n this.theme = \"inherit\";\n this.setBreadcrumbTheme = () => {\n Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB)).forEach((breadcrumb) => {\n breadcrumb.theme = this.theme;\n });\n };\n this.setBreadcrumbMonochrome = () => {\n Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB)).forEach((breadcrumb) => {\n breadcrumb.monochrome = this.monochrome;\n });\n };\n this.setBackBreadcrumb = () => {\n if (this.backBreadcrumbOnly) {\n this.setLastParentCollapsedBackBreadcrumb();\n }\n else {\n this.revertLastParentCollapsedBreadcrumb();\n }\n };\n this.setBackBreadcrumbAttr = () => {\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.classList.add(\"show\");\n this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"true\");\n }\n };\n this.getLastParentBreadcrumb = () => {\n const allBreadcrumbs = this.el.querySelectorAll(this.IC_BREADCRUMB);\n return allBreadcrumbs.length > 1\n ? allBreadcrumbs[allBreadcrumbs.length - 2]\n : null;\n };\n this.setCollapsed = () => {\n var _a, _b;\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.remove(\"visuallyhidden\");\n breadcrumb.classList.remove(\"fade\");\n });\n if (this.collapsed) {\n this.renderCollapsedBreadcrumb();\n const allBreadcrumbs = Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));\n this.collapsedBreadcrumbs = allBreadcrumbs\n .splice(1, allBreadcrumbs.length - 2)\n .filter((breadcrumb) => !breadcrumb.classList.contains(\"collapsed-breadcrumb-wrapper\"));\n if (!this.backBreadcrumbOnly) {\n this.collapsedBreadcrumbs.forEach((breadcrumb) => breadcrumb.classList.add(\"hide\"));\n }\n if (this.collapsedBreadcrumbWrapper) {\n (_a = allBreadcrumbs[0]) === null || _a === void 0 ? void 0 : _a.insertAdjacentElement(\"afterend\", this.collapsedBreadcrumbWrapper);\n }\n }\n else {\n (_b = this.collapsedBreadcrumbWrapper) === null || _b === void 0 ? void 0 : _b.remove();\n }\n };\n this.clickHandler = () => {\n var _a;\n (_a = this.collapsedBreadcrumbWrapper) === null || _a === void 0 ? void 0 : _a.remove();\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.add(\"visuallyhidden\");\n breadcrumb.classList.remove(\"hide\");\n setTimeout(() => {\n breadcrumb.classList.add(\"fade\");\n }, this.ADD_CLASS_DELAY);\n breadcrumb.addEventListener(\"transitionend\", this.transitionendHandler);\n });\n this.collapsed = false;\n // Set focus to first unhidden breadcrumb\n this.collapsedBreadcrumbs[0].setFocus();\n };\n this.renderCollapsedBreadcrumb = () => {\n if (this.collapsedBreadcrumbEl === undefined) {\n this.collapsedBreadcrumbWrapper = document.createElement(\"ic-breadcrumb\");\n this.collapsedBreadcrumbWrapper.classList.add(\"collapsed-breadcrumb-wrapper\");\n this.collapsedBreadcrumbEl = document.createElement(\"button\");\n const ariaLabel = document.createElement(\"span\");\n ariaLabel.id = \"collapsed-button-label\";\n ariaLabel.innerText = \"Collapsed breadcrumbs\";\n ariaLabel.className = \"hide\";\n this.collapsedBreadcrumbEl.setAttribute(\"aria-labelledby\", ariaLabel.id);\n const ariaDescribed = document.createElement(\"span\");\n ariaDescribed.id = \"collapsed-button-described\";\n ariaDescribed.innerText = \"Select to view collapsed breadcrumbs\";\n ariaDescribed.className = \"hide\";\n this.collapsedBreadcrumbEl.setAttribute(\"aria-describedby\", ariaDescribed.id);\n this.collapsedBreadcrumbEl.id = \"collapsed-ellipsis\";\n this.collapsedBreadcrumbEl.innerText = \"...\";\n this.collapsedBreadcrumbEl.classList.add(\"collapsed-breadcrumb\");\n this.collapsedBreadcrumbEl.addEventListener(\"click\", this.clickHandler);\n this.collapsedBreadcrumbWrapper.append(ariaDescribed);\n this.collapsedBreadcrumbWrapper.append(ariaLabel);\n this.collapsedBreadcrumbWrapper.append(this.collapsedBreadcrumbEl);\n }\n };\n this.transitionendHandler = (event) => {\n if (event.propertyName === \"opacity\") {\n event.target.classList.remove(\"visuallyhidden\");\n }\n };\n this.setLastParentCollapsedBackBreadcrumb = () => {\n this.lastParentBreadcrumb = this.getLastParentBreadcrumb();\n this.setBackBreadcrumbAttr();\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.classList.remove(\"hide\");\n this.lastParentBreadcrumb.classList.add(\"show\");\n }\n };\n this.revertLastParentCollapsedBreadcrumb = () => {\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n if (this.collapsed) {\n this.lastParentBreadcrumb.classList.add(\"hide\");\n }\n }\n };\n this.resizeObserverCallback = (currSize) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n const isSmallDevice = this.deviceSize <= DEVICE_SIZES.S;\n this.el.setAttribute(\"back-breadcrumb-only\", `${isSmallDevice}`);\n if (isSmallDevice) {\n if (this.collapsed) {\n this.setLastParentCollapsedBackBreadcrumb();\n }\n else {\n this.setBackBreadcrumb();\n }\n }\n else {\n const allBreadcrumbs = Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));\n if (this.collapsed && allBreadcrumbs.length > 2) {\n this.revertLastParentCollapsedBreadcrumb();\n this.setCollapsed();\n }\n else {\n allBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n });\n }\n }\n }\n };\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n this.resizeObserver.observe(this.el);\n };\n }\n watchBackBreadcrumbHandler() {\n this.setBackBreadcrumb();\n }\n watchCollapsedHandler() {\n this.setCollapsed();\n }\n watchMonochromeHandler() {\n this.setBreadcrumbMonochrome();\n }\n watchThemeHandler() {\n this.setBreadcrumbTheme();\n }\n componentWillLoad() {\n this.setBreadcrumbTheme();\n this.setBreadcrumbMonochrome();\n if (this.backBreadcrumbOnly) {\n this.setBackBreadcrumb();\n }\n else {\n checkResizeObserver(this.runResizeObserver);\n }\n if (this.collapsed &&\n this.el.querySelectorAll(this.IC_BREADCRUMB).length > 2) {\n if (getCurrentDeviceSize() === DEVICE_SIZES.S) {\n this.setLastParentCollapsedBackBreadcrumb();\n }\n else {\n this.setCollapsed();\n }\n }\n this.lastParentBreadcrumb = this.getLastParentBreadcrumb();\n }\n disconnectedCallback() {\n var _a, _b;\n (_a = this.lastParentBreadcrumb) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"transitionend\", this.transitionendHandler);\n (_b = this.collapsedBreadcrumbEl) === null || _b === void 0 ? void 0 : _b.removeEventListener(\"click\", this.clickHandler);\n }\n render() {\n const { backBreadcrumbOnly, collapsed, theme } = this;\n return (h(Host, { key: 'c39081da4595fa3f6fca4325df9ecc8775201ecc', class: {\n \"ic-breadcrumb-group-back\": backBreadcrumbOnly,\n \"ic-breadcrumb-group-collapsed\": collapsed,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"nav\", { key: 'dffbf2a1a5e324c45e1d902f05eeef3e316c917a', \"aria-label\": \"breadcrumbs\" }, h(\"ol\", { key: '29e18e2d0dfde13eeeec0dd2266b73e11a9b4a84' }, h(\"slot\", { key: 'd6eb3a931fb3a7a8de0104960cfad4e54d6eeeaf' })))));\n }\n static get is() { return \"ic-breadcrumb-group\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-breadcrumb-group.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-breadcrumb-group.css\"]\n };\n }\n static get properties() {\n return {\n \"backBreadcrumbOnly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, display only a single breadcrumb for the parent page with a back icon.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"back-breadcrumb-only\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"collapsed\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"collapsed\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"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.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"deviceSize\": {}\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"backBreadcrumbOnly\",\n \"methodName\": \"watchBackBreadcrumbHandler\"\n }, {\n \"propName\": \"collapsed\",\n \"methodName\": \"watchCollapsedHandler\"\n }, {\n \"propName\": \"monochrome\",\n \"methodName\": \"watchMonochromeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n}\n//# sourceMappingURL=ic-breadcrumb-group.js.map\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["icBreadcrumbGroupCss","IcBreadcrumbGroupStyle0","BreadcrumbGroup","constructor","hostRef","this","ADD_CLASS_DELAY","IC_BREADCRUMB","SHOW_BACK_ICON","collapsedBreadcrumbs","resizeObserver","lastParentBreadcrumb","deviceSize","DEVICE_SIZES","XL","backBreadcrumbOnly","collapsed","monochrome","theme","setBreadcrumbTheme","Array","from","el","querySelectorAll","forEach","breadcrumb","setBreadcrumbMonochrome","setBackBreadcrumb","setLastParentCollapsedBackBreadcrumb","revertLastParentCollapsedBreadcrumb","setBackBreadcrumbAttr","classList","add","setAttribute","getLastParentBreadcrumb","allBreadcrumbs","length","setCollapsed","_a","_b","remove","renderCollapsedBreadcrumb","splice","filter","contains","collapsedBreadcrumbWrapper","insertAdjacentElement","clickHandler","setTimeout","addEventListener","transitionendHandler","setFocus","collapsedBreadcrumbEl","undefined","document","createElement","ariaLabel","id","innerText","className","ariaDescribed","append","event","propertyName","target","resizeObserverCallback","currSize","isSmallDevice","S","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","watchBackBreadcrumbHandler","watchCollapsedHandler","watchMonochromeHandler","watchThemeHandler","componentWillLoad","checkResizeObserver","disconnectedCallback","removeEventListener","render","h","Host","key","class"],"sources":["../web-components/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css?tag=ic-breadcrumb-group&encapsulation=shadow","../web-components/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js"],"sourcesContent":[":host {\n display: block;\n}\n\n:host ol {\n display: flex;\n list-style-type: none;\n align-items: center;\n flex-wrap: wrap;\n padding: 0;\n margin: 0;\n}\n\n:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb) {\n display: none;\n}\n\n:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb.show) {\n display: flex;\n}\n\n:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.hide) {\n display: none;\n opacity: 0;\n visibility: hidden;\n}\n\n:host(.ic-breadcrumb-group-collapsed)\n ol\n ::slotted(ic-breadcrumb.visuallyhidden) {\n display: block;\n opacity: 0;\n transition: all var(--ic-easing-transition-slow);\n}\n\n:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.fade) {\n opacity: 1;\n}\n","import { Host, h } from \"@stencil/core\";\nimport { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, } from \"../../utils/helpers\";\n// Added ResizeObserver to find out width of breadcrumbs and parents. Use side navigation long title for ref.\nexport class BreadcrumbGroup {\n constructor() {\n this.ADD_CLASS_DELAY = 50;\n this.IC_BREADCRUMB = \"ic-breadcrumb\";\n this.SHOW_BACK_ICON = \"show-back-icon\";\n this.collapsedBreadcrumbs = [];\n this.resizeObserver = null;\n this.lastParentBreadcrumb = null;\n this.deviceSize = DEVICE_SIZES.XL;\n /**\n * If `true`, display only a single breadcrumb for the parent page with a back icon.\n */\n this.backBreadcrumbOnly = false;\n /**\n * If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed.\n */\n this.collapsed = false;\n /**\n * If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme.\n */\n this.monochrome = false;\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n this.theme = \"inherit\";\n this.setBreadcrumbTheme = () => {\n Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB)).forEach((breadcrumb) => {\n breadcrumb.theme = this.theme;\n });\n };\n this.setBreadcrumbMonochrome = () => {\n Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB)).forEach((breadcrumb) => {\n breadcrumb.monochrome = this.monochrome;\n });\n };\n this.setBackBreadcrumb = () => {\n if (this.backBreadcrumbOnly) {\n this.setLastParentCollapsedBackBreadcrumb();\n }\n else {\n this.revertLastParentCollapsedBreadcrumb();\n }\n };\n this.setBackBreadcrumbAttr = () => {\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.classList.add(\"show\");\n this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"true\");\n }\n };\n this.getLastParentBreadcrumb = () => {\n const allBreadcrumbs = this.el.querySelectorAll(this.IC_BREADCRUMB);\n return allBreadcrumbs.length > 1\n ? allBreadcrumbs[allBreadcrumbs.length - 2]\n : null;\n };\n this.setCollapsed = () => {\n var _a, _b;\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.remove(\"visuallyhidden\");\n breadcrumb.classList.remove(\"fade\");\n });\n if (this.collapsed) {\n this.renderCollapsedBreadcrumb();\n const allBreadcrumbs = Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));\n this.collapsedBreadcrumbs = allBreadcrumbs\n .splice(1, allBreadcrumbs.length - 2)\n .filter((breadcrumb) => !breadcrumb.classList.contains(\"collapsed-breadcrumb-wrapper\"));\n if (!this.backBreadcrumbOnly) {\n this.collapsedBreadcrumbs.forEach((breadcrumb) => breadcrumb.classList.add(\"hide\"));\n }\n if (this.collapsedBreadcrumbWrapper) {\n (_a = allBreadcrumbs[0]) === null || _a === void 0 ? void 0 : _a.insertAdjacentElement(\"afterend\", this.collapsedBreadcrumbWrapper);\n }\n }\n else {\n (_b = this.collapsedBreadcrumbWrapper) === null || _b === void 0 ? void 0 : _b.remove();\n }\n };\n this.clickHandler = () => {\n var _a;\n (_a = this.collapsedBreadcrumbWrapper) === null || _a === void 0 ? void 0 : _a.remove();\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.add(\"visuallyhidden\");\n breadcrumb.classList.remove(\"hide\");\n setTimeout(() => {\n breadcrumb.classList.add(\"fade\");\n }, this.ADD_CLASS_DELAY);\n breadcrumb.addEventListener(\"transitionend\", this.transitionendHandler);\n });\n this.collapsed = false;\n // Set focus to first unhidden breadcrumb\n this.collapsedBreadcrumbs[0].setFocus();\n };\n this.renderCollapsedBreadcrumb = () => {\n if (this.collapsedBreadcrumbEl === undefined) {\n this.collapsedBreadcrumbWrapper = document.createElement(\"ic-breadcrumb\");\n this.collapsedBreadcrumbWrapper.classList.add(\"collapsed-breadcrumb-wrapper\");\n this.collapsedBreadcrumbEl = document.createElement(\"button\");\n const ariaLabel = document.createElement(\"span\");\n ariaLabel.id = \"collapsed-button-label\";\n ariaLabel.innerText = \"Collapsed breadcrumbs\";\n ariaLabel.className = \"hide\";\n this.collapsedBreadcrumbEl.setAttribute(\"aria-labelledby\", ariaLabel.id);\n const ariaDescribed = document.createElement(\"span\");\n ariaDescribed.id = \"collapsed-button-described\";\n ariaDescribed.innerText = \"Select to view collapsed breadcrumbs\";\n ariaDescribed.className = \"hide\";\n this.collapsedBreadcrumbEl.setAttribute(\"aria-describedby\", ariaDescribed.id);\n this.collapsedBreadcrumbEl.id = \"collapsed-ellipsis\";\n this.collapsedBreadcrumbEl.innerText = \"...\";\n this.collapsedBreadcrumbEl.classList.add(\"collapsed-breadcrumb\");\n this.collapsedBreadcrumbEl.addEventListener(\"click\", this.clickHandler);\n this.collapsedBreadcrumbWrapper.append(ariaDescribed);\n this.collapsedBreadcrumbWrapper.append(ariaLabel);\n this.collapsedBreadcrumbWrapper.append(this.collapsedBreadcrumbEl);\n }\n };\n this.transitionendHandler = (event) => {\n if (event.propertyName === \"opacity\") {\n event.target.classList.remove(\"visuallyhidden\");\n }\n };\n this.setLastParentCollapsedBackBreadcrumb = () => {\n this.lastParentBreadcrumb = this.getLastParentBreadcrumb();\n this.setBackBreadcrumbAttr();\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.classList.remove(\"hide\");\n this.lastParentBreadcrumb.classList.add(\"show\");\n }\n };\n this.revertLastParentCollapsedBreadcrumb = () => {\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n if (this.collapsed) {\n this.lastParentBreadcrumb.classList.add(\"hide\");\n }\n }\n };\n this.resizeObserverCallback = (currSize) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n const isSmallDevice = this.deviceSize <= DEVICE_SIZES.S;\n this.el.setAttribute(\"back-breadcrumb-only\", `${isSmallDevice}`);\n if (isSmallDevice) {\n if (this.collapsed) {\n this.setLastParentCollapsedBackBreadcrumb();\n }\n else {\n this.setBackBreadcrumb();\n }\n }\n else {\n const allBreadcrumbs = Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));\n if (this.collapsed && allBreadcrumbs.length > 2) {\n this.revertLastParentCollapsedBreadcrumb();\n this.setCollapsed();\n }\n else {\n allBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n });\n }\n }\n }\n };\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n this.resizeObserver.observe(this.el);\n };\n }\n watchBackBreadcrumbHandler() {\n this.setBackBreadcrumb();\n }\n watchCollapsedHandler() {\n this.setCollapsed();\n }\n watchMonochromeHandler() {\n this.setBreadcrumbMonochrome();\n }\n watchThemeHandler() {\n this.setBreadcrumbTheme();\n }\n componentWillLoad() {\n this.setBreadcrumbTheme();\n this.setBreadcrumbMonochrome();\n if (this.backBreadcrumbOnly) {\n this.setBackBreadcrumb();\n }\n else {\n checkResizeObserver(this.runResizeObserver);\n }\n if (this.collapsed &&\n this.el.querySelectorAll(this.IC_BREADCRUMB).length > 2) {\n if (getCurrentDeviceSize() === DEVICE_SIZES.S) {\n this.setLastParentCollapsedBackBreadcrumb();\n }\n else {\n this.setCollapsed();\n }\n }\n this.lastParentBreadcrumb = this.getLastParentBreadcrumb();\n }\n disconnectedCallback() {\n var _a, _b;\n (_a = this.lastParentBreadcrumb) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"transitionend\", this.transitionendHandler);\n (_b = this.collapsedBreadcrumbEl) === null || _b === void 0 ? void 0 : _b.removeEventListener(\"click\", this.clickHandler);\n }\n render() {\n const { backBreadcrumbOnly, collapsed, theme } = this;\n return (h(Host, { key: 'e9547e6fce74b57f2a3d7904bdca580c59abf881', class: {\n \"ic-breadcrumb-group-back\": backBreadcrumbOnly,\n \"ic-breadcrumb-group-collapsed\": collapsed,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"nav\", { key: '56fd90771323680169a7e2ff757c534f499bda48', \"aria-label\": \"breadcrumbs\" }, h(\"ol\", { key: '2817e0c715c94937436a41222f86a0e5e6b9cc92' }, h(\"slot\", { key: '137e284689752e6256c39ecc19988aafd3e49942' })))));\n }\n static get is() { return \"ic-breadcrumb-group\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-breadcrumb-group.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-breadcrumb-group.css\"]\n };\n }\n static get properties() {\n return {\n \"backBreadcrumbOnly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, display only a single breadcrumb for the parent page with a back icon.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"back-breadcrumb-only\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"collapsed\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"collapsed\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"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.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"deviceSize\": {}\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"backBreadcrumbOnly\",\n \"methodName\": \"watchBackBreadcrumbHandler\"\n }, {\n \"propName\": \"collapsed\",\n \"methodName\": \"watchCollapsedHandler\"\n }, {\n \"propName\": \"monochrome\",\n \"methodName\": \"watchMonochromeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n}\n//# sourceMappingURL=ic-breadcrumb-group.js.map\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as t,c as i,h as e,H as s,g as r}from"./p-8e4e97b4.js";import{b as h,q as a,t as o,u as n,r as c,v as l,w as d,o as u,x as f}from"./p-0f22f41e.js";import{C as p}from"./p-dd7450fb.js";const b=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><title>clock-outline</title><path d="M12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z" /></svg>`;const v='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--ic-input-label-helpertext-padding:var(--ic-space-xs);--input-bg-color:var(--ic-time-picker-field-background);--ic-input-label-text-color:var(--ic-time-picker-label);--ic-input-label-helper-text-color:var(--ic-time-picker-subtitle);--border-color:var(--ic-time-picker-time-field-border-default);--border-color-disabled:var(--ic-time-picker-border-disabled);--border-color-hover:var(--ic-time-picker-time-field-border-hover);--border-color-pressed:var(--ic-time-picker-time-field-border-pressed);--border-error-color:var(--ic-time-picker-border-error);--border-error-color-hover:var(--ic-time-picker-border-error-hover);--border-error-color-pressed:var(--ic-time-picker-border-error-pressed);--border-success-color:var(--ic-time-picker-border-success);--border-success-color-hover:var(--ic-time-picker-border-success-hover);--border-success-color-pressed:var(--ic-time-picker-border-success-pressed);--border-warning-color:var(--ic-time-picker-border-warning);--border-warning-color-hover:var(--ic-time-picker-border-warning-hover);--border-warning-color-pressed:var(--ic-time-picker-border-warning-pressed);--input-width:calc((4 * var(--ic-space-xxl)) + var(--ic-space-xxs))}:host(.ic-time-input-disabled){--ic-input-label-text-color:var(--ic-time-picker-label-disabled);--ic-input-label-helper-text-color:var(--ic-time-picker-subtitle-disabled)}:host(.ic-time-input-disabled) input{color:var(--ic-time-picker-time-text-disabled)}:host(.ic-time-input-large){--input-width:calc(\n (4 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-lg)\n )}:host(.ic-time-input-small){--input-width:calc(\n (3 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-xl)\n )}input{border:0;height:100%;padding:0;outline:none;background:none;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;color:var(--ic-time-picker-time-text-default);caret-color:var(--ic-time-picker-typing-cursor)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none}input:-webkit-autofill{box-shadow:0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;-webkit-text-fill-color:var(--ic-time-picker-time-text-default) !important}input::-moz-placeholder{color:var(--ic-time-picker-field-placeholder-text)}input::placeholder{color:var(--ic-time-picker-field-placeholder-text)}ic-input-component-container{cursor:text}ic-input-component-container .focus-indicator{padding:var(--ic-space-xxxs) var(--ic-space-xs);align-items:center}.time-inputs{color:var(--ic-time-picker-field-placeholder-text)}.hour-input{width:1.438rem}.minute-input{width:1.813rem}.second-input,.second-input.fit-to-value{width:2.313rem}.fit-to-value{width:1.25rem}.sr-only{position:absolute;left:-9999px}.input-container{width:100%;display:flex;justify-content:space-between;align-items:center;position:relative}.action-buttons{display:flex;align-items:center}.show-clock-button-wrapper{display:flex;justify-content:center;align-items:center}.clear-button,.clock-button{border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);margin:0}.clear-button.hidden{display:none}.clear-button:focus,.clock-button:focus,.clear-button:active,.clock-button:active{background-color:var(--ic-color-focus-inner) !important;box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;border-radius:0.25rem}.clock-button:focus,.clock-button:active{--ic-button-tertiary-text-active:var(--ic-atoms-input-clear-button-focus);--ic-button-tertiary-text-hover-active:var(\n --ic-atoms-input-clear-button-focus\n );--ic-button-tertiary-text-pressed-active:var(\n --ic-atoms-input-clear-button-focus\n )}.clear-button:focus,.clock-button:focus,.clear-button:active *,.clock-button:active *{fill:var(--ic-atoms-input-clear-button-focus)}.clear-button svg{color:var(--ic-time-picker-clear-icon)}.clear-button:focus svg{color:var(--ic-atoms-input-clear-button-focus)}.divider{margin:0 var(--ic-space-xxs);width:var(--ic-space-1px);background-color:var(--ic-atoms-input-divider);border-radius:var(--ic-space-1px)}.divider.small{height:var(--ic-space-md)}.divider.medium{height:calc(var(--ic-space-sm) + var(--ic-space-xs))}.divider.large{height:var(--ic-space-lg)}ic-input-validation{--ic-input-validation-status-text-color:var(--ic-time-picker-status-text);--ic-input-validation-error:var(--ic-time-picker-icon-error);--ic-input-validation-warning-icon-color:var(--ic-time-picker-icon-warning);--ic-input-validation-success-icon-color:var(--ic-time-picker-icon-success)}@media (forced-colors: active){.clear-button svg{color:currentColor}}';const m=v;let k=0;const g=class{constructor(s){t(this,s);this.clockButtonClicked=i(this,"clockButtonClicked",7);this.icBlur=i(this,"icBlur",7);this.icChange=i(this,"icChange",7);this.icFocus=i(this,"icFocus",7);this.DEFAULT_TIME_FORMAT="HH:MM:SS";this.ARIA_INVALID="aria-invalid";this.ARIA_LABEL="aria-label";this.ARIA_LABELLED_BY="aria-labelledby";this.EVENT_OBJECT_STRING="[object Event]";this.FIT_TO_VALUE="fit-to-value";this.initialValue=this.value;this.inputsInOrder=[];this.isValidHour=true;this.isValidMinute=true;this.isValidSecond=true;this.isValidTime=true;this.isTimeSetFromKeyboardEvent=false;this.previousSelectedTime=null;this.selectedTime=null;this.externalSetTime=false;this.clearInput=false;this.maxTime=null;this.minTime=null;this.clockFocused=false;this.clearButtonFocused=false;this.removeLabelledBy=false;this.hour="";this.minute="";this.second="";this.disabled=false;this.disableTimes=[];this.emitTimePartChange=false;this.hideHelperText=false;this.hideLabel=false;this.inputId=`ic-time-input-${k++}`;this.invalidTimeMessage="Please enter a valid time.";this.max="";this.min="";this.name=this.inputId;this.required=false;this.showClearButton=true;this.showClockButton=false;this.size="medium";this.theme="inherit";this.timeFormat=this.DEFAULT_TIME_FORMAT;this.timePeriod="24";this.value="";this.validationStatus="";this.validationText="";this.setInputPasteValue=(t,i)=>{if(t){const e=t;e.value=i;e.classList.add(this.FIT_TO_VALUE)}};this.parseTime=t=>{if(!t)return null;if(t instanceof Date)return t;const i=t.split(":");if(i.length>=2){const t=new Date;t.setHours(+i[0],+i[1],i[2]?+i[2]:0,0);return t}return null};this.isHHMMFormat=()=>this.timeFormat==="HH:MM";this.isKeyboardOrEvent=t=>Object.prototype.toString.call(t)===this.EVENT_OBJECT_STRING||Object.prototype.toString.call(t)==="[object KeyboardEvent]";this.setTimeValidity=()=>{const t=0;const i=this.timePeriod==="12"?11:23;if(!h(this.hour)){this.isValidHour=+this.hour>=t&&+this.hour<=i}else{this.isValidHour=true}if(!h(this.minute)){this.isValidMinute=+this.minute>=0&&+this.minute<=59}else{this.isValidMinute=true}if(!this.isHHMMFormat()){if(!h(this.second)){this.isValidSecond=+this.second>=0&&+this.second<=59}else{this.isValidSecond=true}}else{this.isValidSecond=true}};this.setInputValue=(t,i=false)=>{const e=i?"":t.value;if(t===this.hourInputEl){this.hour=e}else if(t===this.minuteInputEl){this.minute=e}else if(t===this.secondInputEl&&!this.isHHMMFormat()){this.second=e}this.setValidationMessage()};this.setPreventInput=(t,i)=>{if(t===this.hourInputEl){this.preventHourInput=i}else if(t===this.minuteInputEl){this.preventMinuteInput=i}else if(t===this.secondInputEl){this.preventSecondInput=i}};this.setValidationMessage=()=>{this.maxTime=this.parseTime(this.max);this.minTime=this.parseTime(this.min);this.setTimeValidity();let t="";let i=false;if(!h(this.hour)&&!h(this.minute)&&(this.isHHMMFormat()||!h(this.second))){this.selectedTime=this.convertToTime(this.hour,this.minute,this.isHHMMFormat()?"00":this.second);this.isValidTime=!!this.selectedTime&&this.selectedTime.getHours()==+this.hour&&this.selectedTime.getMinutes()==+this.minute&&(this.isHHMMFormat()||this.selectedTime.getSeconds()==+this.second);if(this.selectedTime&&Array.isArray(this.disableTimes)&&this.disableTimes.length>0){i=this.disableTimes.some((t=>{if(typeof t==="object"&&t!==null&&"start"in t&&"end"in t){const i=this.parseTime(t.start);const e=this.parseTime(t.end);if(i&&e){return this.selectedTime>=i&&this.selectedTime<=e}return false}const i=this.parseTime(t);return i&&i.getHours()===this.selectedTime.getHours()&&i.getMinutes()===this.selectedTime.getMinutes()&&i.getSeconds()===this.selectedTime.getSeconds()}));if(i){this.isValidTime=false;t=this.invalidTimeMessage}}if(this.selectedTime&&!i){if(this.minTime&&this.selectedTime<this.minTime){this.isValidTime=false;t=`Please enter a time after ${this.formatTime(this.minTime)}.`}else if(this.maxTime&&this.selectedTime>this.maxTime){this.isValidTime=false;t=`Please enter a time before ${this.formatTime(this.maxTime)}.`}}if(!this.isValidTime){this.inputsInOrder.forEach((t=>t.setAttribute(this.ARIA_INVALID,"true")))}else{this.inputsInOrder.forEach((t=>t.removeAttribute(this.ARIA_INVALID)))}}else{this.selectedTime=null}if(!(this.isValidHour&&this.isValidMinute&&this.isValidSecond&&this.isValidTime)){this.invalidTimeText=t||this.invalidTimeMessage}else{this.invalidTimeText=""}};this.formatTime=t=>{const i=t.getHours().toString().padStart(2,"0");const e=t.getMinutes().toString().padStart(2,"0");const s=t.getSeconds().toString().padStart(2,"0");return this.isHHMMFormat()?`${i}:${e}`:`${i}:${e}:${s}`};this.handleInput=t=>{const i=t;const e=t.target;if(e!==this.hourInputEl){if(i.inputType!=="deleteContentBackward"&&!this.preventAutoFormatting){if(e.value.length===1&&+e.value>=6&&+e.value<=9){this.setInputValue(e);this.notifyScreenReader(e);this.moveToNextInput(e)}if(e.value.length===2){this.setInputValue(e);this.setPreventInput(e,true);this.notifyScreenReader(e);this.moveToNextInput(e)}else{this.setPreventInput(e,false)}}else if(this.preventAutoFormatting){if(e.value.length===2&&!this.isKeyboardOrEvent(t)){this.setInputValue(e);this.setPreventInput(e,true);this.moveToNextInput(e)}else{this.setInputValue(e)}}if(e.value.length!==2){this.setPreventInput(e,false)}}else{if(e.value.length===2){this.setInputValue(e);if(Object.prototype.toString.call(t)!==this.EVENT_OBJECT_STRING){this.moveToNextInput(e)}this.setPreventInput(e,true)}else{this.setInputValue(e,true);this.setPreventInput(e,false)}}this.setFitToValueStyling(e);if(e.value.length===0){this.setInputValue(e,true);this.setValidationMessage()}this.notifyScreenReader(e)};this.handleKeyDown=(t,i)=>{var e;const s=t.target;const r=(e=t.key)===null||e===void 0?void 0:e.toLowerCase();const h=/-?\d*\.?\d+(e[-+]?\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;if(!h.test(r)&&!((t.ctrlKey||t.metaKey)&&(r==="v"||r==="c"))){t.preventDefault()}switch(r){case":":case"arrowright":t.preventDefault();this.moveToNextInput(s);break;case"arrowleft":t.preventDefault();this.moveToPreviousInput(s);break;case"arrowup":case"arrowdown":this.preventAutoFormatting=true;this.handleUpDownArrowKeyPress(s,t);break;case"backspace":if(s.value.length===0){t.preventDefault();this.moveToPreviousInput(s)}break}this.preventInput(t,i);this.isTimeSetFromKeyboardEvent=true};this.handleFocus=t=>{const i=t.target;i.select()};this.handleBlur=t=>{const i=t.target;if(i){this.autocompleteInput(i)}};this.handleUpDownArrowKeyPress=(t,i)=>{let e=0;let s=59;if(t===this.hourInputEl){e=0;s=this.timePeriod==="12"?11:23}let r=+t.value;if(i.key==="ArrowUp"){r=r+1;if(r>s)r=e;t.value=r.toString().padStart(2,"0");this.notifyScreenReader(t)}if(i.key==="ArrowDown"){r=r-1;if(r<e)r=s;t.value=r.toString().padStart(2,"0");this.notifyScreenReader(t)}this.setInputValue(t);this.setFitToValueStyling(t)};this.handleTimeChange=t=>{if(t||this.selectedTime!==this.previousSelectedTime){if(this.value){this.inputsInOrder.forEach((t=>{t.classList.add(this.FIT_TO_VALUE)}))}if(this.hour&&this.minute&&(this.isHHMMFormat()||this.second)&&this.invalidTimeText===""){this.setValueAndEmitChange(this.selectedTime);this.notifyScreenReaderSelectedTime()}else if(!(this.selectedTime===null&&this.previousSelectedTime===null)&&this.selectedTimeInfoEl){this.setValueAndEmitChange(null);this.selectedTimeInfoEl.textContent=""}this.previousSelectedTime=this.selectedTime;if(!this.isTimeSetFromKeyboardEvent){this.updateInputValues(this.hour,this.minute,this.second)}}};this.setValueAndEmitChange=t=>{if(this.value!==t){this.emitIcChange(t);this.value=t}};this.emitIcChange=t=>{this.selectedTime=t;this.icChange.emit({value:t,timeObject:{hour:this.hour===""?null:this.hour,minute:this.minute===""?null:this.minute,second:this.second===""?null:this.second}})};this.setTime=t=>{if(t===null||t===""||t===undefined){if(this.hour)this.hour="";if(this.minute)this.minute="";if(this.second)this.second="";this.inputsInOrder.forEach((t=>{t.classList.remove(this.FIT_TO_VALUE);this.setPreventInput(t,false)}));this.handleTimeChange(true)}else{if(typeof t==="string"){const i=t.match(/^(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,3}))?Z?$/);if(i){this.hour=i[1];this.minute=i[2];this.second=i[3]}else{const i=t.split(":");this.hour=i[0]||"";this.minute=i[1]||"";this.second=i[2]||""}}else if(t instanceof Date){this.hour=t.getHours().toString().padStart(2,"0");this.minute=t.getMinutes().toString().padStart(2,"0");this.second=t.getSeconds().toString().padStart(2,"0")}}this.setValidationMessage()};this.setAriaInvalid=(t,i,e)=>{var s,r,h;if(this.inputsInOrder.length){this.inputsInOrder.forEach((t=>{t.removeAttribute(this.ARIA_INVALID)}));if(!t){(s=this.hourInputEl)===null||s===void 0?void 0:s.setAttribute(this.ARIA_INVALID,"true")}if(!i){(r=this.minuteInputEl)===null||r===void 0?void 0:r.setAttribute(this.ARIA_INVALID,"true")}if(!e){(h=this.secondInputEl)===null||h===void 0?void 0:h.setAttribute(this.ARIA_INVALID,"true")}if(!(t&&i&&e)){this.inputsInOrder.forEach((t=>{t.setAttribute(this.ARIA_INVALID,"true")}))}}};this.handleClear=()=>{this.clearInput=true;if(this.hourInputEl){this.hourInputEl.value=""}if(this.minuteInputEl){this.minuteInputEl.value=""}if(!this.isHHMMFormat()&&this.secondInputEl){this.secondInputEl.value=""}this.hour="";this.minute="";this.second="";this.handleTimeChange(true);this.inputsInOrder.forEach((t=>{t.classList.remove(this.FIT_TO_VALUE);this.setPreventInput(t,false)}));this.clearInput=false;this.isTimeSetFromKeyboardEvent=false;this.setValidationMessage();this.invalidTimeText="";if(this.hourInputEl){this.hourInputEl.focus()}};this.notifyScreenReaderSelectedTime=()=>{if(this.selectedTime&&this.selectedTimeInfoEl){if(this.isHHMMFormat()){this.selectedTimeInfoEl.textContent=`Selected time: ${this.selectedTime.getHours().toString().padStart(2,"0")}:${this.selectedTime.getMinutes().toString().padStart(2,"0")}`}else{this.selectedTimeInfoEl.textContent=`Selected time: ${this.selectedTime.getHours().toString().padStart(2,"0")}:${this.selectedTime.getMinutes().toString().padStart(2,"0")}:${this.selectedTime.getSeconds().toString().padStart(2,"0")}`}}};this.setFitToValueStyling=t=>{if(t.value){t.classList.add(this.FIT_TO_VALUE)}else{t.classList.remove(this.FIT_TO_VALUE)}};this.handleHostBlur=()=>{this.removeLabelledBy=false;this.icBlur.emit({value:this.selectedTime})};this.handleHostFocus=()=>{var t,i;if((i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.activeElement)===null||i===void 0?void 0:i.id.match(/(hour|minute|second)-input$/)){this.removeLabelledBy=false}else{this.removeLabelledBy=true}this.icFocus.emit({value:this.selectedTime})};this.handleFormReset=()=>{this.setTime(this.initialValue);this.setValidationMessage();this.handleTimeChange(false)};this.preventInput=(t,i)=>{const e=t.key;const s=t.target;let r;if(s){r=s.value.substring(s.selectionStart||0,s.selectionEnd||undefined)}if(e==="e"||e==="."||e==="-"||t.key>="0"&&t.key<="9"&&i&&!r){t.preventDefault()}};this.moveToNextInput=t=>{var i;this.preventAutoFormatting=false;(i=this.inputsInOrder[this.inputsInOrder.findIndex((i=>i===t))+1])===null||i===void 0?void 0:i.focus()};this.moveToPreviousInput=t=>{var i;this.preventAutoFormatting=false;(i=this.inputsInOrder[this.inputsInOrder.findIndex((i=>i===t))-1])===null||i===void 0?void 0:i.focus()};this.autocompleteInput=t=>{const i=t.value;if(i.length===1){t.value=`0${i}`}if(t.value){this.setInputValue(t)}};this.convertToTime=(t,i,e)=>{if(!h(t)&&!h(i)&&(this.isHHMMFormat()||!h(e))){const s=new Date;s.setHours(+t,+i,this.isHHMMFormat()?0:+e,0);return s}else{return null}};this.setInputsInOrder=()=>{var t;this.inputsInOrder=[];const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("input");if(i){i.forEach((t=>this.inputsInOrder.push(t)))}};this.updateInputValues=(t,i,e)=>{if(this.hourInputEl&&this.minuteInputEl&&this.secondInputEl){this.hourInputEl.value=t;this.minuteInputEl.value=i;this.secondInputEl.value=e}};this.removeAriaLabelledBy=()=>{var t;(t=this.inputCompContainerEl)===null||t===void 0?void 0:t.removeAttribute(this.ARIA_LABELLED_BY)};this.setAriaLabelledBy=()=>{var t,i,e,s;if(this.disabled&&((t=this.inputCompContainerEl)===null||t===void 0?void 0:t.getAttribute(this.ARIA_LABELLED_BY))){this.removeAriaLabelledBy();return}if(this.disabled){return}const r=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("label");const o=`${this.inputId}-label`;if(r!==null&&r!==undefined){r.id=o}const n=!h(this.validationStatus)||!h(this.invalidTimeText);const c=`${(e=r===null||r===void 0?void 0:r.id)!==null&&e!==void 0?e:""} ${this.screenReaderInfoId} ${a(this.el,this.inputId,this.helperText!==""&&this.helperText!==this.defaultHelperText,n)} ${this.selectedTime?this.selectedTimeInfoId:""} ${this.assistiveHintId}`;(s=this.inputCompContainerEl)===null||s===void 0?void 0:s.setAttribute(this.ARIA_LABELLED_BY,c)};this.getInputsInOrder=()=>{const t=this.timeFormat.split(":");return t.map((t=>{switch(t.substring(0,1)){case"H":return e("input",{class:"hour-input",id:"hour-input",ref:t=>this.hourInputEl=t,"aria-label":"hour",placeholder:"HH",disabled:this.disabled,inputmode:"number",pattern:"[0-9]*",onPaste:this.handlePaste,onKeyDown:t=>this.handleKeyDown(t,this.preventHourInput)});case"M":return e("input",{id:"minute-input",class:"minute-input",ref:t=>this.minuteInputEl=t,"aria-label":"minute",placeholder:"MM",disabled:this.disabled,inputmode:"number",pattern:"[0-9]*",onPaste:this.handlePaste,onKeyDown:t=>this.handleKeyDown(t,this.preventMinuteInput)});case"S":if(!this.isHHMMFormat()){return e("input",{id:"second-input",class:"second-input",ref:t=>this.secondInputEl=t,"aria-label":"second",placeholder:"SS",disabled:this.disabled,inputmode:"number",pattern:"[0-9]*",onPaste:this.handlePaste,onKeyDown:t=>this.handleKeyDown(t,this.preventSecondInput)})}return null;default:return null}}))};this.getDescOfInputsOrder=()=>"hour, minute, and second";this.getScreenReaderInfo=t=>{let i="";if(this.required){i+="required"}if(t===n.Error){i+=" invalid data"}return i===""?"":i+", "};this.notifyScreenReader=t=>{var i;const e=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("#live-region");if(e){e.textContent=`${t.value}, ${t.getAttribute(this.ARIA_LABEL)}`}};this.handlePaste=t=>{var i;t.preventDefault();const e=((i=t.clipboardData)===null||i===void 0?void 0:i.getData("Text"))||"";const s=this.isPastedStringTimeValid(e);this.setPastedValueAndValidation(s,e,t)};this.handleClearFocus=()=>{this.removeLabelledBy=true;this.clearButtonFocused=true;this.isTimeSetFromKeyboardEvent=true};this.handleClearBlur=t=>{this.clearButtonFocused=false;this.isTimeSetFromKeyboardEvent=true;const i=t.relatedTarget;if((i===null||i===void 0?void 0:i.id)==="clock-button"){this.removeLabelledBy=false;return}if(i===null||i===void 0?void 0:i.id.match(/(minute|second)-input$/)){this.removeLabelledBy=false;return}this.removeLabelledBy=true};this.handleClockFocus=()=>{this.clockFocused=true};this.handleClockBlur=()=>{this.clockFocused=false};this.isPastedStringTimeValid=t=>{if(this.isHHMMFormat()){if(/^\d{2}:\d{2}$/.test(t)){return t}}else{if(/^\d{2}:\d{2}:\d{2}$/.test(t)){return t}if(/^\d{2}:\d{2}:\d{2}Z$/.test(t)){return t.replace("Z","")}const i=t.match(/T(\d{2}:\d{2}:\d{2})/);if(i){return i[1]}}return false};this.setPastedValueAndValidation=(t,i,e)=>{if(t){const i=t.split(":");this.inputsInOrder.forEach(((t,e)=>{t.classList.add(this.FIT_TO_VALUE);const s=i[e]||"";t.value=s.slice(0,2);this.setInputValue(t);this.autocompleteInput(t)}));if(this.isHHMMFormat()&&this.second!==""){this.second=""}}else{const t=i.trim();if((t.length===1||t.length===2)&&o(t)){this.setInputPasteValue(e.target,t);this.setInputValue(e.target)}else{this.invalidTimeText=`Please paste a valid ${e.target.getAttribute(this.ARIA_LABEL)}`;this.validationStatus=n.Error}}}}watchInputHandler(){if(this.emitTimePartChange&&!this.externalSetTime&&!this.clearInput&&!(this.hour&&this.minute&&this.second)&&this.selectedTime===null){this.emitIcChange(this.selectedTime)}}watchDisabledHandler(){c(this.disabled,this.el)}watchMaxHandler(){this.maxTime=this.parseTime(this.max)}watchMinHandler(){this.minTime=this.parseTime(this.min)}watchRequiredHandler(){var t,i;const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("label");if(this.required){const t=document.createElement("span");t.setAttribute("id","asterisk-span");t.setAttribute("aria-hidden","true");t.textContent=" *";e===null||e===void 0?void 0:e.appendChild(t)}else{const t=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("#asterisk-span");if(t){t.remove()}}}disconnectedCallback(){l(this.el,this.handleFormReset)}componentWillLoad(){this.defaultHelperText=`Use format ${this.timeFormat}`;if(h(this.helperText))this.helperText=this.defaultHelperText;if(this.value){this.externalSetTime=true;this.setTime(this.value)}this.screenReaderInfoId=`${this.inputId}-screen-reader-info`;this.assistiveHintId=`${this.inputId}-assistive-hint`;this.selectedTimeInfoId=`${this.inputId}-selected-time-info`;d(this.el,this.handleFormReset);c(this.disabled,this.el)}componentDidLoad(){this.setInputsInOrder();u([{prop:this.label,propName:"label"}],"Time Input");if(this.value){this.updateInputValues(this.hour,this.minute,this.second);this.inputsInOrder.forEach((t=>{t.classList.add(this.FIT_TO_VALUE)}))}this.setAriaInvalid(this.isValidHour,this.isValidMinute,this.isValidSecond);if(this.value){this.notifyScreenReaderSelectedTime()}this.inputsInOrder.forEach((t=>{t.addEventListener("input",this.handleInput);t.addEventListener("focus",this.handleFocus);t.addEventListener("blur",this.handleBlur)}));this.watchRequiredHandler()}componentWillUpdate(){if(h(this.helperText))this.helperText=this.defaultHelperText;if(!this.isTimeSetFromKeyboardEvent)this.setTime(this.value);this.setAriaInvalid(this.isValidHour,this.isValidMinute,this.isValidSecond);this.handleTimeChange(false);this.isTimeSetFromKeyboardEvent=false}componentDidRender(){if(this.removeLabelledBy){this.removeAriaLabelledBy();return}this.setAriaLabelledBy()}async getTime(){return this.selectedTime}async triggerIcChange(t){this.externalSetTime=true;this.setTime(t);this.emitIcChange(t);this.externalSetTime=false}render(){const{inputId:t,label:i,disabled:r,helperText:a,hideHelperText:o,hideLabel:c,showClearButton:l,showClockButton:d,size:u,theme:v}=this;const m=!h(this.validationStatus);const k=m?this.validationStatus:!h(this.invalidTimeText)?n.Error:"";const g=`Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;f(true,this.el,this.name,this.convertToTime(this.hour,this.minute,this.second),this.disabled);const w=!!(l&&!(h(this.hour)&&h(this.minute)&&h(this.second)));return e(s,{key:"cf8b05ab0ccc0a0a779296e4dd3ba52375547b13",class:{[`ic-theme-${v}`]:v!=="inherit",[`ic-time-input-disabled`]:r,[`ic-time-input-${u}`]:true},onBlur:this.handleHostBlur,onFocus:this.handleHostFocus},e("ic-input-container",{key:"b104968d5b191f040358a7e800f11cb6dd036407",disabled:r},!(c&&o)&&e("ic-input-label",{key:"fa0eaeef4aab6aef24b830e466ba87d68eb84b84",for:t,label:i,hideLabel:c,helperText:!o?a:"",disabled:r},e("slot",{key:"e4548928534459ff788ff576483b560cf90fed53",name:"helper-text",slot:"helper-text"})),e("span",{key:"6f119c460880a9adb8661309c3a59cfee061ae7c",id:this.screenReaderInfoId,class:"sr-only","aria-hidden":"true"},this.getScreenReaderInfo(k),c&&`${i}\n`,o&&`${a}\n`,`${this.defaultHelperText}.`),e("span",{key:"bd5ce20dab45d2514cd4219eee0d1645596e5e6e",id:this.assistiveHintId,class:"sr-only","aria-hidden":"true"},g),e("span",{key:"e3d4a1e518f7bcb1b35ee065b5f038f9f6f3ffe7",id:"live-region","aria-live":"assertive",class:"sr-only"}),e("ic-input-component-container",{key:"396b05aa89aa0e24a1853cc5de20abb5341c49e5",id:t,ref:t=>this.inputCompContainerEl=t,disabled:r,validationStatus:k,size:u,role:"group",class:{[`ic-theme-${v}`]:v!=="inherit"}},e("div",{key:"2ac49a3454ce8dbabb546e54af197f0a66840499",class:"input-container"},e("div",{key:"6917d370b61c997d888c133bb27d5fa8f94a79c0",class:"time-inputs"},[this.getInputsInOrder()[0],":",this.getInputsInOrder()[1],!this.isHHMMFormat()?[":",this.getInputsInOrder()[2]]:null]),e("div",{key:"f09f3442355e75170fb1916727fdcac001df885d",class:"action-buttons"},l&&e("ic-button",{key:"27173fcbdcd13798c4adc66eda9469bc471693ea",id:"clear-button","aria-label":"Clear input",class:{["clear-button"]:true,["hidden"]:h(this.hour)&&h(this.minute)&&h(this.second)},disabled:this.disabled,innerHTML:p,onClick:this.handleClear,onFocus:this.handleClearFocus,onBlur:this.handleClearBlur,variant:"icon-tertiary",theme:this.clearButtonFocused?"light":"dark",size:u}),d&&e("div",{key:"606a05c923fc4b95c21d0418be14168982117938",class:"show-clock-button-wrapper"},e("div",{key:"4b9b2d37ed3a9661615685f3b077ac244295fbd1",class:{divider:w,[u]:true}}),e("ic-button",{key:"ab6ec2ca4b1442a23834e1a514800cd0f77c92d5",id:"clock-button","aria-label":"Display clock","aria-haspopup":"dialog",class:"clock-button",disabled:this.disabled,innerHTML:b,variant:"icon-tertiary",size:u,onFocus:this.handleClockFocus,onBlur:this.handleClockBlur,theme:this.clockFocused?"light":"dark"}))))),e("span",{key:"1695846e5d626056f5a0e372c8513fcf0001f0b9",id:this.selectedTimeInfoId,class:"sr-only","aria-live":"polite"},e("span",{key:"34f41adff4bc3642d21014b85e525b6f80814bb6",ref:t=>this.selectedTimeInfoEl=t,role:"status"})),(m||!h(this.invalidTimeText))&&e("ic-input-validation",{key:"4b9326e9e9df98698c2c6643262122658a1434de",status:k,message:m?this.validationText:this.invalidTimeText,for:t})))}static get delegatesFocus(){return true}get el(){return r(this)}static get watchers(){return{hour:["watchInputHandler"],minute:["watchInputHandler"],second:["watchInputHandler"],disabled:["watchDisabledHandler"],max:["watchMaxHandler"],min:["watchMinHandler"],required:["watchRequiredHandler"]}}};g.style=m;export{g as ic_time_input};
|
2
|
+
//# sourceMappingURL=p-ad48c77c.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icTimeInputCss","IcTimeInputStyle0","inputIds","TimeInput","constructor","hostRef","this","DEFAULT_TIME_FORMAT","ARIA_INVALID","ARIA_LABEL","ARIA_LABELLED_BY","EVENT_OBJECT_STRING","FIT_TO_VALUE","initialValue","value","inputsInOrder","isValidHour","isValidMinute","isValidSecond","isValidTime","isTimeSetFromKeyboardEvent","previousSelectedTime","selectedTime","externalSetTime","clearInput","maxTime","minTime","clockFocused","clearButtonFocused","removeLabelledBy","hour","minute","second","disabled","disableTimes","emitTimePartChange","hideHelperText","hideLabel","inputId","invalidTimeMessage","max","min","name","required","showClearButton","showClockButton","size","theme","timeFormat","timePeriod","validationStatus","validationText","setInputPasteValue","input","pastedValue","inputEl","classList","add","parseTime","Date","parts","split","length","d","setHours","isHHMMFormat","isKeyboardOrEvent","event","Object","prototype","toString","call","setTimeValidity","minHour","maxHour","isEmptyString","setInputValue","clear","newValue","hourInputEl","minuteInputEl","secondInputEl","setValidationMessage","setPreventInput","isPrevented","preventHourInput","preventMinuteInput","preventSecondInput","outOfBoundsMsg","isDisabledTime","convertToTime","getHours","getMinutes","getSeconds","Array","isArray","some","t","start","end","parsed","formatTime","forEach","setAttribute","removeAttribute","invalidTimeText","time","hh","padStart","mm","ss","handleInput","inputEvent","target","inputType","preventAutoFormatting","notifyScreenReader","moveToNextInput","setFitToValueStyling","handleKeyDown","isInputPrevented","eventKey","_a","key","toLowerCase","regex","test","ctrlKey","metaKey","preventDefault","moveToPreviousInput","handleUpDownArrowKeyPress","preventInput","handleFocus","select","handleBlur","autocompleteInput","minValue","maxValue","val","handleTimeChange","force","setValueAndEmitChange","notifyScreenReaderSelectedTime","selectedTimeInfoEl","textContent","updateInputValues","emitIcChange","icChange","emit","timeObject","setTime","undefined","remove","zuluMatch","match","setAriaInvalid","validHour","validMinute","validSecond","_b","_c","handleClear","focus","handleHostBlur","icBlur","handleHostFocus","el","shadowRoot","activeElement","id","icFocus","handleFormReset","selectedString","substring","selectionStart","selectionEnd","currentInput","findIndex","inputValue","setInputsInOrder","shadowInputs","querySelectorAll","push","removeAriaLabelledBy","inputCompContainerEl","setAriaLabelledBy","getAttribute","labelEl","querySelector","labelId","hasValidation","labelledBy","screenReaderInfoId","getInputDescribedByText","helperText","defaultHelperText","selectedTimeInfoId","assistiveHintId","_d","getInputsInOrder","timeParts","map","part","h","class","ref","placeholder","inputmode","pattern","onPaste","handlePaste","onKeyDown","getDescOfInputsOrder","getScreenReaderInfo","inputDescriptors","IcInformationStatus","Error","liveRegion","clipboardData","getData","isPastedStringTimeValid","setPastedValueAndValidation","handleClearFocus","handleClearBlur","ev","relatedTarget","handleClockFocus","handleClockBlur","replace","isoMatch","index","timeValue","slice","pasted","trim","isNumeric","watchInputHandler","watchDisabledHandler","removeDisabledFalse","watchMaxHandler","watchMinHandler","watchRequiredHandler","asteriskSpan","document","createElement","appendChild","disconnectedCallback","removeFormResetListener","componentWillLoad","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","addEventListener","componentWillUpdate","componentDidRender","getTime","triggerIcChange","render","hasCustomValidation","assistiveHint","renderHiddenInput","showDivider","Host","onBlur","onFocus","for","slot","role","innerHTML","Clear","onClick","variant","divider","Clock","status","message"],"sources":["src/components/ic-time-input/ic-time-input.css?tag=ic-time-input&encapsulation=shadow","src/components/ic-time-input/ic-time-input.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n --ic-input-label-helpertext-padding: var(--ic-space-xs);\n --input-bg-color: var(--ic-time-picker-field-background);\n --ic-input-label-text-color: var(--ic-time-picker-label);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle);\n --border-color: var(--ic-time-picker-time-field-border-default);\n --border-color-disabled: var(--ic-time-picker-border-disabled);\n --border-color-hover: var(--ic-time-picker-time-field-border-hover);\n --border-color-pressed: var(--ic-time-picker-time-field-border-pressed);\n --border-error-color: var(--ic-time-picker-border-error);\n --border-error-color-hover: var(--ic-time-picker-border-error-hover);\n --border-error-color-pressed: var(--ic-time-picker-border-error-pressed);\n --border-success-color: var(--ic-time-picker-border-success);\n --border-success-color-hover: var(--ic-time-picker-border-success-hover);\n --border-success-color-pressed: var(--ic-time-picker-border-success-pressed);\n --border-warning-color: var(--ic-time-picker-border-warning);\n --border-warning-color-hover: var(--ic-time-picker-border-warning-hover);\n --border-warning-color-pressed: var(--ic-time-picker-border-warning-pressed);\n --input-width: calc((4 * var(--ic-space-xxl)) + var(--ic-space-xxs));\n}\n\n:host(.ic-time-input-disabled) {\n --ic-input-label-text-color: var(--ic-time-picker-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle-disabled);\n}\n\n:host(.ic-time-input-disabled) input {\n color: var(--ic-time-picker-time-text-disabled);\n}\n\n:host(.ic-time-input-large) {\n --input-width: calc(\n (4 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-lg)\n );\n}\n\n:host(.ic-time-input-small) {\n --input-width: calc(\n (3 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-xl)\n );\n}\n\ninput {\n border: 0;\n height: 100%;\n padding: 0;\n outline: none;\n background: none;\n -moz-appearance: textfield;\n appearance: textfield;\n color: var(--ic-time-picker-time-text-default);\n caret-color: var(--ic-time-picker-typing-cursor);\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: 0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;\n -webkit-text-fill-color: var(--ic-time-picker-time-text-default) !important;\n}\n\ninput::placeholder {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\nic-input-component-container {\n cursor: text;\n}\n\nic-input-component-container .focus-indicator {\n padding: var(--ic-space-xxxs) var(--ic-space-xs);\n align-items: center;\n}\n\n.time-inputs {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\n.hour-input {\n width: 1.438rem;\n}\n\n.minute-input {\n width: 1.813rem;\n}\n\n.second-input,\n.second-input.fit-to-value {\n width: 2.313rem;\n}\n\n.fit-to-value {\n width: 1.25rem;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.input-container {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: relative;\n}\n\n.action-buttons {\n display: flex;\n align-items: center;\n}\n\n.show-clock-button-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.clear-button,\n.clock-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n margin: 0;\n}\n\n.clear-button.hidden {\n display: none;\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active,\n.clock-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: 0.25rem;\n}\n\n.clock-button:focus,\n.clock-button:active {\n --ic-button-tertiary-text-active: var(--ic-atoms-input-clear-button-focus);\n --ic-button-tertiary-text-hover-active: var(\n --ic-atoms-input-clear-button-focus\n );\n --ic-button-tertiary-text-pressed-active: var(\n --ic-atoms-input-clear-button-focus\n );\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active *,\n.clock-button:active * {\n fill: var(--ic-atoms-input-clear-button-focus);\n}\n\n.clear-button svg {\n color: var(--ic-time-picker-clear-icon);\n}\n\n.clear-button:focus svg {\n color: var(--ic-atoms-input-clear-button-focus);\n}\n\n.divider {\n margin: 0 var(--ic-space-xxs);\n width: var(--ic-space-1px);\n background-color: var(--ic-atoms-input-divider);\n border-radius: var(--ic-space-1px);\n}\n\n.divider.small {\n height: var(--ic-space-md);\n}\n\n.divider.medium {\n height: calc(var(--ic-space-sm) + var(--ic-space-xs));\n}\n\n.divider.large {\n height: var(--ic-space-lg);\n}\n\nic-input-validation {\n --ic-input-validation-status-text-color: var(--ic-time-picker-status-text);\n --ic-input-validation-error: var(--ic-time-picker-icon-error);\n --ic-input-validation-warning-icon-color: var(--ic-time-picker-icon-warning);\n --ic-input-validation-success-icon-color: var(--ic-time-picker-icon-success);\n}\n\n@media (forced-colors: active) {\n .clear-button svg {\n color: currentColor;\n }\n}\n","/* eslint-disable react/jsx-no-bind */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Prop,\n State,\n Host,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcDisableTimeSelection,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n IcTimeFormat,\n} from \"../../utils/types\";\nimport {\n isEmptyString,\n isNumeric,\n addFormResetListener,\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n removeFormResetListener,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport Clear from \"../../assets/clear-icon.svg\";\nimport Clock from \"../../assets/clock.svg\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the time input.\n */\n@Component({\n tag: \"ic-time-input\",\n styleUrl: \"ic-time-input.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class TimeInput {\n private DEFAULT_TIME_FORMAT: IcTimeFormat = \"HH:MM:SS\";\n private ARIA_INVALID = \"aria-invalid\";\n private ARIA_LABEL = \"aria-label\";\n private ARIA_LABELLED_BY = \"aria-labelledby\";\n private assistiveHintId: string;\n private hourInputEl?: HTMLInputElement;\n private minuteInputEl?: HTMLInputElement;\n private secondInputEl?: HTMLInputElement;\n private defaultHelperText: string;\n private EVENT_OBJECT_STRING = \"[object Event]\";\n private FIT_TO_VALUE = \"fit-to-value\";\n private initialValue = this.value;\n private inputCompContainerEl: HTMLIcInputComponentContainerElement;\n private inputsInOrder: HTMLInputElement[] = [];\n private isValidHour: boolean = true;\n private isValidMinute: boolean = true;\n private isValidSecond: boolean = true;\n private isValidTime: boolean = true;\n private isTimeSetFromKeyboardEvent: boolean = false;\n private preventAutoFormatting: boolean;\n private preventHourInput: boolean;\n private preventMinuteInput: boolean;\n private preventSecondInput: boolean;\n private previousSelectedTime: Date | null = null;\n private selectedTime: Date | null = null;\n private selectedTimeInfoEl?: HTMLSpanElement;\n private screenReaderInfoId: string;\n private selectedTimeInfoId: string;\n private externalSetTime: boolean = false;\n private clearInput: boolean = false;\n private maxTime: Date | null = null;\n private minTime: Date | null = null;\n\n @Element() el: HTMLIcTimeInputElement;\n\n @State() invalidTimeText: string;\n @State() clockFocused: boolean = false;\n @State() clearButtonFocused: boolean = false;\n @State() removeLabelledBy: boolean = false;\n @State() hour: string = \"\";\n @State() minute: string = \"\";\n @State() second: string = \"\";\n\n @Watch(\"hour\")\n @Watch(\"minute\")\n @Watch(\"second\")\n watchInputHandler(): void {\n if (\n this.emitTimePartChange &&\n !this.externalSetTime &&\n !this.clearInput &&\n !(this.hour && this.minute && this.second) &&\n this.selectedTime === null\n ) {\n this.emitIcChange(this.selectedTime);\n }\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * An array of times that will be disabled in the time input. The times can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() disableTimes: IcDisableTimeSelection[] = [];\n\n /**\n * If `true`, every individual input field completed will emit an icChange event.\n */\n @Prop() emitTimePartChange?: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance. This will default to the text \"Use format\" along with the `timeFormat` value.\n */\n @Prop({ mutable: true }) helperText: string | null;\n\n /**\n * If `true`, the helper text will be visually hidden, but still read out by screenreaders.\n */\n @Prop() hideHelperText: boolean = false;\n\n /**\n * If `true`, the label will be visually hidden, but will still be read out by screen readers.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The ID for the input.\n */\n @Prop() inputId: string = `ic-time-input-${inputIds++}`;\n\n /**\n * The text to display as the validation message when an invalid time is entered.\n */\n @Prop() invalidTimeMessage: string = \"Please enter a valid time.\";\n\n /**\n * The label for the time input.\n */\n @Prop() label!: string;\n\n /**\n * The latest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n this.maxTime = this.parseTime(this.max);\n }\n\n /**\n * The earliest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n this.minTime = this.parseTime(this.min);\n }\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name: string = this.inputId;\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required: boolean = false;\n @Watch(\"required\")\n watchRequiredHandler(): void {\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n if (this.required) {\n const asteriskSpan = document.createElement(\"span\");\n asteriskSpan.setAttribute(\"id\", \"asterisk-span\");\n asteriskSpan.setAttribute(\"aria-hidden\", \"true\");\n asteriskSpan.textContent = \" *\";\n labelEl?.appendChild(asteriskSpan);\n } else {\n const asteriskSpan = this.el.shadowRoot?.querySelector(\"#asterisk-span\");\n if (asteriskSpan) {\n asteriskSpan.remove();\n }\n }\n }\n\n /**\n * If `true`, a button which clears the time input when clicked will be displayed.\n */\n @Prop() showClearButton?: boolean = true;\n\n /**\n * @internal If `true`, a button which displays the clock view when clicked will be displayed.\n */\n @Prop() showClockButton?: boolean = false;\n\n /**\n * The size of the time input to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * Sets the time picker to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The format in which the time will be displayed.\n */\n @Prop() timeFormat: IcTimeFormat = this.DEFAULT_TIME_FORMAT;\n\n /**\n * The time period format: \"12\" for 12-hour, \"24\" for 24-hour. Defaults to \"24\".\n */\n @Prop() timePeriod: \"12\" | \"24\" = \"24\";\n\n /**\n * The value of the time input. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in time validation.\n */\n @Prop({ mutable: true }) validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message. This will override the built-in time validation.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * @internal Emitted when the clock is opened.\n */\n @Event() clockButtonClicked: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the input loses focus.\n */\n @Event() icBlur: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{\n value: Date | null;\n timeObject: {\n hour: string | null;\n minute: string | null;\n second: string | null;\n };\n }>;\n\n /**\n * Emitted when the input gains focus.\n */\n @Event() icFocus: EventEmitter<{ value: Date | null }>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.defaultHelperText = `Use format ${this.timeFormat}`;\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (this.value) {\n this.externalSetTime = true;\n this.setTime(this.value);\n }\n this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;\n this.assistiveHintId = `${this.inputId}-assistive-hint`;\n this.selectedTimeInfoId = `${this.inputId}-selected-time-info`;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.setInputsInOrder();\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Time Input\"\n );\n if (this.value) {\n this.updateInputValues(this.hour, this.minute, this.second);\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n if (this.value) {\n this.notifyScreenReaderSelectedTime();\n }\n this.inputsInOrder.forEach((input) => {\n input.addEventListener(\"input\", this.handleInput);\n input.addEventListener(\"focus\", this.handleFocus);\n input.addEventListener(\"blur\", this.handleBlur);\n });\n this.watchRequiredHandler();\n }\n\n componentWillUpdate(): void {\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (!this.isTimeSetFromKeyboardEvent) this.setTime(this.value);\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n this.handleTimeChange(false);\n this.isTimeSetFromKeyboardEvent = false;\n }\n\n componentDidRender(): void {\n if (this.removeLabelledBy) {\n this.removeAriaLabelledBy();\n return;\n }\n this.setAriaLabelledBy();\n }\n\n /**\n * Returns the value as a Date object\n * @returns Date\n */\n @Method()\n async getTime(): Promise<Date | null> {\n return this.selectedTime;\n }\n\n /**\n * @internal Used to enable other components to invoke an IcChange event from the input.\n */\n @Method()\n async triggerIcChange(t: Date | null): Promise<void> {\n this.externalSetTime = true;\n this.setTime(t);\n this.emitIcChange(t);\n this.externalSetTime = false;\n }\n\n private setInputPasteValue = (\n input: EventTarget | null,\n pastedValue: string\n ) => {\n if (input) {\n const inputEl = input as HTMLInputElement;\n inputEl.value = pastedValue;\n inputEl.classList.add(this.FIT_TO_VALUE);\n }\n };\n\n private parseTime = (value: string | Date): Date | null => {\n if (!value) return null;\n if (value instanceof Date) return value;\n const parts = value.split(\":\");\n if (parts.length >= 2) {\n const d = new Date();\n d.setHours(+parts[0], +parts[1], parts[2] ? +parts[2] : 0, 0);\n return d;\n }\n return null;\n };\n\n private isHHMMFormat = () => this.timeFormat === \"HH:MM\";\n\n private isKeyboardOrEvent = (event: Event) => {\n return (\n Object.prototype.toString.call(event) === this.EVENT_OBJECT_STRING ||\n Object.prototype.toString.call(event) === \"[object KeyboardEvent]\"\n );\n };\n\n private setTimeValidity = () => {\n const minHour = 0;\n const maxHour = this.timePeriod === \"12\" ? 11 : 23;\n if (!isEmptyString(this.hour)) {\n this.isValidHour = +this.hour >= minHour && +this.hour <= maxHour;\n } else {\n this.isValidHour = true;\n }\n if (!isEmptyString(this.minute)) {\n this.isValidMinute = +this.minute >= 0 && +this.minute <= 59;\n } else {\n this.isValidMinute = true;\n }\n if (!this.isHHMMFormat()) {\n if (!isEmptyString(this.second)) {\n this.isValidSecond = +this.second >= 0 && +this.second <= 59;\n } else {\n this.isValidSecond = true;\n }\n } else {\n this.isValidSecond = true;\n }\n };\n\n private setInputValue = (input: HTMLInputElement, clear = false) => {\n const newValue = clear ? \"\" : input.value;\n if (input === this.hourInputEl) {\n this.hour = newValue;\n } else if (input === this.minuteInputEl) {\n this.minute = newValue;\n } else if (input === this.secondInputEl && !this.isHHMMFormat()) {\n this.second = newValue;\n }\n this.setValidationMessage();\n };\n\n private setPreventInput = (input: HTMLInputElement, isPrevented: boolean) => {\n if (input === this.hourInputEl) {\n this.preventHourInput = isPrevented;\n } else if (input === this.minuteInputEl) {\n this.preventMinuteInput = isPrevented;\n } else if (input === this.secondInputEl) {\n this.preventSecondInput = isPrevented;\n }\n };\n\n private setValidationMessage = () => {\n this.maxTime = this.parseTime(this.max);\n this.minTime = this.parseTime(this.min);\n this.setTimeValidity();\n let outOfBoundsMsg = \"\";\n let isDisabledTime = false;\n if (\n !isEmptyString(this.hour) &&\n !isEmptyString(this.minute) &&\n (this.isHHMMFormat() || !isEmptyString(this.second))\n ) {\n this.selectedTime = this.convertToTime(\n this.hour,\n this.minute,\n this.isHHMMFormat() ? \"00\" : this.second\n );\n this.isValidTime =\n !!this.selectedTime &&\n this.selectedTime.getHours() == +this.hour &&\n this.selectedTime.getMinutes() == +this.minute &&\n (this.isHHMMFormat() || this.selectedTime.getSeconds() == +this.second);\n\n if (\n this.selectedTime &&\n Array.isArray(this.disableTimes) &&\n this.disableTimes.length > 0\n ) {\n isDisabledTime = this.disableTimes.some((t) => {\n if (\n typeof t === \"object\" &&\n t !== null &&\n \"start\" in t &&\n \"end\" in t\n ) {\n const start = this.parseTime(t.start);\n const end = this.parseTime(t.end);\n if (start && end) {\n return this.selectedTime! >= start && this.selectedTime! <= end;\n }\n return false;\n }\n const parsed = this.parseTime(t as string | Date);\n return (\n parsed &&\n parsed.getHours() === this.selectedTime!.getHours() &&\n parsed.getMinutes() === this.selectedTime!.getMinutes() &&\n parsed.getSeconds() === this.selectedTime!.getSeconds()\n );\n });\n if (isDisabledTime) {\n this.isValidTime = false;\n outOfBoundsMsg = this.invalidTimeMessage;\n }\n }\n\n if (this.selectedTime && !isDisabledTime) {\n if (this.minTime && this.selectedTime < this.minTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time after ${this.formatTime(\n this.minTime\n )}.`;\n } else if (this.maxTime && this.selectedTime > this.maxTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time before ${this.formatTime(\n this.maxTime\n )}.`;\n }\n }\n if (!this.isValidTime) {\n this.inputsInOrder.forEach((input) =>\n input.setAttribute(this.ARIA_INVALID, \"true\")\n );\n } else {\n this.inputsInOrder.forEach((input) =>\n input.removeAttribute(this.ARIA_INVALID)\n );\n }\n } else {\n this.selectedTime = null;\n }\n if (\n !(\n this.isValidHour &&\n this.isValidMinute &&\n this.isValidSecond &&\n this.isValidTime\n )\n ) {\n this.invalidTimeText = outOfBoundsMsg || this.invalidTimeMessage;\n } else {\n this.invalidTimeText = \"\";\n }\n };\n\n private formatTime = (time: Date): string => {\n const hh = time.getHours().toString().padStart(2, \"0\");\n const mm = time.getMinutes().toString().padStart(2, \"0\");\n const ss = time.getSeconds().toString().padStart(2, \"0\");\n return this.isHHMMFormat() ? `${hh}:${mm}` : `${hh}:${mm}:${ss}`;\n };\n\n private handleInput = (event: Event) => {\n const inputEvent = event as InputEvent;\n const input = event.target as HTMLInputElement;\n if (input !== this.hourInputEl) {\n if (\n inputEvent.inputType !== \"deleteContentBackward\" &&\n !this.preventAutoFormatting\n ) {\n if (\n input.value.length === 1 &&\n +input.value >= 6 &&\n +input.value <= 9\n ) {\n this.setInputValue(input);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n }\n if (input.value.length === 2) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n } else {\n this.setPreventInput(input, false);\n }\n } else if (this.preventAutoFormatting) {\n if (input.value.length === 2 && !this.isKeyboardOrEvent(event)) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.moveToNextInput(input);\n } else {\n this.setInputValue(input);\n }\n }\n if (input.value.length !== 2) {\n this.setPreventInput(input, false);\n }\n } else {\n if (input.value.length === 2) {\n this.setInputValue(input);\n if (\n Object.prototype.toString.call(event) !== this.EVENT_OBJECT_STRING\n ) {\n this.moveToNextInput(input);\n }\n this.setPreventInput(input, true);\n } else {\n this.setInputValue(input, true);\n this.setPreventInput(input, false);\n }\n }\n this.setFitToValueStyling(input);\n if (input.value.length === 0) {\n this.setInputValue(input, true);\n this.setValidationMessage();\n }\n this.notifyScreenReader(input);\n };\n\n private handleKeyDown = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const input = event.target as HTMLInputElement;\n const eventKey = event.key?.toLowerCase();\n const regex =\n /-?\\d*\\.?\\d+(e[-+]?\\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;\n if (\n !regex.test(eventKey) &&\n !(\n (event.ctrlKey || event.metaKey) &&\n (eventKey === \"v\" || eventKey === \"c\")\n )\n ) {\n event.preventDefault();\n }\n switch (eventKey) {\n case \":\":\n case \"arrowright\":\n event.preventDefault();\n this.moveToNextInput(input);\n break;\n case \"arrowleft\":\n event.preventDefault();\n this.moveToPreviousInput(input);\n break;\n case \"arrowup\":\n case \"arrowdown\":\n this.preventAutoFormatting = true;\n this.handleUpDownArrowKeyPress(input, event);\n break;\n case \"backspace\":\n if (input.value.length === 0) {\n event.preventDefault();\n this.moveToPreviousInput(input);\n }\n break;\n default:\n break;\n }\n this.preventInput(event, isInputPrevented);\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleFocus = (event: FocusEvent) => {\n const input = event.target as HTMLInputElement;\n input.select();\n };\n\n private handleBlur = (event: FocusEvent) => {\n const input = event.target;\n if (input) {\n this.autocompleteInput(input as HTMLInputElement);\n }\n };\n\n private handleUpDownArrowKeyPress = (\n input: HTMLInputElement,\n event: KeyboardEvent\n ) => {\n let minValue = 0;\n let maxValue = 59;\n if (input === this.hourInputEl) {\n minValue = 0;\n maxValue = this.timePeriod === \"12\" ? 11 : 23;\n }\n let val = +input.value;\n if (event.key === \"ArrowUp\") {\n val = val + 1;\n if (val > maxValue) val = minValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n if (event.key === \"ArrowDown\") {\n val = val - 1;\n if (val < minValue) val = maxValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n this.setInputValue(input);\n this.setFitToValueStyling(input);\n };\n\n private handleTimeChange = (force: boolean) => {\n if (force || this.selectedTime !== this.previousSelectedTime) {\n if (this.value) {\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n if (\n this.hour &&\n this.minute &&\n (this.isHHMMFormat() || this.second) &&\n this.invalidTimeText === \"\"\n ) {\n this.setValueAndEmitChange(this.selectedTime);\n this.notifyScreenReaderSelectedTime();\n } else if (\n !(this.selectedTime === null && this.previousSelectedTime === null) &&\n this.selectedTimeInfoEl\n ) {\n this.setValueAndEmitChange(null);\n this.selectedTimeInfoEl.textContent = \"\";\n }\n this.previousSelectedTime = this.selectedTime;\n if (!this.isTimeSetFromKeyboardEvent) {\n this.updateInputValues(this.hour, this.minute, this.second);\n }\n }\n };\n\n private setValueAndEmitChange = (value: Date | null) => {\n if (this.value !== value) {\n this.emitIcChange(value);\n this.value = value;\n }\n };\n\n private emitIcChange = (t: Date | null) => {\n this.selectedTime = t;\n this.icChange.emit({\n value: t,\n timeObject: {\n hour: this.hour === \"\" ? null : this.hour,\n minute: this.minute === \"\" ? null : this.minute,\n second: this.second === \"\" ? null : this.second,\n },\n });\n };\n\n private setTime = (time?: string | Date | null) => {\n if (time === null || time === \"\" || time === undefined) {\n if (this.hour) this.hour = \"\";\n if (this.minute) this.minute = \"\";\n if (this.second) this.second = \"\";\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.handleTimeChange(true);\n } else {\n if (typeof time === \"string\") {\n const zuluMatch = time.match(\n /^(\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d{1,3}))?Z?$/\n );\n if (zuluMatch) {\n this.hour = zuluMatch[1];\n this.minute = zuluMatch[2];\n this.second = zuluMatch[3];\n } else {\n const parts = time.split(\":\");\n this.hour = parts[0] || \"\";\n this.minute = parts[1] || \"\";\n this.second = parts[2] || \"\";\n }\n } else if (time instanceof Date) {\n this.hour = time.getHours().toString().padStart(2, \"0\");\n this.minute = time.getMinutes().toString().padStart(2, \"0\");\n this.second = time.getSeconds().toString().padStart(2, \"0\");\n }\n }\n this.setValidationMessage();\n };\n\n private setAriaInvalid = (\n validHour: boolean,\n validMinute: boolean,\n validSecond: boolean\n ) => {\n if (this.inputsInOrder.length) {\n this.inputsInOrder.forEach((input) => {\n input.removeAttribute(this.ARIA_INVALID);\n });\n if (!validHour) {\n this.hourInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validMinute) {\n this.minuteInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validSecond) {\n this.secondInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!(validHour && validMinute && validSecond)) {\n this.inputsInOrder.forEach((input) => {\n input.setAttribute(this.ARIA_INVALID, \"true\");\n });\n }\n }\n };\n\n private handleClear = () => {\n this.clearInput = true;\n if (this.hourInputEl) {\n this.hourInputEl.value = \"\";\n }\n if (this.minuteInputEl) {\n this.minuteInputEl.value = \"\";\n }\n if (!this.isHHMMFormat() && this.secondInputEl) {\n this.secondInputEl.value = \"\";\n }\n this.hour = \"\";\n this.minute = \"\";\n this.second = \"\";\n this.handleTimeChange(true);\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.clearInput = false;\n this.isTimeSetFromKeyboardEvent = false;\n this.setValidationMessage();\n this.invalidTimeText = \"\";\n if (this.hourInputEl) {\n this.hourInputEl.focus();\n }\n };\n\n private notifyScreenReaderSelectedTime = () => {\n if (this.selectedTime && this.selectedTimeInfoEl) {\n if (this.isHHMMFormat()) {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}`;\n } else {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getSeconds()\n .toString()\n .padStart(2, \"0\")}`;\n }\n }\n };\n\n private setFitToValueStyling = (input: HTMLInputElement) => {\n if (input.value) {\n input.classList.add(this.FIT_TO_VALUE);\n } else {\n input.classList.remove(this.FIT_TO_VALUE);\n }\n };\n\n private handleHostBlur = () => {\n this.removeLabelledBy = false;\n this.icBlur.emit({ value: this.selectedTime });\n };\n\n private handleHostFocus = () => {\n if (\n this.el.shadowRoot?.activeElement?.id.match(/(hour|minute|second)-input$/)\n ) {\n this.removeLabelledBy = false;\n } else {\n this.removeLabelledBy = true;\n }\n this.icFocus.emit({ value: this.selectedTime });\n };\n\n private handleFormReset = () => {\n this.setTime(this.initialValue);\n this.setValidationMessage();\n this.handleTimeChange(false);\n };\n\n private preventInput = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const key = event.key;\n const input = event.target as HTMLInputElement;\n let selectedString;\n if (input) {\n selectedString = input.value.substring(\n input.selectionStart || 0,\n input.selectionEnd || undefined\n );\n }\n if (\n key === \"e\" ||\n key === \".\" ||\n key === \"-\" ||\n (event.key >= \"0\" &&\n event.key <= \"9\" &&\n isInputPrevented &&\n !selectedString)\n ) {\n event.preventDefault();\n }\n };\n\n private moveToNextInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) + 1\n ]?.focus();\n };\n\n private moveToPreviousInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) - 1\n ]?.focus();\n };\n\n private autocompleteInput = (input: HTMLInputElement) => {\n const inputValue = input.value;\n if (inputValue.length === 1) {\n input.value = `0${inputValue}`;\n }\n if (input.value) {\n this.setInputValue(input);\n }\n };\n\n private convertToTime = (\n hour: string,\n minute: string,\n second: string\n ): Date | null => {\n if (\n !isEmptyString(hour) &&\n !isEmptyString(minute) &&\n (this.isHHMMFormat() || !isEmptyString(second))\n ) {\n const d = new Date();\n d.setHours(+hour, +minute, this.isHHMMFormat() ? 0 : +second, 0);\n return d;\n } else {\n return null;\n }\n };\n\n private setInputsInOrder = () => {\n this.inputsInOrder = [];\n const shadowInputs = this.el.shadowRoot?.querySelectorAll(\"input\");\n if (shadowInputs) {\n shadowInputs.forEach((input) => this.inputsInOrder.push(input));\n }\n };\n\n private updateInputValues = (\n hour: string,\n minute: string,\n second: string\n ) => {\n if (this.hourInputEl && this.minuteInputEl && this.secondInputEl) {\n this.hourInputEl.value = hour;\n this.minuteInputEl.value = minute;\n this.secondInputEl.value = second;\n }\n };\n\n private removeAriaLabelledBy = () => {\n this.inputCompContainerEl?.removeAttribute(this.ARIA_LABELLED_BY);\n };\n\n private setAriaLabelledBy = () => {\n if (\n this.disabled &&\n this.inputCompContainerEl?.getAttribute(this.ARIA_LABELLED_BY)\n ) {\n this.removeAriaLabelledBy();\n return;\n }\n if (this.disabled) {\n return;\n }\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n const labelId = `${this.inputId}-label`;\n if (labelEl !== null && labelEl !== undefined) {\n labelEl.id = labelId;\n }\n const hasValidation =\n !isEmptyString(this.validationStatus) ||\n !isEmptyString(this.invalidTimeText);\n const labelledBy = `${labelEl?.id ?? \"\"} ${\n this.screenReaderInfoId\n } ${getInputDescribedByText(\n this.el,\n this.inputId,\n this.helperText !== \"\" && this.helperText !== this.defaultHelperText,\n hasValidation\n )} ${this.selectedTime ? this.selectedTimeInfoId : \"\"} ${\n this.assistiveHintId\n }`;\n this.inputCompContainerEl?.setAttribute(this.ARIA_LABELLED_BY, labelledBy);\n };\n\n private getInputsInOrder = () => {\n const timeParts = this.timeFormat.split(\":\");\n return timeParts.map((part: string) => {\n switch (part.substring(0, 1)) {\n case \"H\":\n return (\n <input\n class=\"hour-input\"\n id=\"hour-input\"\n ref={(el) => (this.hourInputEl = el)}\n aria-label=\"hour\"\n placeholder=\"HH\"\n disabled={this.disabled}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventHourInput)\n }\n ></input>\n );\n case \"M\":\n return (\n <input\n id=\"minute-input\"\n class=\"minute-input\"\n ref={(el) => (this.minuteInputEl = el)}\n aria-label=\"minute\"\n placeholder=\"MM\"\n disabled={this.disabled}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventMinuteInput)\n }\n ></input>\n );\n case \"S\":\n if (!this.isHHMMFormat()) {\n return (\n <input\n id=\"second-input\"\n class=\"second-input\"\n ref={(el) => (this.secondInputEl = el)}\n aria-label=\"second\"\n placeholder=\"SS\"\n disabled={this.disabled}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventSecondInput)\n }\n ></input>\n );\n }\n return null;\n default:\n return null;\n }\n });\n };\n\n private getDescOfInputsOrder = () => {\n return \"hour, minute, and second\";\n };\n\n private getScreenReaderInfo = (validationStatus: string) => {\n let inputDescriptors = \"\";\n if (this.required) {\n inputDescriptors += \"required\";\n }\n if (validationStatus === IcInformationStatus.Error) {\n inputDescriptors += \" invalid data\";\n }\n return inputDescriptors === \"\" ? \"\" : inputDescriptors + \", \";\n };\n\n private notifyScreenReader = (input: HTMLInputElement) => {\n const liveRegion = this.el.shadowRoot?.querySelector(\"#live-region\");\n if (liveRegion) {\n liveRegion.textContent = `${input.value}, ${input.getAttribute(\n this.ARIA_LABEL\n )}`;\n }\n };\n\n private handlePaste = (event: ClipboardEvent) => {\n event.preventDefault();\n const pastedValue = event.clipboardData?.getData(\"Text\") || \"\";\n const isValidTime = this.isPastedStringTimeValid(pastedValue);\n this.setPastedValueAndValidation(isValidTime, pastedValue, event);\n };\n\n private handleClearFocus = () => {\n this.removeLabelledBy = true;\n this.clearButtonFocused = true;\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleClearBlur = (ev: FocusEvent) => {\n this.clearButtonFocused = false;\n this.isTimeSetFromKeyboardEvent = true;\n const relatedTarget = ev.relatedTarget as HTMLElement | null;\n if (relatedTarget?.id === \"clock-button\") {\n this.removeLabelledBy = false;\n return;\n }\n if (relatedTarget?.id.match(/(minute|second)-input$/)) {\n this.removeLabelledBy = false;\n return;\n }\n this.removeLabelledBy = true;\n };\n\n private handleClockFocus = () => {\n this.clockFocused = true;\n };\n\n private handleClockBlur = () => {\n this.clockFocused = false;\n };\n\n private isPastedStringTimeValid = (value: string): string | false => {\n if (this.isHHMMFormat()) {\n if (/^\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n } else {\n if (/^\\d{2}:\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n if (/^\\d{2}:\\d{2}:\\d{2}Z$/.test(value)) {\n return value.replace(\"Z\", \"\");\n }\n const isoMatch = value.match(/T(\\d{2}:\\d{2}:\\d{2})/);\n if (isoMatch) {\n return isoMatch[1];\n }\n }\n return false;\n };\n\n private setPastedValueAndValidation = (\n isValidTime: string | false,\n pastedValue: string,\n event: ClipboardEvent\n ) => {\n if (isValidTime) {\n const timeParts = isValidTime.split(\":\");\n this.inputsInOrder.forEach((input, index) => {\n input.classList.add(this.FIT_TO_VALUE);\n const timeValue = timeParts[index] || \"\";\n input.value = timeValue.slice(0, 2);\n this.setInputValue(input);\n this.autocompleteInput(input);\n });\n if (this.isHHMMFormat() && this.second !== \"\") {\n this.second = \"\";\n }\n } else {\n const pasted = pastedValue.trim();\n if ((pasted.length === 1 || pasted.length === 2) && isNumeric(pasted)) {\n this.setInputPasteValue(event.target, pasted);\n this.setInputValue(event.target as HTMLInputElement);\n } else {\n this.invalidTimeText = `Please paste a valid ${(\n event.target as HTMLInputElement\n ).getAttribute(this.ARIA_LABEL)}`;\n this.validationStatus = IcInformationStatus.Error;\n }\n }\n };\n\n render() {\n const {\n inputId,\n label,\n disabled,\n helperText,\n hideHelperText,\n hideLabel,\n showClearButton,\n showClockButton,\n size,\n theme,\n } = this;\n const hasCustomValidation = !isEmptyString(this.validationStatus);\n const validationStatus = hasCustomValidation\n ? this.validationStatus\n : !isEmptyString(this.invalidTimeText)\n ? IcInformationStatus.Error\n : \"\";\n const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;\n renderHiddenInput(\n true,\n this.el,\n this.name,\n this.convertToTime(this.hour, this.minute, this.second),\n this.disabled\n );\n const showDivider = !!(\n showClearButton &&\n !(\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second)\n )\n );\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-time-input-disabled`]: disabled,\n [`ic-time-input-${size}`]: true,\n }}\n onBlur={this.handleHostBlur}\n onFocus={this.handleHostFocus}\n >\n <ic-input-container disabled={disabled}>\n {!(hideLabel && hideHelperText) && (\n <ic-input-label\n for={inputId}\n label={label}\n hideLabel={hideLabel}\n helperText={!hideHelperText ? helperText : \"\"}\n disabled={disabled}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n <span id={this.screenReaderInfoId} class=\"sr-only\" aria-hidden=\"true\">\n {this.getScreenReaderInfo(validationStatus)}\n {hideLabel && `${label}\\n`}\n {hideHelperText && `${helperText}\\n`}\n {`${this.defaultHelperText}.`}\n </span>\n <span id={this.assistiveHintId} class=\"sr-only\" aria-hidden=\"true\">\n {assistiveHint}\n </span>\n <span id=\"live-region\" aria-live=\"assertive\" class=\"sr-only\"></span>\n <ic-input-component-container\n id={inputId}\n ref={(el: HTMLIcInputComponentContainerElement) =>\n (this.inputCompContainerEl = el)\n }\n disabled={disabled}\n validationStatus={validationStatus}\n size={size}\n role=\"group\"\n class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}\n >\n <div class=\"input-container\">\n <div class=\"time-inputs\">\n {[\n this.getInputsInOrder()[0],\n \":\",\n this.getInputsInOrder()[1],\n !this.isHHMMFormat()\n ? [\":\", this.getInputsInOrder()[2]]\n : null,\n ]}\n </div>\n <div class=\"action-buttons\">\n {showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear input\"\n class={{\n [\"clear-button\"]: true,\n [\"hidden\"]:\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second),\n }}\n disabled={this.disabled}\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearFocus}\n onBlur={this.handleClearBlur}\n variant=\"icon-tertiary\"\n theme={this.clearButtonFocused ? \"light\" : \"dark\"}\n size={size}\n ></ic-button>\n )}\n {showClockButton && (\n <div class=\"show-clock-button-wrapper\">\n <div class={{ divider: showDivider, [size]: true }}></div>\n <ic-button\n id=\"clock-button\"\n aria-label=\"Display clock\"\n aria-haspopup=\"dialog\"\n class=\"clock-button\"\n disabled={this.disabled}\n innerHTML={Clock}\n variant=\"icon-tertiary\"\n size={size}\n onFocus={this.handleClockFocus}\n onBlur={this.handleClockBlur}\n theme={this.clockFocused ? \"light\" : \"dark\"}\n ></ic-button>\n </div>\n )}\n </div>\n </div>\n </ic-input-component-container>\n <span id={this.selectedTimeInfoId} class=\"sr-only\" aria-live=\"polite\">\n <span\n ref={(el) => (this.selectedTimeInfoEl = el)}\n role=\"status\"\n ></span>\n </span>\n {(hasCustomValidation || !isEmptyString(this.invalidTimeText)) && (\n <ic-input-validation\n status={validationStatus}\n message={\n hasCustomValidation ? this.validationText : this.invalidTimeText\n }\n for={inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as t,c as i,h as e,F as s,H as a,g as l}from"./p-8e4e97b4.js";import{b as o,p as n,i as h,c as r,d,e as c,f as u,h as v,j as p}from"./p-0f22f41e.js";const g=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24">\n <path d="M9 3 5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"></path>\n</svg>`;const f=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(-90deg);">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const b=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(90deg)">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const m=':host{position:relative;display:inline-flex;max-height:100%;width:var(--table-width, 100%);height:100%;min-width:var(--table-min-width);max-width:var(--table-max-width)}tbody{vertical-align:top}.table-container{position:relative;height:calc(100% - var(--ic-space-xxxs));display:flex;flex-direction:column;width:100%}.cell-container{display:flex;min-height:1.5rem;overflow-y:hidden;height:var(--row-height);--ic-typography-color:var(--ic-data-table-text-default-emphasis)}.truncation-show-hide{display:block}.cell-icon.truncation-show-hide{display:flex}.cell-container:not(.data-type-element,.truncation-show-hide){overflow-x:hidden}ic-loading-indicator{position:sticky;top:20px}.table-row-container{position:relative;height:100%;overflow:auto;transition:var(--ic-easing-transition-fast);overflow-anchor:none}:host([show-pagination="true"]) .table-row-container{height:calc(100% - 3.5625rem)}table{table-layout:var(--table-layout, "fixed");border-spacing:0;width:100%;height:var(--table-height, auto)}.table-row-container:focus{outline:none;box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast);z-index:1}:host([embedded="true"]) .table-row-container{border:var(--ic-space-1px) solid var(--ic-data-table-border)}.column-header-inner-container{padding:var(--ic-space-xs);box-sizing:border-box}.column-header-inner-container ic-tooltip{pointer-events:none}.column-header-inner-container ic-tooltip.show-trunc-tooltip{pointer-events:auto}.column-header-inner-container ic-tooltip .column-header-text{--ic-line-clamp:1}.column-header-sticky{position:sticky;top:0;z-index:1}.column-header-overlay{position:sticky;top:0;z-index:1;box-shadow:0 0.375rem var(--ic-space-xs) calc(var(--ic-space-xxs * -1))\n rgb(0 0 0 / 20%)}.row-header-sticky{position:sticky;left:0}.column-header,.table-row{box-sizing:border-box}.table-row-selected{background-image:linear-gradient(\n var(--ic-data-table-cell-background-selected) 0 0\n );background-color:var(--ic-data-table-cell-background) !important}.table-row:hover{background-image:linear-gradient(\n var(--ic-data-table-cell-background-hover) 0 0\n );background-color:var(--ic-data-table-cell-background) !important}.table-row-selected:hover{background-image:linear-gradient(\n var(--ic-data-table-cell-background-selected-hover) 0 0\n )}.sort-button{margin-left:auto}.sort-button:hover{background-color:var(--ic-data-table-icon-button-background-hover)}.sort-button:active{background-color:var(--ic-data-table-icon-button-background-pressed)}.sort-button svg{color:var(--ic-data-table-sort-toggle-icon)}.sort-button-unsorted svg{color:var(--ic-data-table-sort-toggle-icon-default)}.table-density-dense .column-header-inner-container,td.table-density-dense{padding:var(--ic-space-xxs) var(--ic-space-xs) !important}.text-dense{font-size:var(--ic-font-size-label)}.table-density-spacious .column-header-inner-container,td.table-density-spacious{padding:0.625rem var(--ic-space-xs) !important}.text-spacious{font-size:1.125rem}.column-header-text{font-weight:var(--ic-font-weight-bold)}.dummy-column-header-text{white-space:nowrap;overflow:hidden;height:0;width:-moz-fit-content;width:fit-content}.row-header,.column-header{text-align:left;padding:var(--ic-space-xs);background-color:var(--ic-data-table-header-background);border-right:var(--ic-space-1px) solid var(--ic-data-table-header-keyline);border-bottom:var(--ic-space-1px) solid var(--ic-data-table-header-keyline);color:var(--ic-data-table-header-text)}.column-header{padding:0;width:var(--column-width);min-width:var(--column-min-width, 4rem);max-width:var(--column-max-width)}.column-header:last-child{border-right:none}.scrollable .column-header:last-child{border-right:var(--ic-space-1px) solid var(--ic-data-table-header-keyline) !important}:host([embedded="true"]) tr:last-child .table-cell,:host([embedded="true"]) tr:last-child .row-header{border-bottom:none}.column-header-alignment-left,.row-header-alignment-left,.cell-alignment-left{text-align:left !important;justify-content:start !important}.column-header-alignment-right,.row-header-alignment-right,.cell-alignment-right{text-align:right !important;justify-content:end !important}.cell-alignment-right.truncation-tooltip ic-tooltip ic-typography{padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.cell-alignment-right.truncation-show-hide ic-typography{--ellipsis-padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.column-header-alignment-center,.row-header-alignment-center,.cell-alignment-center{text-align:center !important;justify-content:center !important}.table-row{background-color:var(--ic-data-table-cell-background)}.table-row:nth-child(even){background-color:var(--ic-data-table-cell-background-stripe)}.table-cell{padding:var(--ic-space-xs);border-bottom:solid var(--ic-data-table-cell-keyline) var(--ic-space-1px);overflow:hidden;box-sizing:border-box;max-width:var(--column-max-width);min-width:var(--column-min-width)}.table-cell.with-overflow{overflow:visible}.data-type-string,.data-type-address{text-align:left}.data-type-number,.data-type-date{text-align:right;justify-content:end}.cell-vertical-align-top{vertical-align:top;align-items:flex-start}.cell-vertical-align-middle{vertical-align:middle;align-items:center}.cell-vertical-align-bottom{vertical-align:bottom;align-items:flex-end}.cell-emphasis-low ic-typography{--ic-typography-color:var(--ic-data-table-text-low-emphasis)}.cell-emphasis-high ic-typography{--ic-typography-color:var(--ic-data-table-text-high-emphasis);font-weight:var(--ic-font-weight-bold)}.pagination-container{background-color:var(--ic-data-table-pagination-bar-background-color);border-top:var(--ic-space-1px) solid\n var(--ic-data-table-pagination-bar-keyline)}.screen-reader-sort-text,.table-caption{position:absolute;left:-100rem}.table-cell,.column-header,.row-header{word-wrap:break-word;white-space:pre-wrap}.loading-empty{padding:var(--ic-space-xl) var(--ic-space-xxl);margin-top:var(--ic-space-xl)}.updating-state{padding:0;border-bottom:var(--ic-space-1px) solid var(--ic-data-table-header-keyline)}.updating-state-headers{border-bottom:none}.loading{position:absolute;left:calc(50% - 5.9741rem);opacity:0;transition:opacity var(--ic-transition-duration-slow);z-index:calc(var(--ic-z-index-popover) - 1);background-color:var(--ic-data-table-overlay-background);border:var(--ic-space-1px) solid var(--ic-data-table-overlay-border)}.loading.show{opacity:1}.icon,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);margin-right:var(--ic-space-xxs)}.column-header .icon>svg,.column-header ::slotted(svg){fill:var(--ic-data-table-icon)}.table-cell .icon>svg,.table-cell ::slotted(svg),.cell-description-icon>svg{fill:var(--ic-data-table-icon-default-emphasis)}.cell-emphasis-high .icon>svg,.cell-emphasis-high ::slotted(svg){fill:var(--ic-data-table-icon-high-emphasis)}.cell-emphasis-low .icon>svg,.cell-emphasis-low ::slotted(svg){fill:var(--ic-data-table-icon-low-emphasis)}.column-header-alignment-right>.icon,.row-header-alignment-right>.icon,.cell-alignment-right>.icon,.column-header-alignment-right>::slotted(svg),.row-header-alignment-right>::slotted(svg),.cell-alignment-right>::slotted(svg){margin-right:auto}.column-header-alignment-center>ic-typography,.column-header-alignment-center>.cell-text-wrapper,.row-header-alignment-right>ic-typography,.row-header-alignment-right>.cell-text-wrapper,.cell-alignment-center>ic-typography,.cell-alignment-center>.cell-text-wrapper{flex:1}.checkbox-cell{--column-width:var(--ic-space-xxl);align-content:center;border-right:none}.table-density-dense.checkbox-cell{--column-width:2.5rem}.checkbox-wrapper{display:flex;justify-content:center}.icon>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}.truncation-tooltip ic-typography{display:-webkit-box;line-clamp:var(--ic-line-clamp, 0);-webkit-line-clamp:var(--ic-line-clamp, 0);-webkit-box-orient:vertical;overflow:hidden}.truncation-tooltip ic-typography,.truncation-show-hide ic-typography{white-space:normal}.ic-tooltip-overflow{overflow:hidden;width:100%}.action-element{display:flex;justify-content:right}.cell-grid-wrapper{display:grid;grid-template-columns:auto auto}.loading-overlay{visibility:hidden;position:absolute;top:0;left:0;width:100%;height:100%;background:var(--ic-data-table-loading-indicator-overlay-background);z-index:calc(var(--ic-z-index-popover) - 2);opacity:0;transition:opacity var(--ic-transition-duration-slow)}.loading-overlay.show{visibility:visible;opacity:0.6}.sr-only{position:absolute;left:-9999px}@media (prefers-reduced-motion: reduce){.loading-overlay{transition:none}}.cell-text-wrapper{overflow:hidden}.cell-text-wrapper>ic-typography{margin-left:2px}.cell-text-no-wrap{word-wrap:initial}.cell-container-with-description{display:flex;flex-direction:row}.cell-description{display:flex;flex-direction:row;margin-top:var(--ic-space-xxs);word-break:break-all}.cell-description-text{color:var(--ic-data-table-cell-data-description)}.cell-description-icon{padding-right:var(--ic-space-xs)}.cell-description-icon>svg{height:calc(var(--ic-space-lg) - var(--ic-space-xxs));width:calc(var(--ic-space-lg) - var(--ic-space-xxs));display:flex}@media (min-width: 577px){.column-header-inner-container{display:flex;align-items:center}}@media (max-width: 577px){.cell-icon{flex-wrap:wrap}.cell-description-icon{padding-right:0}}@media (forced-colors: active){.icon,::slotted(svg),.cell-description-icon>svg{fill:currentcolor}.sort-button svg{color:currentcolor}.table-row-selected{background-color:Highlight !important}}';const y=m;const w=class{constructor(a){t(this,a);this.icRowHeightChange=i(this,"icRowHeightChange",7);this.icSelectAllRows=i(this,"icSelectAllRows",7);this.icSelectedRowChange=i(this,"icSelectedRowChange",7);this.icColumnsLoaded=i(this,"icColumnsLoaded",7);this.icDataLoaded=i(this,"icDataLoaded",7);this.icSortChange=i(this,"icSortChange",7);this.DENSITY_HEIGHT_MULTIPLIER={dense:.8,default:1,spacious:1.2};this.DENSITY_PADDING_HEIGHT_DIFF={dense:8,default:16,spacious:20};this.SORT_ICONS={unsorted:g,ascending:f,descending:b};this.hasLoadedForOneSecond=true;this.resizeObserver=null;this.SHOW_HIDE_STRING="show-hide";this.SHOW_HIDE_CSS_CLASS=`${this.SHOW_HIDE_STRING}-wrap`;this.TOOLTIP_STRING="tooltip";this.TOOLTIP=`ic-${this.TOOLTIP_STRING}`;this.TEXT_WRAP_STRING="text-wrap";this.TEXT_WRAP_CLASS=`.${this.TEXT_WRAP_STRING}`;this.dataUpdated=false;this.columnsUpdated=false;this.rowHeightSet=false;this.initialLoad=false;this.icPageChangeEvent=false;this.itemsPerPageChange=false;this.DATA_ROW_HEIGHT_STRING="data-row-height";this.ROW_HEIGHT_CSS_VARIABLE="--row-height";this.LINE_CLAMP_CSS_VARIABLE="--ic-line-clamp";this.DEFAULT_LINE_HEIGHT=24;this.densityUpdate=false;this.truncationPatternUpdated=false;this.isNewDebounceDelaySet=false;this.headerResizeObserver=null;this.IC_TOOLTIP_STRING="ic-tooltip";this.SHOW_TRUNC_TOOLTIP_STRING="show-trunc-tooltip";this.CELL_DESCRIPTION_STRING=".cell-description";this.CELL_CONTAINER_WITH_DESCRIPTION_STRING="cell-container-with-description";this.CELL_TEXT_WRAPPER_STRING=".cell-text-wrapper";this.IC_TYPOGRAPHY_STRING="ic-typography";this.fromRow=0;this.scrollable=false;this.scrollOffset=0;this.selectedRows=[];this.debounceDelay=0;this.columnHeaderTruncation=false;this.disableAutoSort=false;this.density="default";this.embedded=false;this.globalRowHeight="auto";this.hideColumnHeaders=false;this.loading=false;this.minimumLoadingDisplayDuration=1e3;this.paginationBarOptions={alignment:"right",hideAllFromItemsPerPage:false,hideRangeLabel:false,itemLabel:"Item",itemsPerPageOptions:[{label:"10",value:"10"},{label:"25",value:"25"},{label:"50",value:"50"}],monochrome:false,pageLabel:"Page",rangeLabelType:"page",selectedItemsPerPage:10,selectItemsPerPageOnEnter:true,setToFirstPageOnPaginationChange:false,showGoToPageControl:true,showItemsPerPageControl:true,type:"simple"};this.rowSelection=false;this.showPagination=false;this.sortable=false;this.sortOptions={sortOrders:["unsorted","ascending","descending"],defaultColumn:""};this.stickyColumnHeaders=false;this.stickyRowHeaders=false;this.tableLayout="fixed";this.theme="inherit";this.updating=false;this.runHeaderResizeObserver=()=>{this.headerResizeObserver=new ResizeObserver((()=>{this.headerResizeCallback()}));this.headerResizeObserver.observe(this.el)};this.headerResizeCallback=()=>{var t,i,e;if(!this.hideColumnHeaders&&this.columnHeaderTruncation){const s=(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(".table-container"))===null||i===void 0?void 0:i.clientWidth;if(s&&s!==this.prevTableContainerWidth){(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelectorAll("th.column-header").forEach((t=>{const i=t.querySelector(this.IC_TOOLTIP_STRING);const e=t.querySelectorAll(this.IC_TYPOGRAPHY_STRING);if(i&&e&&e.length===2){i.classList.remove(this.SHOW_TRUNC_TOOLTIP_STRING);if(e[1].clientWidth>e[0].clientWidth){i.classList.add(this.SHOW_TRUNC_TOOLTIP_STRING)}}}));this.prevTableContainerWidth=s}}};this.handleResize=()=>{this.updateCellHeightsWithDescriptions();this.fixCellOverflow()};this.getRowHeight=t=>parseInt(getComputedStyle(document.documentElement).fontSize)*parseFloat(t.getAttribute(this.DATA_ROW_HEIGHT_STRING)||"");this.truncateUpdatedData=()=>{if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){const e=this.getTruncWrapper(t);if(e&&i.clientHeight-this.DEFAULT_LINE_HEIGHT>=e.scrollHeight){this.resetSingleShowHideTruncation(t,i);return}setTimeout((()=>{this.addShowHideTruncationIfNeeded(t,i)}),150)}}))}if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}this.dataUpdated=false};this.truncateTableSorted=()=>{if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.createShowHideTruncation(t,i)}else{t.resetTruncation().then((()=>{i.removeAttribute("style")}))}}}))}this.tableSorted=false};this.truncateRowHeightSet=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i){if(this.globalRowHeight==="auto"){i.style.height="";i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null);i.removeAttribute(this.DATA_ROW_HEIGHT_STRING);if(this.truncationPattern===this.TOOLTIP_STRING){this.removeTooltip(i,t,e);t.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: 0`)}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.resetSingleShowHideTruncation(t,i)}return}if(!i.classList.contains(this.CELL_CONTAINER_WITH_DESCRIPTION_STRING)&&!i.style.height&&this.getRowHeight(i)>i.clientHeight&&!i.classList.contains(this.TEXT_WRAP_STRING)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}if(this.truncationPattern){if(this.truncationPattern===this.SHOW_HIDE_STRING){const e=this.getTruncWrapper(t);if(this.getShowHideButton(t)&&e&&e.scrollHeight<=i.clientHeight){this.resetSingleShowHideTruncation(t,i);return}}this.truncate(t,i,e)}else{this.updateSetRowHeight(t)}}}));this.rowHeightSet=false};this.truncateItemsPerPageChange=()=>{var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".table-row");if(i&&this.rowsPerPage>this.previousItemsPerPage){const t=Array.from(i).slice(this.previousItemsPerPage);t.forEach((t=>{t.querySelectorAll("ic-typography").forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i)this.truncate(t,i,e)}))}))}this.previousItemsPerPage=this.rowsPerPage;this.itemsPerPageChange=false};this.truncatePageChange=()=>{if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i&&this.typographyScrollHeightExceedsContainerHeight(t,i)&&!this.getShowHideButton(t)){this.addShowHideTruncation(i,t)}}))}this.icPageChangeEvent=false};this.truncateDensityUpdate=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i)this.truncate(t,i,e)}));this.densityUpdate=false};this.typographyScrollHeightExceedsContainerHeight=(t,i)=>i&&t.scrollHeight>i.clientHeight;this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight=(t,i)=>{const e=this.getTruncWrapper(t);return e&&i.clientHeight-this.DEFAULT_LINE_HEIGHT>e.scrollHeight};this.truncatePatternUpdated=()=>{if(this.truncationPattern===this.TOOLTIP_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i&&this.typographyScrollHeightExceedsContainerHeight(t,i)){this.addTooltipTruncation(t,i,e)}}))}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){if(this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight(t,i)){this.resetSingleShowHideTruncation(t,i);return}this.addShowHideTruncationIfNeeded(t,i)}}))}};this.updateSetRowHeight=t=>{const i=t=>{const i=this.getCellContainer(t);if(i&&t.scrollHeight>this.getRowHeight(i)){i.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE)}};if(t){i(t)}else{this.getTypographyElements().forEach((t=>{i(t)}))}};this.getLines=t=>Math.floor(t/this.DEFAULT_LINE_HEIGHT);this.truncate=(t,i,e)=>{var s;if(this.typographyScrollHeightExceedsContainerHeight(t,i)){if(!t.closest(this.TEXT_WRAP_CLASS)){if(this.truncationPattern===this.TOOLTIP_STRING){this.addTooltipTruncation(t,i,e)}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.addShowHideTruncation(i,t)}}}else{if(this.truncationPattern===this.TOOLTIP_STRING&&e){t.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: 0`);(s=i.querySelector(this.CELL_TEXT_WRAPPER_STRING))===null||s===void 0?void 0:s.prepend(t);e.remove()}if(this.truncationPattern===this.SHOW_HIDE_STRING&&!o(t===null||t===void 0?void 0:t.getAttribute("max-lines"))){this.resetSingleShowHideTruncation(t,i)}}};this.addShowHideTruncationIfNeeded=(t,i)=>{if(this.typographyScrollHeightExceedsContainerHeight(t,i)){this.addShowHideTruncation(i,t);return true}return false};this.dataTruncation=(t,i)=>{const e=this.getTooltip(t);if(i.classList.contains("data-type-element")||this.dataUpdated){return}if(this.truncationPattern===this.SHOW_HIDE_STRING&&this.getShowHideButton(t)){const e=this.getTruncWrapper(t);if(e&&this.getLines(e.scrollHeight)===Number(t.getAttribute("max-lines"))){this.resetSingleShowHideTruncation(t,i)}}if(this.rowHeightSet&&this.truncationPattern===this.SHOW_HIDE_STRING){if(this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight(t,i)){this.resetSingleShowHideTruncation(t,i);return}if(this.addShowHideTruncationIfNeeded(t,i)){return}}if(t.scrollHeight>0&&i.clientHeight>0&&t.scrollHeight===i.clientHeight){if(e){this.removeTooltip(i,t,e)}return}this.truncate(t,i,e)};this.getTruncWrapper=t=>{var i;return(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector(".trunc-wrapper")};this.getShowHideButton=t=>{var i;return(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector("button")};this.removeTextWrap=()=>{this.getTypographyElements().forEach((t=>{const i=t.closest("td");if(i===null||i===void 0?void 0:i.classList.contains(this.TEXT_WRAP_STRING)){i.classList.remove(this.TEXT_WRAP_STRING)}}))};this.getCellContainer=t=>t.closest(".cell-container");this.deleteTextWrapDataKey=t=>Array.isArray(t)&&t.forEach((t=>t.textWrap&&delete t.textWrap));this.resetSingleShowHideTruncation=(t,i)=>{const e=this.getTruncWrapper(t);if(!(i&&e))return;if(e.scrollHeight>i.clientHeight&&!o(t.getAttribute("max-lines"))&&Math.floor((i===null||i===void 0?void 0:i.clientHeight)/this.DEFAULT_LINE_HEIGHT)!==Number(t.getAttribute("max-lines"))){t.checkMaxLines(e.scrollHeight);t.setAttribute("max-lines",`${Math.floor((i===null||i===void 0?void 0:i.clientHeight)/this.DEFAULT_LINE_HEIGHT)}`);t.setShowHideExpanded(false);i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}else if(!i.classList.contains(this.CELL_CONTAINER_WITH_DESCRIPTION_STRING)){t.resetTruncation().then((()=>{if(!t.closest(this.TEXT_WRAP_CLASS)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}};this.resetAllShowHideTruncation=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);t.resetTruncation().then((()=>{if(i&&!t.closest(this.TEXT_WRAP_CLASS)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}))};this.startLoadingTimer=()=>{this.hasLoadedForOneSecond=false;this.timerStarted=Date.now();setTimeout((()=>{this.hasLoadedForOneSecond=true;this.timerStarted=0}),this.minimumLoadingDisplayDuration)};this.isObject=t=>t!==undefined&&t!==null&&typeof t==="object";this.notDefaultDensity=()=>this.density!=="default";this.getCellContent=(t,i)=>{switch(i){case"element":return undefined;case"date":return(t instanceof Date?t:new Date(t)).toLocaleDateString();default:return t}};this.getCellAlignment=(t,i)=>{if(this.isObject(t)&&Object.keys(t).includes("cellAlignment")){return this.getObjectValue(this.getObjectValue(t,"cellAlignment"),i)}};this.getCellOptions=(t,i)=>{if(!(this.isObject(t)&&Object.keys(t).includes(i)))return;return this.getObjectValue(t,i)};this.createUpdatingIndicator=()=>{const{description:t,max:i,min:s,progress:a,monochrome:l}=this.updatingOptions||{};const o=this.columns.filter((t=>t.hidden!==true)).length;return e("th",{colSpan:o+(this.rowSelection&&this.data?1:0),class:"updating-state"},e("ic-loading-indicator",{theme:this.theme,monochrome:l,description:t||"Updating table data",fullWidth:true,max:i,min:s,progress:a,type:"linear",size:"small"}))};this.setRowHeight=t=>n(`${t*this.DENSITY_HEIGHT_MULTIPLIER[this.density]-this.DENSITY_PADDING_HEIGHT_DIFF[this.density]}px`);this.setTruncationClass=()=>this.truncationPattern?{[`truncation-${this.truncationPattern}`]:true}:{};this.getColumnWidth=t=>{let i={};if(typeof t==="string"){i=Object.assign(Object.assign({},i),{["--column-width"]:t})}else if(t&&Object.keys(t).length>0){if(t.minWidth){i=Object.assign(Object.assign({},i),{["--column-min-width"]:t.minWidth})}if(t.maxWidth){i=Object.assign(Object.assign({},i),{["--column-max-width"]:t.maxWidth})}}return i};this.getCalculatedRowHeight=(t,i,e,s)=>{if((this.truncationPattern||s)&&!(t===null||t===void 0?void 0:t.textWrap)&&!e&&!this.getCellOptions(i,"textWrap")&&(t===null||t===void 0?void 0:t.dataType)!=="element"){return{[this.ROW_HEIGHT_CSS_VARIABLE]:this.setRowHeight(s)}}return{}};this.getSlottedActionElement=t=>{const i=t.getAttribute("name");return this.el.querySelector(`[slot="${i}"]`)};this.adjustWidthForActionElement=()=>{var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".action-element");i===null||i===void 0?void 0:i.forEach((t=>{var i;const e=t.firstChild;const s=this.getSlottedActionElement(e);const a=(i=s===null||s===void 0?void 0:s.getBoundingClientRect().width)!==null&&i!==void 0?i:0;const l=t.closest(".cell-grid-wrapper");if(l){l.style.gridTemplateColumns=`auto calc(${a}px + var(--ic-space-xs))`}}))};this.createCellContent=(t,i,a,l,o,n,r)=>{var d,c,u,v,p,g,f,b,m,y,w;return e("div",{innerHTML:(t===null||t===void 0?void 0:t.dataType)==="element"&&!h(this.el,a)?i:undefined,class:Object.assign(Object.assign({"cell-container":(t===null||t===void 0?void 0:t.dataType)!=="element","cell-icon":l||!!((d=t===null||t===void 0?void 0:t.icon)===null||d===void 0?void 0:d.icon),[`cell-alignment-${((c=t===null||t===void 0?void 0:t.columnAlignment)===null||c===void 0?void 0:c.horizontal)||((u=n===null||n===void 0?void 0:n.rowAlignment)===null||u===void 0?void 0:u.horizontal)||this.getCellAlignment(i,"horizontal")}`]:!!((v=t===null||t===void 0?void 0:t.columnAlignment)===null||v===void 0?void 0:v.horizontal)||!!((p=n===null||n===void 0?void 0:n.rowAlignment)===null||p===void 0?void 0:p.horizontal)||!!this.getCellAlignment(i,"horizontal"),[`data-type-${t===null||t===void 0?void 0:t.dataType}`]:true,[this.TEXT_WRAP_STRING]:(t===null||t===void 0?void 0:t.textWrap)||(n===null||n===void 0?void 0:n.textWrap)||!!this.getCellOptions(i,"textWrap"),[`cell-emphasis-${this.isObject(i)&&o("emphasis")||(t===null||t===void 0?void 0:t.emphasis)||(n===null||n===void 0?void 0:n.emphasis)}`]:this.isObject(i)&&!!o("emphasis")||!!(t===null||t===void 0?void 0:t.emphasis)||!!(n===null||n===void 0?void 0:n.emphasis)},this.setTruncationClass()),{[this.CELL_CONTAINER_WITH_DESCRIPTION_STRING]:this.isObject(i)&&Object.keys(i).includes("description")}),style:Object.assign(Object.assign({},this.getCalculatedRowHeight(t,i,n===null||n===void 0?void 0:n.textWrap,r)),this.getColumnWidth(t===null||t===void 0?void 0:t.columnWidth)),"data-row-height":this.truncationPattern||r?this.setRowHeight(r):null},h(this.el,a)?e("slot",{name:a}):e(s,null,h(this.el,`${a}-icon`)?e("slot",{name:`${a}-icon`}):(l||((g=t===null||t===void 0?void 0:t.icon)===null||g===void 0?void 0:g.onAllCells))&&(o("icon")||((f=t===null||t===void 0?void 0:t.icon)===null||f===void 0?void 0:f.icon))&&e("span",{class:"icon",innerHTML:o("icon")||((b=t===null||t===void 0?void 0:t.icon)===null||b===void 0?void 0:b.icon)}),(t===null||t===void 0?void 0:t.dataType)!=="element"&&!h(this.el,a)&&e("div",{class:{"cell-text-wrapper":true,"cell-text-no-wrap":!this.truncationPattern}},e("ic-typography",{variant:"body",class:{[`cell-emphasis-${this.isObject(i)&&o("emphasis")||(t===null||t===void 0?void 0:t.emphasis)||(n===null||n===void 0?void 0:n.emphasis)}`]:this.isObject(i)&&!!o("emphasis")||!!(t===null||t===void 0?void 0:t.emphasis)||!!(n===null||n===void 0?void 0:n.emphasis),[`text-${this.density}`]:this.notDefaultDensity()}},this.isObject(i)&&(t===null||t===void 0?void 0:t.dataType)!=="date"?Object.keys(i).includes("href")?e("ic-link",{href:o("href"),theme:this.theme,target:o("target")||undefined,rel:o("rel")||undefined},o("data")):o("data"):this.getCellContent(i,t===null||t===void 0?void 0:t.dataType)),this.isObject(i)&&Object.keys(i).includes("description")&&e("div",{class:{["cell-description"]:true,[`data-type-${t===null||t===void 0?void 0:t.dataType}`]:true}},((m=o("description"))===null||m===void 0?void 0:m.icon)&&e("span",{class:"cell-description-icon",innerHTML:o("description").icon}),e("ic-typography",{variant:"caption",class:"cell-description-text"},(w=(y=o("description"))===null||y===void 0?void 0:y.data)!==null&&w!==void 0?w:o("description"))))))};this.createCells=(t,i)=>{var s;const a=(s=this.variableRowHeight)===null||s===void 0?void 0:s.call(this,Object.assign(Object.assign({},t),{index:i}));const l=a?a!=="auto"&&a:this.globalRowHeight!=="auto"&&this.globalRowHeight;const{rowOptions:o}=t;return this.columns.map((s=>{var a,n,r,d;const{columnAlignment:c,columnWidth:u,dataType:v,hidden:p,key:g}=s;if(p)return;const f=this.getObjectValue(t,g);const b=`${g}-${i}`;const m=t=>this.getObjectValue(f,t);if(g==="header"&&(o===null||o===void 0?void 0:o.header)){return e("th",{scope:"row",class:{"row-header":true,"row-header-sticky":this.stickyRowHeaders,[`row-header-alignment-${(a=o.rowAlignment)===null||a===void 0?void 0:a.horizontal}`]:!!((n=o.rowAlignment)===null||n===void 0?void 0:n.horizontal)}},o.header)}const y=this.createCellContent(s,f,b,this.isObject(f)&&Object.keys(f).includes("icon"),m,o,l||undefined);return e("td",{class:{"table-cell":true,"with-overflow":v==="element",[`table-density-${this.density}`]:this.notDefaultDensity(),[`cell-vertical-align-${(c===null||c===void 0?void 0:c.vertical)||((r=o===null||o===void 0?void 0:o.rowAlignment)===null||r===void 0?void 0:r.vertical)||this.getCellAlignment(f,"vertical")}`]:!!(c===null||c===void 0?void 0:c.vertical)||!!((d=o===null||o===void 0?void 0:o.rowAlignment)===null||d===void 0?void 0:d.vertical)||!!this.getCellAlignment(f,"vertical")},style:Object.assign({},this.getColumnWidth(u))},h(this.el,`${b}-action-element`)?e("div",{class:"cell-grid-wrapper"},y,e("span",{class:"action-element"},e("slot",{name:`${b}-action-element`}))):y)}))};this.createColumnHeaders=()=>(this.columns||[]).map((({cellAlignment:t,colspan:i,icon:s,key:a,title:l,columnWidth:o,excludeColumnFromSort:n,hidden:r},d)=>r!==true&&e("th",{scope:"col",class:{["column-header"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["updating-state-headers"]:this.updating&&!this.loading},style:Object.assign({},this.getColumnWidth(o)),colSpan:i},e("div",{class:{"column-header-inner-container":true,"truncation-tooltip":this.columnHeaderTruncation,[`column-header-alignment-${t}`]:!!t}},h(this.el,`${a}-column-icon`)?e("slot",{name:`${a}-column-icon`}):s&&!s.hideOnHeader&&e("span",{class:"icon",innerHTML:s.icon}),this.columnHeaderTruncation?e("ic-tooltip",{label:l,target:`column-header-${d}`},e("ic-typography",{id:`column-header-${d}`,variant:"body",class:{["column-header-text"]:true,[`text-${this.density}`]:this.notDefaultDensity()}},l)):e("ic-typography",{variant:"body",class:{["column-header-text"]:true,[`text-${this.density}`]:this.notDefaultDensity()}},l),this.sortable&&!n&&e("ic-button",{variant:"icon-tertiary",id:`sort-button-${a}`,"aria-label":this.getSortButtonLabel(a),onClick:()=>this.sortRows(a),innerHTML:this.SORT_ICONS[this.sortedColumn===a?this.sortedColumnOrder:"unsorted"],class:{["sort-button"]:true,["sort-button-unsorted"]:this.sortedColumn!==a||this.sortedColumnOrder==="unsorted"}})),this.columnHeaderTruncation&&e("ic-typography",{variant:"body","aria-hidden":"true",class:{["column-header-text"]:true,["dummy-column-header-text"]:this.columnHeaderTruncation,[`text-${this.density}`]:this.notDefaultDensity()}},l))));this.onRowClick=t=>{const i=!this.selectedRows.includes(t);this.selectedRows=i?[...this.selectedRows,t]:this.selectedRows.filter((i=>i!==t));this.icSelectedRowChange.emit({row:i?t:null,selectedRows:this.selectedRows})};this.selectAllRows=()=>{this.selectedRows=this.organisedData&&this.selectedRows.length!==this.organisedData.length?[...this.organisedData]:[];this.icSelectAllRows.emit(this.selectedRows)};this.createRows=()=>{var t,i,s,a;const l=this.showPagination?(t=this.data)===null||t===void 0?void 0:t.slice(this.fromRow,this.toRow):(i=this.data)===null||i===void 0?void 0:i.slice();const o=this.showPagination?this.fromRow:0;this.organisedData=l===null||l===void 0?void 0:l.map(((t,i)=>{const e=this.columns.map((({key:t},e)=>h(this.el,`${t}-${i+o}`)&&{key:t,index:e})).filter((i=>!!i&&!Object.prototype.hasOwnProperty.call(t,i.key)));return e.length>0?r(t,e,""):t}));return(s=this.organisedData)===null||s===void 0?void 0:s.sort(this.sortable&&!this.disableAutoSort&&this.sortedColumn&&!((a=this.columns.find((t=>t.key===this.sortedColumn)))===null||a===void 0?void 0:a.disableAutoSort)?this.getSortFunction():undefined).map(((t,i)=>{const s=this.rowSelection&&this.selectedRows.includes(t);const a=i+o;return e("tr",{class:{"table-row":true,"table-row-selected":s}},this.rowSelection&&e("td",{class:{"table-cell":true,"checkbox-cell":true,[`table-density-${this.density}`]:this.notDefaultDensity()}},e("div",{class:"checkbox-wrapper"},e("ic-checkbox",{class:"ic-data-table-checkbox",checked:s,disabled:this.updating||this.loading,hideLabel:true,label:`${s?"Deselect":"Select"} row ${a}`,onIcCheck:()=>this.onRowClick(t),size:this.density==="dense"?"small":"medium",value:a}))),this.createCells(t,a))}))};this.getObjectValue=(t,i)=>Object.values(t)[Object.keys(t).indexOf(i)];this.getSortButtonLabel=t=>{let i="";const e=t=>{const i=this.sortOptions.sortOrders;return i[(i.indexOf(t)+1)%i.length]};if(this.sortedColumn===t){const t=e(this.sortedColumnOrder);i=t!=="unsorted"?`Sort ${t}`:"Remove sort"}else{i=`Sort ${e("unsorted")}`}return i};this.getComparison=(t,i)=>{const e=t[this.sortedColumn];const s=i[this.sortedColumn];return this.columns.find((t=>t.key===this.sortedColumn)).dataType==="date"?new Date(e).valueOf()-new Date(s).valueOf():String(this.isObject(e)?Object.values(e)[0]:e).localeCompare(String(this.isObject(s)?Object.values(s)[0]:s),undefined,{numeric:true,sensitivity:"base"})};this.getSortFunction=()=>{switch(this.sortedColumnOrder){case"ascending":return(t,i)=>this.getComparison(t,i);case"descending":return(t,i)=>this.getComparison(i,t);default:return undefined}};this.sortRows=t=>{var i,e,s,a;const l=this.sortOptions.sortOrders;if(t!==this.sortedColumn){if(this.sortedColumn){(e=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(`#sort-button-${this.sortedColumn}`))===null||e===void 0?void 0:e.setAttribute("aria-label",this.getSortButtonLabel(t))}this.sortedColumn=t;this.sortedColumnOrder="unsorted"}let o=l.indexOf(this.sortedColumnOrder)+1;if(o>l.length-1){o=0}this.sortedColumnOrder=l[o];(a=(s=this.el.shadowRoot)===null||s===void 0?void 0:s.querySelector(`#sort-button-${t}`))===null||a===void 0?void 0:a.setAttribute("aria-label",this.getSortButtonLabel(t));this.tableSorted=true;this.icSortChange.emit({columnName:t,sorted:this.sortedColumnOrder})};this.getTypographyElements=()=>{var t;return Array.from(((t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("ic-typography:not(.column-header-text,.cell-description-text)"))||[])};this.getTooltip=t=>t.closest(this.TOOLTIP);this.updateTruncationTooltip=(t=false)=>{this.getTypographyElements().forEach((i=>{const e=this.getTooltip(i);const s=this.getCellContainer(i);if(s){if(i.closest(this.TEXT_WRAP_CLASS)){this.removeTooltip(s,i,e);i.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: 0`);return}this.regenerateTooltip(s,i,e,t)}}))};this.updateScrollOffset=()=>{var t;const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(".table-row-container");if(i)this.scrollOffset=i.scrollTop};this.updateRowHeightForDescriptions=(t,i)=>{i.setAttribute(this.DATA_ROW_HEIGHT_STRING,t.toString());i.setAttribute("style",`${this.ROW_HEIGHT_CSS_VARIABLE}: ${t}px`)};this.getDescriptionHeight=t=>{const i=window.getComputedStyle(t).getPropertyValue("margin-top");return t.clientHeight+parseInt(i,10)};this.updateCellHeightsWithDescriptions=()=>{var t,i;const e=d(p.XS);(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(this.CELL_DESCRIPTION_STRING))===null||i===void 0?void 0:i.forEach((t=>{const i=t.closest(`.${this.CELL_CONTAINER_WITH_DESCRIPTION_STRING}`);const s=i===null||i===void 0?void 0:i.querySelector(this.IC_TYPOGRAPHY_STRING);if(s&&i&&this.globalRowHeight&&this.globalRowHeight!=="auto"){const a=this.getDescriptionHeight(t);const l=a+this.DEFAULT_LINE_HEIGHT;if(!s.textContent&&l>this.globalRowHeight){this.updateRowHeightForDescriptions(a,i)}else if(this.truncationPattern===this.TOOLTIP_STRING){if(l>this.globalRowHeight){const t=i.querySelector(".icon");let s=l;if(t&&e){s+=t.clientHeight}this.updateRowHeightForDescriptions(s,i)}this.addLineClampCSS(s,i)}else if(this.truncationPattern===this.SHOW_HIDE_STRING&&l>this.globalRowHeight&&s.style.getPropertyValue("--truncation-max-lines")!=="initial"){this.updateRowHeightForDescriptions(l,i);this.createShowHideTruncation(s,i,a)}}}))};this.setTableDimensions=()=>{let t={};if(this.width){t=Object.assign(Object.assign({},t),{["--table-width"]:this.width})}if(this.height){t=Object.assign(Object.assign({},t),{["--table-height"]:this.height})}if(this.maxWidth){t=Object.assign(Object.assign({},t),{["--table-max-width"]:this.maxWidth})}if(this.minWidth){t=Object.assign(Object.assign({},t),{["--table-min-width"]:this.minWidth})}return t};this.fixCellTooltip=t=>{var i,e;let s=null;const a=(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector(this.IC_TOOLTIP_STRING);if(t.tagName==="IC-TOOLTIP"){s=t}else if(a){s=a}else if(((e=t.children)===null||e===void 0?void 0:e.length)>0){Array.from(t.children).forEach((t=>{this.fixCellTooltip(t)}))}else{return}s===null||s===void 0?void 0:s.setExternalPopperProps({strategy:"fixed"})};this.fixCellOverflow=()=>{var t,i;(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".data-type-element"))===null||i===void 0?void 0:i.forEach((t=>{let i=Array.from(t.children);if(i.length===1&&i[0].tagName==="SLOT"){i=c(t)}i===null||i===void 0?void 0:i.forEach((i=>{var e;if(i.tagName==="IC-SELECT"){const s=(e=i.shadowRoot)===null||e===void 0?void 0:e.querySelector("ic-menu");s===null||s===void 0?void 0:s.setExternalPopperProps({strategy:"fixed"});i.style.setProperty("--input-width",`${t.clientWidth}px`)}else{const t=i.querySelector("ic-popover-menu");t===null||t===void 0?void 0:t.setExternalPopperProps({strategy:"fixed"})}}))}))};this.fixCellTooltips=()=>{var t,i,e,s;(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll(".data-type-element"))===null||i===void 0?void 0:i.forEach((t=>{const i=c(t);i===null||i===void 0?void 0:i.forEach((t=>{this.fixCellTooltip(t)}))}));(s=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelectorAll(".action-element"))===null||s===void 0?void 0:s.forEach((t=>{const i=t.firstChild;const e=this.getSlottedActionElement(i);if(e){this.fixCellTooltip(e)}}))};this.renderTableBody=(t,i,s)=>{if(!(i===null||i===void 0?void 0:i.length))return;if(s&&t){return e("tbody",null,this.createRows())}else if(t&&!s){return null}else{return e("tbody",null,this.createRows())}};this.renderLoadingIndicator=(t,i)=>{if(!t)return null;return e(s,null,e("div",{class:"loading-overlay",ref:t=>this.loadingOverlay=t}),e("ic-loading-indicator",{theme:this.theme,monochrome:i===null||i===void 0?void 0:i.monochrome,class:{"loading-empty":t,loading:true},description:(i===null||i===void 0?void 0:i.description)||"Loading table data",label:(i===null||i===void 0?void 0:i.label)||"Loading...",labelDuration:i===null||i===void 0?void 0:i.labelDuration,max:i===null||i===void 0?void 0:i.max,min:i===null||i===void 0?void 0:i.min,progress:i===null||i===void 0?void 0:i.progress,ref:t=>this.loadingIndicator=t}))};this.renderAriaLiveLoading=()=>{var t,i;if(this.loading){return((t=this.loadingOptions)===null||t===void 0?void 0:t.label)||"Loading..."}else if(this.updating){return((i=this.updatingOptions)===null||i===void 0?void 0:i.description)||"Updating table data"}else{return""}};this.renderEmptyState=(t,i,s)=>{const a=h(this.el,"empty-state")?e("slot",{name:"empty-state"}):e("ic-empty-state",{aligned:"center",heading:"No Data",class:"loading-empty"});if(t&&!(i===null||i===void 0?void 0:i.length)&&s){return a}else if(!t&&!(i===null||i===void 0?void 0:i.length)){return a}else{return null}}}headerTruncationChangeHandler(){var t,i;if(this.columnHeaderTruncation){this.prevTableContainerWidth=0}else{(i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("th.column-header"))===null||i===void 0?void 0:i.forEach((t=>{var i;(i=t.querySelector(this.IC_TOOLTIP_STRING))===null||i===void 0?void 0:i.classList.remove(this.SHOW_TRUNC_TOOLTIP_STRING)}))}}columnsChangeHandler(){this.columnsUpdated=true}disconnectedCallback(){var t,i;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect();(i=this.headerResizeObserver)===null||i===void 0?void 0:i.disconnect();window.removeEventListener("resize",this.handleResize)}componentWillLoad(){this.rowsPerPage=Number(this.paginationBarOptions.itemsPerPageOptions[0].value);this.previousRowsPerPage=this.rowsPerPage;this.toRow=this.rowsPerPage;this.sortedColumn=this.sortOptions.defaultColumn;this.sortedColumnOrder=this.sortOptions.sortOrders[0];this.loadingOptions=Object.assign({},this.loadingOptions);this.initialLoad=true;this.previousItemsPerPage=this.rowsPerPage}componentDidLoad(){var t,i;const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("table");const s=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".table-container");u(this.runHeaderResizeObserver);if(this.dataUpdated){this.dataUpdated=false}if(e&&s&&(e.clientHeight>s.clientHeight||e.clientWidth>s.clientWidth)){this.scrollable=true}if(this.loading){this.startLoadingTimer();this.showLoadingIndicator()}if(this.truncationPattern){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i&&!i.classList.contains(this.TEXT_WRAP_STRING)){this.dataTruncation(t,i);this.resizeObserver=new ResizeObserver(v((()=>{this.dataTruncation(t,i);if(!this.isNewDebounceDelaySet){this.debounceDelay=200;this.isNewDebounceDelaySet=true}}),(()=>this.debounceDelay)));this.resizeObserver.observe(t)}}))}if(this.globalRowHeight!=="auto"){this.updateSetRowHeight()}window.addEventListener("resize",this.handleResize);this.icColumnsLoaded.emit();if(this.data&&!this.loading&&!this.updating)this.icDataLoaded.emit()}componentDidUpdate(){if(this.truncationPattern===this.SHOW_HIDE_STRING||this.truncationPattern===this.TOOLTIP_STRING){if(this.dataUpdated){this.truncateUpdatedData()}if(this.tableSorted){this.truncateTableSorted()}if(this.rowHeightSet){this.truncateRowHeightSet()}if(this.itemsPerPageChange){this.truncateItemsPerPageChange()}if(!this.initialLoad&&this.icPageChangeEvent){this.truncatePageChange()}if(this.densityUpdate){this.truncateDensityUpdate()}if(this.truncationPatternUpdated){this.truncatePatternUpdated()}}if(this.columnsUpdated){this.icColumnsLoaded.emit();this.columnsUpdated=false}if(this.dataUpdated&&!this.loading&&!this.updating){this.icDataLoaded.emit();this.dataUpdated=false}}componentDidRender(){this.fixCellTooltips();this.fixCellOverflow();this.updateCellHeightsWithDescriptions();this.adjustWidthForActionElement()}createShowHideTruncation(t,i,e=0){t.checkMaxLines(t.scrollHeight);t.setAttribute("max-lines",`${this.getLines(i.clientHeight-e)}`);t.setShowHideExpanded(false);i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}addTooltipTruncation(t,i,e){this.addLineClampCSS(t,i);if(!e){this.createTruncationTooltip(t,i)}}addShowHideTruncation(t,i){t.classList.add(this.SHOW_HIDE_CSS_CLASS);this.createShowHideTruncation(i,t)}handleTypographyTruncationExpandToggle({detail:t}){const{expanded:i,typographyEl:e}=t;const s=this.getCellContainer(e);if((s===null||s===void 0?void 0:s.style.getPropertyValue(this.ROW_HEIGHT_CSS_VARIABLE))&&i){s.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,"inherit")}}handlePageChange({detail:t,target:i}){var e;if(i.parentElement!==this.el){this.fromRow=(t.value-1)*this.rowsPerPage;this.toRow=this.fromRow+this.rowsPerPage;const i=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector(".table-row-container");if(i){if(this.previousRowsPerPage===this.rowsPerPage){i.scrollTop=0}else if(this.previousRowsPerPage<this.rowsPerPage){i.scrollTop=this.scrollOffset;this.previousRowsPerPage=this.rowsPerPage}else{this.previousRowsPerPage=this.rowsPerPage}}this.selectedRows=[]}if(!this.initialLoad&&this.previousPaginationPage!==t.value){this.icPageChangeEvent=true}this.previousPaginationPage=t.value;this.initialLoad=false}handleItemsPerPageChange({detail:t,target:i}){if(i.parentElement!==this.el){this.previousRowsPerPage=this.rowsPerPage;this.rowsPerPage=t.value}this.itemsPerPageChange=true}handleDensityChange(t){this.density=t.detail.value}loadingHandler(){if(this.loading){this.startLoadingTimer();setTimeout((()=>{this.showLoadingIndicator()}),500)}}truncationPatternHandler(){if(this.truncationPattern===this.TOOLTIP_STRING){this.resetAllShowHideTruncation();this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(i)this.truncate(t,i,e)}))}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(i){if(this.cellContainerMinusLineHeightIsGreaterThanTruncWrapperScrollHeight(t,i)){this.resetSingleShowHideTruncation(t,i);return}setTimeout((()=>{this.addShowHideTruncationIfNeeded(t,i)}),150)}}))}this.truncationPatternUpdated=true}async dataHandler(){this.loadingOptions=Object.assign({},this.loadingOptions);if(this.loading){!this.hasLoadedForOneSecond?setTimeout((()=>this.loading=false),this.minimumLoadingDisplayDuration-(Date.now()-this.timerStarted)):this.loading=false}if(this.updating)this.updating=false;this.dataUpdated=true}async densityHandler(){this.densityUpdate=true}rowHeightChangeHandler(t,i){if(+t!==+i){this.deleteTextWrapDataKey(this.data);this.deleteTextWrapDataKey(this.columns);this.removeTextWrap();this.icRowHeightChange.emit();this.rowHeightSet=true}}async resetRowHeights(t){this.globalRowHeight=t||"auto";this.variableRowHeight=undefined}showLoadingIndicator(){var t,i,e;if((t=this.loadingOptions)===null||t===void 0?void 0:t.overlay){(i=this.loadingOverlay)===null||i===void 0?void 0:i.classList.add("show")}(e=this.loadingIndicator)===null||e===void 0?void 0:e.classList.add("show")}regenerateTooltip(t,i,e,s){if(e){if(this.tableSorted){e.setAttribute("target",i.id);e.setAttribute("label",i.textContent)}else{this.removeTooltip(t,i,e)}if(s){return}}if(!i.getAttribute("style")&&this.dataUpdated){this.addLineClampCSS(i,t)}if((i===null||i===void 0?void 0:i.scrollHeight)>(t===null||t===void 0?void 0:t.clientHeight)&&this.truncationPattern===this.TOOLTIP_STRING){if(!i.getAttribute("style")||i.style.cssText.includes(`${this.LINE_CLAMP_CSS_VARIABLE}: 0;`)){this.addLineClampCSS(i,t)}if(!t.querySelector(this.IC_TOOLTIP_STRING))this.createTruncationTooltip(i,t)}}removeTooltip(t,i,e){var s;(s=t.querySelector(this.CELL_TEXT_WRAPPER_STRING))===null||s===void 0?void 0:s.prepend(i);e===null||e===void 0?void 0:e.remove()}addLineClampCSS(t,i){var e,s;const a=(e=i.querySelector(this.CELL_DESCRIPTION_STRING))===null||e===void 0?void 0:e.clientHeight;const l=i.clientHeight;let o=l;if(i.classList.contains(this.CELL_CONTAINER_WITH_DESCRIPTION_STRING)&&a&&l>a){const t=d(p.XS)&&((s=i===null||i===void 0?void 0:i.querySelector(".icon"))===null||s===void 0?void 0:s.clientHeight)||0;o=o-a-t}t.setAttribute("style",`${this.LINE_CLAMP_CSS_VARIABLE}: ${this.getLines(o||0)}`)}createTruncationTooltip(t,i){var e;const s=document.createElement(this.IC_TOOLTIP_STRING);s.setAttribute("target",t.id);s.setAttribute("label",t.textContent);s.classList.add("ic-tooltip-overflow");s.setExternalPopperProps({strategy:"fixed"});(e=i.querySelector(this.CELL_TEXT_WRAPPER_STRING))===null||e===void 0?void 0:e.prepend(s);s.prepend(t)}render(){var t,i;const{caption:s,columns:l,createColumnHeaders:o,createUpdatingIndicator:n,data:r,density:d,hideColumnHeaders:c,rowSelection:u,loading:v,loadingOptions:p,paginationBarOptions:g,rowsPerPage:f,scrollable:b,scrollOffset:m,selectAllRows:y,selectedRows:w,showPagination:x,sortable:k,sortedColumn:$,sortedColumnOrder:O,stickyColumnHeaders:j,updateScrollOffset:C,updating:H,tableLayout:P,theme:T}=this;const L=w.length>0;const z=w.length===(x?f:r===null||r===void 0?void 0:r.length);const I=L?z?"deselect all":"select all remaining":"select all";return e(a,{key:"bcb83a93fd9734b2ddb501c75a0bd7267f22b45c",style:Object.assign({},this.setTableDimensions()),class:{[`ic-theme-${T}`]:T!=="inherit"}},e("div",{key:"2aeadd74b7a8e5acf93ea72ce77c7a0ad520d95b",class:"table-container"},h(this.el,"title-bar")&&e("slot",{key:"359c51f2db8d1ef0f4ba4da77acc334cb82f0ff1",name:"title-bar"}),e("div",{key:"ad28fdb967fe02e2d3b31e9e73787655f9b5bf5c",class:{["table-row-container"]:true,scrollable:b},tabIndex:b?0:undefined,onScroll:C},e("table",{key:"ed247db011e9783c6d56a03afe480fe5f4f2b6d0",style:{"--table-layout":P}},e("caption",{key:"52bd7f8ae17ba373dceba49f7ee628780c825c71",class:"table-caption"},s),!c&&e("thead",{key:"04d0c0199793ac830c9cc24fca64c999a287b690",class:{["column-header-sticky"]:j,["column-header-overlay"]:j&&m!==0}},e("tr",{key:"5ff4686d2053f702a4d8217986d94d7a45596402"},u&&r&&e("th",{key:"b03c33ef7d27c1be4b9cff06eecfd85f280fb379",class:{"column-header":true,"checkbox-cell":true,"updating-state-headers":H&&!v,[`table-density-${d}`]:this.notDefaultDensity()}},e("div",{key:"5c114f3e53652b8b700b2fad7365976f87b7b6c2",class:"checkbox-wrapper"},e("ic-checkbox",{key:"349c87540675235321324f16157deedbd3221e45",class:"ic-data-table-checkbox",checked:L&&z,disabled:H||v,hideLabel:true,indeterminate:L&&!z,label:`${s} ${I} rows`,nativeIndeterminateBehaviour:true,onIcCheck:()=>y(),size:d==="dense"?"small":"medium",value:s}))),o())),H&&!v&&(c?e("thead",null,n()):n()),this.renderTableBody(v,r,p===null||p===void 0?void 0:p.overlay)),this.renderEmptyState(v,r,p===null||p===void 0?void 0:p.overlay)),e("div",{key:"913a847423633138a6f2ed004499c82863ae9b90","aria-live":"assertive",class:"sr-only"},this.renderAriaLiveLoading()),this.renderLoadingIndicator(v,p),(x||h(this.el,"pagination-bar"))&&e("div",{key:"3998139318125dd0767c2ec0faf5e3059335aa40",class:"pagination-container"},h(this.el,"pagination-bar")?e("slot",{name:"pagination-bar"}):e("ic-pagination-bar",{alignment:g.alignment,hideAllFromItemsPerPage:g.hideAllFromItemsPerPage,hideRangeLabel:g.hideRangeLabel,itemLabel:g.itemLabel,itemsPerPageOptions:g.itemsPerPageOptions,monochrome:g.monochrome,pageLabel:g.pageLabel,rangeLabelType:g.rangeLabelType,selectedItemsPerPage:g.selectedItemsPerPage,selectItemsPerPageOnEnter:g.selectItemsPerPageOnEnter,setToFirstPageOnPaginationChange:g.setToFirstPageOnPaginationChange,showGoToPageControl:g.showGoToPageControl,showItemsPerPageControl:g.showItemsPerPageControl,theme:T,totalItems:(t=r===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,type:g.type})),k&&e("div",{key:"97605941ae5d70267886542504d34751695ea57f",class:"screen-reader-sort-text","aria-live":"polite"},O!=="unsorted"&&$?`${((i=l.find((t=>t.key===$)))===null||i===void 0?void 0:i.title)||$} sorted ${O}`:"table unsorted")))}get el(){return l(this)}static get watchers(){return{columnHeaderTruncation:["headerTruncationChangeHandler"],columns:["columnsChangeHandler"],loading:["loadingHandler"],truncationPattern:["truncationPatternHandler"],data:["dataHandler"],density:["densityHandler"],globalRowHeight:["rowHeightChangeHandler"],variableRowHeight:["rowHeightChangeHandler"]}}};w.style=y;export{w as ic_data_table};
|
2
|
+
//# sourceMappingURL=p-b0462734.entry.js.map
|