@syncfusion/ej2-dropdowns 28.2.5 → 28.2.7

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 (100) 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 +51 -25
  5. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  6. package/dist/es6/ej2-dropdowns.es5.js +51 -25
  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 +7 -7
  12. package/src/drop-down-base/drop-down-base.js +2 -1
  13. package/src/drop-down-tree/drop-down-tree.d.ts +2 -0
  14. package/src/drop-down-tree/drop-down-tree.js +33 -17
  15. package/src/mention/mention.js +3 -2
  16. package/src/multi-select/multi-select.d.ts +1 -0
  17. package/src/multi-select/multi-select.js +13 -5
  18. package/styles/bds-lite.css +9 -2
  19. package/styles/bds.css +19 -4
  20. package/styles/bootstrap-dark-lite.css +7 -0
  21. package/styles/bootstrap-dark.css +22 -0
  22. package/styles/bootstrap-lite.css +7 -0
  23. package/styles/bootstrap.css +22 -0
  24. package/styles/bootstrap4-lite.css +8 -1
  25. package/styles/bootstrap4.css +24 -2
  26. package/styles/bootstrap5-dark-lite.css +8 -1
  27. package/styles/bootstrap5-dark.css +17 -2
  28. package/styles/bootstrap5-lite.css +8 -1
  29. package/styles/bootstrap5.3-lite.css +8 -1
  30. package/styles/bootstrap5.3.css +24 -2
  31. package/styles/bootstrap5.css +17 -2
  32. package/styles/drop-down-tree/_bds-definition.scss +12 -3
  33. package/styles/drop-down-tree/_bigger.scss +12 -12
  34. package/styles/drop-down-tree/_bootstrap-dark-definition.scss +9 -0
  35. package/styles/drop-down-tree/_bootstrap-definition.scss +10 -1
  36. package/styles/drop-down-tree/_bootstrap4-definition.scss +12 -3
  37. package/styles/drop-down-tree/_bootstrap5-definition.scss +10 -2
  38. package/styles/drop-down-tree/_bootstrap5.3-definition.scss +10 -2
  39. package/styles/drop-down-tree/_fabric-dark-definition.scss +9 -0
  40. package/styles/drop-down-tree/_fabric-definition.scss +9 -0
  41. package/styles/drop-down-tree/_fluent-definition.scss +10 -2
  42. package/styles/drop-down-tree/_fluent2-definition.scss +12 -3
  43. package/styles/drop-down-tree/_fusionnew-definition.scss +9 -0
  44. package/styles/drop-down-tree/_highcontrast-definition.scss +10 -1
  45. package/styles/drop-down-tree/_highcontrast-light-definition.scss +9 -0
  46. package/styles/drop-down-tree/_layout.scss +9 -5
  47. package/styles/drop-down-tree/_material-dark-definition.scss +10 -1
  48. package/styles/drop-down-tree/_material-definition.scss +10 -1
  49. package/styles/drop-down-tree/_material3-definition.scss +11 -2
  50. package/styles/drop-down-tree/_tailwind-definition.scss +11 -3
  51. package/styles/drop-down-tree/_tailwind3-definition.scss +9 -1
  52. package/styles/drop-down-tree/bds.css +19 -4
  53. package/styles/drop-down-tree/bootstrap-dark.css +22 -0
  54. package/styles/drop-down-tree/bootstrap.css +22 -0
  55. package/styles/drop-down-tree/bootstrap4.css +24 -2
  56. package/styles/drop-down-tree/bootstrap5-dark.css +17 -2
  57. package/styles/drop-down-tree/bootstrap5.3.css +24 -2
  58. package/styles/drop-down-tree/bootstrap5.css +17 -2
  59. package/styles/drop-down-tree/fabric-dark.css +22 -0
  60. package/styles/drop-down-tree/fabric.css +22 -0
  61. package/styles/drop-down-tree/fluent-dark.css +17 -2
  62. package/styles/drop-down-tree/fluent.css +17 -2
  63. package/styles/drop-down-tree/fluent2.css +25 -3
  64. package/styles/drop-down-tree/highcontrast-light.css +22 -0
  65. package/styles/drop-down-tree/highcontrast.css +23 -1
  66. package/styles/drop-down-tree/material-dark.css +22 -0
  67. package/styles/drop-down-tree/material.css +23 -1
  68. package/styles/drop-down-tree/material3-dark.css +24 -2
  69. package/styles/drop-down-tree/material3.css +24 -2
  70. package/styles/drop-down-tree/tailwind-dark.css +19 -4
  71. package/styles/drop-down-tree/tailwind.css +19 -4
  72. package/styles/drop-down-tree/tailwind3.css +22 -1
  73. package/styles/fabric-dark-lite.css +7 -0
  74. package/styles/fabric-dark.css +22 -0
  75. package/styles/fabric-lite.css +7 -0
  76. package/styles/fabric.css +22 -0
  77. package/styles/fluent-dark-lite.css +8 -1
  78. package/styles/fluent-dark.css +17 -2
  79. package/styles/fluent-lite.css +8 -1
  80. package/styles/fluent.css +17 -2
  81. package/styles/fluent2-lite.css +9 -2
  82. package/styles/fluent2.css +25 -3
  83. package/styles/highcontrast-light-lite.css +7 -0
  84. package/styles/highcontrast-light.css +22 -0
  85. package/styles/highcontrast-lite.css +8 -1
  86. package/styles/highcontrast.css +23 -1
  87. package/styles/material-dark-lite.css +7 -0
  88. package/styles/material-dark.css +22 -0
  89. package/styles/material-lite.css +8 -1
  90. package/styles/material.css +23 -1
  91. package/styles/material3-dark-lite.css +8 -1
  92. package/styles/material3-dark.css +24 -2
  93. package/styles/material3-lite.css +8 -1
  94. package/styles/material3.css +24 -2
  95. package/styles/tailwind-dark-lite.css +9 -2
  96. package/styles/tailwind-dark.css +19 -4
  97. package/styles/tailwind-lite.css +9 -2
  98. package/styles/tailwind.css +19 -4
  99. package/styles/tailwind3-lite.css +6 -0
  100. package/styles/tailwind3.css +22 -1
@@ -1293,7 +1293,8 @@ var DropDownBase = /** @__PURE__ @class */ (function (_super) {
1293
1293
  };
1294
1294
  DropDownBase.prototype.getSkeletonCount = function (retainSkeleton) {
1295
1295
  this.virtualListHeight = this.listContainerHeight != null ? parseInt(this.listContainerHeight, 10) : this.virtualListHeight;
1296
- var actualCount = this.virtualListHeight > 0 ? Math.floor(this.virtualListHeight / this.listItemHeight) : 0;
1296
+ var actualCount = this.virtualListHeight > 0 && this.listItemHeight > 0 ?
1297
+ Math.floor(this.virtualListHeight / this.listItemHeight) : 0;
1297
1298
  this.skeletonCount = actualCount * 4 < this.itemCount ? this.itemCount : actualCount * 4;
1298
1299
  this.itemCount = retainSkeleton ? this.itemCount : this.skeletonCount;
1299
1300
  this.virtualItemCount = this.itemCount;
@@ -9043,11 +9044,9 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
9043
9044
  removeClass([_this.popupEle], DDTHIDEICON);
9044
9045
  _this.updatePopupHeight();
9045
9046
  _this.popupObj.refreshPosition();
9046
- if (_this.showSelectAll && !_this.allowFiltering) {
9047
- _this.checkAllParent.focus();
9048
- }
9049
- if ((!_this.popupDiv.classList.contains(NODATA) && _this.treeItems.length > 0)) {
9050
- var focusedElement = _this.value != null || _this.text != null ? _this.treeObj.element.querySelector('[data-uid="' + _this.value[0] + '"]') : null;
9047
+ if (!(_this.showSelectAll || _this.allowFiltering) && (!_this.popupDiv.classList.contains(NODATA)
9048
+ && _this.treeItems.length > 0)) {
9049
+ var focusedElement = _this.value != null && _this.text != null ? _this.treeObj.element.querySelector('[data-uid="' + _this.value[0] + '"]') : null;
9051
9050
  if (focusedElement) {
9052
9051
  _this.treeObj.element.querySelector('li').setAttribute('tabindex', '-1');
9053
9052
  focusedElement.setAttribute('tabindex', '0');
@@ -9056,17 +9055,9 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
9056
9055
  var oldFocussedNode = _this.treeObj.element.querySelector('.e-node-focus');
9057
9056
  focusedElement = _this.treeObj.element.querySelector('li[tabindex="0"]:not(.e-disable)') ||
9058
9057
  _this.treeObj.element.querySelector('li:not(.e-disable)');
9059
- if (oldFocussedNode && oldFocussedNode !== focusedElement) {
9060
- oldFocussedNode.setAttribute('tabindex', '-1');
9061
- removeClass([oldFocussedNode], 'e-node-focus');
9062
- }
9063
- }
9064
- if (!isNullOrUndefined(focusedElement)) {
9065
- if (!_this.allowFiltering) {
9066
- focusedElement.focus();
9067
- }
9068
- addClass([focusedElement], ['e-node-focus']);
9058
+ _this.removeFocus(focusedElement, oldFocussedNode);
9069
9059
  }
9060
+ _this.updateFocus(focusedElement);
9070
9061
  }
9071
9062
  if (_this.treeObj.checkedNodes.length > 0 && !_this.isFilterRestore) {
9072
9063
  var nodes = _this.treeObj.element.querySelectorAll('li');
@@ -9077,7 +9068,17 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
9077
9068
  _this.checkSelectAll = false;
9078
9069
  }
9079
9070
  }
9071
+ if (_this.showSelectAll && !_this.allowFiltering) {
9072
+ var oldFocussedNode = _this.treeObj.element.querySelector('.e-node-focus');
9073
+ var focusedElement = _this.popupEle.querySelector('.e-selectall-parent');
9074
+ _this.removeFocus(focusedElement, oldFocussedNode);
9075
+ _this.updateFocus(focusedElement);
9076
+ }
9080
9077
  if (_this.allowFiltering) {
9078
+ var focusedElement = _this.treeObj.element.querySelector('li.e-node-focus');
9079
+ if (!isNullOrUndefined(focusedElement)) {
9080
+ removeClass([focusedElement], 'e-node-focus');
9081
+ }
9081
9082
  removeClass([_this.inputWrapper], [INPUTFOCUS]);
9082
9083
  _this.filterObj.element.focus();
9083
9084
  }
@@ -9086,6 +9087,18 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
9086
9087
  }
9087
9088
  });
9088
9089
  };
9090
+ DropDownTree.prototype.removeFocus = function (focusedElement, oldFocusedElement) {
9091
+ if (oldFocusedElement && oldFocusedElement !== focusedElement) {
9092
+ oldFocusedElement.setAttribute('tabindex', '-1');
9093
+ removeClass([oldFocusedElement], 'e-node-focus');
9094
+ }
9095
+ };
9096
+ DropDownTree.prototype.updateFocus = function (focusedElement) {
9097
+ if (!isNullOrUndefined(focusedElement)) {
9098
+ focusedElement.focus();
9099
+ addClass([focusedElement], ['e-node-focus']);
9100
+ }
9101
+ };
9089
9102
  DropDownTree.prototype.reactCallBack = function () {
9090
9103
  if (!isNullOrUndefined(this.popupObj)) {
9091
9104
  this.updatePopupHeight();
@@ -9925,7 +9938,7 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
9925
9938
  this.chipCollection.appendChild(chip);
9926
9939
  if (this.showClearButton) {
9927
9940
  chip.appendChild(chipClose);
9928
- EventHandler.add(chipClose, 'mousedown', this.removeChip, this);
9941
+ EventHandler.add(chipClose, 'mouseup', this.removeChip, this);
9929
9942
  }
9930
9943
  };
9931
9944
  DropDownTree.prototype.setTagValues = function () {
@@ -10058,6 +10071,10 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
10058
10071
  if (!this.enabled || this.readonly) {
10059
10072
  return;
10060
10073
  }
10074
+ if (e.target.classList.contains('e-chips-close') && !this.isPopupOpen) {
10075
+ e.stopPropagation();
10076
+ e.preventDefault();
10077
+ }
10061
10078
  var element = e.target.parentElement;
10062
10079
  var value = element.getAttribute('data-value');
10063
10080
  if (this.chipCollection) {
@@ -10617,7 +10634,7 @@ var DropDownTree = /** @__PURE__ @class */ (function (_super) {
10617
10634
  var chipsIcons = selectAll('.e-chips-close', this.chipCollection);
10618
10635
  for (var _i = 0, chipsIcons_1 = chipsIcons; _i < chipsIcons_1.length; _i++) {
10619
10636
  var element = chipsIcons_1[_i];
10620
- EventHandler.remove(element, 'mousedown', this.removeChip);
10637
+ EventHandler.remove(element, 'mouseup', this.removeChip);
10621
10638
  }
10622
10639
  }
10623
10640
  this.chipWrapper = null;
@@ -12787,6 +12804,7 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
12787
12804
  _this.isBlurDispatching = false;
12788
12805
  _this.isFilterPrevented = false;
12789
12806
  _this.isFilteringAction = false;
12807
+ _this.isVirtualReorder = false;
12790
12808
  _this.isValidKey = false;
12791
12809
  _this.selectAllEventData = [];
12792
12810
  _this.selectAllEventEle = [];
@@ -12984,12 +13002,14 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
12984
13002
  };
12985
13003
  MultiSelect.prototype.updateVirtualReOrderList = function (isCheckBoxUpdate) {
12986
13004
  var query = this.getForQuery(this.value, true).clone();
13005
+ this.isVirtualReorder = true;
12987
13006
  if (this.enableVirtualization && this.dataSource instanceof DataManager) {
12988
13007
  this.resetList(this.selectedListData, this.fields, query);
12989
13008
  }
12990
13009
  else {
12991
13010
  this.resetList(this.dataSource, this.fields, query);
12992
13011
  }
13012
+ this.isVirtualReorder = false;
12993
13013
  this.UpdateSkeleton();
12994
13014
  this.liCollections = this.list.querySelectorAll('.' + dropDownBaseClasses.li);
12995
13015
  this.virtualItemCount = this.itemCount;
@@ -13198,10 +13218,14 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
13198
13218
  var field = this.isPrimitiveData ? '' : this.fields.value;
13199
13219
  if (this.enableVirtualization && valuecheck) {
13200
13220
  if (isCheckbox) {
13201
- for (var i = 0; i < valuecheck.length; i++) {
13221
+ var startindex = this.viewPortInfo.startIndex;
13222
+ var endindex = (((startindex + this.viewPortInfo.endIndex) <= (valuecheck.length)) &&
13223
+ valuecheck[(startindex + this.viewPortInfo.endIndex)]) ? (startindex + this.viewPortInfo.endIndex)
13224
+ : (valuecheck.length);
13225
+ for (var i = startindex; i < endindex; i++) {
13202
13226
  var value = this.allowObjectBinding ? getValue((this.fields.value) ?
13203
13227
  this.fields.value : '', valuecheck[i]) : valuecheck[i];
13204
- if (i === 0) {
13228
+ if (i === startindex) {
13205
13229
  predicate = new Predicate(field, 'equal', (value));
13206
13230
  }
13207
13231
  else {
@@ -13629,7 +13653,7 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
13629
13653
  }
13630
13654
  }
13631
13655
  }
13632
- if ((this.allowFiltering && isSkip) || !isReOrder || (!this.allowFiltering && isSkip)) {
13656
+ if ((this.allowFiltering && isSkip) || !isReOrder || (!this.allowFiltering && isSkip) && !this.isVirtualReorder) {
13633
13657
  if (!isReOrder) {
13634
13658
  filterQuery.skip(this.viewPortInfo.startIndex);
13635
13659
  }
@@ -16345,7 +16369,8 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
16345
16369
  }
16346
16370
  else {
16347
16371
  temp = isInitialVirtualData && delim ? this_1.text : this_1.getTextByValue(value);
16348
- var textValues = this_1.isDynamicRemoteVirtualData && value != null && value !== '' ? this_1.getTextByValue(value) : isInitialVirtualData ? this_1.text : (this_1.text && this_1.text !== '' ? this_1.text + this_1.delimiterChar + temp : temp);
16372
+ var textValues = this_1.isDynamicRemoteVirtualData && value != null && value !== '' && !isInitialVirtualData ?
16373
+ this_1.getTextByValue(value) : isInitialVirtualData ? this_1.text : (this_1.text && this_1.text !== '' ? this_1.text + this_1.delimiterChar + temp : temp);
16349
16374
  data += temp + delimiterChar + ' ';
16350
16375
  text.push(textValues);
16351
16376
  hiddenElementContent = this_1.hiddenElement.innerHTML;
@@ -16513,7 +16538,7 @@ var MultiSelect = /** @__PURE__ @class */ (function (_super) {
16513
16538
  (this.mode === 'Box' || this.mode === 'Default'))) ||
16514
16539
  (this.enableVirtualization && value != null && text != null && !isCustomData)) {
16515
16540
  var currentText = [];
16516
- var textValues = this.isDynamicRemoteVirtualData && text != null && text !== '' ? text : this.text != null && this.text !== '' ? this.text + this.delimiterChar + text : text;
16541
+ var textValues = this.isDynamicRemoteVirtualData && text != null && text !== '' && index === 0 ? text : this.text != null && this.text !== '' && !this.text.includes(text) ? this.text + this.delimiterChar + text : text;
16517
16542
  currentText.push(textValues);
16518
16543
  this.setProperties({ text: currentText.toString() }, true);
16519
16544
  this.addChip(text, value);
@@ -23929,6 +23954,7 @@ var Mention = /** @__PURE__ @class */ (function (_super) {
23929
23954
  this.range = this.getCurrentRange();
23930
23955
  }
23931
23956
  var currentRange = this.getTextRange();
23957
+ this.queryString = text;
23932
23958
  var lastWordRange = this.getLastLetter(currentRange);
23933
23959
  if ((this.ignoreCase && (text === lastWordRange || text === lastWordRange.toLowerCase()))
23934
23960
  || !this.ignoreCase && text === lastWordRange) {
@@ -23944,8 +23970,8 @@ var Mention = /** @__PURE__ @class */ (function (_super) {
23944
23970
  this.renderList();
23945
23971
  this.renderPopup();
23946
23972
  }
23947
- else {
23948
- this.showPopup();
23973
+ else if (!this.isPopupOpen) {
23974
+ this.renderPopup();
23949
23975
  }
23950
23976
  this.popupObj.element.style.left = formatUnit(positionX);
23951
23977
  this.popupObj.element.style.top = formatUnit(positionY);