@syncfusion/ej2-querybuilder 20.4.38 → 20.4.40
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 +9 -0
- 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 +26 -14
- package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es5.js +26 -14
- 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 +13 -14
- package/src/query-builder/query-builder.js +26 -14
- package/styles/bootstrap4.css +1 -1
- package/styles/query-builder/bootstrap4.css +1 -1
|
@@ -153,7 +153,10 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
153
153
|
let bodyElem = this.element.querySelector('.e-group-body');
|
|
154
154
|
const inputElement = this.element.querySelectorAll('input.e-control');
|
|
155
155
|
for (let i = 0, len = inputElement.length; i < len; i++) {
|
|
156
|
-
if (inputElement[i].
|
|
156
|
+
if (inputElement[i].className.indexOf('e-tooltip') > -1) {
|
|
157
|
+
getComponent(inputElement[i], 'tooltip').destroy();
|
|
158
|
+
}
|
|
159
|
+
else if (inputElement[i].parentElement.className.indexOf('e-tooltip') > -1) {
|
|
157
160
|
getComponent(inputElement[i].parentElement, 'tooltip').destroy();
|
|
158
161
|
}
|
|
159
162
|
}
|
|
@@ -752,23 +755,25 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
752
755
|
let tempElem;
|
|
753
756
|
let rule;
|
|
754
757
|
const ruleElemCln = this.element.querySelectorAll('.e-rule-container');
|
|
755
|
-
let validateRule;
|
|
756
758
|
for (i = 0, len = ruleElemCln.length; i < len; i++) {
|
|
759
|
+
let validateRule;
|
|
757
760
|
groupElem = closest(ruleElemCln[i], '.e-group-container');
|
|
758
761
|
rule = this.getParentGroup(groupElem);
|
|
759
762
|
index = 0;
|
|
760
763
|
indexElem = tempElem = ruleElemCln[i];
|
|
761
764
|
if (this.fieldMode === 'DropdownTree') {
|
|
762
|
-
dropDownTreeObj = getComponent(ruleElemCln[i].querySelector('.e-rule-
|
|
763
|
-
if (dropDownTreeObj.value && dropDownTreeObj.value.length) {
|
|
765
|
+
dropDownTreeObj = getComponent(ruleElemCln[i].querySelector('.e-rule-filter input.e-dropdowntree'), 'dropdowntree');
|
|
766
|
+
if (dropDownTreeObj && dropDownTreeObj.value && dropDownTreeObj.value.length) {
|
|
764
767
|
this.selectedColumn = this.getColumn(dropDownTreeObj.value[0]);
|
|
765
768
|
validateRule = this.selectedColumn.validation;
|
|
766
769
|
}
|
|
767
770
|
}
|
|
768
771
|
else {
|
|
769
|
-
dropDownObj = getComponent(ruleElemCln[i].querySelector('.e-rule-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
+
dropDownObj = getComponent(ruleElemCln[i].querySelector('.e-rule-filter input.e-dropdownlist'), 'dropdownlist');
|
|
773
|
+
if (dropDownObj && dropDownObj.value) {
|
|
774
|
+
this.selectedColumn = dropDownObj.getDataByValue(dropDownObj.value);
|
|
775
|
+
validateRule = !isNullOrUndefined(dropDownObj.index) && this.selectedColumn.validation;
|
|
776
|
+
}
|
|
772
777
|
}
|
|
773
778
|
fieldElem = tempElem.querySelector('.e-rule-field input.e-control');
|
|
774
779
|
if (validateRule && validateRule.isRequired) {
|
|
@@ -811,8 +816,8 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
811
816
|
else if ((dropDownObj && dropDownObj.element && isNullOrUndefined(dropDownObj.index)) ||
|
|
812
817
|
(dropDownTreeObj && dropDownTreeObj.element && (isNullOrUndefined(dropDownTreeObj.value) ||
|
|
813
818
|
dropDownTreeObj.value.length < 1))) {
|
|
814
|
-
if (fieldElem.
|
|
815
|
-
this.renderToolTip(fieldElem
|
|
819
|
+
if (fieldElem.className.indexOf('e-tooltip') < 0) {
|
|
820
|
+
this.renderToolTip(fieldElem);
|
|
816
821
|
}
|
|
817
822
|
isValid = false;
|
|
818
823
|
}
|
|
@@ -1471,6 +1476,7 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
1471
1476
|
}
|
|
1472
1477
|
}
|
|
1473
1478
|
createSubFields(filterElem, rule, tempRule, ddlArgs) {
|
|
1479
|
+
let subFieldValue = false;
|
|
1474
1480
|
const fieldElem = closest(filterElem, '.e-rule-field');
|
|
1475
1481
|
const tempElem = this.createElement('div', { attrs: { class: 'e-rule-sub-filter', id: 'subfilter' + this.subFilterCounter } });
|
|
1476
1482
|
fieldElem.insertBefore(tempElem, fieldElem.querySelector('.e-rule-operator'));
|
|
@@ -1500,6 +1506,7 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
1500
1506
|
if (rule.field === subField[i].field || rule.field.indexOf(subField[i].field) > -1) {
|
|
1501
1507
|
dropDownList.value = subField[i].field;
|
|
1502
1508
|
this.selectedColumn = subField[i];
|
|
1509
|
+
subFieldValue = true;
|
|
1503
1510
|
break;
|
|
1504
1511
|
}
|
|
1505
1512
|
}
|
|
@@ -1508,7 +1515,10 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
1508
1515
|
this.subFieldElem = subFieldElem;
|
|
1509
1516
|
// eslint-disable-next-line
|
|
1510
1517
|
ddlArgs.itemData = ddlArgs.itemData;
|
|
1511
|
-
if (!this.isImportRules) {
|
|
1518
|
+
if (!this.isImportRules || (!subFieldValue && this.selectedColumn.columns)) {
|
|
1519
|
+
if (!subFieldValue && this.isImportRules) {
|
|
1520
|
+
dropDownList.value = null;
|
|
1521
|
+
}
|
|
1512
1522
|
this.selectedColumn = this.selectedColumn.columns[0];
|
|
1513
1523
|
}
|
|
1514
1524
|
if (!this.selectedColumn.columns) {
|
|
@@ -2291,7 +2301,7 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
2291
2301
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2292
2302
|
prevItemData = this.getColumn(prevItemData.value);
|
|
2293
2303
|
}
|
|
2294
|
-
if (column.template && prevItemData && Object.keys(prevItemData).length < 4) {
|
|
2304
|
+
if (column && column.template && prevItemData && Object.keys(prevItemData).length < 4) {
|
|
2295
2305
|
prevItemData.template = column.template;
|
|
2296
2306
|
}
|
|
2297
2307
|
return prevItemData;
|
|
@@ -2347,7 +2357,9 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
2347
2357
|
this.validateValue(rule, closest(target, '.e-rule-container'));
|
|
2348
2358
|
this.destroyControls(target);
|
|
2349
2359
|
}
|
|
2350
|
-
|
|
2360
|
+
if (column) {
|
|
2361
|
+
itemData.template = column.template;
|
|
2362
|
+
}
|
|
2351
2363
|
if (itemData.template) {
|
|
2352
2364
|
addClass([target.nextElementSibling], 'e-template-value');
|
|
2353
2365
|
itemData.template = column.template;
|
|
@@ -2595,8 +2607,8 @@ let QueryBuilder = class QueryBuilder extends Component {
|
|
|
2595
2607
|
if (!this.isImportRules) {
|
|
2596
2608
|
this.trigger('change', eventsArgs);
|
|
2597
2609
|
}
|
|
2598
|
-
if (this.allowValidation && rule.rules[index].field && target.
|
|
2599
|
-
getComponent(target
|
|
2610
|
+
if (this.allowValidation && rule.rules[index].field && target.className.indexOf('e-tooltip') > -1) {
|
|
2611
|
+
getComponent(target, 'tooltip').destroy();
|
|
2600
2612
|
}
|
|
2601
2613
|
this.filterRules(beforeRules, this.getValidRules(this.rule), 'field');
|
|
2602
2614
|
}
|