@syncfusion/ej2-querybuilder 31.2.4 → 31.2.15

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.
@@ -2938,9 +2938,23 @@ let QueryBuilder = class QueryBuilder extends Component {
2938
2938
  isValues = true;
2939
2939
  }
2940
2940
  let multiSelectValue;
2941
+ const multiSelectUserQuery = (this.valueModel && this.valueModel.multiSelectModel && this.valueModel.multiSelectModel.query)
2942
+ ? this.valueModel.multiSelectModel.query
2943
+ : null;
2944
+ const multiSelectQuery = (multiSelectUserQuery && typeof multiSelectUserQuery.clone === 'function')
2945
+ ? multiSelectUserQuery.clone()
2946
+ : new Query();
2947
+ const selectedField = rule.field;
2948
+ if (selectedField) {
2949
+ multiSelectQuery.select([selectedField]);
2950
+ }
2951
+ let resolvedQuery = new Query([rule.field]);
2952
+ if (!isValues && !isFetched && (this.dataManager instanceof DataManager || this.dataSource instanceof DataManager)) {
2953
+ resolvedQuery = multiSelectQuery;
2954
+ }
2941
2955
  multiSelectValue = {
2942
2956
  dataSource: isValues ? values : (isFetched ? ds : this.dataManager),
2943
- query: new Query([rule.field]),
2957
+ query: resolvedQuery,
2944
2958
  fields: { text: this.selectedRule.field, value: this.selectedRule.field },
2945
2959
  placeholder: this.l10n.getConstant('SelectValue'),
2946
2960
  value: selectedValue,
@@ -2991,7 +3005,14 @@ let QueryBuilder = class QueryBuilder extends Component {
2991
3005
  getMultiSelectData(element, value) {
2992
3006
  let dummyData;
2993
3007
  const deferred = new Deferred();
2994
- const data = this.dataManager.executeQuery(new Query().select(value));
3008
+ const userQuery = (this.valueModel && this.valueModel.multiSelectModel && this.valueModel.multiSelectModel.query)
3009
+ ? this.valueModel.multiSelectModel.query
3010
+ : null;
3011
+ const dataQuery = (userQuery && typeof userQuery.clone === 'function')
3012
+ ? userQuery.clone()
3013
+ : new Query();
3014
+ dataQuery.select([value]);
3015
+ const data = this.dataManager.executeQuery(dataQuery);
2995
3016
  const multiselectObj = getComponent(element, 'multiselect');
2996
3017
  multiselectObj.hideSpinner();
2997
3018
  this.createSpinner(closest(element, '.e-multi-select-wrapper').parentElement);
@@ -4613,7 +4634,13 @@ let QueryBuilder = class QueryBuilder extends Component {
4613
4634
  this.customOperators['numberOperator'] = this.customOperators['numberOperator'].concat(numberOper); // tslint:disable-line
4614
4635
  if (this.dataSource instanceof DataManager) {
4615
4636
  this.dataManager = this.dataSource;
4616
- this.executeDataManager(new Query().take(1));
4637
+ if (this.columns && this.columns.length) {
4638
+ this.dataColl = this.columns;
4639
+ this.initControl();
4640
+ }
4641
+ else {
4642
+ this.executeDataManager(new Query().take(1));
4643
+ }
4617
4644
  }
4618
4645
  else {
4619
4646
  this.dataManager = new DataManager(this.dataSource);
@@ -4636,7 +4663,8 @@ let QueryBuilder = class QueryBuilder extends Component {
4636
4663
  isReplaceDragEle: true,
4637
4664
  isPreventSelect: false,
4638
4665
  abort: '.e-parent-header',
4639
- isDragScroll: true
4666
+ isDragScroll: true,
4667
+ enableAutoScroll: true
4640
4668
  });
4641
4669
  }
4642
4670
  // eslint-disable-next-line @typescript-eslint/no-unused-vars