@syncfusion/ej2-querybuilder 25.1.35 → 25.1.38

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 25.1.35
3
+ * version : 25.1.38
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@18.24.1",
3
+ "_id": "@syncfusion/ej2-querybuilder@25.1.37",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-ujZuYcmKu3KsFyS06QnLCHFo2iAoP/xGSfn5H5+Bz72cs7gO8fkLxDHEGZ/FAq5d3H5knyxsbczY4M/T4d/A0g==",
5
+ "_integrity": "sha512-82Ugl8XToVyBNpReqvpq6VltiaoMT+MCsZYQwT+vBYxBWBhnXgQJ4iZ5r6HyF7EePtMZhYgeRZED0K0AbGpRWw==",
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-release/@syncfusion/ej2-querybuilder/-/ej2-querybuilder-18.24.1.tgz",
27
- "_shasum": "9c720eb30d9ffdbd3b0fdff5462862a88930b6ed",
26
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-querybuilder/-/ej2-querybuilder-25.1.37.tgz",
27
+ "_shasum": "db89eb0ea98202e49522c04dd6bfdba7db0c030f",
28
28
  "_spec": "@syncfusion/ej2-querybuilder@*",
29
29
  "_where": "/jenkins/workspace/elease-automation_release_25.1.1/packages/included",
30
30
  "author": {
@@ -34,10 +34,10 @@
34
34
  "dependencies": {
35
35
  "@syncfusion/ej2-base": "~25.1.35",
36
36
  "@syncfusion/ej2-buttons": "~25.1.35",
37
- "@syncfusion/ej2-calendars": "~25.1.35",
38
- "@syncfusion/ej2-dropdowns": "~25.1.35",
39
- "@syncfusion/ej2-inputs": "~25.1.35",
40
- "@syncfusion/ej2-splitbuttons": "~25.1.35"
37
+ "@syncfusion/ej2-calendars": "~25.1.37",
38
+ "@syncfusion/ej2-dropdowns": "~25.1.37",
39
+ "@syncfusion/ej2-inputs": "~25.1.38",
40
+ "@syncfusion/ej2-splitbuttons": "~25.1.38"
41
41
  },
42
42
  "deprecated": false,
43
43
  "description": "Essential JS 2 QueryBuilder",
@@ -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": "25.1.35",
69
+ "version": "25.1.38",
70
70
  "sideEffects": false,
71
71
  "homepage": "https://www.syncfusion.com/javascript-ui-controls"
72
72
  }
@@ -1822,7 +1822,7 @@ var QueryBuilder = /** @class */ (function (_super) {
1822
1822
  this.GetRootColumnName(rule.field) === this.GetRootColumnName(this.previousColumn.field))) {
1823
1823
  var subField = this.selectedColumn.columns;
1824
1824
  for (var i = 0; i < subField.length; i++) {
1825
- if (rule.field === subField[i].field) {
1825
+ if (rule.field === subField[i].field || rule.field.indexOf(subField[i].field + this.separator) > -1) {
1826
1826
  dropDownList.value = subField[i].field;
1827
1827
  this.selectedColumn = subField[i];
1828
1828
  subFieldValue = true;
@@ -2192,17 +2192,11 @@ var QueryBuilder = /** @class */ (function (_super) {
2192
2192
  if (!this.dataColl.length && values.length) {
2193
2193
  isValues = true;
2194
2194
  }
2195
- var fieldValue = this.selectedRule.field;
2196
- var isNested = this.selectedRule.field.indexOf(this.separator);
2197
- if (isNested !== 0 && this.fieldMode !== 'DropdownTree') {
2198
- var nest = this.selectedRule.field.split(this.separator);
2199
- fieldValue = nest[nest.length - 1];
2200
- }
2201
2195
  var multiSelectValue;
2202
2196
  multiSelectValue = {
2203
2197
  dataSource: isValues ? values : (isFetched ? ds : this.dataManager),
2204
2198
  query: new Query([rule.field]),
2205
- fields: { text: fieldValue, value: fieldValue },
2199
+ fields: { text: this.selectedRule.field, value: this.selectedRule.field },
2206
2200
  placeholder: this.l10n.getConstant('SelectValue'),
2207
2201
  value: selectedValue,
2208
2202
  mode: 'CheckBox',
@@ -2333,7 +2327,7 @@ var QueryBuilder = /** @class */ (function (_super) {
2333
2327
  var columnData = this.getItemData(parentId);
2334
2328
  var selectedValue;
2335
2329
  var isTemplate = (typeof columnData.template === 'string');
2336
- if (this.isImportRules || this.ruleIndex > -1 || this.groupIndex > -1 || this.isPublic || isTemplate) {
2330
+ if (this.isImportRules || this.ruleIndex > -1 || this.groupIndex > -1 || this.isPublic || isTemplate || rule.value != '') {
2337
2331
  selectedValue = rule.value;
2338
2332
  }
2339
2333
  else {
@@ -2372,7 +2366,7 @@ var QueryBuilder = /** @class */ (function (_super) {
2372
2366
  QueryBuilder.prototype.renderNumberValue = function (parentId, rule, operator, idx, ruleValElem, itemData, length) {
2373
2367
  var columnData = this.getItemData(parentId);
2374
2368
  var isTemplate = (typeof columnData.template === 'string');
2375
- var selectedVal = (this.isImportRules || this.ruleIndex > -1 || this.groupIndex > -1 || this.isPublic || isTemplate) ? rule.value : this.setDefaultValue(parentId, false, true);
2369
+ var selectedVal = (this.isImportRules || this.ruleIndex > -1 || this.groupIndex > -1 || this.isPublic || isTemplate || typeof rule.value === 'number') ? rule.value : this.setDefaultValue(parentId, false, true);
2376
2370
  if ((operator === 'in' || operator === 'notin') && (this.dataColl.length || columnData.values)) {
2377
2371
  selectedVal = (this.isImportRules || this.ruleIndex > -1 || this.groupIndex > -1) ? rule.value : this.setDefaultValue(parentId, true, false);
2378
2372
  this.renderMultiSelect(columnData, parentId, idx, selectedVal, columnData.values);
@@ -2508,6 +2502,10 @@ var QueryBuilder = /** @class */ (function (_super) {
2508
2502
  var datePicker = void 0;
2509
2503
  var place = this.l10n.getConstant('SelectValue');
2510
2504
  var isTemplate = (typeof itemData.template === 'string');
2505
+ if (rule.value && !isNullOrUndefined(format)) {
2506
+ selVal = (length_1 > 1) ? rule.value[i] : rule.value;
2507
+ selectedValue = this.parseDate(selVal, format) || new Date();
2508
+ }
2511
2509
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
2512
2510
  if (!itemData.field && !itemData.key && itemData.value) {
2513
2511
  if (itemData.value instanceof Date) {
@@ -2608,7 +2606,15 @@ var QueryBuilder = /** @class */ (function (_super) {
2608
2606
  isCheck = values[i].toString().toLowerCase() === itemData.value.toString().toLowerCase();
2609
2607
  }
2610
2608
  else if (i === 0) {
2611
- isCheck = true;
2609
+ if (typeof rule.value === 'boolean') {
2610
+ isCheck = rule.value ? true : false;
2611
+ }
2612
+ else {
2613
+ isCheck = true;
2614
+ }
2615
+ }
2616
+ if (typeof rule.value === 'boolean' && i === 1) {
2617
+ isCheck = !rule.value ? true : false;
2612
2618
  }
2613
2619
  value = values[i].toString();
2614
2620
  orgValue = values[i];
@@ -2625,7 +2631,7 @@ var QueryBuilder = /** @class */ (function (_super) {
2625
2631
  var radiobutton = new RadioButton(radioBtn);
2626
2632
  radiobutton.appendTo('#' + parentId + '_valuekey' + i);
2627
2633
  if (isCheck) {
2628
- this.updateRules(radiobutton.element, orgValue, 0);
2634
+ this.updateRules(radiobutton.element, orgValue, 0, true);
2629
2635
  }
2630
2636
  };
2631
2637
  QueryBuilder.prototype.getOperatorIndex = function (ddlObj, rule) {
@@ -5127,6 +5133,7 @@ var QueryBuilder = /** @class */ (function (_super) {
5127
5133
  */
5128
5134
  QueryBuilder.prototype.cloneRule = function (ruleID, groupID, index) {
5129
5135
  var getRule = this.getRule(ruleID.replace(this.element.id + '_', ''));
5136
+ var isCloneRule = this.showButtons.cloneRule;
5130
5137
  groupID = groupID.replace(this.element.id + '_', '');
5131
5138
  this.ruleIndex = index;
5132
5139
  this.cloneRuleBtnClick = true;
@@ -5137,7 +5144,8 @@ var QueryBuilder = /** @class */ (function (_super) {
5137
5144
  }], groupID);
5138
5145
  this.ruleIndex = -1;
5139
5146
  this.cloneRuleBtnClick = false;
5140
- this.showButtons.cloneRule = false;
5147
+ this.showButtons.cloneRule = isCloneRule;
5148
+ isCloneRule = false;
5141
5149
  };
5142
5150
  /**
5143
5151
  * Clones the group based on the group ID to the specific group.
@@ -5150,6 +5158,7 @@ var QueryBuilder = /** @class */ (function (_super) {
5150
5158
  QueryBuilder.prototype.cloneGroup = function (groupID, parentGroupID, index) {
5151
5159
  parentGroupID = parentGroupID.replace(this.element.id + '_', '');
5152
5160
  var group = this.getGroup(parentGroupID);
5161
+ var isCloneGroup = this.showButtons.cloneGroup;
5153
5162
  groupID = groupID.replace(this.element.id + '_', '');
5154
5163
  this.groupIndex = index;
5155
5164
  this.cloneGrpBtnClick = true;
@@ -5157,7 +5166,8 @@ var QueryBuilder = /** @class */ (function (_super) {
5157
5166
  this.addGroups([{ 'condition': group.condition, 'not': group.not, 'rules': group.rules }], groupID);
5158
5167
  this.groupIndex = -1;
5159
5168
  this.cloneGrpBtnClick = false;
5160
- this.showButtons.cloneGroup = false;
5169
+ this.showButtons.cloneGroup = isCloneGroup;
5170
+ isCloneGroup = false;
5161
5171
  };
5162
5172
  /**
5163
5173
  * Locks the rule based on the rule ID.
@@ -5166,6 +5176,9 @@ var QueryBuilder = /** @class */ (function (_super) {
5166
5176
  * @returns {void}
5167
5177
  */
5168
5178
  QueryBuilder.prototype.lockRule = function (ruleID) {
5179
+ if (ruleID.indexOf(this.element.id) < 0) {
5180
+ ruleID = this.element.id + '_' + ruleID;
5181
+ }
5169
5182
  var target = document.getElementById(ruleID).querySelectorAll('.e-lock-rule-btn')[0];
5170
5183
  this.ruleLock(target);
5171
5184
  };
@@ -5176,6 +5189,9 @@ var QueryBuilder = /** @class */ (function (_super) {
5176
5189
  * @returns {void}
5177
5190
  */
5178
5191
  QueryBuilder.prototype.lockGroup = function (groupID) {
5192
+ if (groupID.indexOf(this.element.id) < 0) {
5193
+ groupID = this.element.id + '_' + groupID;
5194
+ }
5179
5195
  var target = document.getElementById(groupID).querySelectorAll('.e-lock-grp-btn')[0];
5180
5196
  this.groupLock(target);
5181
5197
  };
@@ -5271,9 +5287,9 @@ var QueryBuilder = /** @class */ (function (_super) {
5271
5287
  return matchValue.length;
5272
5288
  }
5273
5289
  // eslint-disable-next-line
5274
- if (this.checkLiteral() && /^'?([a-z_][a-z0-9 _.\[\]\(\)]{0,}(\:(number|float|string|date|boolean))?)'?/i.exec(sqlString)) {
5290
+ if (this.checkLiteral() && /^'?([a-z_][a-z0-9 _.\[\]\(\)-]{0,}(\:(number|float|string|date|boolean))?)'?/i.exec(sqlString)) {
5275
5291
  // eslint-disable-next-line
5276
- matchValue = /^'?([a-z_][a-z0-9 _.\[\]\(\)]{0,}(\:(number|float|string|date|boolean))?)'?/i.exec(sqlString)[1];
5292
+ matchValue = /^'?([a-z_][a-z0-9 _.\[\]\(\)-]{0,}(\:(number|float|string|date|boolean))?)'?/i.exec(sqlString)[1];
5277
5293
  this.parser.push(['Literal', matchValue]);
5278
5294
  return matchValue.length + 2;
5279
5295
  }
@@ -757,7 +757,9 @@
757
757
  border-color: #444c54;
758
758
  }
759
759
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
760
- .e-query-builder .e-deletegroup {
760
+ .e-query-builder .e-deletegroup,
761
+ .e-query-builder .e-clone-grp-btn,
762
+ .e-query-builder .e-lock-grp-btn {
761
763
  background: #212529;
762
764
  box-shadow: none;
763
765
  color: #adb5bd;
@@ -757,7 +757,9 @@
757
757
  border-color: #dee2e6;
758
758
  }
759
759
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
760
- .e-query-builder .e-deletegroup {
760
+ .e-query-builder .e-deletegroup,
761
+ .e-query-builder .e-clone-grp-btn,
762
+ .e-query-builder .e-lock-grp-btn {
761
763
  background: #fff;
762
764
  box-shadow: none;
763
765
  color: #6c757d;
@@ -162,7 +162,7 @@
162
162
 
163
163
  .e-bigger .e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon,
164
164
  .e-bigger.e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon {
165
- margin-top: -1.5em;
165
+ margin-top: -1.6em;
166
166
  }
167
167
 
168
168
  /* stylelint-disable-line no-empty-source */
@@ -742,7 +742,9 @@
742
742
  border-color: #292827;
743
743
  }
744
744
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
745
- .e-query-builder .e-deletegroup {
745
+ .e-query-builder .e-deletegroup,
746
+ .e-query-builder .e-clone-grp-btn,
747
+ .e-query-builder .e-lock-grp-btn {
746
748
  background: #252423;
747
749
  border: 0 solid #252423;
748
750
  }
package/styles/fluent.css CHANGED
@@ -162,7 +162,7 @@
162
162
 
163
163
  .e-bigger .e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon,
164
164
  .e-bigger.e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon {
165
- margin-top: -1.5em;
165
+ margin-top: -1.6em;
166
166
  }
167
167
 
168
168
  /* stylelint-disable-line no-empty-source */
@@ -742,7 +742,9 @@
742
742
  border-color: #edebe9;
743
743
  }
744
744
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
745
- .e-query-builder .e-deletegroup {
745
+ .e-query-builder .e-deletegroup,
746
+ .e-query-builder .e-clone-grp-btn,
747
+ .e-query-builder .e-lock-grp-btn {
746
748
  background: #f3f2f1;
747
749
  border: 0 solid #f3f2f1;
748
750
  }
@@ -104,6 +104,15 @@
104
104
  padding: 5px 5px 5px 12px;
105
105
  }
106
106
 
107
+ .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
108
+ padding: 1px 0;
109
+ }
110
+
111
+ .e-small .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text],
112
+ .e-small.e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
113
+ padding: 0;
114
+ }
115
+
107
116
  /* stylelint-disable-line no-empty-source */
108
117
  /* stylelint-disable property-no-vendor-prefix */
109
118
  @keyframes material-spinner-rotate {
@@ -129,6 +129,15 @@
129
129
  padding: 4px 8px;
130
130
  }
131
131
 
132
+ .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
133
+ padding: 1px 0;
134
+ }
135
+
136
+ .e-small .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text],
137
+ .e-small.e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
138
+ padding: 0;
139
+ }
140
+
132
141
  /* stylelint-disable-line no-empty-source */
133
142
  /* stylelint-disable property-no-vendor-prefix */
134
143
  @keyframes material-spinner-rotate {
@@ -8,7 +8,9 @@
8
8
  }
9
9
 
10
10
  & .e-group-header .e-dropdown-btn.e-add-btn,
11
- .e-deletegroup {
11
+ .e-deletegroup,
12
+ .e-clone-grp-btn,
13
+ .e-lock-grp-btn {
12
14
  @if $skin-name == 'bootstrap5' {
13
15
  background: $qrybldr-btngroup-bgcolor;
14
16
  box-shadow: none;
@@ -757,7 +757,9 @@
757
757
  border-color: #444c54;
758
758
  }
759
759
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
760
- .e-query-builder .e-deletegroup {
760
+ .e-query-builder .e-deletegroup,
761
+ .e-query-builder .e-clone-grp-btn,
762
+ .e-query-builder .e-lock-grp-btn {
761
763
  background: #212529;
762
764
  box-shadow: none;
763
765
  color: #adb5bd;
@@ -757,7 +757,9 @@
757
757
  border-color: #dee2e6;
758
758
  }
759
759
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
760
- .e-query-builder .e-deletegroup {
760
+ .e-query-builder .e-deletegroup,
761
+ .e-query-builder .e-clone-grp-btn,
762
+ .e-query-builder .e-lock-grp-btn {
761
763
  background: #fff;
762
764
  box-shadow: none;
763
765
  color: #6c757d;
@@ -162,7 +162,7 @@
162
162
 
163
163
  .e-bigger .e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon,
164
164
  .e-bigger.e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon {
165
- margin-top: -1.5em;
165
+ margin-top: -1.6em;
166
166
  }
167
167
 
168
168
  /* stylelint-disable-line no-empty-source */
@@ -742,7 +742,9 @@
742
742
  border-color: #292827;
743
743
  }
744
744
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
745
- .e-query-builder .e-deletegroup {
745
+ .e-query-builder .e-deletegroup,
746
+ .e-query-builder .e-clone-grp-btn,
747
+ .e-query-builder .e-lock-grp-btn {
746
748
  background: #252423;
747
749
  border: 0 solid #252423;
748
750
  }
@@ -162,7 +162,7 @@
162
162
 
163
163
  .e-bigger .e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon,
164
164
  .e-bigger.e-multiselect.e-control-container .e-multi-select-wrapper.e-down-icon .e-clear-icon {
165
- margin-top: -1.5em;
165
+ margin-top: -1.6em;
166
166
  }
167
167
 
168
168
  /* stylelint-disable-line no-empty-source */
@@ -742,7 +742,9 @@
742
742
  border-color: #edebe9;
743
743
  }
744
744
  .e-query-builder .e-group-header .e-dropdown-btn.e-add-btn,
745
- .e-query-builder .e-deletegroup {
745
+ .e-query-builder .e-deletegroup,
746
+ .e-query-builder .e-clone-grp-btn,
747
+ .e-query-builder .e-lock-grp-btn {
746
748
  background: #f3f2f1;
747
749
  border: 0 solid #f3f2f1;
748
750
  }
@@ -104,6 +104,15 @@
104
104
  padding: 5px 5px 5px 12px;
105
105
  }
106
106
 
107
+ .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
108
+ padding: 1px 0;
109
+ }
110
+
111
+ .e-small .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text],
112
+ .e-small.e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
113
+ padding: 0;
114
+ }
115
+
107
116
  /* stylelint-disable-line no-empty-source */
108
117
  /* stylelint-disable property-no-vendor-prefix */
109
118
  @keyframes material-spinner-rotate {
@@ -129,6 +129,15 @@
129
129
  padding: 4px 8px;
130
130
  }
131
131
 
132
+ .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
133
+ padding: 1px 0;
134
+ }
135
+
136
+ .e-small .e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text],
137
+ .e-small.e-multiselect.e-input-group.e-checkbox .e-multi-select-wrapper input[type=text] {
138
+ padding: 0;
139
+ }
140
+
132
141
  /* stylelint-disable-line no-empty-source */
133
142
  /* stylelint-disable property-no-vendor-prefix */
134
143
  @keyframes material-spinner-rotate {