@carbon/web-components 2.10.0 → 2.11.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{16-c82d5cfd.js → 16-486ace1a.js} +6 -6
- package/dist/{16-86616f6a.js → 16-51a594ce.js} +6 -6
- package/dist/16-656090c0.js +73 -0
- package/dist/{16-9bfd003b.js → 16-71872213.js} +6 -6
- package/dist/{16-e3da4022.js → 16-730a41a2.js} +6 -6
- package/dist/{16-6f99b9d8.js → 16-83a1cd89.js} +6 -6
- package/dist/{16-b507d4ba.js → 16-b73c677b.js} +6 -6
- package/dist/{16-3e28b02c.js → 16-d1c73001.js} +6 -6
- package/dist/{16-8688d7b7.js → 20-d069d8da.js} +6 -6
- package/dist/accordion.min.js +12 -12
- package/dist/ai-skeleton.min.js +6 -6
- package/dist/breadcrumb.min.js +6 -6
- package/dist/{button-690db41b.js → button-21c75bab.js} +6 -6
- package/dist/{button-set-4d1a3543.js → button-set-69863a24.js} +6 -6
- package/dist/{button-skeleton-efe28069.js → button-skeleton-1abc1fd8.js} +7 -7
- package/dist/button.min.js +6 -6
- package/dist/carbon-element-4ca9803f.js +5 -5
- package/dist/chat-button.min.js +6 -6
- package/dist/checkbox-d0a3a79f.js +109 -0
- package/dist/checkbox.min.js +6 -6
- package/dist/{class-map-40d6e892.js → class-map-5edb95da.js} +7 -7
- package/dist/code-snippet.min.js +14 -14
- package/dist/collection-helpers-4e32fe16.js +5 -5
- package/dist/combo-box.min.js +6 -6
- package/dist/{content-switcher-item-557f043e.js → content-switcher-item-5b8dd42f.js} +6 -6
- package/dist/content-switcher.min.js +6 -6
- package/dist/{copy-button-77c9a2be.js → copy-button-0cfa83bd.js} +6 -6
- package/dist/copy-button.min.js +6 -6
- package/dist/custom-element-975be15f.js +5 -5
- package/dist/data-table.min.js +8 -8
- package/dist/date-picker.min.js +6 -6
- package/dist/{defineProperty-1c81c535.js → defineProperty-e448b551.js} +6 -6
- package/dist/directive-e2d48b9c.js +5 -5
- package/dist/dropdown-item-91b3dc95.js +148 -0
- package/dist/dropdown.min.js +6 -6
- package/dist/file-uploader.min.js +6 -6
- package/dist/{floating-menu-ee49fedd.js → floating-menu-46199beb.js} +7 -7
- package/dist/floating-menu.min.js +6 -6
- package/dist/{focus-28af17cd.js → focus-e70d1cbe.js} +7 -7
- package/dist/form-group.min.js +6 -6
- package/dist/form.min.js +6 -6
- package/dist/{get-d229c408.js → get-52a048b1.js} +6 -6
- package/dist/{host-listener-1093b8af.js → host-listener-b6a3d690.js} +7 -7
- package/dist/{icon-button-8c199f5d.js → icon-button-37322eeb.js} +6 -6
- package/dist/icon-button.min.js +6 -6
- package/dist/{if-defined-87ba0c08.js → if-defined-2e09d22b.js} +6 -6
- package/dist/{if-non-empty-a1c6e0fe.js → if-non-empty-20ce3c96.js} +7 -7
- package/dist/inline-loading.min.js +6 -6
- package/dist/{layer-c557b485.js → layer-0633200a.js} +6 -6
- package/dist/layer.min.js +6 -6
- package/dist/{link-49d03ffa.js → link-dc6f9b4e.js} +9 -9
- package/dist/link.min.js +6 -6
- package/dist/list.min.js +6 -6
- package/dist/{loading-358d36a7.js → loading-2604f4ad.js} +6 -6
- package/dist/{loading-icon-4d90d624.js → loading-icon-85b7e502.js} +8 -8
- package/dist/loading.min.js +6 -6
- package/dist/{modal-label-f7bb6b21.js → modal-label-d53c98de.js} +10 -10
- package/dist/modal.min.js +6 -6
- package/dist/multi-select.min.js +9 -9
- package/dist/notification.min.js +14 -14
- package/dist/number-input.min.js +6 -6
- package/dist/{objectSpread2-97102dd8.js → objectSpread2-46e4de7a.js} +6 -6
- package/dist/on-6c264d49.js +5 -5
- package/dist/overflow-menu.min.js +6 -6
- package/dist/pagination.min.js +6 -6
- package/dist/{popover-content-2a2998fe.js → popover-content-11101167.js} +6 -6
- package/dist/popover-controller-cc6ccb74.js +73 -0
- package/dist/popover.min.js +6 -6
- package/dist/progress-bar.min.js +6 -6
- package/dist/progress-indicator.min.js +6 -6
- package/dist/query-5f833318.js +5 -5
- package/dist/query-assigned-elements-73bd2544.js +5 -5
- package/dist/radio-button.min.js +6 -6
- package/dist/{radio-group-manager-aa09b989.js → radio-group-manager-de7f9ab3.js} +6 -6
- package/dist/{search-d48abba3.js → search-1b5a2d87.js} +6 -6
- package/dist/search.min.js +6 -6
- package/dist/{select-item-ddced627.js → select-item-4ebf72a0.js} +6 -6
- package/dist/select.min.js +15 -15
- package/dist/{settings-2211e02a.js → settings-97cd1c3a.js} +6 -6
- package/dist/shared-enums-c6fe8c39.js +5 -5
- package/dist/side-panel.min.js +7 -7
- package/dist/{skeleton-icon-0f8941b3.js → skeleton-icon-bfc7d5c8.js} +6 -6
- package/dist/skeleton-icon.min.js +6 -6
- package/dist/{skeleton-placeholder-80d37e68.js → skeleton-placeholder-403f26a3.js} +6 -6
- package/dist/skeleton-placeholder.min.js +6 -6
- package/dist/{skeleton-text-2f44cf41.js → skeleton-text-9d02604f.js} +6 -6
- package/dist/skeleton-text.min.js +6 -6
- package/dist/skip-to-content.min.js +7 -7
- package/dist/slider.min.js +6 -6
- package/dist/slug.min.js +6 -6
- package/dist/{spread-c0d6f8ee.js → spread-d515f3f1.js} +7 -7
- package/dist/stack.min.js +6 -6
- package/dist/state-ddd29b9d.js +5 -5
- package/dist/structured-list.min.js +9 -9
- package/dist/tabs.min.js +7 -7
- package/dist/tag.min.js +9 -9
- package/dist/tearsheet.min.js +9 -9
- package/dist/{text-input-06f2796d.js → text-input-672028f4.js} +6 -6
- package/dist/text-input.min.js +6 -6
- package/dist/textarea.min.js +10 -10
- package/dist/tile.min.js +6 -6
- package/dist/toggle-tip.min.js +6 -6
- package/dist/toggle.min.js +6 -6
- package/dist/{toggletip-586fce1e.js → toggletip-b1b58c28.js} +7 -7
- package/dist/{tooltip-content-7e00430f.js → tooltip-content-51c6ffbc.js} +6 -6
- package/dist/tooltip.min.js +6 -6
- package/dist/ui-shell.min.js +19 -19
- package/dist/validity-d86ffa4f.js +5 -5
- package/es/components/accordion/accordion-item-skeleton.js.map +1 -1
- package/es/components/accordion/accordion-item.d.ts +47 -44
- package/es/components/accordion/accordion-item.js.map +1 -1
- package/es/components/accordion/accordion-skeleton.js.map +1 -1
- package/es/components/accordion/accordion.css.js +1 -1
- package/es/components/accordion/accordion.js.map +1 -1
- package/es/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
- package/es/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
- package/es/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-item.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-link.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb.js.map +1 -1
- package/es/components/button/button-set-base.js.map +1 -1
- package/es/components/button/button-set.js.map +1 -1
- package/es/components/button/button-skeleton.js.map +1 -1
- package/es/components/button/button.d.ts +99 -92
- package/es/components/button/button.js.map +1 -1
- package/es/components/chat-button/chat-button-skeleton.js.map +1 -1
- package/es/components/chat-button/chat-button.js.map +1 -1
- package/es/components/checkbox/checkbox-group.d.ts +2 -1
- package/es/components/checkbox/checkbox-group.js.map +1 -1
- package/es/components/checkbox/checkbox-skeleton.js.map +1 -1
- package/es/components/checkbox/checkbox.css.js +1 -1
- package/es/components/checkbox/checkbox.d.ts +97 -90
- package/es/components/checkbox/checkbox.js.map +1 -1
- package/es/components/code-snippet/code-snippet-skeleton.js.map +1 -1
- package/es/components/code-snippet/code-snippet.d.ts +49 -45
- package/es/components/code-snippet/code-snippet.js.map +1 -1
- package/es/components/combo-box/combo-box-item.js.map +1 -1
- package/es/components/combo-box/combo-box.css.js +1 -1
- package/es/components/combo-box/combo-box.js.map +1 -1
- package/es/components/content-switcher/content-switcher-item.d.ts +49 -45
- package/es/components/content-switcher/content-switcher-item.js.map +1 -1
- package/es/components/content-switcher/content-switcher.js.map +1 -1
- package/es/components/copy/copy.js.map +1 -1
- package/es/components/copy-button/copy-button.d.ts +47 -44
- package/es/components/copy-button/copy-button.js.map +1 -1
- package/es/components/data-table/data-table.css.js +1 -1
- package/es/components/data-table/table-batch-actions.js.map +1 -1
- package/es/components/data-table/table-body.js.map +1 -1
- package/es/components/data-table/table-cell-content.js.map +1 -1
- package/es/components/data-table/table-cell.js.map +1 -1
- package/es/components/data-table/table-expanded-row.d.ts +49 -46
- package/es/components/data-table/table-expanded-row.js.map +1 -1
- package/es/components/data-table/table-head.js.map +1 -1
- package/es/components/data-table/table-header-cell.d.ts +49 -45
- package/es/components/data-table/table-header-cell.js.map +1 -1
- package/es/components/data-table/table-header-description.js.map +1 -1
- package/es/components/data-table/table-header-row.js.map +1 -1
- package/es/components/data-table/table-header-title.js.map +1 -1
- package/es/components/data-table/table-row.d.ts +97 -91
- package/es/components/data-table/table-row.js.map +1 -1
- package/es/components/data-table/table-skeleton.js.map +1 -1
- package/es/components/data-table/table-toolbar-content.js.map +1 -1
- package/es/components/data-table/table-toolbar-search.d.ts +51 -47
- package/es/components/data-table/table-toolbar-search.js.map +1 -1
- package/es/components/data-table/table-toolbar.js.map +1 -1
- package/es/components/data-table/table.d.ts +49 -46
- package/es/components/data-table/table.js.map +1 -1
- package/es/components/date-picker/append-to-plugin.js.map +1 -1
- package/es/components/date-picker/date-picker-input-skeleton.js.map +1 -1
- package/es/components/date-picker/date-picker-input.d.ts +49 -45
- package/es/components/date-picker/date-picker-input.js.map +1 -1
- package/es/components/date-picker/date-picker.d.ts +98 -92
- package/es/components/date-picker/date-picker.js.map +1 -1
- package/es/components/dropdown/dropdown-item.js.map +1 -1
- package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
- package/es/components/dropdown/dropdown.css.js +1 -1
- package/es/components/dropdown/dropdown.d.ts +196 -183
- package/es/components/dropdown/dropdown.js.map +1 -1
- package/es/components/file-uploader/demo-file-uploader.js.map +1 -1
- package/es/components/file-uploader/file-uploader-button.d.ts +49 -46
- package/es/components/file-uploader/file-uploader-button.js.map +1 -1
- package/es/components/file-uploader/file-uploader-drop-container.d.ts +49 -46
- package/es/components/file-uploader/file-uploader-drop-container.js.map +1 -1
- package/es/components/file-uploader/file-uploader-item.js.map +1 -1
- package/es/components/file-uploader/file-uploader-skeleton.js.map +1 -1
- package/es/components/file-uploader/file-uploader.js.map +1 -1
- package/es/components/floating-menu/floating-menu.d.ts +100 -93
- package/es/components/floating-menu/floating-menu.js.map +1 -1
- package/es/components/form/form-item.js.map +1 -1
- package/es/components/form-group/form-group.js.map +1 -1
- package/es/components/icon-button/icon-button.js.map +1 -1
- package/es/components/inline-loading/inline-loading.js.map +1 -1
- package/es/components/layer/layer.js.map +1 -1
- package/es/components/link/link.d.ts +49 -45
- package/es/components/link/link.js.map +1 -1
- package/es/components/list/list-item.js.map +1 -1
- package/es/components/list/ordered-list.js.map +1 -1
- package/es/components/list/unordered-list.js.map +1 -1
- package/es/components/loading/loading-icon.js.map +1 -1
- package/es/components/loading/loading.js.map +1 -1
- package/es/components/modal/modal-body-content.js.map +1 -1
- package/es/components/modal/modal-body.js.map +1 -1
- package/es/components/modal/modal-close-button.d.ts +49 -45
- package/es/components/modal/modal-close-button.js.map +1 -1
- package/es/components/modal/modal-footer-button.js.map +1 -1
- package/es/components/modal/modal-footer.js.map +1 -1
- package/es/components/modal/modal-header.js.map +1 -1
- package/es/components/modal/modal-heading.js.map +1 -1
- package/es/components/modal/modal-label.js.map +1 -1
- package/es/components/modal/modal.css.js +1 -1
- package/es/components/modal/modal.d.ts +49 -46
- package/es/components/modal/modal.js.map +1 -1
- package/es/components/multi-select/multi-select-item.js.map +1 -1
- package/es/components/multi-select/multi-select.css.js +1 -1
- package/es/components/multi-select/multi-select.js.map +1 -1
- package/es/components/notification/actionable-notification-button.js.map +1 -1
- package/es/components/notification/actionable-notification.d.ts +49 -46
- package/es/components/notification/actionable-notification.js.map +1 -1
- package/es/components/notification/inline-notification.d.ts +47 -44
- package/es/components/notification/inline-notification.js.map +1 -1
- package/es/components/notification/toast-notification.js.map +1 -1
- package/es/components/number-input/number-input-skeleton.js.map +1 -1
- package/es/components/number-input/number-input.d.ts +2 -1
- package/es/components/number-input/number-input.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu-body.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu-item.d.ts +49 -45
- package/es/components/overflow-menu/overflow-menu-item.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu.d.ts +97 -91
- package/es/components/overflow-menu/overflow-menu.js.map +1 -1
- package/es/components/pagination/pagination.d.ts +98 -91
- package/es/components/pagination/pagination.js.map +1 -1
- package/es/components/popover/popover-content.js.map +1 -1
- package/es/components/popover/popover.js.map +1 -1
- package/es/components/progress-bar/progress-bar.js.map +1 -1
- package/es/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
- package/es/components/progress-indicator/progress-indicator.js.map +1 -1
- package/es/components/progress-indicator/progress-step-skeleton.js.map +1 -1
- package/es/components/progress-indicator/progress-step.d.ts +49 -45
- package/es/components/progress-indicator/progress-step.js.map +1 -1
- package/es/components/radio-button/radio-button-group.d.ts +98 -92
- package/es/components/radio-button/radio-button-group.js.map +1 -1
- package/es/components/radio-button/radio-button-skeleton.js.map +1 -1
- package/es/components/radio-button/radio-button.d.ts +99 -92
- package/es/components/radio-button/radio-button.js.map +1 -1
- package/es/components/search/search-skeleton.js.map +1 -1
- package/es/components/search/search.d.ts +148 -138
- package/es/components/search/search.js.map +1 -1
- package/es/components/select/select-item-group.js.map +1 -1
- package/es/components/select/select-item.js.map +1 -1
- package/es/components/select/select-skeleton.js.map +1 -1
- package/es/components/select/select.d.ts +51 -47
- package/es/components/select/select.js.map +1 -1
- package/es/components/side-panel/side-panel.css.js +1 -1
- package/es/components/side-panel/side-panel.d.ts +49 -46
- package/es/components/side-panel/side-panel.js.map +1 -1
- package/es/components/skeleton-icon/skeleton-icon.js.map +1 -1
- package/es/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
- package/es/components/skeleton-text/skeleton-text.js.map +1 -1
- package/es/components/skip-to-content/skip-to-content.d.ts +49 -45
- package/es/components/skip-to-content/skip-to-content.js.map +1 -1
- package/es/components/slider/slider-input.d.ts +49 -45
- package/es/components/slider/slider-input.js.map +1 -1
- package/es/components/slider/slider-skeleton.js.map +1 -1
- package/es/components/slider/slider.d.ts +148 -138
- package/es/components/slider/slider.js.map +1 -1
- package/es/components/slug/slug-action-button.js.map +1 -1
- package/es/components/slug/slug.css.js +1 -1
- package/es/components/slug/slug.js.map +1 -1
- package/es/components/stack/stack.js.map +1 -1
- package/es/components/structured-list/structured-list-body.js.map +1 -1
- package/es/components/structured-list/structured-list-cell.js.map +1 -1
- package/es/components/structured-list/structured-list-head.js.map +1 -1
- package/es/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
- package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
- package/es/components/structured-list/structured-list-header-row.js.map +1 -1
- package/es/components/structured-list/structured-list-row.d.ts +49 -46
- package/es/components/structured-list/structured-list-row.js.map +1 -1
- package/es/components/structured-list/structured-list.css.js +1 -1
- package/es/components/structured-list/structured-list.d.ts +49 -45
- package/es/components/structured-list/structured-list.js.map +1 -1
- package/es/components/tabs/tab-skeleton.js.map +1 -1
- package/es/components/tabs/tab.js.map +1 -1
- package/es/components/tabs/tabs-skeleton.js.map +1 -1
- package/es/components/tabs/tabs.css.js +1 -1
- package/es/components/tabs/tabs.d.ts +49 -46
- package/es/components/tabs/tabs.js.map +1 -1
- package/es/components/tag/tag.css.js +1 -1
- package/es/components/tag/tag.d.ts +97 -91
- package/es/components/tag/tag.js.map +1 -1
- package/es/components/tearsheet/tearsheet.css.js +1 -1
- package/es/components/tearsheet/tearsheet.d.ts +49 -46
- package/es/components/tearsheet/tearsheet.js.map +1 -1
- package/es/components/text-input/text-input-skeleton.js.map +1 -1
- package/es/components/text-input/text-input.d.ts +98 -91
- package/es/components/text-input/text-input.js.map +1 -1
- package/es/components/textarea/textarea-skeleton.js.map +1 -1
- package/es/components/textarea/textarea.css.js +1 -1
- package/es/components/textarea/textarea.d.ts +2 -1
- package/es/components/textarea/textarea.js.map +1 -1
- package/es/components/tile/clickable-tile.js.map +1 -1
- package/es/components/tile/expandable-tile.d.ts +97 -91
- package/es/components/tile/expandable-tile.js.map +1 -1
- package/es/components/tile/radio-tile.js.map +1 -1
- package/es/components/tile/selectable-tile.d.ts +99 -92
- package/es/components/tile/selectable-tile.js.map +1 -1
- package/es/components/tile/tile-group.d.ts +49 -46
- package/es/components/tile/tile-group.js.map +1 -1
- package/es/components/tile/tile.css.js +1 -1
- package/es/components/tile/tile.js.map +1 -1
- package/es/components/toggle/toggle.d.ts +50 -49
- package/es/components/toggle/toggle.js.map +1 -1
- package/es/components/toggle-tip/toggletip.css.js +1 -1
- package/es/components/toggle-tip/toggletip.d.ts +99 -92
- package/es/components/toggle-tip/toggletip.js.map +1 -1
- package/es/components/tooltip/tooltip-content.js.map +1 -1
- package/es/components/tooltip/tooltip.d.ts +49 -46
- package/es/components/tooltip/tooltip.js.map +1 -1
- package/es/components/ui-shell/header-global-action.d.ts +2 -1
- package/es/components/ui-shell/header-global-action.js.map +1 -1
- package/es/components/ui-shell/header-menu-button.d.ts +49 -45
- package/es/components/ui-shell/header-menu-button.js.map +1 -1
- package/es/components/ui-shell/header-menu-item.js.map +1 -1
- package/es/components/ui-shell/header-menu.d.ts +99 -92
- package/es/components/ui-shell/header-menu.js.map +1 -1
- package/es/components/ui-shell/header-name.d.ts +49 -45
- package/es/components/ui-shell/header-name.js.map +1 -1
- package/es/components/ui-shell/header-nav-item.d.ts +49 -45
- package/es/components/ui-shell/header-nav-item.js.map +1 -1
- package/es/components/ui-shell/header-nav.js.map +1 -1
- package/es/components/ui-shell/header-panel.d.ts +2 -1
- package/es/components/ui-shell/header-panel.js.map +1 -1
- package/es/components/ui-shell/header-side-nav-items.js.map +1 -1
- package/es/components/ui-shell/header.js.map +1 -1
- package/es/components/ui-shell/side-nav-divider.js.map +1 -1
- package/es/components/ui-shell/side-nav-items.js.map +1 -1
- package/es/components/ui-shell/side-nav-link.d.ts +49 -45
- package/es/components/ui-shell/side-nav-link.js.map +1 -1
- package/es/components/ui-shell/side-nav-menu-item.d.ts +49 -45
- package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
- package/es/components/ui-shell/side-nav-menu.d.ts +49 -45
- package/es/components/ui-shell/side-nav-menu.js.map +1 -1
- package/es/components/ui-shell/side-nav.d.ts +50 -56
- package/es/components/ui-shell/side-nav.js +5 -47
- package/es/components/ui-shell/side-nav.js.map +1 -1
- package/es/components/ui-shell/switcher-divider.js.map +1 -1
- package/es/components/ui-shell/switcher-item.d.ts +49 -45
- package/es/components/ui-shell/switcher-item.js.map +1 -1
- package/es/components/ui-shell/switcher.d.ts +2 -1
- package/es/components/ui-shell/switcher.js.map +1 -1
- package/es/globals/controllers/popover-controller.js.map +1 -1
- package/es/globals/decorators/carbon-element.js.map +1 -1
- package/es/globals/internal/storybook-cdn.js.map +1 -1
- package/es/globals/mixins/focus.d.ts +47 -44
- package/es/globals/mixins/form.d.ts +48 -45
- package/es/globals/mixins/host-listener.d.ts +48 -45
- package/es/globals/mixins/host-listener.js.map +1 -1
- package/es/globals/mixins/validity.d.ts +48 -45
- package/es/globals/scss/themes.css.js +1 -1
- package/es/globals/settings.js.map +1 -1
- package/es/polyfills/toggle-class.js.map +1 -1
- package/lib/components-react-node/accordion/accordion-item-skeleton.js +2 -2
- package/lib/components-react-node/accordion/accordion-item.js +2 -2
- package/lib/components-react-node/accordion/accordion-skeleton.js +2 -2
- package/lib/components-react-node/accordion/accordion.js +2 -2
- package/lib/components-react-node/ai-skeleton/ai-skeleton-icon.js +2 -2
- package/lib/components-react-node/ai-skeleton/ai-skeleton-placeholder.js +2 -2
- package/lib/components-react-node/ai-skeleton/ai-skeleton-text.js +2 -2
- package/lib/components-react-node/breadcrumb/breadcrumb-item.js +2 -2
- package/lib/components-react-node/breadcrumb/breadcrumb-link.js +2 -2
- package/lib/components-react-node/breadcrumb/breadcrumb-overflow-menu.js +2 -2
- package/lib/components-react-node/breadcrumb/breadcrumb-skeleton.js +2 -2
- package/lib/components-react-node/breadcrumb/breadcrumb.js +2 -2
- package/lib/components-react-node/button/button-set-base.js +2 -2
- package/lib/components-react-node/button/button-set.js +2 -2
- package/lib/components-react-node/button/button-skeleton.js +2 -2
- package/lib/components-react-node/button/button.js +2 -2
- package/lib/components-react-node/chat-button/chat-button-skeleton.js +2 -2
- package/lib/components-react-node/chat-button/chat-button.js +2 -2
- package/lib/components-react-node/checkbox/checkbox-group.js +2 -2
- package/lib/components-react-node/checkbox/checkbox-skeleton.js +2 -2
- package/lib/components-react-node/checkbox/checkbox.js +2 -2
- package/lib/components-react-node/code-snippet/code-snippet-skeleton.js +2 -2
- package/lib/components-react-node/code-snippet/code-snippet.js +2 -2
- package/lib/components-react-node/combo-box/combo-box-item.js +2 -2
- package/lib/components-react-node/combo-box/combo-box.js +2 -2
- package/lib/components-react-node/content-switcher/content-switcher-item.js +2 -2
- package/lib/components-react-node/content-switcher/content-switcher.js +2 -2
- package/lib/components-react-node/copy/copy.js +2 -2
- package/lib/components-react-node/copy-button/copy-button.js +2 -2
- package/lib/components-react-node/data-table/table-batch-actions.js +2 -2
- package/lib/components-react-node/data-table/table-body.js +2 -2
- package/lib/components-react-node/data-table/table-cell-content.js +2 -2
- package/lib/components-react-node/data-table/table-cell.js +2 -2
- package/lib/components-react-node/data-table/table-expanded-row.js +2 -2
- package/lib/components-react-node/data-table/table-head.js +2 -2
- package/lib/components-react-node/data-table/table-header-cell.js +2 -2
- package/lib/components-react-node/data-table/table-header-description.js +2 -2
- package/lib/components-react-node/data-table/table-header-row.js +2 -2
- package/lib/components-react-node/data-table/table-header-title.js +2 -2
- package/lib/components-react-node/data-table/table-row.js +2 -2
- package/lib/components-react-node/data-table/table-skeleton.js +2 -2
- package/lib/components-react-node/data-table/table-toolbar-content.js +2 -2
- package/lib/components-react-node/data-table/table-toolbar-search.js +2 -2
- package/lib/components-react-node/data-table/table-toolbar.js +2 -2
- package/lib/components-react-node/data-table/table.js +2 -2
- package/lib/components-react-node/date-picker/date-picker-input-skeleton.js +2 -2
- package/lib/components-react-node/date-picker/date-picker-input.js +2 -2
- package/lib/components-react-node/date-picker/date-picker.js +2 -2
- package/lib/components-react-node/dropdown/dropdown-item.js +2 -2
- package/lib/components-react-node/dropdown/dropdown-skeleton.js +2 -2
- package/lib/components-react-node/dropdown/dropdown.js +2 -2
- package/lib/components-react-node/file-uploader/demo-file-uploader.js +2 -2
- package/lib/components-react-node/file-uploader/file-uploader-button.js +2 -2
- package/lib/components-react-node/file-uploader/file-uploader-drop-container.js +2 -2
- package/lib/components-react-node/file-uploader/file-uploader-item.js +2 -2
- package/lib/components-react-node/file-uploader/file-uploader-skeleton.js +2 -2
- package/lib/components-react-node/file-uploader/file-uploader.js +2 -2
- package/lib/components-react-node/form/form-item.js +2 -2
- package/lib/components-react-node/form-group/form-group.js +2 -2
- package/lib/components-react-node/icon-button/icon-button.js +2 -2
- package/lib/components-react-node/inline-loading/inline-loading.js +2 -2
- package/lib/components-react-node/layer/layer.js +2 -2
- package/lib/components-react-node/link/link.js +2 -2
- package/lib/components-react-node/list/list-item.js +2 -2
- package/lib/components-react-node/list/ordered-list.js +2 -2
- package/lib/components-react-node/list/unordered-list.js +2 -2
- package/lib/components-react-node/loading/loading.js +2 -2
- package/lib/components-react-node/modal/modal-body-content.js +2 -2
- package/lib/components-react-node/modal/modal-body.js +2 -2
- package/lib/components-react-node/modal/modal-close-button.js +2 -2
- package/lib/components-react-node/modal/modal-footer-button.js +2 -2
- package/lib/components-react-node/modal/modal-footer.js +2 -2
- package/lib/components-react-node/modal/modal-header.js +2 -2
- package/lib/components-react-node/modal/modal-heading.js +2 -2
- package/lib/components-react-node/modal/modal-label.js +2 -2
- package/lib/components-react-node/modal/modal.js +2 -2
- package/lib/components-react-node/multi-select/multi-select-item.js +2 -2
- package/lib/components-react-node/multi-select/multi-select.js +2 -2
- package/lib/components-react-node/notification/actionable-notification-button.js +2 -2
- package/lib/components-react-node/notification/actionable-notification.js +2 -2
- package/lib/components-react-node/notification/inline-notification.js +2 -2
- package/lib/components-react-node/notification/toast-notification.js +2 -2
- package/lib/components-react-node/number-input/number-input-skeleton.js +2 -2
- package/lib/components-react-node/number-input/number-input.js +2 -2
- package/lib/components-react-node/overflow-menu/overflow-menu-body.js +2 -2
- package/lib/components-react-node/overflow-menu/overflow-menu-item.js +2 -2
- package/lib/components-react-node/overflow-menu/overflow-menu.js +2 -2
- package/lib/components-react-node/pagination/pagination.js +2 -2
- package/lib/components-react-node/popover/popover-content.js +2 -2
- package/lib/components-react-node/popover/popover.js +2 -2
- package/lib/components-react-node/progress-bar/progress-bar.js +2 -2
- package/lib/components-react-node/progress-indicator/progress-indicator-skeleton.js +2 -2
- package/lib/components-react-node/progress-indicator/progress-indicator.js +2 -2
- package/lib/components-react-node/progress-indicator/progress-step-skeleton.js +2 -2
- package/lib/components-react-node/progress-indicator/progress-step.js +2 -2
- package/lib/components-react-node/radio-button/radio-button-group.js +2 -2
- package/lib/components-react-node/radio-button/radio-button-skeleton.js +2 -2
- package/lib/components-react-node/radio-button/radio-button.js +2 -2
- package/lib/components-react-node/search/search-skeleton.js +2 -2
- package/lib/components-react-node/search/search.js +2 -2
- package/lib/components-react-node/select/select-item-group.js +2 -2
- package/lib/components-react-node/select/select-item.js +2 -2
- package/lib/components-react-node/select/select-skeleton.js +2 -2
- package/lib/components-react-node/select/select.js +2 -2
- package/lib/components-react-node/side-panel/side-panel.js +2 -2
- package/lib/components-react-node/skeleton-icon/skeleton-icon.js +2 -2
- package/lib/components-react-node/skeleton-placeholder/skeleton-placeholder.js +2 -2
- package/lib/components-react-node/skeleton-text/skeleton-text.js +2 -2
- package/lib/components-react-node/skip-to-content/skip-to-content.js +2 -2
- package/lib/components-react-node/slider/slider-input.js +2 -2
- package/lib/components-react-node/slider/slider-skeleton.js +2 -2
- package/lib/components-react-node/slider/slider.js +2 -2
- package/lib/components-react-node/slug/slug-action-button.js +2 -2
- package/lib/components-react-node/slug/slug.js +2 -2
- package/lib/components-react-node/stack/stack.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-body.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-cell.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-head.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-header-cell-skeleton.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-header-cell.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-header-row.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-row.js +2 -2
- package/lib/components-react-node/structured-list/structured-list.js +2 -2
- package/lib/components-react-node/tabs/tab-skeleton.js +2 -2
- package/lib/components-react-node/tabs/tab.js +2 -2
- package/lib/components-react-node/tabs/tabs-skeleton.js +2 -2
- package/lib/components-react-node/tabs/tabs.js +2 -2
- package/lib/components-react-node/tag/tag.js +2 -2
- package/lib/components-react-node/tearsheet/tearsheet.js +2 -2
- package/lib/components-react-node/text-input/text-input-skeleton.js +2 -2
- package/lib/components-react-node/text-input/text-input.js +2 -2
- package/lib/components-react-node/textarea/textarea-skeleton.js +2 -2
- package/lib/components-react-node/textarea/textarea.js +2 -2
- package/lib/components-react-node/tile/clickable-tile.js +2 -2
- package/lib/components-react-node/tile/expandable-tile.js +2 -2
- package/lib/components-react-node/tile/radio-tile.js +2 -2
- package/lib/components-react-node/tile/selectable-tile.js +2 -2
- package/lib/components-react-node/tile/tile-group.js +2 -2
- package/lib/components-react-node/tile/tile.js +2 -2
- package/lib/components-react-node/toggle/toggle.js +2 -2
- package/lib/components-react-node/toggle-tip/toggletip.js +2 -2
- package/lib/components-react-node/tooltip/tooltip-content.js +2 -2
- package/lib/components-react-node/tooltip/tooltip.js +2 -2
- package/lib/components-react-node/ui-shell/header-global-action.js +2 -2
- package/lib/components-react-node/ui-shell/header-menu-button.js +2 -2
- package/lib/components-react-node/ui-shell/header-menu-item.js +2 -2
- package/lib/components-react-node/ui-shell/header-menu.js +2 -2
- package/lib/components-react-node/ui-shell/header-name.js +2 -2
- package/lib/components-react-node/ui-shell/header-nav-item.js +2 -2
- package/lib/components-react-node/ui-shell/header-nav.js +2 -2
- package/lib/components-react-node/ui-shell/header-panel.js +2 -2
- package/lib/components-react-node/ui-shell/header-side-nav-items.js +2 -2
- package/lib/components-react-node/ui-shell/header.js +2 -2
- package/lib/components-react-node/ui-shell/side-nav-divider.js +2 -2
- package/lib/components-react-node/ui-shell/side-nav-items.js +2 -2
- package/lib/components-react-node/ui-shell/side-nav-link.js +2 -2
- package/lib/components-react-node/ui-shell/side-nav-menu-item.js +2 -2
- package/lib/components-react-node/ui-shell/side-nav-menu.js +2 -2
- package/lib/components-react-node/ui-shell/side-nav.js +2 -2
- package/lib/components-react-node/ui-shell/switcher-divider.js +2 -2
- package/lib/components-react-node/ui-shell/switcher-item.js +2 -2
- package/lib/components-react-node/ui-shell/switcher.js +2 -2
- package/lib/globals/controllers/popover-controller.js.map +1 -1
- package/lib/globals/settings.js.map +1 -1
- package/package.json +4 -4
- package/dist/20-7dd70a15.js +0 -73
- package/dist/checkbox-6b1a3bff.js +0 -109
- package/dist/dropdown-item-4c020a7d.js +0 -148
- package/dist/popover-controller-0c0475fc.js +0 -73
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-select.js","names":["html","property","query","classMap","Close16","prefix","filter","forEach","indexOf","CDSDropdown","DROPDOWN_KEYBOARD_ACTION","DROPDOWN_TYPE","SELECTION_FEEDBACK_OPTION","styles","carbonElement","customElement","DROPDOWN_SIZE","DROPDOWN_DIRECTION","CDSMultiSelect","_decorate","_initialize","_CDSDropdown","constructor","args","F","d","kind","decorators","type","Boolean","key","value","_selectionShouldChange","itemToSelect","_selectionDidChange","selected","querySelectorAll","selectorItemSelected","item","_handleUserInitiatedToggle","selectorItem","map","join","_handleClickInner","event","_this$_selectionButto","_this$_clearButtonNod","_event$target","_selectionButtonNode","contains","target","readOnly","_handleUserInitiatedSelectItem","filterable","_filterInputNode","focus","_triggerNode","_clearButtonNode","_handleUserInitiatedClearInput","matches","slugItem","_get","_getPrototypeOf","prototype","call","_handleKeypressInner","_this$_clearButtonNod2","_this$_selectionButto2","action","getAction","TRIGGERING","open","_handleKeypressInnerFlterable","highlightedItem","querySelector","selectorItemHighlighted","_renderTitleLabel","clearSelectionDescription","clearSelectionText","disabled","hideLabel","titleText","_selectedItemsCount","selectedItemsCount","_slotTitleTextNode","slotTitleTextNode","_handleSlotchangeLabelText","handleSlotchangeLabelText","labelClasses","hasTitleText","assignedNodes","length","_t","_","_t2","_renderPrecedingLabel","clearSelectionLabel","selectionButtonClasses","undefined","_t3","class","_renderLabel","label","_selectedItemContent","selectedItemContent","inputClasses","_t4","_t5","_handleInput","_renderFollowingLabel","filterInputNode","_t6","items","inputValue","toLocaleLowerCase","itemValue","innerText","includes","setAttribute","removeAttribute","requestUpdate","_navigate","direction","selectorItemResults","highlightedIndex","nextIndex","i","highlighted","selectorItemFiltered","attribute","TOP_AFTER_REOPEN","_classes","size","invalid","warn","inline","INLINE","itemA","itemB","locale","localeCompare","numeric","menuItems","values","compareItems","menuItemsArray","Array","from","sortedArray","sort","hasItemA","hasItemB","shouldUpdate","changedProperties","slug","split","has","elem","selectionFeedback","TOP","sortedMenuItems","sortItems","unshift","replaceChildren","updated","_menuBodyNode","connectedCallback","static","selectorMenuBody","eventBeforeToggle","eventToggle","eventBeforeSelect","eventSelect"],"sources":["components/multi-select/multi-select.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, TemplateResult } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport Close16 from '@carbon/icons/lib/close/16';\nimport { prefix } from '../../globals/settings';\nimport {\n filter,\n forEach,\n indexOf,\n} from '../../globals/internal/collection-helpers';\nimport CDSDropdown, {\n DROPDOWN_KEYBOARD_ACTION,\n DROPDOWN_TYPE,\n} from '../dropdown/dropdown';\nimport { SELECTION_FEEDBACK_OPTION } from './defs';\nimport CDSMultiSelectItem from './multi-select-item';\nimport styles from './multi-select.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport {\n DROPDOWN_SIZE,\n DROPDOWN_TYPE,\n DROPDOWN_DIRECTION,\n} from '../dropdown/dropdown';\n\nexport { SELECTION_FEEDBACK_OPTION };\n\n/**\n * Multi select.\n *\n * @element cds-multi-select\n * @fires cds-multi-select-beingselected\n * The custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires cds-multi-select-selected - The custom event fired after a multi select item is selected upon a user gesture.\n * @fires cds-multi-select-beingtoggled\n * The custom event fired before the open state of this multi select is toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated toggling.\n * @fires cds-multi-select-toggled\n * The custom event fired after the open state of this multi select is toggled upon a user gesture.\n */\n@customElement(`${prefix}-multi-select`)\nclass CDSMultiSelect extends CDSDropdown {\n @property({ type: Boolean })\n filterable;\n\n /**\n * The count of selected items.\n */\n private _selectedItemsCount = 0;\n\n /**\n * The clear button.\n */\n @query('#clear-button')\n private _clearButtonNode!: HTMLElement;\n\n /**\n * The selection button.\n */\n @query('#selection-button')\n private _selectionButtonNode!: HTMLElement;\n\n /**\n * The menu body.\n */\n @query('#menu-body')\n private _menuBodyNode!: HTMLElement;\n\n /**\n * The `<input>` for filtering.\n */\n @query('input')\n private _filterInputNode!: HTMLInputElement;\n\n /**\n * The trigger button.\n */\n @query(`.${prefix}--list-box__field`)\n private _triggerNode!: HTMLElement;\n\n protected _selectionShouldChange(itemToSelect?: CDSMultiSelectItem) {\n // If we are selecting an item, assumes we always toggle\n return Boolean(this.value || itemToSelect);\n }\n\n protected _selectionDidChange(itemToSelect?: CDSMultiSelectItem) {\n if (itemToSelect) {\n itemToSelect.selected = !itemToSelect.selected;\n } else {\n forEach(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemSelected\n ),\n (item) => {\n (item as CDSMultiSelectItem).selected = false;\n }\n );\n this._handleUserInitiatedToggle(false);\n }\n // Change in `.selected` hasn't been reflected to the corresponding attribute yet\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).selected\n )\n .map((item) => (item as CDSMultiSelectItem).value)\n .join(',');\n }\n\n protected _handleClickInner(event: MouseEvent) {\n if (\n this._selectionButtonNode?.contains(event.target as Node) &&\n !this.readOnly\n ) {\n this._handleUserInitiatedSelectItem();\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (this._clearButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedClearInput();\n } else if (\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSMultiSelect).slugItem\n )\n ) {\n super._handleClickInner(event);\n if (this.filterable) {\n this._filterInputNode.focus();\n }\n }\n }\n\n /**\n * Handler for the `keypress` event, ensures filter still works upon entering space\n */\n protected _handleKeypressInner(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n const { TRIGGERING } = DROPDOWN_KEYBOARD_ACTION;\n\n if (\n this._clearButtonNode?.contains(event.target as Node) &&\n // Space key should be handled by `<input>` unless \"clear selection\" button has focus\n (action === TRIGGERING || key === ' ')\n ) {\n this._handleUserInitiatedClearInput();\n } else if (this._selectionButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedSelectItem();\n this.open = true;\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (this.filterable) {\n this._handleKeypressInnerFlterable(event);\n } else {\n super._handleKeypressInner(event);\n }\n }\n\n /**\n * Special andler for the `keypress` event, ensures space selection for filterable\n * variation is disabled\n */\n\n protected _handleKeypressInnerFlterable(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n if (!this.open) {\n switch (action) {\n case DROPDOWN_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (key) {\n case 'Enter':\n {\n const constructor = this.constructor as typeof CDSDropdown;\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n ) as CDSMultiSelectItem;\n if (highlightedItem) {\n this._handleUserInitiatedSelectItem(highlightedItem);\n } else {\n this._handleUserInitiatedToggle(false);\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _renderTitleLabel() {\n const {\n clearSelectionDescription,\n clearSelectionText,\n disabled,\n hideLabel,\n titleText,\n _selectedItemsCount: selectedItemsCount,\n _slotTitleTextNode: slotTitleTextNode,\n _handleSlotchangeLabelText: handleSlotchangeLabelText,\n } = this;\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n const hasTitleText =\n titleText ||\n (slotTitleTextNode && slotTitleTextNode.assignedNodes().length > 0);\n\n return html`\n <label\n part=\"title-text\"\n class=\"${labelClasses}\"\n ?hidden=\"${!hasTitleText}\">\n <slot name=\"title-text\" @slotchange=\"${handleSlotchangeLabelText}\"\n >${titleText}</slot\n >\n ${selectedItemsCount > 0\n ? html`\n <span class=\"${prefix}--visually-hidden\">\n ${clearSelectionDescription} ${selectedItemsCount},\n ${clearSelectionText}\n </span>\n `\n : null}\n </label>\n `;\n }\n\n protected _renderPrecedingLabel() {\n const {\n disabled,\n readOnly,\n clearSelectionLabel,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n\n const selectionButtonClasses = classMap({\n [`${prefix}--list-box__selection`]: true,\n [`${prefix}--list-box__selection--multi`]: true,\n [`${prefix}--tag`]: true,\n [`${prefix}--tag--filter`]: true,\n [`${prefix}--tag--high-contrast`]: true,\n [`${prefix}--tag--disabled`]: disabled,\n });\n return selectedItemsCount === 0\n ? undefined\n : html`\n <div\n id=\"selection-button\"\n role=\"button\"\n class=\"${selectionButtonClasses}\"\n tabindex=\"-1\"\n aria-disabled=${readOnly}\n title=\"${clearSelectionLabel}\">\n ${selectedItemsCount}\n ${Close16({\n 'aria-label': clearSelectionLabel,\n class: `${prefix}--tag__close-icon`,\n })}\n </div>\n `;\n }\n\n /**\n @returns The main content of the trigger button.\n */\n protected _renderLabel(): TemplateResult {\n const { label, value, _selectedItemContent: selectedItemContent } = this;\n\n const inputClasses = classMap({\n [`${prefix}--text-input`]: true,\n [`${prefix}--text-input--empty`]: !value,\n });\n\n return !this.filterable\n ? html`\n <span id=\"trigger-label\" class=\"${prefix}--list-box__label\"\n >${selectedItemContent || label}</span\n >\n `\n : html`\n <input\n id=\"trigger-label\"\n class=\"${inputClasses}\"\n placeholder=\"${label}\"\n role=\"combobox\"\n aria-controls=\"menu-body\"\n aria-autocomplete=\"list\"\n @input=\"${this._handleInput}\" />\n `;\n }\n\n protected _renderFollowingLabel(): TemplateResult | void {\n const { clearSelectionLabel, _filterInputNode: filterInputNode } = this;\n return filterInputNode &&\n filterInputNode.value.length > 0 &&\n this.filterable\n ? html`\n <div\n id=\"clear-button\"\n role=\"button\"\n class=\"${prefix}--list-box__selection\"\n tabindex=\"0\"\n title=\"${clearSelectionLabel}\">\n ${Close16({ 'aria-label': clearSelectionLabel })}\n </div>\n `\n : undefined;\n }\n\n /**\n * Handles `input` event on the `<input>` for filtering.\n */\n protected _handleInput() {\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n );\n const inputValue = this._filterInputNode.value.toLocaleLowerCase();\n\n if (!this.open) {\n this.open = true;\n }\n\n forEach(items, (item) => {\n const itemValue = (item as HTMLElement).innerText.toLocaleLowerCase();\n\n if (!itemValue.includes(inputValue)) {\n (item as CDSMultiSelectItem).setAttribute('filtered', '');\n (item as CDSMultiSelectItem).removeAttribute('highlighted');\n } else {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n }\n });\n\n this.requestUpdate();\n }\n\n /**\n * Navigate through dropdown items.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n */\n protected _navigate(direction: number) {\n if (!this.filterable) {\n super._navigate(direction);\n } else {\n // only navigate through remaining item\n const constructor = this.constructor as typeof CDSMultiSelect;\n const items = this.querySelectorAll(constructor.selectorItemResults);\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n );\n const highlightedIndex = indexOf(items, highlightedItem!);\n\n let nextIndex = highlightedIndex + direction;\n if (nextIndex < 0) {\n nextIndex = items.length - 1;\n }\n if (nextIndex >= items.length) {\n nextIndex = 0;\n }\n forEach(items, (item, i) => {\n (item as CDSMultiSelectItem).highlighted = i === nextIndex;\n });\n }\n }\n\n /**\n * Handles user-initiated clearing the `<input>` for filtering.\n */\n protected _handleUserInitiatedClearInput() {\n const constructor = this.constructor as typeof CDSMultiSelect;\n const items = this.querySelectorAll(constructor.selectorItemFiltered);\n this._filterInputNode.value = '';\n this.open = true;\n this._filterInputNode.focus();\n forEach(items, (item) => {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n });\n }\n\n /**\n * The `aria-label` attribute for the icon to clear selection.\n */\n @property({ attribute: 'clear-selection-label' })\n clearSelectionLabel = '';\n\n /**\n * Specify the text that should be read for screen readers that describes total items selected\n */\n @property({ attribute: 'clear-selection-description' })\n clearSelectionDescription = 'Total items selected: ';\n\n /**\n * Specify the text that should be read for screen readers to clear selection.\n */\n @property({ attribute: 'clear-selection-text' })\n clearSelectionText = 'To clear selection, press Delete or Backspace.';\n\n /**\n * Specify the locale of the control. Used for the default compareItems used for sorting the list of items in the control.\n */\n @property()\n locale = 'en';\n\n /**\n * Specify feedback (mode) of the selection.\n * `top`: selected item jumps to top\n * `fixed`: selected item stays at it's position\n * `top-after-reopen`: selected item jump to top after reopen dropdown\n */\n @property({ attribute: 'selection-feedback' })\n selectionFeedback = SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN;\n\n /**\n * The CSS class list for multi-select listbox\n */\n protected get _classes() {\n const {\n disabled,\n size,\n type,\n invalid,\n readOnly,\n open,\n warn,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n const inline = type === DROPDOWN_TYPE.INLINE;\n\n return classMap({\n [`${prefix}--multi-select`]: true,\n [`${prefix}--list-box`]: true,\n [`${prefix}--list-box--disabled`]: disabled,\n [`${prefix}--list-box--inline`]: inline,\n [`${prefix}--list-box--expanded`]: open,\n [`${prefix}--list-box--${size}`]: size,\n [`${prefix}--multi-select--invalid`]: invalid,\n [`${prefix}--multi-select--warn`]: warn,\n [`${prefix}--multi-select--inline`]: inline,\n [`${prefix}--multi-select--readonly`]: readOnly,\n [`${prefix}--multi-select--selected`]: selectedItemsCount > 0,\n });\n }\n\n protected compareItems = (itemA, itemB, { locale }) => {\n itemA.localeCompare(itemB, locale, { numeric: true });\n };\n\n protected sortItems = (\n menuItems: NodeList,\n { values, compareItems, locale = 'en' }\n ) => {\n const menuItemsArray = Array.from(menuItems);\n\n const sortedArray = menuItemsArray.sort((itemA, itemB) => {\n const hasItemA = values.includes((itemA as HTMLInputElement).value);\n const hasItemB = values.includes((itemB as HTMLInputElement).value);\n\n // Prefer whichever item is in the `value` array first\n if (hasItemA && !hasItemB) {\n return -1;\n }\n\n if (hasItemB && !hasItemA) {\n return 1;\n }\n\n return compareItems(\n (itemA as HTMLInputElement).value,\n (itemB as HTMLInputElement).value,\n {\n locale,\n }\n );\n });\n\n return sortedArray;\n };\n\n shouldUpdate(changedProperties) {\n const { selectorItem, slugItem } = this\n .constructor as typeof CDSMultiSelect;\n const slug = this.querySelector(slugItem);\n const items = this.querySelectorAll(selectorItem);\n\n const { value, locale } = this;\n const values = !value ? [] : value.split(',');\n\n if (changedProperties.has('size')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n (elem as CDSMultiSelectItem).size = this.size;\n });\n }\n if (changedProperties.has('value')) {\n // Updates selection beforehand because our rendering logic for `<cds-multi-select>` looks for selected items via `qSA()`\n forEach(items, (elem) => {\n (elem as CDSMultiSelectItem).selected =\n values.indexOf((elem as CDSMultiSelectItem).value) >= 0;\n });\n this._selectedItemsCount = filter(\n items,\n (elem) => values.indexOf((elem as CDSMultiSelectItem).value) >= 0\n ).length;\n\n if (this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n slug ? sortedMenuItems.unshift(slug as Node) : '';\n // @todo remove typecast once we've updated to Typescript.\n (this as any).replaceChildren(...sortedMenuItems);\n }\n }\n if (changedProperties.has('open')) {\n if (\n this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN\n ) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n slug ? sortedMenuItems.unshift(slug as Node) : '';\n // @todo remove typecast once we've updated to Typescript.\n (this as any).replaceChildren(...sortedMenuItems);\n }\n }\n return true;\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (changedProperties.has('open') && this.open && !this.filterable) {\n // move focus to menu body when open for non-filterable mulit-select\n this._menuBodyNode.focus();\n }\n }\n\n connectedCallback() {\n super.connectedCallback();\n /**\n * Detect if multi-select already has initially selected items\n */\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).selected\n )\n .map((item) => (item as CDSMultiSelectItem).value)\n .join(',');\n }\n\n /**\n * A selector that will return menu body.\n */\n static get selectorMenuBody() {\n return `div[part=\"menu-body\"]`;\n }\n\n /**\n * A selector that will return highlighted items.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-multi-select-item[highlighted]`;\n }\n\n /**\n * A selector that will return multi select items.\n * We use a separate property from `.itemTagName` due to the nature in difference of tag name vs. selector.\n */\n static get selectorItem() {\n return `${prefix}-multi-select-item`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemFiltered() {\n return `${prefix}-multi-select-item[filtered]`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemResults() {\n return `${prefix}-multi-select-item:not([filtered])`;\n }\n\n /**\n * A selector that will return selected items.\n */\n static get selectorItemSelected() {\n return `${prefix}-multi-select-item[selected]`;\n }\n\n /**\n * The name of the custom event fired before this multi select item is being toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated action of toggling this multi select item.\n */\n static get eventBeforeToggle() {\n return `${prefix}-multi-select-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after this multi select item is toggled upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-multi-select-toggled`;\n }\n\n /**\n * The name of the custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n */\n static get eventBeforeSelect() {\n return `${prefix}-multi-select-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a multi select item is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-multi-select-selected`;\n }\n\n static styles = styles;\n}\n\nexport default CDSMultiSelect;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"multi-select.js","names":["html","property","query","classMap","Close16","prefix","filter","forEach","indexOf","CDSDropdown","DROPDOWN_KEYBOARD_ACTION","DROPDOWN_TYPE","SELECTION_FEEDBACK_OPTION","styles","carbonElement","customElement","DROPDOWN_SIZE","DROPDOWN_DIRECTION","CDSMultiSelect","_decorate","_initialize","_CDSDropdown","constructor","args","F","d","kind","decorators","type","Boolean","key","value","_selectionShouldChange","itemToSelect","_selectionDidChange","selected","querySelectorAll","selectorItemSelected","item","_handleUserInitiatedToggle","selectorItem","map","join","_handleClickInner","event","_this$_selectionButto","_this$_clearButtonNod","_event$target","_selectionButtonNode","contains","target","readOnly","_handleUserInitiatedSelectItem","filterable","_filterInputNode","focus","_triggerNode","_clearButtonNode","_handleUserInitiatedClearInput","matches","slugItem","_get","_getPrototypeOf","prototype","call","_handleKeypressInner","_this$_clearButtonNod2","_this$_selectionButto2","action","getAction","TRIGGERING","open","_handleKeypressInnerFlterable","highlightedItem","querySelector","selectorItemHighlighted","_renderTitleLabel","clearSelectionDescription","clearSelectionText","disabled","hideLabel","titleText","_selectedItemsCount","selectedItemsCount","_slotTitleTextNode","slotTitleTextNode","_handleSlotchangeLabelText","handleSlotchangeLabelText","labelClasses","hasTitleText","assignedNodes","length","_t","_","_t2","_renderPrecedingLabel","clearSelectionLabel","selectionButtonClasses","undefined","_t3","class","_renderLabel","label","_selectedItemContent","selectedItemContent","inputClasses","_t4","_t5","_handleInput","_renderFollowingLabel","filterInputNode","_t6","items","inputValue","toLocaleLowerCase","itemValue","innerText","includes","setAttribute","removeAttribute","requestUpdate","_navigate","direction","selectorItemResults","highlightedIndex","nextIndex","i","highlighted","selectorItemFiltered","attribute","TOP_AFTER_REOPEN","_classes","size","invalid","warn","inline","INLINE","itemA","itemB","locale","localeCompare","numeric","menuItems","values","compareItems","menuItemsArray","Array","from","sortedArray","sort","hasItemA","hasItemB","shouldUpdate","changedProperties","slug","split","has","elem","selectionFeedback","TOP","sortedMenuItems","sortItems","unshift","replaceChildren","updated","_menuBodyNode","connectedCallback","static","selectorMenuBody","eventBeforeToggle","eventToggle","eventBeforeSelect","eventSelect"],"sources":["components/multi-select/multi-select.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, TemplateResult } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport Close16 from '@carbon/icons/lib/close/16';\nimport { prefix } from '../../globals/settings';\nimport {\n filter,\n forEach,\n indexOf,\n} from '../../globals/internal/collection-helpers';\nimport CDSDropdown, {\n DROPDOWN_KEYBOARD_ACTION,\n DROPDOWN_TYPE,\n} from '../dropdown/dropdown';\nimport { SELECTION_FEEDBACK_OPTION } from './defs';\nimport CDSMultiSelectItem from './multi-select-item';\nimport styles from './multi-select.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport {\n DROPDOWN_SIZE,\n DROPDOWN_TYPE,\n DROPDOWN_DIRECTION,\n} from '../dropdown/dropdown';\n\nexport { SELECTION_FEEDBACK_OPTION };\n\n/**\n * Multi select.\n *\n * @element cds-multi-select\n * @fires cds-multi-select-beingselected\n * The custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires cds-multi-select-selected - The custom event fired after a multi select item is selected upon a user gesture.\n * @fires cds-multi-select-beingtoggled\n * The custom event fired before the open state of this multi select is toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated toggling.\n * @fires cds-multi-select-toggled\n * The custom event fired after the open state of this multi select is toggled upon a user gesture.\n */\n@customElement(`${prefix}-multi-select`)\nclass CDSMultiSelect extends CDSDropdown {\n @property({ type: Boolean })\n filterable;\n\n /**\n * The count of selected items.\n */\n private _selectedItemsCount = 0;\n\n /**\n * The clear button.\n */\n @query('#clear-button')\n private _clearButtonNode!: HTMLElement;\n\n /**\n * The selection button.\n */\n @query('#selection-button')\n private _selectionButtonNode!: HTMLElement;\n\n /**\n * The menu body.\n */\n @query('#menu-body')\n private _menuBodyNode!: HTMLElement;\n\n /**\n * The `<input>` for filtering.\n */\n @query('input')\n private _filterInputNode!: HTMLInputElement;\n\n /**\n * The trigger button.\n */\n @query(`.${prefix}--list-box__field`)\n private _triggerNode!: HTMLElement;\n\n protected _selectionShouldChange(itemToSelect?: CDSMultiSelectItem) {\n // If we are selecting an item, assumes we always toggle\n return Boolean(this.value || itemToSelect);\n }\n\n protected _selectionDidChange(itemToSelect?: CDSMultiSelectItem) {\n if (itemToSelect) {\n itemToSelect.selected = !itemToSelect.selected;\n } else {\n forEach(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemSelected\n ),\n (item) => {\n (item as CDSMultiSelectItem).selected = false;\n }\n );\n this._handleUserInitiatedToggle(false);\n }\n // Change in `.selected` hasn't been reflected to the corresponding attribute yet\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).selected\n )\n .map((item) => (item as CDSMultiSelectItem).value)\n .join(',');\n }\n\n protected _handleClickInner(event: MouseEvent) {\n if (\n this._selectionButtonNode?.contains(event.target as Node) &&\n !this.readOnly\n ) {\n this._handleUserInitiatedSelectItem();\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (this._clearButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedClearInput();\n } else if (\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSMultiSelect).slugItem\n )\n ) {\n super._handleClickInner(event);\n if (this.filterable) {\n this._filterInputNode.focus();\n }\n }\n }\n\n /**\n * Handler for the `keypress` event, ensures filter still works upon entering space\n */\n protected _handleKeypressInner(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n const { TRIGGERING } = DROPDOWN_KEYBOARD_ACTION;\n\n if (\n this._clearButtonNode?.contains(event.target as Node) &&\n // Space key should be handled by `<input>` unless \"clear selection\" button has focus\n (action === TRIGGERING || key === ' ')\n ) {\n this._handleUserInitiatedClearInput();\n } else if (this._selectionButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedSelectItem();\n this.open = true;\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (this.filterable) {\n this._handleKeypressInnerFlterable(event);\n } else {\n super._handleKeypressInner(event);\n }\n }\n\n /**\n * Special andler for the `keypress` event, ensures space selection for filterable\n * variation is disabled\n */\n\n protected _handleKeypressInnerFlterable(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n if (!this.open) {\n switch (action) {\n case DROPDOWN_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (key) {\n case 'Enter':\n {\n const constructor = this.constructor as typeof CDSDropdown;\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n ) as CDSMultiSelectItem;\n if (highlightedItem) {\n this._handleUserInitiatedSelectItem(highlightedItem);\n } else {\n this._handleUserInitiatedToggle(false);\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _renderTitleLabel() {\n const {\n clearSelectionDescription,\n clearSelectionText,\n disabled,\n hideLabel,\n titleText,\n _selectedItemsCount: selectedItemsCount,\n _slotTitleTextNode: slotTitleTextNode,\n _handleSlotchangeLabelText: handleSlotchangeLabelText,\n } = this;\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n const hasTitleText =\n titleText ||\n (slotTitleTextNode && slotTitleTextNode.assignedNodes().length > 0);\n\n return html`\n <label\n part=\"title-text\"\n class=\"${labelClasses}\"\n ?hidden=\"${!hasTitleText}\">\n <slot name=\"title-text\" @slotchange=\"${handleSlotchangeLabelText}\"\n >${titleText}</slot\n >\n ${selectedItemsCount > 0\n ? html`\n <span class=\"${prefix}--visually-hidden\">\n ${clearSelectionDescription} ${selectedItemsCount},\n ${clearSelectionText}\n </span>\n `\n : null}\n </label>\n `;\n }\n\n protected _renderPrecedingLabel() {\n const {\n disabled,\n readOnly,\n clearSelectionLabel,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n\n const selectionButtonClasses = classMap({\n [`${prefix}--list-box__selection`]: true,\n [`${prefix}--list-box__selection--multi`]: true,\n [`${prefix}--tag`]: true,\n [`${prefix}--tag--filter`]: true,\n [`${prefix}--tag--high-contrast`]: true,\n [`${prefix}--tag--disabled`]: disabled,\n });\n return selectedItemsCount === 0\n ? undefined\n : html`\n <div\n id=\"selection-button\"\n role=\"button\"\n class=\"${selectionButtonClasses}\"\n tabindex=\"-1\"\n aria-disabled=${readOnly}\n title=\"${clearSelectionLabel}\">\n ${selectedItemsCount}\n ${Close16({\n 'aria-label': clearSelectionLabel,\n class: `${prefix}--tag__close-icon`,\n })}\n </div>\n `;\n }\n\n /**\n @returns The main content of the trigger button.\n */\n protected _renderLabel(): TemplateResult {\n const { label, value, _selectedItemContent: selectedItemContent } = this;\n\n const inputClasses = classMap({\n [`${prefix}--text-input`]: true,\n [`${prefix}--text-input--empty`]: !value,\n });\n\n return !this.filterable\n ? html`\n <span id=\"trigger-label\" class=\"${prefix}--list-box__label\"\n >${selectedItemContent || label}</span\n >\n `\n : html`\n <input\n id=\"trigger-label\"\n class=\"${inputClasses}\"\n placeholder=\"${label}\"\n role=\"combobox\"\n aria-controls=\"menu-body\"\n aria-autocomplete=\"list\"\n @input=\"${this._handleInput}\" />\n `;\n }\n\n protected _renderFollowingLabel(): TemplateResult | void {\n const { clearSelectionLabel, _filterInputNode: filterInputNode } = this;\n return filterInputNode &&\n filterInputNode.value.length > 0 &&\n this.filterable\n ? html`\n <div\n id=\"clear-button\"\n role=\"button\"\n class=\"${prefix}--list-box__selection\"\n tabindex=\"0\"\n title=\"${clearSelectionLabel}\">\n ${Close16({ 'aria-label': clearSelectionLabel })}\n </div>\n `\n : undefined;\n }\n\n /**\n * Handles `input` event on the `<input>` for filtering.\n */\n protected _handleInput() {\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n );\n const inputValue = this._filterInputNode.value.toLocaleLowerCase();\n\n if (!this.open) {\n this.open = true;\n }\n\n forEach(items, (item) => {\n const itemValue = (item as HTMLElement).innerText.toLocaleLowerCase();\n\n if (!itemValue.includes(inputValue)) {\n (item as CDSMultiSelectItem).setAttribute('filtered', '');\n (item as CDSMultiSelectItem).removeAttribute('highlighted');\n } else {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n }\n });\n\n this.requestUpdate();\n }\n\n /**\n * Navigate through dropdown items.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n */\n protected _navigate(direction: number) {\n if (!this.filterable) {\n super._navigate(direction);\n } else {\n // only navigate through remaining item\n const constructor = this.constructor as typeof CDSMultiSelect;\n const items = this.querySelectorAll(constructor.selectorItemResults);\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n );\n const highlightedIndex = indexOf(items, highlightedItem!);\n\n let nextIndex = highlightedIndex + direction;\n if (nextIndex < 0) {\n nextIndex = items.length - 1;\n }\n if (nextIndex >= items.length) {\n nextIndex = 0;\n }\n forEach(items, (item, i) => {\n (item as CDSMultiSelectItem).highlighted = i === nextIndex;\n });\n }\n }\n\n /**\n * Handles user-initiated clearing the `<input>` for filtering.\n */\n protected _handleUserInitiatedClearInput() {\n const constructor = this.constructor as typeof CDSMultiSelect;\n const items = this.querySelectorAll(constructor.selectorItemFiltered);\n this._filterInputNode.value = '';\n this.open = true;\n this._filterInputNode.focus();\n forEach(items, (item) => {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n });\n }\n\n /**\n * The `aria-label` attribute for the icon to clear selection.\n */\n @property({ attribute: 'clear-selection-label' })\n clearSelectionLabel = '';\n\n /**\n * Specify the text that should be read for screen readers that describes total items selected\n */\n @property({ attribute: 'clear-selection-description' })\n clearSelectionDescription = 'Total items selected: ';\n\n /**\n * Specify the text that should be read for screen readers to clear selection.\n */\n @property({ attribute: 'clear-selection-text' })\n clearSelectionText = 'To clear selection, press Delete or Backspace.';\n\n /**\n * Specify the locale of the control. Used for the default compareItems used for sorting the list of items in the control.\n */\n @property()\n locale = 'en';\n\n /**\n * Specify feedback (mode) of the selection.\n * `top`: selected item jumps to top\n * `fixed`: selected item stays at it's position\n * `top-after-reopen`: selected item jump to top after reopen dropdown\n */\n @property({ attribute: 'selection-feedback' })\n selectionFeedback = SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN;\n\n /**\n * The CSS class list for multi-select listbox\n */\n protected get _classes() {\n const {\n disabled,\n size,\n type,\n invalid,\n readOnly,\n open,\n warn,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n const inline = type === DROPDOWN_TYPE.INLINE;\n\n return classMap({\n [`${prefix}--multi-select`]: true,\n [`${prefix}--list-box`]: true,\n [`${prefix}--list-box--disabled`]: disabled,\n [`${prefix}--list-box--inline`]: inline,\n [`${prefix}--list-box--expanded`]: open,\n [`${prefix}--list-box--${size}`]: size,\n [`${prefix}--multi-select--invalid`]: invalid,\n [`${prefix}--multi-select--warn`]: warn,\n [`${prefix}--multi-select--inline`]: inline,\n [`${prefix}--multi-select--readonly`]: readOnly,\n [`${prefix}--multi-select--selected`]: selectedItemsCount > 0,\n });\n }\n\n protected compareItems = (itemA, itemB, { locale }) => {\n itemA.localeCompare(itemB, locale, { numeric: true });\n };\n\n protected sortItems = (\n menuItems: NodeList,\n { values, compareItems, locale = 'en' }\n ) => {\n const menuItemsArray = Array.from(menuItems);\n\n const sortedArray = menuItemsArray.sort((itemA, itemB) => {\n const hasItemA = values.includes((itemA as HTMLInputElement).value);\n const hasItemB = values.includes((itemB as HTMLInputElement).value);\n\n // Prefer whichever item is in the `value` array first\n if (hasItemA && !hasItemB) {\n return -1;\n }\n\n if (hasItemB && !hasItemA) {\n return 1;\n }\n\n return compareItems(\n (itemA as HTMLInputElement).value,\n (itemB as HTMLInputElement).value,\n {\n locale,\n }\n );\n });\n\n return sortedArray;\n };\n\n shouldUpdate(changedProperties) {\n const { selectorItem, slugItem } = this\n .constructor as typeof CDSMultiSelect;\n const slug = this.querySelector(slugItem);\n const items = this.querySelectorAll(selectorItem);\n\n const { value, locale } = this;\n const values = !value ? [] : value.split(',');\n\n if (changedProperties.has('size')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n (elem as CDSMultiSelectItem).size = this.size;\n });\n }\n if (changedProperties.has('value')) {\n // Updates selection beforehand because our rendering logic for `<cds-multi-select>` looks for selected items via `qSA()`\n forEach(items, (elem) => {\n (elem as CDSMultiSelectItem).selected =\n values.indexOf((elem as CDSMultiSelectItem).value) >= 0;\n });\n this._selectedItemsCount = filter(\n items,\n (elem) => values.indexOf((elem as CDSMultiSelectItem).value) >= 0\n ).length;\n\n if (this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n slug ? sortedMenuItems.unshift(slug as Node) : '';\n // @todo remove typecast once we've updated to Typescript.\n (this as any).replaceChildren(...sortedMenuItems);\n }\n }\n if (changedProperties.has('open')) {\n if (\n this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN\n ) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n slug ? sortedMenuItems.unshift(slug as Node) : '';\n // @todo remove typecast once we've updated to Typescript.\n (this as any).replaceChildren(...sortedMenuItems);\n }\n }\n return true;\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (changedProperties.has('open') && this.open && !this.filterable) {\n // move focus to menu body when open for non-filterable mulit-select\n this._menuBodyNode.focus();\n }\n }\n\n connectedCallback() {\n super.connectedCallback();\n /**\n * Detect if multi-select already has initially selected items\n */\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).selected\n )\n .map((item) => (item as CDSMultiSelectItem).value)\n .join(',');\n }\n\n /**\n * A selector that will return menu body.\n */\n static get selectorMenuBody() {\n return `div[part=\"menu-body\"]`;\n }\n\n /**\n * A selector that will return highlighted items.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-multi-select-item[highlighted]`;\n }\n\n /**\n * A selector that will return multi select items.\n * We use a separate property from `.itemTagName` due to the nature in difference of tag name vs. selector.\n */\n static get selectorItem() {\n return `${prefix}-multi-select-item`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemFiltered() {\n return `${prefix}-multi-select-item[filtered]`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemResults() {\n return `${prefix}-multi-select-item:not([filtered])`;\n }\n\n /**\n * A selector that will return selected items.\n */\n static get selectorItemSelected() {\n return `${prefix}-multi-select-item[selected]`;\n }\n\n /**\n * The name of the custom event fired before this multi select item is being toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated action of toggling this multi select item.\n */\n static get eventBeforeToggle() {\n return `${prefix}-multi-select-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after this multi select item is toggled upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-multi-select-toggled`;\n }\n\n /**\n * The name of the custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n */\n static get eventBeforeSelect() {\n return `${prefix}-multi-select-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a multi select item is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-multi-select-selected`;\n }\n\n static styles = styles;\n}\n\nexport default CDSMultiSelect;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionable-notification-button.js","names":["prefix","CDSButton","styles","carbonElement","customElement","CDSActionableNotificationButton","_decorate","_initialize","_CDSButton","constructor","args","F","d","kind","key","value","update","changedProperties","_getElementById","_get","_getPrototypeOf","prototype","call","shadowRoot","getElementById","classList","add","setAttribute","static"],"sources":["components/notification/actionable-notification-button.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { prefix } from '../../globals/settings';\nimport CDSButton from '../button/button';\nimport styles from './actionable-notification.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Actionable notification action button.\n *\n * @element cds-actionable-notification-button\n */\n@customElement(`${prefix}-actionable-notification-button`)\nclass CDSActionableNotificationButton extends CDSButton {\n update(changedProperties) {\n super.update(changedProperties);\n this.shadowRoot!.getElementById('button')?.classList.add(\n `${prefix}--actionable-notification__action-button`\n );\n\n this.setAttribute('size', 'sm');\n }\n\n static styles = styles;\n}\n\nexport default CDSActionableNotificationButton;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,MAAM,QAAQ,wBAAwB;AAC/C,OAAOC,SAAS,MAAM,kBAAkB;AACxC,OAAOC,MAAM,MAAM,oCAAgC;AACnD,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;;AAExF;AACA;AACA;AACA;AACA;AAJA,IAMMC,+BAA+B,GAAAC,SAAA,EADpCF,aAAa,
|
|
1
|
+
{"version":3,"file":"actionable-notification-button.js","names":["prefix","CDSButton","styles","carbonElement","customElement","CDSActionableNotificationButton","_decorate","_initialize","_CDSButton","constructor","args","F","d","kind","key","value","update","changedProperties","_getElementById","_get","_getPrototypeOf","prototype","call","shadowRoot","getElementById","classList","add","setAttribute","static"],"sources":["components/notification/actionable-notification-button.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { prefix } from '../../globals/settings';\nimport CDSButton from '../button/button';\nimport styles from './actionable-notification.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Actionable notification action button.\n *\n * @element cds-actionable-notification-button\n */\n@customElement(`${prefix}-actionable-notification-button`)\nclass CDSActionableNotificationButton extends CDSButton {\n update(changedProperties) {\n super.update(changedProperties);\n this.shadowRoot!.getElementById('button')?.classList.add(\n `${prefix}--actionable-notification__action-button`\n );\n\n this.setAttribute('size', 'sm');\n }\n\n static styles = styles;\n}\n\nexport default CDSActionableNotificationButton;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,MAAM,QAAQ,wBAAwB;AAC/C,OAAOC,SAAS,MAAM,kBAAkB;AACxC,OAAOC,MAAM,MAAM,oCAAgC;AACnD,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;;AAExF;AACA;AACA;AACA;AACA;AAJA,IAMMC,+BAA+B,GAAAC,SAAA,EADpCF,aAAa,CAAC,GAAGJ,MAAM,iCAAiC,CAAC,aAAAO,WAAA,EAAAC,UAAA;EAA1D,MACMH,+BAA+B,SAAAG,UAAA,CAAmB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAWxD;EAAC;IAAAI,CAAA,EAXKN,+BAA+B;IAAAO,CAAA;MAAAC,IAAA;MAAAC,GAAA;MAAAC,KAAA,EACnC,SAAAC,OAAOC,iBAAiB,EAAE;QAAA,IAAAC,eAAA;QACxBC,IAAA,CAAAC,eAAA,CAFEf,+BAA+B,CAAAgB,SAAA,mBAAAC,IAAA,OAEpBL,iBAAiB;QAC9B,CAAAC,eAAA,OAAI,CAACK,UAAU,CAAEC,cAAc,CAAC,QAAQ,CAAC,cAAAN,eAAA,eAAzCA,eAAA,CAA2CO,SAAS,CAACC,GAAG,CACtD,GAAG1B,MAAM,0CACX,CAAC;QAED,IAAI,CAAC2B,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;MACjC;IAAC;MAAAd,IAAA;MAAAe,MAAA;MAAAd,GAAA;MAAAC,MAAA;QAAA,OAEeb,MAAM;MAAA;IAAA;EAAA;AAAA,GAVsBD,SAAS;AAavD,eAAeI,+BAA+B","ignoreList":[]}
|
|
@@ -28,11 +28,11 @@ declare const CDSActionableNotification_base: {
|
|
|
28
28
|
click(): void;
|
|
29
29
|
hidePopover(): void;
|
|
30
30
|
showPopover(): void;
|
|
31
|
-
togglePopover(force?: boolean
|
|
32
|
-
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions
|
|
33
|
-
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions
|
|
34
|
-
removeEventListener<
|
|
35
|
-
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions
|
|
31
|
+
togglePopover(force?: boolean): boolean;
|
|
32
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
33
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
34
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
35
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
36
36
|
readonly attributes: NamedNodeMap;
|
|
37
37
|
readonly classList: DOMTokenList;
|
|
38
38
|
className: string;
|
|
@@ -57,10 +57,10 @@ declare const CDSActionableNotification_base: {
|
|
|
57
57
|
slot: string;
|
|
58
58
|
readonly tagName: string;
|
|
59
59
|
attachShadow(init: ShadowRootInit): ShadowRoot;
|
|
60
|
-
checkVisibility(options?: CheckVisibilityOptions
|
|
61
|
-
closest<
|
|
62
|
-
closest<
|
|
63
|
-
closest<
|
|
60
|
+
checkVisibility(options?: CheckVisibilityOptions): boolean;
|
|
61
|
+
closest<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | null;
|
|
62
|
+
closest<K extends keyof SVGElementTagNameMap>(selector: K): SVGElementTagNameMap[K] | null;
|
|
63
|
+
closest<K extends keyof MathMLElementTagNameMap>(selector: K): MathMLElementTagNameMap[K] | null;
|
|
64
64
|
closest<E extends Element = Element>(selectors: string): E | null;
|
|
65
65
|
computedStyleMap(): StylePropertyMapReadOnly;
|
|
66
66
|
getAttribute(qualifiedName: string): string | null;
|
|
@@ -71,10 +71,10 @@ declare const CDSActionableNotification_base: {
|
|
|
71
71
|
getBoundingClientRect(): DOMRect;
|
|
72
72
|
getClientRects(): DOMRectList;
|
|
73
73
|
getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
|
|
74
|
-
getElementsByTagName<
|
|
75
|
-
getElementsByTagName<
|
|
76
|
-
getElementsByTagName<
|
|
77
|
-
getElementsByTagName<
|
|
74
|
+
getElementsByTagName<K extends keyof HTMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
|
|
75
|
+
getElementsByTagName<K extends keyof SVGElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
|
|
76
|
+
getElementsByTagName<K extends keyof MathMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
|
|
77
|
+
getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
|
|
78
78
|
getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
|
|
79
79
|
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
|
|
80
80
|
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
|
|
@@ -92,21 +92,22 @@ declare const CDSActionableNotification_base: {
|
|
|
92
92
|
removeAttribute(qualifiedName: string): void;
|
|
93
93
|
removeAttributeNS(namespace: string | null, localName: string): void;
|
|
94
94
|
removeAttributeNode(attr: Attr): Attr;
|
|
95
|
-
requestFullscreen(options?: FullscreenOptions
|
|
95
|
+
requestFullscreen(options?: FullscreenOptions): Promise<void>;
|
|
96
96
|
requestPointerLock(): void;
|
|
97
|
-
scroll(options?: ScrollToOptions
|
|
97
|
+
scroll(options?: ScrollToOptions): void;
|
|
98
98
|
scroll(x: number, y: number): void;
|
|
99
|
-
scrollBy(options?: ScrollToOptions
|
|
99
|
+
scrollBy(options?: ScrollToOptions): void;
|
|
100
100
|
scrollBy(x: number, y: number): void;
|
|
101
|
-
scrollIntoView(arg?: boolean | ScrollIntoViewOptions
|
|
102
|
-
scrollTo(options?: ScrollToOptions
|
|
101
|
+
scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
|
|
102
|
+
scrollTo(options?: ScrollToOptions): void;
|
|
103
103
|
scrollTo(x: number, y: number): void;
|
|
104
104
|
setAttribute(qualifiedName: string, value: string): void;
|
|
105
105
|
setAttributeNS(namespace: string | null, qualifiedName: string, value: string): void;
|
|
106
106
|
setAttributeNode(attr: Attr): Attr | null;
|
|
107
107
|
setAttributeNodeNS(attr: Attr): Attr | null;
|
|
108
|
+
setHTMLUnsafe(html: string): void;
|
|
108
109
|
setPointerCapture(pointerId: number): void;
|
|
109
|
-
toggleAttribute(qualifiedName: string, force?: boolean
|
|
110
|
+
toggleAttribute(qualifiedName: string, force?: boolean): boolean;
|
|
110
111
|
webkitMatchesSelector(selectors: string): boolean;
|
|
111
112
|
readonly baseURI: string;
|
|
112
113
|
readonly childNodes: NodeListOf<ChildNode>;
|
|
@@ -122,20 +123,20 @@ declare const CDSActionableNotification_base: {
|
|
|
122
123
|
readonly previousSibling: ChildNode | null;
|
|
123
124
|
textContent: string | null;
|
|
124
125
|
appendChild<T extends Node>(node: T): T;
|
|
125
|
-
cloneNode(deep?: boolean
|
|
126
|
+
cloneNode(deep?: boolean): Node;
|
|
126
127
|
compareDocumentPosition(other: Node): number;
|
|
127
128
|
contains(other: Node | null): boolean;
|
|
128
|
-
getRootNode(options?: GetRootNodeOptions
|
|
129
|
+
getRootNode(options?: GetRootNodeOptions): Node;
|
|
129
130
|
hasChildNodes(): boolean;
|
|
130
|
-
insertBefore<
|
|
131
|
+
insertBefore<T extends Node>(node: T, child: Node | null): T;
|
|
131
132
|
isDefaultNamespace(namespace: string | null): boolean;
|
|
132
133
|
isEqualNode(otherNode: Node | null): boolean;
|
|
133
134
|
isSameNode(otherNode: Node | null): boolean;
|
|
134
135
|
lookupNamespaceURI(prefix: string | null): string | null;
|
|
135
136
|
lookupPrefix(namespace: string | null): string | null;
|
|
136
137
|
normalize(): void;
|
|
137
|
-
removeChild<
|
|
138
|
-
replaceChild<
|
|
138
|
+
removeChild<T extends Node>(child: T): T;
|
|
139
|
+
replaceChild<T extends Node>(node: Node, child: T): T;
|
|
139
140
|
readonly ELEMENT_NODE: 1;
|
|
140
141
|
readonly ATTRIBUTE_NODE: 2;
|
|
141
142
|
readonly TEXT_NODE: 3;
|
|
@@ -157,6 +158,8 @@ declare const CDSActionableNotification_base: {
|
|
|
157
158
|
dispatchEvent(event: Event): boolean;
|
|
158
159
|
ariaAtomic: string | null;
|
|
159
160
|
ariaAutoComplete: string | null;
|
|
161
|
+
ariaBrailleLabel: string | null;
|
|
162
|
+
ariaBrailleRoleDescription: string | null;
|
|
160
163
|
ariaBusy: string | null;
|
|
161
164
|
ariaChecked: string | null;
|
|
162
165
|
ariaColCount: string | null;
|
|
@@ -194,12 +197,12 @@ declare const CDSActionableNotification_base: {
|
|
|
194
197
|
ariaValueNow: string | null;
|
|
195
198
|
ariaValueText: string | null;
|
|
196
199
|
role: string | null;
|
|
197
|
-
animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions
|
|
198
|
-
getAnimations(options?: GetAnimationsOptions
|
|
199
|
-
after(...nodes: (
|
|
200
|
-
before(...nodes: (
|
|
200
|
+
animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions): Animation;
|
|
201
|
+
getAnimations(options?: GetAnimationsOptions): Animation[];
|
|
202
|
+
after(...nodes: (Node | string)[]): void;
|
|
203
|
+
before(...nodes: (Node | string)[]): void;
|
|
201
204
|
remove(): void;
|
|
202
|
-
replaceWith(...nodes: (
|
|
205
|
+
replaceWith(...nodes: (Node | string)[]): void;
|
|
203
206
|
innerHTML: string;
|
|
204
207
|
readonly nextElementSibling: Element | null;
|
|
205
208
|
readonly previousElementSibling: Element | null;
|
|
@@ -207,19 +210,19 @@ declare const CDSActionableNotification_base: {
|
|
|
207
210
|
readonly children: HTMLCollection;
|
|
208
211
|
readonly firstElementChild: Element | null;
|
|
209
212
|
readonly lastElementChild: Element | null;
|
|
210
|
-
append(...nodes: (
|
|
211
|
-
prepend(...nodes: (
|
|
212
|
-
querySelector<
|
|
213
|
-
querySelector<
|
|
214
|
-
querySelector<
|
|
215
|
-
querySelector<
|
|
216
|
-
querySelector<
|
|
217
|
-
querySelectorAll<
|
|
218
|
-
querySelectorAll<
|
|
219
|
-
querySelectorAll<
|
|
220
|
-
querySelectorAll<
|
|
221
|
-
querySelectorAll<
|
|
222
|
-
replaceChildren(...nodes: (
|
|
213
|
+
append(...nodes: (Node | string)[]): void;
|
|
214
|
+
prepend(...nodes: (Node | string)[]): void;
|
|
215
|
+
querySelector<K extends keyof HTMLElementTagNameMap>(selectors: K): HTMLElementTagNameMap[K] | null;
|
|
216
|
+
querySelector<K extends keyof SVGElementTagNameMap>(selectors: K): SVGElementTagNameMap[K] | null;
|
|
217
|
+
querySelector<K extends keyof MathMLElementTagNameMap>(selectors: K): MathMLElementTagNameMap[K] | null;
|
|
218
|
+
querySelector<K extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K): HTMLElementDeprecatedTagNameMap[K] | null;
|
|
219
|
+
querySelector<E extends Element = Element>(selectors: string): E | null;
|
|
220
|
+
querySelectorAll<K extends keyof HTMLElementTagNameMap>(selectors: K): NodeListOf<HTMLElementTagNameMap[K]>;
|
|
221
|
+
querySelectorAll<K extends keyof SVGElementTagNameMap>(selectors: K): NodeListOf<SVGElementTagNameMap[K]>;
|
|
222
|
+
querySelectorAll<K extends keyof MathMLElementTagNameMap>(selectors: K): NodeListOf<MathMLElementTagNameMap[K]>;
|
|
223
|
+
querySelectorAll<K extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K): NodeListOf<HTMLElementDeprecatedTagNameMap[K]>;
|
|
224
|
+
querySelectorAll<E extends Element = Element>(selectors: string): NodeListOf<E>;
|
|
225
|
+
replaceChildren(...nodes: (Node | string)[]): void;
|
|
223
226
|
readonly assignedSlot: HTMLSlotElement | null;
|
|
224
227
|
readonly attributeStyleMap: StylePropertyMap;
|
|
225
228
|
readonly style: CSSStyleDeclaration;
|
|
@@ -290,7 +293,7 @@ declare const CDSActionableNotification_base: {
|
|
|
290
293
|
onpointerout: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|
|
291
294
|
onpointerover: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|
|
292
295
|
onpointerup: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|
|
293
|
-
onprogress: ((this: GlobalEventHandlers, ev: ProgressEvent
|
|
296
|
+
onprogress: ((this: GlobalEventHandlers, ev: ProgressEvent) => any) | null;
|
|
294
297
|
onratechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
|
|
295
298
|
onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null;
|
|
296
299
|
onresize: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
|
|
@@ -325,15 +328,15 @@ declare const CDSActionableNotification_base: {
|
|
|
325
328
|
onwheel: ((this: GlobalEventHandlers, ev: WheelEvent) => any) | null;
|
|
326
329
|
autofocus: boolean;
|
|
327
330
|
readonly dataset: DOMStringMap;
|
|
328
|
-
nonce?: string
|
|
331
|
+
nonce?: string;
|
|
329
332
|
tabIndex: number;
|
|
330
333
|
blur(): void;
|
|
331
|
-
focus(options?: FocusOptions
|
|
334
|
+
focus(options?: FocusOptions): void;
|
|
332
335
|
};
|
|
333
336
|
_hostListeners: {
|
|
334
337
|
[listenerName: string]: {
|
|
335
338
|
[type: string]: {
|
|
336
|
-
options?: boolean | AddEventListenerOptions
|
|
339
|
+
options?: boolean | AddEventListenerOptions;
|
|
337
340
|
};
|
|
338
341
|
};
|
|
339
342
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionable-notification.js","names":["CheckmarkFilled20","ErrorFilled20","InformationFilled20","InformationSquareFilled20","WarningFilled20","WarningAltFilled20","html","svg","property","customElement","prefix","NOTIFICATION_TYPE","NOTIFICATION_KIND","CDSInlineNotification","styles","HostListener","HostListenerMixin","iconsForKinds","SUCCESS","INFO","INFO_SQUARE","WARNING","WARNING_ALT","ERROR","CDSActionableNotification","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","ACTIONABLE","decorators","type","Boolean","reflect","String","attribute","event","closeOnEscape","open","connectedCallback","hasAttribute","setAttribute","_get","_getPrototypeOf","prototype","call","_renderIcon","statusIconDescription","inline","icon","undefined","class","children","_t","_","_renderText","subtitle","title","_type","_t2","updated","changedProperties","button","querySelector","selectorActionButton","has","lowContrast","removeAttribute","hideCloseButton","hasFocus","focus","render","_t3","_renderButton","static"],"sources":["components/notification/actionable-notification.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport CheckmarkFilled20 from '@carbon/icons/lib/checkmark--filled/20';\nimport ErrorFilled20 from '@carbon/icons/lib/error--filled/20';\nimport InformationFilled20 from '@carbon/icons/lib/information--filled/20';\nimport InformationSquareFilled20 from '@carbon/icons/lib/information--square--filled/20';\nimport WarningFilled20 from '@carbon/icons/lib/warning--filled/20';\nimport WarningAltFilled20 from '@carbon/icons/lib/warning--alt--filled/20';\nimport { html, svg } from 'lit';\nimport { property, customElement } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NOTIFICATION_TYPE, NOTIFICATION_KIND } from './defs';\nimport CDSInlineNotification from './inline-notification';\nimport styles from './actionable-notification.scss';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\n\n/**\n * The default icons, keyed by notification kind.\n */\nconst iconsForKinds = {\n [NOTIFICATION_KIND.SUCCESS]: CheckmarkFilled20,\n [NOTIFICATION_KIND.INFO]: InformationFilled20,\n [NOTIFICATION_KIND.INFO_SQUARE]: InformationSquareFilled20,\n [NOTIFICATION_KIND.WARNING]: WarningFilled20,\n [NOTIFICATION_KIND.WARNING_ALT]: WarningAltFilled20,\n [NOTIFICATION_KIND.ERROR]: ErrorFilled20,\n};\n\n/**\n * Actionable notification.\n *\n * @element cds-actionable-notification\n * @slot subtitle - The subtitle.\n * @slot title - The title.\n * @fires cds-notification-beingclosed\n * The custom event fired before this notification is being closed upon a user gesture.\n * Cancellation of this event stops the user-initiated action of closing this notification.\n * @fires cds-notification-closed - The custom event fired after this notification is closed upon a user gesture.\n */\n@customElement(`${prefix}-actionable-notification`)\nclass CDSActionableNotification extends HostListenerMixin(\n CDSInlineNotification\n) {\n protected _type = NOTIFICATION_TYPE.ACTIONABLE;\n\n /**\n * Inline notification type.\n */\n @property({ type: Boolean, reflect: true })\n inline = false;\n\n /**\n * Pass in the action button label that will be rendered within the ActionableNotification.\n */\n @property({ type: String, reflect: true, attribute: 'action-button-label' })\n actionButtonLabel = '';\n\n /**\n * Specify if pressing the escape key should close notifications\n */\n @property({ type: Boolean, reflect: true, attribute: 'close-on-escape' })\n closeOnEscape = true;\n\n /**\n * Specify if focus should be moved to the component when the notification contains actions\n */\n @property({ type: Boolean, reflect: true, attribute: 'has-focus' })\n hasFocus = true;\n\n /**\n * Handles `keydown` event on this event.\n * Escape will close the notification if `closeOnEscape` is true\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeyDown = async (event: KeyboardEvent) => {\n const { key } = event;\n if (this.closeOnEscape && key === 'Escape') {\n this.open = false;\n }\n };\n\n connectedCallback() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'alertdialog');\n }\n super.connectedCallback();\n }\n\n protected _renderIcon() {\n const { statusIconDescription, kind, inline } = this;\n const { [kind]: icon } = iconsForKinds;\n return !icon\n ? undefined\n : icon({\n class: `${prefix}--${inline ? 'inline' : 'toast'}-notification__icon`,\n children: !statusIconDescription\n ? undefined\n : svg`<title>${statusIconDescription}</title>`,\n });\n }\n\n protected _renderText() {\n const { subtitle, title, _type: type } = this;\n return html`\n <div class=\"${prefix}--${type}-notification__text-wrapper\">\n <div class=\"${prefix}--${type}-notification__content\">\n <div class=\"${prefix}--${type}-notification__title\">\n ${title}<slot name=\"title\"></slot>\n </div>\n <div class=\"${prefix}--${type}-notification__subtitle\">\n ${subtitle}<slot name=\"subtitle\"></slot>\n </div>\n <slot></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The caption.\n */\n @property()\n caption = '';\n\n updated(changedProperties) {\n super.updated(changedProperties);\n const button = this.querySelector(\n (this.constructor as typeof CDSActionableNotification)\n .selectorActionButton\n );\n if (changedProperties.has('inline')) {\n button?.setAttribute('kind', this.inline ? 'ghost' : 'tertiary');\n }\n if (changedProperties.has('lowContrast')) {\n if (this.lowContrast) {\n button?.setAttribute('low-contrast', 'true');\n } else {\n button?.removeAttribute('low-contrast');\n }\n }\n if (changedProperties.has('hideCloseButton')) {\n if (this.hideCloseButton) {\n button?.setAttribute('hide-close-button', 'true');\n } else {\n button?.removeAttribute('hide-close-button');\n }\n }\n if (changedProperties.has('hasFocus')) {\n if (this.hasFocus) {\n this.focus();\n }\n }\n }\n\n render() {\n const { _type: type } = this;\n return html`\n <div class=\"${prefix}--${type}-notification__details\">\n ${this._renderIcon()} ${this._renderText()}\n </div>\n <slot name=\"action\"></slot>\n ${this._renderButton()}\n `;\n }\n\n /**\n * A selector that will return the action button element\n */\n static get selectorActionButton() {\n return `${prefix}-actionable-notification-button`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSActionableNotification;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"actionable-notification.js","names":["CheckmarkFilled20","ErrorFilled20","InformationFilled20","InformationSquareFilled20","WarningFilled20","WarningAltFilled20","html","svg","property","customElement","prefix","NOTIFICATION_TYPE","NOTIFICATION_KIND","CDSInlineNotification","styles","HostListener","HostListenerMixin","iconsForKinds","SUCCESS","INFO","INFO_SQUARE","WARNING","WARNING_ALT","ERROR","CDSActionableNotification","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","ACTIONABLE","decorators","type","Boolean","reflect","String","attribute","event","closeOnEscape","open","connectedCallback","hasAttribute","setAttribute","_get","_getPrototypeOf","prototype","call","_renderIcon","statusIconDescription","inline","icon","undefined","class","children","_t","_","_renderText","subtitle","title","_type","_t2","updated","changedProperties","button","querySelector","selectorActionButton","has","lowContrast","removeAttribute","hideCloseButton","hasFocus","focus","render","_t3","_renderButton","static"],"sources":["components/notification/actionable-notification.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport CheckmarkFilled20 from '@carbon/icons/lib/checkmark--filled/20';\nimport ErrorFilled20 from '@carbon/icons/lib/error--filled/20';\nimport InformationFilled20 from '@carbon/icons/lib/information--filled/20';\nimport InformationSquareFilled20 from '@carbon/icons/lib/information--square--filled/20';\nimport WarningFilled20 from '@carbon/icons/lib/warning--filled/20';\nimport WarningAltFilled20 from '@carbon/icons/lib/warning--alt--filled/20';\nimport { html, svg } from 'lit';\nimport { property, customElement } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NOTIFICATION_TYPE, NOTIFICATION_KIND } from './defs';\nimport CDSInlineNotification from './inline-notification';\nimport styles from './actionable-notification.scss';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\n\n/**\n * The default icons, keyed by notification kind.\n */\nconst iconsForKinds = {\n [NOTIFICATION_KIND.SUCCESS]: CheckmarkFilled20,\n [NOTIFICATION_KIND.INFO]: InformationFilled20,\n [NOTIFICATION_KIND.INFO_SQUARE]: InformationSquareFilled20,\n [NOTIFICATION_KIND.WARNING]: WarningFilled20,\n [NOTIFICATION_KIND.WARNING_ALT]: WarningAltFilled20,\n [NOTIFICATION_KIND.ERROR]: ErrorFilled20,\n};\n\n/**\n * Actionable notification.\n *\n * @element cds-actionable-notification\n * @slot subtitle - The subtitle.\n * @slot title - The title.\n * @fires cds-notification-beingclosed\n * The custom event fired before this notification is being closed upon a user gesture.\n * Cancellation of this event stops the user-initiated action of closing this notification.\n * @fires cds-notification-closed - The custom event fired after this notification is closed upon a user gesture.\n */\n@customElement(`${prefix}-actionable-notification`)\nclass CDSActionableNotification extends HostListenerMixin(\n CDSInlineNotification\n) {\n protected _type = NOTIFICATION_TYPE.ACTIONABLE;\n\n /**\n * Inline notification type.\n */\n @property({ type: Boolean, reflect: true })\n inline = false;\n\n /**\n * Pass in the action button label that will be rendered within the ActionableNotification.\n */\n @property({ type: String, reflect: true, attribute: 'action-button-label' })\n actionButtonLabel = '';\n\n /**\n * Specify if pressing the escape key should close notifications\n */\n @property({ type: Boolean, reflect: true, attribute: 'close-on-escape' })\n closeOnEscape = true;\n\n /**\n * Specify if focus should be moved to the component when the notification contains actions\n */\n @property({ type: Boolean, reflect: true, attribute: 'has-focus' })\n hasFocus = true;\n\n /**\n * Handles `keydown` event on this event.\n * Escape will close the notification if `closeOnEscape` is true\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeyDown = async (event: KeyboardEvent) => {\n const { key } = event;\n if (this.closeOnEscape && key === 'Escape') {\n this.open = false;\n }\n };\n\n connectedCallback() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'alertdialog');\n }\n super.connectedCallback();\n }\n\n protected _renderIcon() {\n const { statusIconDescription, kind, inline } = this;\n const { [kind]: icon } = iconsForKinds;\n return !icon\n ? undefined\n : icon({\n class: `${prefix}--${inline ? 'inline' : 'toast'}-notification__icon`,\n children: !statusIconDescription\n ? undefined\n : svg`<title>${statusIconDescription}</title>`,\n });\n }\n\n protected _renderText() {\n const { subtitle, title, _type: type } = this;\n return html`\n <div class=\"${prefix}--${type}-notification__text-wrapper\">\n <div class=\"${prefix}--${type}-notification__content\">\n <div class=\"${prefix}--${type}-notification__title\">\n ${title}<slot name=\"title\"></slot>\n </div>\n <div class=\"${prefix}--${type}-notification__subtitle\">\n ${subtitle}<slot name=\"subtitle\"></slot>\n </div>\n <slot></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The caption.\n */\n @property()\n caption = '';\n\n updated(changedProperties) {\n super.updated(changedProperties);\n const button = this.querySelector(\n (this.constructor as typeof CDSActionableNotification)\n .selectorActionButton\n );\n if (changedProperties.has('inline')) {\n button?.setAttribute('kind', this.inline ? 'ghost' : 'tertiary');\n }\n if (changedProperties.has('lowContrast')) {\n if (this.lowContrast) {\n button?.setAttribute('low-contrast', 'true');\n } else {\n button?.removeAttribute('low-contrast');\n }\n }\n if (changedProperties.has('hideCloseButton')) {\n if (this.hideCloseButton) {\n button?.setAttribute('hide-close-button', 'true');\n } else {\n button?.removeAttribute('hide-close-button');\n }\n }\n if (changedProperties.has('hasFocus')) {\n if (this.hasFocus) {\n this.focus();\n }\n }\n }\n\n render() {\n const { _type: type } = this;\n return html`\n <div class=\"${prefix}--${type}-notification__details\">\n ${this._renderIcon()} ${this._renderText()}\n </div>\n <slot name=\"action\"></slot>\n ${this._renderButton()}\n `;\n }\n\n /**\n * A selector that will return the action button element\n */\n static get selectorActionButton() {\n return `${prefix}-actionable-notification-button`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSActionableNotification;\n"],"mappings":"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","ignoreList":[]}
|