@syncfusion/ej2-querybuilder 31.2.4 → 31.2.12

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);