@ukic/canary-web-components 2.0.0-canary.14 → 2.0.0-canary.15
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-191dca49.js} +54 -98
- package/dist/cjs/helpers-191dca49.js.map +1 -0
- package/dist/cjs/{helpers-f75cf7cf.js → helpers-765a5118.js} +30 -1
- package/dist/cjs/helpers-765a5118.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 +2 -2
- 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-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 +32 -30
- 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 +154 -31
- 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 +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js +322 -0
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +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 +2 -2
- 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 +3 -3
- 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 +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 +10 -6
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +3 -2
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +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-status-tag.cjs.entry.js +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 +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 +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 +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +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 +368 -43
- 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 +258 -0
- 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 +320 -1
- 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 +180 -3
- 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 +145 -116
- 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 +47 -10
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/helpers.js +53 -96
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/helpers2.js +28 -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-checkbox-group.js +26 -16
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +32 -30
- 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 +179 -37
- 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-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 +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer.js +1 -1
- package/dist/components/ic-hero.js +1 -1
- package/dist/components/ic-horizontal-scroll2.js +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +2 -2
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +2 -2
- 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 +1 -1
- package/dist/components/ic-navigation-menu2.js +1 -1
- package/dist/components/ic-pagination-bar2.js +126 -99
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +1 -1
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-popover-menu.js +3 -2
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-option.js +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 +8 -4
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +1 -1
- package/dist/components/ic-stepper.js +1 -1
- package/dist/components/ic-theme.js +13 -15
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast.js +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 +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-a8c15117.entry.js → p-005e83b0.entry.js} +2 -2
- package/dist/core/{p-c621d6b0.entry.js → p-05df3901.entry.js} +2 -2
- package/dist/core/{p-a2dc10d8.entry.js → p-0646ef0c.entry.js} +2 -2
- package/dist/core/p-0ec09955.entry.js +2 -0
- package/dist/core/p-0ec09955.entry.js.map +1 -0
- package/dist/core/{p-3dcc61cc.entry.js → p-114bea92.entry.js} +2 -2
- package/dist/core/{p-3dcc61cc.entry.js.map → p-114bea92.entry.js.map} +1 -1
- package/dist/core/p-11bbb09c.js +2 -0
- package/dist/core/p-11bbb09c.js.map +1 -0
- package/dist/core/p-11e736a3.entry.js +2 -0
- package/dist/core/p-11e736a3.entry.js.map +1 -0
- package/dist/core/{p-6dce8e88.entry.js → p-16c82b13.entry.js} +2 -2
- package/dist/core/p-1b35b6af.entry.js +2 -0
- package/dist/core/{p-dc5e1f8f.entry.js.map → p-1b35b6af.entry.js.map} +1 -1
- package/dist/core/p-1cf8a04e.entry.js +2 -0
- package/dist/core/p-1cf8a04e.entry.js.map +1 -0
- package/dist/core/{p-849f43c3.entry.js → p-2170f59e.entry.js} +2 -2
- package/dist/core/{p-00c5639e.entry.js → p-2e167ebb.entry.js} +2 -2
- package/dist/core/p-2e167ebb.entry.js.map +1 -0
- package/dist/core/p-3f20608d.entry.js +2 -0
- package/dist/core/p-3f20608d.entry.js.map +1 -0
- package/dist/core/p-41606de1.entry.js +2 -0
- package/dist/core/p-41606de1.entry.js.map +1 -0
- package/dist/core/{p-d2d63a61.entry.js → p-4415c93f.entry.js} +2 -2
- package/dist/core/{p-730f058b.entry.js → p-457dd939.entry.js} +2 -2
- package/dist/core/p-457dd939.entry.js.map +1 -0
- package/dist/core/{p-e1963c78.entry.js → p-4737844f.entry.js} +2 -2
- package/dist/core/{p-9d8883d7.entry.js → p-53374a27.entry.js} +2 -2
- package/dist/core/p-53e45d51.entry.js +2 -0
- package/dist/core/{p-3e9a8977.entry.js.map → p-53e45d51.entry.js.map} +1 -1
- package/dist/core/{p-1a91e842.entry.js → p-593f0318.entry.js} +2 -2
- package/dist/core/{p-aabab75f.entry.js → p-5d5979fa.entry.js} +2 -2
- package/dist/core/{p-db3a35fb.entry.js → p-66af5958.entry.js} +2 -2
- package/dist/core/p-67b0faac.entry.js +2 -0
- package/dist/core/p-67b0faac.entry.js.map +1 -0
- package/dist/core/{p-7f53d1be.entry.js → p-6b277e09.entry.js} +2 -2
- package/dist/core/{p-7f53d1be.entry.js.map → p-6b277e09.entry.js.map} +1 -1
- package/dist/core/{p-9567c117.entry.js → p-72cea8fd.entry.js} +2 -2
- package/dist/core/p-73dad5cf.entry.js +2 -0
- package/dist/core/{p-06c27edb.entry.js.map → p-73dad5cf.entry.js.map} +1 -1
- package/dist/core/{p-e16f73ba.entry.js → p-85e2a9af.entry.js} +2 -2
- package/dist/core/p-85e2a9af.entry.js.map +1 -0
- package/dist/core/{p-957de939.entry.js → p-872c3555.entry.js} +2 -2
- package/dist/core/p-87743c4a.entry.js +2 -0
- package/dist/core/{p-e8151d13.entry.js.map → p-87743c4a.entry.js.map} +1 -1
- package/dist/core/p-8cfc74da.entry.js +2 -0
- package/dist/core/{p-162f3e36.entry.js.map → p-8cfc74da.entry.js.map} +1 -1
- package/dist/core/{p-7fda2f94.entry.js → p-9729086f.entry.js} +2 -2
- package/dist/core/{p-8b1f9648.entry.js → p-9cc19e91.entry.js} +2 -2
- package/dist/core/{p-9528b29e.entry.js → p-9de20265.entry.js} +2 -2
- package/dist/core/{p-843bdaae.entry.js → p-a088373e.entry.js} +2 -2
- package/dist/core/p-a088373e.entry.js.map +1 -0
- package/dist/core/{p-00bd7919.entry.js → p-a0e42564.entry.js} +2 -2
- package/dist/core/p-a8110c27.entry.js +2 -0
- package/dist/core/p-a8110c27.entry.js.map +1 -0
- package/dist/core/{p-946625a3.entry.js → p-a9d07792.entry.js} +2 -2
- package/dist/core/p-a9d07792.entry.js.map +1 -0
- package/dist/core/{p-a05755b1.entry.js → p-b08f4371.entry.js} +2 -2
- package/dist/core/{p-0af27517.entry.js → p-b79c0631.entry.js} +2 -2
- package/dist/core/{p-4bd13376.entry.js → p-b8247636.entry.js} +2 -2
- package/dist/core/{p-fca46bd9.entry.js → p-badfdf2a.entry.js} +2 -2
- package/dist/core/{p-99bf38e3.entry.js → p-be56fa17.entry.js} +2 -2
- package/dist/core/{p-ff6f1e3a.entry.js → p-bebf535f.entry.js} +2 -2
- package/dist/core/p-c07cef0e.js +2 -0
- package/dist/core/p-c07cef0e.js.map +1 -0
- package/dist/core/{p-494c3cbe.entry.js → p-c0d88af8.entry.js} +2 -2
- package/dist/core/{p-4ad3012a.entry.js → p-c3af5dab.entry.js} +2 -2
- package/dist/core/{p-4fd58768.entry.js → p-c3dabce4.entry.js} +2 -2
- package/dist/core/{p-6eb58b0a.entry.js → p-c7e932b5.entry.js} +2 -2
- package/dist/core/{p-c14a897d.entry.js → p-d09aaa5b.entry.js} +2 -2
- package/dist/core/{p-41b682dc.entry.js → p-d59a72a9.entry.js} +2 -2
- package/dist/core/p-d59a72a9.entry.js.map +1 -0
- package/dist/core/{p-8b820365.entry.js → p-d71e9cb5.entry.js} +2 -2
- package/dist/core/{p-cca482e2.entry.js → p-ecd6d123.entry.js} +2 -2
- package/dist/core/p-ecd6d123.entry.js.map +1 -0
- package/dist/core/p-ee52a11a.entry.js +2 -0
- package/dist/core/p-ee52a11a.entry.js.map +1 -0
- package/dist/core/p-f11597df.entry.js +2 -0
- package/dist/core/p-f11597df.entry.js.map +1 -0
- package/dist/core/p-f1f3acd2.entry.js +2 -0
- package/dist/core/p-f1f3acd2.entry.js.map +1 -0
- package/dist/core/{p-19c1e271.entry.js → p-f659e5eb.entry.js} +2 -2
- package/dist/core/{p-f8f36680.entry.js → p-fc2551c0.entry.js} +2 -2
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-f328a7b6.js → helpers-8df79303.js} +29 -2
- package/dist/esm/helpers-8df79303.js.map +1 -0
- package/dist/esm/{helpers-c34e4042.js → helpers-da05c476.js} +54 -97
- package/dist/esm/helpers-da05c476.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 +2 -2
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card.entry.js +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 +32 -30
- 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 +155 -32
- 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 +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state_2.entry.js +317 -0
- package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +1 -1
- package/dist/esm/ic-footer.entry.js +1 -1
- package/dist/esm/ic-hero.entry.js +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
- package/dist/esm/ic-input-component-container_4.entry.js +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 +2 -2
- 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 +3 -3
- 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 +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 +10 -6
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +3 -2
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +1 -1
- package/dist/esm/ic-radio-option.entry.js +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-status-tag.entry.js +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 +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 +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 +1 -1
- package/dist/esm/ic-top-navigation.entry.js +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 -3
- 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 +24 -14
- package/dist/types/components.d.ts +207 -28
- package/dist/types/utils/types.d.ts +5 -5
- package/hydrate/index.js +1253 -909
- 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-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-41b682dc.entry.js.map +0 -1
- package/dist/core/p-730f058b.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-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-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-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-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-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-a8c15117.entry.js.map → p-005e83b0.entry.js.map} +0 -0
- /package/dist/core/{p-c621d6b0.entry.js.map → p-05df3901.entry.js.map} +0 -0
- /package/dist/core/{p-a2dc10d8.entry.js.map → p-0646ef0c.entry.js.map} +0 -0
- /package/dist/core/{p-6dce8e88.entry.js.map → p-16c82b13.entry.js.map} +0 -0
- /package/dist/core/{p-849f43c3.entry.js.map → p-2170f59e.entry.js.map} +0 -0
- /package/dist/core/{p-d2d63a61.entry.js.map → p-4415c93f.entry.js.map} +0 -0
- /package/dist/core/{p-e1963c78.entry.js.map → p-4737844f.entry.js.map} +0 -0
- /package/dist/core/{p-9d8883d7.entry.js.map → p-53374a27.entry.js.map} +0 -0
- /package/dist/core/{p-1a91e842.entry.js.map → p-593f0318.entry.js.map} +0 -0
- /package/dist/core/{p-aabab75f.entry.js.map → p-5d5979fa.entry.js.map} +0 -0
- /package/dist/core/{p-db3a35fb.entry.js.map → p-66af5958.entry.js.map} +0 -0
- /package/dist/core/{p-9567c117.entry.js.map → p-72cea8fd.entry.js.map} +0 -0
- /package/dist/core/{p-957de939.entry.js.map → p-872c3555.entry.js.map} +0 -0
- /package/dist/core/{p-7fda2f94.entry.js.map → p-9729086f.entry.js.map} +0 -0
- /package/dist/core/{p-8b1f9648.entry.js.map → p-9cc19e91.entry.js.map} +0 -0
- /package/dist/core/{p-9528b29e.entry.js.map → p-9de20265.entry.js.map} +0 -0
- /package/dist/core/{p-00bd7919.entry.js.map → p-a0e42564.entry.js.map} +0 -0
- /package/dist/core/{p-a05755b1.entry.js.map → p-b08f4371.entry.js.map} +0 -0
- /package/dist/core/{p-0af27517.entry.js.map → p-b79c0631.entry.js.map} +0 -0
- /package/dist/core/{p-4bd13376.entry.js.map → p-b8247636.entry.js.map} +0 -0
- /package/dist/core/{p-fca46bd9.entry.js.map → p-badfdf2a.entry.js.map} +0 -0
- /package/dist/core/{p-99bf38e3.entry.js.map → p-be56fa17.entry.js.map} +0 -0
- /package/dist/core/{p-ff6f1e3a.entry.js.map → p-bebf535f.entry.js.map} +0 -0
- /package/dist/core/{p-494c3cbe.entry.js.map → p-c0d88af8.entry.js.map} +0 -0
- /package/dist/core/{p-4ad3012a.entry.js.map → p-c3af5dab.entry.js.map} +0 -0
- /package/dist/core/{p-4fd58768.entry.js.map → p-c3dabce4.entry.js.map} +0 -0
- /package/dist/core/{p-6eb58b0a.entry.js.map → p-c7e932b5.entry.js.map} +0 -0
- /package/dist/core/{p-c14a897d.entry.js.map → p-d09aaa5b.entry.js.map} +0 -0
- /package/dist/core/{p-8b820365.entry.js.map → p-d71e9cb5.entry.js.map} +0 -0
- /package/dist/core/{p-19c1e271.entry.js.map → p-f659e5eb.entry.js.map} +0 -0
- /package/dist/core/{p-f8f36680.entry.js.map → p-fc2551c0.entry.js.map} +0 -0
@@ -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 { x as isMacDevice, o as onComponentRequiredPropUndefined, f as getOptionsWithoutGroupTitlesCount } from './helpers-8df79303.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
|