@carbon/web-components 2.43.0 → 2.44.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/custom-elements.json +8 -15
- package/dist/accordion.min.js +3 -3
- package/dist/ai-label.min.js +3 -3
- package/dist/ai-skeleton.min.js +3 -3
- package/dist/badge-indicator.min.js +3 -3
- package/dist/breadcrumb.min.js +6 -6
- package/dist/{button-eTloXzqX.js → button-CKgb4gp4.js} +4 -3
- package/dist/{button-skeleton-Dk3chlBc.js → button-skeleton-CXiEp3M8.js} +3 -3
- package/dist/button.min.js +3 -3
- package/dist/chat-button.min.js +3 -3
- package/dist/{checkbox-cr5-wvt1.js → checkbox-cQAHKwqU.js} +3 -3
- package/dist/checkbox.min.js +3 -3
- package/dist/{class-map-CJoc5JjN.js → class-map-warKt-hW.js} +3 -3
- package/dist/code-snippet.min.js +3 -3
- package/dist/combo-box.min.js +20 -9
- package/dist/combo-button.min.js +3 -3
- package/dist/{content-switcher-item-3fTDI2Aq.js → content-switcher-item-Cvkk1snv.js} +3 -3
- package/dist/content-switcher.min.js +3 -3
- package/dist/copy-button.min.js +3 -3
- package/dist/data-table.min.js +3 -3
- package/dist/date-picker.min.js +3 -3
- package/dist/dropdown-item-BHkaXms6.js +100 -0
- package/dist/dropdown.min.js +6 -10
- package/dist/feature-flags.min.js +3 -3
- package/dist/file-uploader.min.js +3 -3
- package/dist/floating-menu.min.js +3 -3
- package/dist/fluid-search.min.js +3 -3
- package/dist/fluid-select.min.js +3 -3
- package/dist/fluid-text-input.min.js +3 -3
- package/dist/fluid-textarea.min.js +3 -3
- package/dist/{focus-yD1Q_pDt.js → focus-Bwk_lgHl.js} +3 -3
- package/dist/{form-BaYTr2z0.js → form-CfvlKX6g.js} +3 -3
- package/dist/form-group.min.js +3 -3
- package/dist/form.min.js +3 -3
- package/dist/grid.min.js +3 -3
- package/dist/heading.min.js +3 -3
- package/dist/{host-listener-BJsBtsIt.js → host-listener-DJH6yN4y.js} +3 -3
- package/dist/icon-button.min.js +3 -3
- package/dist/icon-indicator.min.js +3 -3
- package/dist/{icon-loader-CqB9WRMP.js → icon-loader-pxyCrZwZ.js} +3 -3
- package/dist/{icon-loader-utils-DUl0vwdh.js → icon-loader-utils-lPqg1iFP.js} +3 -3
- package/dist/icon.min.js +3 -3
- package/dist/{if-defined-IxozbDOJ.js → if-defined-zhGxRN9M.js} +3 -3
- package/dist/{if-non-empty-CqQHBHdQ.js → if-non-empty-CTDui88C.js} +3 -3
- package/dist/inline-loading.min.js +4 -4
- package/dist/layer.min.js +3 -3
- package/dist/link.min.js +3 -3
- package/dist/list.min.js +3 -3
- package/dist/{loading-icon-CSgLYhyw.js → loading-icon-DfL1aC0N.js} +3 -3
- package/dist/loading.min.js +3 -3
- package/dist/menu-button.min.js +3 -3
- package/dist/menu.min.js +3 -3
- package/dist/modal.min.js +3 -3
- package/dist/multi-select.min.js +4 -3
- package/dist/notification.min.js +3 -3
- package/dist/number-input.min.js +3 -3
- package/dist/overflow-menu.min.js +3 -3
- package/dist/page-header.min.js +3 -3
- package/dist/pagination.min.js +3 -3
- package/dist/password-input.min.js +3 -3
- package/dist/popover.min.js +3 -3
- package/dist/progress-bar.min.js +3 -3
- package/dist/progress-indicator.min.js +3 -3
- package/dist/{property-B_F7V5eB.js → property-CoShOfqo.js} +3 -3
- package/dist/{query-assigned-elements-DeMmXVMb.js → query-assigned-elements-DvdLJjH_.js} +3 -3
- package/dist/radio-button.min.js +3 -3
- package/dist/{search-DhwzN9sI.js → search-mXlboHWm.js} +3 -3
- package/dist/search.min.js +3 -3
- package/dist/{select-BIi12O8B.js → select-BLrQXy2c.js} +4 -3
- package/dist/{select-item-Be7OL9mD.js → select-item-CMDCy7c6.js} +3 -3
- package/dist/{select-skeleton-8uIIQzNt.js → select-skeleton-D_qjQ9lZ.js} +3 -3
- package/dist/select.min.js +3 -3
- package/dist/shape-indicator.min.js +3 -3
- package/dist/side-panel.min.js +3 -3
- package/dist/skeleton-icon.min.js +3 -3
- package/dist/skeleton-placeholder.min.js +3 -3
- package/dist/skeleton-text.min.js +3 -3
- package/dist/skip-to-content.min.js +3 -3
- package/dist/slider.min.js +3 -3
- package/dist/slug.min.js +3 -3
- package/dist/stack.min.js +3 -3
- package/dist/{state-CJQmj6wG.js → state-D7rtIkB2.js} +3 -3
- package/dist/structured-list.min.js +3 -3
- package/dist/tabs.min.js +3 -3
- package/dist/tag.min.js +3 -3
- package/dist/tearsheet.min.js +3 -3
- package/dist/{text-input-C0qeKR9e.js → text-input-CIM-jSOC.js} +3 -3
- package/dist/text-input.min.js +3 -3
- package/dist/textarea.min.js +3 -3
- package/dist/tile.min.js +3 -3
- package/dist/time-picker.min.js +3 -3
- package/dist/toggle-tip.min.js +3 -3
- package/dist/toggle.min.js +3 -3
- package/dist/{tooltip-content-CMbdEoxb.js → tooltip-content-D25Rgp9z.js} +3 -3
- package/dist/tooltip.min.js +3 -3
- package/dist/tree-view.min.js +3 -3
- package/dist/ui-shell.min.js +3 -3
- package/dist/{unsafe-html-Dqv0UqC_.js → unsafe-html-C26Gpb7O.js} +3 -3
- package/es/components/ai-label/ai-label.scss.js +1 -1
- package/es/components/breadcrumb/breadcrumb.scss.js +1 -1
- package/es/components/button/button.js +1 -0
- package/es/components/button/button.js.map +1 -1
- package/es/components/combo-box/combo-box-item.d.ts +10 -1
- package/es/components/combo-box/combo-box-item.js +65 -1
- package/es/components/combo-box/combo-box-item.js.map +1 -1
- package/es/components/combo-box/combo-box.d.ts +6 -9
- package/es/components/combo-box/combo-box.js +108 -65
- package/es/components/combo-box/combo-box.js.map +1 -1
- package/es/components/combo-box/combo-box.scss.js +1 -1
- package/es/components/data-table/data-table.scss.js +1 -1
- package/es/components/dropdown/dropdown-skeleton.d.ts +10 -1
- package/es/components/dropdown/dropdown-skeleton.js +31 -7
- package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
- package/es/components/dropdown/dropdown.d.ts +41 -7
- package/es/components/dropdown/dropdown.js +438 -65
- package/es/components/dropdown/dropdown.js.map +1 -1
- package/es/components/dropdown/dropdown.scss.js +1 -1
- package/es/components/icon-button/icon-button.scss.js +1 -1
- package/es/components/inline-loading/inline-loading.js +1 -1
- package/es/components/inline-loading/inline-loading.js.map +1 -1
- package/es/components/inline-loading/inline-loading.scss.js +1 -1
- package/es/components/multi-select/multi-select.d.ts +13 -1
- package/es/components/multi-select/multi-select.js +53 -0
- package/es/components/multi-select/multi-select.js.map +1 -1
- package/es/components/multi-select/multi-select.scss.js +1 -1
- package/es/components/popover/popover.scss.js +1 -1
- package/es/components/select/select.js +1 -0
- package/es/components/select/select.js.map +1 -1
- package/es/components/slug/slug.scss.js +1 -1
- package/es/components/toggle-tip/toggletip.scss.js +1 -1
- package/es/components/tooltip/tooltip.js +1 -1
- package/es/components/tooltip/tooltip.js.map +1 -1
- package/es/components/tooltip/tooltip.scss.js +1 -1
- package/es-custom/components/ai-label/ai-label.scss.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb.scss.js +1 -1
- package/es-custom/components/button/button.js +1 -0
- package/es-custom/components/button/button.js.map +1 -1
- package/es-custom/components/combo-box/combo-box-item.d.ts +10 -1
- package/es-custom/components/combo-box/combo-box-item.js +65 -1
- package/es-custom/components/combo-box/combo-box-item.js.map +1 -1
- package/es-custom/components/combo-box/combo-box.d.ts +6 -9
- package/es-custom/components/combo-box/combo-box.js +108 -65
- package/es-custom/components/combo-box/combo-box.js.map +1 -1
- package/es-custom/components/combo-box/combo-box.scss.js +1 -1
- package/es-custom/components/data-table/data-table.scss.js +1 -1
- package/es-custom/components/dropdown/dropdown-skeleton.d.ts +10 -1
- package/es-custom/components/dropdown/dropdown-skeleton.js +31 -7
- package/es-custom/components/dropdown/dropdown-skeleton.js.map +1 -1
- package/es-custom/components/dropdown/dropdown.d.ts +41 -7
- package/es-custom/components/dropdown/dropdown.js +438 -65
- package/es-custom/components/dropdown/dropdown.js.map +1 -1
- package/es-custom/components/dropdown/dropdown.scss.js +1 -1
- package/es-custom/components/icon-button/icon-button.scss.js +1 -1
- package/es-custom/components/inline-loading/inline-loading.js +1 -1
- package/es-custom/components/inline-loading/inline-loading.js.map +1 -1
- package/es-custom/components/inline-loading/inline-loading.scss.js +1 -1
- package/es-custom/components/multi-select/multi-select.d.ts +13 -1
- package/es-custom/components/multi-select/multi-select.js +53 -0
- package/es-custom/components/multi-select/multi-select.js.map +1 -1
- package/es-custom/components/multi-select/multi-select.scss.js +1 -1
- package/es-custom/components/popover/popover.scss.js +1 -1
- package/es-custom/components/select/select.js +1 -0
- package/es-custom/components/select/select.js.map +1 -1
- package/es-custom/components/slug/slug.scss.js +1 -1
- package/es-custom/components/toggle-tip/toggletip.scss.js +1 -1
- package/es-custom/components/tooltip/tooltip.js +1 -1
- package/es-custom/components/tooltip/tooltip.js.map +1 -1
- package/es-custom/components/tooltip/tooltip.scss.js +1 -1
- package/lib/components/combo-box/combo-box-item.d.ts +10 -1
- package/lib/components/combo-box/combo-box.d.ts +6 -9
- package/lib/components/dropdown/dropdown-skeleton.d.ts +10 -1
- package/lib/components/dropdown/dropdown.d.ts +41 -7
- package/lib/components/multi-select/multi-select.d.ts +13 -1
- package/package.json +6 -6
- package/scss/components/breadcrumb/breadcrumb.scss +1 -3
- package/scss/components/combo-box/combo-box.scss +72 -3
- package/scss/components/data-table/_table-core.scss +10 -0
- package/scss/components/data-table/_table-expandable.scss +6 -0
- package/scss/components/data-table/_table-selection.scss +7 -0
- package/scss/components/data-table/_table-sizes.scss +4 -0
- package/scss/components/data-table/data-table.scss +6 -9
- package/scss/components/dropdown/dropdown.scss +174 -22
- package/scss/components/menu/menu-variables.scss +0 -2
- package/scss/components/menu/menu.scss +1 -1
- package/scss/components/multi-select/multi-select.scss +7 -0
- package/scss/components/overflow-menu/overflow-menu.scss +0 -2
- package/scss/components/popover/popover.scss +58 -11
- package/scss/components/tooltip/tooltip-story.scss +8 -4
- package/telemetry.yml +0 -1
- package/dist/dropdown-item-BO7AhHPd.js +0 -96
- package/dist/{16-DhAznVKm.js → 16-5c5jFrXp.js} +2 -2
- package/dist/{16-B7MRS_3W.js → 16-B9Uo1cvh.js} +2 -2
- package/dist/{16-BWlgPBcu.js → 16-BMXNUlRI.js} +2 -2
- package/dist/{16-CdxGkvXO.js → 16-C-j0eQg7.js} +2 -2
- package/dist/{16-CJNlj_0b.js → 16-CZiCF7iO.js} +2 -2
- package/dist/{16-DoN7q01_.js → 16-CmZExt83.js} +2 -2
- package/dist/{16-DTvjc9uv.js → 16-DbvtK9-e.js} +2 -2
- package/dist/{16-GKRs-ALp.js → 16-INlZq7cB.js} +2 -2
- package/dist/{16-B46MLj4i.js → 16-dlAJdf7K.js} +2 -2
- package/dist/{16-B3Yskhl0.js → 16-tP236nqZ.js} +2 -2
- package/dist/{16-Bf2P7KMJ.js → 16-u6yXz6wM.js} +2 -2
- package/dist/{16-Bxm7Omxq.js → 16-vHbYZhS2.js} +2 -2
- package/dist/{20-CuEbZLGA.js → 20-ClE5EQkn.js} +2 -2
- package/dist/{20-DlknbFYR.js → 20-seUgpuwc.js} +2 -2
- package/dist/{carbon-element-DDrYm3XO.js → carbon-element-sn5DFO1t.js} +2 -2
- package/dist/{collection-helpers-C5emLOnk.js → collection-helpers-DwvpKeJx.js} +2 -2
- package/dist/{consume-BeeFGGfo.js → consume-C6px77x6.js} +2 -2
- package/dist/{directive-Dlo2OKiC.js → directive-CwtBJVHj.js} +2 -2
- package/dist/{floating-controller-DLpRVhGd.js → floating-controller-qGN47tO7.js} +2 -2
- package/dist/{host-listener-BCnAWDV7.js → host-listener-6VuJ4xzb.js} +2 -2
- package/dist/{lit-element-eFlPHqE1.js → lit-element-ljyXx2IF.js} +2 -2
- package/dist/{on-DvnWS_DB.js → on-CsYzs_5y.js} +2 -2
- package/dist/{query-BdmT5Ln1.js → query-BpyCOA3I.js} +2 -2
- package/dist/{radio-group-manager-B_pENWmT.js → radio-group-manager-DCfD4e6U.js} +2 -2
- package/dist/{settings-BBN_bDP6.js → settings-BYFrjJ1N.js} +2 -2
- package/dist/{shared-enums-D8TrS6Ts.js → shared-enums-BhRvRKoR.js} +2 -2
- package/dist/{validity-BUGyJDQ6.js → validity-wk0CEz9X.js} +2 -2
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright IBM Corp. 2019,
|
|
2
|
+
* Copyright IBM Corp. 2019, 2025
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
+
import type { PropertyValues } from 'lit';
|
|
7
8
|
import CDSDropdownItem from '../dropdown/dropdown-item';
|
|
8
9
|
/**
|
|
9
10
|
* Combo box item.
|
|
@@ -11,6 +12,14 @@ import CDSDropdownItem from '../dropdown/dropdown-item';
|
|
|
11
12
|
* @element cds-combo-box-item
|
|
12
13
|
*/
|
|
13
14
|
declare class CDSComboBoxItem extends CDSDropdownItem {
|
|
15
|
+
private _nextSiblingRefs;
|
|
16
|
+
private _handleMouseEnter;
|
|
17
|
+
private _handleMouseLeave;
|
|
18
|
+
connectedCallback(): void;
|
|
19
|
+
disconnectedCallback(): void;
|
|
20
|
+
private _getNextItem;
|
|
21
|
+
private _syncNextSibling;
|
|
22
|
+
protected updated(changedProperties: PropertyValues): void;
|
|
14
23
|
static styles: any;
|
|
15
24
|
}
|
|
16
25
|
export default CDSComboBoxItem;
|
|
@@ -57,14 +57,14 @@ declare class CDSComboBox extends CDSDropdown {
|
|
|
57
57
|
* @returns `true` if the given combo box item matches the given query text.
|
|
58
58
|
*/
|
|
59
59
|
protected _defaultItemMatches(item: CDSComboBoxItem, queryText: string): boolean;
|
|
60
|
-
connectedCallback(): void;
|
|
61
60
|
/**
|
|
62
61
|
* Handles `input` event on the `<input>` for filtering.
|
|
63
62
|
*/
|
|
64
|
-
protected _handleInput(
|
|
65
|
-
protected _removeAutoCompleteSuggestion(): void;
|
|
63
|
+
protected _handleInput(): void;
|
|
66
64
|
protected _filterItems(items: NodeListOf<Element>, queryText: string, rawQueryText: string): number;
|
|
67
65
|
protected _scrollItemIntoView(item: HTMLElement): void;
|
|
66
|
+
protected _getSelectedItem(): CDSComboBoxItem | null;
|
|
67
|
+
protected _revertInputToSelected(focus?: boolean): void;
|
|
68
68
|
protected _handleInputKeydown(event: KeyboardEvent): void;
|
|
69
69
|
protected _handleClickInner(event: MouseEvent): void;
|
|
70
70
|
protected _handleKeypressInner(event: KeyboardEvent): void;
|
|
@@ -76,6 +76,7 @@ declare class CDSComboBox extends CDSDropdown {
|
|
|
76
76
|
protected _selectionDidChange(itemToSelect?: CDSComboBoxItem): void;
|
|
77
77
|
protected _renderLabel(): TemplateResult;
|
|
78
78
|
protected _renderFollowingLabel(): TemplateResult | void;
|
|
79
|
+
protected _renderTitleLabel(): TemplateResult;
|
|
79
80
|
/**
|
|
80
81
|
* The `aria-label` attribute for the icon to clear selection.
|
|
81
82
|
*/
|
|
@@ -89,15 +90,11 @@ declare class CDSComboBox extends CDSDropdown {
|
|
|
89
90
|
*/
|
|
90
91
|
itemMatches: (item: CDSComboBoxItem, queryText: string) => boolean;
|
|
91
92
|
/**
|
|
92
|
-
* Provide custom filtering behavior.
|
|
93
|
-
* `typeahead` is enabled and will default to `true`
|
|
93
|
+
* Provide custom filtering behavior.
|
|
94
94
|
*/
|
|
95
95
|
shouldFilterItem: boolean | ShouldFilterItem;
|
|
96
|
-
/**
|
|
97
|
-
* **Experimental**: will enable autocomplete and typeahead for the input field
|
|
98
|
-
*/
|
|
99
|
-
typeahead: boolean;
|
|
100
96
|
shouldUpdate(changedProperties: any): boolean;
|
|
97
|
+
protected _clearInputWithoutSelecting(focus?: boolean): void;
|
|
101
98
|
updated(changedProperties: any): void;
|
|
102
99
|
protected _resetFilteredItems(): void;
|
|
103
100
|
static TRIGGER_KEYS: Set<string>;
|
|
@@ -1,14 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright IBM Corp. 2019,
|
|
2
|
+
* Copyright IBM Corp. 2019, 2025
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
import { LitElement } from 'lit';
|
|
8
|
+
import { DROPDOWN_SIZE } from './defs';
|
|
8
9
|
/**
|
|
9
10
|
* Skeleton version of dropdown.
|
|
10
11
|
*/
|
|
11
12
|
declare class CDSDropdownSkeleton extends LitElement {
|
|
13
|
+
/**
|
|
14
|
+
* Specify whether the label should be hidden, or not.
|
|
15
|
+
*/
|
|
16
|
+
hideLabel: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Specify the size of the ListBox.
|
|
19
|
+
*/
|
|
20
|
+
size: DROPDOWN_SIZE;
|
|
12
21
|
render(): import("lit-html").TemplateResult<1>;
|
|
13
22
|
static styles: any;
|
|
14
23
|
}
|
|
@@ -1463,6 +1463,14 @@ declare class CDSDropdown extends CDSDropdown_base {
|
|
|
1463
1463
|
* `true` if there is an AI Label.
|
|
1464
1464
|
*/
|
|
1465
1465
|
protected _hasAILabel: boolean;
|
|
1466
|
+
/**
|
|
1467
|
+
* Currently slotted AI decorator nodes (`cds-ai-label`/slug) with listeners attached.
|
|
1468
|
+
*/
|
|
1469
|
+
private _aiDecoratorNodes;
|
|
1470
|
+
/**
|
|
1471
|
+
* Handles interaction on an AI decorator while the menu is open.
|
|
1472
|
+
*/
|
|
1473
|
+
private _handleAIDecoratorInteraction;
|
|
1466
1474
|
protected _activeDescendant?: string;
|
|
1467
1475
|
/**
|
|
1468
1476
|
* The content of the selected item.
|
|
@@ -1508,8 +1516,20 @@ declare class CDSDropdown extends CDSDropdown_base {
|
|
|
1508
1516
|
* Handler for the `keydown` event on the top-level element in the shadow DOM.
|
|
1509
1517
|
*/
|
|
1510
1518
|
protected _handleKeydownInner(event: KeyboardEvent): void;
|
|
1519
|
+
private _handleMenuInputKeydown;
|
|
1520
|
+
protected _shouldClearMenuInputOnEscape({ menuOpen, }: {
|
|
1521
|
+
event: KeyboardEvent;
|
|
1522
|
+
menuOpen: boolean;
|
|
1523
|
+
isInputTarget: boolean;
|
|
1524
|
+
}): boolean;
|
|
1525
|
+
protected get _supportsMenuInputFiltering(): boolean;
|
|
1526
|
+
protected get _menuInputNode(): HTMLInputElement | null;
|
|
1527
|
+
protected _clearMenuInputFiltering(): void;
|
|
1528
|
+
private _shouldForwardKeyToMenuInput;
|
|
1529
|
+
private _forwardKeyToMenuInput;
|
|
1530
|
+
private _shouldRetainMenuInputFocus;
|
|
1511
1531
|
/**
|
|
1512
|
-
*
|
|
1532
|
+
* Handles keypress events (Space, Enter)
|
|
1513
1533
|
*/
|
|
1514
1534
|
protected _handleKeypressInner(event: KeyboardEvent): void;
|
|
1515
1535
|
/**
|
|
@@ -1517,6 +1537,8 @@ declare class CDSDropdown extends CDSDropdown_base {
|
|
|
1517
1537
|
*
|
|
1518
1538
|
* @param event The event.
|
|
1519
1539
|
*/
|
|
1540
|
+
protected _handleMouseoverInner(event: MouseEvent): void;
|
|
1541
|
+
protected _handleMouseleaveInner(event: MouseEvent): void;
|
|
1520
1542
|
protected _handleFocusOut(event: FocusEvent): void;
|
|
1521
1543
|
/**
|
|
1522
1544
|
* Handles `slotchange` event for the `<slot>` for helper text.
|
|
@@ -1530,27 +1552,39 @@ declare class CDSDropdown extends CDSDropdown_base {
|
|
|
1530
1552
|
* Handles `slotchange` event.
|
|
1531
1553
|
*/
|
|
1532
1554
|
protected _handleAILabelSlotChange({ target }: Event): void;
|
|
1555
|
+
disconnectedCallback(): void;
|
|
1556
|
+
/**
|
|
1557
|
+
* Updates listeners for AI decorator nodes to ensure only one menu stays open.
|
|
1558
|
+
*/
|
|
1559
|
+
private _updateAIDecoratorListeners;
|
|
1533
1560
|
/**
|
|
1534
1561
|
* Handles user-initiated selection of a dropdown item.
|
|
1535
1562
|
*
|
|
1536
1563
|
* @param [item] The dropdown item user wants to select. Absense of this argument means clearing selection.
|
|
1537
1564
|
*/
|
|
1538
1565
|
protected _handleUserInitiatedSelectItem(item?: CDSDropdownItem): void;
|
|
1566
|
+
protected _shouldCloseAfterSelection(_item?: CDSDropdownItem): boolean;
|
|
1539
1567
|
/**
|
|
1540
1568
|
* Handles user-initiated toggling the open state.
|
|
1541
1569
|
*
|
|
1542
1570
|
* @param [force] If specified, forces the open state to the given one.
|
|
1543
1571
|
*/
|
|
1544
|
-
protected _handleUserInitiatedToggle(force?: boolean
|
|
1572
|
+
protected _handleUserInitiatedToggle(force?: boolean, { restoreTriggerFocus, focusMenu, highlightSelectedOnOpen, }?: {
|
|
1573
|
+
restoreTriggerFocus?: boolean;
|
|
1574
|
+
focusMenu?: boolean;
|
|
1575
|
+
highlightSelectedOnOpen?: boolean;
|
|
1576
|
+
}): void;
|
|
1545
1577
|
/**
|
|
1546
1578
|
* Clears the selection of dropdown items.
|
|
1547
1579
|
*/
|
|
1548
1580
|
protected _clearHighlight(): void;
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1581
|
+
protected _getDropdownItemFromEvent(event: Event): CDSDropdownItem | null;
|
|
1582
|
+
protected _setHighlightedItem(item?: CDSDropdownItem | null, { scrollIntoView }?: {
|
|
1583
|
+
scrollIntoView?: boolean;
|
|
1584
|
+
}): void;
|
|
1585
|
+
protected _getNextDropdownItem(item: CDSDropdownItem): CDSDropdownItem | null;
|
|
1586
|
+
protected _updateSelectedNextSibling(item?: CDSDropdownItem | null): void;
|
|
1587
|
+
protected _highlightSelectedItem(): void;
|
|
1554
1588
|
protected _navigate(direction: number): void;
|
|
1555
1589
|
/**
|
|
1556
1590
|
* @returns The content preceding the trigger button.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import { TemplateResult } from 'lit';
|
|
7
|
+
import { PropertyValues, TemplateResult } from 'lit';
|
|
8
8
|
import CDSDropdown from '../dropdown/dropdown';
|
|
9
9
|
import { SELECTION_FEEDBACK_OPTION } from './defs';
|
|
10
10
|
import CDSMultiSelectItem from './multi-select-item';
|
|
@@ -42,17 +42,29 @@ declare class CDSMultiSelect extends CDSDropdown {
|
|
|
42
42
|
* The `<input>` for filtering.
|
|
43
43
|
*/
|
|
44
44
|
private _filterInputNode;
|
|
45
|
+
protected get _supportsMenuInputFiltering(): boolean;
|
|
46
|
+
protected willUpdate(changedProperties: PropertyValues): void;
|
|
47
|
+
protected get _menuInputNode(): HTMLInputElement | null;
|
|
48
|
+
protected _clearMenuInputFiltering(): void;
|
|
49
|
+
protected _shouldClearMenuInputOnEscape({ menuOpen, isInputTarget, }: {
|
|
50
|
+
event: KeyboardEvent;
|
|
51
|
+
menuOpen: boolean;
|
|
52
|
+
isInputTarget: boolean;
|
|
53
|
+
}): boolean;
|
|
45
54
|
/**
|
|
46
55
|
* The trigger button.
|
|
47
56
|
*/
|
|
48
57
|
private _triggerNode;
|
|
49
58
|
protected _selectionShouldChange(itemToSelect?: CDSMultiSelectItem): boolean;
|
|
50
59
|
protected _selectionDidChange(itemToSelect?: CDSMultiSelectItem): void;
|
|
60
|
+
protected _shouldCloseAfterSelection(item?: CDSMultiSelectItem): item is undefined;
|
|
51
61
|
protected _handleClickInner(event: MouseEvent): void;
|
|
52
62
|
/**
|
|
53
63
|
* Handler for the `keypress` event, ensures filter still works upon entering space
|
|
54
64
|
*/
|
|
55
65
|
protected _handleKeypressInner(event: KeyboardEvent): void;
|
|
66
|
+
protected _handleMouseoverInner(event: MouseEvent): void;
|
|
67
|
+
protected _handleMouseleaveInner(event: MouseEvent): void;
|
|
56
68
|
/**
|
|
57
69
|
* Special andler for the `keypress` event, ensures space selection for filterable
|
|
58
70
|
* variation is disabled
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carbon/web-components",
|
|
3
3
|
"description": "Web components for the Carbon Design System",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.44.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "es/index.js",
|
|
7
7
|
"module": "es/index.js",
|
|
@@ -67,7 +67,8 @@
|
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
69
|
"@carbon/icon-helpers": "10.47.0",
|
|
70
|
-
"@carbon/
|
|
70
|
+
"@carbon/icons": "^11.71.0",
|
|
71
|
+
"@carbon/styles": "^1.96.0",
|
|
71
72
|
"@floating-ui/dom": "^1.6.3",
|
|
72
73
|
"@ibm/telemetry-js": "^1.10.2",
|
|
73
74
|
"@lit/context": "^1.1.3",
|
|
@@ -77,9 +78,8 @@
|
|
|
77
78
|
"tslib": "^2.6.3"
|
|
78
79
|
},
|
|
79
80
|
"devDependencies": {
|
|
80
|
-
"@carbon/
|
|
81
|
-
"@carbon/
|
|
82
|
-
"@carbon/motion": "^11.37.0",
|
|
81
|
+
"@carbon/layout": "^11.44.0",
|
|
82
|
+
"@carbon/motion": "^11.38.0",
|
|
83
83
|
"@juggle/resize-observer": "^3.4.0",
|
|
84
84
|
"@mordech/vite-lit-loader": "^0.37.0",
|
|
85
85
|
"@open-wc/testing": "^4.0.0",
|
|
@@ -130,5 +130,5 @@
|
|
|
130
130
|
}
|
|
131
131
|
]
|
|
132
132
|
},
|
|
133
|
-
"gitHead": "
|
|
133
|
+
"gitHead": "4a42de3036ca693bf2c6477e917824982fafd7af"
|
|
134
134
|
}
|
|
@@ -5,15 +5,13 @@
|
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
6
6
|
//
|
|
7
7
|
|
|
8
|
-
$css--plex: true !default;
|
|
9
|
-
|
|
10
8
|
@use '@carbon/styles/scss/config' as *;
|
|
11
9
|
@use '@carbon/styles/scss/spacing' as *;
|
|
12
10
|
@use '@carbon/styles/scss/theme' as *;
|
|
13
11
|
@use '@carbon/styles/scss/motion' as *;
|
|
14
12
|
@use '@carbon/styles/scss/utilities' as *;
|
|
15
13
|
@use '@carbon/styles/scss/components/breadcrumb';
|
|
16
|
-
@
|
|
14
|
+
@use '../overflow-menu/overflow-menu';
|
|
17
15
|
|
|
18
16
|
:host(#{$prefix}-breadcrumb),
|
|
19
17
|
:host(#{$prefix}-breadcrumb-skeleton) {
|
|
@@ -11,6 +11,7 @@ $css--plex: true !default;
|
|
|
11
11
|
@use '@carbon/styles/scss/spacing' as *;
|
|
12
12
|
@use '@carbon/styles/scss/theme' as *;
|
|
13
13
|
@use '@carbon/styles/scss/utilities' as *;
|
|
14
|
+
@use '@carbon/styles/scss/utilities/focus-outline' as *;
|
|
14
15
|
@use '@carbon/styles/scss/utilities/convert' as *;
|
|
15
16
|
@use '@carbon/styles/scss/layout' as *;
|
|
16
17
|
@use '@carbon/styles/scss/components/combo-box' as *;
|
|
@@ -41,6 +42,11 @@ $css--plex: true !default;
|
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
|
|
45
|
+
:host(#{$prefix}-combo-box) .#{$prefix}--text-input--highlighted-outline {
|
|
46
|
+
outline: 1px solid $focus;
|
|
47
|
+
outline-offset: -1px;
|
|
48
|
+
}
|
|
49
|
+
|
|
44
50
|
:host(#{$prefix}-combo-box[disabled]),
|
|
45
51
|
:host(#{$prefix}-combo-box[read-only]) {
|
|
46
52
|
.#{$prefix}--list-box__selection {
|
|
@@ -68,29 +74,70 @@ $css--plex: true !default;
|
|
|
68
74
|
.#{$prefix}--list-box__menu-item__option {
|
|
69
75
|
block-size: auto;
|
|
70
76
|
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
:host(#{$prefix}-combo-box-item:not([disabled]):hover) {
|
|
80
|
+
background-color: $layer-hover;
|
|
81
|
+
}
|
|
71
82
|
|
|
72
|
-
|
|
73
|
-
|
|
83
|
+
:host(#{$prefix}-combo-box-item:first-of-type)
|
|
84
|
+
.#{$prefix}--list-box__menu-item__option {
|
|
85
|
+
border-block-start-color: transparent;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
:host(#{$prefix}-combo-box-item:first-of-type[highlighted]) {
|
|
89
|
+
@include focus-outline('reset');
|
|
90
|
+
|
|
91
|
+
&::before {
|
|
92
|
+
position: absolute;
|
|
93
|
+
border: 2px solid $focus;
|
|
94
|
+
block-size: 100%;
|
|
95
|
+
border-block-start: 1px solid $focus;
|
|
96
|
+
content: '';
|
|
97
|
+
inline-size: 100%;
|
|
98
|
+
inset-block-start: 0;
|
|
99
|
+
inset-inline-start: 0;
|
|
100
|
+
pointer-events: none;
|
|
74
101
|
}
|
|
75
102
|
}
|
|
76
103
|
|
|
104
|
+
:host(#{$prefix}-combo-box-item[highlighted-next-sibling]),
|
|
105
|
+
:host(#{$prefix}-combo-box-item[hovered-next-sibling])
|
|
106
|
+
.#{$prefix}--list-box__menu-item__option {
|
|
107
|
+
border-block-start-color: transparent;
|
|
108
|
+
}
|
|
109
|
+
|
|
77
110
|
:host(#{$prefix}-combo-box-item[disabled]) {
|
|
111
|
+
cursor: not-allowed;
|
|
112
|
+
|
|
78
113
|
.#{$prefix}--list-box__menu-item__option {
|
|
79
114
|
color: $text-disabled;
|
|
80
115
|
cursor: not-allowed;
|
|
116
|
+
pointer-events: none;
|
|
81
117
|
text-decoration: none;
|
|
82
118
|
}
|
|
83
119
|
}
|
|
84
120
|
|
|
121
|
+
:host(#{$prefix}-combo-box-item[disabled][highlighted-next-sibling]:hover),
|
|
122
|
+
:host(#{$prefix}-combo-box-item[disabled][hovered-next-sibling]:hover)
|
|
123
|
+
.#{$prefix}--list-box__menu-item__option {
|
|
124
|
+
border-block-start-color: $border-subtle;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
:host(#{$prefix}-combo-box-item[disabled]:hover)
|
|
128
|
+
.#{$prefix}--list-box__menu-item__option {
|
|
129
|
+
border-block-start-color: $border-subtle-01;
|
|
130
|
+
}
|
|
131
|
+
|
|
85
132
|
:host(#{$prefix}-combo-box-item[highlighted]) {
|
|
86
133
|
@extend .#{$prefix}--list-box__menu-item--highlighted;
|
|
87
134
|
}
|
|
88
135
|
|
|
89
136
|
:host(#{$prefix}-combo-box-item[selected]) {
|
|
90
137
|
@extend .#{$prefix}--list-box__menu-item--active;
|
|
91
|
-
@extend .#{$prefix}--list-box__menu-item--highlighted;
|
|
92
138
|
|
|
93
139
|
.#{$prefix}--list-box__menu-item__option {
|
|
140
|
+
border-block-start-color: transparent;
|
|
94
141
|
color: $text-primary;
|
|
95
142
|
}
|
|
96
143
|
|
|
@@ -99,6 +146,16 @@ $css--plex: true !default;
|
|
|
99
146
|
}
|
|
100
147
|
}
|
|
101
148
|
|
|
149
|
+
:host(#{$prefix}-combo-box-item[selected-next-sibling])
|
|
150
|
+
.#{$prefix}--list-box__menu-item__option {
|
|
151
|
+
border-block-start-color: transparent;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
:host(#{$prefix}-combo-box-item[disabled][selected-next-sibling]:hover)
|
|
155
|
+
.#{$prefix}--list-box__menu-item__option {
|
|
156
|
+
border-block-start-color: $border-subtle;
|
|
157
|
+
}
|
|
158
|
+
|
|
102
159
|
:host(#{$prefix}-combo-box-item[size='sm']) {
|
|
103
160
|
block-size: $spacing-07;
|
|
104
161
|
|
|
@@ -115,6 +172,18 @@ $css--plex: true !default;
|
|
|
115
172
|
}
|
|
116
173
|
}
|
|
117
174
|
|
|
175
|
+
:host(#{$prefix}-combo-box[size='sm']) {
|
|
176
|
+
.#{$prefix}--list-box__menu-icon {
|
|
177
|
+
inset-block: $spacing-02;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
:host(#{$prefix}-combo-box[size='lg']) {
|
|
182
|
+
.#{$prefix}--list-box__menu-icon {
|
|
183
|
+
inset-block: $spacing-04;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
118
187
|
:host(#{$prefix}-combo-box[ai-label]) {
|
|
119
188
|
@extend .#{$prefix}--list-box__wrapper--slug;
|
|
120
189
|
|
|
@@ -5,6 +5,16 @@
|
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
6
6
|
//
|
|
7
7
|
|
|
8
|
+
@use '@carbon/styles/scss/config' as *;
|
|
9
|
+
@use '@carbon/styles/scss/utilities' as *;
|
|
10
|
+
@use '@carbon/styles/scss/spacing' as *;
|
|
11
|
+
@use '@carbon/styles/scss/motion' as *;
|
|
12
|
+
@use '@carbon/styles/scss/theme' as *;
|
|
13
|
+
@use '@carbon/styles/scss/type' as *;
|
|
14
|
+
@use '@carbon/styles/scss/breakpoint' as *;
|
|
15
|
+
@use '@carbon/styles/scss/utilities/ai-gradient' as *;
|
|
16
|
+
@use '@carbon/styles/scss/components/data-table';
|
|
17
|
+
|
|
8
18
|
//
|
|
9
19
|
// Table header and table body
|
|
10
20
|
//
|
|
@@ -5,6 +5,12 @@
|
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
6
6
|
//
|
|
7
7
|
|
|
8
|
+
@use '@carbon/styles/scss/config' as *;
|
|
9
|
+
@use '@carbon/styles/scss/spacing' as *;
|
|
10
|
+
@use '@carbon/styles/scss/motion' as *;
|
|
11
|
+
@use '@carbon/styles/scss/theme' as *;
|
|
12
|
+
@use '@carbon/styles/scss/utilities/ai-gradient' as *;
|
|
13
|
+
|
|
8
14
|
:host(#{$prefix}-table-expanded-row) {
|
|
9
15
|
display: table-row;
|
|
10
16
|
block-size: 0;
|
|
@@ -5,6 +5,13 @@
|
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
6
6
|
//
|
|
7
7
|
|
|
8
|
+
@use '@carbon/styles/scss/config' as *;
|
|
9
|
+
@use '@carbon/styles/scss/spacing' as *;
|
|
10
|
+
@use '@carbon/styles/scss/motion' as *;
|
|
11
|
+
@use '@carbon/styles/scss/theme' as *;
|
|
12
|
+
@use '@carbon/styles/scss/components/data-table/vars' as *;
|
|
13
|
+
@use '@carbon/styles/scss/utilities/ai-gradient' as *;
|
|
14
|
+
|
|
8
15
|
//
|
|
9
16
|
// Selection check box
|
|
10
17
|
//
|
|
@@ -16,17 +16,14 @@ $css--plex: true !default;
|
|
|
16
16
|
@use '@carbon/styles/scss/utilities/convert' as *;
|
|
17
17
|
@use '@carbon/styles/scss/utilities/ai-gradient' as *;
|
|
18
18
|
@use '@carbon/styles/scss/components/checkbox';
|
|
19
|
-
|
|
20
19
|
@use '@carbon/styles/scss/components/data-table' as *;
|
|
21
20
|
@use '@carbon/styles/scss/components/link' as *;
|
|
22
|
-
|
|
23
21
|
@use '@carbon/styles/scss/components/data-table/expandable';
|
|
24
22
|
@use '@carbon/styles/scss/components/data-table/skeleton';
|
|
25
23
|
|
|
26
|
-
|
|
27
|
-
@
|
|
28
|
-
@
|
|
29
|
-
@
|
|
30
|
-
@
|
|
31
|
-
@
|
|
32
|
-
@import 'table-sort';
|
|
24
|
+
@use 'table-action';
|
|
25
|
+
@use 'table-core';
|
|
26
|
+
@use 'table-expandable';
|
|
27
|
+
@use 'table-sizes';
|
|
28
|
+
@use 'table-selection';
|
|
29
|
+
@use 'table-sort';
|