@syncfusion/ej2-querybuilder 29.1.39 → 29.2.4

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.
@@ -1133,8 +1133,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
1133
1133
  this.disableRuleCondition(target, rules, isNewRuleAdded);
1134
1134
  };
1135
1135
  QueryBuilder.prototype.changeRuleTemplate = function (column, element) {
1136
- var operVal = this.selectedColumn.operators;
1137
- if (column.ruleTemplate) {
1136
+ if (column && column.ruleTemplate) {
1138
1137
  return;
1139
1138
  }
1140
1139
  else {
@@ -1145,9 +1144,14 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
1145
1144
  this.clearQBTemplate([parentId]);
1146
1145
  }
1147
1146
  if (column) {
1147
+ var operVal = this.selectedColumn.operators;
1148
1148
  var rule = { field: column.field, label: column.label, operator: operVal[0].value, value: '' };
1149
1149
  this.addRuleElement(parentGroup, rule, column, 'change', parentId, true);
1150
1150
  }
1151
+ else {
1152
+ var rule = { field: '', label: '', operator: '', value: '' };
1153
+ this.addRuleElement(parentGroup, rule, column, 'change', parentId, true);
1154
+ }
1151
1155
  }
1152
1156
  };
1153
1157
  QueryBuilder.prototype.renderToolTip = function (element) {
@@ -1942,11 +1946,20 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
1942
1946
  var prevOper;
1943
1947
  switch (type) {
1944
1948
  case 'field':
1945
- rule.field = value;
1946
- rule.label = this.selectedColumn.label;
1947
- rule.type = this.selectedColumn.type;
1948
- rule.value = '';
1949
- 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
+ }
1950
1963
  break;
1951
1964
  case 'operator':
1952
1965
  prevOper = rule.operator;
@@ -3436,8 +3449,11 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
3436
3449
  }
3437
3450
  rule.value[i] = textboxValue;
3438
3451
  }
3439
- else {
3440
- 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)) : [];
3441
3457
  }
3442
3458
  break;
3443
3459
  case 'dropdownlist':