@ukic/canary-web-components 2.0.0-canary.4 → 2.0.0-canary.41
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 +7 -2
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/date-helpers-c9551119.js +150 -0
- package/dist/cjs/date-helpers-c9551119.js.map +1 -0
- package/dist/cjs/helpers-951fb33a.js +433 -0
- package/dist/cjs/helpers-951fb33a.js.map +1 -0
- package/dist/cjs/{helpers-bbe55215.js → helpers-eabe59b6.js} +147 -100
- package/dist/cjs/helpers-eabe59b6.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +31 -4
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +11 -4
- package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +20 -6
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +26 -17
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +86 -83
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +62 -25
- 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 +145 -103
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-horizontal.cjs.entry.js +130 -0
- package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-card.cjs.entry.js +30 -7
- package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +28 -17
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +50 -31
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +45 -21
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-classification-banner.cjs.entry.js +14 -5
- package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-entity.cjs.entry.js +3 -6
- package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +21 -35
- package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +57 -0
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-data-table.cjs.entry.js +1079 -84
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +1123 -0
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-date-picker.cjs.entry.js +1129 -0
- package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-dialog.cjs.entry.js +54 -12
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js +388 -0
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +4 -4
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +18 -7
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +12 -2
- 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 +164 -0
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-link.cjs.entry.js +34 -16
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +21 -20
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-with-multi.cjs.entry.js +2740 -0
- package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -0
- package/dist/cjs/{ic-input-component-container_3.cjs.entry.js → ic-menu.cjs.entry.js} +17 -80
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-navigation-button.cjs.entry.js +28 -7
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +32 -22
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +82 -36
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +10 -10
- package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +231 -116
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +40 -36
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +100 -59
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +59 -42
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +22 -30
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-select-with-multi.cjs.entry.js +796 -0
- package/dist/cjs/ic-select-with-multi.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-side-navigation.cjs.entry.js +53 -73
- package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-skeleton.cjs.entry.js +16 -35
- package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +4 -2
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +5 -2
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +31 -9
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +7 -3
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +78 -130
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +5 -13
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +16 -14
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +13 -22
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast-region.cjs.entry.js +6 -0
- package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +21 -18
- package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +201 -0
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-toggle-button.cjs.entry.js +97 -0
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-top-navigation.cjs.entry.js +60 -82
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +253 -0
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-tree-view.cjs.entry.js +215 -0
- package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-typography.cjs.entry.js +51 -14
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-4cf27b16.js +48 -12
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/assets/arrow-dropdown.svg +3 -0
- package/dist/collection/assets/calendar.svg +3 -0
- package/dist/collection/collection-manifest.json +11 -1
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +658 -0
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +375 -0
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -0
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js +605 -0
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js.map +1 -0
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js +2 -0
- package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js.map +1 -0
- package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js +140 -0
- package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js.map +1 -0
- package/dist/collection/components/ic-data-table/ic-data-table.css +286 -10
- package/dist/collection/components/ic-data-table/ic-data-table.js +1533 -123
- 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 +414 -0
- package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -0
- 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 +1326 -43
- package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
- package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +460 -3
- package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +91 -0
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +160 -0
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -0
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js +98 -0
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js.map +1 -0
- package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js +11 -0
- package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js +70 -0
- package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js.map +1 -0
- package/dist/collection/components/ic-date-input/ic-date-input.css +564 -0
- package/dist/collection/components/ic-date-input/ic-date-input.js +1808 -0
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -0
- package/dist/collection/components/ic-date-input/ic-date-input.stories.js +341 -0
- package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -0
- package/dist/collection/components/ic-date-input/story-data.js +28 -0
- package/dist/collection/components/ic-date-input/story-data.js.map +1 -0
- package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js +1158 -0
- package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js.map +1 -0
- package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +42 -0
- package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -0
- package/dist/collection/components/ic-date-picker/ic-date-picker.css +885 -0
- package/dist/collection/components/ic-date-picker/ic-date-picker.js +1688 -0
- package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -0
- package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js +167 -0
- package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -0
- package/dist/collection/components/ic-date-picker/ic-day-button.js +36 -0
- package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -0
- package/dist/collection/components/ic-date-picker/ic-month-picker.js +29 -0
- package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -0
- package/dist/collection/components/ic-date-picker/ic-year-picker.js +39 -0
- package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -0
- package/dist/collection/components/ic-date-picker/story-data.js +179 -0
- package/dist/collection/components/ic-date-picker/story-data.js.map +1 -0
- package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js +13 -0
- package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker-utils.spec.js +207 -0
- package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker-utils.spec.js.map +1 -0
- package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js +1030 -0
- package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js.map +1 -0
- package/dist/collection/components/ic-menu-with-multi/ic-menu.css +701 -0
- package/dist/collection/components/ic-menu-with-multi/ic-menu.js +1599 -0
- package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -0
- package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +1057 -0
- package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +1 -0
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +346 -166
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js +260 -0
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js.map +1 -0
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js +2 -0
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -0
- package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js +8 -1
- package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js +75 -12
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
- package/dist/collection/components/ic-select-with-multi/assets/Check.svg +3 -0
- package/dist/collection/components/ic-select-with-multi/assets/Clear.svg +3 -0
- package/dist/collection/components/ic-select-with-multi/assets/Expand.svg +3 -0
- package/dist/collection/components/ic-select-with-multi/ic-select-multi.stories.js +144 -0
- package/dist/collection/components/ic-select-with-multi/ic-select-multi.stories.js.map +1 -0
- package/dist/collection/components/ic-select-with-multi/ic-select.css +693 -0
- package/dist/collection/components/ic-select-with-multi/ic-select.js +1649 -0
- package/dist/collection/components/ic-select-with-multi/ic-select.js.map +1 -0
- package/dist/collection/components/ic-select-with-multi/story-data.js +216 -0
- package/dist/collection/components/ic-select-with-multi/story-data.js.map +1 -0
- package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js +1518 -0
- package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js.map +1 -0
- package/dist/collection/components/ic-tree-item/ic-tree-item.css +186 -0
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +620 -0
- package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -0
- package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js +117 -0
- package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js.map +1 -0
- package/dist/collection/components/ic-tree-view/ic-tree-view.css +74 -0
- package/dist/collection/components/ic-tree-view/ic-tree-view.js +346 -0
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -0
- package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js +456 -0
- package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -0
- package/dist/collection/components/ic-tree-view/test/basic/ic-tree-view.spec.js +85 -0
- package/dist/collection/components/ic-tree-view/test/basic/ic-tree-view.spec.js.map +1 -0
- package/dist/collection/utils/constants.js +83 -0
- package/dist/collection/utils/constants.js.map +1 -0
- package/dist/collection/utils/date-helpers.js +133 -0
- package/dist/collection/utils/date-helpers.js.map +1 -0
- package/dist/collection/utils/helpers.js +473 -5
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/collection/utils/types.js +58 -0
- package/dist/collection/utils/types.js.map +1 -0
- package/dist/components/helpers.js +141 -98
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/helpers2.js +403 -0
- package/dist/components/helpers2.js.map +1 -0
- package/dist/components/ic-accordion-group.js +38 -7
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-accordion.js +12 -4
- package/dist/components/ic-accordion.js.map +1 -1
- package/dist/components/ic-alert2.js +21 -6
- package/dist/components/ic-alert2.js.map +1 -1
- package/dist/components/ic-back-to-top.js +34 -18
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +91 -84
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +66 -25
- 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 +104 -74
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card-horizontal.d.ts +11 -0
- package/dist/components/ic-card-horizontal.js +168 -0
- package/dist/components/ic-card-horizontal.js.map +1 -0
- package/dist/components/ic-card.js +34 -21
- package/dist/components/ic-card.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +33 -18
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +58 -33
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +52 -23
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-classification-banner.js +14 -5
- package/dist/components/ic-classification-banner.js.map +1 -1
- package/dist/components/ic-data-entity.js +3 -6
- package/dist/components/ic-data-entity.js.map +1 -1
- package/dist/components/ic-data-row.js +21 -35
- package/dist/components/ic-data-row.js.map +1 -1
- package/dist/components/ic-data-table-title-bar.d.ts +11 -0
- package/dist/components/ic-data-table-title-bar.js +136 -0
- package/dist/components/ic-data-table-title-bar.js.map +1 -0
- package/dist/components/ic-data-table.js +1119 -91
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input.d.ts +11 -0
- package/dist/components/ic-date-input.js +8 -0
- package/dist/components/ic-date-input.js.map +1 -0
- package/dist/components/ic-date-input2.js +1359 -0
- package/dist/components/ic-date-input2.js.map +1 -0
- package/dist/components/ic-date-picker.d.ts +11 -0
- package/dist/components/ic-date-picker.js +1258 -0
- package/dist/components/ic-date-picker.js.map +1 -0
- package/dist/components/ic-dialog.js +55 -12
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-divider2.js +1 -1
- package/dist/components/ic-empty-state.js +1 -57
- package/dist/components/ic-empty-state.js.map +1 -1
- package/dist/{esm/ic-empty-state.entry.js → components/ic-empty-state2.js} +47 -11
- package/dist/components/ic-empty-state2.js.map +1 -0
- package/dist/components/ic-footer-link-group.js +4 -4
- package/dist/components/ic-footer-link-group.js.map +1 -1
- package/dist/components/ic-footer-link.js +3 -3
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-footer.js +18 -7
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +12 -2
- 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 +24 -8
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-input-label2.js +7 -5
- package/dist/components/ic-input-label2.js.map +1 -1
- package/dist/components/ic-input-validation2.js +1 -1
- package/dist/components/ic-link2.js +35 -17
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +2 -2
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-group.js +2 -2
- package/dist/components/ic-menu-group.js.map +1 -1
- package/dist/components/ic-menu-item2.js +26 -23
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu-with-multi.d.ts +11 -0
- package/dist/components/ic-menu-with-multi.js +8 -0
- package/dist/components/ic-menu-with-multi.js.map +1 -0
- package/dist/components/ic-menu2.js +14 -14
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-menu3.js +2806 -0
- package/dist/components/ic-menu3.js.map +1 -0
- package/dist/components/ic-navigation-button.js +29 -8
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +34 -24
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-navigation-item.js +84 -37
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-navigation-menu2.js +1 -1
- package/dist/components/ic-page-header.js +10 -10
- package/dist/components/ic-page-header.js.map +1 -1
- package/dist/components/ic-pagination-bar2.js +244 -161
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +27 -12
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +30 -10
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +43 -38
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +101 -59
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +63 -44
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +23 -30
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-section-container2.js +1 -1
- package/dist/components/ic-section-container2.js.map +1 -1
- package/dist/components/ic-select-with-multi.d.ts +11 -0
- package/dist/components/ic-select-with-multi.js +921 -0
- package/dist/components/ic-select-with-multi.js.map +1 -0
- package/dist/components/ic-select2.js +77 -30
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +56 -74
- package/dist/components/ic-side-navigation.js.map +1 -1
- package/dist/components/ic-skeleton.js +17 -40
- package/dist/components/ic-skeleton.js.map +1 -1
- package/dist/components/ic-status-tag.js +3 -1
- package/dist/components/ic-status-tag.js.map +1 -1
- package/dist/components/ic-step.js +5 -2
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +35 -9
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +9 -4
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-context.js +79 -130
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-panel.js +6 -17
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-tab.js +16 -14
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +120 -72
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +13 -22
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast-region.js +6 -0
- package/dist/components/ic-toast-region.js.map +1 -1
- package/dist/components/ic-toast.js +24 -19
- package/dist/components/ic-toast.js.map +1 -1
- package/dist/components/ic-toggle-button-group.js +230 -0
- package/dist/components/ic-toggle-button-group.js.map +1 -0
- package/dist/components/ic-toggle-button.js +148 -0
- package/dist/components/ic-toggle-button.js.map +1 -0
- package/dist/components/ic-tooltip2.js +52 -30
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +61 -83
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.d.ts +11 -0
- package/dist/components/ic-tree-item.js +300 -0
- package/dist/components/ic-tree-item.js.map +1 -0
- package/dist/components/ic-tree-view.d.ts +11 -0
- package/dist/components/ic-tree-view.js +252 -0
- package/dist/components/ic-tree-view.js.map +1 -0
- package/dist/components/ic-typography2.js +57 -17
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/core.css +8 -5
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-0229eb46.entry.js +2 -0
- package/dist/core/p-0229eb46.entry.js.map +1 -0
- package/dist/core/p-04fe848d.entry.js +2 -0
- package/dist/core/p-04fe848d.entry.js.map +1 -0
- package/dist/core/p-05ae9a59.entry.js +2 -0
- package/dist/core/p-05ae9a59.entry.js.map +1 -0
- package/dist/core/p-074e64d0.entry.js +2 -0
- package/dist/core/p-074e64d0.entry.js.map +1 -0
- package/dist/core/p-0f1706e8.entry.js +2 -0
- package/dist/core/p-0f1706e8.entry.js.map +1 -0
- package/dist/core/p-11877d23.entry.js +2 -0
- package/dist/core/p-11877d23.entry.js.map +1 -0
- package/dist/core/p-1e450833.entry.js +2 -0
- package/dist/core/p-1e450833.entry.js.map +1 -0
- package/dist/core/{p-4409f656.entry.js → p-23408776.entry.js} +2 -2
- package/dist/core/p-23408776.entry.js.map +1 -0
- package/dist/core/p-26fa17fb.entry.js +2 -0
- package/dist/core/p-26fa17fb.entry.js.map +1 -0
- package/dist/core/p-2b15ea77.entry.js +2 -0
- package/dist/core/p-2b15ea77.entry.js.map +1 -0
- package/dist/core/p-2d44b81a.entry.js +2 -0
- package/dist/core/p-2d44b81a.entry.js.map +1 -0
- package/dist/core/p-2ea7af8b.entry.js +2 -0
- package/dist/core/p-2ea7af8b.entry.js.map +1 -0
- package/dist/core/p-33dd24eb.js +2 -0
- package/dist/core/p-33dd24eb.js.map +1 -0
- package/dist/core/p-38f329ab.entry.js +2 -0
- package/dist/core/p-38f329ab.entry.js.map +1 -0
- package/dist/core/p-3cd2056f.entry.js +2 -0
- package/dist/core/p-3cd2056f.entry.js.map +1 -0
- package/dist/core/p-3d00ad9e.entry.js +2 -0
- package/dist/core/p-3d00ad9e.entry.js.map +1 -0
- package/dist/core/p-3ebd4703.entry.js +2 -0
- package/dist/core/p-3ebd4703.entry.js.map +1 -0
- package/dist/core/p-44036532.entry.js +2 -0
- package/dist/core/p-44036532.entry.js.map +1 -0
- package/dist/core/p-44680720.entry.js +2 -0
- package/dist/core/p-44680720.entry.js.map +1 -0
- package/dist/core/{p-24945ee5.entry.js → p-452985d9.entry.js} +2 -2
- package/dist/core/p-452985d9.entry.js.map +1 -0
- package/dist/core/{p-b97dc365.entry.js → p-487fd924.entry.js} +2 -2
- package/dist/core/p-56db5123.entry.js +2 -0
- package/dist/core/p-56db5123.entry.js.map +1 -0
- package/dist/core/p-5a90eaa8.entry.js +2 -0
- package/dist/core/p-5a90eaa8.entry.js.map +1 -0
- package/dist/core/p-5dd6381a.entry.js +2 -0
- package/dist/core/p-5dd6381a.entry.js.map +1 -0
- package/dist/core/p-5f149106.entry.js +2 -0
- package/dist/core/p-5f149106.entry.js.map +1 -0
- package/dist/core/p-61848e6b.entry.js +2 -0
- package/dist/core/p-61848e6b.entry.js.map +1 -0
- package/dist/core/{p-d77960f6.entry.js → p-656378ba.entry.js} +2 -2
- package/dist/core/p-6a920114.entry.js +2 -0
- package/dist/core/p-6a920114.entry.js.map +1 -0
- package/dist/core/p-6cdf5de2.entry.js +2 -0
- package/dist/core/p-6cdf5de2.entry.js.map +1 -0
- package/dist/core/p-70ad364c.entry.js +2 -0
- package/dist/core/p-70ad364c.entry.js.map +1 -0
- package/dist/core/p-70c659ec.entry.js +2 -0
- package/dist/core/p-70c659ec.entry.js.map +1 -0
- package/dist/core/p-74b42302.entry.js +2 -0
- package/dist/core/p-74b42302.entry.js.map +1 -0
- package/dist/core/p-75bd12f8.entry.js +2 -0
- package/dist/core/p-75bd12f8.entry.js.map +1 -0
- package/dist/core/p-780294b8.entry.js +2 -0
- package/dist/core/p-780294b8.entry.js.map +1 -0
- package/dist/core/{p-baf81f30.entry.js → p-787ffd96.entry.js} +2 -2
- package/dist/core/p-787ffd96.entry.js.map +1 -0
- package/dist/core/p-7edc19be.entry.js +2 -0
- package/dist/core/p-7edc19be.entry.js.map +1 -0
- package/dist/core/p-8ab58daa.js +2 -0
- package/dist/core/p-8ab58daa.js.map +1 -0
- package/dist/core/p-8ced1495.entry.js +2 -0
- package/dist/core/p-8ced1495.entry.js.map +1 -0
- package/dist/core/{p-939baa93.entry.js → p-95545b4c.entry.js} +2 -2
- package/dist/core/p-95545b4c.entry.js.map +1 -0
- package/dist/core/p-95d057b8.entry.js +2 -0
- package/dist/core/p-95d057b8.entry.js.map +1 -0
- package/dist/core/p-987cd821.entry.js +2 -0
- package/dist/core/p-987cd821.entry.js.map +1 -0
- package/dist/core/{p-41aa0ed3.entry.js → p-9b386822.entry.js} +2 -2
- package/dist/core/p-9b386822.entry.js.map +1 -0
- package/dist/core/{p-39e20b87.entry.js → p-9bbe221f.entry.js} +2 -2
- package/dist/core/{p-39e20b87.entry.js.map → p-9bbe221f.entry.js.map} +1 -1
- package/dist/core/p-9f157649.entry.js +2 -0
- package/dist/core/p-9f157649.entry.js.map +1 -0
- package/dist/core/{p-356b8a4c.entry.js → p-9f3cf053.entry.js} +2 -2
- package/dist/core/{p-356b8a4c.entry.js.map → p-9f3cf053.entry.js.map} +1 -1
- package/dist/core/p-9f58998d.entry.js +2 -0
- package/dist/core/p-9f58998d.entry.js.map +1 -0
- package/dist/core/p-a4f28ef1.entry.js +2 -0
- package/dist/core/p-a4f28ef1.entry.js.map +1 -0
- package/dist/core/p-ac8090a5.entry.js +2 -0
- package/dist/core/p-ac8090a5.entry.js.map +1 -0
- package/dist/core/p-b1f89f44.entry.js +2 -0
- package/dist/core/p-b1f89f44.entry.js.map +1 -0
- package/dist/core/p-bc350ec5.entry.js +2 -0
- package/dist/core/p-bc350ec5.entry.js.map +1 -0
- package/dist/core/p-bd0328f3.entry.js +2 -0
- package/dist/core/p-bd0328f3.entry.js.map +1 -0
- package/dist/core/p-bf06977d.js +2 -0
- package/dist/core/p-bf06977d.js.map +1 -0
- package/dist/core/p-c0a2a040.entry.js +2 -0
- package/dist/core/p-c0a2a040.entry.js.map +1 -0
- package/dist/core/p-cc0e0b46.entry.js +2 -0
- package/dist/core/p-cc0e0b46.entry.js.map +1 -0
- package/dist/core/p-d0020f6f.entry.js +2 -0
- package/dist/core/p-d0020f6f.entry.js.map +1 -0
- package/dist/core/{p-3d618bc2.entry.js → p-d1045cd5.entry.js} +2 -2
- package/dist/core/p-d56248df.entry.js +2 -0
- package/dist/core/p-d56248df.entry.js.map +1 -0
- package/dist/core/p-d921dc2c.entry.js +2 -0
- package/dist/core/p-d921dc2c.entry.js.map +1 -0
- package/dist/core/p-da398a5d.entry.js +2 -0
- package/dist/core/p-da398a5d.entry.js.map +1 -0
- package/dist/core/{p-2e9e8e7c.entry.js → p-db5af9f7.entry.js} +2 -2
- package/dist/core/p-db5af9f7.entry.js.map +1 -0
- package/dist/core/p-dd4c83ad.entry.js +2 -0
- package/dist/core/p-dd4c83ad.entry.js.map +1 -0
- package/dist/core/p-e362b5f3.entry.js +2 -0
- package/dist/core/p-e362b5f3.entry.js.map +1 -0
- package/dist/core/p-e89c2feb.entry.js +2 -0
- package/dist/core/p-e89c2feb.entry.js.map +1 -0
- package/dist/core/p-eaeaa096.entry.js +2 -0
- package/dist/core/p-eaeaa096.entry.js.map +1 -0
- package/dist/core/{p-c2b5e7b1.entry.js → p-eb87b43b.entry.js} +2 -2
- package/dist/core/{p-c2b5e7b1.entry.js.map → p-eb87b43b.entry.js.map} +1 -1
- package/dist/core/p-f5dfcf4f.entry.js +2 -0
- package/dist/core/p-f5dfcf4f.entry.js.map +1 -0
- package/dist/core/p-f5fbfbc9.entry.js +2 -0
- package/dist/core/p-f5fbfbc9.entry.js.map +1 -0
- package/dist/core/p-fac387e8.entry.js +2 -0
- package/dist/core/p-fac387e8.entry.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/date-helpers-0e5e32a7.js +136 -0
- package/dist/esm/date-helpers-0e5e32a7.js.map +1 -0
- package/dist/esm/helpers-948df101.js +403 -0
- package/dist/esm/helpers-948df101.js.map +1 -0
- package/dist/esm/{helpers-268c2b7f.js → helpers-cd64688a.js} +142 -99
- package/dist/esm/helpers-cd64688a.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +31 -4
- package/dist/esm/ic-accordion-group.entry.js.map +1 -1
- package/dist/esm/ic-accordion.entry.js +11 -4
- package/dist/esm/ic-accordion.entry.js.map +1 -1
- package/dist/esm/ic-alert.entry.js +20 -6
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +26 -17
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +86 -83
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +62 -25
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +2 -2
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +145 -103
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-horizontal.entry.js +126 -0
- package/dist/esm/ic-card-horizontal.entry.js.map +1 -0
- package/dist/esm/ic-card.entry.js +30 -7
- package/dist/esm/ic-card.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +28 -17
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +50 -31
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +45 -21
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-classification-banner.entry.js +14 -5
- package/dist/esm/ic-classification-banner.entry.js.map +1 -1
- package/dist/esm/ic-data-entity.entry.js +3 -6
- package/dist/esm/ic-data-entity.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +21 -35
- package/dist/esm/ic-data-row.entry.js.map +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +53 -0
- package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -0
- package/dist/esm/ic-data-table.entry.js +1080 -85
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +1119 -0
- package/dist/esm/ic-date-input.entry.js.map +1 -0
- package/dist/esm/ic-date-picker.entry.js +1125 -0
- package/dist/esm/ic-date-picker.entry.js.map +1 -0
- package/dist/esm/ic-dialog.entry.js +54 -12
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state_2.entry.js +383 -0
- package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
- package/dist/esm/ic-footer-link-group.entry.js +4 -4
- package/dist/esm/ic-footer-link-group.entry.js.map +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 +18 -7
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +12 -2
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +5 -5
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_4.entry.js +157 -0
- package/dist/esm/ic-input-component-container_4.entry.js.map +1 -0
- package/dist/esm/ic-link.entry.js +35 -17
- 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 +21 -20
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-menu-with-multi.entry.js +2736 -0
- package/dist/esm/ic-menu-with-multi.entry.js.map +1 -0
- package/dist/esm/{ic-input-component-container_3.entry.js → ic-menu.entry.js} +19 -80
- package/dist/esm/ic-menu.entry.js.map +1 -0
- package/dist/esm/ic-navigation-button.entry.js +29 -8
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +33 -23
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-navigation-item.entry.js +83 -37
- package/dist/esm/ic-navigation-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +1 -1
- package/dist/esm/ic-page-header.entry.js +10 -10
- package/dist/esm/ic-page-header.entry.js.map +1 -1
- package/dist/esm/ic-pagination_4.entry.js +232 -117
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +40 -36
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +100 -59
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +59 -42
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +22 -30
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js +1 -1
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/esm/ic-select-with-multi.entry.js +792 -0
- package/dist/esm/ic-select-with-multi.entry.js.map +1 -0
- package/dist/esm/ic-side-navigation.entry.js +53 -73
- package/dist/esm/ic-side-navigation.entry.js.map +1 -1
- package/dist/esm/ic-skeleton.entry.js +16 -35
- package/dist/esm/ic-skeleton.entry.js.map +1 -1
- package/dist/esm/ic-status-tag.entry.js +4 -2
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +5 -2
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +31 -9
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +7 -3
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-context.entry.js +78 -130
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab-panel.entry.js +5 -13
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +16 -14
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +13 -22
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast-region.entry.js +6 -0
- package/dist/esm/ic-toast-region.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +21 -18
- package/dist/esm/ic-toast.entry.js.map +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +197 -0
- package/dist/esm/ic-toggle-button-group.entry.js.map +1 -0
- package/dist/esm/ic-toggle-button.entry.js +93 -0
- package/dist/esm/ic-toggle-button.entry.js.map +1 -0
- package/dist/esm/ic-top-navigation.entry.js +60 -82
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +249 -0
- package/dist/esm/ic-tree-item.entry.js.map +1 -0
- package/dist/esm/ic-tree-view.entry.js +211 -0
- package/dist/esm/ic-tree-view.entry.js.map +1 -0
- package/dist/esm/ic-typography.entry.js +52 -15
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-93509377.js +48 -12
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +71 -0
- package/dist/types/components/ic-card-horizontal/ic-card-horizontal.stories.d.ts +82 -0
- package/dist/types/components/ic-card-horizontal/ic-card-horizontal.types.d.ts +1 -0
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +218 -19
- package/dist/types/components/ic-data-table/ic-data-table.stories.d.ts +239 -0
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +43 -0
- package/dist/types/components/ic-data-table/story-data.d.ts +492 -2
- package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +36 -0
- package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.d.ts +47 -0
- package/dist/types/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-date-input/ic-date-input.d.ts +264 -0
- package/dist/types/components/ic-date-input/ic-date-input.stories.d.ts +124 -0
- package/dist/types/components/ic-date-input/story-data.d.ts +1 -0
- package/dist/types/components/ic-date-input/test/helpers/ic-date-input.d.ts +23 -0
- package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +262 -0
- package/dist/types/components/ic-date-picker/ic-date-picker.stories.d.ts +153 -0
- package/dist/types/components/ic-date-picker/ic-day-button.d.ts +16 -0
- package/dist/types/components/ic-date-picker/ic-month-picker.d.ts +14 -0
- package/dist/types/components/ic-date-picker/ic-year-picker.d.ts +16 -0
- package/dist/types/components/ic-date-picker/story-data.d.ts +24 -0
- package/dist/types/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +218 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +65 -23
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.stories.d.ts +106 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
- package/dist/types/components/ic-select-with-multi/ic-select-multi.stories.d.ts +106 -0
- package/dist/types/components/ic-select-with-multi/ic-select.d.ts +289 -0
- package/dist/types/components/ic-select-with-multi/story-data.d.ts +32 -0
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +101 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +51 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.stories.d.ts +99 -0
- package/dist/types/components.d.ts +1711 -127
- package/dist/types/interface.d.ts +1 -0
- package/dist/types/utils/constants.d.ts +38 -0
- package/dist/types/utils/date-helpers.d.ts +22 -0
- package/dist/types/utils/helpers.d.ts +144 -2
- package/dist/types/utils/types.d.ts +126 -0
- package/hydrate/index.js +18298 -9132
- package/package.json +27 -17
- package/dist/cjs/helpers-bbe55215.js.map +0 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +0 -38
- package/dist/cjs/ic-empty-state.cjs.entry.js.map +0 -1
- 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 -86
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-pagination-bar.cjs.entry.js +0 -285
- package/dist/cjs/ic-pagination-bar.cjs.entry.js.map +0 -1
- package/dist/collection/components/ic-pagination/ic-pagination.types.js +0 -2
- package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +0 -1
- package/dist/core/p-0083465b.entry.js +0 -2
- package/dist/core/p-0083465b.entry.js.map +0 -1
- package/dist/core/p-03487f12.entry.js +0 -2
- package/dist/core/p-03487f12.entry.js.map +0 -1
- package/dist/core/p-03f8fa1a.entry.js +0 -2
- package/dist/core/p-03f8fa1a.entry.js.map +0 -1
- package/dist/core/p-0c18b6a0.entry.js +0 -2
- package/dist/core/p-0c18b6a0.entry.js.map +0 -1
- package/dist/core/p-1bc034aa.entry.js +0 -2
- package/dist/core/p-1bc034aa.entry.js.map +0 -1
- package/dist/core/p-20a76d1d.entry.js +0 -2
- package/dist/core/p-20a76d1d.entry.js.map +0 -1
- package/dist/core/p-24945ee5.entry.js.map +0 -1
- package/dist/core/p-2dc35696.entry.js +0 -2
- package/dist/core/p-2dc35696.entry.js.map +0 -1
- package/dist/core/p-2e9e8e7c.entry.js.map +0 -1
- package/dist/core/p-3ee25a6d.entry.js +0 -2
- package/dist/core/p-3ee25a6d.entry.js.map +0 -1
- package/dist/core/p-41aa0ed3.entry.js.map +0 -1
- package/dist/core/p-4314aa0e.entry.js +0 -2
- package/dist/core/p-4314aa0e.entry.js.map +0 -1
- package/dist/core/p-4409f656.entry.js.map +0 -1
- package/dist/core/p-47abbd06.entry.js +0 -2
- package/dist/core/p-47abbd06.entry.js.map +0 -1
- package/dist/core/p-485823b6.entry.js +0 -2
- package/dist/core/p-485823b6.entry.js.map +0 -1
- package/dist/core/p-4ee59448.entry.js +0 -2
- package/dist/core/p-4ee59448.entry.js.map +0 -1
- package/dist/core/p-5157cfab.entry.js +0 -2
- package/dist/core/p-5157cfab.entry.js.map +0 -1
- package/dist/core/p-53083575.entry.js +0 -2
- package/dist/core/p-53083575.entry.js.map +0 -1
- package/dist/core/p-55d5541f.entry.js +0 -2
- package/dist/core/p-55d5541f.entry.js.map +0 -1
- package/dist/core/p-5bb32ee6.entry.js +0 -2
- package/dist/core/p-5bb32ee6.entry.js.map +0 -1
- package/dist/core/p-67eea079.entry.js +0 -2
- package/dist/core/p-67eea079.entry.js.map +0 -1
- package/dist/core/p-6bd0e984.entry.js +0 -2
- package/dist/core/p-6bd0e984.entry.js.map +0 -1
- package/dist/core/p-75bf6162.entry.js +0 -2
- package/dist/core/p-75bf6162.entry.js.map +0 -1
- package/dist/core/p-76959313.entry.js +0 -2
- package/dist/core/p-76959313.entry.js.map +0 -1
- package/dist/core/p-7de813a3.entry.js +0 -2
- package/dist/core/p-7de813a3.entry.js.map +0 -1
- package/dist/core/p-7eae5f70.entry.js +0 -2
- package/dist/core/p-7eae5f70.entry.js.map +0 -1
- package/dist/core/p-85508347.entry.js +0 -2
- package/dist/core/p-85508347.entry.js.map +0 -1
- package/dist/core/p-8da152c4.entry.js +0 -2
- package/dist/core/p-8da152c4.entry.js.map +0 -1
- package/dist/core/p-8fd4ca0a.js +0 -2
- package/dist/core/p-8fd4ca0a.js.map +0 -1
- package/dist/core/p-939baa93.entry.js.map +0 -1
- package/dist/core/p-9777ebb1.entry.js +0 -2
- package/dist/core/p-9777ebb1.entry.js.map +0 -1
- package/dist/core/p-9c27b73e.entry.js +0 -2
- package/dist/core/p-9c27b73e.entry.js.map +0 -1
- package/dist/core/p-9fa6844f.entry.js +0 -2
- package/dist/core/p-9fa6844f.entry.js.map +0 -1
- package/dist/core/p-9fdd7d73.entry.js +0 -2
- package/dist/core/p-9fdd7d73.entry.js.map +0 -1
- package/dist/core/p-a3ab9f4c.entry.js +0 -2
- package/dist/core/p-a3ab9f4c.entry.js.map +0 -1
- package/dist/core/p-a51e5c7c.entry.js +0 -2
- package/dist/core/p-a51e5c7c.entry.js.map +0 -1
- package/dist/core/p-a7481232.entry.js +0 -2
- package/dist/core/p-a7481232.entry.js.map +0 -1
- package/dist/core/p-ab9f8a3f.entry.js +0 -2
- package/dist/core/p-ab9f8a3f.entry.js.map +0 -1
- package/dist/core/p-b2aa3d7c.entry.js +0 -2
- package/dist/core/p-b2aa3d7c.entry.js.map +0 -1
- package/dist/core/p-b5cf6d65.entry.js +0 -2
- package/dist/core/p-b5cf6d65.entry.js.map +0 -1
- package/dist/core/p-baf81f30.entry.js.map +0 -1
- package/dist/core/p-bc187bb5.entry.js +0 -2
- package/dist/core/p-bc187bb5.entry.js.map +0 -1
- package/dist/core/p-bd9cecce.entry.js +0 -2
- package/dist/core/p-bd9cecce.entry.js.map +0 -1
- package/dist/core/p-be980606.entry.js +0 -2
- package/dist/core/p-be980606.entry.js.map +0 -1
- package/dist/core/p-c1256810.entry.js +0 -2
- package/dist/core/p-c1256810.entry.js.map +0 -1
- package/dist/core/p-d76cfa5a.entry.js +0 -2
- package/dist/core/p-d76cfa5a.entry.js.map +0 -1
- package/dist/core/p-e189f1d0.entry.js +0 -2
- package/dist/core/p-e189f1d0.entry.js.map +0 -1
- package/dist/core/p-e9e145aa.entry.js +0 -2
- package/dist/core/p-e9e145aa.entry.js.map +0 -1
- package/dist/core/p-f0e9a83f.entry.js +0 -2
- package/dist/core/p-f0e9a83f.entry.js.map +0 -1
- package/dist/core/p-f23d2102.entry.js +0 -2
- package/dist/core/p-f23d2102.entry.js.map +0 -1
- package/dist/core/p-f87e8411.entry.js +0 -2
- package/dist/core/p-f87e8411.entry.js.map +0 -1
- package/dist/esm/helpers-268c2b7f.js.map +0 -1
- package/dist/esm/ic-empty-state.entry.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 -81
- package/dist/esm/ic-input-label_2.entry.js.map +0 -1
- package/dist/esm/ic-pagination-bar.entry.js +0 -281
- package/dist/esm/ic-pagination-bar.entry.js.map +0 -1
- package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +0 -6
- /package/dist/core/{p-b97dc365.entry.js.map → p-487fd924.entry.js.map} +0 -0
- /package/dist/core/{p-d77960f6.entry.js.map → p-656378ba.entry.js.map} +0 -0
- /package/dist/core/{p-3d618bc2.entry.js.map → p-d1045cd5.entry.js.map} +0 -0
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as t,h as r,H as o}from"./p-8455d1bb.js";import{a}from"./p-
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as t,h as r,H as o}from"./p-8455d1bb.js";import{a}from"./p-bf06977d.js";import{I as i}from"./p-fd186591.js";const e=":host{--border-bottom-color:var(--ic-architectural-300);display:block;margin-bottom:var(--ic-space-md);border-bottom:var(--ic-border-default)}:host(.inline){margin-bottom:0;border-bottom:none}.light{border-bottom:var(--ic-border-width) solid var(--ic-architectural-white)}.tabs-container{display:flex;flex-direction:row}.tabs-container::-webkit-scrollbar{display:none}";const s=class{constructor(r){t(this,r);this.appearance="dark";this.contextId="default";this.inline=false;this.label=undefined}componentDidLoad(){a([{prop:this.label,propName:"label"}],"Tab Group")}render(){const{appearance:t,label:a}=this;return r(o,{role:"tablist","aria-label":a,class:{["light"]:t===i.Light,["inline"]:this.inline}},r("ic-horizontal-scroll",{appearance:t===i.Dark?i.Default:t,"focus-trigger":"tabFocus"},r("div",{class:"tabs-container"},r("slot",null))))}static get delegatesFocus(){return true}};s.style=e;export{s as ic_tab_group};
|
2
|
+
//# sourceMappingURL=p-487fd924.entry.js.map
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as e,c as i,h as t,H as a,g as r}from"./p-8455d1bb.js";import{r as o,m as c,a as n,n as s,e as d,p as l,q as h,i as m}from"./p-bf06977d.js";import"./p-fd186591.js";const b='/*! 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(.disabled){color:var(--ic-architectural-200);pointer-events:none}.container{display:flex;width:-moz-fit-content;width:fit-content;padding:var(--ic-space-xxs) 0 var(--ic-space-xxs) var(--ic-space-xxs);margin-bottom:var(--ic-space-xxs);align-items:center}:host(.small) .container{margin-bottom:var(--ic-space-xxxs)}.checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;position:relative;top:0;left:0;height:var(--ic-space-lg);width:var(--ic-space-lg);background-color:var(--ic-architectural-white);border:var(--ic-border-width) solid var(--ic-architectural-400);border-radius:var(--ic-border-radius);outline:none;cursor:pointer;transition:var(--ic-easing-transition-fast);flex-shrink:0}:host .container svg{width:var(--ic-space-lg);height:var(--ic-space-lg)}:host(.small) .checkbox,:host(.small) .container svg{width:var(--ic-space-md);height:var(--ic-space-md)}:host(.large) .checkbox,:host(.large) .container svg{width:var(--ic-space-xl);height:var(--ic-space-xl)}.checkbox:checked{background-color:var(--ic-action-default);border:var(--ic-border-width) solid var(--ic-action-default);transition:var(--ic-easing-transition-slow)}.checkbox:checked:disabled{background-color:var(--ic-architectural-200)}.checkbox:indeterminate,.checkbox.indeterminate:checked{background-color:var(--ic-architectural-white);border:0.125rem solid var(--ic-action-default)}.checkbox:checked:hover{background-color:var(--ic-action-default-hover)}.checkbox:indeterminate:hover,.checkbox.indeterminate:checked:hover{background-color:var(--ic-action-default-bg-hover-no-alpha);border:0.125rem solid var(--ic-action-default-hover)}.checkbox:checked:active{background-color:var(--ic-action-default-active)}.checkbox:indeterminate:active,.checkbox.indeterminate:checked:active{background-color:var(--ic-action-default-bg-active-no-alpha);border:0.125rem solid var(--ic-action-default-active)}.checkbox:hover{background-color:var(--ic-action-default-bg-hover-no-alpha);box-shadow:0 0 0 0.25rem var(--ic-action-default-bg-hover);border:var(--ic-border-width) solid var(--ic-action-default-hover)}.checkbox:active{background-color:var(--ic-action-default-bg-active-no-alpha);box-shadow:0 0 0 0.25rem var(--ic-action-default-bg-active);border:var(--ic-border-width) solid var(--ic-action-default-active)}.checkbox:focus{box-shadow:var(--ic-border-focus)}.checkbox:disabled{border:var(--ic-border-width) dashed var(--ic-architectural-200)}.checkbox-label{padding-left:var(--ic-space-sm)}.checkbox-label:hover{cursor:pointer}.checkmark{position:relative;right:calc(-1 * var(--ic-space-lg));margin-left:calc(-1 * var(--ic-space-lg));fill:white;z-index:1;background-color:transparent;pointer-events:none;flex-shrink:0}:host(.small) .checkmark{margin-left:calc(-1 * var(--ic-space-md));right:calc(-1 * var(--ic-space-md))}:host(.large) .checkmark{margin-left:calc(-1 * var(--ic-space-xl));right:calc(-1 * var(--ic-space-xl))}.indeterminate-symbol{position:relative;width:0.875rem;height:var(--ic-space-xxxs);right:-1.188rem;margin-left:-0.875rem;z-index:1;background-color:var(--ic-action-default);pointer-events:none;flex-shrink:0}:host(.small) .indeterminate-symbol{width:0.6rem;right:-0.8rem;margin-left:-0.6rem}:host(.large) .indeterminate-symbol{width:1.25rem;right:-1.625rem;margin-left:-1.25rem}.container:hover .indeterminate-symbol{background-color:var(--ic-action-default-hover)}.container:active .indeterminate-symbol{background-color:var(--ic-action-default-active)}.additional-field-wrapper{margin-left:calc(var(--ic-space-md) + var(--ic-space-lg));margin-top:calc(var(--ic-space-sm) / 2)}.branch-corner{color:var(--ic-action-default);height:var(--ic-space-md);width:var(--ic-space-xl);border-radius:0 0 0 0.188rem;border-bottom:0.125rem solid var(--ic-action-default);border-left:0.125rem solid var(--ic-action-default)}.dynamic-container{display:flex;position:relative;margin:var(--ic-space-xxxs) 0 var(--ic-space-xxs) var(--ic-space-md);gap:var(--ic-space-xs)}.dynamic-text{color:var(--ic-action-default);margin-top:calc(var(--ic-space-sm) / 2);margin-bottom:var(--ic-space-xs);border-radius:2%}@media (max-width: 576px){::slotted(ic-text-field){--input-width:100%}}@media (forced-colors: active){.checkbox{-webkit-appearance:revert;-moz-appearance:revert;appearance:revert;transition:none}.checkbox:checked{transition:none}.checkbox:focus-visible{outline:0.125rem solid highlight}.checkbox:disabled:not(:checked){-webkit-appearance:none;-moz-appearance:none;appearance:none;border-color:GrayText}.checkmark{fill:none}.indeterminate-symbol{display:none}}.checkmark:dir(rtl){right:0}.checkbox-label:dir(rtl){padding-right:var(--ic-space-sm);padding-left:0}.indeterminate-symbol:dir(rtl){right:0.288rem}.branch-corner:dir(rtl){border-radius:0 0 0.188rem 0;border-right:0.125rem solid var(--ic-action-default);border-left:none}.dynamic-container:dir(rtl){margin:var(--ic-space-xxxs) var(--ic-space-sm) var(--ic-space-xxs) 0}';const p=class{constructor(t){e(this,t);this.checkboxChecked=i(this,"checkboxChecked",7);this.icCheck=i(this,"icCheck",7);this.handleClick=()=>{this.checked=!this.checked;this.displayIndeterminate=this.nativeIndeterminateBehaviour?false:this.indeterminate&&this.checked;this.icCheck.emit();this.checkboxChecked.emit()};this.handleFormReset=()=>{this.checked=this.initiallyChecked};this.additionalFieldDisplay="static";this.checked=false;this.initiallyChecked=this.checked;this.disabled=false;this.dynamicText="This selection requires additional answers";this.form=undefined;this.formaction=undefined;this.formenctype=undefined;this.formmethod=undefined;this.formnovalidate=undefined;this.formtarget=undefined;this.groupLabel=undefined;this.indeterminate=false;this.displayIndeterminate=this.indeterminate;this.label=undefined;this.name=undefined;this.nativeIndeterminateBehaviour=false;this.size=undefined;this.small=false;this.value=undefined;this.hideLabel=false}watchDisabledHandler(){o(this.disabled,this.el)}watchIndeterminateHandler(){this.displayIndeterminate=this.nativeIndeterminateBehaviour?this.indeterminate:this.indeterminate&&this.checked}componentWillLoad(){o(this.disabled,this.el);c(this.el,this.handleFormReset);const e=this.el.parentElement;if(e){if(!this.name)this.name=e.name;this.groupLabel=e.label}}componentDidLoad(){n([{prop:this.label,propName:"label"},{prop:this.value,propName:"value"}],"Checkbox")}componentDidRender(){if(this.additionalFieldDisplay==="static"){const e=this.el.querySelector("ic-text-field");if(!this.checked){e===null||e===void 0?void 0:e.setAttribute("disabled","")}else{e===null||e===void 0?void 0:e.removeAttribute("disabled")}}else if(this.additionalFieldContainer){this.additionalFieldContainer.style.display=!this.checked?"none":"flex"}}disconnectedCallback(){s(this.el,this.handleFormReset)}async setFocus(){var e;(e=this.el.shadowRoot.querySelector(".checkbox"))===null||e===void 0?void 0:e.focus()}render(){const{additionalFieldDisplay:e,checked:i,disabled:r,dynamicText:o,el:c,form:n,formaction:s,formenctype:b,formmethod:p,formnovalidate:u,formtarget:v,displayIndeterminate:f,groupLabel:g,label:x,name:k,size:y,small:w,value:z}=this;const j=`ic-checkbox-${d(x)||z}-${g}`.replace(/ /g,"-");const C=c.parentElement.size;i?l(true,c,k,i&&z,r):h(c);return t(a,{class:{disabled:r,small:w,[`${y||C}`]:true}},t("div",{class:"container"},f&&t("div",{class:"indeterminate-symbol"}),!f&&i&&t("svg",{class:"checkmark",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","fill-rule":"evenodd","clip-rule":"evenodd"},t("title",null,"checkmark icon"),t("path",{d:"M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z"})),t("input",{role:"checkbox",class:{checkbox:true,checked:i,indeterminate:f},type:"checkbox",name:k,id:j,value:z,disabled:r?true:null,checked:i,indeterminate:f,onClick:this.handleClick,form:n,formaction:s,formenctype:b,formmethod:p,formnovalidate:u,formtarget:v,"aria-label":this.hideLabel?this.label:undefined}),!this.hideLabel&&t("ic-typography",{class:"checkbox-label",variant:"body"},t("label",{htmlFor:j},x))),m(c,"additional-field")&&t("div",{class:"dynamic-container",ref:e=>this.additionalFieldContainer=e},e==="dynamic"&&t("div",{class:"branch-corner"}),t("div",null,e==="dynamic"&&t("ic-typography",{variant:"caption"},t("p",{class:"dynamic-text","aria-live":"polite"},o)),t("div",{class:{"additional-field-wrapper":e==="static"}},t("slot",{name:"additional-field"})))))}static get delegatesFocus(){return true}get el(){return r(this)}static get watchers(){return{disabled:["watchDisabledHandler"],indeterminate:["watchIndeterminateHandler"]}}};p.style=b;export{p as ic_checkbox};
|
2
|
+
//# sourceMappingURL=p-56db5123.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icCheckboxCss","Checkbox","constructor","hostRef","this","handleClick","checked","displayIndeterminate","nativeIndeterminateBehaviour","indeterminate","icCheck","emit","checkboxChecked","handleFormReset","initiallyChecked","additionalFieldDisplay","disabled","dynamicText","form","undefined","formaction","formenctype","formmethod","formnovalidate","formtarget","groupLabel","label","name","size","small","value","hideLabel","watchDisabledHandler","removeDisabledFalse","el","watchIndeterminateHandler","componentWillLoad","addFormResetListener","checkboxGroup","parentElement","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentDidRender","textfield","querySelector","setAttribute","removeAttribute","additionalFieldContainer","style","display","disconnectedCallback","removeFormResetListener","setFocus","_a","shadowRoot","focus","render","id","isPropDefined","replace","parentElementSize","renderHiddenInput","removeHiddenInput","h","Host","class","viewBox","xmlns","d","role","checkbox","type","onClick","variant","htmlFor","isSlotUsed","ref","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-checkbox/ic-checkbox.css?tag=ic-checkbox&encapsulation=shadow","../web-components/dist/collection/components/ic-checkbox/ic-checkbox.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host(.disabled) {\n color: var(--ic-architectural-200);\n pointer-events: none;\n}\n\n.container {\n display: flex;\n width: -moz-fit-content;\n width: fit-content;\n padding: var(--ic-space-xxs) 0 var(--ic-space-xxs) var(--ic-space-xxs);\n margin-bottom: var(--ic-space-xxs);\n align-items: center;\n}\n\n:host(.small) .container {\n margin-bottom: var(--ic-space-xxxs);\n}\n\n.checkbox {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n display: block;\n position: relative;\n top: 0;\n left: 0;\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n background-color: var(--ic-architectural-white);\n border: var(--ic-border-width) solid var(--ic-architectural-400);\n border-radius: var(--ic-border-radius);\n outline: none;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n flex-shrink: 0;\n}\n\n:host .container svg {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host(.small) .checkbox,\n:host(.small) .container svg {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n}\n\n:host(.large) .checkbox,\n:host(.large) .container svg {\n width: var(--ic-space-xl);\n height: var(--ic-space-xl);\n}\n\n.checkbox:checked {\n background-color: var(--ic-action-default);\n border: var(--ic-border-width) solid var(--ic-action-default);\n transition: var(--ic-easing-transition-slow);\n}\n\n.checkbox:checked:disabled {\n background-color: var(--ic-architectural-200);\n}\n\n.checkbox:indeterminate,\n.checkbox.indeterminate:checked {\n background-color: var(--ic-architectural-white);\n border: 0.125rem solid var(--ic-action-default);\n}\n\n.checkbox:checked:hover {\n background-color: var(--ic-action-default-hover);\n}\n\n.checkbox:indeterminate:hover,\n.checkbox.indeterminate:checked:hover {\n background-color: var(--ic-action-default-bg-hover-no-alpha);\n border: 0.125rem solid var(--ic-action-default-hover);\n}\n\n.checkbox:checked:active {\n background-color: var(--ic-action-default-active);\n}\n\n.checkbox:indeterminate:active,\n.checkbox.indeterminate:checked:active {\n background-color: var(--ic-action-default-bg-active-no-alpha);\n border: 0.125rem solid var(--ic-action-default-active);\n}\n\n.checkbox:hover {\n background-color: var(--ic-action-default-bg-hover-no-alpha);\n box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-hover);\n border: var(--ic-border-width) solid var(--ic-action-default-hover);\n}\n\n.checkbox:active {\n background-color: var(--ic-action-default-bg-active-no-alpha);\n box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-active);\n border: var(--ic-border-width) solid var(--ic-action-default-active);\n}\n\n.checkbox:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n.checkbox:disabled {\n border: var(--ic-border-width) dashed var(--ic-architectural-200);\n}\n\n.checkbox-label {\n padding-left: var(--ic-space-sm);\n}\n\n.checkbox-label:hover {\n cursor: pointer;\n}\n\n.checkmark {\n position: relative;\n right: calc(-1 * var(--ic-space-lg));\n margin-left: calc(-1 * var(--ic-space-lg));\n fill: white;\n z-index: 1;\n background-color: transparent;\n pointer-events: none;\n flex-shrink: 0;\n}\n\n:host(.small) .checkmark {\n margin-left: calc(-1 * var(--ic-space-md));\n right: calc(-1 * var(--ic-space-md));\n}\n\n:host(.large) .checkmark {\n margin-left: calc(-1 * var(--ic-space-xl));\n right: calc(-1 * var(--ic-space-xl));\n}\n\n.indeterminate-symbol {\n position: relative;\n width: 0.875rem;\n height: var(--ic-space-xxxs);\n right: -1.188rem;\n margin-left: -0.875rem;\n z-index: 1;\n background-color: var(--ic-action-default);\n pointer-events: none;\n flex-shrink: 0;\n}\n\n:host(.small) .indeterminate-symbol {\n width: 0.6rem;\n right: -0.8rem;\n margin-left: -0.6rem;\n}\n\n:host(.large) .indeterminate-symbol {\n width: 1.25rem;\n right: -1.625rem;\n margin-left: -1.25rem;\n}\n\n.container:hover .indeterminate-symbol {\n background-color: var(--ic-action-default-hover);\n}\n\n.container:active .indeterminate-symbol {\n background-color: var(--ic-action-default-active);\n}\n\n.additional-field-wrapper {\n margin-left: calc(var(--ic-space-md) + var(--ic-space-lg));\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\n.branch-corner {\n color: var(--ic-action-default);\n height: var(--ic-space-md);\n width: var(--ic-space-xl);\n border-radius: 0 0 0 0.188rem;\n border-bottom: 0.125rem solid var(--ic-action-default);\n border-left: 0.125rem solid var(--ic-action-default);\n}\n\n.dynamic-container {\n display: flex;\n position: relative;\n margin: var(--ic-space-xxxs) 0 var(--ic-space-xxs) var(--ic-space-md);\n gap: var(--ic-space-xs);\n}\n\n.dynamic-text {\n color: var(--ic-action-default);\n margin-top: calc(var(--ic-space-sm) / 2);\n margin-bottom: var(--ic-space-xs);\n border-radius: 2%;\n}\n\n@media (max-width: 576px) {\n ::slotted(ic-text-field) {\n --input-width: 100%;\n }\n}\n\n@media (forced-colors: active) {\n /* Styles here only apply to Forced Colors Mode */\n .checkbox {\n -webkit-appearance: revert;\n -moz-appearance: revert;\n appearance: revert;\n transition: none;\n }\n\n .checkbox:checked {\n transition: none;\n }\n\n .checkbox:focus-visible {\n outline: 0.125rem solid highlight;\n }\n\n .checkbox:disabled:not(:checked) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n border-color: GrayText;\n }\n\n .checkmark {\n fill: none;\n }\n\n .indeterminate-symbol {\n display: none;\n }\n}\n\n/* Right to left */\n.checkmark:dir(rtl) {\n right: 0;\n}\n\n.checkbox-label:dir(rtl) {\n padding-right: var(--ic-space-sm);\n padding-left: 0;\n}\n\n.indeterminate-symbol:dir(rtl) {\n right: 0.288rem;\n}\n\n.branch-corner:dir(rtl) {\n border-radius: 0 0 0.188rem 0;\n border-right: 0.125rem solid var(--ic-action-default);\n border-left: none;\n}\n\n.dynamic-container:dir(rtl) {\n margin: var(--ic-space-xxxs) var(--ic-space-sm) var(--ic-space-xxs) 0;\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, renderHiddenInput, removeHiddenInput, addFormResetListener, removeFormResetListener, removeDisabledFalse, isPropDefined, } from \"../../utils/helpers\";\n/**\n * @slot additional-field - Content to be displayed alongside a checkbox.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class Checkbox {\n constructor() {\n this.handleClick = () => {\n this.checked = !this.checked;\n this.displayIndeterminate = this.nativeIndeterminateBehaviour\n ? false\n : this.indeterminate && this.checked;\n this.icCheck.emit();\n this.checkboxChecked.emit();\n };\n this.handleFormReset = () => {\n this.checked = this.initiallyChecked;\n };\n this.additionalFieldDisplay = \"static\";\n this.checked = false;\n this.initiallyChecked = this.checked;\n this.disabled = false;\n this.dynamicText = \"This selection requires additional answers\";\n this.form = undefined;\n this.formaction = undefined;\n this.formenctype = undefined;\n this.formmethod = undefined;\n this.formnovalidate = undefined;\n this.formtarget = undefined;\n this.groupLabel = undefined;\n this.indeterminate = false;\n this.displayIndeterminate = this.indeterminate;\n this.label = undefined;\n this.name = undefined;\n this.nativeIndeterminateBehaviour = false;\n this.size = undefined;\n this.small = false;\n this.value = undefined;\n this.hideLabel = false;\n }\n watchDisabledHandler() {\n removeDisabledFalse(this.disabled, this.el);\n }\n watchIndeterminateHandler() {\n this.displayIndeterminate = this.nativeIndeterminateBehaviour\n ? this.indeterminate\n : this.indeterminate && this.checked;\n }\n componentWillLoad() {\n removeDisabledFalse(this.disabled, this.el);\n addFormResetListener(this.el, this.handleFormReset);\n const checkboxGroup = this.el.parentElement;\n if (checkboxGroup) {\n if (!this.name)\n this.name = checkboxGroup.name;\n this.groupLabel = checkboxGroup.label;\n }\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([\n { prop: this.label, propName: \"label\" },\n { prop: this.value, propName: \"value\" },\n ], \"Checkbox\");\n }\n componentDidRender() {\n if (this.additionalFieldDisplay === \"static\") {\n const textfield = this.el.querySelector(\"ic-text-field\");\n if (!this.checked) {\n textfield === null || textfield === void 0 ? void 0 : textfield.setAttribute(\"disabled\", \"\");\n }\n else {\n textfield === null || textfield === void 0 ? void 0 : textfield.removeAttribute(\"disabled\");\n }\n }\n else if (this.additionalFieldContainer) {\n this.additionalFieldContainer.style.display = !this.checked\n ? \"none\"\n : \"flex\";\n }\n }\n disconnectedCallback() {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n /**\n * Sets focus on the checkbox.\n */\n async setFocus() {\n var _a;\n (_a = this.el.shadowRoot.querySelector(\".checkbox\")) === null || _a === void 0 ? void 0 : _a.focus();\n }\n render() {\n const { additionalFieldDisplay, checked, disabled, dynamicText, el, form, formaction, formenctype, formmethod, formnovalidate, formtarget, displayIndeterminate, groupLabel, label, name, size, small, value, } = this;\n const id = `ic-checkbox-${isPropDefined(label) || value}-${groupLabel}`.replace(/ /g, \"-\");\n const parentElementSize = el.parentElement\n .size;\n checked\n ? renderHiddenInput(true, el, name, checked && value, disabled)\n : removeHiddenInput(el);\n return (h(Host, { class: {\n disabled,\n small,\n [`${size || parentElementSize}`]: true,\n } }, h(\"div\", { class: \"container\" }, displayIndeterminate && h(\"div\", { class: \"indeterminate-symbol\" }), !displayIndeterminate && checked && (h(\"svg\", { class: \"checkmark\", viewBox: \"0 0 24 24\", xmlns: \"http://www.w3.org/2000/svg\", \"fill-rule\": \"evenodd\", \"clip-rule\": \"evenodd\" }, h(\"title\", null, \"checkmark icon\"), h(\"path\", { d: \"M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z\" }))), h(\"input\", { role: \"checkbox\", class: {\n checkbox: true,\n checked,\n indeterminate: displayIndeterminate,\n }, type: \"checkbox\", name: name, id: id, value: value, disabled: disabled ? true : null, checked: checked, indeterminate: displayIndeterminate, onClick: this.handleClick, form: form, formaction: formaction, formenctype: formenctype, formmethod: formmethod, formnovalidate: formnovalidate, formtarget: formtarget, \"aria-label\": this.hideLabel ? this.label : undefined }), !this.hideLabel && (h(\"ic-typography\", { class: \"checkbox-label\", variant: \"body\" }, h(\"label\", { htmlFor: id }, label)))), isSlotUsed(el, \"additional-field\") && (h(\"div\", { class: \"dynamic-container\", ref: (el) => (this.additionalFieldContainer = el) }, additionalFieldDisplay === \"dynamic\" && (h(\"div\", { class: \"branch-corner\" })), h(\"div\", null, additionalFieldDisplay === \"dynamic\" && (h(\"ic-typography\", { variant: \"caption\" }, h(\"p\", { class: \"dynamic-text\", \"aria-live\": \"polite\" }, dynamicText))), h(\"div\", { class: {\n \"additional-field-wrapper\": additionalFieldDisplay === \"static\",\n } }, h(\"slot\", { name: \"additional-field\" })))))));\n }\n static get is() { return \"ic-checkbox\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-checkbox.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-checkbox.css\"]\n };\n }\n static get properties() {\n return {\n \"additionalFieldDisplay\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAdditionalFieldTypes\",\n \"resolved\": \"\\\"dynamic\\\" | \\\"static\\\"\",\n \"references\": {\n \"IcAdditionalFieldTypes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAdditionalFieldTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The style of additionalField that will be displayed if used.\"\n },\n \"attribute\": \"additional-field-display\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"static\\\"\"\n },\n \"checked\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the checkbox will be set to the checked state. This is only the initial state and will be updated to unchecked if the checkbox is clicked.\"\n },\n \"attribute\": \"checked\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the checkbox will be set to the disabled state.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"dynamicText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The text to be displayed when dynamic.\"\n },\n \"attribute\": \"dynamic-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"This selection requires additional answers\\\"\"\n },\n \"form\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The <form> element to associate the checkbox with.\"\n },\n \"attribute\": \"form\",\n \"reflect\": false\n },\n \"formaction\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The URL that processes the information submitted by the checkbox. It overrides the action attribute of the checkbox's form owner. Does nothing if there is no form owner.\"\n },\n \"attribute\": \"formaction\",\n \"reflect\": false\n },\n \"formenctype\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The way the submitted form data is encoded.\"\n },\n \"attribute\": \"formenctype\",\n \"reflect\": false\n },\n \"formmethod\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The HTTP method used to submit the form.\"\n },\n \"attribute\": \"formmethod\",\n \"reflect\": false\n },\n \"formnovalidate\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the form will not be validated when submitted.\"\n },\n \"attribute\": \"formnovalidate\",\n \"reflect\": false\n },\n \"formtarget\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The place to display the response from submitting the form. It overrides the target attribute of the checkbox's form owner.\"\n },\n \"attribute\": \"formtarget\",\n \"reflect\": false\n },\n \"groupLabel\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The group label for the checkbox.\"\n },\n \"attribute\": \"group-label\",\n \"reflect\": false\n },\n \"indeterminate\": {\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 indeterminate state will be displayed when checked.\"\n },\n \"attribute\": \"indeterminate\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label for the checkbox.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name for the checkbox. If not set when used in a checkbox group, the name will be based on the group name.\"\n },\n \"attribute\": \"name\",\n \"reflect\": false\n },\n \"nativeIndeterminateBehaviour\": {\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 checkbox will behave like a native checkbox where the `indeterminate` prop sets the indeterminate visual styling, independent of the `checked` state.\"\n },\n \"attribute\": \"native-indeterminate-behaviour\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"default\\\" | \\\"large\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the checkbox to be displayed. This does not affect the font size of the label. If a checkbox is contained in a checkbox group, this will override the size set on checkbox group.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false\n },\n \"small\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Set prop `size` to \\\"small\\\" instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"small\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"value\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The value for the checkbox.\"\n },\n \"attribute\": \"value\",\n \"reflect\": false\n },\n \"hideLabel\": {\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 label will be hidden and the required label value will be applied as an aria-label.\"\n },\n \"attribute\": \"hide-label\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n }\n };\n }\n static get states() {\n return {\n \"initiallyChecked\": {},\n \"displayIndeterminate\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"checkboxChecked\",\n \"name\": \"checkboxChecked\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This event should not be used anymore. Use icCheck instead.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icCheck\",\n \"name\": \"icCheck\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a checkbox has been checked.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }];\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n },\n \"HTMLElement\": {\n \"location\": \"global\",\n \"id\": \"global::HTMLElement\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the checkbox.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }, {\n \"propName\": \"indeterminate\",\n \"methodName\": \"watchIndeterminateHandler\"\n }];\n }\n}\n//# sourceMappingURL=ic-checkbox.js.map\n"],"mappings":"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"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as t,c as i,h as a,g as e}from"./p-8455d1bb.js";import{i as s}from"./p-8ab58daa.js";const c='.title-bar-wrapper,.header-container,.description-actions,.action-area,.custom-actions-wrapper{display:flex}.title-bar-wrapper,.action-area,.custom-actions-wrapper{gap:var(--ic-space-xs)}.title-bar-wrapper{flex-direction:column;padding:var(--ic-space-sm) var(--ic-space-xs);border-bottom:var(--ic-space-1px) solid var(--ic-architectural-300)}.full-width{padding:var(--ic-space-sm) 0;border-bottom:none}ic-typography.heading h3{margin:0}ic-typography.ic-typography-subtitle-small{color:var(--ic-color-tertiary-text)}ic-typography.ic-typography-h3,::slotted([slot="header"]){max-width:50rem}ic-typography.ic-typography-body,::slotted([slot="description"]){color:var(--ic-color-secondary-text)}ic-typography.ic-typography-body,ic-typography.ic-typography-subtitle-small,::slotted([slot="description"]){max-width:40rem}.density-input{--input-width:7.625rem}@media (max-width: 1200px){.header-container{flex-direction:column}}@media (min-width: 1201px){.header-container{gap:var(--ic-space-xs);align-items:baseline}}@media (min-width: 769px){.description-actions{justify-content:space-between}}@media (max-width: 768px){.description-actions{flex-direction:column;align-items:flex-start;gap:var(--ic-space-xs)}}@media (min-width: 577px){.action-area{align-items:center}}@media (max-width: 576px){.action-area{flex-direction:column}}';const r="Title Bar";const o=class{constructor(a){t(this,a);this.icTableDensityUpdate=i(this,"icTableDensityUpdate",7);this.initialDensitySelectOption="default";this.isEmbedded=false;this.changeDensity=t=>{this.icTableDensityUpdate.emit({value:t.detail.value})};this.description=undefined;this.heading=r;this.hideDensitySelect=false;this.metadata=undefined}componentWillLoad(){const t=this.el.parentElement;if(t.tagName==="IC-DATA-TABLE"){const i=t;this.initialDensitySelectOption=i.density;this.isEmbedded=i.embedded;if(this.heading===r){this.heading=i.caption}}}render(){const{changeDensity:t,description:i,el:e,heading:c,hideDensitySelect:r,initialDensitySelectOption:o,isEmbedded:n,metadata:l}=this;const p=s(e,"primary-action")||s(e,"custom-actions")||!r;const d=s(e,"description")||i;return a("div",{class:{"title-bar-wrapper":true,"full-width":n}},a("div",{class:"header-container"},a("slot",{name:"heading"},a("ic-typography",{variant:"h3",className:"heading"},a("h3",null,c))),l&&a("ic-typography",{variant:"subtitle-small"},l)),(p||d)&&a("div",{class:"description-actions"},a("slot",{name:"description"},i&&a("ic-typography",{variant:"body"},i)),p&&a("div",{class:"action-area"},s(e,"custom-actions")&&a("div",{class:"custom-actions-wrapper"},a("slot",{name:"custom-actions"})),!r&&a("ic-select",{small:true,label:"Change density",class:"density-input",hideLabel:true,options:[{label:"Default",value:"default"},{label:"Dense",value:"dense"},{label:"Spacious",value:"spacious"}],value:o,onIcChange:t}),s(e,"primary-action")&&a("slot",{name:"primary-action"}))))}get el(){return e(this)}};o.style=c;export{o as ic_data_table_title_bar};
|
2
|
+
//# sourceMappingURL=p-5a90eaa8.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icDataTableTitleBarCss","DEFAULT_TITLE_BAR_HEADING","DataTableTitleBar","this","initialDensitySelectOption","isEmbedded","changeDensity","ev","icTableDensityUpdate","emit","value","detail","componentWillLoad","parentEl","el","parentElement","tagName","dataTable","density","embedded","heading","caption","render","description","hideDensitySelect","metadata","showActionArea","isSlotUsed","hasDescription","h","class","name","variant","className","small","label","hideLabel","options","onIcChange"],"sources":["src/components/ic-data-table-title-bar/ic-data-table-title-bar.css?tag=ic-data-table-title-bar&encapsulation=shadow","src/components/ic-data-table-title-bar/ic-data-table-title-bar.tsx"],"sourcesContent":[".title-bar-wrapper,\n.header-container,\n.description-actions,\n.action-area,\n.custom-actions-wrapper {\n display: flex;\n}\n\n.title-bar-wrapper,\n.action-area,\n.custom-actions-wrapper {\n gap: var(--ic-space-xs);\n}\n\n.title-bar-wrapper {\n flex-direction: column;\n padding: var(--ic-space-sm) var(--ic-space-xs);\n border-bottom: var(--ic-space-1px) solid var(--ic-architectural-300);\n}\n\n.full-width {\n padding: var(--ic-space-sm) 0;\n border-bottom: none;\n}\n\nic-typography.heading h3 {\n margin: 0;\n}\n\nic-typography.ic-typography-subtitle-small {\n color: var(--ic-color-tertiary-text);\n}\n\nic-typography.ic-typography-h3,\n::slotted([slot=\"header\"]) {\n max-width: 50rem;\n}\n\nic-typography.ic-typography-body,\n::slotted([slot=\"description\"]) {\n color: var(--ic-color-secondary-text);\n}\n\nic-typography.ic-typography-body,\nic-typography.ic-typography-subtitle-small,\n::slotted([slot=\"description\"]) {\n max-width: 40rem;\n}\n\n.density-input {\n --input-width: 7.625rem;\n}\n\n@media (max-width: 1200px) {\n .header-container {\n flex-direction: column;\n }\n}\n\n@media (min-width: 1201px) {\n .header-container {\n gap: var(--ic-space-xs);\n align-items: baseline;\n }\n}\n\n@media (min-width: 769px) {\n .description-actions {\n justify-content: space-between;\n }\n}\n\n@media (max-width: 768px) {\n .description-actions {\n flex-direction: column;\n align-items: flex-start;\n gap: var(--ic-space-xs);\n }\n}\n\n@media (min-width: 577px) {\n .action-area {\n align-items: center;\n }\n}\n\n@media (max-width: 576px) {\n .action-area {\n flex-direction: column;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n h,\n} from \"@stencil/core\";\nimport { IcSelectCustomEvent } from \"@ukic/web-components/dist/types/interface\";\nimport {\n IcDataTableDensityOptions,\n IcDensityUpdateEventDetail,\n} from \"../ic-data-table/ic-data-table.types\";\nimport { isSlotUsed } from \"../../utils/helpers\";\n\nconst DEFAULT_TITLE_BAR_HEADING = \"Title Bar\";\n\n/**\n * @slot primary-action - Render an interactive element that will perform a primary action. Renders to the right of the density select.\n * @slot custom-actions - Render additional custom actions to the left of the density select.\n * @slot heading - The heading to render on the data table title bar.\n * @slot description - Render an alternative description in the description section.\n */\n@Component({\n tag: \"ic-data-table-title-bar\",\n styleUrl: \"ic-data-table-title-bar.css\",\n shadow: true,\n})\nexport class DataTableTitleBar {\n private initialDensitySelectOption: IcDataTableDensityOptions = \"default\";\n private isEmbedded: boolean = false;\n\n @Element() el: HTMLIcDataTableTitleBarElement;\n\n /**\n * The description that is displayed below the `heading` and `metadata`. Can be overridden with the `description` slot.\n */\n @Prop() description?: string;\n\n /**\n * The heading of the title bar. Can be overridden with the `heading` slot. If used with an `ic-data-table` it will default to the table's `caption` unless overridden.\n */\n @Prop() heading?: string = DEFAULT_TITLE_BAR_HEADING;\n\n /**\n * When `true`, the density select will not be rendered.\n */\n @Prop() hideDensitySelect?: boolean = false;\n\n /**\n * The metadata displayed next to the `heading`.\n */\n @Prop() metadata?: string;\n\n /**\n * Emitted when the table density select value is changed.\n */\n @Event() icTableDensityUpdate: EventEmitter<IcDensityUpdateEventDetail>;\n\n componentWillLoad(): void {\n const parentEl = this.el.parentElement;\n if (parentEl.tagName === \"IC-DATA-TABLE\") {\n const dataTable = parentEl as HTMLIcDataTableElement;\n this.initialDensitySelectOption = dataTable.density;\n this.isEmbedded = dataTable.embedded;\n if (this.heading === DEFAULT_TITLE_BAR_HEADING) {\n this.heading = dataTable.caption;\n }\n }\n }\n\n private changeDensity = (\n ev: IcSelectCustomEvent<IcDensityUpdateEventDetail>\n ) => {\n this.icTableDensityUpdate.emit({ value: ev.detail.value });\n };\n\n render() {\n const {\n changeDensity,\n description,\n el,\n heading,\n hideDensitySelect,\n initialDensitySelectOption,\n isEmbedded,\n metadata,\n } = this;\n const showActionArea =\n isSlotUsed(el, \"primary-action\") ||\n isSlotUsed(el, \"custom-actions\") ||\n !hideDensitySelect;\n\n const hasDescription = isSlotUsed(el, \"description\") || description;\n return (\n <div\n class={{\n \"title-bar-wrapper\": true,\n \"full-width\": isEmbedded,\n }}\n >\n <div class=\"header-container\">\n <slot name=\"heading\">\n <ic-typography variant=\"h3\" className=\"heading\">\n <h3>{heading}</h3>\n </ic-typography>\n </slot>\n {metadata && (\n <ic-typography variant=\"subtitle-small\">{metadata}</ic-typography>\n )}\n </div>\n {(showActionArea || hasDescription) && (\n <div class=\"description-actions\">\n <slot name=\"description\">\n {description && (\n <ic-typography variant=\"body\">{description}</ic-typography>\n )}\n </slot>\n {showActionArea && (\n <div class=\"action-area\">\n {isSlotUsed(el, \"custom-actions\") && (\n <div class=\"custom-actions-wrapper\">\n <slot name=\"custom-actions\" />\n </div>\n )}\n {!hideDensitySelect && (\n <ic-select\n small\n label=\"Change density\"\n class=\"density-input\"\n hideLabel\n options={[\n { label: \"Default\", value: \"default\" },\n { label: \"Dense\", value: \"dense\" },\n { label: \"Spacious\", value: \"spacious\" },\n ]}\n value={initialDensitySelectOption}\n onIcChange={changeDensity}\n ></ic-select>\n )}\n {isSlotUsed(el, \"primary-action\") && (\n <slot name=\"primary-action\" />\n )}\n </div>\n )}\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"6FAAA,MAAMA,EAAyB,izCCe/B,MAAMC,EAA4B,Y,MAarBC,EAAiB,M,oFACpBC,KAAAC,2BAAwD,UACxDD,KAAAE,WAAsB,MAyCtBF,KAAAG,cACNC,IAEAJ,KAAKK,qBAAqBC,KAAK,CAAEC,MAAOH,EAAGI,OAAOD,OAAQ,E,wCAhCjCT,E,uBAKW,M,wBAYtC,iBAAAW,GACE,MAAMC,EAAWV,KAAKW,GAAGC,cACzB,GAAIF,EAASG,UAAY,gBAAiB,CACxC,MAAMC,EAAYJ,EAClBV,KAAKC,2BAA6Ba,EAAUC,QAC5Cf,KAAKE,WAAaY,EAAUE,SAC5B,GAAIhB,KAAKiB,UAAYnB,EAA2B,CAC9CE,KAAKiB,QAAUH,EAAUI,O,GAW/B,MAAAC,GACE,MAAMhB,cACJA,EAAaiB,YACbA,EAAWT,GACXA,EAAEM,QACFA,EAAOI,kBACPA,EAAiBpB,2BACjBA,EAA0BC,WAC1BA,EAAUoB,SACVA,GACEtB,KACJ,MAAMuB,EACJC,EAAWb,EAAI,mBACfa,EAAWb,EAAI,oBACdU,EAEH,MAAMI,EAAiBD,EAAWb,EAAI,gBAAkBS,EACxD,OACEM,EAAA,OACEC,MAAO,CACL,oBAAqB,KACrB,aAAczB,IAGhBwB,EAAA,OAAKC,MAAM,oBACTD,EAAA,QAAME,KAAK,WACTF,EAAA,iBAAeG,QAAQ,KAAKC,UAAU,WACpCJ,EAAA,UAAKT,KAGRK,GACCI,EAAA,iBAAeG,QAAQ,kBAAkBP,KAG3CC,GAAkBE,IAClBC,EAAA,OAAKC,MAAM,uBACTD,EAAA,QAAME,KAAK,eACRR,GACCM,EAAA,iBAAeG,QAAQ,QAAQT,IAGlCG,GACCG,EAAA,OAAKC,MAAM,eACRH,EAAWb,EAAI,mBACde,EAAA,OAAKC,MAAM,0BACTD,EAAA,QAAME,KAAK,qBAGbP,GACAK,EAAA,aACEK,MAAK,KACLC,MAAM,iBACNL,MAAM,gBACNM,UAAS,KACTC,QAAS,CACP,CAAEF,MAAO,UAAWzB,MAAO,WAC3B,CAAEyB,MAAO,QAASzB,MAAO,SACzB,CAAEyB,MAAO,WAAYzB,MAAO,aAE9BA,MAAON,EACPkC,WAAYhC,IAGfqB,EAAWb,EAAI,mBACde,EAAA,QAAME,KAAK,qB"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as t,h as e,H as i,g as a}from"./p-8455d1bb.js";import{i as s,f as n,D as o,j as r}from"./p-bf06977d.js";import"./p-fd186591.js";const l='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;z-index:var(--ic-z-index-page-header)}:host(.sticky){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}header{background-color:var(--ic-architectural-40)}header.border-bottom{border-bottom:var(--ic-border-default)}header.tabs{padding-top:var(--ic-space-md)}.breadcrumb-area{margin-bottom:var(--ic-space-md)}.main-content{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"title-area action-area"\n "input-area action-area";-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md);justify-content:space-between;width:100%}.title-area{display:flex;flex-direction:column;flex:1;min-width:19rem;grid-area:title-area}.header-content{display:flex;align-items:center;width:100%;flex-wrap:wrap;-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md)}.heading{display:inline-block;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.subheading-content{margin-top:var(--ic-space-xs)}.subheading-content.small{margin-top:var(--ic-space-md)}.action-area{display:flex;gap:var(--ic-space-md);flex-flow:row wrap;justify-self:end;justify-content:flex-end;height:-moz-fit-content;height:fit-content;grid-area:action-area}.input-area,.navigation-area{margin-top:var(--ic-space-md);width:100%}.tabs-slot{display:flex;overflow-x:auto;padding:0.5rem;margin:-0.5rem}.tabs-slot::-webkit-scrollbar{display:none}.input-area{grid-area:input-area}@media screen and (max-width: 576px){::slotted(ic-text-field){--input-width:100%;max-width:20rem}.main-content{grid-template-areas:"title-area"\n "action-area"\n "input-area";justify-content:flex-start}.title-area{min-width:0}.action-area{min-width:100%;margin-top:var(--ic-space-md);justify-content:start}}@media screen and (min-width: 992px){:host(.sticky-desktop){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}}';const d=class{constructor(e){t(this,e);this.resizeObserver=null;this.resizeObserverCallback=()=>{if(this.reverseOrder&&s(this.el,"actions")){this.applyReverseOrder()}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback()}));this.resizeObserver.observe(this.el)};this.applyReverseOrder=()=>{const t=n();if(t!==this.deviceSize){this.deviceSize=t}const e=this.el.shadowRoot.querySelector("div.action-area");const i=[];for(let t=0;t<this.actionContent.length;t++){const e=this.actionContent[t];let a=e.offsetHeight;if(a===undefined){a=0}i.push(a)}const a=Math.max(...i);let s=e.offsetHeight;if(s===undefined){s=0}const r=()=>{this.actionContent=this.actionContent.reverse();this.actionContent.forEach((t=>{this.el.append(t)}));this.areButtonsReversed=!this.areButtonsReversed};if(this.deviceSize>o.S&&s<=a&&!this.areButtonsReversed||(this.deviceSize>o.S&&s>a||this.deviceSize<=o.S)&&this.areButtonsReversed){r()}};this.actionContent=undefined;this.areButtonsReversed=false;this.deviceSize=o.XL;this.aligned="left";this.border=true;this.heading=undefined;this.reverseOrder=false;this.size="default";this.small=false;this.sticky=false;this.stickyDesktopOnly=false;this.subheading=undefined}disconnectedCallback(){if(this.resizeObserver!==null){this.resizeObserver.disconnect()}}componentWillLoad(){this.actionContent=Array.from(this.el.querySelectorAll(`[slot="actions"]`))}componentDidLoad(){r(this.runResizeObserver)}render(){const{small:t,size:a,border:n,heading:o,subheading:r,aligned:l,sticky:d,stickyDesktopOnly:c}=this;const h=`${s(this.el,"heading")?this.el.querySelector('[slot="heading"]').textContent:o!==null&&o!==void 0?o:""} page sections`;return e(i,{class:{["sticky"]:d,["sticky-desktop"]:!d&&c},"aria-label":this.el.ariaLabel||"page header"},e("header",{class:{["border-bottom"]:n,["tabs"]:s(this.el,"tabs")},role:"presentation"},e("ic-section-container",{aligned:l,fullHeight:s(this.el,"tabs")},s(this.el,"breadcrumbs")&&e("div",{class:"breadcrumb-area"},e("slot",{name:"breadcrumbs"})),e("div",{class:"main-content"},e("div",{class:"title-area"},e("div",{class:"header-content"},e("slot",{name:"heading"},e("ic-typography",{variant:t||a==="small"?"h4":"h2",class:"heading"},e("h2",null,o))),e("slot",{name:"heading-adornment"})),e("div",{class:{["subheading-content"]:!!r||s(this.el,"subheading"),["small"]:t||a==="small"}},e("slot",{name:"subheading"},e("ic-typography",{variant:"body"},r)))),s(this.el,"actions")&&e("div",{class:"action-area"},e("slot",{name:"actions"})),s(this.el,"input")&&e("div",{class:"input-area"},e("slot",{name:"input"}))),(s(this.el,"stepper")||s(this.el,"tabs"))&&e("div",{class:"navigation-area"},s(this.el,"stepper")&&!s(this.el,"tabs")&&e("slot",{name:"stepper"}),s(this.el,"tabs")&&e("nav",{"aria-label":h},e("ic-horizontal-scroll",null,e("ul",{class:"tabs-slot"},e("slot",{name:"tabs"}))))))))}get el(){return a(this)}};d.style=l;export{d as ic_page_header};
|
2
|
+
//# sourceMappingURL=p-5dd6381a.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icPageHeaderCss","PageHeader","constructor","hostRef","this","resizeObserver","resizeObserverCallback","reverseOrder","isSlotUsed","el","applyReverseOrder","runResizeObserver","ResizeObserver","observe","currSize","getCurrentDeviceSize","deviceSize","actionArea","shadowRoot","querySelector","actionHeights","i","actionContent","length","action","actionHeight","offsetHeight","undefined","push","max","Math","actionAreaHeight","appendActionContent","reverse","forEach","btn","append","areButtonsReversed","DEVICE_SIZES","S","XL","aligned","border","heading","size","small","sticky","stickyDesktopOnly","subheading","disconnectedCallback","disconnect","componentWillLoad","Array","from","querySelectorAll","componentDidLoad","checkResizeObserver","render","navAriaLabel","textContent","h","Host","class","ariaLabel","role","fullHeight","name","variant"],"sources":["../web-components/dist/collection/components/ic-page-header/ic-page-header.css?tag=ic-page-header&encapsulation=shadow","../web-components/dist/collection/components/ic-page-header/ic-page-header.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/**\n * @prop --ic-z-index-page-header: z-index of page-header\n */\n\n:host {\n display: block;\n z-index: var(--ic-z-index-page-header);\n}\n\n:host(.sticky) {\n position: sticky;\n top: 0;\n box-shadow: var(--ic-elevation-overlay);\n z-index: var(--ic-z-index-sticky-page-header);\n}\n\nheader {\n background-color: var(--ic-architectural-40);\n}\n\nheader.border-bottom {\n border-bottom: var(--ic-border-default);\n}\n\nheader.tabs {\n padding-top: var(--ic-space-md);\n}\n\n.breadcrumb-area {\n margin-bottom: var(--ic-space-md);\n}\n\n.main-content {\n display: grid;\n grid-template-columns: auto 1fr;\n grid-template-areas:\n \"title-area action-area\"\n \"input-area action-area\";\n -moz-column-gap: var(--ic-space-md);\n column-gap: var(--ic-space-md);\n justify-content: space-between;\n width: 100%;\n}\n\n.title-area {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 19rem;\n grid-area: title-area;\n}\n\n.header-content {\n display: flex;\n align-items: center;\n width: 100%;\n flex-wrap: wrap;\n -moz-column-gap: var(--ic-space-md);\n column-gap: var(--ic-space-md);\n}\n\n.heading {\n display: inline-block;\n overflow-wrap: break-word;\n -webkit-hyphens: auto;\n hyphens: auto;\n}\n\n.subheading-content {\n margin-top: var(--ic-space-xs);\n}\n\n.subheading-content.small {\n margin-top: var(--ic-space-md);\n}\n\n.action-area {\n display: flex;\n gap: var(--ic-space-md);\n flex-flow: row wrap;\n justify-self: end;\n justify-content: flex-end;\n height: -moz-fit-content;\n height: fit-content;\n grid-area: action-area;\n}\n\n.input-area,\n.navigation-area {\n margin-top: var(--ic-space-md);\n width: 100%;\n}\n\n.tabs-slot {\n display: flex;\n overflow-x: auto;\n padding: 0.5rem;\n margin: -0.5rem;\n}\n\n.tabs-slot::-webkit-scrollbar {\n display: none;\n}\n\n.input-area {\n grid-area: input-area;\n}\n\n@media screen and (max-width: 576px) {\n ::slotted(ic-text-field) {\n --input-width: 100%;\n\n max-width: 20rem;\n }\n\n .main-content {\n grid-template-areas:\n \"title-area\"\n \"action-area\"\n \"input-area\";\n justify-content: flex-start;\n }\n\n .title-area {\n min-width: 0;\n }\n\n .action-area {\n min-width: 100%;\n margin-top: var(--ic-space-md);\n justify-content: start;\n }\n}\n\n@media screen and (min-width: 992px) {\n :host(.sticky-desktop) {\n position: sticky;\n top: 0;\n box-shadow: var(--ic-elevation-overlay);\n z-index: var(--ic-z-index-sticky-page-header);\n }\n}\n","import { Host, h } from \"@stencil/core\";\nimport { isSlotUsed, DEVICE_SIZES, getCurrentDeviceSize, checkResizeObserver, } from \"../../utils/helpers\";\n/**\n * @slot breadcrumbs - Content will be rendered in the breadcrumb area, above the title and action areas.\n * @slot heading - Content will be rendered in the title area, in place of the heading.\n * @slot subheading - Content will be rendered in the title area, in place of the subheading.\n * @slot heading-adornment - Content will be rendered in the title area, adjacent to the heading.\n * @slot actions - Content will be rendered in the action area, adjacent to the title area.\n * @slot input - Content will be rendered in the input area, below the title area and adjacent to the action area.\n * @slot stepper - Content will be rendered in the navigation area, below the title and action areas. Note: stepper slot cannot be used when the tabs slot is being used.\n * @slot tabs - Content will be rendered in the navigation area, below the title and action areas. Note: the stepper slot cannot be used when the tabs slot is being used.\n */\nexport class PageHeader {\n constructor() {\n this.resizeObserver = null;\n this.resizeObserverCallback = () => {\n if (this.reverseOrder && isSlotUsed(this.el, \"actions\")) {\n this.applyReverseOrder();\n }\n };\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback();\n });\n this.resizeObserver.observe(this.el);\n };\n this.applyReverseOrder = () => {\n const currSize = getCurrentDeviceSize();\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n const actionArea = this.el.shadowRoot.querySelector(\"div.action-area\");\n const actionHeights = [];\n /* For each button in the actions slot, check the height of the button and push this number into the actionHeights array and then find the greatest number in this array (i.e. find the height of the tallest button) */\n for (let i = 0; i < this.actionContent.length; i++) {\n const action = this.actionContent[i];\n let actionHeight = action.offsetHeight;\n if (actionHeight === undefined) {\n actionHeight = 0;\n }\n actionHeights.push(actionHeight);\n }\n const max = Math.max(...actionHeights);\n /* The smallest breakpoint displays buttons in the same order the user has slotted them in. When the device size is larger than the small breakpoint then the order of the button reverses due to best practice for reading patterns. If the device size is larger than the small breakpoint and the buttons have started to wrap then they follow the order the user has slotted them in. This logic is programmed based on the height of the action-area div that wraps the actions slot. If the height of the action-area div is taller than the height of the tallest button, then it is assumed that the taller height is caused by the buttons wrapping */\n let actionAreaHeight = actionArea.offsetHeight;\n if (actionAreaHeight === undefined) {\n actionAreaHeight = 0;\n }\n const appendActionContent = () => {\n this.actionContent = this.actionContent.reverse();\n this.actionContent.forEach((btn) => {\n this.el.append(btn);\n });\n this.areButtonsReversed = !this.areButtonsReversed;\n };\n if ((this.deviceSize > DEVICE_SIZES.S &&\n actionAreaHeight <= max &&\n !this.areButtonsReversed) ||\n (((this.deviceSize > DEVICE_SIZES.S && actionAreaHeight > max) ||\n this.deviceSize <= DEVICE_SIZES.S) &&\n this.areButtonsReversed)) {\n appendActionContent();\n }\n };\n this.actionContent = undefined;\n this.areButtonsReversed = false;\n this.deviceSize = DEVICE_SIZES.XL;\n this.aligned = \"left\";\n this.border = true;\n this.heading = undefined;\n this.reverseOrder = false;\n this.size = \"default\";\n this.small = false;\n this.sticky = false;\n this.stickyDesktopOnly = false;\n this.subheading = undefined;\n }\n disconnectedCallback() {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n componentWillLoad() {\n this.actionContent = Array.from(this.el.querySelectorAll(`[slot=\"actions\"]`));\n }\n componentDidLoad() {\n checkResizeObserver(this.runResizeObserver);\n }\n render() {\n const { small, size, border, heading, subheading, aligned, sticky, stickyDesktopOnly, } = this;\n const navAriaLabel = `${isSlotUsed(this.el, \"heading\")\n ? this.el.querySelector('[slot=\"heading\"]').textContent\n : heading !== null && heading !== void 0 ? heading : \"\"} page sections`;\n return (h(Host, { class: {\n [\"sticky\"]: sticky,\n [\"sticky-desktop\"]: !sticky && stickyDesktopOnly,\n }, \"aria-label\": this.el.ariaLabel || \"page header\" }, h(\"header\", { class: {\n [\"border-bottom\"]: border,\n [\"tabs\"]: isSlotUsed(this.el, \"tabs\"),\n }, role: \"presentation\" }, h(\"ic-section-container\", { aligned: aligned, fullHeight: isSlotUsed(this.el, \"tabs\") }, isSlotUsed(this.el, \"breadcrumbs\") && (h(\"div\", { class: \"breadcrumb-area\" }, h(\"slot\", { name: \"breadcrumbs\" }))), h(\"div\", { class: \"main-content\" }, h(\"div\", { class: \"title-area\" }, h(\"div\", { class: \"header-content\" }, h(\"slot\", { name: \"heading\" }, h(\"ic-typography\", { variant: small || size === \"small\" ? \"h4\" : \"h2\", class: \"heading\" }, h(\"h2\", null, heading))), h(\"slot\", { name: \"heading-adornment\" })), h(\"div\", { class: {\n [\"subheading-content\"]: !!subheading || isSlotUsed(this.el, \"subheading\"),\n [\"small\"]: small || size === \"small\",\n } }, h(\"slot\", { name: \"subheading\" }, h(\"ic-typography\", { variant: \"body\" }, subheading)))), isSlotUsed(this.el, \"actions\") && (h(\"div\", { class: \"action-area\" }, h(\"slot\", { name: \"actions\" }))), isSlotUsed(this.el, \"input\") && (h(\"div\", { class: \"input-area\" }, h(\"slot\", { name: \"input\" })))), (isSlotUsed(this.el, \"stepper\") ||\n isSlotUsed(this.el, \"tabs\")) && (h(\"div\", { class: \"navigation-area\" }, isSlotUsed(this.el, \"stepper\") &&\n !isSlotUsed(this.el, \"tabs\") && h(\"slot\", { name: \"stepper\" }), isSlotUsed(this.el, \"tabs\") && (h(\"nav\", { \"aria-label\": navAriaLabel }, h(\"ic-horizontal-scroll\", null, h(\"ul\", { class: \"tabs-slot\" }, h(\"slot\", { name: \"tabs\" })))))))))));\n }\n static get is() { return \"ic-page-header\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-page-header.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-page-header.css\"]\n };\n }\n static get properties() {\n return {\n \"aligned\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAlignment\",\n \"resolved\": \"\\\"center\\\" | \\\"full-width\\\" | \\\"left\\\"\",\n \"references\": {\n \"IcAlignment\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAlignment\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The alignment of the page header.\"\n },\n \"attribute\": \"aligned\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"left\\\"\"\n },\n \"border\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, a border will be displayed along the bottom of the page header.\"\n },\n \"attribute\": \"border\",\n \"reflect\": false,\n \"defaultValue\": \"true\"\n },\n \"heading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The title to render on the page header.\"\n },\n \"attribute\": \"heading\",\n \"reflect\": false\n },\n \"reverseOrder\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the reading pattern and tab order will change in the action area for viewport widths of above 576px and when actions have not wrapped.\"\n },\n \"attribute\": \"reverse-order\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizesNoLarge\",\n \"resolved\": \"\\\"default\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizesNoLarge\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizesNoLarge\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the page header component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"small\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Set prop `size` to \\\"small\\\" instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"small\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"sticky\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the page header will be sticky at all breakpoints.\"\n },\n \"attribute\": \"sticky\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"stickyDesktopOnly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the page header will only be sticky for viewport widths of 992px and above.\"\n },\n \"attribute\": \"sticky-desktop-only\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"subheading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The subtitle to render on the page header.\"\n },\n \"attribute\": \"subheading\",\n \"reflect\": false\n }\n };\n }\n static get states() {\n return {\n \"actionContent\": {},\n \"areButtonsReversed\": {},\n \"deviceSize\": {}\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=ic-page-header.js.map\n"],"mappings":"0IAAA,MAAMA,EAAkB,suI,MCYXC,EAAU,MACnB,WAAAC,CAAAC,G,UACIC,KAAKC,eAAiB,KACtBD,KAAKE,uBAAyB,KAC1B,GAAIF,KAAKG,cAAgBC,EAAWJ,KAAKK,GAAI,WAAY,CACrDL,KAAKM,mB,GAGbN,KAAKO,kBAAoB,KACrBP,KAAKC,eAAiB,IAAIO,gBAAe,KACrCR,KAAKE,wBAAwB,IAEjCF,KAAKC,eAAeQ,QAAQT,KAAKK,GAAG,EAExCL,KAAKM,kBAAoB,KACrB,MAAMI,EAAWC,IACjB,GAAID,IAAaV,KAAKY,WAAY,CAC9BZ,KAAKY,WAAaF,C,CAEtB,MAAMG,EAAab,KAAKK,GAAGS,WAAWC,cAAc,mBACpD,MAAMC,EAAgB,GAEtB,IAAK,IAAIC,EAAI,EAAGA,EAAIjB,KAAKkB,cAAcC,OAAQF,IAAK,CAChD,MAAMG,EAASpB,KAAKkB,cAAcD,GAClC,IAAII,EAAeD,EAAOE,aAC1B,GAAID,IAAiBE,UAAW,CAC5BF,EAAe,C,CAEnBL,EAAcQ,KAAKH,E,CAEvB,MAAMI,EAAMC,KAAKD,OAAOT,GAExB,IAAIW,EAAmBd,EAAWS,aAClC,GAAIK,IAAqBJ,UAAW,CAChCI,EAAmB,C,CAEvB,MAAMC,EAAsB,KACxB5B,KAAKkB,cAAgBlB,KAAKkB,cAAcW,UACxC7B,KAAKkB,cAAcY,SAASC,IACxB/B,KAAKK,GAAG2B,OAAOD,EAAI,IAEvB/B,KAAKiC,oBAAsBjC,KAAKiC,kBAAkB,EAEtD,GAAKjC,KAAKY,WAAasB,EAAaC,GAChCR,GAAoBF,IACnBzB,KAAKiC,qBACHjC,KAAKY,WAAasB,EAAaC,GAAKR,EAAmBF,GACtDzB,KAAKY,YAAcsB,EAAaC,IAChCnC,KAAKiC,mBAAqB,CAC9BL,G,GAGR5B,KAAKkB,cAAgBK,UACrBvB,KAAKiC,mBAAqB,MAC1BjC,KAAKY,WAAasB,EAAaE,GAC/BpC,KAAKqC,QAAU,OACfrC,KAAKsC,OAAS,KACdtC,KAAKuC,QAAUhB,UACfvB,KAAKG,aAAe,MACpBH,KAAKwC,KAAO,UACZxC,KAAKyC,MAAQ,MACbzC,KAAK0C,OAAS,MACd1C,KAAK2C,kBAAoB,MACzB3C,KAAK4C,WAAarB,S,CAEtB,oBAAAsB,GACI,GAAI7C,KAAKC,iBAAmB,KAAM,CAC9BD,KAAKC,eAAe6C,Y,EAG5B,iBAAAC,GACI/C,KAAKkB,cAAgB8B,MAAMC,KAAKjD,KAAKK,GAAG6C,iBAAiB,oB,CAE7D,gBAAAC,GACIC,EAAoBpD,KAAKO,kB,CAE7B,MAAA8C,GACI,MAAMZ,MAAEA,EAAKD,KAAEA,EAAIF,OAAEA,EAAMC,QAAEA,EAAOK,WAAEA,EAAUP,QAAEA,EAAOK,OAAEA,EAAMC,kBAAEA,GAAuB3C,KAC1F,MAAMsD,EAAe,GAAGlD,EAAWJ,KAAKK,GAAI,WACtCL,KAAKK,GAAGU,cAAc,oBAAoBwC,YAC1ChB,IAAY,MAAQA,SAAiB,EAAIA,EAAU,mBACzD,OAAQiB,EAAEC,EAAM,CAAEC,MAAO,CACjB,CAAC,UAAWhB,EACZ,CAAC,mBAAoBA,GAAUC,GAChC,aAAc3C,KAAKK,GAAGsD,WAAa,eAAiBH,EAAE,SAAU,CAAEE,MAAO,CACxE,CAAC,iBAAkBpB,EACnB,CAAC,QAASlC,EAAWJ,KAAKK,GAAI,SAC/BuD,KAAM,gBAAkBJ,EAAE,uBAAwB,CAAEnB,QAASA,EAASwB,WAAYzD,EAAWJ,KAAKK,GAAI,SAAWD,EAAWJ,KAAKK,GAAI,gBAAmBmD,EAAE,MAAO,CAAEE,MAAO,mBAAqBF,EAAE,OAAQ,CAAEM,KAAM,iBAAoBN,EAAE,MAAO,CAAEE,MAAO,gBAAkBF,EAAE,MAAO,CAAEE,MAAO,cAAgBF,EAAE,MAAO,CAAEE,MAAO,kBAAoBF,EAAE,OAAQ,CAAEM,KAAM,WAAaN,EAAE,gBAAiB,CAAEO,QAAStB,GAASD,IAAS,QAAU,KAAO,KAAMkB,MAAO,WAAaF,EAAE,KAAM,KAAMjB,KAAYiB,EAAE,OAAQ,CAAEM,KAAM,uBAAyBN,EAAE,MAAO,CAAEE,MAAO,CACjiB,CAAC,wBAAyBd,GAAcxC,EAAWJ,KAAKK,GAAI,cAC5D,CAAC,SAAUoC,GAASD,IAAS,UAC5BgB,EAAE,OAAQ,CAAEM,KAAM,cAAgBN,EAAE,gBAAiB,CAAEO,QAAS,QAAUnB,MAAgBxC,EAAWJ,KAAKK,GAAI,YAAemD,EAAE,MAAO,CAAEE,MAAO,eAAiBF,EAAE,OAAQ,CAAEM,KAAM,aAAgB1D,EAAWJ,KAAKK,GAAI,UAAamD,EAAE,MAAO,CAAEE,MAAO,cAAgBF,EAAE,OAAQ,CAAEM,KAAM,aAAgB1D,EAAWJ,KAAKK,GAAI,YAChUD,EAAWJ,KAAKK,GAAI,UAAamD,EAAE,MAAO,CAAEE,MAAO,mBAAqBtD,EAAWJ,KAAKK,GAAI,aAC3FD,EAAWJ,KAAKK,GAAI,SAAWmD,EAAE,OAAQ,CAAEM,KAAM,YAAc1D,EAAWJ,KAAKK,GAAI,SAAYmD,EAAE,MAAO,CAAE,aAAcF,GAAgBE,EAAE,uBAAwB,KAAMA,EAAE,KAAM,CAAEE,MAAO,aAAeF,EAAE,OAAQ,CAAEM,KAAM,e"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as t,c as i,h as s,H as e,g as h}from"./p-8455d1bb.js";import{q as a,t as n,u as l,v as o,w as r,r as c,x as d,o as u,y as p,z as f,A as b,I as v,B as m,C as g,D as w}from"./p-8ab58daa.js";const x=`<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\n<path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor" />\n</svg>\n`;const y=`<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">\n<path d="M12.6666 4.27334L11.7266 3.33334L7.99998 7.06001L4.27331 3.33334L3.33331 4.27334L7.05998 8.00001L3.33331 11.7267L4.27331 12.6667L7.99998 8.94001L11.7266 12.6667L12.6666 11.7267L8.93998 8.00001L12.6666 4.27334Z" fill="currentColor" />\n</svg>\n`;const k='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;position:relative;--menu-max-height:100px}:host(.full-width){width:100%}ic-input-component-container:hover{--border-color:var(--ic-action-dark-hover)}ic-input-component-container:active{--border-color:var(--ic-action-dark-active);color:var(--ic-action-dark-active)}ic-input-component-container.menu-open{--border-color:var(--ic-architectural-400);color:var(--ic-action-dark)}ic-input-validation .status-icon,ic-input-validation .statustext{visibility:visible}ic-input-validation.menu-open .status-icon,ic-input-validation.menu-open .statustext{visibility:hidden;transition:visibility 0s}ic-input-label{margin-bottom:var(--ic-space-xs) !important}select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:0.375rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 0.375rem center;background-image:url("data:image/svg+xml;utf8,<svg fill=\'black\' height=\'24\' viewBox=\'0 0 24 24\' width=\'24\' xmlns=\'http://www.w3.org/2000/svg\'><path d=\'M7 10l5 5 5-5z\'/><path d=\'M0 0h24v24H0z\' fill=\'none\'/></svg>")}select option,.select-option-selected{color:var(--ic-color-primary-text)}select:disabled{color:var(--ic-architectural-200);background-image:url("data:image/svg+xml;utf8,<svg fill=\'grey\' height=\'24\' viewBox=\'0 0 24 24\' width=\'24\' xmlns=\'http://www.w3.org/2000/svg\'><path d=\'M7 10l5 5 5-5z\'/><path d=\'M0 0h24v24H0z\' fill=\'none\'/></svg>")}select:focus{border:0;outline:0}select:not([disabled]){cursor:pointer}.select-container{width:100%;display:flex;align-items:center;position:relative}.select-input{width:100%;height:100%;padding:0 0.375rem;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none}.select-input:focus{outline:var(--ic-hc-focus-outline)}:host(:not(.disabled)) ic-input-component-container:hover .select-input{background-color:var(--ic-architectural-white)}.select-input[disabled]{pointer-events:none}:host(.searchable) .select-input{cursor:auto}.select-input.with-clear-button{padding-right:0}.value-text{max-width:calc(100% - (var(--ic-space-lg) + var(--ic-space-xxs)));box-sizing:border-box}.value-text.with-clear-button{padding-right:calc(var(--ic-space-xl) + var(--ic-space-xs))}.value-text p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-bottom:0 !important}.searchable-select-container{align-items:center;display:flex;width:100%;position:relative}.expand-icon{height:var(--ic-space-lg);padding-left:var(--ic-space-xxs);color:var(--ic-action-dark)}.expand-icon>svg{display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}:host(.disabled) .expand-icon,:host(.disabled) .expand-icon>svg>path{color:var(--ic-architectural-200)}:host(.searchable) .expand-icon{padding-left:0;height:2.25rem}:host(.searchable) .expand-icon>svg{height:2.25rem;padding:0 0.375rem}:host(.searchable:not(.disabled)) .expand-icon>svg{cursor:pointer}.expand-icon-open{color:var(--ic-action-dark)}.expand-icon-open,:host(.searchable) .expand-icon-open{transform:rotateX(180deg)}:host(.disabled) .value-text,.placeholder{color:var(--ic-color-tertiary-text)}.select-input-end{display:flex;align-items:center}.clear-button-container{display:flex}.divider{width:var(--ic-space-1px);background-color:var(--ic-architectural-400);margin:var(--ic-space-xxs) 0;border-radius:var(--ic-space-1px);height:var(--ic-space-lg)}:host(.small) .divider{height:var(--ic-space-md)}:host(.large) .divider{height:var(--ic-space-xl)}.clear-button{position:absolute;right:calc(var(--ic-space-xl) + var(--ic-space-xxs));border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow);border-radius:0.25rem}.clear-button:focus *{fill:white}.clear-button.searchable{position:static}.searchable-select-results-status,.multi-select-selected-count{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}';let z=0;const L=class{constructor(s){t(this,s);this.icBlur=i(this,"icBlur",7);this.icChange=i(this,"icChange",7);this.icClear=i(this,"icClear",7);this.icFocus=i(this,"icFocus",7);this.icInput=i(this,"icInput",7);this.icOptionSelect=i(this,"icOptionSelect",7);this.icOptionDeselect=i(this,"icOptionDeselect",7);this.icRetryLoad=i(this,"icRetryLoad",7);this.hasSetDefaultValue=false;this.inheritedAttributes={};this.initialOptionsEmpty=false;this.inputId=`ic-select-input-${z++}`;this.menuId=`${this.inputId}-menu`;this.searchableMenuItemSelected=false;this.ungroupedOptions=[];this.handleRetry=t=>{var i;if(t.detail.keyPressed)(i=this.searchableSelectElement)===null||i===void 0?void 0:i.focus();this.blurredBecauseButtonPressed=true;this.retryButtonClick=true;this.hasSetDefaultValue=true;this.icRetryLoad.emit({value:this.hiddenInputValue})};this.emitIcChange=t=>{if(!this.searchable){if(this.multiple&&!Array.isArray(t)&&t!==null){this.handleMultipleSelectChange(t)}else{this.value=t}}clearTimeout(this.debounceIcChange);this.debounceIcChange=window.setTimeout((()=>{const i=this.multiple?this.value:t;this.icChange.emit({value:i})}),this.currDebounce)};this.emitImmediateIcChange=t=>{this.value=t;clearTimeout(this.debounceIcChange);this.icChange.emit({value:t})};this.deduplicateOptions=t=>{const i=[];const s=[];let e;t.forEach((t=>{if(t.children){e=[];t.children.forEach((t=>{if(i.includes(t.value)){console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${t.value}) which has been removed.`)}else{i.push(t.value);e.push(t)}}));const h=Object.assign(Object.assign({},t),{children:e});s.push(h)}else{if(i.includes(t.value)){console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${t.value}) which has been removed.`)}else{i.push(t.value);s.push(t)}}}));return s};this.setOptionsValuesFromLabels=()=>{if(this.options.length>0&&this.options.map){this.options.map((t=>{if(!t.value){t.value=t.label}}))}};this.setUngroupedOptions=t=>{this.ungroupedOptions=t.detail.options};this.setTextColor=()=>{if(this.nativeSelectElement.selectedIndex===0){this.nativeSelectElement.className="placeholder"}else{this.nativeSelectElement.className="select-option-selected"}};this.setMenuChange=t=>{if(this.open!==t){this.open=t}};this.getLabelFromValue=t=>a(t,this.uniqueOptions);this.getMultipleOptionsString=t=>{const i=t===null||t===void 0?void 0:t.map((t=>this.getLabelFromValue(t)));return i===null||i===void 0?void 0:i.join(", ")};this.getFilteredChildMenuOptions=t=>{let i=t.children;if(this.searchable){i=n(t.children,this.includeDescriptionsInSearch,this.searchableSelectInputValue,this.searchMatchPosition)}else{i=n(t.children,false,this.pressedCharacters,"start")}const s=Object.assign({},t);s.children=i;return s};this.getValueSortedByOptions=t=>{const i=t;const s=this.ungroupedOptions.map((t=>t.value));i.sort(((t,i)=>s.indexOf(t)-s.indexOf(i)));return i};this.handleNativeSelectChange=()=>{this.icOptionSelect.emit({value:this.nativeSelectElement.value});this.emitImmediateIcChange(this.nativeSelectElement.value);this.setTextColor()};this.handleCustomSelectChange=t=>{var i;const s=t.detail.value;if(this.searchable&&t.detail.label===this.emptyOptionListText){this.searchableSelectElement.focus();return}if(this.searchable){this.value=s;this.searchableMenuItemSelected=true;if(this.value===this.currValue){this.searchableSelectInputValue=this.getLabelFromValue(this.value)}this.inputValueToFilter=null;this.hiddenInputValue=this.getValueFromLabel(this.searchableSelectInputValue)}if(this.multiple&&((i=this.value)===null||i===void 0?void 0:i.includes(s))){this.icOptionDeselect.emit({value:s})}else{this.icOptionSelect.emit({value:s})}this.ariaActiveDescendant=t.detail.optionId;this.emitIcChange(s)};this.handleMultipleSelectChange=t=>{if(this.value){let i=this.value.slice();if(this.value.includes(t)){const s=i.indexOf(t);i.splice(s,1)}else{i.push(t);i=this.getValueSortedByOptions(i)}this.value=i.length===0?null:i}else{const i=[];i.push(t);this.value=i}};this.handleSelectAllChange=t=>{const i=t.detail.select;const s=this.ungroupedOptions.filter((t=>!t.disabled));const e=s.map((t=>t.value));let h;if(i){let t;if(this.value){t=e.filter((t=>this.value&&!this.value.includes(t)))}else{t=e}t.forEach((t=>this.icOptionSelect.emit({value:t})));h=e}else{this.value.forEach((t=>this.icOptionDeselect.emit({value:t})));h=null}this.emitIcChange(h)};this.handleMenuChange=t=>{this.open=t.detail.open;this.pressedCharacters="";this.searchable&&this.handleFocusIndicatorDisplay()};this.handleMenuKeyPress=t=>{t.cancelBubble=true;if(!this.multiple){this.handleCharacterKeyDown(t.detail.key)}};this.handleFocusIndicatorDisplay=()=>{const t=this.el.shadowRoot.querySelector(".focus-indicator");if(this.open){t.classList.add("focus-indicator-enabled")}else{t.classList.remove("focus-indicator-enabled")}};this.handleMouseDown=t=>{if(!this.open){t.preventDefault()}};this.isExternalFiltering=()=>this.searchable&&this.disableFilter;this.handleClick=t=>{var i;if(!this.open){if(this.isExternalFiltering()){this.menu.options=this.filteredOptions}else if(!this.hasTimedOut&&!this.loading&&!((i=this.noOptions)===null||i===void 0?void 0:i.length)&&(!this.searchable||this.searchableMenuItemSelected)){this.noOptions=null;this.menu.options=this.uniqueOptions}}if(t.detail!==0){this.menu.handleClickOpen()}};this.handleExpandIconMouseDown=t=>{if(!this.disabled){t.preventDefault();this.searchableSelectElement.focus();this.handleClick(t)}};this.handleClear=t=>{t.stopPropagation();this.hasTimedOut=false;clearTimeout(this.timeoutTimer);this.noOptions=null;this.emitImmediateIcChange(null);this.icClear.emit();if(this.searchable){this.searchableSelectElement.value=null;this.searchableSelectInputValue=null;this.filteredOptions=this.uniqueOptions;this.hiddenInputValue=null;this.searchableSelectElement.focus()}else{this.customSelectElement.focus()}};this.handleCharacterKeyDown=t=>{if(this.open&&t===" "&&this.pressedCharacters.length===0&&!this.hasTimedOut&&!this.loading){this.setMenuChange(false)}if(t.length===1&&!this.searchable){window.clearTimeout(this.characterKeyPressTimer);this.characterKeyPressTimer=window.setTimeout((()=>this.pressedCharacters=""),1e3);if(!(t===" "&&!this.pressedCharacters)){this.pressedCharacters+=t;this.handleFilter();if(!this.noOptions){this.emitImmediateIcChange(this.filteredOptions[0].value)}}}else{this.pressedCharacters=""}};this.handleNativeSelectKeyDown=t=>{if(t.key!=="Escape"&&t.key!=="Tab"||this.open){t.cancelBubble=true}this.handleCharacterKeyDown(t.key)};this.handleKeyDown=t=>{if(t.key!=="Escape"&&t.key!=="Tab"||this.open){t.cancelBubble=true}const i=t.key==="ArrowDown"||t.key==="ArrowUp";if(!this.open){if(this.isExternalFiltering()&&(t.key==="Enter"||i)){this.menu.options=this.filteredOptions}else{if(!this.hasTimedOut){this.noOptions=null;this.menu.options=this.uniqueOptions}}}if(this.open&&t.key==="Enter"){this.setMenuChange(false)}else{if(!(i&&this.noOptions!==null)){if(!(t.key===" "&&this.pressedCharacters.length>0)){this.menu.handleKeyboardOpen(t)}if(!this.multiple){this.handleCharacterKeyDown(t.key)}}}};this.handleClearButtonFocus=()=>{this.clearButtonFocused=true};this.handleClearButtonBlur=t=>{var i;const s=(i=this.menu)===null||i===void 0?void 0:i.querySelector("#retry-button");if(!(this.searchableSelectElement&&t.relatedTarget===this.searchableSelectElement)&&!(s&&t.relatedTarget===s)){this.setMenuChange(false);this.handleFocusIndicatorDisplay()}this.clearButtonFocused=false};this.handleFilter=()=>{var t;const i=this.deduplicateOptions(this.searchable?[...this.uniqueOptions]:this.ungroupedOptions);let s=false;let e=[];i.map((t=>{if(t.children)s=true}));let h;if(this.searchable){h=n(i,this.includeDescriptionsInSearch,this.inputValueToFilter,this.searchMatchPosition);this.searchableMenuItemSelected=false}else{h=n(i,false,this.pressedCharacters,"start")}if(!s&&((t=h[0])===null||t===void 0?void 0:t.label)!==this.emptyOptionListText){e=h}else if(s){i.map((t=>{if(this.includeGroupTitlesInSearch){if(h.indexOf(t)!==-1){e.push(t)}else{e.push(this.getFilteredChildMenuOptions(t))}}else{e.push(this.getFilteredChildMenuOptions(t))}}))}let a=false;if(s){a=true;e.map((t=>{if(t.children.length>0){a=false}}))}if(e.length>0&&!a){this.noOptions=null;this.filteredOptions=e}else{this.noOptions=[{label:this.emptyOptionListText,value:""}];this.filteredOptions=this.noOptions}};this.triggerLoading=()=>{this.hasTimedOut=false;this.noOptions=[{label:this.loadingLabel,value:"",loading:true}];if(this.filteredOptions!==this.noOptions&&this.searchable){this.filteredOptions=this.noOptions}else if(this.uniqueOptions!==this.noOptions&&!this.searchable){this.uniqueOptions=this.noOptions}if(this.timeout){this.timeoutTimer=window.setTimeout((()=>{this.loading=false;this.hasTimedOut=true;this.noOptions=[{label:this.loadingErrorLabel,value:"",timedOut:true}];this.filteredOptions=this.noOptions;if(!this.searchable)this.uniqueOptions=this.noOptions}),this.timeout)}};this.getValueFromLabel=t=>{var i;return(i=this.uniqueOptions.find((i=>i.label===t)))===null||i===void 0?void 0:i.value};this.handleSearchableSelectInput=t=>{this.searchableSelectInputValue=t.target.value;this.icInput.emit({value:this.searchableSelectInputValue});this.emitIcChange(this.searchableSelectInputValue);this.hiddenInputValue=this.searchableSelectInputValue;this.inputValueToFilter=this.searchableSelectInputValue;this.setMenuChange(true);if(!this.disableFilter){this.handleFilter();this.debounceAriaLiveUpdate()}};this.updateSearchableSelectResultAriaLive=()=>{const t=this.el.shadowRoot.querySelector(".searchable-select-results-status");if(t){if(this.noOptions!==null){t.innerText=this.emptyOptionListText}else{t.innerText=""}}};this.updateMultiSelectedCountAriaLive=()=>{var t;const i=this.el.shadowRoot.querySelector(".multi-select-selected-count");const s=`${(t=this.currValue)===null||t===void 0?void 0:t.length} of ${l(this.options)} selected`;if(i&&i.innerText!==s){i.innerText=s}};this.getDefaultValue=t=>this.getLabelFromValue(t)||t||null;this.setDefaultValue=()=>{if(!this.hasSetDefaultValue&&this.currValue){this.searchableSelectInputValue=this.searchable&&this.getDefaultValue(this.currValue);this.initialValue=this.currValue;this.hasSetDefaultValue=true}};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=t=>{var i;const s=t.relatedTarget;if(s!==null&&s.tagName==="UL"&&s.className.includes("menu")){return}const e=(i=this.menu)===null||i===void 0?void 0:i.querySelector("#retry-button");const h=this.searchable&&t.relatedTarget!==this.menu&&!Array.from(this.menu.querySelectorAll("[role='option']")).includes(t.relatedTarget)&&!(this.clearButton&&t.relatedTarget===this.clearButton)&&!(e&&t.relatedTarget===e);if(h){if(!this.retryButtonClick){this.setMenuChange(false)}this.handleFocusIndicatorDisplay()}this.retryButtonClick=false;this.icBlur.emit()};this.onTimeoutBlur=t=>{if(t.detail.ev.relatedTarget!==this.searchableSelectElement&&!this.blurredBecauseButtonPressed){this.setMenuChange(false);this.handleFocusIndicatorDisplay();this.icBlur.emit()}this.blurredBecauseButtonPressed=false};this.handleFormReset=()=>{this.value=this.initialValue;if(this.searchable){this.searchableSelectInputValue=this.getDefaultValue(this.value);this.hiddenInputValue=this.value}};this.ariaActiveDescendant=undefined;this.clearButtonFocused=false;this.debounceIcChange=undefined;this.hiddenInputValue=undefined;this.noOptions=null;this.open=false;this.pressedCharacters="";this.searchableSelectInputValue=null;this.charactersUntilSuggestions=0;this.disabled=false;this.disableFilter=false;this.emptyOptionListText="No results found";this.form=undefined;this.formaction=undefined;this.formenctype=undefined;this.formmethod=undefined;this.formnovalidate=undefined;this.formtarget=undefined;this.fullWidth=false;this.helperText="";this.hideLabel=false;this.includeDescriptionsInSearch=false;this.includeGroupTitlesInSearch=false;this.label=undefined;this.loadingErrorLabel="Loading Error";this.loadingLabel="Loading...";this.multiple=false;this.name=this.inputId;this.placeholder="Select an option";this.readonly=false;this.required=false;this.searchable=false;this.searchMatchPosition="anywhere";this.selectOnEnter=false;this.showClearButton=false;this.size="default";this.small=false;this.timeout=undefined;this.validationStatus="";this.validationText="";this.loading=false;this.options=[];this.filteredOptions=this.options;this.uniqueOptions=this.options;this.debounce=0;this.currDebounce=this.debounce;this.value=undefined;this.initialValue=this.value;this.inputValueToFilter=this.value;this.currValue=this.value}loadingHandler(t){t&&this.triggerLoading()}watchOptionsHandler(){if(!this.hasTimedOut&&this.options!==this.noOptions){this.loading=false;clearTimeout(this.timeoutTimer);if(this.isExternalFiltering()){if(this.options.length>0){this.setOptionsValuesFromLabels();this.noOptions=null;this.uniqueOptions=this.deduplicateOptions(this.options);this.filteredOptions=this.uniqueOptions}else{this.noOptions=[{label:this.emptyOptionListText,value:""}];this.uniqueOptions=this.noOptions;this.filteredOptions=this.noOptions}this.updateSearchableSelectResultAriaLive();this.setDefaultValue()}else{this.setOptionsValuesFromLabels();this.uniqueOptions=this.deduplicateOptions(this.options);this.filteredOptions=this.uniqueOptions;if(this.initialOptionsEmpty){this.setDefaultValue();this.initialOptionsEmpty=false}}}else{if(!this.searchable)this.options=this.noOptions}}debounceChangedHandler(t){this.updateOnChangeDebounce(t)}valueChangedHandler(){if(this.value!==this.currValue){if(this.value&&this.multiple){this.currValue=this.getValueSortedByOptions(this.value);this.updateMultiSelectedCountAriaLive()}else{this.currValue=this.value}}if(this.searchable){this.searchableSelectInputValue=this.getLabelFromValue(this.currValue)||this.currValue}}disconnectedCallback(){o(this.el,this.handleFormReset)}componentWillLoad(){this.inheritedAttributes=r(this.el,[...g,"tabindex","title"]);c(this.disabled,this.el);this.setOptionsValuesFromLabels();d(this.el,this.handleFormReset);if(!this.options.length){this.initialOptionsEmpty=true;this.noOptions=[{label:this.emptyOptionListText,value:""}];this.uniqueOptions=this.noOptions;this.filteredOptions=this.noOptions}else{this.setDefaultValue();this.uniqueOptions=this.deduplicateOptions(this.options)}}componentDidLoad(){u([{prop:this.label,propName:"label"}],"Select");if(this.loading){this.triggerLoading()}this.hiddenInputValue=this.searchable&&this.currValue}componentDidRender(){if(this.nativeSelectElement&&!this.disabled){this.setTextColor()}}async setFocus(){if(this.nativeSelectElement){this.nativeSelectElement.focus()}else if(this.customSelectElement){this.customSelectElement.focus()}else if(this.searchableSelectElement){this.searchableSelectElement.focus()}}updateOnChangeDebounce(t){if(this.currDebounce!==t){this.currDebounce=t}}debounceAriaLiveUpdate(){clearTimeout(this.debounceAria);window.setTimeout((()=>{this.updateSearchableSelectResultAriaLive()}),800)}render(){const{size:t,small:i,disabled:h,fullWidth:a,helperText:n,hideLabel:o,label:r,menuId:c,multiple:d,name:u,options:g,placeholder:k,readonly:z,required:L,searchable:C,showClearButton:M,validationStatus:T,validationText:B,currValue:H}=this;p(true,this.el,u,this.searchable?this.hiddenInputValue:H,h);const O=T===w.Error?"true":"false";const $=f(this.inputId,n!=="",m(this.validationStatus,this.disabled)).trim();const D=`${H===null||H===void 0?void 0:H.length} of ${l(this.options)} selected`;return s(e,{class:{disabled:h,searchable:C,small:i,[t]:t!=="default","full-width":a},onBlur:this.onBlur},s("ic-input-container",{readonly:z},!o&&s("ic-input-label",{for:this.inputId,label:r,helperText:n,required:L,disabled:h,readonly:z}),s("ic-input-component-container",{ref:t=>this.anchorEl=t,class:{"menu-open":this.open},small:i,size:t,fullWidth:a,disabled:h,readonly:z,validationStatus:T},z?s("ic-typography",null,s("p",null,d?this.getMultipleOptionsString(H):this.getLabelFromValue(H))):b()&&!d?s("select",Object.assign({ref:t=>this.nativeSelectElement=t,disabled:h,onChange:this.handleNativeSelectChange,required:L,id:this.inputId,"aria-label":r,"aria-describedby":$,"aria-invalid":O,onBlur:this.onBlur,onFocus:this.onFocus,onKeyDown:this.handleNativeSelectKeyDown,form:this.form},this.inheritedAttributes),s("option",{value:"",selected:true,disabled:!M},k),g.map((t=>{if(t.children){return s("optgroup",{label:t.label},t.children.map((t=>s("option",{value:t.value,disabled:t.disabled,selected:t.value===H},t.label))))}else{return s("option",{value:t.value,disabled:t.disabled,selected:t.value===H},t.label)}}))):C?s("div",{class:"searchable-select-container"},s("input",{class:{"select-input":true,"with-clear-button":!!this.searchableSelectInputValue},role:"combobox",autocomplete:"off","aria-label":r,"aria-describedby":$,"aria-activedescendant":this.ariaActiveDescendant,"aria-autocomplete":"list","aria-expanded":this.open?"true":"false","aria-invalid":O,"aria-required":L?"true":"false","aria-controls":c,ref:t=>this.searchableSelectElement=t,id:this.inputId,value:this.searchableSelectInputValue,placeholder:k,disabled:h,onInput:this.handleSearchableSelectInput,onClick:this.handleClick,onKeyDown:this.handleKeyDown,onFocus:this.onFocus,onBlur:this.onBlur,form:this.form,formaction:this.formaction,formenctype:this.formenctype,formmethod:this.formmethod,formnovalidate:this.formnovalidate,formtarget:this.formtarget}),this.searchableSelectInputValue&&(M||C)&&s("div",{class:"clear-button-container"},s("ic-button",{id:"clear-button",ref:t=>this.clearButton=t,"aria-label":this.searchableSelectInputValue&&H===null?"Clear input":"Clear selection",class:"clear-button",innerHTML:y,onClick:this.handleClear,onFocus:this.handleClearButtonFocus,onBlur:this.handleClearButtonBlur,size:t,variant:"icon",appearance:this.clearButtonFocused?v.Light:v.Dark}),s("div",{class:"divider"})),s("span",{onMouseDown:this.handleExpandIconMouseDown,class:{"expand-icon":true,"expand-icon-open":this.open},innerHTML:x,"aria-hidden":"true"}),s("div",{"aria-live":"polite",role:"status",class:"searchable-select-results-status"})):s("div",{class:"select-container"},s("button",{class:"select-input",ref:t=>this.customSelectElement=t,id:this.inputId,"aria-label":`${r}, ${(d&&H?`${D}, ${this.getMultipleOptionsString(H)}`:this.getLabelFromValue(H))||k}${L?", required":""}`,"aria-describedby":$,"aria-invalid":O,"aria-haspopup":"listbox","aria-expanded":this.open?"true":"false","aria-owns":c,"aria-controls":c,disabled:h,onBlur:this.onBlur,onFocus:this.onFocus,onClick:this.handleClick,onMouseDown:this.handleMouseDown,onKeyDown:this.handleKeyDown},s("ic-typography",{variant:"body",class:{"value-text":true,"with-clear-button":H&&M,placeholder:!this.value||d&&this.value.length<1}},s("p",null,(d?this.getMultipleOptionsString(H):this.getLabelFromValue(H))||k)),s("div",{class:"select-input-end"},H&&M&&s("div",{class:"divider"}),s("span",{class:{"expand-icon":true,"expand-icon-open":this.open},innerHTML:x,"aria-hidden":"true"}))),H&&M&&s("ic-button",{id:"clear-button","aria-label":"Clear selection",class:"clear-button",innerHTML:y,onClick:this.handleClear,onFocus:this.handleClearButtonFocus,onBlur:this.handleClearButtonBlur,size:t,variant:"icon",appearance:this.clearButtonFocused?v.Light:v.Dark}))),(!b()||d)&&s("ic-menu-with-multi",{class:{"no-results":this.loading||this.hasTimedOut||this.noOptions!==null&&this.noOptions[0]&&this.noOptions[0].label===this.emptyOptionListText},ref:t=>this.menu=t,inputEl:C?this.searchableSelectElement:this.customSelectElement,inputLabel:r,anchorEl:this.anchorEl,small:i,size:t,menuId:c,open:this.open,options:C?this.filteredOptions:this.uniqueOptions,value:d?H:H,fullWidth:a,selectOnEnter:this.selectOnEnter,onMenuStateChange:this.handleMenuChange,onMenuOptionSelect:this.handleCustomSelectChange,onMenuOptionSelectAll:this.handleSelectAllChange,onMenuKeyPress:this.handleMenuKeyPress,onUngroupedOptionsSet:this.setUngroupedOptions,onRetryButtonClicked:this.handleRetry,parentEl:this.el,onTimeoutBlur:this.onTimeoutBlur,activationType:this.searchable||d||this.selectOnEnter?"manual":"automatic",closeOnSelect:!d}),this.multiple&&s("div",{"aria-live":"polite",role:"status",class:"multi-select-selected-count"}),m(this.validationStatus,this.disabled)&&s("ic-input-validation",{class:{"menu-open":this.open},ariaLiveMode:"polite",status:T,message:B,for:this.inputId})))}static get delegatesFocus(){return true}get el(){return h(this)}static get watchers(){return{loading:["loadingHandler"],options:["watchOptionsHandler"],debounce:["debounceChangedHandler"],value:["valueChangedHandler"]}}};L.style=k;export{L as ic_select_with_multi};
|
2
|
+
//# sourceMappingURL=p-5f149106.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icSelectCss","inputIds","Select","this","hasSetDefaultValue","inheritedAttributes","initialOptionsEmpty","inputId","menuId","searchableMenuItemSelected","ungroupedOptions","handleRetry","ev","detail","keyPressed","_a","searchableSelectElement","focus","blurredBecauseButtonPressed","retryButtonClick","icRetryLoad","emit","value","hiddenInputValue","emitIcChange","searchable","multiple","Array","isArray","handleMultipleSelectChange","clearTimeout","debounceIcChange","window","setTimeout","valueToEmit","icChange","currDebounce","emitImmediateIcChange","deduplicateOptions","options","uniqueValues","dedupedOptions","dedupedChildren","forEach","option","children","child","includes","console","warn","label","push","modifiedParent","Object","assign","setOptionsValuesFromLabels","length","map","setUngroupedOptions","event","setTextColor","nativeSelectElement","selectedIndex","className","setMenuChange","open","getLabelFromValue","uniqueOptions","getMultipleOptionsString","selectedValues","selectedLabels","join","getFilteredChildMenuOptions","getFilteredMenuOptions","includeDescriptionsInSearch","searchableSelectInputValue","searchMatchPosition","pressedCharacters","newOption","getValueSortedByOptions","valueArray","valuesFromAllOptions","sort","a","b","indexOf","handleNativeSelectChange","icOptionSelect","handleCustomSelectChange","emptyOptionListText","currValue","inputValueToFilter","getValueFromLabel","icOptionDeselect","ariaActiveDescendant","optionId","slice","valueIndex","splice","handleSelectAllChange","selectAllOptions","select","allEnabledOptions","filter","disabled","allValues","newValue","unselectedValues","handleMenuChange","handleFocusIndicatorDisplay","handleMenuKeyPress","cancelBubble","handleCharacterKeyDown","key","focusIndicator","el","shadowRoot","querySelector","classList","add","remove","handleMouseDown","preventDefault","isExternalFiltering","disableFilter","handleClick","menu","filteredOptions","hasTimedOut","loading","noOptions","handleClickOpen","handleExpandIconMouseDown","handleClear","stopPropagation","timeoutTimer","icClear","customSelectElement","characterKeyPressTimer","handleFilter","handleNativeSelectKeyDown","handleKeyDown","isArrowKey","handleKeyboardOpen","handleClearButtonFocus","clearButtonFocused","handleClearButtonBlur","retryButton","relatedTarget","isGrouped","newFilteredOptions","menuOptionsFiltered","includeGroupTitlesInSearch","noChildOptionsWhenFiltered","triggerLoading","loadingLabel","timeout","loadingErrorLabel","timedOut","find","handleSearchableSelectInput","target","icInput","debounceAriaLiveUpdate","updateSearchableSelectResultAriaLive","searchableSelectResultsStatusEl","innerText","updateMultiSelectedCountAriaLive","multiSelectSelectedCountEl","selectedCount","getOptionsWithoutGroupTitlesCount","getDefaultValue","setDefaultValue","initialValue","onFocus","icFocus","onBlur","tagName","isSearchableAndNoFocusedInternalElements","from","querySelectorAll","clearButton","icBlur","onTimeoutBlur","handleFormReset","debounce","loadingHandler","watchOptionsHandler","debounceChangedHandler","updateOnChangeDebounce","valueChangedHandler","disconnectedCallback","removeFormResetListener","componentWillLoad","inheritAttributes","IC_INHERITED_ARIA","removeDisabledFalse","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentDidRender","setFocus","debounceAria","render","size","small","fullWidth","helperText","hideLabel","name","placeholder","readonly","required","showClearButton","validationStatus","validationText","renderHiddenInput","invalid","IcInformationStatus","Error","describedBy","getInputDescribedByText","hasValidationStatus","trim","optionsSelectedCount","h","Host","class","for","ref","anchorEl","isMobileOrTablet","onChange","id","onKeyDown","form","selected","role","autocomplete","onInput","onClick","formaction","formenctype","formmethod","formnovalidate","formtarget","innerHTML","Clear","variant","appearance","IcThemeForegroundEnum","Light","Dark","onMouseDown","Expand","inputEl","inputLabel","selectOnEnter","onMenuStateChange","onMenuOptionSelect","onMenuOptionSelectAll","onMenuKeyPress","onUngroupedOptionsSet","onRetryButtonClicked","parentEl","activationType","closeOnSelect","ariaLiveMode","status","message"],"sources":["src/components/ic-select-with-multi/ic-select.css?tag=ic-select-with-multi&encapsulation=shadow","src/components/ic-select-with-multi/ic-select.tsx"],"sourcesContent":["@import \"../../../dist/core/normalize.css\";\n\n/**\n * @prop --input-width: Width of the input field\n * @prop --menu-width: Width of the dropdown menu\n * @prop --ic-z-index-menu: z-index of select menu\n */\n\n:host {\n display: block;\n position: relative;\n\n --menu-max-height: 100px;\n}\n\n:host(.full-width) {\n width: 100%;\n}\n\nic-input-component-container:hover {\n --border-color: var(--ic-action-dark-hover);\n}\n\nic-input-component-container:active {\n --border-color: var(--ic-action-dark-active);\n\n color: var(--ic-action-dark-active);\n}\n\nic-input-component-container.menu-open {\n --border-color: var(--ic-architectural-400);\n\n color: var(--ic-action-dark);\n}\n\nic-input-validation .status-icon,\nic-input-validation .statustext {\n visibility: visible;\n}\n\nic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext {\n visibility: hidden;\n transition: visibility 0s;\n}\n\nic-input-label {\n margin-bottom: var(--ic-space-xs) !important;\n}\n\nselect {\n border: 0;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-architectural-white);\n color: var(--ic-color-primary-text);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n height: 100%;\n padding-left: 0.375rem;\n appearance: none;\n background-repeat: no-repeat;\n background-position: right 0.375rem center;\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\");\n}\n\nselect option,\n.select-option-selected {\n color: var(--ic-color-primary-text);\n}\n\nselect:disabled {\n color: var(--ic-architectural-200);\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\");\n}\n\nselect:focus {\n border: 0;\n outline: 0;\n}\n\nselect:not([disabled]) {\n cursor: pointer;\n}\n\n.select-container {\n width: 100%;\n display: flex;\n align-items: center;\n position: relative;\n}\n\n.select-input {\n width: 100%;\n height: 100%;\n padding: 0 0.375rem;\n display: flex;\n cursor: pointer;\n align-items: center;\n justify-content: space-between;\n background: none;\n border: none;\n}\n\n.select-input:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(:not(.disabled)) ic-input-component-container:hover .select-input {\n background-color: var(--ic-architectural-white);\n}\n\n.select-input[disabled] {\n pointer-events: none;\n}\n\n:host(.searchable) .select-input {\n cursor: auto;\n}\n\n.select-input.with-clear-button {\n padding-right: 0;\n}\n\n.value-text {\n max-width: calc(100% - (var(--ic-space-lg) + var(--ic-space-xxs)));\n box-sizing: border-box;\n}\n\n.value-text.with-clear-button {\n padding-right: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n.value-text p {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n margin-bottom: 0 !important;\n}\n\n.searchable-select-container {\n align-items: center;\n display: flex;\n width: 100%;\n position: relative;\n}\n\n.expand-icon {\n height: var(--ic-space-lg);\n padding-left: var(--ic-space-xxs);\n color: var(--ic-action-dark);\n}\n\n.expand-icon > svg {\n display: inline-block;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host(.disabled) .expand-icon,\n:host(.disabled) .expand-icon > svg > path {\n color: var(--ic-architectural-200);\n}\n\n:host(.searchable) .expand-icon {\n padding-left: 0;\n height: 2.25rem;\n}\n\n:host(.searchable) .expand-icon > svg {\n height: 2.25rem;\n padding: 0 0.375rem;\n}\n\n:host(.searchable:not(.disabled)) .expand-icon > svg {\n cursor: pointer;\n}\n\n.expand-icon-open {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-open,\n:host(.searchable) .expand-icon-open {\n transform: rotateX(180deg);\n}\n\n:host(.disabled) .value-text,\n.placeholder {\n color: var(--ic-color-tertiary-text);\n}\n\n.select-input-end {\n display: flex;\n align-items: center;\n}\n\n.clear-button-container {\n display: flex;\n}\n\n.divider {\n width: var(--ic-space-1px);\n background-color: var(--ic-architectural-400);\n margin: var(--ic-space-xxs) 0;\n border-radius: var(--ic-space-1px);\n height: var(--ic-space-lg);\n}\n\n:host(.small) .divider {\n height: var(--ic-space-md);\n}\n\n:host(.large) .divider {\n height: var(--ic-space-xl);\n}\n\n.clear-button {\n position: absolute;\n right: calc(var(--ic-space-xl) + var(--ic-space-xxs));\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus {\n background-color: var(--ic-focus-blue);\n box-shadow: inset 0 0 0 0.125rem var(--ic-focus-glow);\n border-radius: 0.25rem;\n}\n\n.clear-button:focus * {\n fill: white;\n}\n\n.clear-button.searchable {\n position: static;\n}\n\n.searchable-select-results-status,\n.multi-select-selected-count {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: var(--ic-space-1px);\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: var(--ic-space-1px);\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n h,\n State,\n Watch,\n} from \"@stencil/core\";\nimport { IcOptionSelectEventDetail } from \"@ukic/web-components/dist/types/components\";\nimport { IcMenuOption } from \"@ukic/web-components/dist/types/utils/types\";\n\nimport {\n getInputDescribedByText,\n getLabelFromValue,\n hasValidationStatus,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n isMobileOrTablet,\n getFilteredMenuOptions,\n getOptionsWithoutGroupTitlesCount,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSearchMatchPositions,\n IcThemeForegroundEnum,\n IcValueEventDetail,\n IcSizes,\n} from \"../../utils/types\";\nimport Expand from \"./assets/Expand.svg\";\nimport Clear from \"./assets/Clear.svg\";\n\nlet inputIds = 0;\n\n@Component({\n tag: \"ic-select-with-multi\",\n styleUrl: \"ic-select.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class Select {\n private anchorEl: HTMLElement;\n private blurredBecauseButtonPressed: boolean;\n private characterKeyPressTimer: number;\n private clearButton: HTMLIcButtonElement;\n private customSelectElement: HTMLButtonElement;\n private debounceAria: number;\n private hasSetDefaultValue = false;\n private hasTimedOut: boolean;\n private inheritedAttributes: { [k: string]: unknown } = {};\n private initialOptionsEmpty = false;\n private inputId = `ic-select-input-${inputIds++}`;\n private menu: HTMLIcMenuWithMultiElement;\n private menuId = `${this.inputId}-menu`;\n private nativeSelectElement: HTMLSelectElement;\n private retryButtonClick: boolean;\n private searchableMenuItemSelected: boolean = false;\n private searchableSelectElement: HTMLInputElement;\n private timeoutTimer: number;\n private ungroupedOptions: IcMenuOption[] = [];\n\n @Element() el!: HTMLIcSelectWithMultiElement;\n\n @State() ariaActiveDescendant: string;\n @State() clearButtonFocused: boolean = false;\n @State() debounceIcChange: number;\n @State() hiddenInputValue: string;\n @State() noOptions: IcMenuOption[] = null;\n @State() open: boolean = false;\n @State() pressedCharacters: string = \"\";\n @State() searchableSelectInputValue: string = null;\n\n /**\n * **[DEPRECATED]** This prop should not be used anymore.\n */\n @Prop() charactersUntilSuggestions?: number = 0;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /**\n * If `true`, the built in filtering will be disabled for a searchable variant. For example, if options will already be filtered from external source.\n */\n @Prop() disableFilter?: boolean = false;\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n /**\n * The <form> element to associate the select with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the select. It overrides the action attribute of the select's form owner. Does nothing if there is no form owner.\n * This prop should only be used with searchable select and will only be applied if searchable is true.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded. This prop should only be used with searchable select and will only be applied if searchable is true.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form. This prop should only be used with searchable select and will only be applied if searchable is true.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted. This prop should only be used with searchable select and will only be applied if searchable is true.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the select's form owner.\n * This prop should only be used with searchable select and will only be applied if searchable is true.\n */\n @Prop() formtarget?: string;\n\n /**\n * If `true`, the select element will fill the width of the container. This prop should only be used with searchable select and will only be applied if searchable is true.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering.\n */\n @Prop() includeDescriptionsInSearch?: boolean = false;\n\n /**\n * If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering.\n */\n @Prop() includeGroupTitlesInSearch?: boolean = false;\n\n /**\n * The label for the select.\n */\n @Prop() label!: string;\n\n /**\n * The message displayed when external loading times out.\n */\n @Prop() loadingErrorLabel?: string = \"Loading Error\";\n\n /**\n * The message displayed whilst the options are being loaded externally.\n */\n @Prop() loadingLabel?: string = \"Loading...\";\n\n /**\n * If `true`, multiple options can be selected.\n */\n @Prop() multiple?: boolean = false;\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 * The placeholder value to be displayed.\n */\n @Prop() placeholder?: string = \"Select an option\";\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * If `true`, the select will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options. This functionality is only available on the single-select variant of the select component.\n */\n @Prop() searchable?: boolean = false;\n\n /**\n * Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering.\n */\n @Prop() searchMatchPosition?: IcSearchMatchPositions = \"anywhere\";\n\n /**\n * If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown.\n */\n @Prop() selectOnEnter?: boolean = false;\n\n /**\n * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select.\n */\n @Prop() showClearButton?: boolean = false;\n\n /**\n * The size of the select.\n */\n @Prop() size?: IcSizes = \"default\";\n\n /**\n * **[DEPRECATED]** This prop should not be used anymore. Set prop `size` to \"small\" instead.\n */\n @Prop() small?: boolean = false;\n\n /**\n * If using external filtering, set a timeout for when loading takes too long.\n */\n @Prop() timeout?: number;\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * If `true`, the loading state will be triggered when fetching options asynchronously.\n */\n @Prop({ mutable: true }) loading?: boolean = false;\n\n @Watch(\"loading\")\n loadingHandler(newValue: boolean): void {\n newValue && this.triggerLoading();\n }\n\n /**\n * The possible selection options.\n */\n @Prop() options?: IcMenuOption[] = [];\n @State() filteredOptions: IcMenuOption[] = this.options;\n @State() uniqueOptions: IcMenuOption[] = this.options;\n\n @Watch(\"options\")\n watchOptionsHandler(): void {\n if (!this.hasTimedOut && this.options !== this.noOptions) {\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n if (this.isExternalFiltering()) {\n // When searchable select\n if (this.options.length > 0) {\n this.setOptionsValuesFromLabels();\n this.noOptions = null;\n this.uniqueOptions = this.deduplicateOptions(this.options);\n this.filteredOptions = this.uniqueOptions;\n } else {\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.uniqueOptions = this.noOptions;\n this.filteredOptions = this.noOptions;\n }\n this.updateSearchableSelectResultAriaLive();\n this.setDefaultValue();\n } else {\n this.setOptionsValuesFromLabels();\n this.uniqueOptions = this.deduplicateOptions(this.options);\n this.filteredOptions = this.uniqueOptions;\n if (this.initialOptionsEmpty) {\n this.setDefaultValue();\n this.initialOptionsEmpty = false;\n }\n }\n } else {\n if (!this.searchable) this.options = this.noOptions;\n }\n }\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce?: number = 0;\n @State() currDebounce = this.debounce;\n\n @Watch(\"debounce\")\n debounceChangedHandler(newValue: number): void {\n this.updateOnChangeDebounce(newValue);\n }\n\n /**\n * The value of the select, reflected by the value of the currently selected option.\n * For the searchable variant, the value is also reflected by the user input.\n * For the multi-select variant, the value must be an array of option values.\n */\n @Prop({ mutable: true }) value?: string | string[];\n @State() initialValue = this.value;\n @State() inputValueToFilter = this.value as string;\n @State() currValue = this.value;\n\n @Watch(\"value\")\n valueChangedHandler(): void {\n if (this.value !== this.currValue) {\n if (this.value && this.multiple) {\n this.currValue = this.getValueSortedByOptions(this.value as string[]);\n this.updateMultiSelectedCountAriaLive();\n } else {\n this.currValue = this.value;\n }\n }\n\n if (this.searchable) {\n this.searchableSelectInputValue =\n this.getLabelFromValue(this.currValue as string) ||\n (this.currValue as string);\n }\n }\n\n /**\n * Emitted when the select loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value changes.\n */\n @Event() icChange!: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the clear button is clicked.\n */\n @Event() icClear!: EventEmitter<void>;\n\n /**\n * Emitted when the select gains focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when an option is selected.\n * Selecting an option will also trigger an `icChange/onIcChange` due to the value being updated.\n */\n @Event() icOptionSelect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when `multiple` is `true` and an option is deselected.\n */\n @Event() icOptionDeselect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when the 'retry loading' button is clicked for a searchable variant.\n */\n @Event() icRetryLoad: EventEmitter<IcValueEventDetail>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.el, [\n ...IC_INHERITED_ARIA,\n \"tabindex\",\n \"title\",\n ]);\n\n removeDisabledFalse(this.disabled, this.el);\n\n this.setOptionsValuesFromLabels();\n\n addFormResetListener(this.el, this.handleFormReset);\n\n if (!this.options.length) {\n this.initialOptionsEmpty = true;\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.uniqueOptions = this.noOptions;\n this.filteredOptions = this.noOptions;\n } else {\n this.setDefaultValue();\n this.uniqueOptions = this.deduplicateOptions(this.options);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Select\"\n );\n\n if (this.loading) {\n this.triggerLoading();\n }\n\n this.hiddenInputValue = this.searchable && (this.currValue as string);\n }\n\n componentDidRender(): void {\n if (this.nativeSelectElement && !this.disabled) {\n this.setTextColor();\n }\n }\n\n /**\n * Sets focus on the input box.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.nativeSelectElement) {\n this.nativeSelectElement.focus();\n } else if (this.customSelectElement) {\n this.customSelectElement.focus();\n } else if (this.searchableSelectElement) {\n this.searchableSelectElement.focus();\n }\n }\n\n private handleRetry = (ev: CustomEvent<IcValueEventDetail>) => {\n if (ev.detail.keyPressed) this.searchableSelectElement?.focus();\n this.blurredBecauseButtonPressed = true;\n this.retryButtonClick = true;\n this.hasSetDefaultValue = true;\n this.icRetryLoad.emit({ value: this.hiddenInputValue });\n };\n\n private updateOnChangeDebounce(newValue: number) {\n if (this.currDebounce !== newValue) {\n this.currDebounce = newValue;\n }\n }\n\n private emitIcChange = (value: string | string[] | null) => {\n if (!this.searchable) {\n // If \"Select all\" button clicked, replace value with new value (array of all option values)\n if (this.multiple && !Array.isArray(value) && value !== null) {\n this.handleMultipleSelectChange(value as string);\n } else {\n this.value = value;\n }\n }\n\n clearTimeout(this.debounceIcChange);\n this.debounceIcChange = window.setTimeout(() => {\n const valueToEmit = this.multiple ? this.value : value;\n this.icChange.emit({ value: valueToEmit });\n }, this.currDebounce);\n };\n\n private emitImmediateIcChange = (value: string) => {\n this.value = value;\n clearTimeout(this.debounceIcChange);\n this.icChange.emit({ value });\n };\n\n /**\n * Processes the provided array of IcMenuOptions, removing duplicates and reporting them with a console.warn\n * @param options array of IcMenuOptions\n * @returns a new options object, with all entries possessing a duplicate 'value' field removed\n */\n private deduplicateOptions = (options: IcMenuOption[]): IcMenuOption[] => {\n const uniqueValues: string[] = [];\n const dedupedOptions: IcMenuOption[] = [];\n let dedupedChildren: IcMenuOption[];\n\n options.forEach((option: IcMenuOption) => {\n if (option.children) {\n //If an option has children, we will loop through them\n dedupedChildren = [];\n option.children.forEach((child) => {\n if (uniqueValues.includes(child.value)) {\n console.warn(\n `ic-select with label ${this.label} was populated with duplicate option (value: ${child.value}) which has been removed.`\n );\n } else {\n uniqueValues.push(child.value);\n dedupedChildren.push(child);\n }\n });\n // construct a modified option, inserting the deduplicated children alongside the original information\n const modifiedParent: IcMenuOption = {\n ...option,\n children: dedupedChildren,\n };\n dedupedOptions.push(modifiedParent);\n } else {\n // If an option does not have children, assess to see if it's value has been included already\n if (uniqueValues.includes(option.value)) {\n console.warn(\n `ic-select with label ${this.label} was populated with duplicate option (value: ${option.value}) which has been removed.`\n );\n } else {\n uniqueValues.push(option.value);\n dedupedOptions.push(option);\n }\n }\n });\n return dedupedOptions;\n };\n\n /**\n * Loop through options array and for all options with no value, infer it from the label\n */\n private setOptionsValuesFromLabels = (): void => {\n if (this.options.length > 0 && this.options.map) {\n this.options.map((option) => {\n if (!option.value) {\n option.value = option.label;\n }\n });\n }\n };\n\n private setUngroupedOptions = (event: CustomEvent): void => {\n this.ungroupedOptions = event.detail.options;\n };\n\n private setTextColor = (): void => {\n if (this.nativeSelectElement.selectedIndex === 0) {\n this.nativeSelectElement.className = \"placeholder\";\n } else {\n this.nativeSelectElement.className = \"select-option-selected\";\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n }\n };\n\n private getLabelFromValue = (value: string): string | undefined => {\n return getLabelFromValue(value, this.uniqueOptions);\n };\n\n private getMultipleOptionsString = (selectedValues: string[]) => {\n const selectedLabels = selectedValues?.map((value) =>\n this.getLabelFromValue(value)\n );\n return selectedLabels?.join(\", \");\n };\n\n private getFilteredChildMenuOptions = (option: IcMenuOption) => {\n let children = option.children;\n\n if (this.searchable) {\n children = getFilteredMenuOptions(\n option.children,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n } else {\n children = getFilteredMenuOptions(\n option.children,\n false,\n this.pressedCharacters,\n \"start\"\n );\n }\n\n const newOption = { ...option };\n newOption.children = children;\n return newOption;\n };\n\n // (For multi-select) get value array, i.e. selected option values, in order they appear in option list\n private getValueSortedByOptions = (value: string[]) => {\n const valueArray = value;\n const valuesFromAllOptions = this.ungroupedOptions.map(\n (option) => option.value\n );\n\n valueArray.sort(\n (a, b) =>\n valuesFromAllOptions.indexOf(a) - valuesFromAllOptions.indexOf(b)\n );\n\n return valueArray;\n };\n\n private handleNativeSelectChange = (): void => {\n this.icOptionSelect.emit({ value: this.nativeSelectElement.value });\n this.emitImmediateIcChange(this.nativeSelectElement.value);\n this.setTextColor();\n };\n\n // Handle option select for when a custom input box and menu is rendered\n // (rather than native <select> - rendered when viewed on a mobile / tablet screen)\n private handleCustomSelectChange = (event: CustomEvent): void => {\n const value = event.detail.value;\n\n if (this.searchable && event.detail.label === this.emptyOptionListText) {\n this.searchableSelectElement.focus();\n return;\n }\n\n if (this.searchable) {\n this.value = value;\n this.searchableMenuItemSelected = true;\n\n // After editing the input, if selecting the same option as before, set the input value to label again\n if (this.value === this.currValue) {\n this.searchableSelectInputValue = this.getLabelFromValue(\n this.value as string\n );\n }\n\n this.inputValueToFilter = null;\n this.hiddenInputValue = this.getValueFromLabel(\n this.searchableSelectInputValue\n );\n }\n\n if (this.multiple && this.value?.includes(value)) {\n this.icOptionDeselect.emit({ value });\n } else {\n this.icOptionSelect.emit({ value });\n }\n\n this.ariaActiveDescendant = event.detail.optionId;\n this.emitIcChange(value);\n };\n\n // Update selected options - adds / removes them, in order of option list\n // Create new array if value prop is undefined\n private handleMultipleSelectChange = (value: string) => {\n if (this.value) {\n let valueArray = (this.value as string[]).slice();\n\n if (this.value.includes(value)) {\n const valueIndex = valueArray.indexOf(value);\n valueArray.splice(valueIndex, 1);\n } else {\n valueArray.push(value);\n valueArray = this.getValueSortedByOptions(valueArray);\n }\n\n this.value = valueArray.length === 0 ? null : valueArray;\n } else {\n const valueArray = [];\n valueArray.push(value);\n this.value = valueArray;\n }\n };\n\n private handleSelectAllChange = (event: CustomEvent) => {\n const selectAllOptions = event.detail.select;\n const allEnabledOptions = this.ungroupedOptions.filter(\n (option) => !option.disabled\n );\n const allValues = allEnabledOptions.map((option) => option.value);\n let newValue: string[];\n\n if (selectAllOptions) {\n let unselectedValues;\n\n // Only emit icOptionSelect for all values that are newly selected\n if (this.value) {\n unselectedValues = allValues.filter(\n (value) => this.value && !(this.value as string[]).includes(value)\n );\n } else {\n unselectedValues = allValues;\n }\n\n unselectedValues.forEach((value) => this.icOptionSelect.emit({ value }));\n newValue = allValues;\n } else {\n // Only emit icOptionDeselect for values that were selected\n (this.value as string[]).forEach((value) =>\n this.icOptionDeselect.emit({ value })\n );\n newValue = null;\n }\n\n this.emitIcChange(newValue);\n };\n\n private handleMenuChange = (event: CustomEvent): void => {\n this.open = event.detail.open;\n this.pressedCharacters = \"\";\n\n this.searchable && this.handleFocusIndicatorDisplay();\n };\n\n // clears the debounce delay when navigating the menu with arrow keys etc\n // to prevent delay in change event, which should only occur when typing in input\n private handleMenuKeyPress = (ev: CustomEvent): void => {\n ev.cancelBubble = true;\n if (!this.multiple) {\n this.handleCharacterKeyDown(ev.detail.key);\n }\n };\n\n private handleFocusIndicatorDisplay = () => {\n const focusIndicator = this.el.shadowRoot.querySelector(\".focus-indicator\");\n\n if (this.open) {\n focusIndicator.classList.add(\"focus-indicator-enabled\");\n } else {\n focusIndicator.classList.remove(\"focus-indicator-enabled\");\n }\n };\n\n private handleMouseDown = (event: Event): void => {\n if (!this.open) {\n event.preventDefault();\n }\n };\n\n private isExternalFiltering = (): boolean =>\n this.searchable && this.disableFilter;\n\n private handleClick = (event: MouseEvent): void => {\n if (!this.open) {\n if (this.isExternalFiltering()) {\n this.menu.options = this.filteredOptions;\n } else if (\n !this.hasTimedOut &&\n !this.loading &&\n !this.noOptions?.length &&\n (!this.searchable || this.searchableMenuItemSelected)\n ) {\n this.noOptions = null;\n this.menu.options = this.uniqueOptions;\n }\n }\n\n if (event.detail !== 0) {\n this.menu.handleClickOpen();\n }\n };\n\n private handleExpandIconMouseDown = (event: MouseEvent) => {\n if (!this.disabled) {\n event.preventDefault();\n this.searchableSelectElement.focus();\n this.handleClick(event);\n }\n };\n\n private handleClear = (event: Event): void => {\n event.stopPropagation();\n this.hasTimedOut = false;\n clearTimeout(this.timeoutTimer);\n this.noOptions = null;\n this.emitImmediateIcChange(null);\n this.icClear.emit();\n\n if (this.searchable) {\n this.searchableSelectElement.value = null;\n this.searchableSelectInputValue = null;\n this.filteredOptions = this.uniqueOptions;\n this.hiddenInputValue = null;\n this.searchableSelectElement.focus();\n } else {\n this.customSelectElement.focus();\n }\n };\n\n private handleCharacterKeyDown = (key: string) => {\n // Only close menu when space is pressed if not being used alongside character keys to quickly select options\n if (\n this.open &&\n key === \" \" &&\n this.pressedCharacters.length === 0 &&\n !this.hasTimedOut &&\n !this.loading\n ) {\n this.setMenuChange(false);\n }\n\n if (key.length === 1 && !this.searchable) {\n window.clearTimeout(this.characterKeyPressTimer);\n this.characterKeyPressTimer = window.setTimeout(\n () => (this.pressedCharacters = \"\"),\n 1000\n );\n\n if (!(key === \" \" && !this.pressedCharacters)) {\n this.pressedCharacters += key;\n this.handleFilter();\n\n if (!this.noOptions) {\n this.emitImmediateIcChange(this.filteredOptions[0].value);\n }\n }\n } else {\n this.pressedCharacters = \"\";\n }\n };\n\n private handleNativeSelectKeyDown = (event: KeyboardEvent) => {\n if ((event.key !== \"Escape\" && event.key !== \"Tab\") || this.open) {\n event.cancelBubble = true;\n }\n this.handleCharacterKeyDown(event.key);\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n if ((event.key !== \"Escape\" && event.key !== \"Tab\") || this.open) {\n event.cancelBubble = true;\n }\n const isArrowKey = event.key === \"ArrowDown\" || event.key === \"ArrowUp\";\n\n if (!this.open) {\n if (this.isExternalFiltering() && (event.key === \"Enter\" || isArrowKey)) {\n this.menu.options = this.filteredOptions;\n } else {\n if (!this.hasTimedOut) {\n this.noOptions = null;\n this.menu.options = this.uniqueOptions;\n }\n }\n }\n\n if (this.open && event.key === \"Enter\") {\n this.setMenuChange(false);\n } else {\n if (!(isArrowKey && this.noOptions !== null)) {\n if (!(event.key === \" \" && this.pressedCharacters.length > 0)) {\n // Keyboard events get passed onto ic-menu\n this.menu.handleKeyboardOpen(event);\n }\n if (!this.multiple) {\n this.handleCharacterKeyDown(event.key);\n }\n }\n }\n };\n\n private handleClearButtonFocus = (): void => {\n this.clearButtonFocused = true;\n };\n\n private handleClearButtonBlur = (ev: FocusEvent): void => {\n const retryButton = this.menu?.querySelector(\"#retry-button\");\n if (\n !(\n this.searchableSelectElement &&\n ev.relatedTarget === this.searchableSelectElement\n ) &&\n !(retryButton && ev.relatedTarget === retryButton)\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n }\n this.clearButtonFocused = false;\n };\n\n private handleFilter = (): void => {\n const options = this.deduplicateOptions(\n this.searchable ? [...this.uniqueOptions] : this.ungroupedOptions\n );\n\n let isGrouped = false;\n let newFilteredOptions: IcMenuOption[] = [];\n\n options.map((option) => {\n if (option.children) isGrouped = true;\n });\n\n let menuOptionsFiltered: IcMenuOption[];\n\n if (this.searchable) {\n menuOptionsFiltered = getFilteredMenuOptions(\n options,\n this.includeDescriptionsInSearch,\n this.inputValueToFilter,\n this.searchMatchPosition\n );\n this.searchableMenuItemSelected = false;\n } else {\n menuOptionsFiltered = getFilteredMenuOptions(\n options,\n false,\n this.pressedCharacters,\n \"start\"\n );\n }\n\n if (\n !isGrouped &&\n menuOptionsFiltered[0]?.label !== this.emptyOptionListText\n ) {\n newFilteredOptions = menuOptionsFiltered;\n } else if (isGrouped) {\n options.map((option) => {\n if (this.includeGroupTitlesInSearch) {\n if (menuOptionsFiltered.indexOf(option) !== -1) {\n newFilteredOptions.push(option);\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n });\n }\n\n let noChildOptionsWhenFiltered = false;\n\n if (isGrouped) {\n noChildOptionsWhenFiltered = true;\n newFilteredOptions.map((option) => {\n if (option.children.length > 0) {\n noChildOptionsWhenFiltered = false;\n }\n });\n }\n\n if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {\n this.noOptions = null;\n this.filteredOptions = newFilteredOptions;\n } else {\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.filteredOptions = this.noOptions;\n }\n };\n\n /**\n * Put the select component into loading state.\n * Replace options with the loading message. If timeout is enabled, set the timeout and once passed, replace options with the loading error message\n */\n private triggerLoading = () => {\n this.hasTimedOut = false;\n this.noOptions = [{ label: this.loadingLabel, value: \"\", loading: true }];\n if (this.filteredOptions !== this.noOptions && this.searchable) {\n this.filteredOptions = this.noOptions;\n } else if (this.uniqueOptions !== this.noOptions && !this.searchable) {\n this.uniqueOptions = this.noOptions;\n }\n if (this.timeout) {\n this.timeoutTimer = window.setTimeout(() => {\n this.loading = false;\n this.hasTimedOut = true;\n this.noOptions = [\n { label: this.loadingErrorLabel, value: \"\", timedOut: true },\n ];\n this.filteredOptions = this.noOptions;\n if (!this.searchable) this.uniqueOptions = this.noOptions;\n }, this.timeout);\n }\n };\n\n private getValueFromLabel = (label: string): string | undefined => {\n return this.uniqueOptions.find((option) => option.label === label)?.value;\n };\n\n private handleSearchableSelectInput = (event: Event): void => {\n this.searchableSelectInputValue = (event.target as HTMLInputElement).value;\n this.icInput.emit({ value: this.searchableSelectInputValue });\n this.emitIcChange(this.searchableSelectInputValue);\n\n this.hiddenInputValue = this.searchableSelectInputValue;\n this.inputValueToFilter = this.searchableSelectInputValue;\n this.setMenuChange(true);\n\n if (!this.disableFilter) {\n this.handleFilter();\n this.debounceAriaLiveUpdate();\n }\n };\n\n private updateSearchableSelectResultAriaLive = (): void => {\n const searchableSelectResultsStatusEl = this.el.shadowRoot.querySelector(\n \".searchable-select-results-status\"\n ) as HTMLDivElement;\n\n if (searchableSelectResultsStatusEl) {\n if (this.noOptions !== null) {\n searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;\n } else {\n searchableSelectResultsStatusEl.innerText = \"\";\n }\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAria);\n\n window.setTimeout(() => {\n this.updateSearchableSelectResultAriaLive();\n }, 800);\n }\n\n private updateMultiSelectedCountAriaLive = (): void => {\n const multiSelectSelectedCountEl = this.el.shadowRoot.querySelector(\n \".multi-select-selected-count\"\n ) as HTMLDivElement;\n\n const selectedCount = `${\n this.currValue?.length\n } of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;\n\n if (\n multiSelectSelectedCountEl &&\n multiSelectSelectedCountEl.innerText !== selectedCount\n ) {\n multiSelectSelectedCountEl.innerText = selectedCount;\n }\n };\n\n private getDefaultValue = (value: string): string | null =>\n this.getLabelFromValue(value) || value || null;\n\n private setDefaultValue = (): void => {\n if (!this.hasSetDefaultValue && this.currValue) {\n this.searchableSelectInputValue =\n this.searchable && this.getDefaultValue(this.currValue as string);\n\n this.initialValue = this.currValue;\n this.hasSetDefaultValue = true;\n }\n };\n\n private onFocus = (): void => {\n this.icFocus.emit();\n };\n\n private onBlur = (event: FocusEvent): void => {\n const target = event.relatedTarget as HTMLElement;\n if (\n target !== null &&\n target.tagName === \"UL\" &&\n target.className.includes(\"menu\")\n ) {\n return;\n }\n\n const retryButton = this.menu?.querySelector(\"#retry-button\");\n const isSearchableAndNoFocusedInternalElements =\n this.searchable &&\n event.relatedTarget !== this.menu &&\n !Array.from(this.menu.querySelectorAll(\"[role='option']\")).includes(\n event.relatedTarget as Element\n ) &&\n !(this.clearButton && event.relatedTarget === this.clearButton) &&\n !(retryButton && event.relatedTarget === retryButton);\n\n if (isSearchableAndNoFocusedInternalElements) {\n if (!this.retryButtonClick) {\n this.setMenuChange(false);\n }\n this.handleFocusIndicatorDisplay();\n }\n\n this.retryButtonClick = false;\n this.icBlur.emit();\n };\n\n private onTimeoutBlur = (ev: CustomEvent) => {\n if (\n (ev.detail.ev as FocusEvent).relatedTarget !==\n this.searchableSelectElement &&\n !this.blurredBecauseButtonPressed\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n this.icBlur.emit();\n }\n this.blurredBecauseButtonPressed = false;\n };\n\n private handleFormReset = (): void => {\n this.value = this.initialValue;\n if (this.searchable) {\n this.searchableSelectInputValue = this.getDefaultValue(\n this.value as string\n );\n this.hiddenInputValue = this.value as string;\n }\n };\n\n render() {\n const {\n size,\n small,\n disabled,\n fullWidth,\n helperText,\n hideLabel,\n label,\n menuId,\n multiple,\n name,\n options,\n placeholder,\n readonly,\n required,\n searchable,\n showClearButton,\n validationStatus,\n validationText,\n currValue,\n } = this;\n\n // HTML inputs only accept 'string' for their value\n // Does not cause errors when it is a multi-select - sets value correctly, to a comma-separated string\n renderHiddenInput(\n true,\n this.el,\n name,\n this.searchable ? this.hiddenInputValue : (currValue as string),\n disabled\n );\n\n const invalid =\n validationStatus === IcInformationStatus.Error ? \"true\" : \"false\";\n\n const describedBy = getInputDescribedByText(\n this.inputId,\n helperText !== \"\",\n hasValidationStatus(this.validationStatus, this.disabled)\n ).trim();\n\n const optionsSelectedCount = `${\n currValue?.length\n } of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;\n\n return (\n <Host\n class={{\n disabled: disabled,\n searchable: searchable,\n small: small,\n [size]: size !== \"default\",\n \"full-width\": fullWidth,\n }}\n onBlur={this.onBlur}\n >\n <ic-input-container readonly={readonly}>\n {!hideLabel && (\n <ic-input-label\n for={this.inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n readonly={readonly}\n ></ic-input-label>\n )}\n <ic-input-component-container\n ref={(el: HTMLElement) => (this.anchorEl = el)}\n class={{ \"menu-open\": this.open }}\n small={small}\n size={size}\n fullWidth={fullWidth}\n disabled={disabled}\n readonly={readonly}\n validationStatus={validationStatus}\n >\n {readonly ? (\n <ic-typography>\n <p>\n {multiple\n ? this.getMultipleOptionsString(currValue as string[])\n : this.getLabelFromValue(currValue as string)}\n </p>\n </ic-typography>\n ) : isMobileOrTablet() && !multiple ? (\n <select\n ref={(el) => (this.nativeSelectElement = el)}\n disabled={disabled}\n onChange={this.handleNativeSelectChange}\n required={required}\n id={this.inputId}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onKeyDown={this.handleNativeSelectKeyDown}\n form={this.form}\n {...this.inheritedAttributes}\n >\n <option value=\"\" selected disabled={!showClearButton}>\n {placeholder}\n </option>\n {options.map((option) => {\n if (option.children) {\n return (\n <optgroup label={option.label}>\n {option.children.map((option) => (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === currValue}\n >\n {option.label}\n </option>\n ))}\n </optgroup>\n );\n } else {\n return (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === currValue}\n >\n {option.label}\n </option>\n );\n }\n })}\n </select>\n ) : searchable ? (\n <div class=\"searchable-select-container\">\n <input\n class={{\n \"select-input\": true,\n \"with-clear-button\": !!this.searchableSelectInputValue,\n }}\n role=\"combobox\"\n autocomplete=\"off\"\n aria-label={label}\n aria-describedby={describedBy}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-autocomplete=\"list\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-invalid={invalid}\n aria-required={required ? \"true\" : \"false\"}\n aria-controls={menuId}\n ref={(el) => (this.searchableSelectElement = el)}\n id={this.inputId}\n value={this.searchableSelectInputValue}\n placeholder={placeholder}\n disabled={disabled}\n onInput={this.handleSearchableSelectInput}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n form={this.form}\n formaction={this.formaction}\n formenctype={this.formenctype}\n formmethod={this.formmethod}\n formnovalidate={this.formnovalidate}\n formtarget={this.formtarget}\n ></input>\n {this.searchableSelectInputValue &&\n (showClearButton || searchable) && (\n <div class=\"clear-button-container\">\n <ic-button\n id=\"clear-button\"\n ref={(el: HTMLIcButtonElement) =>\n (this.clearButton = el)\n }\n aria-label={\n this.searchableSelectInputValue && currValue === null\n ? \"Clear input\"\n : \"Clear selection\"\n }\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={size}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n )}\n <span\n onMouseDown={this.handleExpandIconMouseDown}\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"searchable-select-results-status\"\n ></div>\n </div>\n ) : (\n <div class=\"select-container\">\n <button\n class=\"select-input\"\n ref={(el) => (this.customSelectElement = el)}\n id={this.inputId}\n aria-label={`${label}, ${\n (multiple && currValue\n ? `${optionsSelectedCount}, ${this.getMultipleOptionsString(\n currValue as string[]\n )}`\n : this.getLabelFromValue(currValue as string)) ||\n placeholder\n }${required ? \", required\" : \"\"}`}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-haspopup=\"listbox\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-owns={menuId}\n aria-controls={menuId}\n disabled={disabled}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onClick={this.handleClick}\n onMouseDown={this.handleMouseDown}\n onKeyDown={this.handleKeyDown}\n >\n <ic-typography\n variant=\"body\"\n class={{\n \"value-text\": true,\n \"with-clear-button\": currValue && showClearButton,\n placeholder:\n !this.value || (multiple && this.value.length < 1),\n }}\n >\n <p>\n {(multiple\n ? this.getMultipleOptionsString(currValue as string[])\n : this.getLabelFromValue(currValue as string)) ||\n placeholder}\n </p>\n </ic-typography>\n <div class=\"select-input-end\">\n {currValue && showClearButton && (\n <div class=\"divider\"></div>\n )}\n <span\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n </div>\n </button>\n {currValue && showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear selection\"\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={size}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n )}\n </div>\n )}\n </ic-input-component-container>\n {(!isMobileOrTablet() || multiple) && (\n <ic-menu-with-multi\n class={{\n \"no-results\":\n this.loading ||\n this.hasTimedOut ||\n (this.noOptions !== null &&\n this.noOptions[0] &&\n this.noOptions[0].label === this.emptyOptionListText),\n }}\n ref={(el: HTMLIcMenuWithMultiElement) => (this.menu = el)}\n inputEl={\n searchable\n ? this.searchableSelectElement\n : this.customSelectElement\n }\n inputLabel={label}\n anchorEl={this.anchorEl}\n small={small}\n size={size}\n menuId={menuId}\n open={this.open}\n options={searchable ? this.filteredOptions : this.uniqueOptions}\n value={multiple ? (currValue as string[]) : (currValue as string)}\n fullWidth={fullWidth}\n selectOnEnter={this.selectOnEnter}\n onMenuStateChange={this.handleMenuChange}\n onMenuOptionSelect={this.handleCustomSelectChange}\n onMenuOptionSelectAll={this.handleSelectAllChange}\n onMenuKeyPress={this.handleMenuKeyPress}\n onUngroupedOptionsSet={this.setUngroupedOptions}\n onRetryButtonClicked={this.handleRetry}\n parentEl={this.el}\n onTimeoutBlur={this.onTimeoutBlur}\n activationType={\n this.searchable || multiple || this.selectOnEnter\n ? \"manual\"\n : \"automatic\"\n }\n closeOnSelect={!multiple}\n ></ic-menu-with-multi>\n )}\n {this.multiple && (\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"multi-select-selected-count\"\n ></div>\n )}\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n class={{ \"menu-open\": this.open }}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n for={this.inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|