@syncfusion/ej2-querybuilder 26.1.40 → 26.1.42
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 +65 -1
- package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es5.js +67 -1
- 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 +9 -9
- package/src/query-builder/query-builder-model.d.ts +1 -1
- package/src/query-builder/query-builder.d.ts +6 -0
- package/src/query-builder/query-builder.js +67 -1
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 26.1.
|
|
3
|
+
* version : 26.1.42
|
|
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-querybuilder@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-querybuilder@26.1.
|
|
3
|
+
"_id": "@syncfusion/ej2-querybuilder@26.1.40",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-MWEJ9NY5c0iruUvcFgMZn8FuPcADr0RmU3Ff8iYRKYvFZXMqgtoVa8mKgw4vLRxyiJNnbC9ZUY79X99bRbMqAg==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-querybuilder",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"/@syncfusion/ej2-react-querybuilder",
|
|
24
24
|
"/@syncfusion/ej2-vue-querybuilder"
|
|
25
25
|
],
|
|
26
|
-
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-querybuilder/-/ej2-querybuilder-26.1.
|
|
27
|
-
"_shasum": "
|
|
26
|
+
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-querybuilder/-/ej2-querybuilder-26.1.40.tgz",
|
|
27
|
+
"_shasum": "071a867f904970608a6248d61d6dbccfe9c8e630",
|
|
28
28
|
"_spec": "@syncfusion/ej2-querybuilder@*",
|
|
29
29
|
"_where": "/jenkins/workspace/elease-automation_release_26.1.1/packages/included",
|
|
30
30
|
"author": {
|
|
@@ -32,11 +32,11 @@
|
|
|
32
32
|
},
|
|
33
33
|
"bundleDependencies": false,
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@syncfusion/ej2-base": "~26.1.
|
|
35
|
+
"@syncfusion/ej2-base": "~26.1.42",
|
|
36
36
|
"@syncfusion/ej2-buttons": "~26.1.40",
|
|
37
|
-
"@syncfusion/ej2-calendars": "~26.1.
|
|
38
|
-
"@syncfusion/ej2-dropdowns": "~26.1.
|
|
39
|
-
"@syncfusion/ej2-inputs": "~26.1.
|
|
37
|
+
"@syncfusion/ej2-calendars": "~26.1.41",
|
|
38
|
+
"@syncfusion/ej2-dropdowns": "~26.1.42",
|
|
39
|
+
"@syncfusion/ej2-inputs": "~26.1.42",
|
|
40
40
|
"@syncfusion/ej2-splitbuttons": "~26.1.35"
|
|
41
41
|
},
|
|
42
42
|
"deprecated": false,
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"url": "https://github.com/syncfusion/ej2-javascript-ui-controls/tree/master/controls/querybuilder"
|
|
67
67
|
},
|
|
68
68
|
"typings": "index.d.ts",
|
|
69
|
-
"version": "26.1.
|
|
69
|
+
"version": "26.1.42",
|
|
70
70
|
"sideEffects": false,
|
|
71
71
|
"homepage": "https://www.syncfusion.com/javascript-ui-controls"
|
|
72
72
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, INotifyPropertyChanged, NotifyPropertyChanges, getComponent, MouseEventArgs, Browser, compile, append, ModuleDeclaration, Draggable, remove } from '@syncfusion/ej2-base';import { Property, ChildProperty, Complex, L10n, closest, extend, isNullOrUndefined, Collection, cldrData } from '@syncfusion/ej2-base';import { getInstance, addClass, removeClass, rippleEffect, detach, classList } from '@syncfusion/ej2-base';import { Internationalization, DateFormatOptions, KeyboardEventArgs, getUniqueID, select } from '@syncfusion/ej2-base';import { Button, CheckBox, RadioButton, ChangeEventArgs as ButtonChangeEventArgs, RadioButtonModel } from '@syncfusion/ej2-buttons';import { DropDownList, ChangeEventArgs as DropDownChangeEventArgs, FieldSettingsModel, CheckBoxSelection, DropDownTreeModel, DropDownTree } from '@syncfusion/ej2-dropdowns';import { MultiSelect, MultiSelectChangeEventArgs, PopupEventArgs, MultiSelectModel, DropDownListModel } from '@syncfusion/ej2-dropdowns';import { EmitType, Event, EventHandler, getValue, Animation, BaseEventArgs } from '@syncfusion/ej2-base';import { Query, Predicate, DataManager, Deferred } from '@syncfusion/ej2-data';import { TextBox, NumericTextBox, InputEventArgs, ChangeEventArgs as InputChangeEventArgs } from '@syncfusion/ej2-inputs';import { TextBoxModel, NumericTextBoxModel } from '@syncfusion/ej2-inputs';import { DatePicker, ChangeEventArgs as CalendarChangeEventArgs, DatePickerModel } from '@syncfusion/ej2-calendars';import { DropDownButton, ItemModel, MenuEventArgs } from '@syncfusion/ej2-splitbuttons';import { Tooltip, createSpinner, showSpinner, hideSpinner, TooltipEventArgs } from '@syncfusion/ej2-popups';import { compile as templateCompiler } from '@syncfusion/ej2-base';
|
|
1
|
+
import { Component, INotifyPropertyChanged, NotifyPropertyChanges, getComponent, MouseEventArgs, Browser, compile, append, ModuleDeclaration, Draggable, remove } from '@syncfusion/ej2-base';import { Property, ChildProperty, Complex, L10n, closest, extend, isNullOrUndefined, Collection, cldrData } from '@syncfusion/ej2-base';import { getInstance, addClass, removeClass, rippleEffect, detach, classList } from '@syncfusion/ej2-base';import { Internationalization, DateFormatOptions, KeyboardEventArgs, getUniqueID, select } from '@syncfusion/ej2-base';import { Button, CheckBox, RadioButton, ChangeEventArgs as ButtonChangeEventArgs, RadioButtonModel } from '@syncfusion/ej2-buttons';import { DropDownList, ChangeEventArgs as DropDownChangeEventArgs, FieldSettingsModel, CheckBoxSelection, DropDownTreeModel, DropDownTree, DdtFilteringEventArgs } from '@syncfusion/ej2-dropdowns';import { MultiSelect, MultiSelectChangeEventArgs, PopupEventArgs, MultiSelectModel, DropDownListModel } from '@syncfusion/ej2-dropdowns';import { EmitType, Event, EventHandler, getValue, Animation, BaseEventArgs } from '@syncfusion/ej2-base';import { Query, Predicate, DataManager, Deferred } from '@syncfusion/ej2-data';import { TextBox, NumericTextBox, InputEventArgs, ChangeEventArgs as InputChangeEventArgs } from '@syncfusion/ej2-inputs';import { TextBoxModel, NumericTextBoxModel } from '@syncfusion/ej2-inputs';import { DatePicker, ChangeEventArgs as CalendarChangeEventArgs, DatePickerModel } from '@syncfusion/ej2-calendars';import { DropDownButton, ItemModel, MenuEventArgs } from '@syncfusion/ej2-splitbuttons';import { Tooltip, createSpinner, showSpinner, hideSpinner, TooltipEventArgs } from '@syncfusion/ej2-popups';import { compile as templateCompiler } from '@syncfusion/ej2-base';
|
|
2
2
|
import {TemplateColumn,Validation,FormatObject,ActionEventArgs,ChangeEventArgs,RuleChangeEventArgs,DragEventArgs,DropEventArgs,FieldMode,DisplayMode,SortDirection} from "./query-builder";
|
|
3
3
|
import {ComponentModel} from '@syncfusion/ej2-base';
|
|
4
4
|
|
|
@@ -346,6 +346,7 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
|
|
|
346
346
|
private dragElement;
|
|
347
347
|
private prvtEvtTgrDaD;
|
|
348
348
|
private isDragEventPrevent;
|
|
349
|
+
private ddTree;
|
|
349
350
|
/**
|
|
350
351
|
* Triggers when the component is created.
|
|
351
352
|
*
|
|
@@ -621,6 +622,11 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
|
|
|
621
622
|
private appendRuleElem;
|
|
622
623
|
private addRuleElement;
|
|
623
624
|
private addRuleSuccessCallBack;
|
|
625
|
+
private dropdownTreeFiltering;
|
|
626
|
+
private changeDataSource;
|
|
627
|
+
private nestedChildFilter;
|
|
628
|
+
private isMatchedNode;
|
|
629
|
+
private dropdownTreeClose;
|
|
624
630
|
private updateDropdowntreeDS;
|
|
625
631
|
private updateAddedRule;
|
|
626
632
|
private changeRuleTemplate;
|
|
@@ -1145,7 +1145,7 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
1145
1145
|
popupHeight: ((this.columns.length > 5) ? height : 'auto'), changeOnBlur: false,
|
|
1146
1146
|
change: this.changeField.bind(this), value: !isNullOrUndefined(ddlValue) ? [ddlValue] : null,
|
|
1147
1147
|
open: this.popupOpen.bind(this, false), treeSettings: { expandOn: 'Click' },
|
|
1148
|
-
cssClass: 'e-qb-ddt'
|
|
1148
|
+
cssClass: 'e-qb-ddt', filtering: this.dropdownTreeFiltering.bind(this), close: this.dropdownTreeClose.bind(this)
|
|
1149
1149
|
};
|
|
1150
1150
|
if (this.fieldModel) {
|
|
1151
1151
|
ddlField = __assign({}, ddlField, this.fieldModel);
|
|
@@ -1215,6 +1215,72 @@ var QueryBuilder = /** @class */ (function (_super) {
|
|
|
1215
1215
|
this.setMultiConnector(ruleElem);
|
|
1216
1216
|
}
|
|
1217
1217
|
};
|
|
1218
|
+
QueryBuilder.prototype.dropdownTreeFiltering = function (args) {
|
|
1219
|
+
var _this = this;
|
|
1220
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
1221
|
+
var proxy = this;
|
|
1222
|
+
var ruleElemID = '';
|
|
1223
|
+
var srcElement = args.event.srcElement;
|
|
1224
|
+
var isClearIcon = srcElement.classList.contains('e-clear-icon');
|
|
1225
|
+
var inputElem = isClearIcon ? srcElement.parentElement.querySelector('.e-textbox') : srcElement;
|
|
1226
|
+
ruleElemID = inputElem.id.split('_filterkey')[0];
|
|
1227
|
+
var ruleElem = document.getElementById(ruleElemID);
|
|
1228
|
+
this.ddTree = getComponent(ruleElem.querySelector('input.e-dropdowntree'), 'dropdowntree');
|
|
1229
|
+
var hierarchicalData = extend([], this.columns, [], true);
|
|
1230
|
+
// Cancel the default filtering.
|
|
1231
|
+
args.cancel = true;
|
|
1232
|
+
if (args.text === '') {
|
|
1233
|
+
this.changeDataSource(hierarchicalData);
|
|
1234
|
+
}
|
|
1235
|
+
else {
|
|
1236
|
+
var matchedDataSource = hierarchicalData
|
|
1237
|
+
.map(function (data) { return _this.nestedChildFilter(args.text, data); })
|
|
1238
|
+
.filter(function (filteredChild) { return filteredChild !== null; });
|
|
1239
|
+
this.changeDataSource(matchedDataSource);
|
|
1240
|
+
setTimeout(function () {
|
|
1241
|
+
proxy.ddTree.treeObj.expandAll();
|
|
1242
|
+
}, 100);
|
|
1243
|
+
}
|
|
1244
|
+
};
|
|
1245
|
+
QueryBuilder.prototype.changeDataSource = function (data) {
|
|
1246
|
+
this.ddTree.treeObj.fields = {
|
|
1247
|
+
dataSource: data,
|
|
1248
|
+
value: 'field',
|
|
1249
|
+
text: 'label',
|
|
1250
|
+
child: 'columns',
|
|
1251
|
+
expanded: 'expanded'
|
|
1252
|
+
};
|
|
1253
|
+
this.ddTree.treeObj.refresh();
|
|
1254
|
+
};
|
|
1255
|
+
QueryBuilder.prototype.nestedChildFilter = function (value, node) {
|
|
1256
|
+
var _this = this;
|
|
1257
|
+
var children = node[this.ddTree.fields.child];
|
|
1258
|
+
if (!children) {
|
|
1259
|
+
return this.isMatchedNode(value, node) ? node : null;
|
|
1260
|
+
}
|
|
1261
|
+
var matchedChildren = children
|
|
1262
|
+
.map(function (child) { return _this.nestedChildFilter(value, child); })
|
|
1263
|
+
.filter(function (filteredChild) { return filteredChild !== null; });
|
|
1264
|
+
if (matchedChildren.length) {
|
|
1265
|
+
node[this.ddTree.fields.child] = matchedChildren;
|
|
1266
|
+
return node;
|
|
1267
|
+
}
|
|
1268
|
+
else {
|
|
1269
|
+
node[this.ddTree.fields.child] = children;
|
|
1270
|
+
return this.isMatchedNode(value, node) ? node : null;
|
|
1271
|
+
}
|
|
1272
|
+
};
|
|
1273
|
+
QueryBuilder.prototype.isMatchedNode = function (value, node) {
|
|
1274
|
+
var checkValue = node[this.ddTree.fields.text].toLowerCase();
|
|
1275
|
+
value = value ? value.toLowerCase() : '';
|
|
1276
|
+
return checkValue.indexOf(value) !== -1;
|
|
1277
|
+
};
|
|
1278
|
+
QueryBuilder.prototype.dropdownTreeClose = function () {
|
|
1279
|
+
if (this.ddTree) {
|
|
1280
|
+
this.changeDataSource(this.columns);
|
|
1281
|
+
}
|
|
1282
|
+
this.ddTree = null;
|
|
1283
|
+
};
|
|
1218
1284
|
QueryBuilder.prototype.updateDropdowntreeDS = function (columns) {
|
|
1219
1285
|
for (var i = 0; i < columns.length; i++) {
|
|
1220
1286
|
if (columns[parseInt(i.toString(), 10)].type === 'object') {
|