@syncfusion/ej2-dropdowns 25.1.41 → 25.2.4
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/.eslintrc.json +260 -0
- package/CHANGELOG.md +32 -0
- package/dist/ej2-dropdowns.min.js +2 -2
- 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 +184 -119
- package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es5.js +193 -127
- 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/package.json +12 -12
- package/src/drop-down-base/drop-down-base.d.ts +7 -2
- package/src/drop-down-base/drop-down-base.js +21 -9
- package/src/drop-down-list/drop-down-list.js +2 -2
- package/src/drop-down-tree/drop-down-tree.js +8 -4
- package/src/multi-select/multi-select.d.ts +2 -0
- package/src/multi-select/multi-select.js +162 -112
- package/tslint.json +111 -0
|
@@ -105,6 +105,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
105
105
|
_this.resetMainList = null;
|
|
106
106
|
_this.resetFilteredData = false;
|
|
107
107
|
_this.preventSetCurrentData = false;
|
|
108
|
+
_this.isSelectAllLoop = false;
|
|
108
109
|
_this.scrollFocusStatus = false;
|
|
109
110
|
_this.keyDownStatus = false;
|
|
110
111
|
_this.IsScrollerAtEnd = function () {
|
|
@@ -432,7 +433,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
432
433
|
if (!isNullOrUndefined(this.value)) {
|
|
433
434
|
this.tempValues = this.allowObjectBinding ? this.value.slice() : this.value.slice();
|
|
434
435
|
}
|
|
435
|
-
var customValue = this.allowObjectBinding ? this.getDataByValue(value) : this.getFormattedValue(value);
|
|
436
|
+
var customValue = this.allowObjectBinding ? this.getDataByValue(this.getFormattedValue(value)) : this.getFormattedValue(value);
|
|
436
437
|
if (this.allowCustomValue && (value !== 'false' && customValue === false || (!isNullOrUndefined(customValue) &&
|
|
437
438
|
customValue.toString() === 'NaN'))) {
|
|
438
439
|
customValue = value;
|
|
@@ -806,6 +807,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
806
807
|
if (this.enableVirtualization && (this.viewPortInfo.endIndex != 0) && !this.virtualSelectAll) {
|
|
807
808
|
return this.virtualFilterQuery(filterQuery);
|
|
808
809
|
}
|
|
810
|
+
if (this.virtualSelectAll) {
|
|
811
|
+
return query ? query.take(this.maximumSelectionLength).requiresCount() : this.query ? this.query.take(this.maximumSelectionLength).requiresCount() : new Query().take(this.maximumSelectionLength).requiresCount();
|
|
812
|
+
}
|
|
809
813
|
return query ? query : this.query ? this.query : new Query();
|
|
810
814
|
}
|
|
811
815
|
};
|
|
@@ -1977,7 +1981,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1977
1981
|
this.removeChipSelection();
|
|
1978
1982
|
this.addChipSelection(temp, e);
|
|
1979
1983
|
}
|
|
1980
|
-
var currentChip = this.allowObjectBinding ? this.getDataByValue(selectedElem.getAttribute('data-value')) : selectedElem.getAttribute('data-value');
|
|
1984
|
+
var currentChip = this.allowObjectBinding ? this.getDataByValue(this.getFormattedValue(selectedElem.getAttribute('data-value'))) : selectedElem.getAttribute('data-value');
|
|
1981
1985
|
this.removeValue(currentChip, e);
|
|
1982
1986
|
this.makeTextBoxEmpty();
|
|
1983
1987
|
}
|
|
@@ -2164,7 +2168,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2164
2168
|
if (this.enabled && !this.readonly) {
|
|
2165
2169
|
var element = e.target.parentElement;
|
|
2166
2170
|
var customVal = element.getAttribute('data-value');
|
|
2167
|
-
var value = this.allowObjectBinding ? this.getDataByValue(customVal) : this.getFormattedValue(customVal);
|
|
2171
|
+
var value = this.allowObjectBinding ? this.getDataByValue(this.getFormattedValue(customVal)) : this.getFormattedValue(customVal);
|
|
2168
2172
|
if (this.allowCustomValue && ((customVal !== 'false' && value === false) ||
|
|
2169
2173
|
(!isNullOrUndefined(value) && value.toString() === 'NaN'))) {
|
|
2170
2174
|
value = customVal;
|
|
@@ -2255,8 +2259,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2255
2259
|
dropDownBaseClasses.selected;
|
|
2256
2260
|
if (index !== -1) {
|
|
2257
2261
|
var currentValue = this.allowObjectBinding ? getValue(((this.fields.value) ? this.fields.value : ''), value) : value;
|
|
2258
|
-
var element_1 = this.findListElement(this.list, 'li', 'data-value', currentValue);
|
|
2259
|
-
var val_1 = this.getDataByValue(value);
|
|
2262
|
+
var element_1 = this.virtualSelectAll ? null : this.findListElement(this.list, 'li', 'data-value', currentValue);
|
|
2263
|
+
var val_1 = this.allowObjectBinding ? value : this.getDataByValue(value);
|
|
2260
2264
|
var eventArgs = {
|
|
2261
2265
|
e: eve,
|
|
2262
2266
|
item: element_1,
|
|
@@ -2444,9 +2448,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2444
2448
|
this.value = [];
|
|
2445
2449
|
}
|
|
2446
2450
|
var currentValue = this.allowObjectBinding ? this.getDataByValue(value) : value;
|
|
2447
|
-
if ((this.allowObjectBinding && !this.isObjectInArray(value, this.value)) || (!this.allowObjectBinding && this.value.indexOf(currentValue) < 0)) {
|
|
2451
|
+
if ((this.allowObjectBinding && !this.isObjectInArray(this.getDataByValue(value), this.value)) || (!this.allowObjectBinding && this.value.indexOf(currentValue) < 0)) {
|
|
2448
2452
|
this.setProperties({ value: [].concat([], this.value, [currentValue]) }, true);
|
|
2449
|
-
if (this.enableVirtualization) {
|
|
2453
|
+
if (this.enableVirtualization && !this.isSelectAllLoop) {
|
|
2450
2454
|
var data = this.viewWrapper.innerHTML;
|
|
2451
2455
|
var temp = void 0;
|
|
2452
2456
|
data += (this.value.length === 1) ? '' : this.delimiterChar + ' ';
|
|
@@ -3287,7 +3291,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3287
3291
|
if (!this.enableVirtualization) {
|
|
3288
3292
|
this.listData = this.mainData;
|
|
3289
3293
|
}
|
|
3290
|
-
if (!isNullOrUndefined(this.hiddenElement)) {
|
|
3294
|
+
if (!isNullOrUndefined(this.hiddenElement) && !this.enableVirtualization) {
|
|
3291
3295
|
this.hiddenElement.innerHTML = '';
|
|
3292
3296
|
}
|
|
3293
3297
|
if (!isNullOrUndefined(this.value)) {
|
|
@@ -3315,6 +3319,27 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3315
3319
|
var textValues = this.text != null && this.text != "" ? this.text + ',' + temp : temp;
|
|
3316
3320
|
data += temp + delimiterChar + ' ';
|
|
3317
3321
|
text.push(textValues);
|
|
3322
|
+
hiddenElementContent = this.hiddenElement.innerHTML;
|
|
3323
|
+
if ((e && e.currentTarget && e.currentTarget.classList.contains('e-chips-close')) || (e && (e.key === 'Backspace'))) {
|
|
3324
|
+
var item = e.target.parentElement.getAttribute('data-value');
|
|
3325
|
+
if (e.key === 'Backspace') {
|
|
3326
|
+
var lastChild = this.hiddenElement.lastChild;
|
|
3327
|
+
if (lastChild) {
|
|
3328
|
+
this.hiddenElement.removeChild(lastChild);
|
|
3329
|
+
}
|
|
3330
|
+
}
|
|
3331
|
+
else {
|
|
3332
|
+
this.hiddenElement.childNodes.forEach(function (option) {
|
|
3333
|
+
if (option.value === item) {
|
|
3334
|
+
option.parentNode.removeChild(option);
|
|
3335
|
+
}
|
|
3336
|
+
});
|
|
3337
|
+
}
|
|
3338
|
+
hiddenElementContent = this.hiddenElement.innerHTML;
|
|
3339
|
+
}
|
|
3340
|
+
else {
|
|
3341
|
+
hiddenElementContent += "<option selected value=\"" + value + "\">" + index + "</option>";
|
|
3342
|
+
}
|
|
3318
3343
|
break;
|
|
3319
3344
|
}
|
|
3320
3345
|
else {
|
|
@@ -3533,7 +3558,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3533
3558
|
};
|
|
3534
3559
|
MultiSelect.prototype.updateListSelection = function (li, e, length) {
|
|
3535
3560
|
var customVal = li.getAttribute('data-value');
|
|
3536
|
-
var value = this.allowObjectBinding ? this.getDataByValue(customVal) : this.getFormattedValue(customVal);
|
|
3561
|
+
var value = this.allowObjectBinding ? this.getDataByValue(this.getFormattedValue(customVal)) : this.getFormattedValue(customVal);
|
|
3537
3562
|
if (this.allowCustomValue && ((customVal !== 'false' && value === false) ||
|
|
3538
3563
|
(!isNullOrUndefined(value) && value.toString() === 'NaN'))) {
|
|
3539
3564
|
value = customVal;
|
|
@@ -4239,14 +4264,14 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4239
4264
|
var li;
|
|
4240
4265
|
if (!isNullOrUndefined(this.list)) {
|
|
4241
4266
|
li = this.list.querySelectorAll(state ?
|
|
4242
|
-
'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
|
|
4243
|
-
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)');
|
|
4267
|
+
'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide):not(.e-virtual-list)' :
|
|
4268
|
+
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide):not(.e-virtual-list)');
|
|
4244
4269
|
}
|
|
4245
4270
|
if (this.value && this.value.length && event && event.target
|
|
4246
4271
|
&& closest(event.target, '.e-close-hooker') && this.allowFiltering) {
|
|
4247
4272
|
li = this.mainList.querySelectorAll(state ?
|
|
4248
|
-
'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
|
|
4249
|
-
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)');
|
|
4273
|
+
'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide):not(.e-virtual-list)' :
|
|
4274
|
+
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide):not(.e-virtual-list)');
|
|
4250
4275
|
}
|
|
4251
4276
|
if (this.enableGroupCheckBox && this.mode === 'CheckBox' && !isNullOrUndefined(this.fields.groupBy)) {
|
|
4252
4277
|
var target = (event ? (this.groupTemplate ? closest(event.target, '.e-list-group-item') : event.target) : null);
|
|
@@ -4308,6 +4333,108 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4308
4333
|
}
|
|
4309
4334
|
this.addValidInputClass();
|
|
4310
4335
|
};
|
|
4336
|
+
MultiSelect.prototype.virtualSelectionAll = function (state, li, event) {
|
|
4337
|
+
var _this = this;
|
|
4338
|
+
var index = 0;
|
|
4339
|
+
var length = li.length;
|
|
4340
|
+
var count = this.maximumSelectionLength;
|
|
4341
|
+
if (state) {
|
|
4342
|
+
length = this.virtualSelectAllData && this.virtualSelectAllData.length != 0 ? this.virtualSelectAllData.length : length;
|
|
4343
|
+
this.listData = this.virtualSelectAllData;
|
|
4344
|
+
var ulElement = this.createListItems(this.virtualSelectAllData.slice(0, 30), this.fields);
|
|
4345
|
+
var firstItems = ulElement.querySelectorAll('li');
|
|
4346
|
+
var fragment_1 = document.createDocumentFragment();
|
|
4347
|
+
firstItems.forEach(function (node) {
|
|
4348
|
+
fragment_1.appendChild(node.cloneNode(true));
|
|
4349
|
+
});
|
|
4350
|
+
li.forEach(function (node) {
|
|
4351
|
+
fragment_1.appendChild(node.cloneNode(true));
|
|
4352
|
+
});
|
|
4353
|
+
var concatenatedNodeList = fragment_1.childNodes;
|
|
4354
|
+
if (this.virtualSelectAllData instanceof Array) {
|
|
4355
|
+
while (index < length && index <= 50 && index < count) {
|
|
4356
|
+
this.isSelectAllTarget = (length === index + 1);
|
|
4357
|
+
if (concatenatedNodeList[index]) {
|
|
4358
|
+
var value = this.allowObjectBinding ? this.getDataByValue(concatenatedNodeList[index].getAttribute('data-value')) : this.getFormattedValue(concatenatedNodeList[index].getAttribute('data-value'));
|
|
4359
|
+
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value) >= 0) || (this.allowObjectBinding && this.indexOfObjectInArray(value, this.value) >= 0))) {
|
|
4360
|
+
index++;
|
|
4361
|
+
continue;
|
|
4362
|
+
}
|
|
4363
|
+
this.updateListSelection(concatenatedNodeList[index], event, length - index);
|
|
4364
|
+
}
|
|
4365
|
+
else {
|
|
4366
|
+
var value = getValue((this.fields.value) ? this.fields.value : '', this.virtualSelectAllData[index]);
|
|
4367
|
+
value = this.allowObjectBinding ? this.getDataByValue(value) : value;
|
|
4368
|
+
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value) >= 0) || (this.allowObjectBinding && this.indexOfObjectInArray(value, this.value) >= 0))) {
|
|
4369
|
+
index++;
|
|
4370
|
+
continue;
|
|
4371
|
+
}
|
|
4372
|
+
if (this.value && value != null && Array.isArray(this.value) && ((!this.allowObjectBinding && this.value.indexOf(value) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value, this.value)))) {
|
|
4373
|
+
this.dispatchSelect(value, event, null, false, length);
|
|
4374
|
+
}
|
|
4375
|
+
}
|
|
4376
|
+
index++;
|
|
4377
|
+
}
|
|
4378
|
+
if (length > 50) {
|
|
4379
|
+
setTimeout(function () {
|
|
4380
|
+
if (_this.virtualSelectAllData && _this.virtualSelectAllData.length > 0) {
|
|
4381
|
+
_this.virtualSelectAllData.map(function (obj) {
|
|
4382
|
+
if (_this.value && obj[_this.fields.value] != null && Array.isArray(_this.value) && ((!_this.allowObjectBinding && _this.value.indexOf(obj[_this.fields.value]) < 0) || (_this.allowObjectBinding && !_this.isObjectInArray(obj[_this.fields.value], _this.value)))) {
|
|
4383
|
+
_this.dispatchSelect(obj[_this.fields.value], event, null, false, length);
|
|
4384
|
+
}
|
|
4385
|
+
});
|
|
4386
|
+
}
|
|
4387
|
+
_this.updatedataValueItems(event);
|
|
4388
|
+
_this.isSelectAllLoop = false;
|
|
4389
|
+
if (!_this.changeOnBlur) {
|
|
4390
|
+
_this.updateValueState(event, _this.value, _this.tempValues);
|
|
4391
|
+
_this.isSelectAll = _this.isSelectAll ? !_this.isSelectAll : _this.isSelectAll;
|
|
4392
|
+
}
|
|
4393
|
+
_this.updateHiddenElement();
|
|
4394
|
+
if (_this.popupWrapper && li[index - 1] && li[index - 1].classList.contains('e-item-focus')) {
|
|
4395
|
+
var selectAllParent = document.getElementsByClassName('e-selectall-parent')[0];
|
|
4396
|
+
if (selectAllParent && selectAllParent.classList.contains('e-item-focus')) {
|
|
4397
|
+
li[index - 1].classList.remove('e-item-focus');
|
|
4398
|
+
}
|
|
4399
|
+
}
|
|
4400
|
+
}, 0);
|
|
4401
|
+
}
|
|
4402
|
+
}
|
|
4403
|
+
}
|
|
4404
|
+
else {
|
|
4405
|
+
if (this.virtualSelectAllData && this.virtualSelectAllData.length > 0) {
|
|
4406
|
+
this.virtualSelectAllData.map(function (obj) {
|
|
4407
|
+
_this.virtualSelectAll = true;
|
|
4408
|
+
_this.removeValue(_this.value[index], event, _this.value.length - index);
|
|
4409
|
+
});
|
|
4410
|
+
}
|
|
4411
|
+
this.updatedataValueItems(event);
|
|
4412
|
+
if (!this.changeOnBlur) {
|
|
4413
|
+
this.updateValueState(event, this.value, this.tempValues);
|
|
4414
|
+
this.isSelectAll = this.isSelectAll ? !this.isSelectAll : this.isSelectAll;
|
|
4415
|
+
}
|
|
4416
|
+
this.updateHiddenElement();
|
|
4417
|
+
this.value = [];
|
|
4418
|
+
this.virtualSelectAll = false;
|
|
4419
|
+
if (!isNullOrUndefined(this.viewPortInfo.startIndex) && !isNullOrUndefined(this.viewPortInfo.endIndex)) {
|
|
4420
|
+
this.notify("setCurrentViewDataAsync", {
|
|
4421
|
+
component: this.getModuleName(),
|
|
4422
|
+
module: "VirtualScroll",
|
|
4423
|
+
});
|
|
4424
|
+
}
|
|
4425
|
+
}
|
|
4426
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4427
|
+
var virtualTrackElement = this.list.getElementsByClassName('e-virtual-ddl')[0];
|
|
4428
|
+
if (virtualTrackElement) {
|
|
4429
|
+
(virtualTrackElement).style = this.GetVirtualTrackHeight();
|
|
4430
|
+
}
|
|
4431
|
+
this.UpdateSkeleton();
|
|
4432
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4433
|
+
var virtualContentElement = this.list.getElementsByClassName('e-virtual-ddl-content')[0];
|
|
4434
|
+
if (virtualContentElement) {
|
|
4435
|
+
(virtualContentElement).style = this.getTransformValues();
|
|
4436
|
+
}
|
|
4437
|
+
};
|
|
4311
4438
|
MultiSelect.prototype.updateValue = function (event, li, state) {
|
|
4312
4439
|
var _this = this;
|
|
4313
4440
|
var length = li.length;
|
|
@@ -4331,95 +4458,14 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4331
4458
|
}
|
|
4332
4459
|
if (!beforeSelectArgs.preventSelectEvent) {
|
|
4333
4460
|
if (this.enableVirtualization) {
|
|
4334
|
-
|
|
4335
|
-
|
|
4461
|
+
this.virtualSelectAll = true;
|
|
4462
|
+
this.virtualSelectAllState = state;
|
|
4463
|
+
this.CurrentEvent = event;
|
|
4464
|
+
if (!this.virtualSelectAllData) {
|
|
4336
4465
|
this.resetList(this.dataSource, this.fields, new Query());
|
|
4337
|
-
if (this.virtualSelectAllData instanceof Array) {
|
|
4338
|
-
for (var i = 0; i < this.virtualSelectAllData.length; i++) {
|
|
4339
|
-
if (li[this.skeletonCount + i]) {
|
|
4340
|
-
var value_2 = this.allowObjectBinding ? this.getDataByValue(li[this.skeletonCount + i].getAttribute('data-value')) : this.getFormattedValue(li[this.skeletonCount + i].getAttribute('data-value'));
|
|
4341
|
-
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value_2) === 1) || (this.allowObjectBinding && this.indexOfObjectInArray(value_2, this.value) === 1))) {
|
|
4342
|
-
continue;
|
|
4343
|
-
}
|
|
4344
|
-
this.updateListSelection(li[this.skeletonCount + i], event, length - i);
|
|
4345
|
-
}
|
|
4346
|
-
else {
|
|
4347
|
-
if (this.fields) {
|
|
4348
|
-
var value_3 = getValue(this.fields.value, this.virtualSelectAllData[i]);
|
|
4349
|
-
value_3 = this.allowObjectBinding ? this.getDataByValue(value_3) : value_3;
|
|
4350
|
-
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value_3) === 1) || (this.allowObjectBinding && this.indexOfObjectInArray(value_3, this.value) === 1))) {
|
|
4351
|
-
continue;
|
|
4352
|
-
}
|
|
4353
|
-
if (this.value && value_3 != null && Array.isArray(this.value) && ((!this.allowObjectBinding && this.value.indexOf(value_3) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value_3, this.value)))) {
|
|
4354
|
-
this.dispatchSelect(value_3, event, null, false, length);
|
|
4355
|
-
}
|
|
4356
|
-
}
|
|
4357
|
-
}
|
|
4358
|
-
}
|
|
4359
|
-
if (this.virtualSelectAllData && this.value.length != this.virtualSelectAllData.length && this.virtualItemStartIndex != 0) {
|
|
4360
|
-
if (this.virtualItemStartIndex > this.itemCount) {
|
|
4361
|
-
for (var i = 0; i < this.itemCount; i++) {
|
|
4362
|
-
if (this.fields) {
|
|
4363
|
-
var value_4 = getValue(this.fields.value, this.virtualSelectAllData[i]);
|
|
4364
|
-
value_4 = this.allowObjectBinding ? this.getDataByValue(value_4) : value_4;
|
|
4365
|
-
if (this.value && value_4 != null && Array.isArray(this.value) && ((!this.allowObjectBinding && this.value.indexOf(value_4) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value_4, this.value)))) {
|
|
4366
|
-
this.setProperties({ value: [].concat([], this.value, this.allowObjectBinding ? [this.virtualSelectAllData[i]] : [value_4]) }, true);
|
|
4367
|
-
}
|
|
4368
|
-
}
|
|
4369
|
-
}
|
|
4370
|
-
}
|
|
4371
|
-
}
|
|
4372
|
-
else {
|
|
4373
|
-
for (var i = 0; i < this.virtualItemStartIndex; i++) {
|
|
4374
|
-
if (this.fields) {
|
|
4375
|
-
var value = getValue(this.fields.value, this.virtualSelectAllData[i]);
|
|
4376
|
-
value = this.allowObjectBinding ? this.getDataByValue(value) : value;
|
|
4377
|
-
if (Array.isArray(this.value) && ((!this.allowObjectBinding && this.value.indexOf(value) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value, this.value)))) {
|
|
4378
|
-
this.setProperties({ value: [].concat([], this.value, this.allowObjectBinding ? [this.virtualSelectAllData[i]] : [value]) }, true);
|
|
4379
|
-
}
|
|
4380
|
-
}
|
|
4381
|
-
}
|
|
4382
|
-
}
|
|
4383
|
-
}
|
|
4384
4466
|
}
|
|
4385
|
-
|
|
4386
|
-
|
|
4387
|
-
this.removeValue(this.value[index_2], event, this.value.length - index_2);
|
|
4388
|
-
index_2++;
|
|
4389
|
-
}
|
|
4390
|
-
if (length > 50) {
|
|
4391
|
-
setTimeout(function () {
|
|
4392
|
-
while (index_2 < _this.value.length && index_2 < count_1 && _this.value.length > 0) {
|
|
4393
|
-
_this.removeValue(value[index_2], event, _this.value.length - index_2);
|
|
4394
|
-
index_2++;
|
|
4395
|
-
}
|
|
4396
|
-
_this.updatedataValueItems(event);
|
|
4397
|
-
if (!_this.changeOnBlur) {
|
|
4398
|
-
_this.updateValueState(event, _this.value, _this.tempValues);
|
|
4399
|
-
_this.isSelectAll = _this.isSelectAll ? !_this.isSelectAll : _this.isSelectAll;
|
|
4400
|
-
}
|
|
4401
|
-
_this.updateHiddenElement();
|
|
4402
|
-
}, 0);
|
|
4403
|
-
}
|
|
4404
|
-
this.value = [];
|
|
4405
|
-
this.virtualSelectAll = false;
|
|
4406
|
-
if (!isNullOrUndefined(this.viewPortInfo.startIndex) && !isNullOrUndefined(this.viewPortInfo.endIndex)) {
|
|
4407
|
-
this.notify("setCurrentViewDataAsync", {
|
|
4408
|
-
component: this.getModuleName(),
|
|
4409
|
-
module: "VirtualScroll",
|
|
4410
|
-
});
|
|
4411
|
-
}
|
|
4412
|
-
}
|
|
4413
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4414
|
-
var virtualTrackElement = this.list.getElementsByClassName('e-virtual-ddl')[0];
|
|
4415
|
-
if (virtualTrackElement) {
|
|
4416
|
-
(virtualTrackElement).style = this.GetVirtualTrackHeight();
|
|
4417
|
-
}
|
|
4418
|
-
this.UpdateSkeleton();
|
|
4419
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4420
|
-
var virtualContentElement = this.list.getElementsByClassName('e-virtual-ddl-content')[0];
|
|
4421
|
-
if (virtualContentElement) {
|
|
4422
|
-
(virtualContentElement).style = this.getTransformValues();
|
|
4467
|
+
if (this.virtualSelectAllData) {
|
|
4468
|
+
this.virtualSelectionAll(state, li, event);
|
|
4423
4469
|
}
|
|
4424
4470
|
}
|
|
4425
4471
|
else {
|
|
@@ -4458,29 +4504,29 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4458
4504
|
}
|
|
4459
4505
|
}
|
|
4460
4506
|
else {
|
|
4461
|
-
for (var
|
|
4507
|
+
for (var i = 0; i < li.length && i < count_1; i++) {
|
|
4462
4508
|
this.removeHover();
|
|
4463
|
-
var customVal = li[
|
|
4464
|
-
var
|
|
4465
|
-
|
|
4509
|
+
var customVal = li[i].getAttribute('data-value');
|
|
4510
|
+
var value = this.getFormattedValue(customVal);
|
|
4511
|
+
value = this.allowObjectBinding ? this.getDataByValue(value) : value;
|
|
4466
4512
|
var mainElement = this.mainList ? this.mainList.querySelectorAll(state ?
|
|
4467
4513
|
'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
|
|
4468
|
-
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[
|
|
4514
|
+
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[i] : null;
|
|
4469
4515
|
if (state) {
|
|
4470
4516
|
this.value = !this.value ? [] : this.value;
|
|
4471
|
-
if ((!this.allowObjectBinding && this.value.indexOf(
|
|
4472
|
-
this.setProperties({ value: [].concat([], this.value, [
|
|
4517
|
+
if ((!this.allowObjectBinding && this.value.indexOf(value) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value, this.value))) {
|
|
4518
|
+
this.setProperties({ value: [].concat([], this.value, [value]) }, true);
|
|
4473
4519
|
}
|
|
4474
4520
|
this.removeFocus();
|
|
4475
|
-
this.addListSelection(li[
|
|
4521
|
+
this.addListSelection(li[i], mainElement);
|
|
4476
4522
|
this.updateChipStatus();
|
|
4477
4523
|
this.checkMaxSelection();
|
|
4478
4524
|
}
|
|
4479
4525
|
else {
|
|
4480
|
-
this.removeAllItems(
|
|
4526
|
+
this.removeAllItems(value, event, false, li[i], mainElement);
|
|
4481
4527
|
}
|
|
4482
4528
|
if (this.enableGroupCheckBox) {
|
|
4483
|
-
this.findGroupStart(li[
|
|
4529
|
+
this.findGroupStart(li[i]);
|
|
4484
4530
|
}
|
|
4485
4531
|
}
|
|
4486
4532
|
if (!state) {
|
|
@@ -4508,7 +4554,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4508
4554
|
this.updateValueState(event, this.value, this.tempValues);
|
|
4509
4555
|
this.isSelectAll = this.isSelectAll ? !this.isSelectAll : this.isSelectAll;
|
|
4510
4556
|
}
|
|
4511
|
-
this.
|
|
4557
|
+
if ((this.enableVirtualization && this.value && this.value.length > 0) || !this.enableVirtualization) {
|
|
4558
|
+
this.updateHiddenElement();
|
|
4559
|
+
}
|
|
4512
4560
|
}
|
|
4513
4561
|
};
|
|
4514
4562
|
MultiSelect.prototype.updateHiddenElement = function () {
|
|
@@ -4614,7 +4662,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4614
4662
|
}
|
|
4615
4663
|
this.selectAllItem(state, event);
|
|
4616
4664
|
}
|
|
4617
|
-
this.
|
|
4665
|
+
if (!(this.dataSource instanceof DataManager) || (this.dataSource instanceof DataManager && this.virtualSelectAllData)) {
|
|
4666
|
+
this.virtualSelectAll = false;
|
|
4667
|
+
}
|
|
4618
4668
|
};
|
|
4619
4669
|
/**
|
|
4620
4670
|
* Get the properties to be maintained in the persisted state.
|
package/tslint.json
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
{
|
|
2
|
+
"rules": {
|
|
3
|
+
"chai-vague-errors": true,
|
|
4
|
+
"use-isnan": true,
|
|
5
|
+
"missing-jsdoc": true,
|
|
6
|
+
"missing-optional-annotation": true,
|
|
7
|
+
"no-backbone-get-set-outside-model": true,
|
|
8
|
+
"no-banned-terms": true,
|
|
9
|
+
"no-constant-condition": true,
|
|
10
|
+
"no-control-regex": true,
|
|
11
|
+
"no-cookies": true,
|
|
12
|
+
"no-delete-expression": true,
|
|
13
|
+
"no-document-write": true,
|
|
14
|
+
"no-document-domain": true,
|
|
15
|
+
"no-disable-auto-sanitization": true,
|
|
16
|
+
"no-duplicate-case": true,
|
|
17
|
+
"no-duplicate-parameter-names": true,
|
|
18
|
+
"no-empty-interfaces": true,
|
|
19
|
+
"no-exec-script": true,
|
|
20
|
+
"no-function-constructor-with-string-args": true,
|
|
21
|
+
"no-function-expression": true,
|
|
22
|
+
"no-invalid-regexp": true,
|
|
23
|
+
"no-for-in": true,
|
|
24
|
+
"member-access": true,
|
|
25
|
+
"no-multiline-string": true,
|
|
26
|
+
"no-multiple-var-decl": true,
|
|
27
|
+
"no-unnecessary-bind": true,
|
|
28
|
+
"no-unnecessary-semicolons": true,
|
|
29
|
+
"no-octal-literal": true,
|
|
30
|
+
"no-regex-spaces": true,
|
|
31
|
+
"no-sparse-arrays": true,
|
|
32
|
+
"no-string-based-set-immediate": true,
|
|
33
|
+
"no-string-based-set-interval": true,
|
|
34
|
+
"no-unused-imports": true,
|
|
35
|
+
"no-with-statement": true,
|
|
36
|
+
"prefer-array-literal": true,
|
|
37
|
+
"promise-must-complete": false,
|
|
38
|
+
"react-no-dangerous-html": true,
|
|
39
|
+
"use-named-parameter": true,
|
|
40
|
+
"valid-typeof": true,
|
|
41
|
+
"max-func-body-length": [true, 100, {
|
|
42
|
+
"ignore-parameters-to-function-regex": "describe"
|
|
43
|
+
}],
|
|
44
|
+
"class-name": true,
|
|
45
|
+
"curly": true,
|
|
46
|
+
"eofline": false,
|
|
47
|
+
"forin": true,
|
|
48
|
+
"indent": [
|
|
49
|
+
true,
|
|
50
|
+
"spaces"
|
|
51
|
+
],
|
|
52
|
+
"label-position": true,
|
|
53
|
+
"max-line-length": [true, 140],
|
|
54
|
+
"no-arg": true,
|
|
55
|
+
"no-console": [true,
|
|
56
|
+
"debug",
|
|
57
|
+
"info",
|
|
58
|
+
"log",
|
|
59
|
+
"time",
|
|
60
|
+
"timeEnd",
|
|
61
|
+
"trace"
|
|
62
|
+
],
|
|
63
|
+
"no-construct": true,
|
|
64
|
+
"no-parameter-properties": true,
|
|
65
|
+
"no-debugger": true,
|
|
66
|
+
"no-duplicate-variable": true,
|
|
67
|
+
"no-empty": true,
|
|
68
|
+
"no-eval": true,
|
|
69
|
+
"no-string-literal": true,
|
|
70
|
+
"no-switch-case-fall-through": true,
|
|
71
|
+
"trailing-comma": true,
|
|
72
|
+
"no-trailing-whitespace": true,
|
|
73
|
+
"no-unused-expression": true,
|
|
74
|
+
"no-use-before-declare": false,
|
|
75
|
+
"no-var-requires": true,
|
|
76
|
+
"one-line": [true,
|
|
77
|
+
"check-open-brace",
|
|
78
|
+
"check-catch",
|
|
79
|
+
"check-else",
|
|
80
|
+
"check-whitespace"
|
|
81
|
+
],
|
|
82
|
+
"no-any": true,
|
|
83
|
+
"no-conditional-assignment": true,
|
|
84
|
+
"no-angle-bracket-type-assertion": false,
|
|
85
|
+
"align": [true, "parameters", "arguments", "statements"],
|
|
86
|
+
"no-empty-line-after-opening-brace": false,
|
|
87
|
+
"typedef-whitespace": [false],
|
|
88
|
+
"ban": true,
|
|
89
|
+
"quotemark": [true, "single"],
|
|
90
|
+
"semicolon": true,
|
|
91
|
+
"triple-equals": [true, "allow-null-check"],
|
|
92
|
+
"typedef": [true,
|
|
93
|
+
"call-signature",
|
|
94
|
+
"parameter",
|
|
95
|
+
"property-declaration",
|
|
96
|
+
"variable-declaration",
|
|
97
|
+
"arrow-parameter",
|
|
98
|
+
"member-variable-declaration"],
|
|
99
|
+
"variable-name": true,
|
|
100
|
+
"whitespace": [true,
|
|
101
|
+
"check-branch",
|
|
102
|
+
"check-decl",
|
|
103
|
+
"check-operator",
|
|
104
|
+
"check-separator",
|
|
105
|
+
"check-type"
|
|
106
|
+
],
|
|
107
|
+
"jsdoc-format": true,
|
|
108
|
+
"no-var-keyword": true,
|
|
109
|
+
"radix": true
|
|
110
|
+
}
|
|
111
|
+
}
|