@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.
- package/.eslintrc.json +260 -0
- package/CHANGELOG.md +32 -0
- package/dist/ej2-dropdowns.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es2015.js +184 -119
- package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es5.js +193 -127
- package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
- package/dist/global/ej2-dropdowns.min.js +2 -2
- package/dist/global/ej2-dropdowns.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +12 -12
- package/src/drop-down-base/drop-down-base.d.ts +7 -2
- package/src/drop-down-base/drop-down-base.js +21 -9
- package/src/drop-down-list/drop-down-list.js +2 -2
- package/src/drop-down-tree/drop-down-tree.js +8 -4
- package/src/multi-select/multi-select.d.ts +2 -0
- package/src/multi-select/multi-select.js +162 -112
- package/tslint.json +111 -0
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 25.
|
|
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.
|
|
3
|
+
"_id": "@syncfusion/ej2-dropdowns@25.2.3",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
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.
|
|
38
|
-
"_shasum": "
|
|
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.
|
|
47
|
-
"@syncfusion/ej2-data": "~25.
|
|
48
|
-
"@syncfusion/ej2-inputs": "~25.
|
|
49
|
-
"@syncfusion/ej2-lists": "~25.
|
|
50
|
-
"@syncfusion/ej2-navigations": "~25.
|
|
51
|
-
"@syncfusion/ej2-notifications": "~25.
|
|
52
|
-
"@syncfusion/ej2-popups": "~25.
|
|
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.
|
|
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
|
-
}[] |
|
|
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
|
-
|
|
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
|
|
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.
|
|
1347
|
-
if (listItems
|
|
1348
|
-
for (var i = 0; i < listItems.
|
|
1349
|
-
if (!isNullOrUndefined(value) && listItems
|
|
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.
|
|
1621
|
-
var
|
|
1622
|
-
_this.
|
|
1623
|
-
_this.checkSelectAll
|
|
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;
|