@progress/kendo-vue-dropdowns 3.6.4 → 3.6.5-dev.202210181442
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/cdn/js/kendo-vue-dropdowns.js +1 -1
- package/dist/es/AutoComplete/AutoComplete.js +49 -92
- package/dist/es/ComboBox/ComboBox.js +88 -162
- package/dist/es/DropDownList/DropDownList.js +99 -154
- package/dist/es/MultiSelect/MultiSelect.js +61 -170
- package/dist/es/MultiSelect/TagList.js +10 -21
- package/dist/es/common/ClearButton.js +0 -2
- package/dist/es/common/DropDownBase.js +18 -78
- package/dist/es/common/List.js +17 -21
- package/dist/es/common/ListContainer.js +16 -18
- package/dist/es/common/ListDefaultItem.js +3 -5
- package/dist/es/common/ListFilter.js +4 -7
- package/dist/es/common/ListItem.js +2 -8
- package/dist/es/common/SearchBar.js +3 -9
- package/dist/es/common/VirtualScroll.js +5 -41
- package/dist/es/package-metadata.js +1 -1
- package/dist/esm/AutoComplete/AutoComplete.js +49 -92
- package/dist/esm/ComboBox/ComboBox.js +88 -162
- package/dist/esm/DropDownList/DropDownList.js +99 -154
- package/dist/esm/MultiSelect/MultiSelect.js +61 -170
- package/dist/esm/MultiSelect/TagList.js +10 -21
- package/dist/esm/common/ClearButton.js +0 -2
- package/dist/esm/common/DropDownBase.js +18 -78
- package/dist/esm/common/List.js +17 -21
- package/dist/esm/common/ListContainer.js +16 -18
- package/dist/esm/common/ListDefaultItem.js +3 -5
- package/dist/esm/common/ListFilter.js +4 -7
- package/dist/esm/common/ListItem.js +2 -8
- package/dist/esm/common/SearchBar.js +3 -9
- package/dist/esm/common/VirtualScroll.js +5 -41
- package/dist/esm/package-metadata.js +1 -1
- package/dist/npm/AutoComplete/AutoComplete.js +49 -101
- package/dist/npm/ComboBox/ComboBox.js +88 -175
- package/dist/npm/DropDownList/DropDownList.js +99 -165
- package/dist/npm/MultiSelect/MultiSelect.js +61 -182
- package/dist/npm/MultiSelect/TagList.js +10 -24
- package/dist/npm/common/ClearButton.js +2 -8
- package/dist/npm/common/DropDownBase.js +18 -84
- package/dist/npm/common/List.js +19 -30
- package/dist/npm/common/ListContainer.js +18 -24
- package/dist/npm/common/ListDefaultItem.js +5 -11
- package/dist/npm/common/ListFilter.js +6 -12
- package/dist/npm/common/ListItem.js +2 -12
- package/dist/npm/common/SearchBar.js +5 -14
- package/dist/npm/common/VirtualScroll.js +5 -41
- package/dist/npm/package-metadata.js +1 -1
- package/package.json +5 -5
|
@@ -2,19 +2,15 @@ var __assign = this && this.__assign || function () {
|
|
|
2
2
|
__assign = Object.assign || function (t) {
|
|
3
3
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
4
|
s = arguments[i];
|
|
5
|
-
|
|
6
5
|
for (var p in s) {
|
|
7
6
|
if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
8
7
|
}
|
|
9
8
|
}
|
|
10
|
-
|
|
11
9
|
return t;
|
|
12
10
|
};
|
|
13
|
-
|
|
14
11
|
return __assign.apply(this, arguments);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
};
|
|
13
|
+
// @ts-ignore
|
|
18
14
|
import * as Vue from 'vue';
|
|
19
15
|
var allVue = Vue;
|
|
20
16
|
var gh = allVue.h;
|
|
@@ -25,7 +21,7 @@ import DropDownBase from '../common/DropDownBase';
|
|
|
25
21
|
import { guid, classNames, Keys, templateRendering, getListeners, getTemplate, kendoThemeMaps, getRef, setRef } from '@progress/kendo-vue-common';
|
|
26
22
|
import { Button as KButton } from '@progress/kendo-vue-buttons';
|
|
27
23
|
var sizeMap = kendoThemeMaps.sizeMap,
|
|
28
|
-
|
|
24
|
+
roundedMap = kendoThemeMaps.roundedMap;
|
|
29
25
|
import { areSame, itemIndexStartsWith, getItemIndexByText, getItemValue, isPresent, suggestValue as _suggestValue } from '../common/utils';
|
|
30
26
|
import { SearchBar } from '../common/SearchBar';
|
|
31
27
|
import { ListContainer } from '../common/ListContainer';
|
|
@@ -37,7 +33,6 @@ var VALIDATION_MESSAGE = 'Please enter a valid value!';
|
|
|
37
33
|
/**
|
|
38
34
|
* @hidden
|
|
39
35
|
*/
|
|
40
|
-
|
|
41
36
|
var ComboBoxVue2 = {
|
|
42
37
|
name: 'KendoComboBox',
|
|
43
38
|
model: {
|
|
@@ -223,8 +218,8 @@ var ComboBoxVue2 = {
|
|
|
223
218
|
};
|
|
224
219
|
},
|
|
225
220
|
mounted: function mounted() {
|
|
226
|
-
this.hasMounted = true;
|
|
227
|
-
|
|
221
|
+
this.hasMounted = true;
|
|
222
|
+
// @ts-ignore
|
|
228
223
|
this.input = this.v3 ? this.inputRef.input : this.$refs.input.input;
|
|
229
224
|
this.base.wrapper = getRef(this, 'kendoAnchor', this.anchor);
|
|
230
225
|
this.element = getRef(this, 'kendoAnchor', this.anchor);
|
|
@@ -233,10 +228,10 @@ var ComboBoxVue2 = {
|
|
|
233
228
|
},
|
|
234
229
|
updated: function updated() {
|
|
235
230
|
var _a = this.$props,
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
231
|
+
_b = _a.dataItems,
|
|
232
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
233
|
+
dataItemKey = _a.dataItemKey,
|
|
234
|
+
virtual = _a.virtual;
|
|
240
235
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
241
236
|
var prevOpened = this.prevOpened !== undefined ? this.prevOpened : this.prevCurrentOpened;
|
|
242
237
|
var opening = !prevOpened && opened;
|
|
@@ -245,24 +240,20 @@ var ComboBoxVue2 = {
|
|
|
245
240
|
var scrollElement = this.$refs.scrollElement;
|
|
246
241
|
var selectedItem = this.computedValue();
|
|
247
242
|
this.valueOnDidUpdate = selectedItem;
|
|
248
|
-
|
|
249
243
|
if (list) {
|
|
250
244
|
// @ts-ignore
|
|
251
|
-
this.base.vs.list = list.list;
|
|
252
|
-
|
|
245
|
+
this.base.vs.list = list.list;
|
|
246
|
+
// @ts-ignore
|
|
253
247
|
this.base.list = list.list;
|
|
254
248
|
}
|
|
255
|
-
|
|
256
249
|
if (scrollElement) {
|
|
257
250
|
this.base.vs.scrollElement = scrollElement;
|
|
258
251
|
}
|
|
259
|
-
|
|
260
252
|
if (list && dataItems.length) {
|
|
261
253
|
// @ts-ignore
|
|
262
254
|
this.base.vs.scrollerRef(list.$el);
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
|
|
255
|
+
}
|
|
256
|
+
// @ts-ignore
|
|
266
257
|
if (virtual && this.virtualTotalHasChanged) {
|
|
267
258
|
this.base.vs.calcScrollElementHeight();
|
|
268
259
|
this.base.vs.reset();
|
|
@@ -273,7 +264,6 @@ var ComboBoxVue2 = {
|
|
|
273
264
|
return areSame(i, selectedItem, dataItemKey);
|
|
274
265
|
});
|
|
275
266
|
var selectedItemChanged = !areSame(prevSelectedItem, selectedItem, dataItemKey);
|
|
276
|
-
|
|
277
267
|
if (opening && virtual) {
|
|
278
268
|
this.base.scrollToVirtualItem(virtual, selectedItemIndex);
|
|
279
269
|
this.prevCurrentOpened = true;
|
|
@@ -284,11 +274,9 @@ var ComboBoxVue2 = {
|
|
|
284
274
|
this.base.scrollToItem(selectedItemIndex);
|
|
285
275
|
}
|
|
286
276
|
}
|
|
287
|
-
|
|
288
277
|
if (opening && this.input) {
|
|
289
278
|
this.input.focus();
|
|
290
279
|
}
|
|
291
|
-
|
|
292
280
|
this.prevCurrentValue = this.computedValue();
|
|
293
281
|
this.setValidity();
|
|
294
282
|
},
|
|
@@ -303,7 +291,6 @@ var ComboBoxVue2 = {
|
|
|
303
291
|
if (newValue && oldValue && newValue.total !== oldValue.total) {
|
|
304
292
|
this.virtualTotalHasChanged = true;
|
|
305
293
|
}
|
|
306
|
-
|
|
307
294
|
this.virtualHasChanged = true;
|
|
308
295
|
}
|
|
309
296
|
},
|
|
@@ -311,11 +298,11 @@ var ComboBoxVue2 = {
|
|
|
311
298
|
index: {
|
|
312
299
|
get: function get() {
|
|
313
300
|
var _a = this.$props,
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
var value = this.computedValue();
|
|
318
|
-
|
|
301
|
+
_b = _a.dataItems,
|
|
302
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
303
|
+
dataItemKey = _a.dataItemKey;
|
|
304
|
+
var value = this.computedValue();
|
|
305
|
+
// TO DO: deprecate it!
|
|
319
306
|
return dataItems.findIndex(function (i) {
|
|
320
307
|
return areSame(i, value, dataItemKey);
|
|
321
308
|
});
|
|
@@ -342,7 +329,6 @@ var ComboBoxVue2 = {
|
|
|
342
329
|
},
|
|
343
330
|
computedValue: function computedValue() {
|
|
344
331
|
var value;
|
|
345
|
-
|
|
346
332
|
if (this.valueDuringOnChange !== undefined) {
|
|
347
333
|
value = this.valueDuringOnChange;
|
|
348
334
|
} else if (this.$props.value !== undefined) {
|
|
@@ -354,7 +340,6 @@ var ComboBoxVue2 = {
|
|
|
354
340
|
} else if (this.$props.defaultValue !== undefined) {
|
|
355
341
|
value = this.$props.defaultValue;
|
|
356
342
|
}
|
|
357
|
-
|
|
358
343
|
return this.valuePrimitive ? this.findByFieldValue(this.valueField, value) || value : value;
|
|
359
344
|
},
|
|
360
345
|
findByFieldValue: function findByFieldValue(field, value) {
|
|
@@ -379,38 +364,35 @@ var ComboBoxVue2 = {
|
|
|
379
364
|
},
|
|
380
365
|
handleItemSelect: function handleItemSelect(index, state) {
|
|
381
366
|
var _a = this.$props,
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
367
|
+
_b = _a.dataItems,
|
|
368
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
369
|
+
virtual = _a.virtual,
|
|
370
|
+
dataItemKey = _a.dataItemKey;
|
|
386
371
|
var skip = virtual ? virtual.skip : 0;
|
|
387
372
|
var item = dataItems[index - skip];
|
|
388
373
|
var newSelected = !areSame(item, this.computedValue(), dataItemKey);
|
|
389
374
|
this.triggerOnChange(item, state);
|
|
390
|
-
|
|
391
375
|
if (this.currentText !== undefined) {
|
|
392
376
|
// @ts-ignore
|
|
393
377
|
state.data.currentText = undefined;
|
|
394
378
|
}
|
|
395
|
-
|
|
396
379
|
if (newSelected) {
|
|
397
380
|
this.base.triggerPageChangeCornerItems(item, state);
|
|
398
381
|
}
|
|
399
382
|
},
|
|
400
383
|
onNavigate: function onNavigate(state, keyCode) {
|
|
401
384
|
var _a = this.$props,
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
385
|
+
_b = _a.dataItems,
|
|
386
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
387
|
+
_c = _a.virtual,
|
|
388
|
+
virtual = _c === void 0 ? {
|
|
389
|
+
skip: 0
|
|
390
|
+
} : _c;
|
|
408
391
|
var text = this.$props.filter ? this.$props.filter : this.currentText;
|
|
409
392
|
var focusedIndex = this.getFocusedIndex();
|
|
410
393
|
var vs = this.base.vs;
|
|
411
394
|
var value = this.computedValue();
|
|
412
395
|
this.suggested = '';
|
|
413
|
-
|
|
414
396
|
if (focusedIndex !== -1 && !isPresent(value)) {
|
|
415
397
|
this.handleItemSelect(focusedIndex, state);
|
|
416
398
|
} else if (text === '') {
|
|
@@ -423,7 +405,6 @@ var ComboBoxVue2 = {
|
|
|
423
405
|
max: (vs.enabled ? vs.total : dataItems.length) - 1,
|
|
424
406
|
min: 0
|
|
425
407
|
});
|
|
426
|
-
|
|
427
408
|
if (newIndex !== undefined) {
|
|
428
409
|
this.handleItemSelect(newIndex, state);
|
|
429
410
|
}
|
|
@@ -437,19 +418,17 @@ var ComboBoxVue2 = {
|
|
|
437
418
|
},
|
|
438
419
|
applyValueOnEnter: function applyValueOnEnter(value, state) {
|
|
439
420
|
var _a;
|
|
440
|
-
|
|
441
421
|
var _b = this.$props,
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
422
|
+
_c = _b.dataItems,
|
|
423
|
+
dataItems = _c === void 0 ? [] : _c,
|
|
424
|
+
textField = _b.textField,
|
|
425
|
+
allowCustom = _b.allowCustom;
|
|
446
426
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
447
427
|
var currentValueText = getItemValue(this.computedValue(), textField);
|
|
448
428
|
var valueIndex = currentValueText === value ? this.index : getItemIndexByText(dataItems, value, textField);
|
|
449
429
|
var itemSelected = valueIndex !== -1;
|
|
450
430
|
var newSelected = undefined;
|
|
451
431
|
this.suggested = '';
|
|
452
|
-
|
|
453
432
|
if (itemSelected) {
|
|
454
433
|
// typed text match item from list
|
|
455
434
|
newSelected = dataItems[valueIndex];
|
|
@@ -461,94 +440,77 @@ var ComboBoxVue2 = {
|
|
|
461
440
|
return this.selectFocusedItem(value, state);
|
|
462
441
|
}
|
|
463
442
|
}
|
|
464
|
-
|
|
465
443
|
this.triggerOnChange(newSelected, state);
|
|
466
|
-
|
|
467
444
|
if (opened) {
|
|
468
445
|
this.base.togglePopup(state);
|
|
469
446
|
}
|
|
470
|
-
|
|
471
447
|
if (this.$props.filter === undefined && this.currentText !== undefined) {
|
|
472
448
|
// @ts-ignore
|
|
473
449
|
state.data.currentText = undefined;
|
|
474
450
|
}
|
|
475
|
-
|
|
476
451
|
this.applyState(state);
|
|
477
452
|
},
|
|
478
453
|
applyValueOnRejectSuggestions: function applyValueOnRejectSuggestions(text, state) {
|
|
479
454
|
var _a;
|
|
480
|
-
|
|
481
455
|
var _b = this.$props,
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
456
|
+
_c = _b.dataItems,
|
|
457
|
+
dataItems = _c === void 0 ? [] : _c,
|
|
458
|
+
textField = _b.textField,
|
|
459
|
+
allowCustom = _b.allowCustom;
|
|
486
460
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
487
461
|
var valueItemText = getItemValue(this.computedValue(), textField);
|
|
488
462
|
this.suggested = '';
|
|
489
|
-
|
|
490
463
|
if (text === valueItemText || text === '' && !isPresent(valueItemText)) {
|
|
491
464
|
if (opened) {
|
|
492
465
|
this.base.togglePopup(state);
|
|
493
466
|
}
|
|
494
|
-
|
|
495
467
|
return this.applyState(state);
|
|
496
468
|
}
|
|
497
|
-
|
|
498
469
|
var valueIndex = getItemIndexByText(dataItems, text, textField, true);
|
|
499
470
|
var itemSelected = valueIndex !== -1;
|
|
500
471
|
var newSelected = null;
|
|
501
|
-
|
|
502
472
|
if (itemSelected) {
|
|
503
473
|
newSelected = dataItems[valueIndex];
|
|
504
474
|
} else if (allowCustom) {
|
|
505
475
|
newSelected = text ? textField ? (_a = {}, _a[textField] = text, _a) : text : null;
|
|
506
476
|
}
|
|
507
|
-
|
|
508
477
|
this.triggerOnChange(newSelected, state);
|
|
509
|
-
|
|
510
478
|
if (this.currentText !== undefined) {
|
|
511
479
|
// @ts-ignore
|
|
512
480
|
state.data.currentText = undefined;
|
|
513
481
|
this.base.filterChanged('', state);
|
|
514
482
|
}
|
|
515
|
-
|
|
516
483
|
if (opened) {
|
|
517
484
|
this.base.togglePopup(state);
|
|
518
485
|
}
|
|
519
|
-
|
|
520
486
|
this.applyState(state);
|
|
521
487
|
},
|
|
522
488
|
selectFocusedItem: function selectFocusedItem(text, state) {
|
|
523
489
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
524
490
|
var _a = this.$props,
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
491
|
+
_b = _a.dataItems,
|
|
492
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
493
|
+
textField = _a.textField,
|
|
494
|
+
_c = _a.virtual,
|
|
495
|
+
virtual = _c === void 0 ? {
|
|
496
|
+
skip: 0
|
|
497
|
+
} : _c,
|
|
498
|
+
_d = _a.focusedItemIndex,
|
|
499
|
+
focusedItemIndex = _d === void 0 ? itemIndexStartsWith : _d;
|
|
534
500
|
var skip = virtual.skip;
|
|
535
501
|
var focusedIndex = text === '' && skip === 0 ? 0 : focusedItemIndex(dataItems, text, textField);
|
|
536
|
-
|
|
537
502
|
if (focusedIndex !== -1) {
|
|
538
503
|
this.handleItemSelect(focusedIndex + skip, state);
|
|
539
504
|
} else {
|
|
540
505
|
this.triggerOnChange(null, state);
|
|
541
|
-
|
|
542
506
|
if (this.currentText !== undefined) {
|
|
543
507
|
// @ts-ignore
|
|
544
508
|
state.data.currentText = undefined;
|
|
545
509
|
}
|
|
546
510
|
}
|
|
547
|
-
|
|
548
511
|
if (opened) {
|
|
549
512
|
this.base.togglePopup(state);
|
|
550
513
|
}
|
|
551
|
-
|
|
552
514
|
return this.applyState(state);
|
|
553
515
|
},
|
|
554
516
|
handleItemClick: function handleItemClick(index, event) {
|
|
@@ -571,27 +533,21 @@ var ComboBoxVue2 = {
|
|
|
571
533
|
},
|
|
572
534
|
onInputKeyDown: function onInputKeyDown(event) {
|
|
573
535
|
var _this = this;
|
|
574
|
-
|
|
575
536
|
var keyCode = event.keyCode;
|
|
576
537
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
577
538
|
var state = this.base.initState();
|
|
578
539
|
state.event = event;
|
|
579
|
-
|
|
580
540
|
if (!event.altKey && (keyCode === Keys.up || keyCode === Keys.down)) {
|
|
581
541
|
event.preventDefault();
|
|
582
542
|
this.onNavigate(state, keyCode);
|
|
583
543
|
this.applyState(state);
|
|
584
544
|
return;
|
|
585
545
|
}
|
|
586
|
-
|
|
587
546
|
var togglePopup = function togglePopup() {
|
|
588
547
|
event.preventDefault();
|
|
589
|
-
|
|
590
548
|
_this.base.togglePopup(state);
|
|
591
|
-
|
|
592
549
|
_this.applyState(state);
|
|
593
550
|
};
|
|
594
|
-
|
|
595
551
|
if (opened) {
|
|
596
552
|
if (event.altKey && keyCode === Keys.up) {
|
|
597
553
|
togglePopup();
|
|
@@ -615,39 +571,31 @@ var ComboBoxVue2 = {
|
|
|
615
571
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
616
572
|
var input = event.currentTarget;
|
|
617
573
|
var value = input.value;
|
|
618
|
-
|
|
619
574
|
if (this.$props.suggest) {
|
|
620
575
|
var selectionAtEnd = input.selectionEnd === value.length;
|
|
621
576
|
var prevText = this.$props.filter !== undefined ? this.$props.filter : this.currentText;
|
|
622
|
-
|
|
623
577
|
if (!isPresent(prevText)) {
|
|
624
578
|
prevText = getItemValue(this.computedValue(), this.$props.textField) || '';
|
|
625
579
|
}
|
|
626
|
-
|
|
627
580
|
var deletedSuggestion = prevText && prevText === value;
|
|
628
581
|
var deleting = prevText && prevText.length > value.length;
|
|
629
|
-
|
|
630
582
|
if (deletedSuggestion || deleting || !selectionAtEnd) {
|
|
631
583
|
this.suggested = '';
|
|
632
584
|
} else {
|
|
633
585
|
this.suggestValue(value);
|
|
634
586
|
}
|
|
635
587
|
}
|
|
636
|
-
|
|
637
588
|
if (this.$props.filter === undefined) {
|
|
638
589
|
// @ts-ignore
|
|
639
590
|
state.data.currentText = value;
|
|
640
591
|
}
|
|
641
|
-
|
|
642
592
|
if (this.currentFocusedItem !== undefined) {
|
|
643
593
|
// @ts-ignore
|
|
644
594
|
state.data.focusedItem = undefined;
|
|
645
595
|
}
|
|
646
|
-
|
|
647
596
|
if (!opened) {
|
|
648
597
|
this.base.togglePopup(state);
|
|
649
598
|
}
|
|
650
|
-
|
|
651
599
|
this.base.filterChanged(value, state);
|
|
652
600
|
this.applyState(state);
|
|
653
601
|
},
|
|
@@ -657,36 +605,31 @@ var ComboBoxVue2 = {
|
|
|
657
605
|
event.stopPropagation();
|
|
658
606
|
this.suggested = '';
|
|
659
607
|
this.base.filterChanged('', state);
|
|
660
|
-
|
|
661
608
|
if (this.$props.filter === undefined && this.currentText !== undefined) {
|
|
662
609
|
// @ts-ignore
|
|
663
610
|
state.data.currentText = undefined;
|
|
664
611
|
}
|
|
665
|
-
|
|
666
612
|
this.triggerOnChange(null, state);
|
|
667
613
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
668
|
-
|
|
669
614
|
if (opened) {
|
|
670
615
|
this.base.togglePopup(state);
|
|
671
616
|
}
|
|
672
|
-
|
|
673
617
|
this.applyState(state);
|
|
674
618
|
},
|
|
675
619
|
getFocusedIndex: function getFocusedIndex() {
|
|
676
620
|
var value = this.computedValue();
|
|
677
621
|
var _a = this.$props,
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
622
|
+
_b = _a.dataItems,
|
|
623
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
624
|
+
textField = _a.textField,
|
|
625
|
+
dataItemKey = _a.dataItemKey,
|
|
626
|
+
_c = _a.virtual,
|
|
627
|
+
virtual = _c === void 0 ? {
|
|
628
|
+
skip: 0
|
|
629
|
+
} : _c,
|
|
630
|
+
_d = _a.focusedItemIndex,
|
|
631
|
+
focusedItemIndex = _d === void 0 ? itemIndexStartsWith : _d;
|
|
688
632
|
var text = this.$props.filter ? this.$props.filter : this.currentText;
|
|
689
|
-
|
|
690
633
|
if (isPresent(value) && text === undefined) {
|
|
691
634
|
return dataItems.findIndex(function (i) {
|
|
692
635
|
return areSame(i, value, dataItemKey);
|
|
@@ -699,8 +642,8 @@ var ComboBoxVue2 = {
|
|
|
699
642
|
},
|
|
700
643
|
suggestValue: function suggestValue(value) {
|
|
701
644
|
var _a = this.$props,
|
|
702
|
-
|
|
703
|
-
|
|
645
|
+
dataItems = _a.dataItems,
|
|
646
|
+
textField = _a.textField;
|
|
704
647
|
this.suggested = _suggestValue(value, dataItems, textField);
|
|
705
648
|
},
|
|
706
649
|
setValidity: function setValidity() {
|
|
@@ -710,15 +653,12 @@ var ComboBoxVue2 = {
|
|
|
710
653
|
},
|
|
711
654
|
triggerOnChange: function triggerOnChange(item, state) {
|
|
712
655
|
var value = this.computedValue();
|
|
713
|
-
|
|
714
656
|
if (!isPresent(value) && !isPresent(item) || areSame(value, item, this.$props.dataItemKey)) {
|
|
715
657
|
return;
|
|
716
658
|
}
|
|
717
|
-
|
|
718
659
|
if (this.$props.value === undefined) {
|
|
719
660
|
this.currentValue = item;
|
|
720
661
|
}
|
|
721
|
-
|
|
722
662
|
this.valueDuringOnChange = item;
|
|
723
663
|
state.events.push({
|
|
724
664
|
type: 'change'
|
|
@@ -734,22 +674,21 @@ var ComboBoxVue2 = {
|
|
|
734
674
|
},
|
|
735
675
|
render: function render(createElement) {
|
|
736
676
|
var _a;
|
|
737
|
-
|
|
738
677
|
var h = gh || createElement;
|
|
739
678
|
var _b = this.$props,
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
679
|
+
dir = _b.dir,
|
|
680
|
+
disabled = _b.disabled,
|
|
681
|
+
clearButton = _b.clearButton,
|
|
682
|
+
label = _b.label,
|
|
683
|
+
textField = _b.textField,
|
|
684
|
+
className = _b.className,
|
|
685
|
+
style = _b.style,
|
|
686
|
+
loading = _b.loading,
|
|
687
|
+
iconClassName = _b.iconClassName,
|
|
688
|
+
virtual = _b.virtual,
|
|
689
|
+
size = _b.size,
|
|
690
|
+
fillMode = _b.fillMode,
|
|
691
|
+
rounded = _b.rounded;
|
|
753
692
|
var focused = this.currentFocused;
|
|
754
693
|
var isValid = !this.$props.validityStyles || this.validity().valid;
|
|
755
694
|
var text = this.$props.filter !== undefined ? this.$props.filter : this.currentText;
|
|
@@ -765,37 +704,32 @@ var ComboBoxVue2 = {
|
|
|
765
704
|
}, this.$props.popupSettings);
|
|
766
705
|
var ariaLabelExpandButton = provideLocalizationService(this).toLanguageString(expandButton, messages[expandButton]);
|
|
767
706
|
vs.enabled = virtual !== undefined;
|
|
768
|
-
|
|
769
707
|
if (virtual !== undefined) {
|
|
770
708
|
vs.skip = virtual.skip;
|
|
771
709
|
vs.total = virtual.total;
|
|
772
710
|
vs.pageSize = virtual.pageSize;
|
|
773
711
|
}
|
|
774
|
-
|
|
775
712
|
var renderList = function renderList() {
|
|
776
713
|
var _this2 = this;
|
|
777
|
-
|
|
778
714
|
var _a;
|
|
779
|
-
|
|
780
715
|
var _b = this.$props,
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
716
|
+
dataItemKey = _b.dataItemKey,
|
|
717
|
+
_c = _b.dataItems,
|
|
718
|
+
dataItems = _c === void 0 ? [] : _c;
|
|
784
719
|
var itemRender = templateRendering.call(this, this.$props.itemRender, getListeners.call(this));
|
|
785
720
|
var listNoDataRender = templateRendering.call(this, this.$props.listNoDataRender, getListeners.call(this));
|
|
786
|
-
|
|
787
721
|
if (!virtual) {
|
|
788
722
|
virtual = {
|
|
789
723
|
skip: 0
|
|
790
724
|
};
|
|
791
725
|
}
|
|
792
|
-
|
|
793
726
|
var skip = virtual.skip;
|
|
794
727
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
795
728
|
var translate = "translateY(".concat(vs.translate, "px)");
|
|
796
729
|
var focusedIndex = opened ? this.getFocusedIndex() : undefined;
|
|
797
730
|
var value = isPresent(text) && text !== selectedItemText ? null : this.computedValue();
|
|
798
|
-
return (
|
|
731
|
+
return (
|
|
732
|
+
// @ts-ignore function children
|
|
799
733
|
h(List, {
|
|
800
734
|
id: base.listBoxId,
|
|
801
735
|
attrs: this.v3 ? undefined : {
|
|
@@ -848,19 +782,15 @@ var ComboBoxVue2 = {
|
|
|
848
782
|
} : [renderScrollElement.call(_this2)])
|
|
849
783
|
);
|
|
850
784
|
};
|
|
851
|
-
|
|
852
785
|
var renderScrollElement = function renderScrollElement() {
|
|
853
786
|
return vs.enabled && h("div", {
|
|
854
787
|
ref: 'scrollElement',
|
|
855
788
|
key: 'scrollElementKey'
|
|
856
789
|
});
|
|
857
790
|
};
|
|
858
|
-
|
|
859
791
|
var renderListContainer = function renderListContainer() {
|
|
860
792
|
var _this3 = this;
|
|
861
|
-
|
|
862
793
|
var _a;
|
|
863
|
-
|
|
864
794
|
var headerTemplate = templateRendering.call(this, this.$props.header, getListeners.call(this));
|
|
865
795
|
var footerTemplate = templateRendering.call(this, this.$props.footer, getListeners.call(this));
|
|
866
796
|
var header = getTemplate.call(this, {
|
|
@@ -873,7 +803,8 @@ var ComboBoxVue2 = {
|
|
|
873
803
|
});
|
|
874
804
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
875
805
|
var popupWidth = popupSettings.width !== undefined ? popupSettings.width : base.popupWidth;
|
|
876
|
-
return (
|
|
806
|
+
return (
|
|
807
|
+
// @ts-ignore function children
|
|
877
808
|
h(ListContainer, {
|
|
878
809
|
ref: 'container',
|
|
879
810
|
onMousedown: function onMousedown(e) {
|
|
@@ -915,34 +846,29 @@ var ComboBoxVue2 = {
|
|
|
915
846
|
}, [footer])])
|
|
916
847
|
);
|
|
917
848
|
};
|
|
918
|
-
|
|
919
849
|
var renderSearchBar = function renderSearchBar(searchText, searchId) {
|
|
920
850
|
var _this = this;
|
|
921
|
-
|
|
922
851
|
var _a = this.$props,
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
852
|
+
placeholder = _a.placeholder,
|
|
853
|
+
tabIndex = _a.tabIndex,
|
|
854
|
+
_b = _a.dataItems,
|
|
855
|
+
dataItems = _b === void 0 ? [] : _b,
|
|
856
|
+
dataItemKey = _a.dataItemKey;
|
|
929
857
|
if (!virtual) {
|
|
930
858
|
virtual = {
|
|
931
859
|
skip: 0
|
|
932
860
|
};
|
|
933
861
|
}
|
|
934
|
-
|
|
935
862
|
var opened = this.$props.opened !== undefined ? this.$props.opened : this.currentOpened;
|
|
936
863
|
var value = this.computedValue();
|
|
937
864
|
var selectedIndex = Math.max(0, dataItems.findIndex(function (i) {
|
|
938
865
|
return areSame(i, value, dataItemKey);
|
|
939
866
|
}));
|
|
940
|
-
|
|
941
867
|
if (this.suggested && !areSame(this.valueOnDidUpdate, value, dataItemKey)) {
|
|
942
868
|
this.suggested = '';
|
|
943
869
|
}
|
|
944
|
-
|
|
945
|
-
|
|
870
|
+
return (
|
|
871
|
+
// @ts-ignore function children
|
|
946
872
|
h(SearchBar, {
|
|
947
873
|
id: searchId,
|
|
948
874
|
attrs: this.v3 ? undefined : {
|
|
@@ -986,7 +912,6 @@ var ComboBoxVue2 = {
|
|
|
986
912
|
})
|
|
987
913
|
);
|
|
988
914
|
};
|
|
989
|
-
|
|
990
915
|
var combobox = h("span", {
|
|
991
916
|
"class": classNames('k-combobox k-input', (_a = {}, _a["k-input-".concat(sizeMap[size] || size)] = size, _a["k-rounded-".concat(roundedMap[rounded] || rounded)] = rounded, _a["k-input-".concat(fillMode)] = fillMode, _a['k-invalid'] = !isValid, _a['k-loading'] = loading, _a['k-required'] = this.required, _a['k-disabled'] = disabled, _a['k-focus'] = focused && !disabled, _a), className),
|
|
992
917
|
ref: setRef(this, 'kendoAnchor', this.anchor),
|
|
@@ -997,7 +922,8 @@ var ComboBoxVue2 = {
|
|
|
997
922
|
attrs: this.v3 ? undefined : {
|
|
998
923
|
dir: dir
|
|
999
924
|
}
|
|
1000
|
-
}, [renderSearchBar.call(this, inputText || '', id), renderClearButton && !loading &&
|
|
925
|
+
}, [renderSearchBar.call(this, inputText || '', id), renderClearButton && !loading &&
|
|
926
|
+
// @ts-ignore function children
|
|
1001
927
|
h(ClearButton, {
|
|
1002
928
|
onClearclick: this.clearButtonClick,
|
|
1003
929
|
on: this.v3 ? undefined : {
|
|
@@ -1007,7 +933,8 @@ var ComboBoxVue2 = {
|
|
|
1007
933
|
}), loading && h("span", {
|
|
1008
934
|
"class": "k-icon k-input-loading-icon k-i-loading",
|
|
1009
935
|
key: "loading"
|
|
1010
|
-
}),
|
|
936
|
+
}),
|
|
937
|
+
// @ts-ignore
|
|
1011
938
|
h(KButton, {
|
|
1012
939
|
type: "button",
|
|
1013
940
|
attrs: this.v3 ? undefined : {
|
|
@@ -1061,6 +988,5 @@ var ComboBoxVue2 = {
|
|
|
1061
988
|
/**
|
|
1062
989
|
* @hidden
|
|
1063
990
|
*/
|
|
1064
|
-
|
|
1065
991
|
var ComboBox = ComboBoxVue2;
|
|
1066
992
|
export { ComboBox, ComboBoxVue2 };
|