@syncfusion/ej2-querybuilder 24.2.3 → 24.2.8

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.
@@ -643,7 +643,8 @@ let QueryBuilder = class QueryBuilder extends Component {
643
643
  dataSource: this.columns,
644
644
  fields: this.fields, placeholder: this.l10n.getConstant('SelectField'),
645
645
  popupHeight: ((this.columns.length > 5) ? height : 'auto'), close: this.fieldClose.bind(this, ruleElem.id + '_filterkey'),
646
- change: this.changeField.bind(this), value: rule ? ddlValue : null, open: this.popupOpen.bind(this, true)
646
+ change: this.changeField.bind(this), value: rule ? ddlValue : null, open: this.popupOpen.bind(this, true),
647
+ cssClass: 'qb-dropdownlist'
647
648
  };
648
649
  if (this.fieldModel) {
649
650
  ddlField = Object.assign({}, ddlField, this.fieldModel);
@@ -770,9 +771,14 @@ let QueryBuilder = class QueryBuilder extends Component {
770
771
  }
771
772
  }
772
773
  renderToolTip(element) {
773
- const tooltip = new Tooltip({ content: this.l10n.getConstant('ValidationMessage'),
774
+ const tooltip = new Tooltip({ content: this.l10n.getConstant('ValidationMessage'), isSticky: true,
774
775
  position: 'BottomCenter', cssClass: 'e-querybuilder-error', afterClose: () => {
775
776
  tooltip.destroy();
777
+ }, beforeOpen: (args) => {
778
+ const tooltipCloseElement = args.element.querySelector('.e-tooltip-close');
779
+ if (tooltipCloseElement) {
780
+ tooltipCloseElement.style.display = 'none';
781
+ }
776
782
  } });
777
783
  tooltip.appendTo(element);
778
784
  tooltip.open(element);
@@ -826,7 +832,7 @@ let QueryBuilder = class QueryBuilder extends Component {
826
832
  }
827
833
  fieldElem = tempElem.querySelector('.e-rule-operator .e-control');
828
834
  if (!rule.rules[index].operator) {
829
- if (fieldElem.parentElement.className.indexOf('e-tooltip') < 0) {
835
+ if (fieldElem.parentElement.className.indexOf('e-tooltip') < 0 && fieldElem.className.indexOf('e-tooltip') < 0) {
830
836
  this.renderToolTip(fieldElem.parentElement);
831
837
  }
832
838
  isValid = false;
@@ -2900,6 +2906,7 @@ let QueryBuilder = class QueryBuilder extends Component {
2900
2906
  let i;
2901
2907
  let len;
2902
2908
  let tooltip;
2909
+ let popupElement;
2903
2910
  super.destroy();
2904
2911
  element = this.element.querySelectorAll('.e-addrulegroup');
2905
2912
  len = element.length;
@@ -2946,6 +2953,12 @@ let QueryBuilder = class QueryBuilder extends Component {
2946
2953
  if (this.portals && this.portals.length) {
2947
2954
  this.clearQBTemplate();
2948
2955
  }
2956
+ popupElement = document.querySelectorAll('.qb-dropdownlist');
2957
+ if (popupElement) {
2958
+ for (i = 0; i < popupElement.length; i++) {
2959
+ popupElement[i].remove();
2960
+ }
2961
+ }
2949
2962
  classList(this.element, [], ['e-rtl', 'e-responsive', 'e-device']);
2950
2963
  this.isDestroy = false;
2951
2964
  }