@syncfusion/ej2-dropdowns 20.1.61 → 20.2.36
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/CHANGELOG.md +0 -82
- package/dist/ej2-dropdowns.umd.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es2015.js +88 -89
- package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es5.js +51 -52
- package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
- package/dist/global/ej2-dropdowns.min.js +2 -2
- package/dist/global/ej2-dropdowns.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/helpers/e2e/autocomplete.js +59 -43
- package/helpers/e2e/combobox.js +62 -46
- package/helpers/e2e/dropdownlist.js +71 -55
- package/helpers/e2e/index.js +11 -9
- package/helpers/e2e/listboxHelper.js +55 -38
- package/helpers/e2e/multiselect.js +104 -88
- package/package.json +11 -11
- package/src/common/incremental-search.js +1 -1
- package/src/drop-down-base/drop-down-base-model.d.ts +1 -1
- package/src/drop-down-base/drop-down-base.d.ts +5 -1
- package/src/drop-down-base/drop-down-base.js +3 -5
- package/src/drop-down-list/drop-down-list.js +7 -7
- package/src/drop-down-tree/drop-down-tree-model.d.ts +2 -2
- package/src/drop-down-tree/drop-down-tree.js +5 -5
- package/src/list-box/list-box.js +10 -11
- package/src/multi-select/multi-select-model.d.ts +1 -1
- package/src/multi-select/multi-select.d.ts +2 -1
- package/src/multi-select/multi-select.js +25 -23
- package/styles/auto-complete/_fusionnew-definition.scss +2 -0
- package/styles/auto-complete/_material3-definition.scss +2 -0
- package/styles/bootstrap-dark.css +38 -2
- package/styles/bootstrap.css +38 -2
- package/styles/bootstrap4.css +38 -2
- package/styles/bootstrap5-dark.css +38 -2
- package/styles/bootstrap5.css +38 -2
- package/styles/combo-box/_fusionnew-definition.scss +2 -0
- package/styles/combo-box/_material3-definition.scss +2 -0
- package/styles/drop-down-base/_fusionnew-definition.scss +111 -0
- package/styles/drop-down-base/_material3-definition.scss +111 -0
- package/styles/drop-down-list/_fusionnew-definition.scss +201 -0
- package/styles/drop-down-list/_material3-definition.scss +201 -0
- package/styles/drop-down-list/icons/_fusionnew.scss +14 -0
- package/styles/drop-down-list/icons/_material3.scss +14 -0
- package/styles/drop-down-tree/_fusionnew-definition.scss +60 -0
- package/styles/drop-down-tree/_material3-definition.scss +60 -0
- package/styles/drop-down-tree/icons/_fusionnew.scss +11 -0
- package/styles/drop-down-tree/icons/_material3.scss +11 -0
- package/styles/fabric-dark.css +38 -2
- package/styles/fabric.css +38 -2
- package/styles/fluent-dark.css +38 -2
- package/styles/fluent.css +38 -2
- package/styles/highcontrast-light.css +38 -2
- package/styles/highcontrast.css +38 -2
- package/styles/list-box/_bootstrap-dark-definition.scss +5 -1
- package/styles/list-box/_bootstrap-definition.scss +5 -1
- package/styles/list-box/_bootstrap4-definition.scss +5 -1
- package/styles/list-box/_bootstrap5-definition.scss +7 -0
- package/styles/list-box/_fabric-dark-definition.scss +5 -1
- package/styles/list-box/_fabric-definition.scss +5 -1
- package/styles/list-box/_fluent-definition.scss +7 -0
- package/styles/list-box/_fusionnew-definition.scss +113 -0
- package/styles/list-box/_highcontrast-definition.scss +5 -1
- package/styles/list-box/_highcontrast-light-definition.scss +5 -1
- package/styles/list-box/_layout.scss +36 -1
- package/styles/list-box/_material-dark-definition.scss +6 -2
- package/styles/list-box/_material-definition.scss +6 -2
- package/styles/list-box/_material3-definition.scss +119 -0
- package/styles/list-box/_tailwind-definition.scss +6 -0
- package/styles/list-box/_theme.scss +19 -0
- package/styles/list-box/bootstrap-dark.css +28 -2
- package/styles/list-box/bootstrap.css +38 -2
- package/styles/list-box/bootstrap4.css +38 -2
- package/styles/list-box/bootstrap5-dark.css +38 -2
- package/styles/list-box/bootstrap5.css +38 -2
- package/styles/list-box/fabric-dark.css +28 -2
- package/styles/list-box/fabric.css +38 -2
- package/styles/list-box/fluent-dark.css +38 -2
- package/styles/list-box/fluent.css +38 -2
- package/styles/list-box/highcontrast-light.css +28 -2
- package/styles/list-box/highcontrast.css +38 -2
- package/styles/list-box/icons/_fusionnew.scss +25 -0
- package/styles/list-box/icons/_material3.scss +25 -0
- package/styles/list-box/material-dark.css +30 -4
- package/styles/list-box/material.css +40 -4
- package/styles/list-box/tailwind-dark.css +38 -2
- package/styles/list-box/tailwind.css +38 -2
- package/styles/material-dark.css +40 -4
- package/styles/material.css +40 -4
- package/styles/multi-select/_fusionnew-definition.scss +219 -0
- package/styles/multi-select/_material3-definition.scss +219 -0
- package/styles/multi-select/icons/_fusionnew.scss +27 -0
- package/styles/multi-select/icons/_material3.scss +27 -0
- package/styles/tailwind-dark.css +38 -2
- package/styles/tailwind.css +38 -2
|
@@ -92,7 +92,7 @@ function Search(inputVal, items, searchType, ignoreCase) {
|
|
|
92
92
|
for (let i = 0, itemsData = listItems; i < itemsData.length; i++) {
|
|
93
93
|
const item = itemsData[i];
|
|
94
94
|
const text = (ignoreCase ? item.textContent.toLocaleLowerCase() : item.textContent).replace(/^\s+|\s+$/g, '');
|
|
95
|
-
if ((searchType === 'Equal' && text === queryStr) || (searchType === 'StartsWith' && text.substr(0, strLength) === queryStr) || (searchType === 'EndsWith' && text.substr(text.length - queryStr.length) === queryStr) || (searchType === 'Contains' && new RegExp(queryStr,
|
|
95
|
+
if ((searchType === 'Equal' && text === queryStr) || (searchType === 'StartsWith' && text.substr(0, strLength) === queryStr) || (searchType === 'EndsWith' && text.substr(text.length - queryStr.length) === queryStr) || (searchType === 'Contains' && new RegExp(queryStr, "g").test(text))) {
|
|
96
96
|
itemData.item = item;
|
|
97
97
|
itemData.index = i;
|
|
98
98
|
return { item: item, index: i };
|
|
@@ -308,8 +308,7 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
308
308
|
compareValue = value;
|
|
309
309
|
dataSource.filter((item) => {
|
|
310
310
|
const itemValue = getValue(fields.value, item);
|
|
311
|
-
if (!isNullOrUndefined(itemValue) && !isNullOrUndefined(value)
|
|
312
|
-
&& itemValue.toString() === compareValue.toString()) {
|
|
311
|
+
if (!isNullOrUndefined(itemValue) && !isNullOrUndefined(value) && itemValue.toString() === compareValue.toString()) {
|
|
313
312
|
value = getValue(fields.text, item);
|
|
314
313
|
}
|
|
315
314
|
});
|
|
@@ -732,7 +731,7 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
732
731
|
if (this.getModuleName() === 'multiselect' && this.properties.allowCustomValue && this.fields.groupBy) {
|
|
733
732
|
for (let i = 0; i < ulElement.childElementCount; i++) {
|
|
734
733
|
if (ulElement.children[i].classList.contains('e-list-group-item')) {
|
|
735
|
-
if (isNullOrUndefined(ulElement.children[i].innerHTML) || ulElement.children[i].innerHTML
|
|
734
|
+
if (isNullOrUndefined(ulElement.children[i].innerHTML) || ulElement.children[i].innerHTML == "") {
|
|
736
735
|
addClass([ulElement.children[i]], HIDE_GROUPLIST);
|
|
737
736
|
}
|
|
738
737
|
}
|
|
@@ -859,8 +858,8 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
859
858
|
this.scrollStop(e);
|
|
860
859
|
}
|
|
861
860
|
scrollStop(e) {
|
|
862
|
-
|
|
863
|
-
|
|
861
|
+
let target = !isNullOrUndefined(e) ? e.target : this.list;
|
|
862
|
+
let liHeight = parseInt(getComputedStyle(this.getValidLi(), null).getPropertyValue('height'), 10);
|
|
864
863
|
const topIndex = Math.round(target.scrollTop / liHeight);
|
|
865
864
|
const liCollections = this.list.querySelectorAll('li' + ':not(.e-hide-listitem)');
|
|
866
865
|
for (let i = topIndex; i > -1; i--) {
|
|
@@ -948,10 +947,10 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
948
947
|
Refer bug report https://bugzilla.mozilla.org/show_bug.cgi?id=137688
|
|
949
948
|
Refer alternate solution https://stackoverflow.com/a/41696234/9133493*/
|
|
950
949
|
if (isNaN(borderWidth)) {
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
950
|
+
let borderTopWidth = parseInt(document.defaultView.getComputedStyle(this.list.parentElement, null).getPropertyValue('border-top-width'), 10);
|
|
951
|
+
let borderBottomWidth = parseInt(document.defaultView.getComputedStyle(this.list.parentElement, null).getPropertyValue('border-bottom-width'), 10);
|
|
952
|
+
let borderLeftWidth = parseInt(document.defaultView.getComputedStyle(this.list.parentElement, null).getPropertyValue('border-left-width'), 10);
|
|
953
|
+
let borderRightWidth = parseInt(document.defaultView.getComputedStyle(this.list.parentElement, null).getPropertyValue('border-right-width'), 10);
|
|
955
954
|
borderWidth = (borderTopWidth + borderBottomWidth + borderLeftWidth + borderRightWidth);
|
|
956
955
|
}
|
|
957
956
|
}
|
|
@@ -1218,8 +1217,7 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
1218
1217
|
}
|
|
1219
1218
|
if (this.itemTemplate && !isHeader) {
|
|
1220
1219
|
const itemCheck = this.templateCompiler(this.itemTemplate);
|
|
1221
|
-
const compiledString = itemCheck ?
|
|
1222
|
-
compile(select(this.itemTemplate, document).innerHTML.trim()) : compile(this.itemTemplate);
|
|
1220
|
+
const compiledString = itemCheck ? compile(select(this.itemTemplate, document).innerHTML.trim()) : compile(this.itemTemplate);
|
|
1223
1221
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1224
1222
|
const addItemTemplate = compiledString(item, this, 'itemTemplate', this.itemTemplateId, this.isStringTemplate, null, li);
|
|
1225
1223
|
if (addItemTemplate) {
|
|
@@ -1704,7 +1702,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
1704
1702
|
return {
|
|
1705
1703
|
'aria-disabled': 'false',
|
|
1706
1704
|
'aria-owns': this.element.id + '_options',
|
|
1707
|
-
'role': '
|
|
1705
|
+
'role': 'combobox',
|
|
1708
1706
|
'aria-haspopup': 'true',
|
|
1709
1707
|
'aria-expanded': 'false',
|
|
1710
1708
|
'aria-activedescendant': 'null',
|
|
@@ -1969,7 +1967,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
1969
1967
|
}
|
|
1970
1968
|
else {
|
|
1971
1969
|
const delay = 100;
|
|
1972
|
-
this.closePopup(delay);
|
|
1970
|
+
this.closePopup(delay, e);
|
|
1973
1971
|
}
|
|
1974
1972
|
}
|
|
1975
1973
|
onMouseOver(e) {
|
|
@@ -2193,7 +2191,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
2193
2191
|
this.isSelectCustom = false;
|
|
2194
2192
|
this.onChangeEvent(e);
|
|
2195
2193
|
}
|
|
2196
|
-
this.hidePopup();
|
|
2194
|
+
this.hidePopup(e);
|
|
2197
2195
|
this.focusDropDown(e);
|
|
2198
2196
|
}
|
|
2199
2197
|
else {
|
|
@@ -2390,9 +2388,9 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
2390
2388
|
detach(this.valueTempElement);
|
|
2391
2389
|
this.inputElement.style.display = 'block';
|
|
2392
2390
|
}
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2391
|
+
let clearIcon = dropDownListClasses.clearIcon;
|
|
2392
|
+
let isFilterElement = this.isFiltering() && this.filterInput && (this.getModuleName() === 'combobox');
|
|
2393
|
+
let clearElement = isFilterElement && this.filterInput.parentElement.querySelector('.' + clearIcon);
|
|
2396
2394
|
if (this.isFiltering() && clearElement) {
|
|
2397
2395
|
clearElement.style.removeProperty('visibility');
|
|
2398
2396
|
}
|
|
@@ -3357,7 +3355,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
3357
3355
|
}
|
|
3358
3356
|
}
|
|
3359
3357
|
}
|
|
3360
|
-
closePopup(delay) {
|
|
3358
|
+
closePopup(delay, e) {
|
|
3361
3359
|
this.isTyped = false;
|
|
3362
3360
|
if (!(this.popupObj && document.body.contains(this.popupObj.element) && this.beforePopupOpen)) {
|
|
3363
3361
|
return;
|
|
@@ -3405,7 +3403,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
3405
3403
|
delay: delay ? delay : 0
|
|
3406
3404
|
};
|
|
3407
3405
|
const popupInstance = this.popupObj;
|
|
3408
|
-
const eventArgs = { popup: popupInstance, cancel: false, animation: animModel };
|
|
3406
|
+
const eventArgs = { popup: popupInstance, cancel: false, animation: animModel, event: e || null };
|
|
3409
3407
|
this.trigger('close', eventArgs, (eventArgs) => {
|
|
3410
3408
|
if (!isNullOrUndefined(this.popupObj) &&
|
|
3411
3409
|
!isNullOrUndefined(this.popupObj.element.querySelector('.e-fixed-head'))) {
|
|
@@ -3911,7 +3909,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
3911
3909
|
if (!this.enabled) {
|
|
3912
3910
|
return;
|
|
3913
3911
|
}
|
|
3914
|
-
if (this.isFiltering() && this.dataSource instanceof DataManager && (this.actionData.list
|
|
3912
|
+
if (this.isFiltering() && this.dataSource instanceof DataManager && (this.actionData.list != this.actionCompleteData.list) &&
|
|
3915
3913
|
this.actionData.list && this.actionData.ulElement) {
|
|
3916
3914
|
this.actionCompleteData = this.actionData;
|
|
3917
3915
|
this.onActionComplete(this.actionCompleteData.ulElement, this.actionCompleteData.list, null, true);
|
|
@@ -3973,7 +3971,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
3973
3971
|
this.resetSelection();
|
|
3974
3972
|
}
|
|
3975
3973
|
}
|
|
3976
|
-
this.closePopup();
|
|
3974
|
+
this.closePopup(0, e);
|
|
3977
3975
|
const dataItem = this.getItemData();
|
|
3978
3976
|
const isSelectVal = !isNullOrUndefined(this.selectedLI);
|
|
3979
3977
|
if (this.inputElement && this.inputElement.value.trim() === '' && !this.isInteracted && (this.isSelectCustom ||
|
|
@@ -5507,7 +5505,7 @@ let DropDownTree = class DropDownTree extends Component {
|
|
|
5507
5505
|
}
|
|
5508
5506
|
else {
|
|
5509
5507
|
if (this.showCheckBox) {
|
|
5510
|
-
|
|
5508
|
+
let difference = this.value.filter((e) => {
|
|
5511
5509
|
return this.treeObj.checkedNodes.indexOf(e) === -1;
|
|
5512
5510
|
});
|
|
5513
5511
|
if (difference.length > 0 || this.treeSettings.autoCheck) {
|
|
@@ -6271,7 +6269,7 @@ let DropDownTree = class DropDownTree extends Component {
|
|
|
6271
6269
|
}
|
|
6272
6270
|
else if (this.treeDataType === 1) {
|
|
6273
6271
|
for (let i = 0, objlen = this.treeItems.length; i < objlen; i++) {
|
|
6274
|
-
|
|
6272
|
+
let dataId = getValue(this.fields.value, this.treeItems[i]);
|
|
6275
6273
|
if (!isNullOrUndefined(this.treeItems[i]) && !isNullOrUndefined(dataId) && dataId.toString() === id) {
|
|
6276
6274
|
return this.treeItems[i];
|
|
6277
6275
|
}
|
|
@@ -6288,19 +6286,19 @@ let DropDownTree = class DropDownTree extends Component {
|
|
|
6288
6286
|
return newChildItems;
|
|
6289
6287
|
}
|
|
6290
6288
|
for (let i = 0, objlen = obj.length; i < objlen; i++) {
|
|
6291
|
-
|
|
6289
|
+
let dataValue = getValue(mapper.value, obj[i]);
|
|
6292
6290
|
if (obj[i] && dataValue && dataValue.toString() === id) {
|
|
6293
6291
|
return obj[i];
|
|
6294
6292
|
}
|
|
6295
6293
|
else if (typeof mapper.child === 'string' && !isNullOrUndefined(getValue(mapper.child, obj[i]))) {
|
|
6296
|
-
|
|
6294
|
+
let childNodeData = getValue(mapper.child, obj[i]);
|
|
6297
6295
|
newChildItems = this.getChildNodeData(childNodeData, this.getChildMapperFields(mapper), id);
|
|
6298
6296
|
if (newChildItems !== undefined) {
|
|
6299
6297
|
break;
|
|
6300
6298
|
}
|
|
6301
6299
|
}
|
|
6302
6300
|
else if (this.fields.dataSource instanceof DataManager && !isNullOrUndefined(getValue('child', obj[i]))) {
|
|
6303
|
-
|
|
6301
|
+
let child = 'child';
|
|
6304
6302
|
newChildItems = this.getChildNodeData(getValue(child, obj[i]), this.getChildMapperFields(mapper), id);
|
|
6305
6303
|
if (newChildItems !== undefined) {
|
|
6306
6304
|
break;
|
|
@@ -6419,7 +6417,7 @@ let DropDownTree = class DropDownTree extends Component {
|
|
|
6419
6417
|
addClass([this.inputWrapper], SHOW_CHIP);
|
|
6420
6418
|
}
|
|
6421
6419
|
const chip = this.createElement('span', {
|
|
6422
|
-
className: CHIP
|
|
6420
|
+
className: CHIP,
|
|
6423
6421
|
});
|
|
6424
6422
|
if (!this.inputEle.classList.contains(CHIP_INPUT)) {
|
|
6425
6423
|
addClass([this.inputEle], CHIP_INPUT);
|
|
@@ -6555,7 +6553,7 @@ let DropDownTree = class DropDownTree extends Component {
|
|
|
6555
6553
|
this.ensurePlaceHolder();
|
|
6556
6554
|
}
|
|
6557
6555
|
resetValue(isDynamicChange) {
|
|
6558
|
-
if (this.value
|
|
6556
|
+
if (this.value == [] && this.text == null) {
|
|
6559
6557
|
return;
|
|
6560
6558
|
}
|
|
6561
6559
|
Input.setValue(null, this.inputEle, this.floatLabelType);
|
|
@@ -6936,10 +6934,10 @@ let DropDownTree = class DropDownTree extends Component {
|
|
|
6936
6934
|
this.updateTreeSettings(newProp);
|
|
6937
6935
|
break;
|
|
6938
6936
|
case 'customTemplate':
|
|
6939
|
-
if (this.mode !==
|
|
6937
|
+
if (this.mode !== "Custom") {
|
|
6940
6938
|
return;
|
|
6941
6939
|
}
|
|
6942
|
-
this.chipCollection.innerHTML =
|
|
6940
|
+
this.chipCollection.innerHTML = "";
|
|
6943
6941
|
this.setTagValues();
|
|
6944
6942
|
break;
|
|
6945
6943
|
case 'sortOrder':
|
|
@@ -7157,7 +7155,7 @@ __decorate$2([
|
|
|
7157
7155
|
Property('')
|
|
7158
7156
|
], DropDownTree.prototype, "cssClass", void 0);
|
|
7159
7157
|
__decorate$2([
|
|
7160
|
-
Property(
|
|
7158
|
+
Property("${value.length} item(s) selected")
|
|
7161
7159
|
], DropDownTree.prototype, "customTemplate", void 0);
|
|
7162
7160
|
__decorate$2([
|
|
7163
7161
|
Property(',')
|
|
@@ -8744,6 +8742,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
8744
8742
|
constructor(option, element) {
|
|
8745
8743
|
super(option, element);
|
|
8746
8744
|
this.clearIconWidth = 0;
|
|
8745
|
+
this.previousFilterText = '';
|
|
8747
8746
|
this.isValidKey = false;
|
|
8748
8747
|
this.selectAllEventData = [];
|
|
8749
8748
|
this.selectAllEventEle = [];
|
|
@@ -9206,7 +9205,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9206
9205
|
}
|
|
9207
9206
|
}
|
|
9208
9207
|
getValidLi() {
|
|
9209
|
-
|
|
9208
|
+
let liElement = this.ulElement.querySelector('li.' + dropDownBaseClasses.li + ':not(.' + HIDE_LIST + ')');
|
|
9210
9209
|
return (!isNullOrUndefined(liElement) ? liElement : this.liCollections[0]);
|
|
9211
9210
|
}
|
|
9212
9211
|
checkSelectAll() {
|
|
@@ -9238,7 +9237,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9238
9237
|
this.showPopup();
|
|
9239
9238
|
}
|
|
9240
9239
|
else {
|
|
9241
|
-
this.hidePopup();
|
|
9240
|
+
this.hidePopup(e);
|
|
9242
9241
|
}
|
|
9243
9242
|
}
|
|
9244
9243
|
else if (!this.openOnClick && this.mode === 'CheckBox' && !this.isPopupOpen()) {
|
|
@@ -9307,7 +9306,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9307
9306
|
const list = this.mainList.cloneNode ? this.mainList.cloneNode(true) : this.mainList;
|
|
9308
9307
|
if (this.backCommand) {
|
|
9309
9308
|
this.remoteCustomValue = false;
|
|
9310
|
-
if (this.allowCustomValue && list.querySelectorAll('li').length
|
|
9309
|
+
if (this.allowCustomValue && list.querySelectorAll('li').length == 0 && this.mainData.length > 0) {
|
|
9311
9310
|
this.mainData = [];
|
|
9312
9311
|
}
|
|
9313
9312
|
this.onActionComplete(list, this.mainData);
|
|
@@ -9398,7 +9397,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9398
9397
|
this.showPopup();
|
|
9399
9398
|
}
|
|
9400
9399
|
else {
|
|
9401
|
-
this.hidePopup();
|
|
9400
|
+
this.hidePopup(e);
|
|
9402
9401
|
if (this.mode === 'CheckBox') {
|
|
9403
9402
|
this.showOverAllClear();
|
|
9404
9403
|
this.inputFocus = true;
|
|
@@ -9476,6 +9475,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9476
9475
|
}
|
|
9477
9476
|
}
|
|
9478
9477
|
}
|
|
9478
|
+
this.updateDataList();
|
|
9479
9479
|
this.refreshListItems(null);
|
|
9480
9480
|
if (this.mode !== 'Box' && this.mode !== 'CheckBox') {
|
|
9481
9481
|
this.updateDelimView();
|
|
@@ -9486,7 +9486,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9486
9486
|
}
|
|
9487
9487
|
this.overAllClear.style.display = 'none';
|
|
9488
9488
|
if (this.isPopupOpen()) {
|
|
9489
|
-
this.hidePopup();
|
|
9489
|
+
this.hidePopup(eve);
|
|
9490
9490
|
}
|
|
9491
9491
|
this.makeTextBoxEmpty();
|
|
9492
9492
|
this.trigger('blur');
|
|
@@ -9680,7 +9680,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9680
9680
|
popupKeyActions(e) {
|
|
9681
9681
|
switch (e.keyCode) {
|
|
9682
9682
|
case 38:
|
|
9683
|
-
this.hidePopup();
|
|
9683
|
+
this.hidePopup(e);
|
|
9684
9684
|
if (this.mode === 'CheckBox') {
|
|
9685
9685
|
this.inputElement.focus();
|
|
9686
9686
|
}
|
|
@@ -9699,10 +9699,10 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9699
9699
|
if (!isNullOrUndefined(focusedItem)) {
|
|
9700
9700
|
this.inputElement.setAttribute('aria-activedescendant', focusedItem.id);
|
|
9701
9701
|
if (this.allowFiltering) {
|
|
9702
|
-
|
|
9702
|
+
var filterInput = this.popupWrapper.querySelector('.' + FILTERINPUT);
|
|
9703
9703
|
filterInput && filterInput.setAttribute('aria-activedescendant', focusedItem.id);
|
|
9704
9704
|
}
|
|
9705
|
-
else if (this.mode
|
|
9705
|
+
else if (this.mode == "CheckBox") {
|
|
9706
9706
|
this.overAllWrapper.setAttribute('aria-activedescendant', focusedItem.id);
|
|
9707
9707
|
}
|
|
9708
9708
|
}
|
|
@@ -9762,7 +9762,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9762
9762
|
break;
|
|
9763
9763
|
case 27:
|
|
9764
9764
|
e.preventDefault();
|
|
9765
|
-
this.hidePopup();
|
|
9765
|
+
this.hidePopup(e);
|
|
9766
9766
|
if (this.mode === 'CheckBox') {
|
|
9767
9767
|
this.inputElement.focus();
|
|
9768
9768
|
}
|
|
@@ -9779,7 +9779,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9779
9779
|
return;
|
|
9780
9780
|
case 9:
|
|
9781
9781
|
e.preventDefault();
|
|
9782
|
-
this.hidePopup();
|
|
9782
|
+
this.hidePopup(e);
|
|
9783
9783
|
this.inputElement.focus();
|
|
9784
9784
|
this.overAllWrapper.classList.add(FOCUS);
|
|
9785
9785
|
}
|
|
@@ -9807,6 +9807,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9807
9807
|
this.keyNavigation(e);
|
|
9808
9808
|
}
|
|
9809
9809
|
if (this.mode === 'CheckBox' && this.enableSelectionOrder) {
|
|
9810
|
+
if (this.allowFiltering) {
|
|
9811
|
+
this.previousFilterText = this.targetElement();
|
|
9812
|
+
}
|
|
9810
9813
|
this.checkBackCommand(e);
|
|
9811
9814
|
}
|
|
9812
9815
|
this.expandTextbox();
|
|
@@ -9855,7 +9858,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
9855
9858
|
this.checkPlaceholderSize();
|
|
9856
9859
|
}
|
|
9857
9860
|
checkBackCommand(e) {
|
|
9858
|
-
if (e.keyCode === 8 && this.targetElement() === '') {
|
|
9861
|
+
if (e.keyCode === 8 && this.allowFiltering ? this.targetElement() !== this.previousFilterText : this.targetElement() === '') {
|
|
9859
9862
|
this.backCommand = false;
|
|
9860
9863
|
}
|
|
9861
9864
|
else {
|
|
@@ -10001,7 +10004,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
10001
10004
|
}
|
|
10002
10005
|
this.refreshSelection();
|
|
10003
10006
|
if (this.closePopupOnSelect) {
|
|
10004
|
-
this.hidePopup();
|
|
10007
|
+
this.hidePopup(e);
|
|
10005
10008
|
}
|
|
10006
10009
|
}
|
|
10007
10010
|
this.refreshPlaceHolder();
|
|
@@ -10033,7 +10036,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
10033
10036
|
this.makeTextBoxEmpty();
|
|
10034
10037
|
}
|
|
10035
10038
|
if (this.closePopupOnSelect) {
|
|
10036
|
-
this.hidePopup();
|
|
10039
|
+
this.hidePopup(e);
|
|
10037
10040
|
}
|
|
10038
10041
|
this.checkPlaceholderSize();
|
|
10039
10042
|
}
|
|
@@ -10153,7 +10156,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
10153
10156
|
value = customVal;
|
|
10154
10157
|
}
|
|
10155
10158
|
if (this.isPopupOpen() && this.mode !== 'CheckBox') {
|
|
10156
|
-
this.hidePopup();
|
|
10159
|
+
this.hidePopup(e);
|
|
10157
10160
|
}
|
|
10158
10161
|
if (!this.inputFocus) {
|
|
10159
10162
|
this.inputElement.focus();
|
|
@@ -10193,7 +10196,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
10193
10196
|
this.expandTextbox();
|
|
10194
10197
|
}
|
|
10195
10198
|
removeAllItems(value, eve, isClearAll, element, mainElement) {
|
|
10196
|
-
|
|
10199
|
+
let index = this.value.indexOf(value);
|
|
10197
10200
|
const removeVal = this.value.slice(0);
|
|
10198
10201
|
removeVal.splice(index, 1);
|
|
10199
10202
|
this.setProperties({ value: [].concat([], removeVal) }, true);
|
|
@@ -11106,14 +11109,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
11106
11109
|
}
|
|
11107
11110
|
updateDataList() {
|
|
11108
11111
|
if (this.mainList && this.ulElement) {
|
|
11109
|
-
|
|
11110
|
-
|
|
11111
|
-
|
|
11112
|
-
(this.mainList.children[0].childElementCount < this.ulElement.children[0].childElementCount));
|
|
11113
|
-
const isAngularTemplateUpdate = this.itemTemplate && this.ulElement.childElementCount > 0
|
|
11114
|
-
&& !(this.ulElement.childElementCount < this.mainList.childElementCount)
|
|
11115
|
-
&& (this.ulElement.children[0].childElementCount > 0
|
|
11116
|
-
|| (this.fields.groupBy && this.ulElement.children[1] && this.ulElement.children[1].childElementCount > 0));
|
|
11112
|
+
let isDynamicGroupItemUpdate = this.mainList.childElementCount < this.ulElement.childElementCount;
|
|
11113
|
+
let isReactTemplateUpdate = ((this.ulElement.childElementCount > 0 && this.ulElement.children[0].childElementCount > 0) && (this.mainList.children[0].childElementCount < this.ulElement.children[0].childElementCount));
|
|
11114
|
+
let isAngularTemplateUpdate = this.itemTemplate && this.ulElement.childElementCount > 0 && !(this.ulElement.childElementCount < this.mainList.childElementCount) && (this.ulElement.children[0].childElementCount > 0 || (this.fields.groupBy && this.ulElement.children[1] && this.ulElement.children[1].childElementCount > 0));
|
|
11117
11115
|
if (isDynamicGroupItemUpdate || isReactTemplateUpdate || isAngularTemplateUpdate) {
|
|
11118
11116
|
//EJ2-57748 - for this task, we prevent the ul element cloning ( this.mainList = this.ulElement.cloneNode ? <HTMLElement>this.ulElement.cloneNode(true) : this.ulElement;)
|
|
11119
11117
|
this.mainList = this.ulElement;
|
|
@@ -11330,7 +11328,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
11330
11328
|
this.focusAtFirstListItem();
|
|
11331
11329
|
}
|
|
11332
11330
|
if (this.closePopupOnSelect) {
|
|
11333
|
-
this.hidePopup();
|
|
11331
|
+
this.hidePopup(e);
|
|
11334
11332
|
}
|
|
11335
11333
|
else {
|
|
11336
11334
|
e.preventDefault();
|
|
@@ -11521,7 +11519,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
11521
11519
|
*/
|
|
11522
11520
|
showSpinner() {
|
|
11523
11521
|
if (isNullOrUndefined(this.spinnerElement)) {
|
|
11524
|
-
|
|
11522
|
+
let filterClear = this.filterParent && this.filterParent.querySelector('.e-clear-icon.e-icons');
|
|
11525
11523
|
if (this.overAllClear.style.display !== 'none' || filterClear) {
|
|
11526
11524
|
this.spinnerElement = filterClear ? filterClear : this.overAllClear;
|
|
11527
11525
|
}
|
|
@@ -11598,7 +11596,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
11598
11596
|
const raminElement = this.createElement('span', {
|
|
11599
11597
|
className: REMAIN_WRAPPER$1
|
|
11600
11598
|
});
|
|
11601
|
-
|
|
11599
|
+
let remainCompildTemp = remainContent.replace('${count}', this.value.length.toString());
|
|
11602
11600
|
raminElement.innerText = remainCompildTemp;
|
|
11603
11601
|
this.viewWrapper.appendChild(raminElement);
|
|
11604
11602
|
this.renderReactTemplates();
|
|
@@ -11678,8 +11676,8 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
11678
11676
|
viewWrapper.removeChild(viewWrapper.firstChild);
|
|
11679
11677
|
}
|
|
11680
11678
|
raminElement.innerHTML = '';
|
|
11681
|
-
|
|
11682
|
-
|
|
11679
|
+
let remainTemp = remainContent.replace('${count}', remaining.toString());
|
|
11680
|
+
let totalTemp = totalContent.replace('${count}', remaining.toString());
|
|
11683
11681
|
raminElement.innerText = (viewWrapper.firstChild && viewWrapper.firstChild.nodeType === 3) ? remainTemp : totalTemp;
|
|
11684
11682
|
if (viewWrapper.firstChild && viewWrapper.firstChild.nodeType === 3) {
|
|
11685
11683
|
viewWrapper.classList.remove(TOTAL_COUNT_WRAPPER$1);
|
|
@@ -11867,9 +11865,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
11867
11865
|
else {
|
|
11868
11866
|
for (let i = 0; i < li.length && i < count; i++) {
|
|
11869
11867
|
this.removeHover();
|
|
11870
|
-
|
|
11871
|
-
|
|
11872
|
-
|
|
11868
|
+
let customVal = li[i].getAttribute('data-value');
|
|
11869
|
+
let value = this.getFormattedValue(customVal);
|
|
11870
|
+
let mainElement = this.mainList ? this.mainList.querySelectorAll(state ?
|
|
11873
11871
|
'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
|
|
11874
11872
|
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[i] : null;
|
|
11875
11873
|
if (state) {
|
|
@@ -12132,7 +12130,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
12132
12130
|
break;
|
|
12133
12131
|
case 'popupHeight':
|
|
12134
12132
|
if (this.popupObj) {
|
|
12135
|
-
|
|
12133
|
+
let overAllHeight = parseInt(this.popupHeight, 10);
|
|
12136
12134
|
if (this.popupHeight !== 'auto') {
|
|
12137
12135
|
this.list.style.maxHeight = formatUnit(overAllHeight);
|
|
12138
12136
|
this.popupWrapper.style.maxHeight = formatUnit(this.popupHeight);
|
|
@@ -12170,21 +12168,23 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
12170
12168
|
this.renderPopup();
|
|
12171
12169
|
}
|
|
12172
12170
|
presentItemValue(ulElement) {
|
|
12173
|
-
|
|
12171
|
+
let valuecheck = [];
|
|
12174
12172
|
for (let i = 0; i < this.value.length; i++) {
|
|
12175
|
-
|
|
12173
|
+
let checkEle = this.findListElement(((this.allowFiltering && !isNullOrUndefined(this.mainList)) ? this.mainList : ulElement), 'li', 'data-value', this.value[i]);
|
|
12176
12174
|
if (!checkEle) {
|
|
12177
12175
|
valuecheck.push(this.value[i]);
|
|
12178
12176
|
}
|
|
12179
12177
|
}
|
|
12180
12178
|
return valuecheck;
|
|
12181
12179
|
}
|
|
12180
|
+
;
|
|
12182
12181
|
addNonPresentItems(valuecheck, ulElement, list, event) {
|
|
12183
12182
|
this.dataSource.executeQuery(this.getForQuery(valuecheck)).then((e) => {
|
|
12184
12183
|
this.addItem(e.result, list.length);
|
|
12185
12184
|
this.updateActionList(ulElement, list, event);
|
|
12186
12185
|
});
|
|
12187
12186
|
}
|
|
12187
|
+
;
|
|
12188
12188
|
updateVal(newProp, oldProp, prop) {
|
|
12189
12189
|
if (!this.list) {
|
|
12190
12190
|
this.onLoadSelect();
|
|
@@ -12197,7 +12197,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
12197
12197
|
if (!isNullOrUndefined(this.value) && !this.allowCustomValue) {
|
|
12198
12198
|
valuecheck = this.presentItemValue(this.ulElement);
|
|
12199
12199
|
}
|
|
12200
|
-
if (prop
|
|
12200
|
+
if (prop == 'value' && valuecheck.length > 0 && this.dataSource instanceof DataManager && !isNullOrUndefined(this.value)
|
|
12201
12201
|
&& this.listData != null) {
|
|
12202
12202
|
this.mainData = null;
|
|
12203
12203
|
this.setDynValue = true;
|
|
@@ -12251,7 +12251,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
12251
12251
|
*
|
|
12252
12252
|
* @returns {void}
|
|
12253
12253
|
*/
|
|
12254
|
-
hidePopup() {
|
|
12254
|
+
hidePopup(e) {
|
|
12255
12255
|
const delay = 100;
|
|
12256
12256
|
if (this.isPopupOpen()) {
|
|
12257
12257
|
const animModel = {
|
|
@@ -12259,7 +12259,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
12259
12259
|
duration: 100,
|
|
12260
12260
|
delay: delay ? delay : 0
|
|
12261
12261
|
};
|
|
12262
|
-
const eventArgs = { popup: this.popupObj, cancel: false, animation: animModel };
|
|
12262
|
+
const eventArgs = { popup: this.popupObj, cancel: false, animation: animModel, event: e || null };
|
|
12263
12263
|
this.trigger('close', eventArgs, (eventArgs) => {
|
|
12264
12264
|
if (!eventArgs.cancel) {
|
|
12265
12265
|
if (this.fields.groupBy && this.mode !== 'CheckBox' && this.fixedHeaderElement) {
|
|
@@ -13692,14 +13692,14 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
13692
13692
|
triggerDrag(args) {
|
|
13693
13693
|
let scrollParent;
|
|
13694
13694
|
let boundRect;
|
|
13695
|
-
|
|
13695
|
+
let scrollMoved = 36;
|
|
13696
13696
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13697
|
-
|
|
13697
|
+
let event = args.event;
|
|
13698
13698
|
let wrapper;
|
|
13699
|
-
if (args.target && (args.target.classList.contains(
|
|
13700
|
-
|| args.target.classList.contains(
|
|
13701
|
-
if (args.target.classList.contains(
|
|
13702
|
-
|| args.target.classList.contains(
|
|
13699
|
+
if (args.target && (args.target.classList.contains("e-listbox-wrapper") || args.target.classList.contains("e-list-item")
|
|
13700
|
+
|| args.target.classList.contains("e-filter-parent") || args.target.classList.contains("e-input-group"))) {
|
|
13701
|
+
if (args.target.classList.contains("e-list-item") || args.target.classList.contains("e-filter-parent")
|
|
13702
|
+
|| args.target.classList.contains("e-input-group")) {
|
|
13703
13703
|
wrapper = args.target.closest('.e-listbox-wrapper');
|
|
13704
13704
|
}
|
|
13705
13705
|
else {
|
|
@@ -13753,8 +13753,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
13753
13753
|
const getArgs = this.getDragArgs({ target: args.droppedElement }, true);
|
|
13754
13754
|
const sourceArgs = { previousData: this.dataSource };
|
|
13755
13755
|
const destArgs = { previousData: listObj.dataSource };
|
|
13756
|
-
let dragArgs = extend({}, getArgs, { target: args.target, source: { previousData: this.dataSource },
|
|
13757
|
-
previousIndex: args.previousIndex, currentIndex: args.currentIndex });
|
|
13756
|
+
let dragArgs = extend({}, getArgs, { target: args.target, source: { previousData: this.dataSource }, previousIndex: args.previousIndex, currentIndex: args.currentIndex });
|
|
13758
13757
|
if (listObj !== this) {
|
|
13759
13758
|
const sourceArgs1 = extend(sourceArgs, { currentData: this.listData });
|
|
13760
13759
|
dragArgs = extend(dragArgs, { source: sourceArgs1, destination: destArgs });
|
|
@@ -13848,14 +13847,14 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
13848
13847
|
currIdx++;
|
|
13849
13848
|
});
|
|
13850
13849
|
if (this.fields.groupBy) {
|
|
13851
|
-
|
|
13850
|
+
let sourceElem = this.renderItems(this.listData, this.fields);
|
|
13852
13851
|
this.updateListItems(sourceElem, this.ulElement);
|
|
13853
13852
|
this.setSelection();
|
|
13854
13853
|
}
|
|
13855
13854
|
if (listObj.sortOrder !== 'None' || this.selectionSettings.showCheckbox
|
|
13856
13855
|
!== listObj.selectionSettings.showCheckbox || listObj.fields.groupBy || listObj.itemTemplate || this.itemTemplate) {
|
|
13857
13856
|
const sortable = getComponent(ul, 'sortable');
|
|
13858
|
-
|
|
13857
|
+
let sourceElem = listObj.renderItems(listData, listObj.fields);
|
|
13859
13858
|
listObj.updateListItems(sourceElem, ul);
|
|
13860
13859
|
this.setSelection();
|
|
13861
13860
|
if (sortable.placeHolderElement) {
|
|
@@ -13885,7 +13884,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
13885
13884
|
}
|
|
13886
13885
|
updateListItems(sourceElem, destElem) {
|
|
13887
13886
|
const i = 0;
|
|
13888
|
-
destElem.innerHTML =
|
|
13887
|
+
destElem.innerHTML = "";
|
|
13889
13888
|
while (i < sourceElem.childNodes.length) {
|
|
13890
13889
|
destElem.appendChild(sourceElem.childNodes[i]);
|
|
13891
13890
|
}
|
|
@@ -13945,7 +13944,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
13945
13944
|
enableItems(items, enable = true, isValue) {
|
|
13946
13945
|
let li;
|
|
13947
13946
|
items.forEach((item) => {
|
|
13948
|
-
|
|
13947
|
+
let text = item;
|
|
13949
13948
|
li = this.findListElement(this.list, 'li', 'data-value', isValue ? text : this.getValueByText(text));
|
|
13950
13949
|
if (!li) {
|
|
13951
13950
|
return;
|
|
@@ -14676,7 +14675,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
14676
14675
|
});
|
|
14677
14676
|
if (isRefresh) {
|
|
14678
14677
|
if (fListBox.fields.groupBy) {
|
|
14679
|
-
|
|
14678
|
+
let sourceElem = fListBox.renderItems(listData, fListBox.fields);
|
|
14680
14679
|
fListBox.updateListItems(sourceElem, fListBox.ulElement);
|
|
14681
14680
|
}
|
|
14682
14681
|
else {
|
|
@@ -14709,7 +14708,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
14709
14708
|
tListBox.jsonData = tJsonData;
|
|
14710
14709
|
tListBox.sortedData = tSortData;
|
|
14711
14710
|
if (isRefresh) {
|
|
14712
|
-
|
|
14711
|
+
let sourceElem = tListBox.renderItems(tListData, tListBox.fields);
|
|
14713
14712
|
tListBox.updateListItems(sourceElem, tListBox.ulElement);
|
|
14714
14713
|
tListBox.setSelection();
|
|
14715
14714
|
fListBox.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
|
|
@@ -14798,7 +14797,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
14798
14797
|
tListBox.jsonData = jsonData;
|
|
14799
14798
|
fListBox.listData = fListBox.sortedData = fListBox.jsonData = [];
|
|
14800
14799
|
if (isRefresh) {
|
|
14801
|
-
|
|
14800
|
+
let sourceElem = tListBox.renderItems(listData, tListBox.fields);
|
|
14802
14801
|
tListBox.updateListItems(sourceElem, tListBox.ulElement);
|
|
14803
14802
|
this.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
|
|
14804
14803
|
}
|
|
@@ -14859,7 +14858,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
14859
14858
|
break;
|
|
14860
14859
|
}
|
|
14861
14860
|
}
|
|
14862
|
-
const elems = Array.prototype.slice.call(this.element.
|
|
14861
|
+
const elems = Array.prototype.slice.call(this.element.querySelectorAll('.e-grabbed'));
|
|
14863
14862
|
return elems;
|
|
14864
14863
|
}
|
|
14865
14864
|
getDragArgs(args, isDragEnd) {
|
|
@@ -14915,7 +14914,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
14915
14914
|
}
|
|
14916
14915
|
}
|
|
14917
14916
|
}
|
|
14918
|
-
else if (e.keyCode !== 37 && e.keyCode !== 39 && e.code !==
|
|
14917
|
+
else if (e.keyCode !== 37 && e.keyCode !== 39 && e.code !== "KeyA") {
|
|
14919
14918
|
this.upDownKeyHandler(e);
|
|
14920
14919
|
}
|
|
14921
14920
|
}
|
|
@@ -14958,9 +14957,9 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
14958
14957
|
this.selectHandler({ target: ul.children[fliIdx], ctrlKey: e.ctrlKey, shiftKey: e.shiftKey }, true);
|
|
14959
14958
|
}
|
|
14960
14959
|
if (this.selectionSettings.showCheckbox && e.ctrlKey && e.shiftKey && (e.keyCode === 36 || e.keyCode === 35)) {
|
|
14961
|
-
|
|
14962
|
-
|
|
14963
|
-
|
|
14960
|
+
let selectedidx = Array.prototype.indexOf.call(ul.children, fli);
|
|
14961
|
+
let sidx = e.code === "Home" ? 0 : selectedidx;
|
|
14962
|
+
let eidx = e.code === "Home" ? selectedidx : ul.children.length - 1;
|
|
14964
14963
|
for (let i = sidx; i <= eidx; i++) {
|
|
14965
14964
|
const item = ul.children[i];
|
|
14966
14965
|
this.notify('updatelist', { li: item, e: {
|