@ukic/canary-web-components 2.0.0-canary.14 → 2.0.0-canary.16
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-6d736902.js → helpers-4f5f087e.js} +59 -99
- package/dist/cjs/helpers-4f5f087e.js.map +1 -0
- package/dist/cjs/{helpers-f75cf7cf.js → helpers-fc9441f8.js} +34 -1
- package/dist/cjs/helpers-fc9441f8.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +3 -1
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +15 -9
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +55 -77
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +3 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +14 -14
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card.cjs.entry.js +1 -1
- package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +23 -16
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +33 -31
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +21 -31
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +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 +163 -36
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +4 -2
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js +345 -0
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +3 -2
- package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +2 -3
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +2 -2
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +4 -10
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-with-multi.cjs.entry.js +176 -35
- package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu.cjs.entry.js +4 -4
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
- 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 +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +54 -29
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +13 -18
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +12 -16
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +37 -37
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
- package/dist/cjs/ic-select-with-multi.cjs.entry.js +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +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 +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +2 -2
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +2 -2
- package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +13 -15
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +2 -2
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +15 -24
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-4cf27b16.js +8 -8
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/ic-data-table/ic-data-table.css +76 -1
- package/dist/collection/components/ic-data-table/ic-data-table.js +372 -53
- package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
- package/dist/collection/components/ic-data-table/story-data.js +262 -4
- 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 +324 -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/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-menu-with-multi/ic-menu.js +176 -35
- package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +226 -49
- package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +180 -119
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js +56 -11
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
- package/dist/collection/utils/helpers.js +4 -1
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/helpers.js +57 -97
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/helpers2.js +31 -1
- package/dist/components/helpers2.js.map +1 -1
- package/dist/components/ic-accordion-group.js +2 -1
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-back-to-top.js +22 -9
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +59 -77
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +2 -0
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-button2.js +11 -11
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +26 -16
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +33 -31
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +21 -31
- package/dist/components/ic-chip.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 +189 -43
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +1 -1
- package/dist/components/ic-date-picker.js +1 -1
- package/dist/components/ic-dialog.js +4 -2
- 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} +38 -11
- package/dist/components/ic-empty-state2.js.map +1 -0
- package/dist/components/ic-footer-link-group.js +2 -2
- package/dist/components/ic-footer-link-group.js.map +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer.js +2 -2
- package/dist/components/ic-footer.js.map +1 -1
- package/dist/components/ic-hero.js +3 -2
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-horizontal-scroll2.js +1 -2
- package/dist/components/ic-horizontal-scroll2.js.map +1 -1
- package/dist/components/ic-input-component-container2.js +2 -2
- package/dist/components/ic-input-component-container2.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +1 -1
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +4 -10
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +3 -3
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-menu3.js +177 -36
- package/dist/components/ic-menu3.js.map +1 -1
- package/dist/components/ic-navigation-button.js +1 -1
- package/dist/components/ic-navigation-group.js +1 -1
- package/dist/components/ic-navigation-item.js +2 -2
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-pagination-bar2.js +160 -103
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +22 -12
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +23 -8
- package/dist/components/ic-pagination2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +12 -17
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +11 -15
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +37 -37
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +1 -1
- package/dist/components/ic-select-with-multi.js +1 -1
- package/dist/components/ic-select2.js +10 -6
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +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.map +1 -1
- package/dist/components/ic-switch.js +1 -1
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab.js +1 -1
- package/dist/components/ic-tab.js.map +1 -1
- package/dist/components/ic-text-field2.js +8 -8
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +13 -15
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toggle-button.js +1 -1
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-tooltip2.js +1 -1
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +15 -24
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-typography2.js +1 -1
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/core.css +2 -2
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/p-0e51d58e.entry.js +2 -0
- package/dist/core/p-0e51d58e.entry.js.map +1 -0
- package/dist/core/{p-4fd58768.entry.js → p-11b243c9.entry.js} +2 -2
- package/dist/core/{p-4bd13376.entry.js → p-185e91f0.entry.js} +2 -2
- package/dist/core/p-185e91f0.entry.js.map +1 -0
- package/dist/core/p-1a45f961.entry.js +2 -0
- package/dist/core/{p-e8151d13.entry.js.map → p-1a45f961.entry.js.map} +1 -1
- package/dist/core/p-1b4f852c.js +2 -0
- package/dist/core/p-1b4f852c.js.map +1 -0
- package/dist/core/{p-4ad3012a.entry.js → p-1fb48c84.entry.js} +2 -2
- package/dist/core/{p-6dce8e88.entry.js → p-1fff20ce.entry.js} +2 -2
- package/dist/core/p-1fff20ce.entry.js.map +1 -0
- package/dist/core/{p-1a91e842.entry.js → p-201ec29e.entry.js} +2 -2
- package/dist/core/{p-1a91e842.entry.js.map → p-201ec29e.entry.js.map} +1 -1
- package/dist/core/p-20d4ded5.js +2 -0
- package/dist/core/p-20d4ded5.js.map +1 -0
- package/dist/core/p-20f244ad.entry.js +2 -0
- package/dist/core/p-20f244ad.entry.js.map +1 -0
- package/dist/core/p-2536b95b.entry.js +2 -0
- package/dist/core/p-2536b95b.entry.js.map +1 -0
- package/dist/core/{p-730f058b.entry.js → p-25bbf4be.entry.js} +2 -2
- package/dist/core/p-25bbf4be.entry.js.map +1 -0
- package/dist/core/p-303dc008.entry.js +2 -0
- package/dist/core/p-303dc008.entry.js.map +1 -0
- package/dist/core/p-3484b15b.entry.js +2 -0
- package/dist/core/p-3484b15b.entry.js.map +1 -0
- package/dist/core/{p-aabab75f.entry.js → p-3fa986f8.entry.js} +2 -2
- package/dist/core/{p-f8f36680.entry.js → p-450f72b2.entry.js} +2 -2
- package/dist/core/{p-8b820365.entry.js → p-48c39d2a.entry.js} +2 -2
- package/dist/core/{p-a2dc10d8.entry.js → p-4aac2373.entry.js} +2 -2
- package/dist/core/{p-db3a35fb.entry.js → p-5201cd2b.entry.js} +2 -2
- package/dist/core/{p-db3a35fb.entry.js.map → p-5201cd2b.entry.js.map} +1 -1
- package/dist/core/p-53aeca18.entry.js +2 -0
- package/dist/core/p-53aeca18.entry.js.map +1 -0
- package/dist/core/{p-6eb58b0a.entry.js → p-5447f2fd.entry.js} +2 -2
- package/dist/core/{p-e1963c78.entry.js → p-5a5a52d3.entry.js} +2 -2
- package/dist/core/p-5a5a52d3.entry.js.map +1 -0
- package/dist/core/{p-946625a3.entry.js → p-60494f69.entry.js} +2 -2
- package/dist/core/p-60494f69.entry.js.map +1 -0
- package/dist/core/p-646b886c.entry.js +2 -0
- package/dist/core/p-646b886c.entry.js.map +1 -0
- package/dist/core/p-6996b750.entry.js +2 -0
- package/dist/core/p-6996b750.entry.js.map +1 -0
- package/dist/core/{p-849f43c3.entry.js → p-7114ae3b.entry.js} +2 -2
- package/dist/core/{p-494c3cbe.entry.js → p-71ddb6d9.entry.js} +2 -2
- 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-7c569c2d.entry.js +2 -0
- package/dist/core/p-7c569c2d.entry.js.map +1 -0
- package/dist/core/{p-c621d6b0.entry.js → p-7f6de032.entry.js} +2 -2
- package/dist/core/p-7f6de032.entry.js.map +1 -0
- package/dist/core/{p-c14a897d.entry.js → p-7fe37432.entry.js} +2 -2
- package/dist/core/{p-9567c117.entry.js → p-86e679ab.entry.js} +2 -2
- package/dist/core/{p-a8c15117.entry.js → p-87075008.entry.js} +2 -2
- package/dist/core/p-895472da.entry.js +2 -0
- package/dist/core/p-895472da.entry.js.map +1 -0
- package/dist/core/{p-00bd7919.entry.js → p-8a67e960.entry.js} +2 -2
- package/dist/core/{p-9d8883d7.entry.js → p-8ccb23bd.entry.js} +2 -2
- package/dist/core/{p-9d8883d7.entry.js.map → p-8ccb23bd.entry.js.map} +1 -1
- package/dist/core/{p-d2d63a61.entry.js → p-9c22b14f.entry.js} +2 -2
- package/dist/core/{p-d2d63a61.entry.js.map → p-9c22b14f.entry.js.map} +1 -1
- package/dist/core/{p-19c1e271.entry.js → p-a1df23b4.entry.js} +2 -2
- package/dist/core/p-a1df23b4.entry.js.map +1 -0
- package/dist/core/{p-3dcc61cc.entry.js → p-a821c21f.entry.js} +2 -2
- package/dist/core/{p-3dcc61cc.entry.js.map → p-a821c21f.entry.js.map} +1 -1
- package/dist/core/{p-cca482e2.entry.js → p-b3b834b3.entry.js} +2 -2
- package/dist/core/p-b3b834b3.entry.js.map +1 -0
- package/dist/core/p-b4949e9a.entry.js +2 -0
- package/dist/core/p-b4949e9a.entry.js.map +1 -0
- package/dist/core/p-b7c644d1.entry.js +2 -0
- package/dist/core/p-b7c644d1.entry.js.map +1 -0
- package/dist/core/{p-0af27517.entry.js → p-b94ef8de.entry.js} +2 -2
- package/dist/core/p-ba1c1804.entry.js +2 -0
- package/dist/core/p-ba1c1804.entry.js.map +1 -0
- package/dist/core/{p-7fda2f94.entry.js → p-bbb1ce94.entry.js} +2 -2
- package/dist/core/p-bda7d350.entry.js +2 -0
- package/dist/core/p-bda7d350.entry.js.map +1 -0
- package/dist/core/{p-8b1f9648.entry.js → p-c5147498.entry.js} +2 -2
- package/dist/core/{p-ff6f1e3a.entry.js → p-d3a13342.entry.js} +2 -2
- package/dist/core/{p-843bdaae.entry.js → p-d4fed5f6.entry.js} +2 -2
- package/dist/core/p-d4fed5f6.entry.js.map +1 -0
- package/dist/core/p-d6ad82d8.entry.js +2 -0
- package/dist/core/p-d6ad82d8.entry.js.map +1 -0
- package/dist/core/{p-a05755b1.entry.js → p-d79bfead.entry.js} +2 -2
- package/dist/core/{p-a05755b1.entry.js.map → p-d79bfead.entry.js.map} +1 -1
- package/dist/core/p-db5c4969.entry.js +2 -0
- package/dist/core/{p-06c27edb.entry.js.map → p-db5c4969.entry.js.map} +1 -1
- package/dist/core/{p-957de939.entry.js → p-dd787b5b.entry.js} +2 -2
- package/dist/core/p-e42b66d5.entry.js +2 -0
- package/dist/core/p-e42b66d5.entry.js.map +1 -0
- package/dist/core/{p-9528b29e.entry.js → p-e4e89a4d.entry.js} +2 -2
- package/dist/core/{p-e16f73ba.entry.js → p-f704629e.entry.js} +2 -2
- package/dist/core/p-f704629e.entry.js.map +1 -0
- package/dist/core/p-fae5b518.entry.js +2 -0
- package/dist/core/p-fae5b518.entry.js.map +1 -0
- package/dist/core/{p-00c5639e.entry.js → p-ff697d68.entry.js} +2 -2
- package/dist/core/p-ff697d68.entry.js.map +1 -0
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-f328a7b6.js → helpers-1cd71f8a.js} +32 -2
- package/dist/esm/helpers-1cd71f8a.js.map +1 -0
- package/dist/esm/{helpers-c34e4042.js → helpers-84d21612.js} +58 -98
- package/dist/esm/helpers-84d21612.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +3 -1
- package/dist/esm/ic-accordion-group.entry.js.map +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-alert.entry.js +1 -1
- package/dist/esm/ic-back-to-top.entry.js +15 -9
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +55 -77
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +3 -1
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js +14 -14
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card.entry.js +1 -1
- package/dist/esm/ic-card.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +23 -16
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +33 -31
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +21 -31
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +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 +164 -37
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +1 -1
- package/dist/esm/ic-date-picker.entry.js +1 -1
- package/dist/esm/ic-dialog.entry.js +4 -2
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state_2.entry.js +340 -0
- package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
- package/dist/esm/ic-footer-link-group.entry.js +2 -2
- package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
- package/dist/esm/ic-footer-link.entry.js +1 -1
- package/dist/esm/ic-footer.entry.js +2 -2
- package/dist/esm/ic-footer.entry.js.map +1 -1
- package/dist/esm/ic-hero.entry.js +3 -2
- package/dist/esm/ic-hero.entry.js.map +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +2 -3
- package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_4.entry.js +2 -2
- package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js +4 -10
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-menu-with-multi.entry.js +176 -35
- package/dist/esm/ic-menu-with-multi.entry.js.map +1 -1
- package/dist/esm/ic-menu.entry.js +4 -4
- package/dist/esm/ic-menu.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +1 -1
- package/dist/esm/ic-navigation-group.entry.js +1 -1
- package/dist/esm/ic-navigation-item.entry.js +2 -2
- 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 +1 -1
- package/dist/esm/ic-pagination_4.entry.js +54 -29
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +13 -18
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +12 -16
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +37 -37
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +1 -1
- package/dist/esm/ic-select-with-multi.entry.js +1 -1
- package/dist/esm/ic-side-navigation.entry.js +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 +1 -1
- package/dist/esm/ic-status-tag.entry.js.map +1 -1
- package/dist/esm/ic-step.entry.js +1 -1
- package/dist/esm/ic-stepper.entry.js +1 -1
- package/dist/esm/ic-switch.entry.js +2 -2
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab-panel.entry.js +1 -1
- package/dist/esm/ic-tab.entry.js +2 -2
- package/dist/esm/ic-tab.entry.js.map +1 -1
- package/dist/esm/ic-theme.entry.js +13 -15
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +1 -1
- package/dist/esm/ic-toggle-button.entry.js +2 -2
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +15 -24
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-93509377.js +8 -8
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +79 -13
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +9 -0
- package/dist/types/components/ic-data-table/story-data.d.ts +59 -0
- 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/test/a11y/ic-data-table-title-bar.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +10 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +33 -13
- package/dist/types/components.d.ts +211 -46
- package/dist/types/utils/helpers.d.ts +1 -0
- package/dist/types/utils/types.d.ts +21 -5
- package/hydrate/index.js +1414 -1058
- package/package.json +3 -3
- package/dist/cjs/helpers-6d736902.js.map +0 -1
- package/dist/cjs/helpers-f75cf7cf.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-pagination-bar.cjs.entry.js +0 -269
- 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-00c5639e.entry.js.map +0 -1
- package/dist/core/p-06c27edb.entry.js +0 -2
- package/dist/core/p-162f3e36.entry.js +0 -2
- package/dist/core/p-162f3e36.entry.js.map +0 -1
- package/dist/core/p-19c1e271.entry.js.map +0 -1
- package/dist/core/p-1c3bd46d.entry.js +0 -2
- package/dist/core/p-1c3bd46d.entry.js.map +0 -1
- package/dist/core/p-2c9d6334.entry.js +0 -2
- package/dist/core/p-2c9d6334.entry.js.map +0 -1
- package/dist/core/p-3e9a8977.entry.js +0 -2
- package/dist/core/p-3e9a8977.entry.js.map +0 -1
- package/dist/core/p-41b682dc.entry.js +0 -2
- package/dist/core/p-41b682dc.entry.js.map +0 -1
- package/dist/core/p-4bd13376.entry.js.map +0 -1
- package/dist/core/p-6dce8e88.entry.js.map +0 -1
- package/dist/core/p-730f058b.entry.js.map +0 -1
- package/dist/core/p-7f53d1be.entry.js +0 -2
- package/dist/core/p-7f53d1be.entry.js.map +0 -1
- package/dist/core/p-843bdaae.entry.js.map +0 -1
- package/dist/core/p-946625a3.entry.js.map +0 -1
- package/dist/core/p-99bf38e3.entry.js +0 -2
- package/dist/core/p-99bf38e3.entry.js.map +0 -1
- package/dist/core/p-9e3178e8.entry.js +0 -2
- package/dist/core/p-9e3178e8.entry.js.map +0 -1
- package/dist/core/p-a1556d97.entry.js +0 -2
- package/dist/core/p-a1556d97.entry.js.map +0 -1
- package/dist/core/p-baf81f30.entry.js.map +0 -1
- package/dist/core/p-c621d6b0.entry.js.map +0 -1
- package/dist/core/p-c7590421.entry.js +0 -2
- package/dist/core/p-c7590421.entry.js.map +0 -1
- package/dist/core/p-c953edb9.entry.js +0 -2
- package/dist/core/p-c953edb9.entry.js.map +0 -1
- package/dist/core/p-cca482e2.entry.js.map +0 -1
- package/dist/core/p-cd799087.js +0 -2
- package/dist/core/p-cd799087.js.map +0 -1
- package/dist/core/p-d32d331b.entry.js +0 -2
- package/dist/core/p-d32d331b.entry.js.map +0 -1
- package/dist/core/p-dc5e1f8f.entry.js +0 -2
- package/dist/core/p-dc5e1f8f.entry.js.map +0 -1
- package/dist/core/p-e16f73ba.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-e1963c78.entry.js.map +0 -1
- package/dist/core/p-e8151d13.entry.js +0 -2
- package/dist/core/p-ee765ad5.js +0 -2
- package/dist/core/p-ee765ad5.js.map +0 -1
- package/dist/core/p-f2147136.entry.js +0 -2
- package/dist/core/p-f2147136.entry.js.map +0 -1
- package/dist/core/p-fca46bd9.entry.js +0 -2
- package/dist/core/p-fca46bd9.entry.js.map +0 -1
- package/dist/core/p-ff3a01f3.entry.js +0 -2
- package/dist/core/p-ff3a01f3.entry.js.map +0 -1
- package/dist/esm/helpers-c34e4042.js.map +0 -1
- package/dist/esm/helpers-f328a7b6.js.map +0 -1
- package/dist/esm/ic-empty-state.entry.js.map +0 -1
- package/dist/esm/ic-pagination-bar.entry.js +0 -265
- 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-4fd58768.entry.js.map → p-11b243c9.entry.js.map} +0 -0
- /package/dist/core/{p-4ad3012a.entry.js.map → p-1fb48c84.entry.js.map} +0 -0
- /package/dist/core/{p-aabab75f.entry.js.map → p-3fa986f8.entry.js.map} +0 -0
- /package/dist/core/{p-f8f36680.entry.js.map → p-450f72b2.entry.js.map} +0 -0
- /package/dist/core/{p-8b820365.entry.js.map → p-48c39d2a.entry.js.map} +0 -0
- /package/dist/core/{p-a2dc10d8.entry.js.map → p-4aac2373.entry.js.map} +0 -0
- /package/dist/core/{p-6eb58b0a.entry.js.map → p-5447f2fd.entry.js.map} +0 -0
- /package/dist/core/{p-849f43c3.entry.js.map → p-7114ae3b.entry.js.map} +0 -0
- /package/dist/core/{p-494c3cbe.entry.js.map → p-71ddb6d9.entry.js.map} +0 -0
- /package/dist/core/{p-c14a897d.entry.js.map → p-7fe37432.entry.js.map} +0 -0
- /package/dist/core/{p-9567c117.entry.js.map → p-86e679ab.entry.js.map} +0 -0
- /package/dist/core/{p-a8c15117.entry.js.map → p-87075008.entry.js.map} +0 -0
- /package/dist/core/{p-00bd7919.entry.js.map → p-8a67e960.entry.js.map} +0 -0
- /package/dist/core/{p-0af27517.entry.js.map → p-b94ef8de.entry.js.map} +0 -0
- /package/dist/core/{p-7fda2f94.entry.js.map → p-bbb1ce94.entry.js.map} +0 -0
- /package/dist/core/{p-8b1f9648.entry.js.map → p-c5147498.entry.js.map} +0 -0
- /package/dist/core/{p-ff6f1e3a.entry.js.map → p-d3a13342.entry.js.map} +0 -0
- /package/dist/core/{p-957de939.entry.js.map → p-dd787b5b.entry.js.map} +0 -0
- /package/dist/core/{p-9528b29e.entry.js.map → p-e4e89a4d.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"file":"ic-menu-item.entry.js","mappings":"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","names":[],"sources":["../web-components/dist/collection/components/ic-menu-item/ic-menu-item.css?tag=ic-menu-item&encapsulation=shadow","../web-components/dist/collection/components/ic-menu-item/ic-menu-item.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\nli {\n list-style: none;\n padding: 0;\n}\n\n:host ::part(button) {\n color: var(--ic-color-primary-text);\n padding: calc(var(--ic-space-xxxs) / 2);\n display: flex;\n align-items: flex-start;\n gap: var(--ic-space-xs);\n border-radius: 0;\n min-height: 2.5rem;\n height: auto;\n}\n\n.focus-border {\n display: flex;\n align-items: flex-start;\n gap: var(--ic-space-xs);\n border-radius: var(--ic-border-radius);\n margin: calc(var(--ic-space-xxxs) / 2);\n padding: var(--ic-space-xxs);\n border: var(--ic-space-xxxs) dashed transparent;\n\n --icon-height: auto;\n}\n\n:host(.disabled) ::part(button) {\n color: var(--ic-architectural-200) !important;\n pointer-events: none;\n}\n\n:host(.disabled) .menu-item-label,\n:host(.disabled) .shortcut,\n:host(.disabled) .menu-item-description {\n color: var(--ic-architectural-200) !important;\n}\n\n:host([variant=\"destructive\"]) ::part(button) {\n color: var(--ic-action-destructive);\n}\n\n:host ::part(button):hover {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\n:host ::part(button):focus-visible,\n:host ::part(button):focus {\n color: var(--ic-color-white-text);\n background-color: var(--ic-focus-blue);\n box-shadow: none;\n}\n\n:host(.disabled) ::part(button):focus-visible,\n:host(.disabled) ::part(button):focus {\n color: var(--ic-theme-lighten-40) !important;\n}\n\n:host([variant=\"destructive\"]) ::part(button):focus-visible,\n:host([variant=\"destructive\"]) ::part(button):focus {\n background-color: var(--ic-action-destructive);\n}\n\nic-button:focus-within .menu-item-label,\nic-button:focus-within .shortcut,\nic-button:focus-within .menu-item-description {\n color: var(--ic-color-white-text);\n}\n\n:host(.disabled) ic-button:focus-within .focus-border {\n border-color: var(--ic-architectural-white);\n}\n\n:host(.disabled) ic-button:focus-within .menu-item-label,\n:host(.disabled) ic-button:focus-within .shortcut,\n:host(.disabled) ic-button:focus-within .menu-item-description {\n color: var(--ic-theme-lighten-40) !important;\n}\n\n:host ::part(button):active {\n background-color: var(--ic-action-dark-bg-active);\n color: var(--ic-color-primary-text) !important;\n}\n\n:host([variant=\"destructive\"]) ::part(button):active {\n background-color: var(--ic-action-dark-bg-active);\n color: var(--ic-action-destructive) !important;\n}\n\n.menu-item-info {\n display: flex;\n flex-direction: column;\n flex: 1;\n align-items: baseline;\n white-space: pre-line;\n text-align: left;\n}\n\n.menu-labels {\n display: flex;\n align-items: baseline;\n gap: var(--ic-space-xs);\n}\n\n.menu-item-description {\n color: var(--ic-color-secondary-text);\n}\n\n.shortcut {\n color: var(--ic-color-tertiary-text);\n display: flex;\n flex: min-content;\n}\n\n:host([variant=\"destructive\"]) .menu-item-label {\n text-transform: uppercase;\n font-weight: 600;\n letter-spacing: 0.025em;\n}\n\nic-button:active .menu-item-label {\n color: var(--ic-color-primary-text);\n}\n\nic-button:active .menu-item-description {\n color: var(--ic-color-secondary-text);\n}\n\nic-button:active .shortcut {\n color: var(--ic-color-tertiary-text);\n}\n\n:host([variant=\"destructive\"]) ic-button:active .menu-item-label {\n color: var(--ic-action-destructive) !important;\n}\n\n.icon,\n.check-icon,\n.submenu-icon,\n.icon ::slotted(svg),\n.check-icon svg,\n.submenu-icon svg {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.check-icon.hide {\n visibility: hidden;\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n :host ::part(button) {\n border: canvas;\n }\n\n :host ::part(button):focus-visible {\n outline: var(--ic-space-xxxs) solid transparent;\n }\n\n .focus-border {\n border-color: canvas;\n }\n\n :host(.disabled) ic-button:focus-within .focus-border {\n border-color: GrayText;\n }\n\n :host(.disabled) .menu-item-info,\n :host(.disabled) .menu-item-label,\n :host(.disabled) .shortcut,\n :host(.disabled) .menu-item-description,\n :host(.disabled) ic-button:focus-within .menu-item-info,\n :host(.disabled) ic-button:focus-within .menu-item-label,\n :host(.disabled) ic-button:focus-within .shortcut,\n :host(.disabled) ic-button:focus-within .menu-item-description {\n color: GrayText !important;\n }\n\n :host(.disabled) ::part(button):focus-visible,\n :host(.disabled) ::part(button):focus {\n outline-color: GrayText !important;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { getParentElement, isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, isPropDefined, } from \"../../utils/helpers\";\nimport Check from \"../../assets/check-icon.svg\";\nimport Chevron from \"../../assets/chevron-icon.svg\";\n/**\n * @slot icon - Content will be placed to the left of the menu item label.\n */\nexport class MenuItem {\n constructor() {\n this.handleClick = (e) => {\n if (isPropDefined(this.submenuTriggerFor)) {\n this.triggerPopoverMenuInstance.emit();\n }\n else if (this.variant === \"toggle\") {\n e.preventDefault();\n this.toggleChecked\n ? (this.toggleChecked = false)\n : (this.toggleChecked = true);\n }\n this.handleMenuItemClick.emit({\n label: this.label,\n hasSubMenu: !!this.el.submenuTriggerFor,\n });\n };\n this.getMenuItemAriaLabel = () => {\n let ariaLabel = this.label;\n if (isPropDefined(this.description)) {\n ariaLabel = `${ariaLabel}, ${this.description}`;\n }\n if (isPropDefined(this.keyboardShortcut)) {\n ariaLabel = `${ariaLabel}, ${this.keyboardShortcut}`;\n }\n if (this.variant === \"destructive\") {\n ariaLabel = `${ariaLabel}, destructive`;\n }\n if (isPropDefined(this.submenuTriggerFor)) {\n ariaLabel = `${ariaLabel}, triggers submenu`;\n }\n if (this.el.classList.contains(\"ic-popover-submenu-back-button\")) {\n ariaLabel = \"Go back to parent menu\";\n }\n const parentEl = getParentElement(this.el);\n if (parentEl.tagName === \"IC-MENU-GROUP\" &&\n parentEl.label) {\n return `${ariaLabel}, ${parentEl.label} menu group`;\n }\n else {\n return ariaLabel;\n }\n };\n this.toggleChecked = false;\n this.description = undefined;\n this.disabled = false;\n this.href = undefined;\n this.hreflang = undefined;\n this.keyboardShortcut = undefined;\n this.label = undefined;\n this.referrerpolicy = undefined;\n this.rel = undefined;\n this.submenuTriggerFor = undefined;\n this.target = undefined;\n this.variant = \"default\";\n }\n componentWillLoad() {\n // This ensures that trigger menu items are always set to the default variant\n if (isPropDefined(this.submenuTriggerFor) && this.variant !== \"default\") {\n this.variant = \"default\";\n }\n removeDisabledFalse(this.disabled, this.el);\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Menu Item\");\n }\n handleHostClick(e) {\n if (this.disabled) {\n e.stopImmediatePropagation();\n }\n }\n render() {\n // A sub-component to layout the menu information correctly in ic-button\n const MenuItemInformation = () => {\n return (h(\"div\", { class: \"menu-item-info\" }, h(\"div\", { class: \"menu-labels\" }, h(\"ic-typography\", { class: \"menu-item-label\" }, this.label), this.keyboardShortcut && (h(\"ic-typography\", { variant: \"caption\", class: \"shortcut\" }, this.keyboardShortcut))), this.description && (h(\"ic-typography\", { class: \"menu-item-description\", variant: \"caption\" }, this.description))));\n };\n return (h(Host, { class: {\n [\"disabled\"]: this.disabled,\n } }, h(\"li\", { role: this.variant === \"toggle\" ? \"menuitemcheckbox\" : \"menuitem\", \"aria-disabled\": `${this.disabled}`, \"aria-checked\": this.variant === \"toggle\" && this.toggleChecked === true\n ? true\n : this.variant === \"toggle\" && this.toggleChecked === false\n ? false\n : undefined }, h(\"ic-button\", { fullWidth: true, variant: \"tertiary\", onClick: this.handleClick, href: isPropDefined(this.href), hreflang: isPropDefined(this.hreflang), target: isPropDefined(this.target), rel: isPropDefined(this.rel), referrerpolicy: this.referrerpolicy !== undefined ? this.referrerpolicy : null, \"aria-disabled\": `${this.disabled}`, \"aria-label\": this.getMenuItemAriaLabel(), ariaControlsId: isPropDefined(this.submenuTriggerFor)\n ? `ic-popover-submenu-${this.submenuTriggerFor}`\n : false, \"aria-haspopup\": isPropDefined(this.submenuTriggerFor) ||\n this.el.classList.contains(\"ic-popover-submenu-back-button\")\n ? \"menu\"\n : false, ariaOwnsId: isPropDefined(this.submenuTriggerFor)\n ? `ic-popover-submenu-${this.submenuTriggerFor}`\n : false }, h(\"div\", { class: \"focus-border\" }, isSlotUsed(this.el, \"icon\") && (h(\"span\", { class: \"icon\" }, h(\"slot\", { name: \"icon\" }))), h(MenuItemInformation, null), this.variant === \"toggle\" && (h(\"span\", { class: {\n [\"check-icon\"]: true,\n [\"hide\"]: !this.toggleChecked,\n }, \"aria-hidden\": \"true\", innerHTML: Check })), isPropDefined(this.submenuTriggerFor) && (h(\"span\", { class: { [\"submenu-icon\"]: true }, \"aria-hidden\": \"true\", innerHTML: Chevron })))))));\n }\n static get is() { return \"ic-menu-item\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-menu-item.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-menu-item.css\"]\n };\n }\n static get properties() {\n return {\n \"description\": {\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 description displayed in the menu item, below the label.\"\n },\n \"attribute\": \"description\",\n \"reflect\": 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 menu item will be in disabled state.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"href\": {\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 the link points to. This will render the menu item as an \\\"a\\\" tag.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false\n },\n \"hreflang\": {\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 human language of the linked URL.\"\n },\n \"attribute\": \"hreflang\",\n \"reflect\": false\n },\n \"keyboardShortcut\": {\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 label describing the keyboard shortcut for a menu item's action.\"\n },\n \"attribute\": \"keyboard-shortcut\",\n \"reflect\": 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 to display in the menu item.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"referrerpolicy\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"ReferrerPolicy\",\n \"resolved\": \"\\\"\\\" | \\\"no-referrer\\\" | \\\"no-referrer-when-downgrade\\\" | \\\"origin\\\" | \\\"origin-when-cross-origin\\\" | \\\"same-origin\\\" | \\\"strict-origin\\\" | \\\"strict-origin-when-cross-origin\\\" | \\\"unsafe-url\\\"\",\n \"references\": {\n \"ReferrerPolicy\": {\n \"location\": \"global\",\n \"id\": \"global::ReferrerPolicy\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"How much of the referrer to send when following the link.\"\n },\n \"attribute\": \"referrerpolicy\",\n \"reflect\": false\n },\n \"rel\": {\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 relationship of the linked URL as space-separated link types.\"\n },\n \"attribute\": \"rel\",\n \"reflect\": false\n },\n \"submenuTriggerFor\": {\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\": \"This references the popover menu instance that the menu item is a trigger for. If this prop is set, then the variant will always be default.\"\n },\n \"attribute\": \"submenu-trigger-for\",\n \"reflect\": false\n },\n \"target\": {\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 linked URL, as the name for a browsing context (a tab, window, or iframe).\"\n },\n \"attribute\": \"target\",\n \"reflect\": false\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"IcMenuItemVariants\",\n \"resolved\": \"\\\"default\\\" | \\\"destructive\\\" | \\\"toggle\\\"\",\n \"references\": {\n \"IcMenuItemVariants\": {\n \"location\": \"import\",\n \"path\": \"./ic-menu-item.types\",\n \"id\": \"src/components/ic-menu-item/ic-menu-item.types.ts::IcMenuItemVariants\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the menu item.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"toggleChecked\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"childBlur\",\n \"name\": \"childBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when item loses focus.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"handleMenuItemClick\",\n \"name\": \"handleMenuItemClick\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when the user clicks a menu item.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"{\\n label: string;\\n hasSubMenu: boolean;\\n }\",\n \"resolved\": \"{ label: string; hasSubMenu: boolean; }\",\n \"references\": {}\n }\n }, {\n \"method\": \"triggerPopoverMenuInstance\",\n \"name\": \"triggerPopoverMenuInstance\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when the user clicks a menu item that triggers a popover menu instance.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-menu-item.js.map\n"],"version":3}
|
1
|
+
{"file":"ic-menu-item.entry.js","mappings":"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","names":[],"sources":["../web-components/dist/collection/components/ic-menu-item/ic-menu-item.css?tag=ic-menu-item&encapsulation=shadow","../web-components/dist/collection/components/ic-menu-item/ic-menu-item.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\nli {\n list-style: none;\n padding: 0;\n}\n\n:host ::part(button) {\n color: var(--ic-color-primary-text);\n padding: calc(var(--ic-space-xxxs) / 2);\n display: flex;\n align-items: flex-start;\n gap: var(--ic-space-xs);\n border-radius: 0;\n min-height: 2.5rem;\n height: auto;\n}\n\n.focus-border {\n display: flex;\n align-items: flex-start;\n gap: var(--ic-space-xs);\n border-radius: var(--ic-border-radius);\n margin: calc(var(--ic-space-xxxs) / 2);\n padding: var(--ic-space-xxs);\n border: var(--ic-space-xxxs) dashed transparent;\n\n --icon-height: auto;\n}\n\n:host(.disabled) ::part(button) {\n color: var(--ic-architectural-200) !important;\n pointer-events: none;\n}\n\n:host(.disabled) .menu-item-label,\n:host(.disabled) .shortcut,\n:host(.disabled) .menu-item-description {\n color: var(--ic-architectural-200) !important;\n}\n\n:host([variant=\"destructive\"]) ::part(button) {\n color: var(--ic-action-destructive);\n}\n\n:host ::part(button):hover {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\n:host ::part(button):focus-visible,\n:host ::part(button):focus {\n color: var(--ic-color-white-text);\n background-color: var(--ic-focus-blue);\n box-shadow: none;\n}\n\n:host(.disabled) ::part(button):focus-visible,\n:host(.disabled) ::part(button):focus {\n color: var(--ic-theme-lighten-40) !important;\n}\n\n:host([variant=\"destructive\"]) ::part(button):focus-visible,\n:host([variant=\"destructive\"]) ::part(button):focus {\n background-color: var(--ic-action-destructive);\n}\n\nic-button:focus-within .menu-item-label,\nic-button:focus-within .shortcut,\nic-button:focus-within .menu-item-description {\n color: var(--ic-color-white-text);\n}\n\n:host(.disabled) ic-button:focus-within .focus-border {\n border-color: var(--ic-architectural-white);\n}\n\n:host(.disabled) ic-button:focus-within .menu-item-label,\n:host(.disabled) ic-button:focus-within .shortcut,\n:host(.disabled) ic-button:focus-within .menu-item-description {\n color: var(--ic-theme-lighten-40) !important;\n}\n\n:host ::part(button):active {\n background-color: var(--ic-action-dark-bg-active);\n color: var(--ic-color-primary-text) !important;\n}\n\n:host([variant=\"destructive\"]) ::part(button):active {\n background-color: var(--ic-action-dark-bg-active);\n color: var(--ic-action-destructive) !important;\n}\n\n.menu-item-info {\n display: flex;\n flex-direction: column;\n flex: 1;\n align-items: baseline;\n white-space: pre-line;\n text-align: left;\n}\n\n.menu-labels {\n display: flex;\n align-items: baseline;\n gap: var(--ic-space-xs);\n}\n\n.menu-item-description {\n color: var(--ic-color-secondary-text);\n}\n\n.shortcut {\n color: var(--ic-color-tertiary-text);\n display: flex;\n flex: min-content;\n}\n\n:host([variant=\"destructive\"]) .menu-item-label {\n text-transform: uppercase;\n font-weight: 600;\n letter-spacing: 0.025em;\n}\n\nic-button:active .menu-item-label {\n color: var(--ic-color-primary-text);\n}\n\nic-button:active .menu-item-description {\n color: var(--ic-color-secondary-text);\n}\n\nic-button:active .shortcut {\n color: var(--ic-color-tertiary-text);\n}\n\n:host([variant=\"destructive\"]) ic-button:active .menu-item-label {\n color: var(--ic-action-destructive) !important;\n}\n\n.icon,\n.check-icon,\n.submenu-icon,\n.icon ::slotted(svg),\n.check-icon svg,\n.submenu-icon svg {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.check-icon.hide {\n visibility: hidden;\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n :host ::part(button) {\n border: canvas;\n }\n\n :host ::part(button):focus-visible {\n outline: var(--ic-space-xxxs) solid transparent;\n }\n\n .focus-border {\n border-color: canvas;\n }\n\n :host(.disabled) ic-button:focus-within .focus-border {\n border-color: GrayText;\n }\n\n :host(.disabled) .menu-item-info,\n :host(.disabled) .menu-item-label,\n :host(.disabled) .shortcut,\n :host(.disabled) .menu-item-description,\n :host(.disabled) ic-button:focus-within .menu-item-info,\n :host(.disabled) ic-button:focus-within .menu-item-label,\n :host(.disabled) ic-button:focus-within .shortcut,\n :host(.disabled) ic-button:focus-within .menu-item-description {\n color: GrayText !important;\n }\n\n :host(.disabled) ::part(button):focus-visible,\n :host(.disabled) ::part(button):focus {\n outline-color: GrayText !important;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, isPropDefined, } from \"../../utils/helpers\";\nimport Check from \"../../assets/check-icon.svg\";\nimport Chevron from \"../../assets/chevron-icon.svg\";\n/**\n * @slot icon - Content will be placed to the left of the menu item label.\n */\nexport class MenuItem {\n constructor() {\n this.handleClick = (e) => {\n if (isPropDefined(this.submenuTriggerFor)) {\n this.triggerPopoverMenuInstance.emit();\n }\n else if (this.variant === \"toggle\") {\n e.preventDefault();\n this.toggleChecked = !this.toggleChecked;\n }\n this.handleMenuItemClick.emit({\n label: this.label,\n hasSubMenu: !!this.el.submenuTriggerFor,\n });\n };\n this.getMenuItemAriaLabel = () => {\n let ariaLabel = this.label;\n if (isPropDefined(this.description)) {\n ariaLabel = `${ariaLabel}, ${this.description}`;\n }\n if (isPropDefined(this.keyboardShortcut)) {\n ariaLabel = `${ariaLabel}, ${this.keyboardShortcut}`;\n }\n if (this.variant === \"destructive\") {\n ariaLabel = `${ariaLabel}, destructive`;\n }\n if (isPropDefined(this.submenuTriggerFor)) {\n ariaLabel = `${ariaLabel}, triggers submenu`;\n }\n if (this.el.classList.contains(\"ic-popover-submenu-back-button\")) {\n ariaLabel = \"Go back to parent menu\";\n }\n const parentEl = this.el.parentElement;\n if (parentEl.tagName === \"IC-MENU-GROUP\" &&\n parentEl.label) {\n return `${ariaLabel}, ${parentEl.label} menu group`;\n }\n else {\n return ariaLabel;\n }\n };\n this.toggleChecked = false;\n this.description = undefined;\n this.disabled = false;\n this.href = undefined;\n this.hreflang = undefined;\n this.keyboardShortcut = undefined;\n this.label = undefined;\n this.referrerpolicy = undefined;\n this.rel = undefined;\n this.submenuTriggerFor = undefined;\n this.target = undefined;\n this.variant = \"default\";\n }\n componentWillLoad() {\n // This ensures that trigger menu items are always set to the default variant\n if (isPropDefined(this.submenuTriggerFor) && this.variant !== \"default\") {\n this.variant = \"default\";\n }\n removeDisabledFalse(this.disabled, this.el);\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Menu Item\");\n }\n handleHostClick(e) {\n if (this.disabled) {\n e.stopImmediatePropagation();\n }\n }\n render() {\n // A sub-component to layout the menu information correctly in ic-button\n const MenuItemInformation = () => {\n return (h(\"div\", { class: \"menu-item-info\" }, h(\"div\", { class: \"menu-labels\" }, h(\"ic-typography\", { class: \"menu-item-label\" }, this.label), this.keyboardShortcut && (h(\"ic-typography\", { variant: \"caption\", class: \"shortcut\" }, this.keyboardShortcut))), this.description && (h(\"ic-typography\", { class: \"menu-item-description\", variant: \"caption\" }, this.description))));\n };\n return (h(Host, { class: {\n [\"disabled\"]: this.disabled,\n } }, h(\"li\", { role: this.variant === \"toggle\" ? \"menuitemcheckbox\" : \"menuitem\", \"aria-disabled\": `${this.disabled}`, \"aria-checked\": this.variant === \"toggle\" ? this.toggleChecked : undefined }, h(\"ic-button\", { fullWidth: true, variant: \"tertiary\", onClick: this.handleClick, href: isPropDefined(this.href), hreflang: isPropDefined(this.hreflang), target: isPropDefined(this.target), rel: isPropDefined(this.rel), referrerpolicy: this.referrerpolicy !== undefined ? this.referrerpolicy : null, \"aria-disabled\": `${this.disabled}`, \"aria-label\": this.getMenuItemAriaLabel(), ariaControlsId: isPropDefined(this.submenuTriggerFor)\n ? `ic-popover-submenu-${this.submenuTriggerFor}`\n : false, \"aria-haspopup\": isPropDefined(this.submenuTriggerFor) ||\n this.el.classList.contains(\"ic-popover-submenu-back-button\")\n ? \"menu\"\n : false, ariaOwnsId: isPropDefined(this.submenuTriggerFor)\n ? `ic-popover-submenu-${this.submenuTriggerFor}`\n : false }, h(\"div\", { class: \"focus-border\" }, isSlotUsed(this.el, \"icon\") && (h(\"span\", { class: \"icon\" }, h(\"slot\", { name: \"icon\" }))), h(MenuItemInformation, null), this.variant === \"toggle\" && (h(\"span\", { class: {\n [\"check-icon\"]: true,\n [\"hide\"]: !this.toggleChecked,\n }, \"aria-hidden\": \"true\", innerHTML: Check })), isPropDefined(this.submenuTriggerFor) && (h(\"span\", { class: { [\"submenu-icon\"]: true }, \"aria-hidden\": \"true\", innerHTML: Chevron })))))));\n }\n static get is() { return \"ic-menu-item\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-menu-item.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-menu-item.css\"]\n };\n }\n static get properties() {\n return {\n \"description\": {\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 description displayed in the menu item, below the label.\"\n },\n \"attribute\": \"description\",\n \"reflect\": 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 menu item will be in disabled state.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"href\": {\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 the link points to. This will render the menu item as an \\\"a\\\" tag.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false\n },\n \"hreflang\": {\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 human language of the linked URL.\"\n },\n \"attribute\": \"hreflang\",\n \"reflect\": false\n },\n \"keyboardShortcut\": {\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 label describing the keyboard shortcut for a menu item's action.\"\n },\n \"attribute\": \"keyboard-shortcut\",\n \"reflect\": 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 to display in the menu item.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"referrerpolicy\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"ReferrerPolicy\",\n \"resolved\": \"\\\"\\\" | \\\"no-referrer\\\" | \\\"no-referrer-when-downgrade\\\" | \\\"origin\\\" | \\\"origin-when-cross-origin\\\" | \\\"same-origin\\\" | \\\"strict-origin\\\" | \\\"strict-origin-when-cross-origin\\\" | \\\"unsafe-url\\\"\",\n \"references\": {\n \"ReferrerPolicy\": {\n \"location\": \"global\",\n \"id\": \"global::ReferrerPolicy\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"How much of the referrer to send when following the link.\"\n },\n \"attribute\": \"referrerpolicy\",\n \"reflect\": false\n },\n \"rel\": {\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 relationship of the linked URL as space-separated link types.\"\n },\n \"attribute\": \"rel\",\n \"reflect\": false\n },\n \"submenuTriggerFor\": {\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\": \"This references the popover menu instance that the menu item is a trigger for. If this prop is set, then the variant will always be default.\"\n },\n \"attribute\": \"submenu-trigger-for\",\n \"reflect\": false\n },\n \"target\": {\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 linked URL, as the name for a browsing context (a tab, window, or iframe).\"\n },\n \"attribute\": \"target\",\n \"reflect\": false\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"IcMenuItemVariants\",\n \"resolved\": \"\\\"default\\\" | \\\"destructive\\\" | \\\"toggle\\\"\",\n \"references\": {\n \"IcMenuItemVariants\": {\n \"location\": \"import\",\n \"path\": \"./ic-menu-item.types\",\n \"id\": \"src/components/ic-menu-item/ic-menu-item.types.ts::IcMenuItemVariants\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the menu item.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"toggleChecked\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"childBlur\",\n \"name\": \"childBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when item loses focus.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"handleMenuItemClick\",\n \"name\": \"handleMenuItemClick\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when the user clicks a menu item.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"{\\n label: string;\\n hasSubMenu: boolean;\\n }\",\n \"resolved\": \"{ label: string; hasSubMenu: boolean; }\",\n \"references\": {}\n }\n }, {\n \"method\": \"triggerPopoverMenuInstance\",\n \"name\": \"triggerPopoverMenuInstance\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when the user clicks a menu item that triggers a popover menu instance.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-menu-item.js.map\n"],"version":3}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g as getElement } from './index-93509377.js';
|
2
|
-
import {
|
2
|
+
import { y as isMacDevice, o as onComponentRequiredPropUndefined, f as getOptionsWithoutGroupTitlesCount } from './helpers-1cd71f8a.js';
|
3
3
|
|
4
4
|
var top = 'top';
|
5
5
|
var bottom = 'bottom';
|
@@ -1819,9 +1819,12 @@ const Menu = class {
|
|
1819
1819
|
this.isMultiSelect = false;
|
1820
1820
|
this.isSearchBar = false;
|
1821
1821
|
this.isSearchableSelect = false;
|
1822
|
+
this.lastOptionSelected = null; // Index of last option selected
|
1823
|
+
this.lastOptionFocused = null; // Index of last option focused
|
1822
1824
|
this.multiOptionClicked = null;
|
1823
1825
|
this.preventClickOpen = false; // Prevents menu re-opening immediately after it is closed on blur when clicking input.
|
1824
1826
|
this.preventMenuFocus = false; // (When multiple) ensures focus moves straight to select all button from menu.
|
1827
|
+
this.shiftPressed = false;
|
1825
1828
|
this.ungroupedOptions = [];
|
1826
1829
|
this.handleClearListener = () => {
|
1827
1830
|
this.optionHighlighted = "";
|
@@ -1941,7 +1944,6 @@ const Menu = class {
|
|
1941
1944
|
}
|
1942
1945
|
else {
|
1943
1946
|
this.setInputValue(highlightedOptionIndex);
|
1944
|
-
this.value = options[highlightedOptionIndex][this.valueField];
|
1945
1947
|
}
|
1946
1948
|
}
|
1947
1949
|
}
|
@@ -1954,16 +1956,38 @@ const Menu = class {
|
|
1954
1956
|
this.handleMenuChange(true);
|
1955
1957
|
}
|
1956
1958
|
};
|
1959
|
+
// Check if option is selected based on the index of the option
|
1960
|
+
this.isOptionSelected = (index) => {
|
1961
|
+
const menuOptions = this.getMenuOptions();
|
1962
|
+
return this.value
|
1963
|
+
? this.value.includes(menuOptions[index][this.valueField])
|
1964
|
+
: false;
|
1965
|
+
};
|
1966
|
+
// Deselect currently selected options when shift pressed, but keep certain options selected
|
1967
|
+
this.deselectSelectedOptions = (optionsToKeepSelected) => {
|
1968
|
+
const menuOptions = this.getMenuOptions();
|
1969
|
+
if (this.value) {
|
1970
|
+
const selectedOptionIndexes = this.value.map((value) => {
|
1971
|
+
return menuOptions.findIndex((option) => option[this.valueField] === value);
|
1972
|
+
});
|
1973
|
+
// Call setInputValue (which toggles the selected state) on options that need to be deselected
|
1974
|
+
selectedOptionIndexes.forEach((index) => !optionsToKeepSelected.includes(index) && this.setInputValue(index));
|
1975
|
+
}
|
1976
|
+
};
|
1957
1977
|
// Determines keyboard behaviour when selection is manual (i.e. when you have to press Enter to select an option)
|
1958
1978
|
this.manualSetInputValueKeyboardOpen = (event) => {
|
1959
1979
|
const menuOptions = this.getMenuOptions();
|
1960
|
-
|
1961
|
-
|
1980
|
+
// Prevent focus disappearing on currently focused option when Shift / Cmd / Ctrl pressed
|
1981
|
+
// (i.e. when user is likely in the middle of executing a keyboard combination to select options)
|
1982
|
+
if (!(event.shiftKey || event.metaKey || event.ctrlKey)) {
|
1983
|
+
this.keyboardNav = false;
|
1984
|
+
}
|
1985
|
+
const highlightedOptionIndex = this.getOptionHighlightedIndex();
|
1962
1986
|
const clickedMultiOptionIndex = menuOptions.findIndex((option) => option[this.valueField] === this.multiOptionClicked);
|
1963
1987
|
const getOptionId = (index) => { var _a; return (_a = Array.from(this.el.querySelectorAll("li"))[index]) === null || _a === void 0 ? void 0 : _a.id; };
|
1964
1988
|
// Space press should be equivalent to Enter when multi-select
|
1965
1989
|
if (event.key === " " && this.isMultiSelect) {
|
1966
|
-
this.
|
1990
|
+
this.handleOptionSelect(event, highlightedOptionIndex);
|
1967
1991
|
}
|
1968
1992
|
else {
|
1969
1993
|
switch (event.key) {
|
@@ -1976,18 +2000,32 @@ const Menu = class {
|
|
1976
2000
|
this.setHighlightedOption(clickedMultiOptionIndex);
|
1977
2001
|
this.multiOptionClicked = null;
|
1978
2002
|
}
|
1979
|
-
else if (highlightedOptionIndex < menuOptions.length - 1) {
|
1980
|
-
this.setHighlightedOption(highlightedOptionIndex + 1);
|
1981
|
-
this.menuOptionId.emit({
|
1982
|
-
optionId: getOptionId(highlightedOptionIndex + 1),
|
1983
|
-
});
|
1984
|
-
}
|
1985
2003
|
else {
|
1986
|
-
this.
|
1987
|
-
|
1988
|
-
|
1989
|
-
|
2004
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex, menuOptions);
|
2005
|
+
if (highlightedOptionIndex < menuOptions.length - 1) {
|
2006
|
+
this.setHighlightedOption(highlightedOptionIndex + 1);
|
2007
|
+
this.menuOptionId.emit({
|
2008
|
+
optionId: getOptionId(highlightedOptionIndex + 1),
|
2009
|
+
});
|
2010
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex + 1, menuOptions);
|
2011
|
+
}
|
2012
|
+
else {
|
2013
|
+
this.setHighlightedOption(0);
|
2014
|
+
this.menuOptionId.emit({
|
2015
|
+
optionId: getOptionId(0),
|
2016
|
+
});
|
2017
|
+
this.handleSingleShiftSelect(event, 0, menuOptions);
|
2018
|
+
}
|
2019
|
+
// Deselect currently selected options if arrow was pressed for first time after shift is held
|
2020
|
+
if (this.isMultiSelect && this.shiftPressed) {
|
2021
|
+
this.deselectSelectedOptions([
|
2022
|
+
highlightedOptionIndex,
|
2023
|
+
this.getOptionHighlightedIndex(),
|
2024
|
+
]);
|
2025
|
+
this.shiftPressed = false;
|
2026
|
+
}
|
1990
2027
|
}
|
2028
|
+
this.lastOptionFocused = this.getOptionHighlightedIndex();
|
1991
2029
|
this.preventIncorrectTabOrder = false;
|
1992
2030
|
this.focusFromSearchKeypress = false;
|
1993
2031
|
break;
|
@@ -2000,40 +2038,68 @@ const Menu = class {
|
|
2000
2038
|
this.setHighlightedOption(clickedMultiOptionIndex);
|
2001
2039
|
this.multiOptionClicked = null;
|
2002
2040
|
}
|
2003
|
-
else if (highlightedOptionIndex <= 0 ||
|
2004
|
-
highlightedOptionIndex > menuOptions.length + 1) {
|
2005
|
-
this.setHighlightedOption(menuOptions.length - 1);
|
2006
|
-
this.menuOptionId.emit({
|
2007
|
-
optionId: getOptionId(menuOptions.length - 1),
|
2008
|
-
});
|
2009
|
-
}
|
2010
2041
|
else {
|
2011
|
-
this.
|
2012
|
-
|
2013
|
-
|
2014
|
-
|
2042
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex, menuOptions);
|
2043
|
+
if (highlightedOptionIndex <= 0 ||
|
2044
|
+
highlightedOptionIndex > menuOptions.length + 1) {
|
2045
|
+
this.setHighlightedOption(menuOptions.length - 1);
|
2046
|
+
this.menuOptionId.emit({
|
2047
|
+
optionId: getOptionId(menuOptions.length - 1),
|
2048
|
+
});
|
2049
|
+
this.handleSingleShiftSelect(event, menuOptions.length - 1, menuOptions);
|
2050
|
+
}
|
2051
|
+
else {
|
2052
|
+
this.setHighlightedOption(highlightedOptionIndex - 1);
|
2053
|
+
this.menuOptionId.emit({
|
2054
|
+
optionId: getOptionId(highlightedOptionIndex - 1),
|
2055
|
+
});
|
2056
|
+
this.handleSingleShiftSelect(event, highlightedOptionIndex - 1, menuOptions);
|
2057
|
+
}
|
2058
|
+
// Deselect currently selected options if arrow was pressed for first time after shift is held
|
2059
|
+
if (this.isMultiSelect && this.shiftPressed) {
|
2060
|
+
this.deselectSelectedOptions([
|
2061
|
+
highlightedOptionIndex,
|
2062
|
+
this.getOptionHighlightedIndex(),
|
2063
|
+
]);
|
2064
|
+
this.shiftPressed = false;
|
2065
|
+
}
|
2015
2066
|
}
|
2067
|
+
this.lastOptionFocused = this.getOptionHighlightedIndex();
|
2016
2068
|
this.preventIncorrectTabOrder = false;
|
2017
2069
|
this.focusFromSearchKeypress = false;
|
2018
2070
|
break;
|
2019
|
-
case "Home":
|
2071
|
+
case "Home": {
|
2072
|
+
const startOptionIndex = 0;
|
2020
2073
|
this.keyboardNav = true;
|
2021
2074
|
event.preventDefault();
|
2022
2075
|
this.arrowBehaviour(event);
|
2023
|
-
this.setHighlightedOption(
|
2076
|
+
this.setHighlightedOption(startOptionIndex);
|
2024
2077
|
this.menuOptionId.emit({
|
2025
|
-
optionId: getOptionId(
|
2078
|
+
optionId: getOptionId(startOptionIndex),
|
2026
2079
|
});
|
2080
|
+
if (event.shiftKey && event.ctrlKey) {
|
2081
|
+
this.handleMultipleShiftSelect(startOptionIndex);
|
2082
|
+
}
|
2083
|
+
this.lastOptionFocused = startOptionIndex;
|
2084
|
+
this.lastOptionSelected = startOptionIndex;
|
2027
2085
|
break;
|
2028
|
-
|
2086
|
+
}
|
2087
|
+
case "End": {
|
2088
|
+
const endOptionIndex = menuOptions.length - 1;
|
2029
2089
|
this.keyboardNav = true;
|
2030
2090
|
event.preventDefault();
|
2031
2091
|
this.arrowBehaviour(event);
|
2032
|
-
this.setHighlightedOption(
|
2092
|
+
this.setHighlightedOption(endOptionIndex);
|
2033
2093
|
this.menuOptionId.emit({
|
2034
|
-
optionId: getOptionId(
|
2094
|
+
optionId: getOptionId(endOptionIndex),
|
2035
2095
|
});
|
2096
|
+
if (event.shiftKey && event.ctrlKey) {
|
2097
|
+
this.handleMultipleShiftSelect(endOptionIndex);
|
2098
|
+
}
|
2099
|
+
this.lastOptionFocused = endOptionIndex;
|
2100
|
+
this.lastOptionSelected = endOptionIndex;
|
2036
2101
|
break;
|
2102
|
+
}
|
2037
2103
|
case " ":
|
2038
2104
|
if (this.isSearchBar || this.isSearchableSelect) {
|
2039
2105
|
break;
|
@@ -2046,7 +2112,7 @@ const Menu = class {
|
|
2046
2112
|
break;
|
2047
2113
|
case "Enter":
|
2048
2114
|
event.preventDefault();
|
2049
|
-
this.
|
2115
|
+
this.handleOptionSelect(event, highlightedOptionIndex);
|
2050
2116
|
break;
|
2051
2117
|
case "Escape":
|
2052
2118
|
if (this.open) {
|
@@ -2061,10 +2127,15 @@ const Menu = class {
|
|
2061
2127
|
if ((isMacDevice() && event.metaKey) ||
|
2062
2128
|
(!isMacDevice() && event.ctrlKey)) {
|
2063
2129
|
this.emitSelectAll();
|
2130
|
+
this.lastOptionFocused = null;
|
2131
|
+
this.lastOptionSelected = null;
|
2064
2132
|
}
|
2065
2133
|
break;
|
2066
2134
|
case "Shift":
|
2067
2135
|
case "Tab":
|
2136
|
+
if (event.key === "Shift") {
|
2137
|
+
this.shiftPressed = true;
|
2138
|
+
}
|
2068
2139
|
if (this.isSearchBar) {
|
2069
2140
|
this.keyboardNav = true;
|
2070
2141
|
}
|
@@ -2130,14 +2201,17 @@ const Menu = class {
|
|
2130
2201
|
};
|
2131
2202
|
this.handleOptionClick = (event) => {
|
2132
2203
|
const { value, label } = event.target.dataset;
|
2133
|
-
this.menuOptionSelect.emit({ value, label });
|
2134
|
-
this.optionHighlighted = undefined;
|
2135
2204
|
if (this.isMultiSelect) {
|
2205
|
+
const menuOptions = this.getMenuOptions();
|
2206
|
+
const selectedOptionIndex = menuOptions.findIndex((option) => option.value === value);
|
2207
|
+
this.handleOptionSelect(event, selectedOptionIndex, true);
|
2136
2208
|
this.multiOptionClicked = value;
|
2137
2209
|
}
|
2138
2210
|
else {
|
2211
|
+
this.menuOptionSelect.emit({ value, label });
|
2139
2212
|
this.handleMenuChange(false);
|
2140
2213
|
}
|
2214
|
+
this.optionHighlighted = undefined;
|
2141
2215
|
};
|
2142
2216
|
this.handleRetry = () => {
|
2143
2217
|
this.retryButtonClicked.emit({ value: this.value });
|
@@ -2157,12 +2231,16 @@ const Menu = class {
|
|
2157
2231
|
event.relatedTarget === this.selectAllButton)) {
|
2158
2232
|
this.handleMenuChange(false, this.hasPreviouslyBlurred);
|
2159
2233
|
this.menu.removeAttribute(this.activeDescendantAttr);
|
2234
|
+
this.lastOptionFocused = null;
|
2235
|
+
this.lastOptionSelected = null;
|
2160
2236
|
}
|
2161
2237
|
}
|
2162
2238
|
else {
|
2163
2239
|
this.handleMenuChange(false);
|
2164
2240
|
this.preventClickOpen = true;
|
2165
2241
|
this.menu.removeAttribute(this.activeDescendantAttr);
|
2242
|
+
this.lastOptionFocused = null;
|
2243
|
+
this.lastOptionSelected = null;
|
2166
2244
|
}
|
2167
2245
|
if (!this.isSearchBar)
|
2168
2246
|
this.hasPreviouslyBlurred = !!event.relatedTarget;
|
@@ -2186,11 +2264,16 @@ const Menu = class {
|
|
2186
2264
|
this.disabledOptionSelected = false;
|
2187
2265
|
event.stopImmediatePropagation();
|
2188
2266
|
}
|
2267
|
+
if (event.key === "Shift") {
|
2268
|
+
this.shiftPressed = false;
|
2269
|
+
}
|
2189
2270
|
};
|
2190
2271
|
this.handleSelectAllClick = () => {
|
2191
2272
|
this.keyboardNav = false;
|
2192
2273
|
this.menu.focus();
|
2193
2274
|
this.emitSelectAll();
|
2275
|
+
this.lastOptionFocused = null;
|
2276
|
+
this.lastOptionSelected = null;
|
2194
2277
|
};
|
2195
2278
|
this.handleSelectAllBlur = (event) => {
|
2196
2279
|
this.el.classList.remove("select-all-focused");
|
@@ -2200,11 +2283,65 @@ const Menu = class {
|
|
2200
2283
|
};
|
2201
2284
|
this.handleSelectAllFocus = () => {
|
2202
2285
|
this.el.classList.add("select-all-focused");
|
2286
|
+
this.lastOptionFocused = null;
|
2287
|
+
this.lastOptionSelected = null;
|
2203
2288
|
};
|
2204
2289
|
// Fix for Safari - select all button click was causing menu to close
|
2205
2290
|
this.handleSelectAllMouseDown = (event) => {
|
2206
2291
|
event.preventDefault();
|
2207
2292
|
};
|
2293
|
+
// When shift key is being used to select contiguous options one by one on a multi-select
|
2294
|
+
// I.e. holding shift and pressing up and down arrow keys
|
2295
|
+
this.handleSingleShiftSelect = (event, optionToSelectIndex, options) => {
|
2296
|
+
if (this.isMultiSelect &&
|
2297
|
+
event.shiftKey &&
|
2298
|
+
!this.isOptionSelected(optionToSelectIndex)) {
|
2299
|
+
this.selectHighlightedOption(event.target, options, optionToSelectIndex);
|
2300
|
+
this.lastOptionSelected = optionToSelectIndex;
|
2301
|
+
}
|
2302
|
+
};
|
2303
|
+
// When shift key is being used to select multiple options at once on a multi-select
|
2304
|
+
// I.e. holding shift when selecting another option
|
2305
|
+
this.handleMultipleShiftSelect = (lastOptionInSelection, useFocusForSelection = false, firstOptionSelected = null) => {
|
2306
|
+
this.shiftPressed = false;
|
2307
|
+
const firstOptionInSelection = firstOptionSelected === null
|
2308
|
+
? this.getFirstOptionInSelection(useFocusForSelection)
|
2309
|
+
: firstOptionSelected;
|
2310
|
+
if (firstOptionInSelection !== null) {
|
2311
|
+
const optionsToSelect = [];
|
2312
|
+
if (firstOptionInSelection < lastOptionInSelection) {
|
2313
|
+
for (let i = firstOptionInSelection; i < lastOptionInSelection + 1; i++) {
|
2314
|
+
optionsToSelect.push(i);
|
2315
|
+
}
|
2316
|
+
}
|
2317
|
+
else {
|
2318
|
+
for (let i = firstOptionInSelection; i > lastOptionInSelection - 1; i--) {
|
2319
|
+
optionsToSelect.push(i);
|
2320
|
+
}
|
2321
|
+
}
|
2322
|
+
optionsToSelect.forEach((optionIndex) => !this.isOptionSelected(optionIndex) && this.setInputValue(optionIndex));
|
2323
|
+
this.deselectSelectedOptions(optionsToSelect);
|
2324
|
+
}
|
2325
|
+
};
|
2326
|
+
this.handleOptionSelect = (event, optionIndex, useFocusForSelection = false) => {
|
2327
|
+
const menuOptions = this.getMenuOptions();
|
2328
|
+
const firstOptionInSelection = this.getFirstOptionInSelection(useFocusForSelection);
|
2329
|
+
if (event.shiftKey && firstOptionInSelection !== null) {
|
2330
|
+
this.handleMultipleShiftSelect(optionIndex, useFocusForSelection, firstOptionInSelection);
|
2331
|
+
}
|
2332
|
+
else {
|
2333
|
+
this.selectHighlightedOption(event.target, menuOptions, optionIndex);
|
2334
|
+
}
|
2335
|
+
this.lastOptionFocused = optionIndex;
|
2336
|
+
this.lastOptionSelected = optionIndex;
|
2337
|
+
};
|
2338
|
+
this.getFirstOptionInSelection = (useFocusForSelection) => {
|
2339
|
+
return useFocusForSelection && this.lastOptionFocused !== null
|
2340
|
+
? this.lastOptionFocused
|
2341
|
+
: this.lastOptionSelected !== null
|
2342
|
+
? this.lastOptionSelected
|
2343
|
+
: null;
|
2344
|
+
};
|
2208
2345
|
this.emitSelectAll = () => {
|
2209
2346
|
var _a;
|
2210
2347
|
// Select all if there is either no value or not all options are selected
|
@@ -2303,6 +2440,10 @@ const Menu = class {
|
|
2303
2440
|
}
|
2304
2441
|
return sorted;
|
2305
2442
|
};
|
2443
|
+
this.getOptionHighlightedIndex = () => {
|
2444
|
+
const menuOptions = this.getMenuOptions();
|
2445
|
+
return menuOptions.findIndex((option) => option[this.valueField] === this.optionHighlighted);
|
2446
|
+
};
|
2306
2447
|
this.isManualMode = this.activationType === "manual";
|
2307
2448
|
this.scrollToSelected = (menu) => {
|
2308
2449
|
const selectedOption = this.selectOnEnter
|