@syncfusion/ej2-querybuilder 31.2.2 → 31.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/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 +54 -0
- package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es5.js +54 -0
- 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 +6 -6
- package/src/query-builder/query-builder.d.ts +1 -0
- package/src/query-builder/query-builder.js +54 -0
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 31.2.
|
|
3
|
+
* version : 31.2.4
|
|
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": "31.2.
|
|
3
|
+
"version": "31.2.4",
|
|
4
4
|
"description": "Essential JS 2 QueryBuilder",
|
|
5
5
|
"author": "Syncfusion Inc.",
|
|
6
6
|
"license": "SEE LICENSE IN license",
|
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
"module": "./index.js",
|
|
9
9
|
"es2015": "./dist/es6/ej2-querybuilder.es5.js",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@syncfusion/ej2-base": "~31.2.
|
|
12
|
-
"@syncfusion/ej2-buttons": "~31.2.
|
|
13
|
-
"@syncfusion/ej2-calendars": "~31.2.
|
|
14
|
-
"@syncfusion/ej2-dropdowns": "~31.2.
|
|
15
|
-
"@syncfusion/ej2-inputs": "~31.2.
|
|
11
|
+
"@syncfusion/ej2-base": "~31.2.4",
|
|
12
|
+
"@syncfusion/ej2-buttons": "~31.2.3",
|
|
13
|
+
"@syncfusion/ej2-calendars": "~31.2.4",
|
|
14
|
+
"@syncfusion/ej2-dropdowns": "~31.2.4",
|
|
15
|
+
"@syncfusion/ej2-inputs": "~31.2.4",
|
|
16
16
|
"@syncfusion/ej2-splitbuttons": "~31.2.2"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {},
|
|
@@ -679,6 +679,7 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
|
|
|
679
679
|
private changeValue;
|
|
680
680
|
private filterValue;
|
|
681
681
|
private changeValueSuccessCallBack;
|
|
682
|
+
private setSecondDateMinFromFirst;
|
|
682
683
|
private fieldClose;
|
|
683
684
|
private changeField;
|
|
684
685
|
private changeRule;
|
|
@@ -2359,11 +2359,46 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
2359
2359
|
QueryBuilder.prototype.changeValueSuccessCallBack = function (args, element, i, groupID, ruleID) {
|
|
2360
2360
|
if (!args.cancel) {
|
|
2361
2361
|
this.updateRules(element, args.value, i);
|
|
2362
|
+
this.setSecondDateMinFromFirst(element, i);
|
|
2362
2363
|
if (!this.isImportRules) {
|
|
2363
2364
|
this.trigger('change', { groupID: groupID, ruleID: ruleID, value: args.value, cancel: false, type: 'value' });
|
|
2364
2365
|
}
|
|
2365
2366
|
}
|
|
2366
2367
|
};
|
|
2368
|
+
QueryBuilder.prototype.setSecondDateMinFromFirst = function (element, valueIndex) {
|
|
2369
|
+
if (valueIndex !== 0) {
|
|
2370
|
+
return;
|
|
2371
|
+
}
|
|
2372
|
+
var ruleElem = closest(element, '.e-rule-container');
|
|
2373
|
+
if (!ruleElem) {
|
|
2374
|
+
return;
|
|
2375
|
+
}
|
|
2376
|
+
var operatorDropdownElement = ruleElem.querySelector('.e-rule-operator .e-dropdownlist');
|
|
2377
|
+
if (!operatorDropdownElement) {
|
|
2378
|
+
return;
|
|
2379
|
+
}
|
|
2380
|
+
var operatorDropdown = getComponent(operatorDropdownElement, 'dropdownlist');
|
|
2381
|
+
var operatorValue = operatorDropdown && operatorDropdown.value ? operatorDropdown.value.toString().toLowerCase() : '';
|
|
2382
|
+
if (operatorValue.indexOf('between') < 0) {
|
|
2383
|
+
return;
|
|
2384
|
+
}
|
|
2385
|
+
var firstDateElement = document.getElementById(ruleElem.id + '_valuekey0');
|
|
2386
|
+
var secondDateElement = document.getElementById(ruleElem.id + '_valuekey1');
|
|
2387
|
+
if (!firstDateElement || !secondDateElement) {
|
|
2388
|
+
return;
|
|
2389
|
+
}
|
|
2390
|
+
var firstDatePicker = getComponent(firstDateElement, 'datepicker');
|
|
2391
|
+
var secondDatePicker = getComponent(secondDateElement, 'datepicker');
|
|
2392
|
+
if (!firstDatePicker || !secondDatePicker || !(firstDatePicker.value instanceof Date)) {
|
|
2393
|
+
return;
|
|
2394
|
+
}
|
|
2395
|
+
var nextDay = new Date(firstDatePicker.value.getTime());
|
|
2396
|
+
nextDay.setDate(nextDay.getDate() + 1);
|
|
2397
|
+
secondDatePicker.min = nextDay;
|
|
2398
|
+
if (secondDatePicker.value instanceof Date && secondDatePicker.value.getTime() < nextDay.getTime()) {
|
|
2399
|
+
secondDatePicker.value = nextDay;
|
|
2400
|
+
}
|
|
2401
|
+
};
|
|
2367
2402
|
QueryBuilder.prototype.fieldClose = function (id) {
|
|
2368
2403
|
if (this.isFieldChange || this.isDestroy) {
|
|
2369
2404
|
return;
|
|
@@ -3350,6 +3385,12 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
3350
3385
|
selVal = (length_1 > 1) ? rule.value[i] : rule.value;
|
|
3351
3386
|
selectedValue = this.parseDate(selVal, format) || new Date();
|
|
3352
3387
|
}
|
|
3388
|
+
if (!isNullOrUndefined(itemData) && itemData.value && !isTemplate) {
|
|
3389
|
+
var parsedDate = this.parseDate(itemData.value.toString(), itemData.format);
|
|
3390
|
+
if (parsedDate && !isNaN(parsedDate.getTime())) {
|
|
3391
|
+
selectedValue = parsedDate;
|
|
3392
|
+
}
|
|
3393
|
+
}
|
|
3353
3394
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3354
3395
|
if (!itemData.field && !itemData.key && itemData.value) {
|
|
3355
3396
|
if (itemData.value instanceof Date) {
|
|
@@ -3391,6 +3432,19 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
3391
3432
|
value: selectedValue, locale: this.getLocale(), placeholder: place,
|
|
3392
3433
|
format: formatObj.format, change: this.changeValue.bind(this, i)
|
|
3393
3434
|
};
|
|
3435
|
+
if (!isNullOrUndefined(column) && !isNullOrUndefined(column.values) && column.values.length > 0) {
|
|
3436
|
+
var parsedDate = this.parseDate(column.values[i], format);
|
|
3437
|
+
if (!isNullOrUndefined(parsedDate) && parsedDate instanceof Date) {
|
|
3438
|
+
datePicker.value = parsedDate;
|
|
3439
|
+
if (i === 1) {
|
|
3440
|
+
var parsedMinDate = this.parseDate(column.values[0], format);
|
|
3441
|
+
if (parsedMinDate instanceof Date && !isNaN(parsedMinDate.getTime())) {
|
|
3442
|
+
parsedMinDate.setDate(parsedMinDate.getDate() + 1);
|
|
3443
|
+
datePicker.min = parsedMinDate;
|
|
3444
|
+
}
|
|
3445
|
+
}
|
|
3446
|
+
}
|
|
3447
|
+
}
|
|
3394
3448
|
if (this.valueModel && this.valueModel.datePickerModel) {
|
|
3395
3449
|
datePicker = __assign({}, datePicker, this.valueModel.datePickerModel);
|
|
3396
3450
|
}
|