@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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 25.1.41
3
+ * version : 25.2.4
4
4
  * Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-dropdowns@*",
3
- "_id": "@syncfusion/ej2-dropdowns@25.1.40",
3
+ "_id": "@syncfusion/ej2-dropdowns@25.2.3",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-6DDoNXRwihclI1cvrUHH8Gvr/wxNd9q6xbG0MDIKI+YkHlXQmKzFpWMJiryVAUISQ9FxXkZ31GbC4odDlpX8QA==",
5
+ "_integrity": "sha512-GUZEwuFK0n5cZ9Lc9RGegbO7c07e8V1zQf34J/X1jaDOx2eI3sSKTqQ1XqhU0ATtfQUpJDQPuMnjeqfZr4KI3Q==",
6
6
  "_location": "/@syncfusion/ej2-dropdowns",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -34,8 +34,8 @@
34
34
  "/@syncfusion/ej2-spreadsheet",
35
35
  "/@syncfusion/ej2-vue-dropdowns"
36
36
  ],
37
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-dropdowns/-/ej2-dropdowns-25.1.40.tgz",
38
- "_shasum": "5279cf8e0bc8d91c654d5be6c294f94c62c51a12",
37
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-dropdowns/-/ej2-dropdowns-25.2.3.tgz",
38
+ "_shasum": "c881ff080957a288adf283168d0216569a49a62b",
39
39
  "_spec": "@syncfusion/ej2-dropdowns@*",
40
40
  "_where": "/jenkins/workspace/elease-automation_release_25.1.1/packages/included",
41
41
  "author": {
@@ -43,13 +43,13 @@
43
43
  },
44
44
  "bundleDependencies": false,
45
45
  "dependencies": {
46
- "@syncfusion/ej2-base": "~25.1.35",
47
- "@syncfusion/ej2-data": "~25.1.35",
48
- "@syncfusion/ej2-inputs": "~25.1.40",
49
- "@syncfusion/ej2-lists": "~25.1.41",
50
- "@syncfusion/ej2-navigations": "~25.1.41",
51
- "@syncfusion/ej2-notifications": "~25.1.35",
52
- "@syncfusion/ej2-popups": "~25.1.41"
46
+ "@syncfusion/ej2-base": "~25.2.3",
47
+ "@syncfusion/ej2-data": "~25.2.3",
48
+ "@syncfusion/ej2-inputs": "~25.2.3",
49
+ "@syncfusion/ej2-lists": "~25.2.3",
50
+ "@syncfusion/ej2-navigations": "~25.2.4",
51
+ "@syncfusion/ej2-notifications": "~25.2.3",
52
+ "@syncfusion/ej2-popups": "~25.2.4"
53
53
  },
54
54
  "deprecated": false,
55
55
  "description": "Essential JS 2 DropDown Components",
@@ -74,7 +74,7 @@
74
74
  "module": "./index.js",
75
75
  "name": "@syncfusion/ej2-dropdowns",
76
76
  "typings": "index.d.ts",
77
- "version": "25.1.41",
77
+ "version": "25.2.4",
78
78
  "sideEffects": false,
79
79
  "homepage": "https://www.syncfusion.com/javascript-ui-controls"
80
80
  }
@@ -280,9 +280,11 @@ export declare class DropDownBase extends Component<HTMLElement> implements INot
280
280
  protected preventPopupOpen: boolean;
281
281
  protected setCurrentView: boolean;
282
282
  protected customFilterQuery: Query;
283
+ protected virtualSelectAllState: boolean;
284
+ protected CurrentEvent: KeyboardEventArgs | MouseEvent;
283
285
  protected virtualSelectAllData: {
284
286
  [key: string]: Object;
285
- }[] | DataManager | string[] | number[] | boolean[];
287
+ }[] | string[] | number[] | boolean[];
286
288
  protected firstItem: string | number | boolean | object;
287
289
  protected virtualListInfo: VirtualInfo;
288
290
  protected viewPortInfo: VirtualInfo;
@@ -567,6 +569,7 @@ export declare class DropDownBase extends Component<HTMLElement> implements INot
567
569
  private setListData;
568
570
  protected handleVirtualKeyboardActions(e: KeyboardEventArgs, pageCount: number): void;
569
571
  protected updatePopupState(): void;
572
+ protected virtualSelectionAll(state: boolean, li: NodeListOf<HTMLElement> | HTMLElement[], event: MouseEvent | KeyboardEventArgs): void;
570
573
  protected updateRemoteData(): void;
571
574
  private bindChildItems;
572
575
  protected isObjectInArray(objectToFind: any, array: any[]): boolean;
@@ -606,7 +609,9 @@ export declare class DropDownBase extends Component<HTMLElement> implements INot
606
609
  * @param {FieldSettingsModel} fields - Maps the columns of the data table and binds the data to the component.
607
610
  * @returns {HTMLElement} Return the ul li list items.
608
611
  */
609
- private createListItems;
612
+ protected createListItems(dataSource: {
613
+ [key: string]: Object;
614
+ }[], fields: FieldSettingsModel): HTMLElement;
610
615
  protected listOption(dataSource: {
611
616
  [key: string]: Object;
612
617
  }[] | string[] | number[] | boolean[], fields: FieldSettingsModel): FieldSettingsModel;
@@ -130,6 +130,8 @@ var DropDownBase = /** @class */ (function (_super) {
130
130
  _this.appendUncheckList = false;
131
131
  _this.getInitialData = false;
132
132
  _this.preventPopupOpen = true;
133
+ _this.virtualSelectAllState = false;
134
+ _this.CurrentEvent = null;
133
135
  _this.virtualListInfo = {
134
136
  currentPageNumber: null,
135
137
  direction: null,
@@ -729,8 +731,8 @@ var DropDownBase = /** @class */ (function (_super) {
729
731
  if (!isWhereExist_1) {
730
732
  _this.remoteDataCount = e.count;
731
733
  }
732
- _this.dataCount = e.count;
733
- _this.totalItemCount = e.count;
734
+ _this.dataCount = !_this.virtualSelectAll ? e.count : _this.dataCount;
735
+ _this.totalItemCount = !_this.virtualSelectAll ? e.count : _this.totalItemCount;
734
736
  ulElement = _this.renderItems(listItems, fields);
735
737
  _this.appendUncheckList = false;
736
738
  _this.onActionComplete(ulElement, listItems, e);
@@ -756,6 +758,12 @@ var DropDownBase = /** @class */ (function (_super) {
756
758
  if (_this.isVirtualizationEnabled) {
757
759
  _this.getFilteringSkeletonCount();
758
760
  }
761
+ if (_this.virtualSelectAll && _this.virtualSelectAllData) {
762
+ _this.virtualSelectionAll(_this.virtualSelectAllState, _this.liCollections, _this.CurrentEvent);
763
+ _this.virtualSelectAllState = false;
764
+ _this.CurrentEvent = null;
765
+ _this.virtualSelectAll = false;
766
+ }
759
767
  }
760
768
  });
761
769
  }).catch(function (e) {
@@ -807,11 +815,11 @@ var DropDownBase = /** @class */ (function (_super) {
807
815
  }
808
816
  }
809
817
  }
810
- if (isReOrder && (!(_this.dataSource instanceof DataManager) && !_this.isCustomDataUpdated)) {
818
+ if (isReOrder && (!(_this.dataSource instanceof DataManager) && !_this.isCustomDataUpdated) && !_this.virtualSelectAll) {
811
819
  // eslint-disable @typescript-eslint/no-explicit-any
812
820
  _this.dataCount = _this.totalItemCount = _this.virtualSelectAll ? listItems.length : listItems.count;
813
821
  }
814
- listItems = _this.isVirtualizationEnabled && !_this.virtualSelectAll ? listItems.result : listItems;
822
+ listItems = _this.isVirtualizationEnabled ? listItems.result : listItems;
815
823
  // eslint-enable @typescript-eslint/no-explicit-any
816
824
  var localDataArgs = { cancel: false, result: listItems };
817
825
  _this.isPreventChange = _this.isAngular && _this.preventChange ? true : _this.isPreventChange;
@@ -850,6 +858,9 @@ var DropDownBase = /** @class */ (function (_super) {
850
858
  DropDownBase.prototype.updatePopupState = function () {
851
859
  // Used this method in component side.
852
860
  };
861
+ DropDownBase.prototype.virtualSelectionAll = function (state, li, event) {
862
+ // Used this method in component side.
863
+ };
853
864
  DropDownBase.prototype.updateRemoteData = function () {
854
865
  this.setListData(this.dataSource, this.fields, this.query);
855
866
  };
@@ -1343,10 +1354,10 @@ var DropDownBase = /** @class */ (function (_super) {
1343
1354
  */
1344
1355
  DropDownBase.prototype.getIndexByValueFilter = function (value) {
1345
1356
  var index;
1346
- var listItems = this.renderItems(this.selectData, this.fields);
1347
- if (listItems && listItems.children) {
1348
- for (var i = 0; i < listItems.children.length; i++) {
1349
- if (!isNullOrUndefined(value) && listItems.children[i].getAttribute('data-value') === value.toString()) {
1357
+ var listItems = this.renderItems(this.dataSource, this.fields).querySelectorAll('li' + ':not(.e-list-group-item)');
1358
+ if (listItems) {
1359
+ for (var i = 0; i < listItems.length; i++) {
1360
+ if (!isNullOrUndefined(value) && listItems[i].getAttribute('data-value') === value.toString()) {
1350
1361
  index = i;
1351
1362
  break;
1352
1363
  }
@@ -1624,6 +1635,7 @@ var DropDownBase = /** @class */ (function (_super) {
1624
1635
  }
1625
1636
  if (this.getModuleName() === 'listbox') {
1626
1637
  this.updateActionCompleteData(li, item, isListboxEmpty ? null : index);
1638
+ isListboxEmpty = true;
1627
1639
  }
1628
1640
  else {
1629
1641
  this.updateActionCompleteData(li, item, index);
@@ -1671,7 +1683,7 @@ var DropDownBase = /** @class */ (function (_super) {
1671
1683
  }
1672
1684
  }
1673
1685
  else {
1674
- if (this.liCollections[index]) {
1686
+ if (this.liCollections[index] && this.liCollections[index].parentNode) {
1675
1687
  this.liCollections[index].parentNode.insertBefore(liCollections[i], this.liCollections[index]);
1676
1688
  }
1677
1689
  else {
@@ -2454,7 +2454,7 @@ var DropDownList = /** @class */ (function (_super) {
2454
2454
  _this.popupContentElement.setAttribute('id', 'no-record');
2455
2455
  }
2456
2456
  _this.inputElement.setAttribute('aria-expanded', 'true');
2457
- _this.inputElement.setAttribute('aria-controls', _this.element.id);
2457
+ _this.inputElement.setAttribute('aria-controls', _this.element.id + '_popup');
2458
2458
  var inputParent = _this.isFiltering() ? _this.filterInput.parentElement : _this.inputWrapper.container;
2459
2459
  addClass([inputParent], [dropDownListClasses.inputFocus]);
2460
2460
  var animModel = { name: 'FadeIn', duration: 100 };
@@ -2986,6 +2986,7 @@ var DropDownList = /** @class */ (function (_super) {
2986
2986
  DropDownList.prototype.destroyPopup = function () {
2987
2987
  this.isPopupOpen = false;
2988
2988
  this.isFilterFocus = false;
2989
+ this.inputElement.removeAttribute('aria-controls');
2989
2990
  if (this.popupObj) {
2990
2991
  this.popupObj.destroy();
2991
2992
  detach(this.popupObj.element);
@@ -3076,7 +3077,6 @@ var DropDownList = /** @class */ (function (_super) {
3076
3077
  attributes(this.targetElement(), { 'aria-label': this.getModuleName() });
3077
3078
  this.inputElement.setAttribute('aria-label', this.getModuleName());
3078
3079
  this.inputElement.setAttribute('aria-expanded', 'false');
3079
- this.inputElement.setAttribute('aria-controls', this.element.id + '_popups');
3080
3080
  }
3081
3081
  attributes(this.targetElement(), this.getAriaAttributes());
3082
3082
  this.updateDataAttribute(this.htmlAttributes);
@@ -1617,10 +1617,14 @@ var DropDownTree = /** @class */ (function (_super) {
1617
1617
  focusedElement.focus();
1618
1618
  addClass([focusedElement], ['e-node-focus']);
1619
1619
  }
1620
- if (_this.checkSelectAll && _this.checkBoxElement) {
1621
- var wrap = closest(_this.checkBoxElement, '.' + CHECKBOXWRAP);
1622
- _this.changeState(wrap, 'check');
1623
- _this.checkSelectAll = false;
1620
+ if (_this.treeObj.checkedNodes.length > 0) {
1621
+ var nodes = _this.treeObj.element.querySelectorAll('li');
1622
+ var checkedNodes = _this.treeObj.element.querySelectorAll('li[aria-checked=true]');
1623
+ if ((checkedNodes.length === nodes.length || _this.checkSelectAll) && _this.checkBoxElement) {
1624
+ var wrap = closest(_this.checkBoxElement, '.' + CHECKBOXWRAP);
1625
+ _this.changeState(wrap, 'check');
1626
+ _this.checkSelectAll = false;
1627
+ }
1624
1628
  }
1625
1629
  if (_this.allowFiltering) {
1626
1630
  removeClass([_this.inputWrapper], [INPUTFOCUS]);
@@ -610,6 +610,7 @@ export declare class MultiSelect extends DropDownBase implements IInput {
610
610
  private resetFilteredData;
611
611
  private preventSetCurrentData;
612
612
  private virtualCustomData;
613
+ private isSelectAllLoop;
613
614
  private enableRTL;
614
615
  requiredModules(): ModuleDeclaration[];
615
616
  private updateHTMLAttribute;
@@ -820,6 +821,7 @@ export declare class MultiSelect extends DropDownBase implements IInput {
820
821
  private getOverflowVal;
821
822
  private unWireEvent;
822
823
  private selectAllItem;
824
+ protected virtualSelectionAll(state: boolean, li: NodeListOf<HTMLElement> | HTMLElement[], event: MouseEvent | KeyboardEventArgs): void;
823
825
  private updateValue;
824
826
  private updateHiddenElement;
825
827
  private updatedataValueItems;