@syncfusion/ej2-dropdowns 25.2.3 → 25.2.5

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.
@@ -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,7 +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);
3318
- hiddenElementContent += "<option selected value=\"" + valueItem + "\">" + index + "</option>";
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
+ }
3319
3343
  break;
3320
3344
  }
3321
3345
  else {
@@ -3534,7 +3558,7 @@ var MultiSelect = /** @class */ (function (_super) {
3534
3558
  };
3535
3559
  MultiSelect.prototype.updateListSelection = function (li, e, length) {
3536
3560
  var customVal = li.getAttribute('data-value');
3537
- var value = this.allowObjectBinding ? this.getDataByValue(customVal) : this.getFormattedValue(customVal);
3561
+ var value = this.allowObjectBinding ? this.getDataByValue(this.getFormattedValue(customVal)) : this.getFormattedValue(customVal);
3538
3562
  if (this.allowCustomValue && ((customVal !== 'false' && value === false) ||
3539
3563
  (!isNullOrUndefined(value) && value.toString() === 'NaN'))) {
3540
3564
  value = customVal;
@@ -4240,14 +4264,14 @@ var MultiSelect = /** @class */ (function (_super) {
4240
4264
  var li;
4241
4265
  if (!isNullOrUndefined(this.list)) {
4242
4266
  li = this.list.querySelectorAll(state ?
4243
- 'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
4244
- '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)');
4245
4269
  }
4246
4270
  if (this.value && this.value.length && event && event.target
4247
4271
  && closest(event.target, '.e-close-hooker') && this.allowFiltering) {
4248
4272
  li = this.mainList.querySelectorAll(state ?
4249
- 'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
4250
- '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)');
4251
4275
  }
4252
4276
  if (this.enableGroupCheckBox && this.mode === 'CheckBox' && !isNullOrUndefined(this.fields.groupBy)) {
4253
4277
  var target = (event ? (this.groupTemplate ? closest(event.target, '.e-list-group-item') : event.target) : null);
@@ -4309,6 +4333,108 @@ var MultiSelect = /** @class */ (function (_super) {
4309
4333
  }
4310
4334
  this.addValidInputClass();
4311
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
+ };
4312
4438
  MultiSelect.prototype.updateValue = function (event, li, state) {
4313
4439
  var _this = this;
4314
4440
  var length = li.length;
@@ -4332,95 +4458,14 @@ var MultiSelect = /** @class */ (function (_super) {
4332
4458
  }
4333
4459
  if (!beforeSelectArgs.preventSelectEvent) {
4334
4460
  if (this.enableVirtualization) {
4335
- if (state) {
4336
- this.virtualSelectAll = true;
4461
+ this.virtualSelectAll = true;
4462
+ this.virtualSelectAllState = state;
4463
+ this.CurrentEvent = event;
4464
+ if (!this.virtualSelectAllData) {
4337
4465
  this.resetList(this.dataSource, this.fields, new Query());
4338
- if (this.virtualSelectAllData instanceof Array) {
4339
- for (var i = 0; i < this.virtualSelectAllData.length; i++) {
4340
- if (li[this.skeletonCount + i]) {
4341
- var value_2 = this.allowObjectBinding ? this.getDataByValue(li[this.skeletonCount + i].getAttribute('data-value')) : this.getFormattedValue(li[this.skeletonCount + i].getAttribute('data-value'));
4342
- if (((!this.allowObjectBinding && this.value && this.value.indexOf(value_2) === 1) || (this.allowObjectBinding && this.indexOfObjectInArray(value_2, this.value) === 1))) {
4343
- continue;
4344
- }
4345
- this.updateListSelection(li[this.skeletonCount + i], event, length - i);
4346
- }
4347
- else {
4348
- if (this.fields) {
4349
- var value_3 = getValue(this.fields.value, this.virtualSelectAllData[i]);
4350
- value_3 = this.allowObjectBinding ? this.getDataByValue(value_3) : value_3;
4351
- if (((!this.allowObjectBinding && this.value && this.value.indexOf(value_3) === 1) || (this.allowObjectBinding && this.indexOfObjectInArray(value_3, this.value) === 1))) {
4352
- continue;
4353
- }
4354
- 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)))) {
4355
- this.dispatchSelect(value_3, event, null, false, length);
4356
- }
4357
- }
4358
- }
4359
- }
4360
- if (this.virtualSelectAllData && this.value.length != this.virtualSelectAllData.length && this.virtualItemStartIndex != 0) {
4361
- if (this.virtualItemStartIndex > this.itemCount) {
4362
- for (var i = 0; i < this.itemCount; i++) {
4363
- if (this.fields) {
4364
- var value_4 = getValue(this.fields.value, this.virtualSelectAllData[i]);
4365
- value_4 = this.allowObjectBinding ? this.getDataByValue(value_4) : value_4;
4366
- 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)))) {
4367
- this.setProperties({ value: [].concat([], this.value, this.allowObjectBinding ? [this.virtualSelectAllData[i]] : [value_4]) }, true);
4368
- }
4369
- }
4370
- }
4371
- }
4372
- }
4373
- else {
4374
- for (var i = 0; i < this.virtualItemStartIndex; i++) {
4375
- if (this.fields) {
4376
- var value = getValue(this.fields.value, this.virtualSelectAllData[i]);
4377
- value = this.allowObjectBinding ? this.getDataByValue(value) : value;
4378
- if (Array.isArray(this.value) && ((!this.allowObjectBinding && this.value.indexOf(value) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value, this.value)))) {
4379
- this.setProperties({ value: [].concat([], this.value, this.allowObjectBinding ? [this.virtualSelectAllData[i]] : [value]) }, true);
4380
- }
4381
- }
4382
- }
4383
- }
4384
- }
4385
4466
  }
4386
- else {
4387
- while (index_2 < this.value.length && index_2 <= 50 && index_2 < count_1 && this.value.length > 0) {
4388
- this.removeValue(this.value[index_2], event, this.value.length - index_2);
4389
- index_2++;
4390
- }
4391
- if (length > 50) {
4392
- setTimeout(function () {
4393
- while (index_2 < _this.value.length && index_2 < count_1 && _this.value.length > 0) {
4394
- _this.removeValue(value[index_2], event, _this.value.length - index_2);
4395
- index_2++;
4396
- }
4397
- _this.updatedataValueItems(event);
4398
- if (!_this.changeOnBlur) {
4399
- _this.updateValueState(event, _this.value, _this.tempValues);
4400
- _this.isSelectAll = _this.isSelectAll ? !_this.isSelectAll : _this.isSelectAll;
4401
- }
4402
- _this.updateHiddenElement();
4403
- }, 0);
4404
- }
4405
- this.value = [];
4406
- this.virtualSelectAll = false;
4407
- if (!isNullOrUndefined(this.viewPortInfo.startIndex) && !isNullOrUndefined(this.viewPortInfo.endIndex)) {
4408
- this.notify("setCurrentViewDataAsync", {
4409
- component: this.getModuleName(),
4410
- module: "VirtualScroll",
4411
- });
4412
- }
4413
- }
4414
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
4415
- var virtualTrackElement = this.list.getElementsByClassName('e-virtual-ddl')[0];
4416
- if (virtualTrackElement) {
4417
- (virtualTrackElement).style = this.GetVirtualTrackHeight();
4418
- }
4419
- this.UpdateSkeleton();
4420
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
4421
- var virtualContentElement = this.list.getElementsByClassName('e-virtual-ddl-content')[0];
4422
- if (virtualContentElement) {
4423
- (virtualContentElement).style = this.getTransformValues();
4467
+ if (this.virtualSelectAllData) {
4468
+ this.virtualSelectionAll(state, li, event);
4424
4469
  }
4425
4470
  }
4426
4471
  else {
@@ -4459,29 +4504,29 @@ var MultiSelect = /** @class */ (function (_super) {
4459
4504
  }
4460
4505
  }
4461
4506
  else {
4462
- for (var i_1 = 0; i_1 < li.length && i_1 < count_1; i_1++) {
4507
+ for (var i = 0; i < li.length && i < count_1; i++) {
4463
4508
  this.removeHover();
4464
- var customVal = li[i_1].getAttribute('data-value');
4465
- var value_5 = this.getFormattedValue(customVal);
4466
- value_5 = this.allowObjectBinding ? this.getDataByValue(value_5) : value_5;
4509
+ var customVal = li[i].getAttribute('data-value');
4510
+ var value = this.getFormattedValue(customVal);
4511
+ value = this.allowObjectBinding ? this.getDataByValue(value) : value;
4467
4512
  var mainElement = this.mainList ? this.mainList.querySelectorAll(state ?
4468
4513
  'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)' :
4469
- 'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[i_1] : null;
4514
+ 'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[i] : null;
4470
4515
  if (state) {
4471
4516
  this.value = !this.value ? [] : this.value;
4472
- if ((!this.allowObjectBinding && this.value.indexOf(value_5) < 0) || (this.allowObjectBinding && !this.isObjectInArray(value_5, this.value))) {
4473
- this.setProperties({ value: [].concat([], this.value, [value_5]) }, true);
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);
4474
4519
  }
4475
4520
  this.removeFocus();
4476
- this.addListSelection(li[i_1], mainElement);
4521
+ this.addListSelection(li[i], mainElement);
4477
4522
  this.updateChipStatus();
4478
4523
  this.checkMaxSelection();
4479
4524
  }
4480
4525
  else {
4481
- this.removeAllItems(value_5, event, false, li[i_1], mainElement);
4526
+ this.removeAllItems(value, event, false, li[i], mainElement);
4482
4527
  }
4483
4528
  if (this.enableGroupCheckBox) {
4484
- this.findGroupStart(li[i_1]);
4529
+ this.findGroupStart(li[i]);
4485
4530
  }
4486
4531
  }
4487
4532
  if (!state) {
@@ -4509,7 +4554,9 @@ var MultiSelect = /** @class */ (function (_super) {
4509
4554
  this.updateValueState(event, this.value, this.tempValues);
4510
4555
  this.isSelectAll = this.isSelectAll ? !this.isSelectAll : this.isSelectAll;
4511
4556
  }
4512
- this.updateHiddenElement();
4557
+ if ((this.enableVirtualization && this.value && this.value.length > 0) || !this.enableVirtualization) {
4558
+ this.updateHiddenElement();
4559
+ }
4513
4560
  }
4514
4561
  };
4515
4562
  MultiSelect.prototype.updateHiddenElement = function () {
@@ -4615,7 +4662,9 @@ var MultiSelect = /** @class */ (function (_super) {
4615
4662
  }
4616
4663
  this.selectAllItem(state, event);
4617
4664
  }
4618
- this.virtualSelectAll = false;
4665
+ if (!(this.dataSource instanceof DataManager) || (this.dataSource instanceof DataManager && this.virtualSelectAllData)) {
4666
+ this.virtualSelectAll = false;
4667
+ }
4619
4668
  };
4620
4669
  /**
4621
4670
  * Get the properties to be maintained in the persisted state.
@@ -1477,7 +1477,7 @@ ejs-dropdownlist {
1477
1477
  }
1478
1478
 
1479
1479
  .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1480
- content: "\e208";
1480
+ content: "\e7e7";
1481
1481
  font-size: 16px;
1482
1482
  height: 16px;
1483
1483
  margin-top: -8px;
@@ -1486,7 +1486,7 @@ ejs-dropdownlist {
1486
1486
 
1487
1487
  .e-small.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1488
1488
  .e-small .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1489
- content: "\e208";
1489
+ content: "\e7e7";
1490
1490
  font-size: 14px;
1491
1491
  height: 14px;
1492
1492
  margin-top: -7px;
@@ -1495,7 +1495,7 @@ ejs-dropdownlist {
1495
1495
 
1496
1496
  .e-bigger.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1497
1497
  .e-bigger .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1498
- content: "\e208";
1498
+ content: "\e7e7";
1499
1499
  font-size: 20px;
1500
1500
  height: 20px;
1501
1501
  left: 0;
@@ -1507,7 +1507,7 @@ ejs-dropdownlist {
1507
1507
  .e-bigger.e-small .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1508
1508
  .e-bigger .e-small.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1509
1509
  .e-small .e-bigger.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1510
- content: "\e208";
1510
+ content: "\e7e7";
1511
1511
  font-size: 18px;
1512
1512
  height: 18px;
1513
1513
  left: 0;
@@ -1539,6 +1539,7 @@ ejs-dropdownlist {
1539
1539
  .e-multiselect.e-input-group.e-outline .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
1540
1540
  .e-multiselect.e-outline.e-input-group.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
1541
1541
  margin: 7px 12px 9px 0;
1542
+ min-height: fit-content;
1542
1543
  }
1543
1544
 
1544
1545
  .e-multiselect.e-input-group.e-outline.e-bigger .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
@@ -1744,7 +1745,7 @@ ejs-dropdownlist {
1744
1745
  .e-bigger.e-small .e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before,
1745
1746
  .e-bigger .e-small.e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before,
1746
1747
  .e-small .e-bigger.e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before {
1747
- content: "\e208";
1748
+ content: "\e7e7";
1748
1749
  font-size: 16px;
1749
1750
  height: 16px;
1750
1751
  padding: 0;
@@ -1794,6 +1795,7 @@ ejs-dropdownlist {
1794
1795
  .e-multiselect.e-input-group.e-filled .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
1795
1796
  .e-multiselect.e-filled.e-input-group.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
1796
1797
  margin: 10px 0 9px;
1798
+ min-height: fit-content;
1797
1799
  }
1798
1800
 
1799
1801
  .e-multiselect.e-filled.e-input-group.e-float-input.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
@@ -1819,6 +1821,7 @@ ejs-dropdownlist {
1819
1821
  .e-small.e-multiselect.e-input-group.e-float-input.e-filled .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
1820
1822
  .e-small .e-multiselect.e-filled.e-input-group.e-float-input.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
1821
1823
  margin: 0 12px 4px 0;
1824
+ min-width: fit-content;
1822
1825
  }
1823
1826
 
1824
1827
  .e-bigger.e-multiselect.e-input-group.e-filled.e-float-input .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
@@ -2553,7 +2556,7 @@ ejs-dropdownlist {
2553
2556
  top: 1px;
2554
2557
  }
2555
2558
 
2556
- .e-small .e-multiselect .e-input-group-icon.e-ddl-icon {
2559
+ .e-small .e-multiselect:not(.e-outline):not(.e-filled) .e-input-group-icon.e-ddl-icon {
2557
2560
  top: 6px;
2558
2561
  }
2559
2562
 
@@ -2638,7 +2641,7 @@ ejs-multiselect {
2638
2641
  margin-top: -1.7em;
2639
2642
  height: 22px;
2640
2643
  width: 22px;
2641
- line-height: 2px;
2644
+ line-height: normal;
2642
2645
  }
2643
2646
 
2644
2647
  .e-small .e-multi-select-wrapper {
@@ -1533,7 +1533,7 @@ ejs-dropdownlist {
1533
1533
  }
1534
1534
 
1535
1535
  .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1536
- content: "\e208";
1536
+ content: "\e7e7";
1537
1537
  font-size: 16px;
1538
1538
  height: 16px;
1539
1539
  margin-top: -8px;
@@ -1542,7 +1542,7 @@ ejs-dropdownlist {
1542
1542
 
1543
1543
  .e-small.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1544
1544
  .e-small .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1545
- content: "\e208";
1545
+ content: "\e7e7";
1546
1546
  font-size: 14px;
1547
1547
  height: 14px;
1548
1548
  margin-top: -7px;
@@ -1551,7 +1551,7 @@ ejs-dropdownlist {
1551
1551
 
1552
1552
  .e-bigger.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1553
1553
  .e-bigger .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1554
- content: "\e208";
1554
+ content: "\e7e7";
1555
1555
  font-size: 20px;
1556
1556
  height: 20px;
1557
1557
  left: 0;
@@ -1563,7 +1563,7 @@ ejs-dropdownlist {
1563
1563
  .e-bigger.e-small .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1564
1564
  .e-bigger .e-small.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
1565
1565
  .e-small .e-bigger.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
1566
- content: "\e208";
1566
+ content: "\e7e7";
1567
1567
  font-size: 18px;
1568
1568
  height: 18px;
1569
1569
  left: 0;
@@ -1595,6 +1595,7 @@ ejs-dropdownlist {
1595
1595
  .e-multiselect.e-input-group.e-outline .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
1596
1596
  .e-multiselect.e-outline.e-input-group.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
1597
1597
  margin: 7px 12px 9px 0;
1598
+ min-height: fit-content;
1598
1599
  }
1599
1600
 
1600
1601
  .e-multiselect.e-input-group.e-outline.e-bigger .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
@@ -1800,7 +1801,7 @@ ejs-dropdownlist {
1800
1801
  .e-bigger.e-small .e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before,
1801
1802
  .e-bigger .e-small.e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before,
1802
1803
  .e-small .e-bigger.e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before {
1803
- content: "\e208";
1804
+ content: "\e7e7";
1804
1805
  font-size: 16px;
1805
1806
  height: 16px;
1806
1807
  padding: 0;
@@ -1850,6 +1851,7 @@ ejs-dropdownlist {
1850
1851
  .e-multiselect.e-input-group.e-filled .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
1851
1852
  .e-multiselect.e-filled.e-input-group.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
1852
1853
  margin: 10px 0 9px;
1854
+ min-height: fit-content;
1853
1855
  }
1854
1856
 
1855
1857
  .e-multiselect.e-filled.e-input-group.e-float-input.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
@@ -1875,6 +1877,7 @@ ejs-dropdownlist {
1875
1877
  .e-small.e-multiselect.e-input-group.e-float-input.e-filled .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
1876
1878
  .e-small .e-multiselect.e-filled.e-input-group.e-float-input.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
1877
1879
  margin: 0 12px 4px 0;
1880
+ min-width: fit-content;
1878
1881
  }
1879
1882
 
1880
1883
  .e-bigger.e-multiselect.e-input-group.e-filled.e-float-input .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon,
@@ -2609,7 +2612,7 @@ ejs-dropdownlist {
2609
2612
  top: 1px;
2610
2613
  }
2611
2614
 
2612
- .e-small .e-multiselect .e-input-group-icon.e-ddl-icon {
2615
+ .e-small .e-multiselect:not(.e-outline):not(.e-filled) .e-input-group-icon.e-ddl-icon {
2613
2616
  top: 6px;
2614
2617
  }
2615
2618
 
@@ -2694,7 +2697,7 @@ ejs-multiselect {
2694
2697
  margin-top: -1.7em;
2695
2698
  height: 22px;
2696
2699
  width: 22px;
2697
- line-height: 2px;
2700
+ line-height: normal;
2698
2701
  }
2699
2702
 
2700
2703
  .e-small .e-multi-select-wrapper {
@@ -1012,7 +1012,7 @@
1012
1012
  }
1013
1013
  }
1014
1014
 
1015
- .e-small .e-multiselect .e-input-group-icon.e-ddl-icon {
1015
+ .e-small .e-multiselect:not(.e-outline):not(.e-filled) .e-input-group-icon.e-ddl-icon {
1016
1016
  @if $ddl-multiselect-skin-name == 'Material3' {
1017
1017
  top: 6px;
1018
1018
  }
@@ -1150,7 +1150,7 @@ ejs-multiselect {
1150
1150
  margin-top: $ddl-small-close-hooker-margin-top;
1151
1151
  height: $ddl-small-chip-close-hooker-height;
1152
1152
  width: $ddl-small-chip-close-hooker-width;
1153
- line-height: 2px;
1153
+ line-height: normal;
1154
1154
  }
1155
1155
  }
1156
1156
 
@@ -198,7 +198,7 @@
198
198
 
199
199
  .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
200
200
  @if $ddl-multiselect-skin-name == 'Material3' {
201
- content: '\e208';
201
+ content: '\e7e7';
202
202
  font-size: 16px;
203
203
  height: 16px;
204
204
  margin-top: -8px;
@@ -209,7 +209,7 @@
209
209
  .e-small.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
210
210
  .e-small .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
211
211
  @if $ddl-multiselect-skin-name == 'Material3' {
212
- content: '\e208';
212
+ content: '\e7e7';
213
213
  font-size: 14px;
214
214
  height: 14px;
215
215
  margin-top: -7px;
@@ -220,7 +220,7 @@
220
220
  .e-bigger.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
221
221
  .e-bigger .e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
222
222
  @if $ddl-multiselect-skin-name == 'Material3' {
223
- content: '\e208';
223
+ content: '\e7e7';
224
224
  font-size: 20px;
225
225
  height: 20px;
226
226
  left: 0;
@@ -234,7 +234,7 @@
234
234
  .e-bigger .e-small.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before,
235
235
  .e-small .e-bigger.e-multiselect.e-outline .e-multi-select-wrapper .e-close-hooker::before {
236
236
  @if $ddl-multiselect-skin-name == 'Material3' {
237
- content: '\e208';
237
+ content: '\e7e7';
238
238
  font-size: 18px;
239
239
  height: 18px;
240
240
  left: 0;
@@ -278,6 +278,7 @@
278
278
  .e-multiselect.e-outline.e-input-group.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
279
279
  @if $ddl-multiselect-skin-name == 'Material3' {
280
280
  margin: 7px 12px 9px 0;
281
+ min-height: fit-content;
281
282
  }
282
283
  }
283
284
 
@@ -511,7 +512,7 @@
511
512
  .e-bigger.e-small .e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before,
512
513
  .e-bigger .e-small.e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before,
513
514
  .e-small .e-bigger.e-filled .e-multi-select-wrapper .e-chips-close.e-close-hooker::before {
514
- content: '\e208';
515
+ content: '\e7e7';
515
516
  font-size: 16px;
516
517
  height: 16px;
517
518
  padding: 0;
@@ -569,6 +570,7 @@
569
570
  .e-multiselect.e-filled.e-input-group.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
570
571
  @if $ddl-multiselect-skin-name == 'Material3' {
571
572
  margin: 10px 0 9px;
573
+ min-height: fit-content;
572
574
  }
573
575
  }
574
576
 
@@ -602,6 +604,7 @@
602
604
  .e-small .e-multiselect.e-filled.e-input-group.e-float-input.e-control-wrapper .e-multi-select-wrapper .e-input-group-icon.e-ddl-icon {
603
605
  @if $ddl-multiselect-skin-name == 'Material3' {
604
606
  margin: 0 12px 4px 0;
607
+ min-width: fit-content;
605
608
  }
606
609
  }
607
610