@syncfusion/ej2-querybuilder 20.2.46 → 20.2.50

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.
@@ -497,7 +497,7 @@ let QueryBuilder = class QueryBuilder extends Component {
497
497
  ruleListElem.appendChild(ruleElem);
498
498
  this.ruleIdCounter++;
499
499
  }
500
- if (column && column.ruleTemplate) {
500
+ if (column && column.ruleTemplate && rule) {
501
501
  args = { requestType: 'template-initialize', ruleID: ruleElem.id, action: action, fields: this.fields, rule: rule };
502
502
  this.trigger('actionBegin', args);
503
503
  this.ruleTemplateFn = this.templateParser(column.ruleTemplate);
@@ -529,7 +529,7 @@ let QueryBuilder = class QueryBuilder extends Component {
529
529
  elem = this.ruleElem.querySelector('.e-rule-field').cloneNode(true);
530
530
  }
531
531
  ruleElem.appendChild(elem);
532
- if (column && column.ruleTemplate) {
532
+ if (column && column.ruleTemplate && rule) {
533
533
  this.renderReactTemplates();
534
534
  }
535
535
  return ruleElem;
@@ -558,7 +558,7 @@ let QueryBuilder = class QueryBuilder extends Component {
558
558
  let ruleElem;
559
559
  let newRule = { 'label': '', 'field': '', 'type': '', 'operator': '' };
560
560
  if (!args.cancel) {
561
- if (column && column.ruleTemplate) {
561
+ if (column && column.ruleTemplate && rule.field) {
562
562
  this.selectedColumn = column;
563
563
  operators = this.selectedColumn.operators;
564
564
  newRule = { 'label': column.label, 'field': column.field, 'type': column.type, 'operator': operators[0].value };
@@ -606,7 +606,7 @@ let QueryBuilder = class QueryBuilder extends Component {
606
606
  if (!this.isImportRules) {
607
607
  this.updateAddedRule(trgt, rule, newRule, isRlTmp, pId);
608
608
  }
609
- if (!column || (column && !column.ruleTemplate)) {
609
+ if (!column || (column && !column.ruleTemplate) || !rule.field) {
610
610
  if (this.fieldMode === 'Default') {
611
611
  let ddlField;
612
612
  const ddlValue = this.isImportRules ? this.GetRootColumnName(rule.field) : rule.field;
@@ -1112,6 +1112,7 @@ let QueryBuilder = class QueryBuilder extends Component {
1112
1112
  }
1113
1113
  templateChange(element, value, type) {
1114
1114
  const grpElem = closest(element, '.e-group-container');
1115
+ let eventsArgs;
1115
1116
  const rules = this.getParentGroup(grpElem);
1116
1117
  let ruleElem = closest(element, '.e-rule-container');
1117
1118
  let index = 0;
@@ -1188,7 +1189,10 @@ let QueryBuilder = class QueryBuilder extends Component {
1188
1189
  }
1189
1190
  const args = { requestType: 'template-create', action: type, ruleID: grpEle.id,
1190
1191
  fields: this.fields, rule: rule };
1192
+ eventsArgs = { groupID: grpElem.id.replace(this.element.id + '_', ''), ruleID: grpEle.id.replace(this.element.id + '_', ''),
1193
+ value: rule.field, type: 'field' };
1191
1194
  this.trigger('actionBegin', args);
1195
+ this.trigger('change', eventsArgs);
1192
1196
  }
1193
1197
  }
1194
1198
  }
@@ -3932,7 +3936,7 @@ let QueryBuilder = class QueryBuilder extends Component {
3932
3936
  }
3933
3937
  }
3934
3938
  else if (field && field.indexOf(this.separator) > -1) {
3935
- if (columns[i].field === field.split(this.separator)[0]) {
3939
+ if (this.separator !== '' && columns[i].field === field.split(this.separator)[0]) {
3936
3940
  column = columns[i];
3937
3941
  break;
3938
3942
  }