@syncfusion/ej2-querybuilder 29.1.33 → 29.1.41

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.
@@ -266,7 +266,10 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
266
266
  return modules;
267
267
  };
268
268
  QueryBuilder.prototype.GetRootColumnName = function (field) {
269
- return this.separator ? field.split(this.separator)[0] : field;
269
+ if (!isNullOrUndefined(field)) {
270
+ return this.separator ? field.split(this.separator)[0] : field;
271
+ }
272
+ return '';
270
273
  };
271
274
  QueryBuilder.prototype.initialize = function () {
272
275
  if (this.dataColl.length) {
@@ -1130,8 +1133,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
1130
1133
  this.disableRuleCondition(target, rules, isNewRuleAdded);
1131
1134
  };
1132
1135
  QueryBuilder.prototype.changeRuleTemplate = function (column, element) {
1133
- var operVal = this.selectedColumn.operators;
1134
- if (column.ruleTemplate) {
1136
+ if (column && column.ruleTemplate) {
1135
1137
  return;
1136
1138
  }
1137
1139
  else {
@@ -1142,9 +1144,14 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
1142
1144
  this.clearQBTemplate([parentId]);
1143
1145
  }
1144
1146
  if (column) {
1147
+ var operVal = this.selectedColumn.operators;
1145
1148
  var rule = { field: column.field, label: column.label, operator: operVal[0].value, value: '' };
1146
1149
  this.addRuleElement(parentGroup, rule, column, 'change', parentId, true);
1147
1150
  }
1151
+ else {
1152
+ var rule = { field: '', label: '', operator: '', value: '' };
1153
+ this.addRuleElement(parentGroup, rule, column, 'change', parentId, true);
1154
+ }
1148
1155
  }
1149
1156
  };
1150
1157
  QueryBuilder.prototype.renderToolTip = function (element) {
@@ -1939,11 +1946,20 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
1939
1946
  var prevOper;
1940
1947
  switch (type) {
1941
1948
  case 'field':
1942
- rule.field = value;
1943
- rule.label = this.selectedColumn.label;
1944
- rule.type = this.selectedColumn.type;
1945
- rule.value = '';
1946
- rule.operator = operVal[0].value;
1949
+ if (isNullOrUndefined(value)) {
1950
+ rule.field = '';
1951
+ rule.label = '';
1952
+ rule.type = '';
1953
+ rule.value = '';
1954
+ rule.operator = '';
1955
+ }
1956
+ else {
1957
+ rule.field = value;
1958
+ rule.label = this.selectedColumn.label;
1959
+ rule.type = this.selectedColumn.type;
1960
+ rule.value = '';
1961
+ rule.operator = operVal[0].value;
1962
+ }
1947
1963
  break;
1948
1964
  case 'operator':
1949
1965
  prevOper = rule.operator;
@@ -3433,8 +3449,11 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
3433
3449
  }
3434
3450
  rule.value[i] = textboxValue;
3435
3451
  }
3436
- else {
3437
- rule.value = textboxValue;
3452
+ else if (['in', 'notin'].some(function (op) { return rule.operator.indexOf(op) !== -1; })
3453
+ && rule.operator.indexOf('contains') === -1) {
3454
+ rule.value = textboxValue ?
3455
+ (rule.type === 'string' ? textboxValue.split(',').map(function (val) { return val.trim(); }) :
3456
+ textboxValue.split(',').map(Number)) : [];
3438
3457
  }
3439
3458
  break;
3440
3459
  case 'dropdownlist':