@syncfusion/ej2-dropdowns 28.1.33 → 28.1.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/ej2-dropdowns.min.js +1 -10
  2. package/dist/ej2-dropdowns.umd.min.js +1 -10
  3. package/dist/ej2-dropdowns.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-dropdowns.es2015.js +30 -11
  5. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  6. package/dist/es6/ej2-dropdowns.es5.js +30 -11
  7. package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
  8. package/dist/global/ej2-dropdowns.min.js +1 -10
  9. package/dist/global/ej2-dropdowns.min.js.map +1 -1
  10. package/dist/global/index.d.ts +0 -9
  11. package/package.json +6 -10
  12. package/src/combo-box/combo-box.js +1 -0
  13. package/src/drop-down-base/drop-down-base.js +1 -1
  14. package/src/drop-down-list/drop-down-list.d.ts +1 -0
  15. package/src/drop-down-list/drop-down-list.js +12 -1
  16. package/src/drop-down-tree/drop-down-tree.d.ts +1 -0
  17. package/src/drop-down-tree/drop-down-tree.js +13 -6
  18. package/src/list-box/list-box.d.ts +1 -1
  19. package/src/list-box/list-box.js +1 -1
  20. package/src/multi-select/multi-select.js +2 -2
  21. package/styles/bootstrap5-dark-lite.css +1 -0
  22. package/styles/bootstrap5-dark.css +1 -0
  23. package/styles/bootstrap5-lite.css +1 -0
  24. package/styles/bootstrap5.3-lite.css +1 -0
  25. package/styles/bootstrap5.3.css +1 -0
  26. package/styles/bootstrap5.css +1 -0
  27. package/styles/drop-down-base/tailwind3.css +5 -5
  28. package/styles/drop-down-list/_layout.scss +1 -1
  29. package/styles/drop-down-list/tailwind3.css +1 -0
  30. package/styles/fluent-dark-lite.css +1 -0
  31. package/styles/fluent-dark.css +1 -0
  32. package/styles/fluent-lite.css +1 -0
  33. package/styles/fluent.css +1 -0
  34. package/styles/list-box/tailwind3.css +1 -1
  35. package/styles/multi-select/_layout.scss +1 -3
  36. package/styles/multi-select/bootstrap5-dark.css +1 -0
  37. package/styles/multi-select/bootstrap5.3.css +1 -0
  38. package/styles/multi-select/bootstrap5.css +1 -0
  39. package/styles/multi-select/fluent-dark.css +1 -0
  40. package/styles/multi-select/fluent.css +1 -0
  41. package/styles/multi-select/tailwind3.css +5 -5
  42. package/styles/tailwind3-lite.css +12 -11
  43. package/styles/tailwind3.css +12 -11
@@ -1234,7 +1234,7 @@ let DropDownBase = class DropDownBase extends Component {
1234
1234
  for (let i = 0; i < totalSkeletonCount; i++) {
1235
1235
  const liElement = this.createElement('li', { className: dropDownBaseClasses.virtualList, styles: 'overflow: inherit' });
1236
1236
  if (this.isVirtualizationEnabled && this.itemTemplate) {
1237
- liElement.style.height = this.listItemHeight + 'px';
1237
+ liElement.style.height = (this.listItemHeight - parseInt(window.getComputedStyle(this.getItems()[1]).marginBottom, 10)) + 'px';
1238
1238
  }
1239
1239
  const skeleton = new Skeleton({
1240
1240
  shape: 'Text',
@@ -4634,6 +4634,9 @@ let DropDownList = class DropDownList extends DropDownBase {
4634
4634
  if (this.isFiltering() && this.getModuleName() === 'combobox' && isNullOrUndefined(this.list)) {
4635
4635
  this.getInitialData = true;
4636
4636
  this.renderList();
4637
+ if (!this.isSecondClick && !this.isDropDownClick) {
4638
+ this.executeCloneElements();
4639
+ }
4637
4640
  }
4638
4641
  this.typedString = this.filterInput.value;
4639
4642
  this.preventAutoFill = false;
@@ -4891,6 +4894,9 @@ let DropDownList = class DropDownList extends DropDownBase {
4891
4894
  this.getFilteringSkeletonCount();
4892
4895
  }
4893
4896
  this.renderReactTemplates();
4897
+ if (this.filterInput && this.filterInput.value === '' && this.getModuleName() === 'combobox') {
4898
+ this.executeCloneElements();
4899
+ }
4894
4900
  }
4895
4901
  }
4896
4902
  setSearchBox(popupElement) {
@@ -6755,10 +6761,15 @@ let DropDownList = class DropDownList extends DropDownBase {
6755
6761
  isOpen: true
6756
6762
  });
6757
6763
  }
6764
+ if (!this.isSecondClick && !this.isDropDownClick) {
6765
+ this.executeCloneElements();
6766
+ }
6767
+ }
6768
+ executeCloneElements() {
6758
6769
  // eslint-disable-next-line @typescript-eslint/no-this-alias
6759
6770
  const proxy = this;
6760
6771
  const duration = (this.element.tagName === this.getNgDirective() && this.itemTemplate) ? 500 : 100;
6761
- if (!this.isSecondClick && this.isReact && !this.isDropDownClick && this.isFiltering() && this.itemTemplate != null) {
6772
+ if (this.isReact && this.isFiltering() && this.itemTemplate != null) {
6762
6773
  setTimeout(() => {
6763
6774
  proxy.cloneElements();
6764
6775
  proxy.isSecondClick = true;
@@ -7293,6 +7304,7 @@ let DropDownTree = class DropDownTree extends Component {
7293
7304
  this.selectedData = [];
7294
7305
  this.filterDelayTime = 300;
7295
7306
  this.isClicked = false;
7307
+ this.documentClickContext = this.onDocumentClick.bind(this);
7296
7308
  // Specifies if the checkAll method has been called
7297
7309
  this.isCheckAllCalled = false;
7298
7310
  this.isFromFilterChange = false;
@@ -7582,6 +7594,7 @@ let DropDownTree = class DropDownTree extends Component {
7582
7594
  }
7583
7595
  else if (args.preventDefaultAction) {
7584
7596
  fields = args.fields;
7597
+ this.treeObj.element.classList.add('e-filtering');
7585
7598
  }
7586
7599
  else {
7587
7600
  if (this.treeDataType === 1) {
@@ -7803,7 +7816,7 @@ let DropDownTree = class DropDownTree extends Component {
7803
7816
  if (this.showSelectAll && this.checkAllParent) {
7804
7817
  EventHandler.remove(this.checkAllParent, 'mouseup', this.clickHandler);
7805
7818
  }
7806
- EventHandler.remove(document, 'mousedown', this.onDocumentClick);
7819
+ document.removeEventListener('mousedown', this.documentClickContext);
7807
7820
  }
7808
7821
  /* Trigger when the dropdown is clicked */
7809
7822
  dropDownClick(e) {
@@ -8817,7 +8830,7 @@ let DropDownTree = class DropDownTree extends Component {
8817
8830
  if (this.treeObj.checkedNodes.length > 0 && !this.isFilterRestore) {
8818
8831
  const nodes = this.treeObj.element.querySelectorAll('li');
8819
8832
  const checkedNodes = this.treeObj.element.querySelectorAll('li[aria-checked=true]');
8820
- if ((checkedNodes.length === nodes.length || this.checkSelectAll) && this.checkBoxElement) {
8833
+ if ((checkedNodes.length === nodes.length) && this.checkBoxElement) {
8821
8834
  const wrap = closest(this.checkBoxElement, '.' + CHECKBOXWRAP);
8822
8835
  this.changeState(wrap, 'check');
8823
8836
  this.checkSelectAll = false;
@@ -8879,7 +8892,7 @@ let DropDownTree = class DropDownTree extends Component {
8879
8892
  this.isPopupOpen = false;
8880
8893
  },
8881
8894
  open: () => {
8882
- EventHandler.add(document, 'mousedown', this.onDocumentClick, this);
8895
+ document.addEventListener('mousedown', this.documentClickContext);
8883
8896
  this.isPopupOpen = true;
8884
8897
  },
8885
8898
  targetExitViewport: () => {
@@ -8986,7 +8999,9 @@ let DropDownTree = class DropDownTree extends Component {
8986
8999
  }
8987
9000
  if (this.isFilterRestore) {
8988
9001
  this.restoreFilterSelection();
8989
- this.isFilterRestore = false;
9002
+ if (!this.showSelectAll) {
9003
+ this.isFilterRestore = false;
9004
+ }
8990
9005
  }
8991
9006
  }
8992
9007
  restoreFilterSelection() {
@@ -9249,15 +9264,18 @@ let DropDownTree = class DropDownTree extends Component {
9249
9264
  this.ensurePlaceHolder();
9250
9265
  }
9251
9266
  if (this.showSelectAll && this.checkBoxElement) {
9267
+ const nodes = this.treeObj.element.querySelectorAll('li');
9252
9268
  const checkedNodes = this.treeObj.element.querySelectorAll('li[aria-checked=true]');
9253
9269
  const wrap = closest(this.checkBoxElement, '.' + CHECKBOXWRAP);
9254
- if (wrap && args.action === 'uncheck' && (args.isInteracted || checkedNodes.length === 0 || (!isNullOrUndefined(args.data[0]) && args.data[0].isChecked === 'false'))) {
9270
+ if ((wrap && args.action === 'uncheck' && (args.isInteracted || checkedNodes.length === 0 ||
9271
+ (!isNullOrUndefined(args.data[0]) && args.data[0].isChecked === 'false'))) || !args.isInteracted && this.isFilterRestore) {
9272
+ this.isFilterRestore = false;
9255
9273
  this.isReverseUpdate = true;
9256
9274
  this.changeState(wrap, 'uncheck');
9257
9275
  this.isReverseUpdate = false;
9258
9276
  }
9259
9277
  else if (wrap && args.action === 'check'
9260
- && checkedNodes.length === this.fields.dataSource.length
9278
+ && checkedNodes.length === nodes.length
9261
9279
  && (args.isInteracted || this.isCheckAllCalled || (!isNullOrUndefined(args.data[0]) && args.data[0].isChecked === 'true'))) {
9262
9280
  this.isReverseUpdate = true;
9263
9281
  this.isCheckAllCalled = false;
@@ -11148,6 +11166,7 @@ let ComboBox = class ComboBox extends DropDownList {
11148
11166
  super.clearAll(e);
11149
11167
  }
11150
11168
  if (this.isFiltering() && !isNullOrUndefined(e) && e.target === this.inputWrapper.clearButton) {
11169
+ this.typedString = this.filterInput.value;
11151
11170
  this.searchLists(e);
11152
11171
  }
11153
11172
  }
@@ -15607,7 +15626,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
15607
15626
  this.list.scrollTop = 0;
15608
15627
  this.virtualListInfo = null;
15609
15628
  this.previousStartIndex = 0;
15610
- this.previousEndIndex = 0;
15629
+ this.previousEndIndex = this.itemCount;
15611
15630
  }
15612
15631
  this.isClearAllAction = false;
15613
15632
  }
@@ -17780,7 +17799,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
17780
17799
  this.viewPortInfo.endIndex : this.itemCount;
17781
17800
  this.virtualListInfo = this.viewPortInfo;
17782
17801
  this.previousStartIndex = 0;
17783
- this.previousEndIndex = 0;
17802
+ this.previousEndIndex = this.itemCount;
17784
17803
  }
17785
17804
  let dataSourceCount;
17786
17805
  if (this.dataSource instanceof DataManager) {
@@ -21202,7 +21221,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
21202
21221
  ctrlKey: e.ctrlKey, shiftKey: e.shiftKey
21203
21222
  });
21204
21223
  }
21205
- else if (e.keyCode === 65 && e.ctrlKey) {
21224
+ else if (e.keyCode === 65 && e.ctrlKey && this.selectionSettings.mode === 'Multiple') {
21206
21225
  this.selectAll();
21207
21226
  }
21208
21227
  else if ((e.keyCode === 38 || e.keyCode === 40) && e.ctrlKey && e.shiftKey) {