@syncfusion/ej2-querybuilder 31.1.17 → 31.2.2

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.
Files changed (105) hide show
  1. package/dist/ej2-querybuilder.min.js +3 -3
  2. package/dist/ej2-querybuilder.umd.min.js +3 -3
  3. package/dist/ej2-querybuilder.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-querybuilder.es2015.js +43 -9
  5. package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
  6. package/dist/es6/ej2-querybuilder.es5.js +43 -9
  7. package/dist/es6/ej2-querybuilder.es5.js.map +1 -1
  8. package/dist/global/ej2-querybuilder.min.js +3 -3
  9. package/dist/global/ej2-querybuilder.min.js.map +1 -1
  10. package/dist/global/index.d.ts +2 -2
  11. package/package.json +14 -46
  12. package/src/query-builder/query-builder-model.d.ts +7 -0
  13. package/src/query-builder/query-builder.d.ts +7 -0
  14. package/src/query-builder/query-builder.js +43 -9
  15. package/styles/bds-lite.css +37 -0
  16. package/styles/bds.css +36 -0
  17. package/styles/bootstrap-dark-lite.css +37 -0
  18. package/styles/bootstrap-dark.css +36 -0
  19. package/styles/bootstrap-lite.css +37 -0
  20. package/styles/bootstrap.css +36 -0
  21. package/styles/bootstrap4-lite.css +45 -0
  22. package/styles/bootstrap4.css +44 -0
  23. package/styles/bootstrap5-dark-lite.css +37 -0
  24. package/styles/bootstrap5-dark.css +36 -0
  25. package/styles/bootstrap5-lite.css +37 -0
  26. package/styles/bootstrap5.3-lite.css +37 -0
  27. package/styles/bootstrap5.3.css +36 -0
  28. package/styles/bootstrap5.css +36 -0
  29. package/styles/fabric-dark-lite.css +37 -0
  30. package/styles/fabric-dark.css +36 -0
  31. package/styles/fabric-lite.css +37 -0
  32. package/styles/fabric.css +36 -0
  33. package/styles/fluent-dark-lite.css +37 -0
  34. package/styles/fluent-dark.css +36 -0
  35. package/styles/fluent-lite.css +37 -0
  36. package/styles/fluent.css +36 -0
  37. package/styles/fluent2-lite.css +37 -0
  38. package/styles/fluent2.css +36 -0
  39. package/styles/highcontrast-light-lite.css +37 -0
  40. package/styles/highcontrast-light.css +36 -0
  41. package/styles/highcontrast-lite.css +37 -0
  42. package/styles/highcontrast.css +36 -0
  43. package/styles/material-dark-lite.css +37 -0
  44. package/styles/material-dark.css +36 -0
  45. package/styles/material-lite.css +37 -0
  46. package/styles/material.css +36 -0
  47. package/styles/material3-dark-lite.css +37 -0
  48. package/styles/material3-dark.css +36 -0
  49. package/styles/material3-lite.css +37 -0
  50. package/styles/material3.css +36 -0
  51. package/styles/query-builder/_bds-definition.scss +2 -0
  52. package/styles/query-builder/_bootstrap-dark-definition.scss +2 -0
  53. package/styles/query-builder/_bootstrap-definition.scss +4 -0
  54. package/styles/query-builder/_bootstrap4-definition.scss +3 -0
  55. package/styles/query-builder/_bootstrap5-definition.scss +2 -0
  56. package/styles/query-builder/_bootstrap5.3-definition.scss +2 -0
  57. package/styles/query-builder/_fabric-dark-definition.scss +4 -0
  58. package/styles/query-builder/_fabric-definition.scss +4 -0
  59. package/styles/query-builder/_fluent-definition.scss +2 -0
  60. package/styles/query-builder/_fluent2-definition.scss +2 -0
  61. package/styles/query-builder/_fusionnew-definition.scss +2 -0
  62. package/styles/query-builder/_highcontrast-definition.scss +4 -0
  63. package/styles/query-builder/_highcontrast-light-definition.scss +4 -0
  64. package/styles/query-builder/_material-dark-definition.scss +3 -0
  65. package/styles/query-builder/_material-definition.scss +3 -0
  66. package/styles/query-builder/_material3-definition.scss +2 -0
  67. package/styles/query-builder/_tailwind-definition.scss +2 -0
  68. package/styles/query-builder/_tailwind3-definition.scss +2 -0
  69. package/styles/query-builder/_theme.scss +23 -0
  70. package/styles/query-builder/bds.css +36 -0
  71. package/styles/query-builder/bootstrap-dark.css +36 -0
  72. package/styles/query-builder/bootstrap.css +36 -0
  73. package/styles/query-builder/bootstrap4.css +44 -0
  74. package/styles/query-builder/bootstrap5-dark.css +36 -0
  75. package/styles/query-builder/bootstrap5.3.css +36 -0
  76. package/styles/query-builder/bootstrap5.css +36 -0
  77. package/styles/query-builder/fabric-dark.css +36 -0
  78. package/styles/query-builder/fabric.css +36 -0
  79. package/styles/query-builder/fluent-dark.css +36 -0
  80. package/styles/query-builder/fluent.css +36 -0
  81. package/styles/query-builder/fluent2.css +36 -0
  82. package/styles/query-builder/highcontrast-light.css +36 -0
  83. package/styles/query-builder/highcontrast.css +36 -0
  84. package/styles/query-builder/material-dark.css +36 -0
  85. package/styles/query-builder/material.css +36 -0
  86. package/styles/query-builder/material3-dark.css +36 -0
  87. package/styles/query-builder/material3.css +36 -0
  88. package/styles/query-builder/tailwind-dark.css +36 -0
  89. package/styles/query-builder/tailwind.css +36 -0
  90. package/styles/query-builder/tailwind3.css +36 -0
  91. package/styles/tailwind-dark-lite.css +37 -0
  92. package/styles/tailwind-dark.css +36 -0
  93. package/styles/tailwind-lite.css +37 -0
  94. package/styles/tailwind.css +36 -0
  95. package/styles/tailwind3-lite.css +37 -0
  96. package/styles/tailwind3.css +36 -0
  97. package/dist/ts/index.d.ts +0 -4
  98. package/dist/ts/index.ts +0 -4
  99. package/dist/ts/query-builder/index.d.ts +0 -6
  100. package/dist/ts/query-builder/index.ts +0 -6
  101. package/dist/ts/query-builder/query-builder-model.d.ts +0 -569
  102. package/dist/ts/query-builder/query-builder.d.ts +0 -1172
  103. package/dist/ts/query-builder/query-builder.ts +0 -7612
  104. package/dist/ts/query-builder/query-library.d.ts +0 -24
  105. package/dist/ts/query-builder/query-library.ts +0 -625
@@ -206,6 +206,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
206
206
  _this.cloneRuleBtnClick = false;
207
207
  _this.isValueEmpty = false;
208
208
  _this.isPropChange = false;
209
+ _this.isRuleClicked = false;
209
210
  MultiSelect.Inject(CheckBoxSelection);
210
211
  return _this;
211
212
  }
@@ -570,6 +571,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
570
571
  case target.className.indexOf('e-clone-rule-btn') > -1:
571
572
  this.actionButton = target;
572
573
  this.cloneRuleBtnClick = true;
574
+ this.isRuleClicked = true;
573
575
  this.ruleClone(target);
574
576
  break;
575
577
  case target.className.indexOf('e-lock-rule-btn') > -1:
@@ -583,6 +585,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
583
585
  case target.className.indexOf('e-clone-grp-btn') > -1:
584
586
  this.actionButton = target;
585
587
  this.cloneGrpBtnClick = true;
588
+ this.isRuleClicked = true;
586
589
  this.groupClone(closest(target, '.e-group-container'));
587
590
  break;
588
591
  case target.className.indexOf('e-deletegroup') > -1:
@@ -742,9 +745,11 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
742
745
  }
743
746
  }
744
747
  else if (event.element.children[0].className.indexOf('e-addrule') > -1) {
748
+ this.isRuleClicked = true;
745
749
  this.addRuleElement(closest(target, '.e-group-container'), {});
746
750
  }
747
751
  else if (event.element.children[0].className.indexOf('e-addgroup') > -1) {
752
+ this.isRuleClicked = true;
748
753
  this.addGroupElement(true, closest(target, '.e-group-container'), '', true);
749
754
  }
750
755
  };
@@ -945,6 +950,10 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
945
950
  if (!this.isImportRules) {
946
951
  this.updateAddedRule(trgt, rule, newRule, isRlTmp, pId, this.enableSeparateConnector ? true : null);
947
952
  }
953
+ if (this.rule.condition === '' && (this.isRuleClicked || this.rule.rules.length > 1)) {
954
+ this.rule.condition = 'and';
955
+ }
956
+ this.isRuleClicked = false;
948
957
  var ruleCount = this.rule.rules.length;
949
958
  if (!column || (column && !column.ruleTemplate) || !rule.field) {
950
959
  if (ruleCount > 20) {
@@ -3058,26 +3067,45 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
3058
3067
  var ddlObj = this.fieldMode === 'DropdownTree' ? getComponent(filterElem, 'dropdowntree')
3059
3068
  : getComponent(container.querySelector('.e-rule-filter .e-filter-input'), 'dropdownlist');
3060
3069
  var column = this.fieldMode === 'DropdownTree' ? this.getColumn(ddlObj.value[0]) : this.getColumn(ddlObj.value);
3070
+ if (target && target.nextElementSibling) {
3071
+ target.nextElementSibling.style.position = 'relative';
3072
+ target.nextElementSibling.classList.add('e-querybuilder-spinner');
3073
+ }
3074
+ var onComplete = function () {
3075
+ if (target && target.nextElementSibling && target.nextElementSibling.classList.contains('e-querybuilder-spinner')) {
3076
+ target.nextElementSibling.classList.remove('e-querybuilder-spinner');
3077
+ }
3078
+ };
3061
3079
  if (typeof itemData.template === 'string' || itemData.template.write === undefined) {
3062
3080
  var args = {
3063
3081
  rule: rule, ruleID: container.id, operator: tempRule.operator, field: column.field,
3064
3082
  requestType: 'value-template-create'
3065
3083
  };
3066
3084
  this.trigger('actionBegin', args);
3085
+ onComplete();
3067
3086
  }
3068
3087
  else {
3069
3088
  var template = itemData.template;
3089
+ var templateArgs = {
3090
+ elements: tempElements.length > 1 ? tempElements : tempElements[0],
3091
+ values: rule.value,
3092
+ operator: tempRule.operator,
3093
+ field: column.field,
3094
+ dataSource: column.values,
3095
+ onComplete: onComplete
3096
+ };
3097
+ var writeResult = void 0;
3070
3098
  if (typeof template.write === 'string') {
3071
- getValue(template.write, window)({
3072
- elements: tempElements.length > 1 ? tempElements : tempElements[0], values: rule.value,
3073
- operator: tempRule.operator, field: column.field, dataSource: column.values
3074
- });
3099
+ writeResult = getValue(template.write, window)(templateArgs);
3075
3100
  }
3076
3101
  else if (typeof itemData.template !== 'function') {
3077
- itemData.template.write({
3078
- elements: tempElements.length > 1 ? tempElements : tempElements[0],
3079
- values: rule.value, operator: tempRule.operator, field: column.field, dataSource: column.values
3080
- });
3102
+ writeResult = itemData.template.write(templateArgs);
3103
+ }
3104
+ if (writeResult && typeof writeResult.then === 'function') {
3105
+ writeResult.then(function () { return onComplete(); });
3106
+ }
3107
+ else {
3108
+ setTimeout(function () { return onComplete(); }, 100);
3081
3109
  }
3082
3110
  }
3083
3111
  };
@@ -4079,6 +4107,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
4079
4107
  }
4080
4108
  classList(this.element, [], ['e-rtl', 'e-responsive', 'e-device']);
4081
4109
  this.isDestroy = false;
4110
+ _super.prototype.destroy.call(this);
4082
4111
  };
4083
4112
  /**
4084
4113
  * Adds single or multiple rules.
@@ -7432,7 +7461,8 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
7432
7461
  deleteElem: groupElem.querySelectorAll('.e-rule-delete'),
7433
7462
  lockElem: groupElem.querySelectorAll('.e-lock-rule'),
7434
7463
  cloneElem: groupElem.querySelectorAll('.e-clone-rule'),
7435
- ruleElem: groupElem.querySelectorAll('.e-rule-container')
7464
+ ruleElem: groupElem.querySelectorAll('.e-rule-container'),
7465
+ ddTree: groupElem.querySelectorAll('.e-control.e-dropdowntree')
7436
7466
  };
7437
7467
  elements.deleteElem.forEach(function (elem, i) {
7438
7468
  if (isDisabled) {
@@ -7469,10 +7499,14 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
7469
7499
  disableComponents(elements.checkbox, function (elem) { return getComponent(elem, 'checkbox'); }, isDisabled);
7470
7500
  disableComponents(elements.radio, function (elem) { return getComponent(elem, 'radio'); }, isDisabled);
7471
7501
  disableComponents(elements.multiSelect, function (elem) { return getComponent(elem, 'multiselect'); }, isDisabled);
7502
+ disableComponents(elements.ddTree, function (elem) { return getComponent(elem, 'dropdowntree'); }, isDisabled);
7472
7503
  };
7473
7504
  __decorate([
7474
7505
  Event()
7475
7506
  ], QueryBuilder.prototype, "created", void 0);
7507
+ __decorate([
7508
+ Event()
7509
+ ], QueryBuilder.prototype, "destroyed", void 0);
7476
7510
  __decorate([
7477
7511
  Event()
7478
7512
  ], QueryBuilder.prototype, "actionBegin", void 0);