@vaadin/multi-select-combo-box 24.3.0-alpha8 → 24.3.0-beta1
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/package.json +13 -13
- package/src/vaadin-multi-select-combo-box-container.js +6 -5
- package/src/vaadin-multi-select-combo-box-internal.js +26 -22
- package/src/vaadin-multi-select-combo-box.d.ts +17 -10
- package/src/vaadin-multi-select-combo-box.js +87 -26
- package/theme/lumo/vaadin-multi-select-combo-box-styles.js +7 -3
- package/theme/material/vaadin-multi-select-combo-box-styles.js +1 -1
- package/web-types.json +35 -13
- package/web-types.lit.json +14 -7
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vaadin/multi-select-combo-box",
|
|
3
|
-
"version": "24.3.0-
|
|
3
|
+
"version": "24.3.0-beta1",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -37,17 +37,17 @@
|
|
|
37
37
|
],
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@polymer/polymer": "^3.0.0",
|
|
40
|
-
"@vaadin/a11y-base": "24.3.0-
|
|
41
|
-
"@vaadin/combo-box": "24.3.0-
|
|
42
|
-
"@vaadin/component-base": "24.3.0-
|
|
43
|
-
"@vaadin/field-base": "24.3.0-
|
|
44
|
-
"@vaadin/input-container": "24.3.0-
|
|
45
|
-
"@vaadin/item": "24.3.0-
|
|
46
|
-
"@vaadin/lit-renderer": "24.3.0-
|
|
47
|
-
"@vaadin/overlay": "24.3.0-
|
|
48
|
-
"@vaadin/vaadin-lumo-styles": "24.3.0-
|
|
49
|
-
"@vaadin/vaadin-material-styles": "24.3.0-
|
|
50
|
-
"@vaadin/vaadin-themable-mixin": "24.3.0-
|
|
40
|
+
"@vaadin/a11y-base": "24.3.0-beta1",
|
|
41
|
+
"@vaadin/combo-box": "24.3.0-beta1",
|
|
42
|
+
"@vaadin/component-base": "24.3.0-beta1",
|
|
43
|
+
"@vaadin/field-base": "24.3.0-beta1",
|
|
44
|
+
"@vaadin/input-container": "24.3.0-beta1",
|
|
45
|
+
"@vaadin/item": "24.3.0-beta1",
|
|
46
|
+
"@vaadin/lit-renderer": "24.3.0-beta1",
|
|
47
|
+
"@vaadin/overlay": "24.3.0-beta1",
|
|
48
|
+
"@vaadin/vaadin-lumo-styles": "24.3.0-beta1",
|
|
49
|
+
"@vaadin/vaadin-material-styles": "24.3.0-beta1",
|
|
50
|
+
"@vaadin/vaadin-themable-mixin": "24.3.0-beta1"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@esm-bundle/chai": "^4.3.4",
|
|
@@ -59,5 +59,5 @@
|
|
|
59
59
|
"web-types.json",
|
|
60
60
|
"web-types.lit.json"
|
|
61
61
|
],
|
|
62
|
-
"gitHead": "
|
|
62
|
+
"gitHead": "a197041861e1bbf8d3e966d893648f5dd462b036"
|
|
63
63
|
}
|
|
@@ -15,7 +15,7 @@ registerStyles(
|
|
|
15
15
|
width: 100%;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
:host([
|
|
18
|
+
:host([auto-expand-vertically]) #wrapper {
|
|
19
19
|
flex-wrap: wrap;
|
|
20
20
|
}
|
|
21
21
|
`,
|
|
@@ -57,11 +57,12 @@ class MultiSelectComboBoxContainer extends InputContainer {
|
|
|
57
57
|
static get properties() {
|
|
58
58
|
return {
|
|
59
59
|
/**
|
|
60
|
-
* Set true to not collapse selected items chips into the overflow
|
|
61
|
-
* chip and instead always
|
|
62
|
-
*
|
|
60
|
+
* Set to true to not collapse selected items chips into the overflow
|
|
61
|
+
* chip and instead always expand vertically, causing input field to
|
|
62
|
+
* wrap into multiple lines when width is limited.
|
|
63
|
+
* @attr {boolean} auto-expand-vertically
|
|
63
64
|
*/
|
|
64
|
-
|
|
65
|
+
autoExpandVertically: {
|
|
65
66
|
type: Boolean,
|
|
66
67
|
reflectToAttribute: true,
|
|
67
68
|
},
|
|
@@ -60,15 +60,6 @@ class MultiSelectComboBoxInternal extends ComboBoxDataProviderMixin(ComboBoxMixi
|
|
|
60
60
|
notify: true,
|
|
61
61
|
},
|
|
62
62
|
|
|
63
|
-
/**
|
|
64
|
-
* Set to true to group selected items at the top of the overlay.
|
|
65
|
-
* @attr {boolean} group-selected-items
|
|
66
|
-
*/
|
|
67
|
-
groupSelectedItems: {
|
|
68
|
-
type: Boolean,
|
|
69
|
-
value: false,
|
|
70
|
-
},
|
|
71
|
-
|
|
72
63
|
/**
|
|
73
64
|
* When set to `true`, "loading" attribute is set
|
|
74
65
|
* on the host and the overlay element.
|
|
@@ -97,6 +88,15 @@ class MultiSelectComboBoxInternal extends ComboBoxDataProviderMixin(ComboBoxMixi
|
|
|
97
88
|
value: () => [],
|
|
98
89
|
},
|
|
99
90
|
|
|
91
|
+
/**
|
|
92
|
+
* Set to true to group selected items at the top of the overlay.
|
|
93
|
+
* @attr {boolean} selected-items-on-top
|
|
94
|
+
*/
|
|
95
|
+
selectedItemsOnTop: {
|
|
96
|
+
type: Boolean,
|
|
97
|
+
value: false,
|
|
98
|
+
},
|
|
99
|
+
|
|
100
100
|
/**
|
|
101
101
|
* Last input value entered by the user before value is updated.
|
|
102
102
|
* Used to store `filter` property value before clearing it.
|
|
@@ -165,25 +165,27 @@ class MultiSelectComboBoxInternal extends ComboBoxDataProviderMixin(ComboBoxMixi
|
|
|
165
165
|
* @override
|
|
166
166
|
*/
|
|
167
167
|
_setDropdownItems(items) {
|
|
168
|
-
if (this.readonly
|
|
169
|
-
this._dropdownItems =
|
|
168
|
+
if (this.readonly) {
|
|
169
|
+
this._dropdownItems = this.selectedItems;
|
|
170
170
|
return;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
if (this.
|
|
174
|
-
|
|
175
|
-
|
|
173
|
+
if (this.filter || !this.selectedItemsOnTop) {
|
|
174
|
+
this._dropdownItems = items;
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
176
177
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
}
|
|
183
|
-
});
|
|
178
|
+
if (items && items.length && this.topGroup && this.topGroup.length) {
|
|
179
|
+
// Filter out items included to the top group.
|
|
180
|
+
const filteredItems = items.filter(
|
|
181
|
+
(item) => this._comboBox._findIndex(item, this.topGroup, this.itemIdPath) === -1,
|
|
182
|
+
);
|
|
184
183
|
|
|
185
|
-
this._dropdownItems =
|
|
184
|
+
this._dropdownItems = this.topGroup.concat(filteredItems);
|
|
185
|
+
return;
|
|
186
186
|
}
|
|
187
|
+
|
|
188
|
+
this._dropdownItems = items;
|
|
187
189
|
}
|
|
188
190
|
|
|
189
191
|
/** @private */
|
|
@@ -204,6 +206,8 @@ class MultiSelectComboBoxInternal extends ComboBoxDataProviderMixin(ComboBoxMixi
|
|
|
204
206
|
_initScroller() {
|
|
205
207
|
const comboBox = this.getRootNode().host;
|
|
206
208
|
|
|
209
|
+
this._comboBox = comboBox;
|
|
210
|
+
|
|
207
211
|
super._initScroller(comboBox);
|
|
208
212
|
}
|
|
209
213
|
|
|
@@ -172,13 +172,20 @@ export interface MultiSelectComboBoxEventMap<TItem> extends HTMLElementEventMap
|
|
|
172
172
|
* @fires {CustomEvent} validated - Fired whenever the field is validated.
|
|
173
173
|
*/
|
|
174
174
|
declare class MultiSelectComboBox<TItem = ComboBoxDefaultItem> extends HTMLElement {
|
|
175
|
+
/**
|
|
176
|
+
* Set to true to auto expand horizontally, causing input field to
|
|
177
|
+
* grow until max width is reached.
|
|
178
|
+
* @attr {boolean} auto-expand-horizontally
|
|
179
|
+
*/
|
|
180
|
+
autoExpandHorizontally: boolean;
|
|
181
|
+
|
|
175
182
|
/**
|
|
176
183
|
* Set to true to not collapse selected items chips into the overflow
|
|
177
|
-
* chip and instead always
|
|
178
|
-
*
|
|
179
|
-
* @attr {boolean}
|
|
184
|
+
* chip and instead always expand vertically, causing input field to
|
|
185
|
+
* wrap into multiple lines when width is limited.
|
|
186
|
+
* @attr {boolean} auto-expand-vertically
|
|
180
187
|
*/
|
|
181
|
-
|
|
188
|
+
autoExpandVertically: boolean;
|
|
182
189
|
|
|
183
190
|
/**
|
|
184
191
|
* When true, the user can input a value that is not present in the items list.
|
|
@@ -218,12 +225,6 @@ declare class MultiSelectComboBox<TItem = ComboBoxDefaultItem> extends HTMLEleme
|
|
|
218
225
|
*/
|
|
219
226
|
filter: string;
|
|
220
227
|
|
|
221
|
-
/**
|
|
222
|
-
* Set to true to group selected items at the top of the overlay.
|
|
223
|
-
* @attr {boolean} group-selected-items
|
|
224
|
-
*/
|
|
225
|
-
groupSelectedItems: boolean;
|
|
226
|
-
|
|
227
228
|
/**
|
|
228
229
|
* A full set of items to filter the visible options from.
|
|
229
230
|
* The items can be of either `String` or `Object` type.
|
|
@@ -322,6 +323,12 @@ declare class MultiSelectComboBox<TItem = ComboBoxDefaultItem> extends HTMLEleme
|
|
|
322
323
|
*/
|
|
323
324
|
selectedItems: TItem[];
|
|
324
325
|
|
|
326
|
+
/**
|
|
327
|
+
* Set to true to group selected items at the top of the overlay.
|
|
328
|
+
* @attr {boolean} selected-items-on-top
|
|
329
|
+
*/
|
|
330
|
+
selectedItemsOnTop: boolean;
|
|
331
|
+
|
|
325
332
|
/**
|
|
326
333
|
* Total number of items.
|
|
327
334
|
*/
|
|
@@ -47,12 +47,12 @@ const multiSelectComboBox = css`
|
|
|
47
47
|
padding: 0;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
:host([
|
|
50
|
+
:host([auto-expand-vertically]) #chips {
|
|
51
51
|
display: contents;
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
:host([
|
|
55
|
-
width:
|
|
54
|
+
:host([auto-expand-horizontally]) [class$='container'] {
|
|
55
|
+
width: auto;
|
|
56
56
|
}
|
|
57
57
|
`;
|
|
58
58
|
|
|
@@ -175,7 +175,7 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
175
175
|
size="{{size}}"
|
|
176
176
|
filtered-items="[[__effectiveFilteredItems]]"
|
|
177
177
|
selected-items="[[selectedItems]]"
|
|
178
|
-
|
|
178
|
+
selected-items-on-top="[[selectedItemsOnTop]]"
|
|
179
179
|
top-group="[[_topGroup]]"
|
|
180
180
|
opened="{{opened}}"
|
|
181
181
|
renderer="[[renderer]]"
|
|
@@ -187,7 +187,7 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
187
187
|
>
|
|
188
188
|
<vaadin-multi-select-combo-box-container
|
|
189
189
|
part="input-field"
|
|
190
|
-
|
|
190
|
+
auto-expand-vertically="[[autoExpandVertically]]"
|
|
191
191
|
readonly="[[readonly]]"
|
|
192
192
|
disabled="[[disabled]]"
|
|
193
193
|
invalid="[[invalid]]"
|
|
@@ -224,17 +224,29 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
224
224
|
|
|
225
225
|
static get properties() {
|
|
226
226
|
return {
|
|
227
|
+
/**
|
|
228
|
+
* Set to true to auto expand horizontally, causing input field to
|
|
229
|
+
* grow until max width is reached.
|
|
230
|
+
* @attr {boolean} auto-expand-horizontally
|
|
231
|
+
*/
|
|
232
|
+
autoExpandHorizontally: {
|
|
233
|
+
type: Boolean,
|
|
234
|
+
value: false,
|
|
235
|
+
reflectToAttribute: true,
|
|
236
|
+
observer: '_autoExpandHorizontallyChanged',
|
|
237
|
+
},
|
|
238
|
+
|
|
227
239
|
/**
|
|
228
240
|
* Set to true to not collapse selected items chips into the overflow
|
|
229
|
-
* chip and instead always
|
|
230
|
-
*
|
|
231
|
-
* @attr {boolean}
|
|
241
|
+
* chip and instead always expand vertically, causing input field to
|
|
242
|
+
* wrap into multiple lines when width is limited.
|
|
243
|
+
* @attr {boolean} auto-expand-vertically
|
|
232
244
|
*/
|
|
233
|
-
|
|
245
|
+
autoExpandVertically: {
|
|
234
246
|
type: Boolean,
|
|
235
247
|
value: false,
|
|
236
248
|
reflectToAttribute: true,
|
|
237
|
-
observer: '
|
|
249
|
+
observer: '_autoExpandVerticallyChanged',
|
|
238
250
|
},
|
|
239
251
|
|
|
240
252
|
/**
|
|
@@ -254,15 +266,6 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
254
266
|
value: false,
|
|
255
267
|
},
|
|
256
268
|
|
|
257
|
-
/**
|
|
258
|
-
* Set to true to group selected items at the top of the overlay.
|
|
259
|
-
* @attr {boolean} group-selected-items
|
|
260
|
-
*/
|
|
261
|
-
groupSelectedItems: {
|
|
262
|
-
type: Boolean,
|
|
263
|
-
value: false,
|
|
264
|
-
},
|
|
265
|
-
|
|
266
269
|
/**
|
|
267
270
|
* A full set of items to filter the visible options from.
|
|
268
271
|
* The items can be of either `String` or `Object` type.
|
|
@@ -465,6 +468,15 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
465
468
|
*/
|
|
466
469
|
filteredItems: Array,
|
|
467
470
|
|
|
471
|
+
/**
|
|
472
|
+
* Set to true to group selected items at the top of the overlay.
|
|
473
|
+
* @attr {boolean} selected-items-on-top
|
|
474
|
+
*/
|
|
475
|
+
selectedItemsOnTop: {
|
|
476
|
+
type: Boolean,
|
|
477
|
+
value: false,
|
|
478
|
+
},
|
|
479
|
+
|
|
468
480
|
/** @private */
|
|
469
481
|
value: {
|
|
470
482
|
type: String,
|
|
@@ -511,7 +523,7 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
511
523
|
return [
|
|
512
524
|
'_selectedItemsChanged(selectedItems, selectedItems.*)',
|
|
513
525
|
'__updateOverflowChip(_overflow, _overflowItems, disabled, readonly)',
|
|
514
|
-
'__updateTopGroup(
|
|
526
|
+
'__updateTopGroup(selectedItemsOnTop, selectedItems, opened)',
|
|
515
527
|
];
|
|
516
528
|
}
|
|
517
529
|
|
|
@@ -699,8 +711,15 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
699
711
|
}
|
|
700
712
|
|
|
701
713
|
/** @private */
|
|
702
|
-
|
|
703
|
-
if (
|
|
714
|
+
_autoExpandHorizontallyChanged(autoExpand, oldAutoExpand) {
|
|
715
|
+
if (autoExpand || oldAutoExpand) {
|
|
716
|
+
this.__updateChips();
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
/** @private */
|
|
721
|
+
_autoExpandVerticallyChanged(autoExpand, oldAutoExpand) {
|
|
722
|
+
if (autoExpand || oldAutoExpand) {
|
|
704
723
|
this.__updateChips();
|
|
705
724
|
}
|
|
706
725
|
}
|
|
@@ -783,6 +802,10 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
783
802
|
|
|
784
803
|
// Update selected for dropdown items
|
|
785
804
|
this.requestContentUpdate();
|
|
805
|
+
|
|
806
|
+
if (this.opened) {
|
|
807
|
+
this.$.comboBox.$.overlay._updateOverlayWidth();
|
|
808
|
+
}
|
|
786
809
|
}
|
|
787
810
|
|
|
788
811
|
/** @private */
|
|
@@ -872,8 +895,8 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
872
895
|
}
|
|
873
896
|
|
|
874
897
|
/** @private */
|
|
875
|
-
__updateTopGroup(
|
|
876
|
-
if (!
|
|
898
|
+
__updateTopGroup(selectedItemsOnTop, selectedItems, opened) {
|
|
899
|
+
if (!selectedItemsOnTop) {
|
|
877
900
|
this._topGroup = [];
|
|
878
901
|
} else if (!opened) {
|
|
879
902
|
this._topGroup = [...selectedItems];
|
|
@@ -946,13 +969,51 @@ class MultiSelectComboBox extends ResizeMixin(InputControlMixin(ThemableMixin(El
|
|
|
946
969
|
|
|
947
970
|
const chipMinWidth = parseInt(getComputedStyle(this).getPropertyValue('--_chip-min-width'));
|
|
948
971
|
|
|
972
|
+
if (this.autoExpandHorizontally) {
|
|
973
|
+
const chips = [];
|
|
974
|
+
|
|
975
|
+
// First, add all chips to make the field fully expand
|
|
976
|
+
for (let i = items.length - 1, refNode = null; i >= 0; i--) {
|
|
977
|
+
const chip = this.__createChip(items[i]);
|
|
978
|
+
this.insertBefore(chip, refNode);
|
|
979
|
+
refNode = chip;
|
|
980
|
+
chips.unshift(chip);
|
|
981
|
+
}
|
|
982
|
+
|
|
983
|
+
const overflowItems = [];
|
|
984
|
+
const availableWidth = this._inputField.$.wrapper.clientWidth - this.$.chips.clientWidth;
|
|
985
|
+
|
|
986
|
+
// When auto expanding vertically, no need to measure width
|
|
987
|
+
if (!this.autoExpandVertically && availableWidth < inputWidth) {
|
|
988
|
+
// Always show at least last item as a chip
|
|
989
|
+
while (chips.length > 1) {
|
|
990
|
+
const lastChip = chips.pop();
|
|
991
|
+
lastChip.remove();
|
|
992
|
+
overflowItems.unshift(items.pop());
|
|
993
|
+
|
|
994
|
+
// Remove chips until there is enough width for the input element to fit
|
|
995
|
+
const neededWidth = overflowItems.length > 0 ? inputWidth + this.__getOverflowWidth() : inputWidth;
|
|
996
|
+
if (this._inputField.$.wrapper.clientWidth - this.$.chips.clientWidth >= neededWidth) {
|
|
997
|
+
break;
|
|
998
|
+
}
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
if (chips.length === 1) {
|
|
1002
|
+
chips[0].style.maxWidth = `${Math.max(chipMinWidth, remainingWidth)}px`;
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
this._overflowItems = overflowItems;
|
|
1007
|
+
return;
|
|
1008
|
+
}
|
|
1009
|
+
|
|
949
1010
|
// Add chips until remaining width is exceeded
|
|
950
1011
|
for (let i = items.length - 1, refNode = null; i >= 0; i--) {
|
|
951
1012
|
const chip = this.__createChip(items[i]);
|
|
952
1013
|
this.insertBefore(chip, refNode);
|
|
953
1014
|
|
|
954
|
-
//
|
|
955
|
-
if (!this.
|
|
1015
|
+
// When auto expanding vertically, no need to measure remaining width
|
|
1016
|
+
if (!this.autoExpandVertically && this.$.chips.clientWidth > remainingWidth) {
|
|
956
1017
|
// Always show at least last selected item as a chip
|
|
957
1018
|
if (refNode === null) {
|
|
958
1019
|
chip.style.maxWidth = `${Math.max(chipMinWidth, remainingWidth)}px`;
|
|
@@ -51,7 +51,7 @@ registerStyles(
|
|
|
51
51
|
registerStyles(
|
|
52
52
|
'vaadin-multi-select-combo-box-container',
|
|
53
53
|
css`
|
|
54
|
-
:host([
|
|
54
|
+
:host([auto-expand-vertically]) {
|
|
55
55
|
padding-block: var(--lumo-space-xs);
|
|
56
56
|
}
|
|
57
57
|
`,
|
|
@@ -67,6 +67,10 @@ const multiSelectComboBox = css`
|
|
|
67
67
|
caret-color: var(--lumo-body-text-color) !important;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
+
[part='label'] {
|
|
71
|
+
flex-shrink: 0;
|
|
72
|
+
}
|
|
73
|
+
|
|
70
74
|
/* Override input-container styles */
|
|
71
75
|
::slotted([slot='chip']),
|
|
72
76
|
::slotted([slot='overflow']) {
|
|
@@ -77,7 +81,7 @@ const multiSelectComboBox = css`
|
|
|
77
81
|
mask-image: none;
|
|
78
82
|
}
|
|
79
83
|
|
|
80
|
-
:host([
|
|
84
|
+
:host([auto-expand-vertically]) ::slotted([slot='chip']) {
|
|
81
85
|
margin-block: calc(var(--lumo-space-xs) / 2);
|
|
82
86
|
}
|
|
83
87
|
|
|
@@ -85,7 +89,7 @@ const multiSelectComboBox = css`
|
|
|
85
89
|
padding-inline-end: 0;
|
|
86
90
|
}
|
|
87
91
|
|
|
88
|
-
:host([
|
|
92
|
+
:host([auto-expand-vertically]) ::slotted([slot='input']) {
|
|
89
93
|
min-height: calc(var(--lumo-text-field-size, var(--lumo-size-m)) - 2 * var(--lumo-space-xs));
|
|
90
94
|
}
|
|
91
95
|
|
package/web-types.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/web-types",
|
|
3
3
|
"name": "@vaadin/multi-select-combo-box",
|
|
4
|
-
"version": "24.3.0-
|
|
4
|
+
"version": "24.3.0-beta1",
|
|
5
5
|
"description-markup": "markdown",
|
|
6
6
|
"contributions": {
|
|
7
7
|
"html": {
|
|
@@ -198,8 +198,8 @@
|
|
|
198
198
|
}
|
|
199
199
|
},
|
|
200
200
|
{
|
|
201
|
-
"name": "
|
|
202
|
-
"description": "Set to true to
|
|
201
|
+
"name": "auto-expand-horizontally",
|
|
202
|
+
"description": "Set to true to auto expand horizontally, causing input field to\ngrow until max width is reached.",
|
|
203
203
|
"value": {
|
|
204
204
|
"type": [
|
|
205
205
|
"boolean",
|
|
@@ -209,8 +209,8 @@
|
|
|
209
209
|
}
|
|
210
210
|
},
|
|
211
211
|
{
|
|
212
|
-
"name": "auto-
|
|
213
|
-
"description": "Set true to
|
|
212
|
+
"name": "auto-expand-vertically",
|
|
213
|
+
"description": "Set to true to not collapse selected items chips into the overflow\nchip and instead always expand vertically, causing input field to\nwrap into multiple lines when width is limited.",
|
|
214
214
|
"value": {
|
|
215
215
|
"type": [
|
|
216
216
|
"boolean",
|
|
@@ -220,8 +220,8 @@
|
|
|
220
220
|
}
|
|
221
221
|
},
|
|
222
222
|
{
|
|
223
|
-
"name": "
|
|
224
|
-
"description": "Set
|
|
223
|
+
"name": "auto-open-disabled",
|
|
224
|
+
"description": "Set true to prevent the overlay from opening automatically.",
|
|
225
225
|
"value": {
|
|
226
226
|
"type": [
|
|
227
227
|
"boolean",
|
|
@@ -340,6 +340,17 @@
|
|
|
340
340
|
]
|
|
341
341
|
}
|
|
342
342
|
},
|
|
343
|
+
{
|
|
344
|
+
"name": "selected-items-on-top",
|
|
345
|
+
"description": "Set to true to group selected items at the top of the overlay.",
|
|
346
|
+
"value": {
|
|
347
|
+
"type": [
|
|
348
|
+
"boolean",
|
|
349
|
+
"null",
|
|
350
|
+
"undefined"
|
|
351
|
+
]
|
|
352
|
+
}
|
|
353
|
+
},
|
|
343
354
|
{
|
|
344
355
|
"name": "theme",
|
|
345
356
|
"description": "The theme variants to apply to the component.",
|
|
@@ -531,8 +542,8 @@
|
|
|
531
542
|
}
|
|
532
543
|
},
|
|
533
544
|
{
|
|
534
|
-
"name": "
|
|
535
|
-
"description": "Set to true to
|
|
545
|
+
"name": "autoExpandHorizontally",
|
|
546
|
+
"description": "Set to true to auto expand horizontally, causing input field to\ngrow until max width is reached.",
|
|
536
547
|
"value": {
|
|
537
548
|
"type": [
|
|
538
549
|
"boolean",
|
|
@@ -542,8 +553,8 @@
|
|
|
542
553
|
}
|
|
543
554
|
},
|
|
544
555
|
{
|
|
545
|
-
"name": "
|
|
546
|
-
"description": "Set true to
|
|
556
|
+
"name": "autoExpandVertically",
|
|
557
|
+
"description": "Set to true to not collapse selected items chips into the overflow\nchip and instead always expand vertically, causing input field to\nwrap into multiple lines when width is limited.",
|
|
547
558
|
"value": {
|
|
548
559
|
"type": [
|
|
549
560
|
"boolean",
|
|
@@ -553,8 +564,8 @@
|
|
|
553
564
|
}
|
|
554
565
|
},
|
|
555
566
|
{
|
|
556
|
-
"name": "
|
|
557
|
-
"description": "Set
|
|
567
|
+
"name": "autoOpenDisabled",
|
|
568
|
+
"description": "Set true to prevent the overlay from opening automatically.",
|
|
558
569
|
"value": {
|
|
559
570
|
"type": [
|
|
560
571
|
"boolean",
|
|
@@ -736,6 +747,17 @@
|
|
|
736
747
|
"undefined"
|
|
737
748
|
]
|
|
738
749
|
}
|
|
750
|
+
},
|
|
751
|
+
{
|
|
752
|
+
"name": "selectedItemsOnTop",
|
|
753
|
+
"description": "Set to true to group selected items at the top of the overlay.",
|
|
754
|
+
"value": {
|
|
755
|
+
"type": [
|
|
756
|
+
"boolean",
|
|
757
|
+
"null",
|
|
758
|
+
"undefined"
|
|
759
|
+
]
|
|
760
|
+
}
|
|
739
761
|
}
|
|
740
762
|
],
|
|
741
763
|
"events": [
|
package/web-types.lit.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/web-types",
|
|
3
3
|
"name": "@vaadin/multi-select-combo-box",
|
|
4
|
-
"version": "24.3.0-
|
|
4
|
+
"version": "24.3.0-beta1",
|
|
5
5
|
"description-markup": "markdown",
|
|
6
6
|
"framework": "lit",
|
|
7
7
|
"framework-config": {
|
|
@@ -69,22 +69,22 @@
|
|
|
69
69
|
}
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
|
-
"name": "?
|
|
73
|
-
"description": "Set to true to
|
|
72
|
+
"name": "?autoExpandHorizontally",
|
|
73
|
+
"description": "Set to true to auto expand horizontally, causing input field to\ngrow until max width is reached.",
|
|
74
74
|
"value": {
|
|
75
75
|
"kind": "expression"
|
|
76
76
|
}
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
|
-
"name": "?
|
|
80
|
-
"description": "Set true to
|
|
79
|
+
"name": "?autoExpandVertically",
|
|
80
|
+
"description": "Set to true to not collapse selected items chips into the overflow\nchip and instead always expand vertically, causing input field to\nwrap into multiple lines when width is limited.",
|
|
81
81
|
"value": {
|
|
82
82
|
"kind": "expression"
|
|
83
83
|
}
|
|
84
84
|
},
|
|
85
85
|
{
|
|
86
|
-
"name": "?
|
|
87
|
-
"description": "Set
|
|
86
|
+
"name": "?autoOpenDisabled",
|
|
87
|
+
"description": "Set true to prevent the overlay from opening automatically.",
|
|
88
88
|
"value": {
|
|
89
89
|
"kind": "expression"
|
|
90
90
|
}
|
|
@@ -110,6 +110,13 @@
|
|
|
110
110
|
"kind": "expression"
|
|
111
111
|
}
|
|
112
112
|
},
|
|
113
|
+
{
|
|
114
|
+
"name": "?selectedItemsOnTop",
|
|
115
|
+
"description": "Set to true to group selected items at the top of the overlay.",
|
|
116
|
+
"value": {
|
|
117
|
+
"kind": "expression"
|
|
118
|
+
}
|
|
119
|
+
},
|
|
113
120
|
{
|
|
114
121
|
"name": ".label",
|
|
115
122
|
"description": "The label text for the input node.\nWhen no light dom defined via [slot=label], this value will be used.",
|