@syncfusion/ej2-querybuilder 32.2.3 → 32.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.
- package/dist/ej2-querybuilder.min.js +2 -2
- package/dist/ej2-querybuilder.umd.min.js +2 -2
- package/dist/ej2-querybuilder.umd.min.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es2015.js +59 -26
- package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es5.js +59 -26
- package/dist/es6/ej2-querybuilder.es5.js.map +1 -1
- package/dist/global/ej2-querybuilder.min.js +2 -2
- package/dist/global/ej2-querybuilder.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +7 -7
- package/src/query-builder/query-builder.d.ts +2 -0
- package/src/query-builder/query-builder.js +59 -26
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 32.2.
|
|
3
|
+
* version : 32.2.7
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2025. 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,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@syncfusion/ej2-querybuilder",
|
|
3
|
-
"version": "32.2.
|
|
3
|
+
"version": "32.2.7",
|
|
4
4
|
"description": "Essential JS 2 QueryBuilder",
|
|
5
5
|
"author": "Syncfusion Inc.",
|
|
6
6
|
"license": "SEE LICENSE IN license",
|
|
@@ -8,12 +8,12 @@
|
|
|
8
8
|
"module": "./index.js",
|
|
9
9
|
"es2015": "./dist/es6/ej2-querybuilder.es5.js",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@syncfusion/ej2-base": "~32.2.
|
|
12
|
-
"@syncfusion/ej2-buttons": "~32.2.
|
|
13
|
-
"@syncfusion/ej2-calendars": "~32.2.
|
|
14
|
-
"@syncfusion/ej2-dropdowns": "~32.2.
|
|
15
|
-
"@syncfusion/ej2-inputs": "~32.2.
|
|
16
|
-
"@syncfusion/ej2-splitbuttons": "~32.2.
|
|
11
|
+
"@syncfusion/ej2-base": "~32.2.6",
|
|
12
|
+
"@syncfusion/ej2-buttons": "~32.2.7",
|
|
13
|
+
"@syncfusion/ej2-calendars": "~32.2.7",
|
|
14
|
+
"@syncfusion/ej2-dropdowns": "~32.2.7",
|
|
15
|
+
"@syncfusion/ej2-inputs": "~32.2.7",
|
|
16
|
+
"@syncfusion/ej2-splitbuttons": "~32.2.7"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {},
|
|
19
19
|
"keywords": [
|
|
@@ -351,7 +351,9 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
|
|
|
351
351
|
private isPropChange;
|
|
352
352
|
private isRuleClicked;
|
|
353
353
|
private groupCloned;
|
|
354
|
+
private isRequestSent;
|
|
354
355
|
private ddTree;
|
|
356
|
+
private boundResizeHandler;
|
|
355
357
|
/**
|
|
356
358
|
* Triggers when the component is created.
|
|
357
359
|
*
|
|
@@ -221,6 +221,7 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
221
221
|
_this.isPropChange = false;
|
|
222
222
|
_this.isRuleClicked = false;
|
|
223
223
|
_this.groupCloned = false;
|
|
224
|
+
_this.isRequestSent = false;
|
|
224
225
|
MultiSelect.Inject(CheckBoxSelection);
|
|
225
226
|
return _this;
|
|
226
227
|
}
|
|
@@ -3095,29 +3096,34 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
3095
3096
|
? userQuery.clone()
|
|
3096
3097
|
: new Query();
|
|
3097
3098
|
dataQuery.select([value]);
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
|
|
3103
|
-
|
|
3104
|
-
|
|
3105
|
-
|
|
3106
|
-
|
|
3107
|
-
|
|
3108
|
-
|
|
3109
|
-
|
|
3110
|
-
|
|
3111
|
-
|
|
3112
|
-
|
|
3113
|
-
|
|
3114
|
-
multiselectObj.dataSource
|
|
3115
|
-
|
|
3116
|
-
|
|
3117
|
-
|
|
3118
|
-
|
|
3119
|
-
|
|
3120
|
-
|
|
3099
|
+
if (!this.isRequestSent) {
|
|
3100
|
+
var data = this.dataManager.executeQuery(dataQuery);
|
|
3101
|
+
this.isRequestSent = true;
|
|
3102
|
+
multiselectObj.hideSpinner();
|
|
3103
|
+
this.createSpinner(closest(element, '.e-multi-select-wrapper').parentElement);
|
|
3104
|
+
showSpinner(closest(element, '.e-multi-select-wrapper').parentElement);
|
|
3105
|
+
data.then(function (e) {
|
|
3106
|
+
_this.isRequestSent = false;
|
|
3107
|
+
if (e.actual && e.actual.result) {
|
|
3108
|
+
dummyData = e.actual.result;
|
|
3109
|
+
}
|
|
3110
|
+
else {
|
|
3111
|
+
dummyData = e.result;
|
|
3112
|
+
}
|
|
3113
|
+
_this.dataColl = extend(_this.dataColl, dummyData, [], true);
|
|
3114
|
+
var newData = _this.getDistinctValues(_this.dataColl, value);
|
|
3115
|
+
var current = multiselectObj.dataSource;
|
|
3116
|
+
if ((current.length !== newData.length &&
|
|
3117
|
+
(JSON.stringify(current) !== JSON.stringify(newData)))) {
|
|
3118
|
+
multiselectObj.dataSource = newData;
|
|
3119
|
+
}
|
|
3120
|
+
_this.isGetNestedData = true;
|
|
3121
|
+
hideSpinner(closest(element, '.e-multi-select-wrapper').parentElement);
|
|
3122
|
+
}).catch(function (e) {
|
|
3123
|
+
_this.isRequestSent = false;
|
|
3124
|
+
deferred.reject(e);
|
|
3125
|
+
});
|
|
3126
|
+
}
|
|
3121
3127
|
};
|
|
3122
3128
|
QueryBuilder.prototype.createSpinner = function (element) {
|
|
3123
3129
|
var spinnerElem = this.createElement('span', { attrs: { class: 'e-qb-spinner' } });
|
|
@@ -4192,6 +4198,29 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
4192
4198
|
if (this.portals && this.portals.length) {
|
|
4193
4199
|
this.clearQBTemplate();
|
|
4194
4200
|
}
|
|
4201
|
+
var qbDdlElems = this.element.querySelectorAll('.qb-dropdownlist');
|
|
4202
|
+
if (!qbDdlElems || qbDdlElems.length === 0) {
|
|
4203
|
+
qbDdlElems = document.querySelectorAll('.qb-dropdownlist');
|
|
4204
|
+
}
|
|
4205
|
+
for (i = 0; i < qbDdlElems.length; i++) {
|
|
4206
|
+
var ddlElem = qbDdlElems[i];
|
|
4207
|
+
var targetInput = ddlElem.tagName === 'INPUT' ? ddlElem : ddlElem.querySelector('input');
|
|
4208
|
+
if (targetInput) {
|
|
4209
|
+
var ddlInst = getComponent(targetInput, 'dropdownlist');
|
|
4210
|
+
if (ddlInst) {
|
|
4211
|
+
if (ddlInst.close) {
|
|
4212
|
+
ddlInst.close = null;
|
|
4213
|
+
}
|
|
4214
|
+
if (ddlInst.open) {
|
|
4215
|
+
ddlInst.open = null;
|
|
4216
|
+
}
|
|
4217
|
+
if (ddlInst.change) {
|
|
4218
|
+
ddlInst.change = null;
|
|
4219
|
+
}
|
|
4220
|
+
ddlInst.destroy();
|
|
4221
|
+
}
|
|
4222
|
+
}
|
|
4223
|
+
}
|
|
4195
4224
|
var popupElement = document.querySelectorAll('.qb-dropdownlist.e-popup');
|
|
4196
4225
|
if (popupElement) {
|
|
4197
4226
|
for (i = 0; i < popupElement.length; i++) {
|
|
@@ -4255,7 +4284,7 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
4255
4284
|
this.getGroup(this.target).rules.length > 1) {
|
|
4256
4285
|
var parent_1 = this.element.querySelector('#' + groupID);
|
|
4257
4286
|
var topLevelGroups = parent_1.querySelectorAll(':scope > .e-group-body > .e-rule-list > .e-group-container');
|
|
4258
|
-
if (groupID !== 'querybuilder_group0') {
|
|
4287
|
+
if (groupID !== 'querybuilder_group0' && !(this.isAngular && groupID === 'ej2-querybuilder_0_group0')) {
|
|
4259
4288
|
this.groupIndex = topLevelGroups.length > 1 ? topLevelGroups.length - 1 : 0;
|
|
4260
4289
|
}
|
|
4261
4290
|
}
|
|
@@ -5160,7 +5189,8 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
5160
5189
|
if (this.allowDragAndDrop) {
|
|
5161
5190
|
EventHandler.add(document, 'keydown', this.keyBoardHandler, this);
|
|
5162
5191
|
}
|
|
5163
|
-
|
|
5192
|
+
this.boundResizeHandler = this.windowResizeHandler.bind(this);
|
|
5193
|
+
window.addEventListener('resize', this.boundResizeHandler);
|
|
5164
5194
|
};
|
|
5165
5195
|
QueryBuilder.prototype.unWireEvents = function () {
|
|
5166
5196
|
var wrapper = this.getWrapper();
|
|
@@ -5169,7 +5199,10 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
5169
5199
|
EventHandler.remove(wrapper, 'focusin', this.focusEventHandler);
|
|
5170
5200
|
EventHandler.remove(this.element, 'keydown', this.keyBoardHandler);
|
|
5171
5201
|
EventHandler.remove(document, 'keydown', this.keyBoardHandler);
|
|
5172
|
-
|
|
5202
|
+
if (this.boundResizeHandler) {
|
|
5203
|
+
window.removeEventListener('resize', this.boundResizeHandler);
|
|
5204
|
+
this.boundResizeHandler = null;
|
|
5205
|
+
}
|
|
5173
5206
|
};
|
|
5174
5207
|
QueryBuilder.prototype.getParentGroup = function (target, isParent) {
|
|
5175
5208
|
var groupLevel = (target instanceof Element) ? this.levelColl[target.id] : this.levelColl["" + target];
|