@syncfusion/ej2-querybuilder 23.2.7 → 24.1.43
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/CHANGELOG.md +73 -10
- 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 +22 -10
- package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es5.js +22 -10
- 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 +12 -12
- package/src/query-builder/query-builder.js +22 -10
|
@@ -227,7 +227,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
227
227
|
}
|
|
228
228
|
bodyElem.appendChild(this.createElement('div', { attrs: { class: 'e-rule-list' } }));
|
|
229
229
|
this.levelColl[this.element.id + '_group0'] = [0];
|
|
230
|
-
this.rule
|
|
230
|
+
this.setProperties({ rule: { condition: 'and', not: false, rules: [] } }, true);
|
|
231
231
|
this.disableRuleCondition(bodyElem.parentElement);
|
|
232
232
|
};
|
|
233
233
|
QueryBuilder.prototype.getWrapper = function () {
|
|
@@ -874,7 +874,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
874
874
|
if (rule.rules[index].value instanceof Array) {
|
|
875
875
|
valArray = rule.rules[index].value;
|
|
876
876
|
}
|
|
877
|
-
if (excludeOprs.indexOf(rule.rules[index].operator) <
|
|
877
|
+
if (excludeOprs.indexOf(rule.rules[index].operator) < -1 &&
|
|
878
878
|
(isNullOrUndefined(rule.rules[index].value) &&
|
|
879
879
|
rule.rules[index].type !== 'date') || rule.rules[index].value === '' ||
|
|
880
880
|
(rule.rules[index].value instanceof Array && valArray.length < 1)) {
|
|
@@ -1328,12 +1328,20 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
1328
1328
|
var groupID = groupElem && groupElem.id.replace(this.element.id + '_', '');
|
|
1329
1329
|
var ruleID = ruleElem.id.replace(this.element.id + '_', '');
|
|
1330
1330
|
var dateElement = args;
|
|
1331
|
+
var dropDownObj;
|
|
1331
1332
|
if (dateElement.element && dateElement.element.className.indexOf('e-datepicker') > -1) {
|
|
1332
1333
|
element = dateElement.element;
|
|
1334
|
+
dropDownObj = getComponent(closest(element, '.e-rule-container').querySelector('.e-filter-input'), 'dropdownlist');
|
|
1335
|
+
if (dropDownObj) {
|
|
1336
|
+
this.selectedColumn = dropDownObj.getDataByValue(dropDownObj.value);
|
|
1337
|
+
}
|
|
1338
|
+
dropDownObj = getComponent(closest(element, '.e-rule-container').querySelector('.e-filter-input'), 'dropdowntree');
|
|
1339
|
+
if (dropDownObj) {
|
|
1340
|
+
this.selectedColumn = this.getColumn(dropDownObj.value[0]);
|
|
1341
|
+
}
|
|
1333
1342
|
}
|
|
1334
1343
|
var value;
|
|
1335
1344
|
var rbValue;
|
|
1336
|
-
var dropDownObj;
|
|
1337
1345
|
if (element.className.indexOf('e-radio') > -1) {
|
|
1338
1346
|
// eslint-disable-next-line
|
|
1339
1347
|
rbValue = parseInt(element.id.split('valuekey')[1], 0);
|
|
@@ -1621,7 +1629,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
1621
1629
|
this.GetRootColumnName(rule.field) === this.GetRootColumnName(this.previousColumn.field))) {
|
|
1622
1630
|
var subField = this.selectedColumn.columns;
|
|
1623
1631
|
for (var i = 0; i < subField.length; i++) {
|
|
1624
|
-
if (rule.field === subField[i].field) {
|
|
1632
|
+
if (rule.field === subField[i].field || rule.field.indexOf(subField[i].field) > -1) {
|
|
1625
1633
|
dropDownList.value = subField[i].field;
|
|
1626
1634
|
this.selectedColumn = subField[i];
|
|
1627
1635
|
subFieldValue = true;
|
|
@@ -2454,7 +2462,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
2454
2462
|
}
|
|
2455
2463
|
var operator = tempRule.operator.toString();
|
|
2456
2464
|
var isTempRendered = false;
|
|
2457
|
-
if (!(operator.indexOf('null') > -1 || operator.indexOf('
|
|
2465
|
+
if (!(operator.indexOf('null') > -1 || operator.indexOf('isempty') > -1 || operator.indexOf('isnotempty') > -1)) {
|
|
2458
2466
|
var parentId = closest(target, '.e-rule-container').id;
|
|
2459
2467
|
prevItemData = this.getPreviousItemData(prevItemData, column);
|
|
2460
2468
|
if (prevItemData && prevItemData.template === undefined) {
|
|
@@ -2583,7 +2591,6 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
2583
2591
|
var valElemColl = this.columnTemplateFn(args, this, ruleID, templateID);
|
|
2584
2592
|
valElem = (valElemColl[0].nodeType === 3) ? valElemColl[1] : valElemColl[0];
|
|
2585
2593
|
target.nextElementSibling.appendChild(valElem);
|
|
2586
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2587
2594
|
}
|
|
2588
2595
|
else if (this.isVue3) {
|
|
2589
2596
|
valElem = this.columnTemplateFn(args, this, 'Template', templateID);
|
|
@@ -3164,7 +3171,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3164
3171
|
this.groupElem.querySelector('.e-qb-toggle').remove();
|
|
3165
3172
|
}
|
|
3166
3173
|
}
|
|
3167
|
-
this.rule
|
|
3174
|
+
this.setProperties({ rule: this.checkNotGroup(this.rule) }, true);
|
|
3168
3175
|
this.initWrapper();
|
|
3169
3176
|
};
|
|
3170
3177
|
QueryBuilder.prototype.notGroupRtl = function () {
|
|
@@ -3286,7 +3293,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3286
3293
|
if (this.rule.rules.length == 0 && !isNullOrUndefined(this.rule)) {
|
|
3287
3294
|
this.reset();
|
|
3288
3295
|
}
|
|
3289
|
-
this.rule
|
|
3296
|
+
this.setProperties({ rule: newProp.rule }, true);
|
|
3290
3297
|
newProp.rule = this.getRuleCollection(this.rule, false);
|
|
3291
3298
|
this.setRules(this.rule);
|
|
3292
3299
|
break;
|
|
@@ -3694,7 +3701,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3694
3701
|
this.groupIdCounter = 1;
|
|
3695
3702
|
this.ruleIdCounter = 0;
|
|
3696
3703
|
this.isImportRules = true;
|
|
3697
|
-
this.rule
|
|
3704
|
+
this.setProperties({ rule: rule }, true);
|
|
3698
3705
|
rule = this.getRuleCollection(this.rule, false);
|
|
3699
3706
|
this.importRules(this.rule, this.element.querySelector('.e-group-container'), true, this.rule.not, isRoot);
|
|
3700
3707
|
this.isImportRules = false;
|
|
@@ -4654,7 +4661,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4654
4661
|
QueryBuilder.prototype.getRulesFromSql = function (sqlString, sqlLocale) {
|
|
4655
4662
|
this.parser = [];
|
|
4656
4663
|
this.sqlParser(sqlString, sqlLocale);
|
|
4657
|
-
this.rule
|
|
4664
|
+
this.setProperties({ rule: { condition: 'and', not: false, rules: [] } }, true);
|
|
4658
4665
|
var rule = this.processParser(this.parser, this.rule, [0], sqlLocale);
|
|
4659
4666
|
if (this.enableNotCondition) {
|
|
4660
4667
|
return { condition: rule.condition, not: rule.not, rules: rule.rules };
|
|
@@ -4835,9 +4842,14 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4835
4842
|
}
|
|
4836
4843
|
else {
|
|
4837
4844
|
var secParser = this.parser[this.parser.length - 2];
|
|
4845
|
+
var betweenParser = this.parser[this.parser.length - 3];
|
|
4838
4846
|
if (lastParser[0] === 'Left' && (secParser && secParser[0] === 'Conditions')) {
|
|
4839
4847
|
return true;
|
|
4840
4848
|
}
|
|
4849
|
+
var betweenOperator = 'between';
|
|
4850
|
+
if (lastParser[0] === 'Conditions' && (betweenParser && betweenParser[1].indexOf(betweenOperator) < 0)) {
|
|
4851
|
+
return true;
|
|
4852
|
+
}
|
|
4841
4853
|
}
|
|
4842
4854
|
return false;
|
|
4843
4855
|
};
|