@syncfusion/ej2-dropdowns 27.1.48 → 27.1.51

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.
Files changed (94) hide show
  1. package/dist/ej2-dropdowns.min.js +2 -2
  2. package/dist/ej2-dropdowns.umd.min.js +2 -2
  3. package/dist/ej2-dropdowns.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-dropdowns.es2015.js +48 -37
  5. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  6. package/dist/es6/ej2-dropdowns.es5.js +46 -35
  7. package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
  8. package/dist/global/ej2-dropdowns.min.js +2 -2
  9. package/dist/global/ej2-dropdowns.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +12 -13
  12. package/src/drop-down-base/drop-down-base.d.ts +1 -0
  13. package/src/drop-down-base/drop-down-base.js +1 -2
  14. package/src/drop-down-list/drop-down-list.js +12 -1
  15. package/src/drop-down-tree/drop-down-tree.js +1 -1
  16. package/src/list-box/list-box.js +31 -27
  17. package/src/multi-select/multi-select.js +1 -4
  18. package/styles/bootstrap-dark-lite.css +4 -1
  19. package/styles/bootstrap-dark.css +4 -1
  20. package/styles/bootstrap-lite.css +4 -1
  21. package/styles/bootstrap.css +4 -1
  22. package/styles/bootstrap4-lite.css +3 -1
  23. package/styles/bootstrap4.css +3 -1
  24. package/styles/bootstrap5-dark-lite.css +6 -1
  25. package/styles/bootstrap5-dark.css +6 -1
  26. package/styles/bootstrap5-lite.css +6 -1
  27. package/styles/bootstrap5.3-lite.css +6 -1
  28. package/styles/bootstrap5.3.css +6 -1
  29. package/styles/bootstrap5.css +6 -1
  30. package/styles/drop-down-list/_theme.scss +1 -3
  31. package/styles/drop-down-list/bootstrap-dark.css +1 -0
  32. package/styles/drop-down-list/bootstrap.css +1 -0
  33. package/styles/drop-down-list/fabric-dark.css +1 -0
  34. package/styles/drop-down-list/fabric.css +1 -0
  35. package/styles/drop-down-list/fluent-dark.css +1 -0
  36. package/styles/drop-down-list/fluent.css +1 -0
  37. package/styles/drop-down-list/fluent2.css +1 -0
  38. package/styles/drop-down-list/highcontrast-light.css +1 -0
  39. package/styles/drop-down-list/material-dark.css +1 -0
  40. package/styles/drop-down-list/material.css +1 -0
  41. package/styles/drop-down-list/material3-dark.css +1 -0
  42. package/styles/drop-down-list/material3.css +1 -0
  43. package/styles/drop-down-list/tailwind-dark.css +1 -0
  44. package/styles/drop-down-list/tailwind.css +1 -0
  45. package/styles/drop-down-tree/_theme.scss +5 -0
  46. package/styles/drop-down-tree/bootstrap5-dark.css +3 -0
  47. package/styles/drop-down-tree/bootstrap5.3.css +3 -0
  48. package/styles/drop-down-tree/bootstrap5.css +3 -0
  49. package/styles/fabric-dark-lite.css +4 -1
  50. package/styles/fabric-dark.css +4 -1
  51. package/styles/fabric-lite.css +4 -1
  52. package/styles/fabric.css +4 -1
  53. package/styles/fluent-dark-lite.css +4 -1
  54. package/styles/fluent-dark.css +4 -1
  55. package/styles/fluent-lite.css +4 -1
  56. package/styles/fluent.css +4 -1
  57. package/styles/fluent2-lite.css +4 -1
  58. package/styles/fluent2.css +4 -1
  59. package/styles/highcontrast-light-lite.css +4 -1
  60. package/styles/highcontrast-light.css +4 -1
  61. package/styles/highcontrast-lite.css +3 -1
  62. package/styles/highcontrast.css +3 -1
  63. package/styles/list-box/_layout.scss +1 -0
  64. package/styles/list-box/bootstrap-dark.css +3 -1
  65. package/styles/list-box/bootstrap.css +3 -1
  66. package/styles/list-box/bootstrap4.css +3 -1
  67. package/styles/list-box/bootstrap5-dark.css +3 -1
  68. package/styles/list-box/bootstrap5.3.css +3 -1
  69. package/styles/list-box/bootstrap5.css +3 -1
  70. package/styles/list-box/fabric-dark.css +3 -1
  71. package/styles/list-box/fabric.css +3 -1
  72. package/styles/list-box/fluent-dark.css +3 -1
  73. package/styles/list-box/fluent.css +3 -1
  74. package/styles/list-box/fluent2.css +3 -1
  75. package/styles/list-box/highcontrast-light.css +3 -1
  76. package/styles/list-box/highcontrast.css +3 -1
  77. package/styles/list-box/material-dark.css +3 -1
  78. package/styles/list-box/material.css +3 -1
  79. package/styles/list-box/material3-dark.css +3 -1
  80. package/styles/list-box/material3.css +3 -1
  81. package/styles/list-box/tailwind-dark.css +3 -1
  82. package/styles/list-box/tailwind.css +3 -1
  83. package/styles/material-dark-lite.css +4 -1
  84. package/styles/material-dark.css +4 -1
  85. package/styles/material-lite.css +4 -1
  86. package/styles/material.css +4 -1
  87. package/styles/material3-dark-lite.css +4 -1
  88. package/styles/material3-dark.css +4 -1
  89. package/styles/material3-lite.css +4 -1
  90. package/styles/material3.css +4 -1
  91. package/styles/tailwind-dark-lite.css +4 -1
  92. package/styles/tailwind-dark.css +4 -1
  93. package/styles/tailwind-lite.css +4 -1
  94. package/styles/tailwind.css +4 -1
@@ -1928,7 +1928,7 @@ var DropDownBase = /** @__PURE__ @class */ (function (_super) {
1928
1928
  }
1929
1929
  addClass([this.list], dropDownBaseClasses.grouping);
1930
1930
  }
1931
- else {
1931
+ else if (this.getModuleName() !== 'listbox' || (this.getModuleName() === 'listbox' && !this.preventDefActionFilter)) {
1932
1932
  dataSource = this.getSortedDataSource(dataSource);
1933
1933
  }
1934
1934
  var options = this.listOption(dataSource, fields);
@@ -2526,7 +2526,6 @@ var DropDownBase = /** @__PURE__ @class */ (function (_super) {
2526
2526
  }
2527
2527
  if (this.getModuleName() === 'listbox') {
2528
2528
  this.updateActionCompleteData(li, item, isListboxEmpty ? null : index + i);
2529
- isListboxEmpty = true;
2530
2529
  }
2531
2530
  else {
2532
2531
  this.updateActionCompleteData(li, item, index);
@@ -3139,12 +3138,20 @@ var DropDownList = /** @__PURE__ @class */ (function (_super) {
3139
3138
  removeClass([this.inputWrapper.container], dropDownListClasses.disable);
3140
3139
  this.inputElement.setAttribute('aria-disabled', 'false');
3141
3140
  this.targetElement().setAttribute('tabindex', this.tabIndex);
3141
+ if (this.inputWrapper && this.inputWrapper.container) {
3142
+ this.inputWrapper.container.setAttribute('aria-disabled', 'false');
3143
+ this.inputWrapper.container.removeAttribute('disabled');
3144
+ }
3142
3145
  }
3143
3146
  else {
3144
3147
  this.hidePopup();
3145
3148
  addClass([this.inputWrapper.container], dropDownListClasses.disable);
3146
3149
  this.inputElement.setAttribute('aria-disabled', 'true');
3147
3150
  this.targetElement().tabIndex = -1;
3151
+ if (this.inputWrapper && this.inputWrapper.container) {
3152
+ this.inputWrapper.container.setAttribute('aria-disabled', 'true');
3153
+ this.inputWrapper.container.setAttribute('disabled', '');
3154
+ }
3148
3155
  }
3149
3156
  };
3150
3157
  /**
@@ -4506,7 +4513,10 @@ var DropDownList = /** @__PURE__ @class */ (function (_super) {
4506
4513
  }
4507
4514
  else {
4508
4515
  if (!isNullOrUndefined(this.hiddenElement)) {
4509
- this.hiddenElement.innerHTML = '<option selected>' + this.text + '</option>';
4516
+ var option = document.createElement('option');
4517
+ option.text = this.text;
4518
+ option.setAttribute('selected', '');
4519
+ this.hiddenElement.appendChild(option);
4510
4520
  var selectedElement = this.hiddenElement.querySelector('option');
4511
4521
  selectedElement.setAttribute('value', value.toString());
4512
4522
  }
@@ -8726,7 +8736,7 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
8726
8736
  addClass([focusedElement], ['e-node-focus']);
8727
8737
  }
8728
8738
  }
8729
- if (_this.treeObj.checkedNodes.length > 0) {
8739
+ if (_this.treeObj.checkedNodes.length > 0 && !_this.isFilterRestore) {
8730
8740
  var nodes = _this.treeObj.element.querySelectorAll('li');
8731
8741
  var checkedNodes = _this.treeObj.element.querySelectorAll('li[aria-checked=true]');
8732
8742
  if ((checkedNodes.length === nodes.length || _this.checkSelectAll) && _this.checkBoxElement) {
@@ -14695,9 +14705,6 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
14695
14705
  _this.fields.value : ''), value) : value;
14696
14706
  _this.virtualSelectAll = false;
14697
14707
  var removeVal = _this.value.slice(0);
14698
- if (_this.enableVirtualization && isClearAll) {
14699
- removeVal = [];
14700
- }
14701
14708
  removeVal.splice(index, 1);
14702
14709
  if (_this.enableVirtualization && _this.mode === 'CheckBox') {
14703
14710
  _this.selectedListData.splice(index, 1);
@@ -16974,7 +16981,7 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
16974
16981
  this.isSelectAll = this.isSelectAll ? !this.isSelectAll : this.isSelectAll;
16975
16982
  }
16976
16983
  this.updateHiddenElement();
16977
- this.value = [];
16984
+ this.setProperties({ value: [] }, true);
16978
16985
  this.virtualSelectAll = false;
16979
16986
  if (!isNullOrUndefined(this.viewPortInfo.startIndex) && !isNullOrUndefined(this.viewPortInfo.endIndex)) {
16980
16987
  this.notify('setCurrentViewDataAsync', {
@@ -19383,7 +19390,9 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
19383
19390
  }
19384
19391
  filterElem.selectionStart = txtLength;
19385
19392
  filterElem.selectionEnd = txtLength;
19386
- filterElem.focus();
19393
+ if (filterElem.value !== '') {
19394
+ filterElem.focus();
19395
+ }
19387
19396
  }
19388
19397
  }
19389
19398
  if (this.toolbarSettings.items.length && this.scope && this.scope.indexOf('#') > -1 && !isNullOrUndefined(e)) {
@@ -19835,33 +19844,24 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
19835
19844
  items = (items instanceof Array ? items : [items]);
19836
19845
  var fields = this.fields;
19837
19846
  var dataValue = void 0;
19838
- var objValue = void 0;
19847
+ var objValue = {};
19839
19848
  var dupData = [];
19840
- var itemIdx = void 0;
19841
19849
  extend(dupData, [], this.jsonData);
19842
19850
  var removeIdxes = [];
19843
19851
  var removeLiIdxes = [];
19852
+ for (var i = 0; i < dupData.length; i++) {
19853
+ var value = (dupData[i] instanceof Object) ? dupData[i][fields.value] :
19854
+ dupData[i].toString();
19855
+ objValue[value] = i;
19856
+ }
19844
19857
  for (var j = 0; j < items.length; j++) {
19845
- if (items[j] instanceof Object) {
19846
- dataValue = getValue(fields.value, items[j]);
19847
- }
19848
- else {
19849
- dataValue = items[j].toString();
19850
- }
19851
- for (var i = 0, len = dupData.length; i < len; i++) {
19852
- if (dupData[i] instanceof Object) {
19853
- objValue = getValue(fields.value, dupData[i]);
19854
- }
19855
- else {
19856
- objValue = dupData[i].toString();
19857
- }
19858
- if (objValue === dataValue) {
19859
- itemIdx = this.getIndexByValue(dataValue);
19860
- var idx = itemIdx === i ? itemIdx : i;
19861
- liCollections.push(liElement[idx]);
19862
- removeIdxes.push(idx);
19863
- removeLiIdxes.push(idx);
19864
- }
19858
+ dataValue = (items[j] instanceof Object) ? items[j][fields.value] :
19859
+ items[j].toString();
19860
+ if (Object.prototype.hasOwnProperty.call(objValue, dataValue)) {
19861
+ var idx = objValue[dataValue];
19862
+ liCollections.push(liElement[idx]);
19863
+ removeIdxes.push(idx);
19864
+ removeLiIdxes.push(idx);
19865
19865
  }
19866
19866
  }
19867
19867
  var validRemoveIdxes = removeIdxes.sort(function (a, b) { return b - a; });
@@ -20695,7 +20695,7 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
20695
20695
  }
20696
20696
  flistboxarray = newFlistboxArray;
20697
20697
  moveTo(fListBox.ulElement, tListBox.ulElement, flistboxarray, index);
20698
- this.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
20698
+ fListBox.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
20699
20699
  if (isKey) {
20700
20700
  this.list.focus();
20701
20701
  }
@@ -20744,8 +20744,8 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
20744
20744
  fListBox.listData = fListBox.sortedData = fListBox.jsonData = tempData;
20745
20745
  }
20746
20746
  else if (fListBox.allowFiltering) {
20747
+ var disabledData_1 = [];
20747
20748
  if (tempLiColl.length > 0) {
20748
- var disabledData_1 = [];
20749
20749
  for (var i = 0; i < tempLiColl.length; i++) {
20750
20750
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
20751
20751
  disabledData_1.push(this.getDataByValue(tempLiColl[i].getAttribute('data-value')));
@@ -20762,7 +20762,13 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
20762
20762
  }
20763
20763
  }
20764
20764
  }
20765
- fListBox.listData = fListBox.sortedData = [];
20765
+ if (tempLiColl.length > 0) {
20766
+ fListBox.listData = disabledData_1;
20767
+ fListBox.sortedData = [];
20768
+ }
20769
+ else {
20770
+ fListBox.listData = fListBox.sortedData = [];
20771
+ }
20766
20772
  }
20767
20773
  if (isRefresh) {
20768
20774
  var sourceElem = tListBox.renderItems(listData, tListBox.fields);
@@ -20986,7 +20992,9 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
20986
20992
  }
20987
20993
  _this.isFiltered = true;
20988
20994
  _this.remoteFilterAction = true;
20995
+ _this.preventDefActionFilter = eventArgsData_1.preventDefaultAction;
20989
20996
  _this.dataUpdater(dataSource, query, fields);
20997
+ _this.preventDefActionFilter = false;
20990
20998
  },
20991
20999
  event: e,
20992
21000
  cancel: false
@@ -20996,6 +21004,7 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
20996
21004
  if (args.cancel || (_this.filterInput.value !== '' && _this.isFiltered)) {
20997
21005
  return;
20998
21006
  }
21007
+ _this.preventDefActionFilter = false;
20999
21008
  if (!args.cancel && !_this.isCustomFiltering && !args.preventDefaultAction) {
21000
21009
  _this.inputString = _this.filterInput.value;
21001
21010
  _this.filteringAction(_this.jsonData, new Query(), _this.fields);
@@ -21405,7 +21414,9 @@ var ListBox = /** @__PURE__ @class */ (function (_super) {
21405
21414
  this.initDraggable();
21406
21415
  }
21407
21416
  else {
21408
- getComponent(this.ulElement, 'sortable').destroy();
21417
+ if (this.ulElement.classList.contains('e-sortable')) {
21418
+ getComponent(this.ulElement, 'sortable').destroy();
21419
+ }
21409
21420
  }
21410
21421
  break;
21411
21422
  case 'allowFiltering':