@appbaseio/reactivesearch-vue 1.24.2 → 1.26.0

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 (59) hide show
  1. package/dist/@appbaseio/reactivesearch-vue.umd.js +481 -279
  2. package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
  3. package/dist/@appbaseio/reactivesearch-vue.umd.min.js +5 -5
  4. package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
  5. package/dist/cjs/{DownShift-62e82255.js → CancelSvg-4aa35935.js} +58 -14
  6. package/dist/cjs/DataSearch.js +31 -82
  7. package/dist/cjs/{DropDown-6815b9b6.js → DropDown-cf9bfffc.js} +60 -23
  8. package/dist/cjs/DynamicRangeSlider.js +9 -6
  9. package/dist/cjs/MultiDropdownList.js +14 -7
  10. package/dist/cjs/MultiList.js +6 -5
  11. package/dist/cjs/MultiRange.js +2 -2
  12. package/dist/cjs/RangeInput.js +3 -3
  13. package/dist/cjs/RangeSlider.js +17 -20
  14. package/dist/cjs/ReactiveBase.js +5 -3
  15. package/dist/cjs/ReactiveComponent.js +12 -12
  16. package/dist/cjs/ReactiveList.js +54 -42
  17. package/dist/cjs/ResultCard.js +1 -1
  18. package/dist/cjs/ResultList.js +1 -1
  19. package/dist/cjs/SelectedFilters.js +7 -5
  20. package/dist/cjs/SingleDropdownList.js +14 -7
  21. package/dist/cjs/SingleList.js +7 -6
  22. package/dist/cjs/SingleRange.js +2 -2
  23. package/dist/cjs/StateProvider.js +6 -2
  24. package/dist/cjs/ToggleButton.js +3 -3
  25. package/dist/cjs/index.js +7 -4
  26. package/dist/cjs/initReactivesearch.js +31 -12
  27. package/dist/cjs/install.js +5 -4
  28. package/dist/cjs/ssr-0ee35a09.js +39 -0
  29. package/dist/cjs/version.js +1 -1
  30. package/dist/cjs/{vueTypes-4c19b4c8.js → vueTypes-57d01f18.js} +3 -3
  31. package/dist/es/{DownShift-3558d402.js → CancelSvg-c2c03a35.js} +55 -16
  32. package/dist/es/DataSearch.js +21 -72
  33. package/dist/es/{DropDown-035c804f.js → DropDown-c8da0a2c.js} +59 -22
  34. package/dist/es/DynamicRangeSlider.js +9 -6
  35. package/dist/es/MultiDropdownList.js +14 -7
  36. package/dist/es/MultiList.js +6 -5
  37. package/dist/es/MultiRange.js +2 -2
  38. package/dist/es/RangeInput.js +3 -3
  39. package/dist/es/RangeSlider.js +17 -20
  40. package/dist/es/ReactiveBase.js +5 -3
  41. package/dist/es/ReactiveComponent.js +12 -12
  42. package/dist/es/ReactiveList.js +54 -42
  43. package/dist/es/ResultCard.js +1 -1
  44. package/dist/es/ResultList.js +1 -1
  45. package/dist/es/SelectedFilters.js +7 -5
  46. package/dist/es/SingleDropdownList.js +14 -7
  47. package/dist/es/SingleList.js +7 -6
  48. package/dist/es/SingleRange.js +2 -2
  49. package/dist/es/StateProvider.js +6 -2
  50. package/dist/es/ToggleButton.js +3 -3
  51. package/dist/es/index.js +7 -4
  52. package/dist/es/initReactivesearch.js +31 -12
  53. package/dist/es/install.js +5 -4
  54. package/dist/es/ssr-a41dfea9.js +33 -0
  55. package/dist/es/version.js +1 -1
  56. package/dist/es/{vueTypes-fb61bb7b.js → vueTypes-687b2304.js} +3 -3
  57. package/package.json +3 -3
  58. package/dist/cjs/ssr-08e95ede.js +0 -39
  59. package/dist/es/ssr-5d255b08.js +0 -33
@@ -36,14 +36,9 @@
36
36
 
37
37
  if (Object.getOwnPropertySymbols) {
38
38
  var symbols = Object.getOwnPropertySymbols(object);
39
-
40
- if (enumerableOnly) {
41
- symbols = symbols.filter(function (sym) {
42
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
43
- });
44
- }
45
-
46
- keys.push.apply(keys, symbols);
39
+ enumerableOnly && (symbols = symbols.filter(function (sym) {
40
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
41
+ })), keys.push.apply(keys, symbols);
47
42
  }
48
43
 
49
44
  return keys;
@@ -51,19 +46,12 @@
51
46
 
52
47
  function _objectSpread2(target) {
53
48
  for (var i = 1; i < arguments.length; i++) {
54
- var source = arguments[i] != null ? arguments[i] : {};
55
-
56
- if (i % 2) {
57
- ownKeys(Object(source), true).forEach(function (key) {
58
- _defineProperty(target, key, source[key]);
59
- });
60
- } else if (Object.getOwnPropertyDescriptors) {
61
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
62
- } else {
63
- ownKeys(Object(source)).forEach(function (key) {
64
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
65
- });
66
- }
49
+ var source = null != arguments[i] ? arguments[i] : {};
50
+ i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
51
+ _defineProperty(target, key, source[key]);
52
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
53
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
54
+ });
67
55
  }
68
56
 
69
57
  return target;
@@ -751,23 +739,36 @@
751
739
  createStore: createStore
752
740
  });
753
741
 
742
+ /** A function that accepts a potential "extra argument" value to be injected later,
743
+ * and returns an instance of the thunk middleware that uses that value
744
+ */
754
745
  function createThunkMiddleware(extraArgument) {
755
- return function (_ref) {
746
+ // Standard Redux middleware definition pattern:
747
+ // See: https://redux.js.org/tutorials/fundamentals/part-4-store#writing-custom-middleware
748
+ var middleware = function middleware(_ref) {
756
749
  var dispatch = _ref.dispatch,
757
750
  getState = _ref.getState;
758
751
  return function (next) {
759
752
  return function (action) {
753
+ // The thunk middleware looks for any functions that were passed to `store.dispatch`.
754
+ // If this "action" is really a function, call it and return the result.
760
755
  if (typeof action === 'function') {
756
+ // Inject the store's `dispatch` and `getState` methods, as well as any "extra arg"
761
757
  return action(dispatch, getState, extraArgument);
762
- }
758
+ } // Otherwise, pass the action down the middleware chain as usual
759
+
763
760
 
764
761
  return next(action);
765
762
  };
766
763
  };
767
764
  };
765
+
766
+ return middleware;
768
767
  }
769
768
 
770
- var thunk = createThunkMiddleware();
769
+ var thunk = createThunkMiddleware(); // Attach the factory function so users can create a customized version
770
+ // with whatever "extra arg" they want to inject into their thunks
771
+
771
772
  thunk.withExtraArgument = createThunkMiddleware;
772
773
 
773
774
  var constants = createCommonjsModule(function (module, exports) {
@@ -1193,6 +1194,7 @@
1193
1194
  reactiveList: 'REACTIVELIST',
1194
1195
  dataSearch: 'DATASEARCH',
1195
1196
  categorySearch: 'CATEGORYSEARCH',
1197
+ searchBox: 'SUGGESTION',
1196
1198
  singleList: 'SINGLELIST',
1197
1199
  multiList: 'MULTILIST',
1198
1200
  singleDataList: 'SINGLEDATALIST',
@@ -1221,9 +1223,10 @@
1221
1223
  search: 'search',
1222
1224
  term: 'term',
1223
1225
  range: 'range',
1224
- geo: 'geo'
1226
+ geo: 'geo',
1227
+ suggestion: 'suggestion'
1225
1228
  };
1226
- var validProps = exports.validProps = ['componentType', 'aggregationField', 'aggregationSize', 'distinctField', 'distinctFieldConfig', 'index', 'dataField', 'includeFields', 'excludeFields', 'size', 'from', 'sortBy', 'sortOptions', 'pagination', 'autoFocus', 'autosuggest', 'debounce', 'defaultValue', 'defaultSuggestions', 'fieldWeights', 'filterLabel', 'fuzziness', 'highlight', 'highlightField', 'nestedField', 'placeholder', 'queryFormat', 'searchOperators', 'enableSynonyms', 'enableQuerySuggestions', 'enablePopularSuggestions', 'queryString', 'categoryField', 'strictSelection', 'selectAllLabel', 'showCheckbox', 'showFilter', 'showSearch', 'showCount', 'showLoadMore', 'loadMoreLabel', 'showMissing', 'missingLabel', 'data', 'showRadio', 'multiSelect', 'includeNullValues', 'interval', 'showHistogram', 'snap', 'stepValue', 'range', 'showSlider', 'parseDate', 'unit'];
1229
+ var validProps = exports.validProps = ['componentType', 'aggregationField', 'aggregationSize', 'distinctField', 'distinctFieldConfig', 'index', 'dataField', 'includeFields', 'excludeFields', 'size', 'from', 'sortBy', 'sortOptions', 'pagination', 'autoFocus', 'autosuggest', 'debounce', 'defaultValue', 'defaultSuggestions', 'fieldWeights', 'filterLabel', 'fuzziness', 'highlight', 'highlightField', 'nestedField', 'placeholder', 'queryFormat', 'searchOperators', 'enableSynonyms', 'enableQuerySuggestions', 'enablePopularSuggestions', 'queryString', 'categoryField', 'strictSelection', 'selectAllLabel', 'showCheckbox', 'showFilter', 'showSearch', 'showCount', 'showLoadMore', 'loadMoreLabel', 'showMissing', 'missingLabel', 'data', 'showRadio', 'multiSelect', 'includeNullValues', 'interval', 'showHistogram', 'snap', 'stepValue', 'range', 'showSlider', 'parseDate', 'calendarInterval', 'unit', 'enablePopularSuggestions', 'popularSuggestionsConfig', 'enableRecentSuggestions', 'recentSuggestionsConfig', 'enablePredictiveSuggestions', 'applyStopwords', 'customStopwords'];
1227
1230
  var CLEAR_ALL = exports.CLEAR_ALL = {
1228
1231
  NEVER: 'never',
1229
1232
  ALWAYS: 'always',
@@ -1348,7 +1351,6 @@
1348
1351
  }
1349
1352
 
1350
1353
  var defaultAnalyticsConfig = exports.defaultAnalyticsConfig = {
1351
- searchStateHeader: false,
1352
1354
  emptyQuery: true,
1353
1355
  suggestionAnalytics: true,
1354
1356
  userId: null,
@@ -1726,7 +1728,19 @@
1726
1728
  return _extends({}, state, _defineProperty({}, action.component, _extends({}, state[action.component], action.payload)));
1727
1729
 
1728
1730
  case constants.CLEAR_VALUES:
1729
- return {};
1731
+ {
1732
+ if (action.resetValues) {
1733
+ var nextState = {};
1734
+ Object.keys(action.resetValues).forEach(function (componentId) {
1735
+ nextState[componentId] = _extends({}, state[componentId], {
1736
+ value: action.resetValues[componentId]
1737
+ });
1738
+ });
1739
+ return nextState;
1740
+ }
1741
+
1742
+ return {};
1743
+ }
1730
1744
 
1731
1745
  case constants.REMOVE_COMPONENT:
1732
1746
  {
@@ -2749,7 +2763,12 @@
2749
2763
  var aggsResponse = Object.values(action.aggregations) && Object.values(action.aggregations)[0];
2750
2764
  var fieldName = Object.keys(action.aggregations)[0];
2751
2765
  if (!aggsResponse) return state;
2752
- var buckets = aggsResponse.buckets || [];
2766
+ var buckets = [];
2767
+
2768
+ if (aggsResponse.buckets && Array.isArray(aggsResponse.buckets)) {
2769
+ buckets = aggsResponse.buckets;
2770
+ }
2771
+
2753
2772
  var parsedAggs = buckets.map(function (bucket) {
2754
2773
  var doc_count = bucket.doc_count,
2755
2774
  key = bucket.key,
@@ -2765,7 +2784,7 @@
2765
2784
 
2766
2785
  return _extends({
2767
2786
  _doc_count: doc_count,
2768
- _key: key[fieldName],
2787
+ _key: typeof key === 'string' ? key : key[fieldName],
2769
2788
  top_hits: hitsData
2770
2789
  }, flatData, _source);
2771
2790
  });
@@ -2775,7 +2794,7 @@
2775
2794
  return state;
2776
2795
  }
2777
2796
  });
2778
- unwrapExports(compositeAggsReducer_1);
2797
+ var compositeAggsReducer = unwrapExports(compositeAggsReducer_1);
2779
2798
 
2780
2799
  var appliedSettingsReducer_1 = createCommonjsModule(function (module, exports) {
2781
2800
  Object.defineProperty(exports, "__esModule", {
@@ -4557,6 +4576,8 @@
4557
4576
  return target;
4558
4577
  };
4559
4578
 
4579
+ exports.replaceDiacritics = replaceDiacritics;
4580
+
4560
4581
  var _diacritics2 = _interopRequireDefault(diacritics_1);
4561
4582
 
4562
4583
  function _interopRequireDefault(obj) {
@@ -4834,12 +4855,13 @@
4834
4855
  exports["default"] = getSuggestions;
4835
4856
  });
4836
4857
  unwrapExports(suggestions);
4858
+ var suggestions_1 = suggestions.replaceDiacritics;
4837
4859
 
4838
4860
  var helper = createCommonjsModule(function (module, exports) {
4839
4861
  Object.defineProperty(exports, "__esModule", {
4840
4862
  value: true
4841
4863
  });
4842
- exports.getTopSuggestions = exports.withClickIds = exports.getCompositeAggsQuery = exports.getAggsQuery = exports.extractQueryFromDefaultQuery = exports.updateInternalQuery = exports.getSearchState = exports.getOptionsFromQuery = exports.parseHits = exports.handleA11yAction = exports.getInnerKey = exports.getClassName = exports.checkSomePropChange = exports.checkPropChange = exports.updateDefaultQuery = exports.updateCustomQuery = undefined;
4864
+ exports.suggestionTypes = exports.getTopSuggestions = exports.withClickIds = exports.getCompositeAggsQuery = exports.getAggsQuery = exports.extractQueryFromDefaultQuery = exports.updateInternalQuery = exports.getSearchState = exports.getOptionsFromQuery = exports.parseHits = exports.handleA11yAction = exports.getInnerKey = exports.getClassName = exports.checkSomePropChange = exports.checkPropChange = exports.updateDefaultQuery = exports.updateCustomQuery = undefined;
4843
4865
 
4844
4866
  var _extends = Object.assign || function (target) {
4845
4867
  for (var i = 1; i < arguments.length; i++) {
@@ -4867,6 +4889,7 @@
4867
4889
  exports.extractFieldsFromSource = extractFieldsFromSource;
4868
4890
  exports.normalizeDataField = normalizeDataField;
4869
4891
  exports.handleOnSuggestions = handleOnSuggestions;
4892
+ exports.isValidDateRangeQueryFormat = isValidDateRangeQueryFormat;
4870
4893
 
4871
4894
  var _dateFormats2 = _interopRequireDefault(dateFormats_1);
4872
4895
 
@@ -5255,7 +5278,7 @@
5255
5278
  case 'epoch_millis':
5256
5279
  return date.getTime();
5257
5280
 
5258
- case 'epoch_seconds':
5281
+ case 'epoch_second':
5259
5282
  return Math.floor(date.getTime() / 1000);
5260
5283
 
5261
5284
  default:
@@ -5648,36 +5671,49 @@
5648
5671
  });
5649
5672
  return withClickIds(finalSuggestions);
5650
5673
  };
5674
+
5675
+ function isValidDateRangeQueryFormat(queryFormat) {
5676
+ return Object.keys(_dateFormats2["default"]).includes(queryFormat);
5677
+ }
5678
+
5679
+ var suggestionTypes = exports.suggestionTypes = {
5680
+ Popular: 'popular',
5681
+ Index: 'index',
5682
+ Recent: 'recent',
5683
+ Promoted: 'promoted'
5684
+ };
5651
5685
  });
5652
5686
  unwrapExports(helper);
5653
- var helper_1 = helper.getTopSuggestions;
5654
- var helper_2 = helper.withClickIds;
5655
- var helper_3 = helper.getCompositeAggsQuery;
5656
- var helper_4 = helper.getAggsQuery;
5657
- var helper_5 = helper.extractQueryFromDefaultQuery;
5658
- var helper_6 = helper.updateInternalQuery;
5659
- var helper_7 = helper.getSearchState;
5660
- var helper_8 = helper.getOptionsFromQuery;
5661
- var helper_9 = helper.parseHits;
5662
- var helper_10 = helper.handleA11yAction;
5663
- var helper_11 = helper.getInnerKey;
5664
- var helper_12 = helper.getClassName;
5665
- var helper_13 = helper.checkSomePropChange;
5666
- var helper_14 = helper.checkPropChange;
5667
- var helper_15 = helper.updateDefaultQuery;
5668
- var helper_16 = helper.updateCustomQuery;
5669
- var helper_17 = helper.isEqual;
5670
- var helper_18 = helper.debounce;
5671
- var helper_19 = helper.getQueryOptions;
5672
- var helper_20 = helper.buildQuery;
5673
- var helper_21 = helper.pushToAndClause;
5674
- var helper_22 = helper.checkValueChange;
5675
- var helper_23 = helper.getAggsOrder;
5676
- var helper_24 = helper.formatDate;
5677
- var helper_25 = helper.getResultStats;
5678
- var helper_26 = helper.extractFieldsFromSource;
5679
- var helper_27 = helper.normalizeDataField;
5680
- var helper_28 = helper.handleOnSuggestions;
5687
+ var helper_1 = helper.suggestionTypes;
5688
+ var helper_2 = helper.getTopSuggestions;
5689
+ var helper_3 = helper.withClickIds;
5690
+ var helper_4 = helper.getCompositeAggsQuery;
5691
+ var helper_5 = helper.getAggsQuery;
5692
+ var helper_6 = helper.extractQueryFromDefaultQuery;
5693
+ var helper_7 = helper.updateInternalQuery;
5694
+ var helper_8 = helper.getSearchState;
5695
+ var helper_9 = helper.getOptionsFromQuery;
5696
+ var helper_10 = helper.parseHits;
5697
+ var helper_11 = helper.handleA11yAction;
5698
+ var helper_12 = helper.getInnerKey;
5699
+ var helper_13 = helper.getClassName;
5700
+ var helper_14 = helper.checkSomePropChange;
5701
+ var helper_15 = helper.checkPropChange;
5702
+ var helper_16 = helper.updateDefaultQuery;
5703
+ var helper_17 = helper.updateCustomQuery;
5704
+ var helper_18 = helper.isEqual;
5705
+ var helper_19 = helper.debounce;
5706
+ var helper_20 = helper.getQueryOptions;
5707
+ var helper_21 = helper.buildQuery;
5708
+ var helper_22 = helper.pushToAndClause;
5709
+ var helper_23 = helper.checkValueChange;
5710
+ var helper_24 = helper.getAggsOrder;
5711
+ var helper_25 = helper.formatDate;
5712
+ var helper_26 = helper.getResultStats;
5713
+ var helper_27 = helper.extractFieldsFromSource;
5714
+ var helper_28 = helper.normalizeDataField;
5715
+ var helper_29 = helper.handleOnSuggestions;
5716
+ var helper_30 = helper.isValidDateRangeQueryFormat;
5681
5717
 
5682
5718
  var value = createCommonjsModule(function (module, exports) {
5683
5719
  Object.defineProperty(exports, "__esModule", {
@@ -5799,8 +5835,10 @@
5799
5835
  }
5800
5836
 
5801
5837
  function clearValues() {
5838
+ var resetValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5802
5839
  return {
5803
- type: constants.CLEAR_VALUES
5840
+ type: constants.CLEAR_VALUES,
5841
+ resetValues: resetValues
5804
5842
  };
5805
5843
  }
5806
5844
  });
@@ -6036,6 +6074,7 @@
6036
6074
  exports.updateCompositeAggs = updateCompositeAggs;
6037
6075
  exports.updateHits = updateHits;
6038
6076
  exports.saveQueryToHits = saveQueryToHits;
6077
+ exports.mockDataForTesting = mockDataForTesting;
6039
6078
 
6040
6079
  function updateAggs(component, aggregations) {
6041
6080
  var append = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
@@ -6077,12 +6116,25 @@
6077
6116
  query: query
6078
6117
  };
6079
6118
  }
6119
+
6120
+ function mockDataForTesting(component, data) {
6121
+ return function (dispatch) {
6122
+ if (data.hasOwnProperty('aggregations')) {
6123
+ dispatch(updateAggs(component, data.aggregations));
6124
+ }
6125
+
6126
+ if (data.hasOwnProperty('hits')) {
6127
+ dispatch(updateHits(component, data, data.time || undefined));
6128
+ }
6129
+ };
6130
+ }
6080
6131
  });
6081
6132
  unwrapExports(hits);
6082
6133
  var hits_1 = hits.updateAggs;
6083
6134
  var hits_2 = hits.updateCompositeAggs;
6084
6135
  var hits_3 = hits.updateHits;
6085
6136
  var hits_4 = hits.saveQueryToHits;
6137
+ var hits_5 = hits.mockDataForTesting;
6086
6138
 
6087
6139
  var xdate = createCommonjsModule(function (module) {
6088
6140
  /**
@@ -6910,6 +6962,8 @@
6910
6962
 
6911
6963
  var _xdate2 = _interopRequireDefault(xdate);
6912
6964
 
6965
+ var _dateFormats2 = _interopRequireDefault(dateFormats_1);
6966
+
6913
6967
  function _interopRequireDefault(obj) {
6914
6968
  return obj && obj.__esModule ? obj : {
6915
6969
  "default": obj
@@ -6943,10 +6997,10 @@
6943
6997
  return obj;
6944
6998
  }
6945
6999
 
6946
- var componentToTypeMap = exports.componentToTypeMap = (_componentToTypeMap = {}, _defineProperty(_componentToTypeMap, constants$1.componentTypes.reactiveList, constants$1.queryTypes.search), _defineProperty(_componentToTypeMap, constants$1.componentTypes.dataSearch, constants$1.queryTypes.search), _defineProperty(_componentToTypeMap, constants$1.componentTypes.categorySearch, constants$1.queryTypes.search), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleDataList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleDropdownList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiDataList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiDropdownList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.tagCloud, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.toggleButton, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.numberBox, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.datePicker, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.dateRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.dynamicRangeSlider, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleDropdownRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiDropdownRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.rangeSlider, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.ratingsFilter, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.rangeInput, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.geoDistanceDropdown, constants$1.queryTypes.geo), _defineProperty(_componentToTypeMap, constants$1.componentTypes.geoDistanceSlider, constants$1.queryTypes.geo), _defineProperty(_componentToTypeMap, constants$1.componentTypes.reactiveMap, constants$1.queryTypes.geo), _componentToTypeMap);
7000
+ var componentToTypeMap = exports.componentToTypeMap = (_componentToTypeMap = {}, _defineProperty(_componentToTypeMap, constants$1.componentTypes.reactiveList, constants$1.queryTypes.search), _defineProperty(_componentToTypeMap, constants$1.componentTypes.dataSearch, constants$1.queryTypes.search), _defineProperty(_componentToTypeMap, constants$1.componentTypes.categorySearch, constants$1.queryTypes.search), _defineProperty(_componentToTypeMap, constants$1.componentTypes.searchBox, constants$1.queryTypes.suggestion), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleDataList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleDropdownList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiDataList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiDropdownList, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.tagCloud, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.toggleButton, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.numberBox, constants$1.queryTypes.term), _defineProperty(_componentToTypeMap, constants$1.componentTypes.datePicker, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.dateRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.dynamicRangeSlider, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleDropdownRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiDropdownRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.singleRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.multiRange, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.rangeSlider, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.ratingsFilter, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.rangeInput, constants$1.queryTypes.range), _defineProperty(_componentToTypeMap, constants$1.componentTypes.geoDistanceDropdown, constants$1.queryTypes.geo), _defineProperty(_componentToTypeMap, constants$1.componentTypes.geoDistanceSlider, constants$1.queryTypes.geo), _defineProperty(_componentToTypeMap, constants$1.componentTypes.reactiveMap, constants$1.queryTypes.geo), _componentToTypeMap);
6947
7001
  var multiRangeComponents = [constants$1.componentTypes.multiRange, constants$1.componentTypes.multiDropdownRange];
6948
7002
  var dateRangeComponents = [constants$1.componentTypes.dateRange, constants$1.componentTypes.datePicker];
6949
- var searchComponents = [constants$1.componentTypes.categorySearch, constants$1.componentTypes.dataSearch];
7003
+ var searchComponents = [constants$1.componentTypes.categorySearch, constants$1.componentTypes.dataSearch, constants$1.componentTypes.searchBox];
6950
7004
  var listComponentsWithPagination = [constants$1.componentTypes.singleList, constants$1.componentTypes.multiList, constants$1.componentTypes.singleDropdownList, constants$1.componentTypes.multiDropdownList];
6951
7005
 
6952
7006
  var getNormalizedField = exports.getNormalizedField = function getNormalizedField(field) {
@@ -7002,7 +7056,7 @@
7002
7056
  return null;
7003
7057
  }
7004
7058
 
7005
- return {
7059
+ return _extends({
7006
7060
  id: componentId,
7007
7061
  type: queryType,
7008
7062
  dataField: getNormalizedField(props.dataField),
@@ -7041,7 +7095,17 @@
7041
7095
  distinctField: props.distinctField,
7042
7096
  distinctFieldConfig: props.distinctFieldConfig,
7043
7097
  index: props.index
7044
- };
7098
+ }, queryType === constants$1.queryTypes.suggestion ? {
7099
+ enablePopularSuggestions: props.enablePopularSuggestions,
7100
+ enableRecentSuggestions: props.enableRecentSuggestions,
7101
+ popularSuggestionsConfig: props.popularSuggestionsConfig,
7102
+ recentSuggestionsConfig: props.recentSuggestionsConfig,
7103
+ applyStopwords: props.applyStopwords,
7104
+ customStopwords: props.customStopwords,
7105
+ enablePredictiveSuggestions: props.enablePredictiveSuggestions
7106
+ } : {}, {
7107
+ calendarInterval: props.calendarInterval
7108
+ });
7045
7109
  }
7046
7110
 
7047
7111
  return null;
@@ -7071,6 +7135,7 @@
7071
7135
  var calcValues = store.selectedValues[component] || store.internalValues[component];
7072
7136
  var value = calcValues !== undefined && calcValues !== null ? calcValues.value : undefined;
7073
7137
  var queryFormat = componentProps.queryFormat;
7138
+ var calendarInterval = void 0;
7074
7139
  var interval = componentProps.interval;
7075
7140
  var type = componentToTypeMap[componentProps.componentType];
7076
7141
  var dataField = componentProps.dataField;
@@ -7139,6 +7204,24 @@
7139
7204
  aggregations = ['histogram'];
7140
7205
  }
7141
7206
 
7207
+ if (componentProps.componentType === constants$1.componentTypes.dynamicRangeSlider || componentProps.componentType === constants$1.componentTypes.rangeSlider) {
7208
+ calendarInterval = Object.keys(_dateFormats2["default"]).includes(queryFormat) ? componentProps.calendarInterval || 'month' : undefined;
7209
+
7210
+ if (value) {
7211
+ if ((0, helper.isValidDateRangeQueryFormat)(componentProps.queryFormat)) {
7212
+ value = {
7213
+ start: (0, helper.formatDate)(new _xdate2["default"](value.start), componentProps),
7214
+ end: (0, helper.formatDate)(new _xdate2["default"](value.end), componentProps)
7215
+ };
7216
+ } else {
7217
+ value = {
7218
+ start: parseFloat(value.start),
7219
+ end: parseFloat(value.end)
7220
+ };
7221
+ }
7222
+ }
7223
+ }
7224
+
7142
7225
  if (dateRangeComponents.includes(componentProps.componentType)) {
7143
7226
  queryFormat = 'or';
7144
7227
 
@@ -7261,6 +7344,7 @@
7261
7344
  }
7262
7345
 
7263
7346
  return _extends({}, componentProps, {
7347
+ calendarInterval: calendarInterval,
7264
7348
  dataField: dataField,
7265
7349
  queryFormat: queryFormat,
7266
7350
  type: type,
@@ -7271,7 +7355,7 @@
7271
7355
  defaultQuery: store.defaultQueries ? store.defaultQueries[component] : undefined,
7272
7356
  customHighlight: store.customHighlightOptions ? store.customHighlightOptions[component] : undefined,
7273
7357
  categoryValue: store.internalValues[component] ? store.internalValues[component].category : undefined,
7274
- value: value,
7358
+ value: componentProps.componentType === constants$1.componentTypes.searchBox ? value || undefined : value,
7275
7359
  pagination: pagination,
7276
7360
  from: from
7277
7361
  }, customOptions);
@@ -7307,7 +7391,8 @@
7307
7391
  var orderOfQueries = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
7308
7392
  var finalQuery = {};
7309
7393
  var react = flatReactProp(store.dependencyTree[componentID], componentID);
7310
- react.forEach(function (component) {
7394
+ react.forEach(function (componentObject) {
7395
+ var component = componentObject;
7311
7396
  var customQuery = store.customQueries[component];
7312
7397
 
7313
7398
  if (!isInternalComponent(component)) {
@@ -7320,7 +7405,12 @@
7320
7405
  execute = true;
7321
7406
  }
7322
7407
 
7323
- var dependentQuery = getRSQuery(component, extractPropsFromState(store, component), execute);
7408
+ var componentProps = store.props[component];
7409
+ var dependentQuery = getRSQuery(component, extractPropsFromState(store, component, _extends({}, componentProps && componentProps.componentType === constants$1.componentTypes.searchBox ? _extends({}, execute === false ? {
7410
+ type: constants$1.queryTypes.search
7411
+ } : {}, calcValues.category ? {
7412
+ categoryValue: calcValues.category
7413
+ } : {}) : {})), execute);
7324
7414
 
7325
7415
  if (dependentQuery) {
7326
7416
  finalQuery[component] = dependentQuery;
@@ -8291,6 +8381,20 @@
8291
8381
  value: true
8292
8382
  });
8293
8383
 
8384
+ var _extends = Object.assign || function (target) {
8385
+ for (var i = 1; i < arguments.length; i++) {
8386
+ var source = arguments[i];
8387
+
8388
+ for (var key in source) {
8389
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
8390
+ target[key] = source[key];
8391
+ }
8392
+ }
8393
+ }
8394
+
8395
+ return target;
8396
+ };
8397
+
8294
8398
  var _crossFetch2 = _interopRequireDefault(browserPonyfill);
8295
8399
 
8296
8400
  function _interopRequireDefault(obj) {
@@ -8299,20 +8403,26 @@
8299
8403
  };
8300
8404
  }
8301
8405
 
8302
- var fetchGraphQL = function fetchGraphQL(graphQLUrl, url, credentials, app, query) {
8406
+ var fetchGraphQL = function fetchGraphQL(requestOptions) {
8407
+ var graphQLUrl = requestOptions.graphQLUrl,
8408
+ url = requestOptions.url,
8409
+ credentials = requestOptions.credentials,
8410
+ app = requestOptions.app,
8411
+ query = requestOptions.query,
8412
+ headers = requestOptions.headers;
8303
8413
  var fetchUrl = credentials ? url.replace('//', '//' + credentials + '@') : url;
8304
8414
  return (0, _crossFetch2["default"])(graphQLUrl, {
8305
8415
  method: 'POST',
8306
- body: '\n\t\t\tquery{\n\t\t\t\telastic50(host: "' + fetchUrl + '"){\n\t\t\t\t\tmsearch(\n\t\t\t\t\t\tindex: "' + app + '"\n\t\t\t\t\t\tbody: ' + JSON.stringify(query.map(function (item) {
8416
+ body: '\n\t\t\tquery{\n\t\t\t\telastic77(host: "' + fetchUrl + '"){\n\t\t\t\t\tmsearch(\n\t\t\t\t\t\tindex: "' + app + '"\n\t\t\t\t\t\tbody: ' + JSON.stringify(query.map(function (item) {
8307
8417
  return JSON.stringify(item);
8308
8418
  })) + '\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t}\n\t\t',
8309
- headers: {
8419
+ headers: _extends({}, headers, {
8310
8420
  'Content-Type': 'application/graphql'
8311
- }
8421
+ })
8312
8422
  }).then(function (res) {
8313
8423
  return res.json();
8314
8424
  }).then(function (jsonRes) {
8315
- return jsonRes.data.elastic50.msearch;
8425
+ return jsonRes.data.elastic77.msearch;
8316
8426
  })["catch"](function (error) {
8317
8427
  console.error(error);
8318
8428
  });
@@ -8422,6 +8532,15 @@
8422
8532
  };
8423
8533
  }
8424
8534
 
8535
+ var handleTransformRequest = function handleTransformRequest(transformRequest, res) {
8536
+ if (transformRequest && typeof transformRequest === 'function') {
8537
+ var transformRequestPromise = transformRequest(res);
8538
+ return transformRequestPromise instanceof Promise ? transformRequestPromise : Promise.resolve(transformRequestPromise);
8539
+ }
8540
+
8541
+ return Promise.resolve(res);
8542
+ };
8543
+
8425
8544
  function msearch(query, orderOfQueries) {
8426
8545
  var appendToHits = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
8427
8546
  var isInternalComponent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
@@ -8472,14 +8591,6 @@
8472
8591
  }
8473
8592
  }
8474
8593
 
8475
- if (config.analyticsConfig.searchStateHeader) {
8476
- var searchState = (0, helper.getSearchState)(getState(), true);
8477
-
8478
- if (searchState && Object.keys(searchState).length) {
8479
- searchHeaders['X-Search-State'] = JSON.stringify(searchState);
8480
- }
8481
- }
8482
-
8483
8594
  if (config.analyticsConfig.userId) {
8484
8595
  searchHeaders['X-User-Id'] = config.analyticsConfig.userId;
8485
8596
  }
@@ -8495,14 +8606,29 @@
8495
8606
  });
8496
8607
 
8497
8608
  if (config.graphQLUrl) {
8498
- (0, _graphQL2["default"])(config.graphQLUrl, config.url, config.credentials, config.app, query).then(function (res) {
8499
- (0, utils.handleResponseMSearch)({
8500
- res: res,
8501
- isSuggestionsQuery: isSuggestionsQuery,
8502
- orderOfQueries: orderOfQueries,
8503
- appendToHits: appendToHits,
8504
- appendToAggs: appendToAggs
8505
- }, getState, dispatch);
8609
+ var requestOptions = {
8610
+ graphQLUrl: config.graphQLUrl,
8611
+ url: config.url,
8612
+ credentials: config.credentials,
8613
+ app: config.app,
8614
+ query: query,
8615
+ headers: headers
8616
+ };
8617
+ handleTransformRequest(appbaseRef.transformRequest, requestOptions).then(function (modifiedRequest) {
8618
+ (0, _graphQL2["default"])(modifiedRequest).then(function (res) {
8619
+ (0, utils.handleResponseMSearch)({
8620
+ res: res,
8621
+ isSuggestionsQuery: isSuggestionsQuery,
8622
+ orderOfQueries: orderOfQueries,
8623
+ appendToHits: appendToHits,
8624
+ appendToAggs: appendToAggs
8625
+ }, getState, dispatch);
8626
+ })["catch"](function (err) {
8627
+ (0, utils.handleError)({
8628
+ orderOfQueries: orderOfQueries,
8629
+ error: err
8630
+ }, getState, dispatch);
8631
+ });
8506
8632
  })["catch"](function (err) {
8507
8633
  (0, utils.handleError)({
8508
8634
  orderOfQueries: orderOfQueries,
@@ -8699,7 +8825,7 @@
8699
8825
  var isInternalComponent = componentId.endsWith('__internal');
8700
8826
  var mainComponentProps = props[componentId];
8701
8827
 
8702
- if (isInternalComponent && (0, transform.isSearchComponent)(mainComponentProps.componentType)) {
8828
+ if (isInternalComponent && mainComponentProps && (0, transform.isSearchComponent)(mainComponentProps.componentType)) {
8703
8829
  value$1 = internalValues[componentId] && internalValues[componentId].value;
8704
8830
  }
8705
8831
 
@@ -12778,19 +12904,19 @@
12778
12904
  unit: VueTypes.oneOf(['mi', 'miles', 'yd', 'yards', 'ft', 'feet', 'in', 'inch', 'km', 'kilometers', 'm', 'meters', 'cm', 'centimeters', 'mm', 'millimeters', 'NM', 'nmi', 'nauticalmiles']),
12779
12905
  value: VueTypes.string.def(undefined),
12780
12906
  analyticsConfig: VueTypes.shape({
12781
- searchStateHeader: VueTypes.bool,
12782
12907
  emptyQuery: VueTypes.bool,
12783
12908
  suggestionAnalytics: VueTypes.bool,
12784
12909
  userId: VueTypes.string,
12785
12910
  customEvents: VueTypes.object
12786
12911
  }),
12787
12912
  appbaseConfig: VueTypes.shape({
12788
- enableQueryRules: VueTypes.bool,
12789
12913
  recordAnalytics: VueTypes.bool,
12790
- searchStateHeader: VueTypes.bool,
12791
12914
  emptyQuery: VueTypes.bool,
12792
12915
  suggestionAnalytics: VueTypes.bool,
12916
+ enableQueryRules: VueTypes.bool,
12917
+ enableSearchRelevancy: VueTypes.bool,
12793
12918
  userId: VueTypes.string,
12919
+ useCache: VueTypes.bool,
12794
12920
  customEvents: VueTypes.object,
12795
12921
  enableTelemetry: VueTypes.bool.def(true)
12796
12922
  }).def({}),
@@ -13948,9 +14074,14 @@
13948
14074
  }
13949
14075
 
13950
14076
  this.internalComponent = this.$props.componentId + "__internal";
13951
- this.sortOptionIndex = this.defaultSortOption ? this.sortOptions.findIndex(function (s) {
13952
- return s.label === _this.defaultSortOption;
13953
- }) : 0;
14077
+ this.sortOptionIndex = 0;
14078
+
14079
+ if (this.defaultSortOption && this.sortOptions && Array.isArray(this.sortOptions)) {
14080
+ this.sortOptionIndex = this.sortOptions.findIndex(function (s) {
14081
+ return s.label === _this.defaultSortOption;
14082
+ });
14083
+ }
14084
+
13954
14085
  this.updateComponentProps(this.componentId, {
13955
14086
  from: this.from
13956
14087
  }, constants_1$1.reactiveList);
@@ -13960,7 +14091,7 @@
13960
14091
  },
13961
14092
  props: {
13962
14093
  currentPage: VueTypes.number.def(0),
13963
- includeFields: types.includeFields.def(['*']),
14094
+ includeFields: types.includeFields,
13964
14095
  // component props
13965
14096
  className: types.string,
13966
14097
  componentId: types.stringRequired,
@@ -13969,7 +14100,7 @@
13969
14100
  aggregationSize: VueTypes.number,
13970
14101
  defaultQuery: types.func,
13971
14102
  defaultSortOption: types.string,
13972
- excludeFields: types.excludeFields.def([]),
14103
+ excludeFields: types.excludeFields,
13973
14104
  innerClass: types.style,
13974
14105
  listClass: VueTypes.string.def(''),
13975
14106
  loader: types.title,
@@ -13981,7 +14112,7 @@
13981
14112
  pages: VueTypes.number.def(5),
13982
14113
  pagination: VueTypes.bool.def(false),
13983
14114
  infiniteScroll: VueTypes.bool.def(true),
13984
- paginationAt: types.paginationAt.def('bottom'),
14115
+ paginationAt: VueTypes.oneOf(['top', 'bottom', 'both']).def('bottom'),
13985
14116
  react: types.react,
13986
14117
  scrollOnChange: VueTypes.bool.def(true),
13987
14118
  showResultStats: VueTypes.bool.def(true),
@@ -14041,7 +14172,7 @@
14041
14172
  filteredResults = [].concat(parsedPromotedResults, filteredResults);
14042
14173
  }
14043
14174
 
14044
- return helper_2(filteredResults);
14175
+ return helper_3(filteredResults);
14045
14176
  }
14046
14177
  },
14047
14178
  watch: {
@@ -14182,11 +14313,11 @@
14182
14313
  var options = getQueryOptions(this.$props);
14183
14314
  options.from = this.$data.from;
14184
14315
 
14185
- if (this.$props.sortOptions) {
14316
+ if (this.sortOptions && this.sortOptions[this.sortOptionIndex]) {
14186
14317
  var _ref2;
14187
14318
 
14188
- var sortField = this.$props.sortOptions[this.sortOptionIndex].dataField;
14189
- var sortBy = this.$props.sortOptions[this.sortOptionIndex].sortBy;
14319
+ var sortField = this.sortOptions[this.sortOptionIndex].dataField;
14320
+ var sortBy = this.sortOptions[this.sortOptionIndex].sortBy;
14190
14321
  options.sort = [(_ref2 = {}, _ref2[sortField] = {
14191
14322
  order: sortBy
14192
14323
  }, _ref2)]; // To handle sort options for RS API
@@ -14256,10 +14387,10 @@
14256
14387
  "class": this.$props.className
14257
14388
  }, [this.isLoading && this.shouldRenderPagination && this.showInfiniteScroll && (this.$scopedSlots.loader || this.$props.loader), this.renderErrorComponent(), h(Flex, {
14258
14389
  "attrs": {
14259
- "labelPosition": this.$props.sortOptions ? 'right' : 'left'
14390
+ "labelPosition": this.sortOptions ? 'right' : 'left'
14260
14391
  },
14261
14392
  "class": getClassName$1(this.$props.innerClass, 'resultsInfo')
14262
- }, [this.$props.sortOptions ? this.renderSortOptions() : null, this.$props.showResultStats && results.length ? this.renderStats() : null]), !this.isLoading && results.length === 0 ? this.renderNoResult() : null, this.shouldRenderPagination && (this.$props.paginationAt === 'top' || this.$props.paginationAt === 'both') ? h(Pagination, {
14393
+ }, [this.sortOptions ? this.renderSortOptions() : null, this.$props.showResultStats && results.length ? this.renderStats() : null]), !this.isLoading && results.length === 0 ? this.renderNoResult() : null, this.shouldRenderPagination && (this.$props.paginationAt === 'top' || this.$props.paginationAt === 'both') ? h(Pagination, {
14263
14394
  "attrs": {
14264
14395
  "pages": this.$props.pages,
14265
14396
  "totalPages": this.totalPages,
@@ -14330,15 +14461,18 @@
14330
14461
  var options = getQueryOptions(props);
14331
14462
  options.from = this.$data.from;
14332
14463
 
14333
- if (props.sortOptions) {
14334
- var _ref5;
14335
-
14464
+ if (props.sortOptions && Array.isArray(props.sortOptions)) {
14336
14465
  var sortOptionIndex = props.defaultSortOption ? props.sortOptions.findIndex(function (s) {
14337
14466
  return s.label === props.defaultSortOption;
14338
14467
  }) : 0;
14339
- options.sort = [(_ref5 = {}, _ref5[props.sortOptions[sortOptionIndex].dataField] = {
14340
- order: props.sortOptions[sortOptionIndex].sortBy
14341
- }, _ref5)];
14468
+
14469
+ if (props.sortOptions[sortOptionIndex]) {
14470
+ var _ref5;
14471
+
14472
+ options.sort = [(_ref5 = {}, _ref5[props.sortOptions[sortOptionIndex].dataField] = {
14473
+ order: props.sortOptions[sortOptionIndex].sortBy
14474
+ }, _ref5)];
14475
+ }
14342
14476
  } else if (props.sortBy) {
14343
14477
  var _ref6;
14344
14478
 
@@ -14434,31 +14568,39 @@
14434
14568
  renderNoResult: function renderNoResult() {
14435
14569
  var h = this.$createElement;
14436
14570
  var renderNoResults = this.$scopedSlots.renderNoResults || this.$props.renderNoResults;
14571
+
14572
+ if (this.$scopedSlots.renderNoResults) {
14573
+ return isFunction$1(renderNoResults) ? renderNoResults() : renderNoResults;
14574
+ }
14575
+
14437
14576
  return h("p", {
14438
14577
  "class": getClassName$1(this.$props.innerClass, 'noResults') || null
14439
14578
  }, [isFunction$1(renderNoResults) ? renderNoResults() : renderNoResults]);
14440
14579
  },
14441
14580
  handleSortChange: function handleSortChange(e) {
14442
- var _ref7;
14581
+ var index = e.target.value;
14443
14582
 
14444
- var index = e.target.value; // This fixes issue #371 (where sorting a multi-result page with infinite loader breaks)
14583
+ if (this.sortOptions && this.sortOptions[index]) {
14584
+ var _ref7;
14445
14585
 
14446
- var options = getQueryOptions(this.$props);
14447
- options.from = 0;
14448
- var sortField = this.$props.sortOptions[index].dataField;
14449
- var sortBy = this.$props.sortOptions[index].sortBy;
14450
- options.sort = [(_ref7 = {}, _ref7[sortField] = {
14451
- order: sortBy
14452
- }, _ref7)];
14453
- this.sortOptionIndex = index; // To handle sort options for RS API
14454
-
14455
- this.updateComponentProps(this.componentId, {
14456
- dataField: sortField,
14457
- sortBy: sortBy
14458
- }, constants_1$1.reactiveList);
14459
- this.setQueryOptions(this.$props.componentId, options, true);
14460
- this.currentPageState = 0;
14461
- this.from = 0;
14586
+ // This fixes issue #371 (where sorting a multi-result page with infinite loader breaks)
14587
+ var options = getQueryOptions(this.$props);
14588
+ options.from = 0;
14589
+ var sortField = this.sortOptions[index].dataField;
14590
+ var sortBy = this.sortOptions[index].sortBy;
14591
+ options.sort = [(_ref7 = {}, _ref7[sortField] = {
14592
+ order: sortBy
14593
+ }, _ref7)];
14594
+ this.sortOptionIndex = index; // To handle sort options for RS API
14595
+
14596
+ this.updateComponentProps(this.componentId, {
14597
+ dataField: sortField,
14598
+ sortBy: sortBy
14599
+ }, constants_1$1.reactiveList);
14600
+ this.setQueryOptions(this.$props.componentId, options, true);
14601
+ this.currentPageState = 0;
14602
+ this.from = 0;
14603
+ }
14462
14604
  },
14463
14605
  triggerClickAnalytics: function triggerClickAnalytics(searchPosition, documentId) {
14464
14606
  var docId = documentId;
@@ -14492,7 +14634,7 @@
14492
14634
  "domProps": {
14493
14635
  "value": this.sortOptionIndex
14494
14636
  }
14495
- }, [this.$props.sortOptions.map(function (sort, index) {
14637
+ }, [this.sortOptions.map(function (sort, index) {
14496
14638
  return h("option", {
14497
14639
  "key": sort.label,
14498
14640
  "domProps": {
@@ -14598,11 +14740,7 @@
14598
14740
  }; // Only used for SSR
14599
14741
 
14600
14742
  ReactiveList.generateQueryOptions = function (props) {
14601
- // simulate default (includeFields and excludeFields) props to generate consistent query
14602
- var options = getQueryOptions(_extends({
14603
- includeFields: ['*'],
14604
- excludeFields: []
14605
- }, props));
14743
+ var options = getQueryOptions(props);
14606
14744
  var size = props.size,
14607
14745
  dataField = props.dataField,
14608
14746
  defaultSortOption = props.defaultSortOption,
@@ -16683,7 +16821,7 @@
16683
16821
  headers: types.headers,
16684
16822
  getSearchParams: types.func,
16685
16823
  setSearchParams: types.func,
16686
- as: types.string.def('div')
16824
+ as: VueTypes.string.def('div')
16687
16825
  },
16688
16826
  mounted: function mounted() {
16689
16827
  var _this = this;
@@ -16831,7 +16969,9 @@
16831
16969
  return value.map(function (item) {
16832
16970
  return _this3.getValue(item);
16833
16971
  });
16834
- } else if (value && typeof value === 'object') {
16972
+ }
16973
+
16974
+ if (value && typeof value === 'object') {
16835
16975
  // TODO: support for NestedList
16836
16976
  if (value.location) return value;
16837
16977
  if (value.category) return value;
@@ -17005,14 +17145,14 @@
17005
17145
  this.updateState(this.$props);
17006
17146
  },
17007
17147
  analyticsConfig: function analyticsConfig(newVal, oldVal) {
17008
- if (!helper_17(newVal, oldVal)) {
17148
+ if (!helper_18(newVal, oldVal)) {
17009
17149
  if (this.store) {
17010
17150
  this.store.dispatch(analytics_3$1(newVal));
17011
17151
  }
17012
17152
  }
17013
17153
  },
17014
17154
  appbaseConfig: function appbaseConfig(newVal, oldVal) {
17015
- if (!helper_17(newVal, oldVal)) {
17155
+ if (!helper_18(newVal, oldVal)) {
17016
17156
  if (this.store) {
17017
17157
  this.store.dispatch(analytics_3$1(newVal));
17018
17158
  }
@@ -17945,8 +18085,7 @@
17945
18085
  internal_isOpen: false,
17946
18086
  internal_inputValue: '',
17947
18087
  internal_selectedItem: null,
17948
- internal_highlightedIndex: null,
17949
- internal_eventsCalled: {}
18088
+ internal_highlightedIndex: null
17950
18089
  };
17951
18090
  },
17952
18091
  computed: {
@@ -18131,23 +18270,11 @@
18131
18270
  }
18132
18271
 
18133
18272
  var vm = this;
18134
- setTimeout(function () {
18135
- vm.internal_eventsCalled[index] = false;
18136
- }, 0);
18137
18273
  return {
18138
18274
  mouseenter: function mouseenter() {
18139
18275
  vm.setHighlightedIndex(newIndex);
18140
18276
  },
18141
- // for browsers not supporting click event (e.g. firefox android)
18142
- mousedown: function mousedown(event) {
18143
- if (vm.internal_eventsCalled[index]) return;
18144
- vm.internal_eventsCalled[index] = true;
18145
- event.stopPropagation();
18146
- vm.selectItemAtIndex(newIndex);
18147
- },
18148
18277
  click: function click(event) {
18149
- if (vm.internal_eventsCalled[index]) return;
18150
- vm.internal_eventsCalled[index] = true;
18151
18278
  event.stopPropagation();
18152
18279
  vm.selectItemAtIndex(newIndex);
18153
18280
  }
@@ -18442,24 +18569,22 @@
18442
18569
 
18443
18570
  return __webpack_require__(0);
18444
18571
  /******/
18445
- }([
18446
- /* 0 */
18447
-
18448
- /***/
18449
-
18450
- /* 1 */
18451
-
18452
- /***/
18453
-
18454
- /* 2 */
18572
+ }
18573
+ /************************************************************************/
18455
18574
 
18456
- /***/
18575
+ /******/
18576
+ ([
18577
+ /* 0 */
18457
18578
 
18458
- /******/
18579
+ /***/
18459
18580
  function (module, exports, __webpack_require__) {
18460
18581
  module.exports = __webpack_require__(1);
18461
18582
  /***/
18462
- }, function (module, exports, __webpack_require__) {
18583
+ },
18584
+ /* 1 */
18585
+
18586
+ /***/
18587
+ function (module, exports, __webpack_require__) {
18463
18588
 
18464
18589
  Object.defineProperty(exports, "__esModule", {
18465
18590
  value: true
@@ -18492,7 +18617,11 @@
18492
18617
  }
18493
18618
  });
18494
18619
  /***/
18495
- }, function (module, exports) {
18620
+ },
18621
+ /* 2 */
18622
+
18623
+ /***/
18624
+ function (module, exports) {
18496
18625
 
18497
18626
  Object.defineProperty(exports, "__esModule", {
18498
18627
  value: true
@@ -18661,7 +18790,9 @@
18661
18790
  }
18662
18791
  /***/
18663
18792
 
18664
- }]);
18793
+ }
18794
+ /******/
18795
+ ]);
18665
18796
  });
18666
18797
  unwrapExports(dist);
18667
18798
  var dist_1 = dist.findAll;
@@ -19391,8 +19522,8 @@
19391
19522
  name: 'Mic',
19392
19523
  props: {
19393
19524
  children: types.title,
19394
- lang: types.string.def('en-US'),
19395
- iconPosition: types.string.def('left'),
19525
+ lang: VueTypes.string.def('en-US'),
19526
+ iconPosition: VueTypes.string.def('left'),
19396
19527
  handleResult: types.func,
19397
19528
  onNoMatch: types.func,
19398
19529
  onError: types.func,
@@ -19804,10 +19935,10 @@
19804
19935
  })]),
19805
19936
  aggregationField: types.string,
19806
19937
  aggregationSize: VueTypes.number,
19807
- size: VueTypes.number.def(10),
19938
+ size: VueTypes.number,
19808
19939
  debounce: VueTypes.number.def(0),
19809
19940
  defaultValue: types.string,
19810
- excludeFields: types.excludeFields.def([]),
19941
+ excludeFields: types.excludeFields,
19811
19942
  value: types.value,
19812
19943
  defaultSuggestions: types.suggestions,
19813
19944
  enableSynonyms: VueTypes.bool.def(true),
@@ -19821,9 +19952,9 @@
19821
19952
  highlightField: types.stringOrArray,
19822
19953
  icon: types.children,
19823
19954
  iconPosition: VueTypes.oneOf(['left', 'right']).def('left'),
19824
- includeFields: types.includeFields.def(['*']),
19955
+ includeFields: types.includeFields,
19825
19956
  innerClass: types.style,
19826
- innerRef: types.string.def('searchInputField'),
19957
+ innerRef: VueTypes.string.def('searchInputField'),
19827
19958
  render: types.func,
19828
19959
  renderQuerySuggestions: types.func,
19829
19960
  renderPopularSuggestions: types.func,
@@ -19855,7 +19986,7 @@
19855
19986
  focusShortcuts: VueTypes.arrayOf(VueTypes.oneOfType([VueTypes.string, VueTypes.number])).def(['/']),
19856
19987
  addonBefore: VueTypes.any,
19857
19988
  addonAfter: VueTypes.any,
19858
- expandSuggestionsContainer: types.bool.def(true),
19989
+ expandSuggestionsContainer: VueTypes.bool.def(true),
19859
19990
  index: VueTypes.string
19860
19991
  },
19861
19992
  beforeMount: function beforeMount() {
@@ -20024,7 +20155,7 @@
20024
20155
  // returns size and aggs property
20025
20156
  getBasicQueryOptions: function getBasicQueryOptions() {
20026
20157
  var aggregationField = this.$props.aggregationField;
20027
- var queryOptions = helper_19(this.$props);
20158
+ var queryOptions = helper_20(this.$props);
20028
20159
 
20029
20160
  if (aggregationField) {
20030
20161
  queryOptions.aggs = getCompositeAggsQuery$1({
@@ -20130,7 +20261,7 @@
20130
20261
  updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
20131
20262
  }
20132
20263
 
20133
- this.setQueryOptions(this.internalComponent, _extends({}, this.queryOptions, defaultQueryOptions));
20264
+ this.setQueryOptions(this.internalComponent, _extends({}, this.queryOptions, defaultQueryOptions), false);
20134
20265
  this.updateQuery({
20135
20266
  componentId: this.internalComponent,
20136
20267
  query: query,
@@ -20157,7 +20288,7 @@
20157
20288
 
20158
20289
  customQueryOptions = getOptionsFromQuery$1(customQueryTobeSet);
20159
20290
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
20160
- this.setQueryOptions(componentId, _extends({}, this.queryOptions, customQueryOptions));
20291
+ this.setQueryOptions(componentId, _extends({}, this.queryOptions, customQueryOptions), false);
20161
20292
  }
20162
20293
 
20163
20294
  if (!this.isPending) {
@@ -20516,7 +20647,7 @@
20516
20647
  highlightedIndex: highlightedIndex
20517
20648
  }), _this3.renderErrorComponent(), !_this3.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
20518
20649
  "class": suggestions$1(_this3.themePreset, theme) + " " + getClassName$3(_this3.$props.innerClass, 'list')
20519
- }, [_this3.suggestionsList.slice(0, size).map(function (item, index) {
20650
+ }, [_this3.suggestionsList.slice(0, size || 10).map(function (item, index) {
20520
20651
  return h("li", {
20521
20652
  "domProps": _extends({}, getItemProps({
20522
20653
  item: item
@@ -20995,7 +21126,7 @@
20995
21126
  name: 'SingleList',
20996
21127
  props: {
20997
21128
  beforeValueChange: types.func,
20998
- className: types.string.def(''),
21129
+ className: VueTypes.string.def(''),
20999
21130
  componentId: types.stringRequired,
21000
21131
  customQuery: types.func,
21001
21132
  dataField: types.stringRequired,
@@ -21015,7 +21146,7 @@
21015
21146
  showFilter: VueTypes.bool.def(true),
21016
21147
  showRadio: VueTypes.bool.def(true),
21017
21148
  showSearch: VueTypes.bool.def(true),
21018
- size: VueTypes.number.def(100),
21149
+ size: VueTypes.number,
21019
21150
  sortBy: VueTypes.oneOf(['asc', 'desc', 'count']).def('count'),
21020
21151
  title: types.title,
21021
21152
  URLParams: VueTypes.bool.def(false),
@@ -21129,7 +21260,7 @@
21129
21260
  var filteredItemsToRender = itemsToRender.filter(function (item) {
21130
21261
  if (String(item.key).length) {
21131
21262
  if (_this.$props.showSearch && _this.$data.searchTerm) {
21132
- return String(item.key).toLowerCase().includes(_this.$data.searchTerm.toLowerCase());
21263
+ return suggestions_1(String(item.key)).toLowerCase().includes(suggestions_1(_this.$data.searchTerm.toLowerCase()));
21133
21264
  }
21134
21265
 
21135
21266
  return true;
@@ -21242,7 +21373,7 @@
21242
21373
  updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
21243
21374
  }
21244
21375
 
21245
- this.setQueryOptions(this.internalComponent, defaultQueryOptions);
21376
+ this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
21246
21377
  this.updateQuery({
21247
21378
  componentId: this.internalComponent,
21248
21379
  query: query,
@@ -21263,7 +21394,7 @@
21263
21394
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
21264
21395
  }
21265
21396
 
21266
- this.setQueryOptions(props.componentId, customQueryOptions);
21397
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
21267
21398
  this.updateQuery({
21268
21399
  componentId: props.componentId,
21269
21400
  query: query,
@@ -21476,7 +21607,7 @@
21476
21607
  queryFormat: VueTypes.oneOf(['and', 'or']).def('or'),
21477
21608
  showCheckbox: VueTypes.bool.def(true),
21478
21609
  beforeValueChange: types.func,
21479
- className: types.string.def(''),
21610
+ className: VueTypes.string.def(''),
21480
21611
  componentId: types.stringRequired,
21481
21612
  customQuery: types.func,
21482
21613
  dataField: types.stringRequired,
@@ -21623,7 +21754,7 @@
21623
21754
  var filteredItemsToRender = itemsToRender.filter(function (item) {
21624
21755
  if (String(item.key).length) {
21625
21756
  if (_this2.$props.showSearch && _this2.$data.searchTerm) {
21626
- return String(item.key).toLowerCase().includes(_this2.$data.searchTerm.toLowerCase());
21757
+ return suggestions_1(String(item.key)).toLowerCase().includes(suggestions_1(_this2.$data.searchTerm).toLowerCase());
21627
21758
  }
21628
21759
 
21629
21760
  return true;
@@ -21791,7 +21922,7 @@
21791
21922
  updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
21792
21923
  }
21793
21924
 
21794
- this.setQueryOptions(this.internalComponent, defaultQueryOptions);
21925
+ this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
21795
21926
  this.updateQuery({
21796
21927
  componentId: this.internalComponent,
21797
21928
  query: query,
@@ -21812,7 +21943,7 @@
21812
21943
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
21813
21944
  }
21814
21945
 
21815
- this.setQueryOptions(props.componentId, customQueryOptions);
21946
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
21816
21947
  this.updateQuery({
21817
21948
  componentId: props.componentId,
21818
21949
  query: query,
@@ -22097,7 +22228,9 @@
22097
22228
  single: VueTypes.bool,
22098
22229
  small: VueTypes.bool.def(false),
22099
22230
  themePreset: types.themePreset,
22100
- showSearch: VueTypes.bool
22231
+ showSearch: VueTypes.bool,
22232
+ showClear: VueTypes.bool,
22233
+ searchPlaceholder: VueTypes.string.def('Type here to search...')
22101
22234
  },
22102
22235
  render: function render() {
22103
22236
  var _this = this;
@@ -22125,7 +22258,7 @@
22125
22258
  var filteredItemsToRender = itemsToRender.filter(function (item) {
22126
22259
  if (String(item[labelField]).length) {
22127
22260
  if (_this.$props.showSearch && _this.$data.searchTerm) {
22128
- return String(item[labelField]).toLowerCase().includes(_this.$data.searchTerm.toLowerCase());
22261
+ return suggestions_1(String(item[labelField])).toLowerCase().includes(suggestions_1(_this.$data.searchTerm.toLowerCase()));
22129
22262
  }
22130
22263
 
22131
22264
  return true;
@@ -22171,25 +22304,10 @@
22171
22304
  getItemEvents: getItemEvents
22172
22305
  }) : isOpen && itemsToRender.length ? h("ul", {
22173
22306
  "class": suggestions$1(themePreset, _this.theme) + " " + (_this.$props.small ? 'small' : '') + " " + getClassName$6(_this.$props.innerClass, 'list')
22174
- }, [_this.$props.showSearch ? h(Input, {
22175
- "attrs": {
22176
- "id": _this.$props.componentId + "-input",
22177
- "showIcon": false,
22178
- "placeholder": "Type here to search...",
22179
- "value": _this.$data.searchTerm,
22180
- "themePreset": themePreset
22181
- },
22182
- "style": {
22183
- border: 0,
22184
- borderBottom: '1px solid #ddd'
22185
- },
22186
- "class": getClassName$6(_this.$props.innerClass, 'input'),
22187
- "on": {
22188
- "change": _this.handleInputChange
22189
- }
22190
- }) : null, !hasCustomRenderer && filteredItemsToRender.length === 0 ? _this.renderNoResult() : filteredItemsToRender.map(function (item, index) {
22307
+ }, [_this.$props.showSearch ? _this.renderSearchbox() : null, !hasCustomRenderer && filteredItemsToRender.length === 0 ? _this.renderNoResult() : filteredItemsToRender.map(function (item, index) {
22191
22308
  var selected = _this.$props.multi // MultiDropdownList
22192
- && (selectedItem && !!selectedItem[item[keyField]] || Array.isArray(selectedItem) && selectedItem.find(function (value) {
22309
+ && (selectedItem && !!selectedItem[item[keyField]] // MultiDropdownRange
22310
+ || Array.isArray(selectedItem) && selectedItem.find(function (value) {
22193
22311
  return value[labelField] === item[labelField];
22194
22312
  }));
22195
22313
  if (!_this.$props.multi) selected = item.key === selectedItem;
@@ -22239,6 +22357,7 @@
22239
22357
 
22240
22358
  if (!this.$props.multi) {
22241
22359
  this.isOpen = false;
22360
+ this.searchTerm = '';
22242
22361
  }
22243
22362
  },
22244
22363
  handleStateChange: function handleStateChange(_ref2) {
@@ -22262,6 +22381,9 @@
22262
22381
  var value = e.target.value;
22263
22382
  this.searchTerm = value;
22264
22383
  },
22384
+ clearSearchTerm: function clearSearchTerm() {
22385
+ this.searchTerm = '';
22386
+ },
22265
22387
  renderToString: function renderToString(value) {
22266
22388
  var _this2 = this;
22267
22389
 
@@ -22302,6 +22424,51 @@
22302
22424
  return h("p", {
22303
22425
  "class": getClassName$6(this.$props.innerClass, 'noResults') || null
22304
22426
  }, [isFunction$1(renderNoResults) ? renderNoResults() : renderNoResults]);
22427
+ },
22428
+ renderSearchbox: function renderSearchbox() {
22429
+ var h = this.$createElement;
22430
+ var _this$$props2 = this.$props,
22431
+ componentId = _this$$props2.componentId,
22432
+ searchPlaceholder = _this$$props2.searchPlaceholder,
22433
+ showClear = _this$$props2.showClear,
22434
+ themePreset = _this$$props2.themePreset,
22435
+ innerClass = _this$$props2.innerClass;
22436
+ var InputComponent = h(Input, {
22437
+ "attrs": {
22438
+ "id": componentId + "-input",
22439
+ "showIcon": false,
22440
+ "showClear": showClear,
22441
+ "placeholder": searchPlaceholder,
22442
+ "value": this.$data.searchTerm,
22443
+ "themePreset": themePreset
22444
+ },
22445
+ "style": {
22446
+ border: 0,
22447
+ borderBottom: '1px solid #ddd'
22448
+ },
22449
+ "class": getClassName$6(innerClass, 'input'),
22450
+ "on": {
22451
+ "change": this.handleInputChange
22452
+ }
22453
+ });
22454
+
22455
+ if (showClear) {
22456
+ return h(InputWrapper, [InputComponent, this.searchTerm && h(IconGroup, {
22457
+ "attrs": {
22458
+ "groupPosition": "right",
22459
+ "positionType": "absolute"
22460
+ }
22461
+ }, [h(IconWrapper, {
22462
+ "on": {
22463
+ "click": this.clearSearchTerm
22464
+ },
22465
+ "attrs": {
22466
+ "isClearIcon": true
22467
+ }
22468
+ }, [h(CancelSvg)])])]);
22469
+ }
22470
+
22471
+ return InputComponent;
22305
22472
  }
22306
22473
  }
22307
22474
  };
@@ -22360,10 +22527,12 @@
22360
22527
  showMissing: VueTypes.bool.def(false),
22361
22528
  missingLabel: VueTypes.string.def('N/A'),
22362
22529
  showSearch: VueTypes.bool.def(false),
22530
+ showClear: VueTypes.bool.def(false),
22363
22531
  showLoadMore: VueTypes.bool.def(false),
22364
22532
  loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.any]).def('Load More'),
22365
22533
  nestedField: types.string,
22366
- index: VueTypes.string
22534
+ index: VueTypes.string,
22535
+ searchPlaceholder: VueTypes.string.def('Type here to search...')
22367
22536
  },
22368
22537
  created: function created() {
22369
22538
  if (!this.enableAppbase && this.$props.index) {
@@ -22477,7 +22646,9 @@
22477
22646
  if (!this.hasCustomRenderer && this.$data.modifiedOptions.length === 0 && !this.isLoading) {
22478
22647
  if (renderNoResults && isFunction$1(renderNoResults)) {
22479
22648
  return h("div", [renderNoResults()]);
22480
- } else if (renderNoResults && !isFunction$1(renderNoResults)) {
22649
+ }
22650
+
22651
+ if (renderNoResults && !isFunction$1(renderNoResults)) {
22481
22652
  return renderNoResults;
22482
22653
  }
22483
22654
 
@@ -22515,6 +22686,8 @@
22515
22686
  "renderNoResults": this.$scopedSlots.renderNoResults || this.$props.renderNoResults,
22516
22687
  "themePreset": this.themePreset,
22517
22688
  "showSearch": this.$props.showSearch,
22689
+ "showClear": this.$props.showClear,
22690
+ "searchPlaceholder": this.$props.searchPlaceholder,
22518
22691
  "transformData": this.$props.transformData,
22519
22692
  "footer": showLoadMore && !isLastBucket && h("div", {
22520
22693
  "attrs": {
@@ -22574,7 +22747,7 @@
22574
22747
  updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
22575
22748
  }
22576
22749
 
22577
- this.setQueryOptions(this.internalComponent, defaultQueryOptions);
22750
+ this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
22578
22751
  this.updateQuery({
22579
22752
  componentId: this.internalComponent,
22580
22753
  query: query,
@@ -22595,7 +22768,7 @@
22595
22768
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
22596
22769
  }
22597
22770
 
22598
- this.setQueryOptions(props.componentId, customQueryOptions);
22771
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
22599
22772
  this.updateQuery({
22600
22773
  componentId: props.componentId,
22601
22774
  query: query,
@@ -22807,10 +22980,12 @@
22807
22980
  showMissing: VueTypes.bool.def(false),
22808
22981
  missingLabel: VueTypes.string.def('N/A'),
22809
22982
  showSearch: VueTypes.bool.def(false),
22983
+ showClear: VueTypes.bool.def(false),
22810
22984
  showLoadMore: VueTypes.bool.def(false),
22811
22985
  loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.any]).def('Load More'),
22812
22986
  nestedField: types.string,
22813
- index: VueTypes.string
22987
+ index: VueTypes.string,
22988
+ searchPlaceholder: VueTypes.string.def('Type here to search...')
22814
22989
  },
22815
22990
  created: function created() {
22816
22991
  if (!this.enableAppbase && this.$props.index) {
@@ -22938,7 +23113,9 @@
22938
23113
  if (!this.hasCustomRenderer && this.$data.modifiedOptions.length === 0 && !this.isLoading) {
22939
23114
  if (renderNoResults && isFunction$1(renderNoResults)) {
22940
23115
  return h("div", [renderNoResults()]);
22941
- } else if (renderNoResults && !isFunction$1(renderNoResults)) {
23116
+ }
23117
+
23118
+ if (renderNoResults && !isFunction$1(renderNoResults)) {
22942
23119
  return renderNoResults;
22943
23120
  }
22944
23121
 
@@ -22977,6 +23154,8 @@
22977
23154
  "renderItem": renderItemCalc,
22978
23155
  "renderNoResults": this.$scopedSlots.renderNoResults || this.$props.renderNoResults,
22979
23156
  "showSearch": this.$props.showSearch,
23157
+ "showClear": this.$props.showClear,
23158
+ "searchPlaceholder": this.$props.searchPlaceholder,
22980
23159
  "transformData": this.$props.transformData,
22981
23160
  "footer": showLoadMore && !isLastBucket && h("div", {
22982
23161
  "attrs": {
@@ -23095,7 +23274,7 @@
23095
23274
  updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
23096
23275
  }
23097
23276
 
23098
- this.setQueryOptions(this.internalComponent, defaultQueryOptions);
23277
+ this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
23099
23278
  this.updateQuery({
23100
23279
  componentId: this.internalComponent,
23101
23280
  query: query,
@@ -23116,7 +23295,7 @@
23116
23295
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
23117
23296
  }
23118
23297
 
23119
- this.setQueryOptions(props.componentId, customQueryOptions);
23298
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
23120
23299
  this.updateQuery({
23121
23300
  componentId: props.componentId,
23122
23301
  query: query,
@@ -23323,7 +23502,7 @@
23323
23502
  componentId: types.stringRequired,
23324
23503
  data: types.data,
23325
23504
  dataField: types.stringRequired,
23326
- defaultValue: types.stringOrArray,
23505
+ defaultValue: types.any,
23327
23506
  value: types.stringOrArray,
23328
23507
  filterLabel: types.string,
23329
23508
  nestedField: types.string,
@@ -23481,7 +23660,7 @@
23481
23660
  var _ref = customQuery(value, props) || {};
23482
23661
 
23483
23662
  query = _ref.query;
23484
- this.setQueryOptions(props.componentId, getOptionsFromQuery$6(customQuery(value, props)));
23663
+ this.setQueryOptions(props.componentId, getOptionsFromQuery$6(customQuery(value, props)), false);
23485
23664
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
23486
23665
  }
23487
23666
 
@@ -23676,7 +23855,7 @@
23676
23855
  this.internalComponent = null;
23677
23856
  this.$defaultQuery = null; // Set custom query in store
23678
23857
 
23679
- updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, undefined);
23858
+ updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.selectedValue);
23680
23859
  var customQuery = props.customQuery,
23681
23860
  componentId = props.componentId,
23682
23861
  filterLabel = props.filterLabel,
@@ -23699,7 +23878,7 @@
23699
23878
  }
23700
23879
 
23701
23880
  if (customQuery) {
23702
- var calcCustomQuery = customQuery(props);
23881
+ var calcCustomQuery = customQuery(this.selectedValue, props);
23703
23882
 
23704
23883
  var _ref = calcCustomQuery || {},
23705
23884
  query = _ref.query;
@@ -23718,7 +23897,7 @@
23718
23897
 
23719
23898
  this.updateQuery({
23720
23899
  componentId: componentId,
23721
- queryToSet: queryToSet,
23900
+ query: queryToSet,
23722
23901
  value: this.selectedValue || null,
23723
23902
  label: filterLabel,
23724
23903
  showFilter: showFilter,
@@ -23769,8 +23948,8 @@
23769
23948
  },
23770
23949
  beforeMount: function beforeMount() {
23771
23950
  if (this.internalComponent && this.$props.defaultQuery) {
23772
- updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, undefined);
23773
- this.$defaultQuery = this.$props.defaultQuery();
23951
+ updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.selectedValue);
23952
+ this.$defaultQuery = this.$props.defaultQuery(this.selectedValue, this.$props);
23774
23953
 
23775
23954
  var _ref3 = this.$defaultQuery || {},
23776
23955
  query = _ref3.query,
@@ -23834,8 +24013,8 @@
23834
24013
  }
23835
24014
  },
23836
24015
  defaultQuery: function defaultQuery(newVal, oldVal) {
23837
- if (newVal && !isQueryIdentical(newVal, oldVal, undefined, this.$props)) {
23838
- this.$defaultQuery = newVal();
24016
+ if (newVal && !isQueryIdentical(newVal, oldVal, this.selectedValue, this.$props)) {
24017
+ this.$defaultQuery = newVal(this.selectedValue, this.$props);
23839
24018
 
23840
24019
  var _ref4 = this.$defaultQuery || {},
23841
24020
  query = _ref4.query,
@@ -23846,7 +24025,7 @@
23846
24025
  } else this.setQueryOptions(this.internalComponent, this.getAggsQuery(), false); // Update default query for RS API
23847
24026
 
23848
24027
 
23849
- updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, undefined);
24028
+ updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.selectedValue);
23850
24029
  var queryToSet = query || null;
23851
24030
 
23852
24031
  if (!queryToSet && this.$defaultQuery && this.$defaultQuery.id) {
@@ -23860,9 +24039,9 @@
23860
24039
  }
23861
24040
  },
23862
24041
  customQuery: function customQuery(newVal, oldVal) {
23863
- if (newVal && !isQueryIdentical(newVal, oldVal, undefined, this.$props)) {
24042
+ if (newVal && !isQueryIdentical(newVal, oldVal, this.selectedValue, this.$props)) {
23864
24043
  var componentId = this.$props.componentId;
23865
- this.$customQuery = newVal(this.$props);
24044
+ this.$customQuery = newVal(this.selectedValue, this.$props);
23866
24045
 
23867
24046
  var _ref5 = this.$customQuery || {},
23868
24047
  query = _ref5.query,
@@ -23873,7 +24052,7 @@
23873
24052
  } else this.setQueryOptions(componentId, this.getAggsQuery(), false); // Update custom query for RS API
23874
24053
 
23875
24054
 
23876
- updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, undefined);
24055
+ updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.selectedValue);
23877
24056
  var queryToSet = query || null;
23878
24057
 
23879
24058
  if (this.$customQuery && this.$customQuery.id) {
@@ -24010,7 +24189,8 @@
24010
24189
  innerClass: types.style,
24011
24190
  showClearAll: VueTypes.bool.def(true),
24012
24191
  title: types.title,
24013
- resetToDefault: VueTypes.bool.def(false)
24192
+ resetToDefault: VueTypes.bool.def(false),
24193
+ resetToValues: VueTypes.object
24014
24194
  },
24015
24195
  inject: {
24016
24196
  theme: {
@@ -24063,15 +24243,16 @@
24063
24243
  this.$emit('clear', component, value);
24064
24244
  },
24065
24245
  clearValues: function clearValues() {
24066
- var resetToDefault = this.resetToDefault;
24246
+ var resetToDefault = this.resetToDefault,
24247
+ resetToValues = this.resetToValues;
24067
24248
 
24068
24249
  if (resetToDefault) {
24069
24250
  this.resetValuesToDefault();
24070
24251
  } else {
24071
- this.clearValuesAction();
24252
+ this.clearValuesAction(resetToValues);
24072
24253
  }
24073
24254
 
24074
- this.$emit('clear', null);
24255
+ this.$emit('clear', resetToValues);
24075
24256
  },
24076
24257
  renderValue: function renderValue(value, isArray) {
24077
24258
  var _this2 = this;
@@ -24306,7 +24487,7 @@
24306
24487
  updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.currentValue);
24307
24488
  }
24308
24489
 
24309
- this.setQueryOptions(props.componentId, customQueryOptions);
24490
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
24310
24491
  this.updateQuery({
24311
24492
  componentId: props.componentId,
24312
24493
  query: query,
@@ -24515,7 +24696,7 @@
24515
24696
  updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.currentValue);
24516
24697
  }
24517
24698
 
24518
- this.setQueryOptions(props.componentId, customQueryOptions);
24699
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
24519
24700
  this.updateQuery({
24520
24701
  componentId: props.componentId,
24521
24702
  query: query,
@@ -24958,14 +25139,14 @@
24958
25139
  var vueNoSsr_common = index$2;
24959
25140
 
24960
25141
  var _templateObject$m;
24961
- var Slider = index$1('div')(_templateObject$m || (_templateObject$m = _taggedTemplateLiteralLoose(["\n\tmargin-top: 30px;\n\tpadding: 10px;\n\n\t/* component style */\n\t.vue-slider-disabled {\n\t\topacity: 0.5;\n\t\tcursor: not-allowed;\n\t}\n\n\t/* rail style */\n\t.vue-slider-rail {\n\t\tbackground-color: #ccc;\n\t\tborder-radius: 15px;\n\t\theight: 4px;\n\t}\n\n\t/* process style */\n\t.vue-slider-process {\n\t\tbackground-color: #0b6aff;\n\t\tborder-radius: 15px;\n\t}\n\n\t/* mark style */\n\t.vue-slider-mark {\n\t\tz-index: 4;\n\t}\n\n\t.vue-slider-mark:first-child .vue-slider-mark-step,\n\t.vue-slider-mark:last-child .vue-slider-mark-step {\n\t\tdisplay: none;\n\t}\n\n\t.vue-slider-mark-step {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tborder-radius: 50%;\n\t\tbackground-color: rgba(0, 0, 0, 0.16);\n\t}\n\n\t.vue-slider-mark-label {\n\t\tfont-size: 14px;\n\t\twhite-space: nowrap;\n\t}\n\n\t/* dot style */\n\t.vue-slider-dot{\n\t\tz-index: 2;\n\t}\n\n\t.vue-slider-dot-handle {\n\t\tcursor: pointer;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tborder-radius: 50%;\n\t\tbackground-color: #fff;\n\t\tbox-sizing: border-box;\n\t\tborder: 1px solid #9a9a9a;\n\t\tz-index: 2;\n\t}\n\n\t.vue-slider-dot-handle-disabled {\n\t\tcursor: not-allowed;\n\t\tbackground-color: #ccc;\n\t}\n\n\t.vue-slider-dot-tooltip-inner {\n\t\tfont-size: 14px;\n\t\twhite-space: nowrap;\n\t\tpadding: 2px 5px;\n\t\tmin-width: 20px;\n\t\ttext-align: center;\n\t\tcolor: #fff;\n\t\tborder-radius: 5px;\n\t\tborder-color: #000;\n\t\tbackground-color: #000;\n\t\tbox-sizing: content-box;\n\t}\n\n\t.vue-slider-dot-tooltip-inner::after {\n\t\tcontent: \"\";\n\t\tposition: absolute;\n\t}\n\n\t.vue-slider-dot -tooltip-inner-top::after {\n\t\ttop: 100%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, 0);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-top-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-bottom::after {\n\t\tbottom: 100%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, 0);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-bottom-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-left::after {\n\t\tleft: 100%;\n\t\ttop: 50%;\n\t\ttransform: translate(0, -50%);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-left-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-right::after {\n\t\tright: 100%;\n\t\ttop: 50%;\n\t\ttransform: translate(0, -50%);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-right-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-wrapper {\n\t\topacity: 0;\n\t\ttransition: all 0.3s;\n\t}\n\t.vue-slider-dot-tooltip-wrapper-show {\n\t\topacity: 1;\n\t}\n\n\t.label-container {\n\t\tmargin: 10px 0;\n\t\twidth: 100%;\n\t}\n\n\t.range-label-right {\n\t\tfloat: right;\n\t}\n"])));
25142
+ var Slider = index$1('div')(_templateObject$m || (_templateObject$m = _taggedTemplateLiteralLoose(["\n\tmargin-top: 30px;\n\tpadding: 10px;\n\n\t/* component style */\n\t.vue-slider-disabled {\n\t\topacity: 0.5;\n\t\tcursor: not-allowed;\n\t}\n\n\t/* rail style */\n\t.vue-slider-rail {\n\t\tbackground-color: #ccc;\n\t\tborder-radius: 15px;\n\t\theight: 4px;\n\t}\n\n\t/* process style */\n\t.vue-slider-process {\n\t\tbackground-color: #0b6aff;\n\t\tborder-radius: 15px;\n\t}\n\n\t/* mark style */\n\t.vue-slider-mark {\n\t\tz-index: 4;\n\t}\n\n\t.vue-slider-mark:first-child .vue-slider-mark-step,\n\t.vue-slider-mark:last-child .vue-slider-mark-step {\n\t\tdisplay: none;\n\t}\n\n\t.vue-slider-mark-step {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tborder-radius: 50%;\n\t\tbackground-color: rgba(0, 0, 0, 0.16);\n\t}\n\n\t.vue-slider-mark-label {\n\t\tfont-size: 14px;\n\t\twhite-space: nowrap;\n\t}\n\n\t/* dot style */\n\t.vue-slider-dot {\n\t\tz-index: 2;\n\t}\n\n\t.vue-slider-dot-handle {\n\t\tcursor: pointer;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tborder-radius: 50%;\n\t\tbackground-color: #fff;\n\t\tbox-sizing: border-box;\n\t\tborder: 1px solid #9a9a9a;\n\t\tz-index: 2;\n\t\tbox-shadow: 0.5px 0.5px 2px 1px rgb(0 0 0 / 32%);\n\t}\n\n\t.vue-slider-dot-handle-disabled {\n\t\tcursor: not-allowed;\n\t\tbackground-color: #ccc;\n\t}\n\n\t.vue-slider-dot-tooltip-inner {\n\t\tfont-size: 14px;\n\t\twhite-space: nowrap;\n\t\tpadding: 2px 5px;\n\t\tmin-width: 20px;\n\t\ttext-align: center;\n\t\tcolor: #fff;\n\t\tborder-radius: 5px;\n\t\tborder: 1px solid #3498db;\n\t\tbackground-color: #3498db;\n\t\tbox-sizing: content-box;\n\t}\n\n\t.vue-slider-dot-tooltip-inner::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-top::after {\n\t\ttop: 100%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, 0);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-top-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-bottom::after {\n\t\tbottom: 100%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, 0);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-bottom-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-left::after {\n\t\tleft: 100%;\n\t\ttop: 50%;\n\t\ttransform: translate(0, -50%);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-left-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-inner-right::after {\n\t\tright: 100%;\n\t\ttop: 50%;\n\t\ttransform: translate(0, -50%);\n\t\theight: 0;\n\t\twidth: 0;\n\t\tborder-color: transparent;\n\t\tborder-style: solid;\n\t\tborder-width: 5px;\n\t\tborder-right-color: inherit;\n\t}\n\n\t.vue-slider-dot-tooltip-wrapper {\n\t\topacity: 0;\n\t\ttransition: all 0.3s;\n\t}\n\t.vue-slider-dot-tooltip-wrapper-show {\n\t\topacity: 1;\n\t}\n\n\t.label-container {\n\t\tmargin: 10px 0;\n\t\twidth: 100%;\n\t}\n\n\t.range-label-right {\n\t\tfloat: right;\n\t}\n"])));
24962
25143
 
24963
25144
  /**
24964
25145
  * Caution: Please do not change this file without having a discussion with the Team.
24965
25146
  * Any change may break the umd build, we're directly replacing the line no: 14
24966
25147
  * `
24967
25148
  var s = document.createElement("script");
24968
- s.setAttribute("src","https://cdn.jsdelivr.net/npm/vue-slider-component@2.8.2/dist/index.js");
25149
+ s.setAttribute("src","https://cdn.jsdelivr.net/npm/vue-slider-component@3.2.15/dist/vue-slider-component.umd.min.js");
24969
25150
  s.onload = function(){
24970
25151
  var VueSlider = global['vue-slider-component'];
24971
25152
  components['vue-slider-component'] = VueSlider;
@@ -24986,7 +25167,7 @@
24986
25167
  // eslint-disable-next-line
24987
25168
 
24988
25169
  var s = document.createElement("script");
24989
- s.setAttribute("src","https://cdn.jsdelivr.net/npm/vue-slider-component@2.8.2/dist/index.js");
25170
+ s.setAttribute("src","https://cdn.jsdelivr.net/npm/vue-slider-component@3.2.15/dist/vue-slider-component.umd.min.js");
24990
25171
  s.onload = function(){
24991
25172
  var VueSlider = global$1['vue-slider-component'];
24992
25173
  components['vue-slider-component'] = VueSlider;
@@ -25061,32 +25242,28 @@
25061
25242
  });
25062
25243
  }
25063
25244
  },
25064
- handleSlider: function handleSlider(values) {
25065
- var _this = this;
25066
-
25067
- clearTimeout(this.handleSliderChange._tId);
25068
- this.handleSliderChange._tId = setTimeout(function () {
25069
- _this.handleSliderChange(values);
25070
- }, 100);
25245
+ handleSlider: function handleSlider() {
25246
+ var sliderValues = this.$refs.slider.getValue();
25247
+ this.handleSliderChange(sliderValues);
25071
25248
  },
25072
25249
  handleChange: function handleChange(currentValue, props) {
25073
- var _this2 = this;
25250
+ var _this = this;
25074
25251
 
25075
25252
  if (props === void 0) {
25076
25253
  props = this.$props;
25077
25254
  }
25078
25255
 
25079
25256
  var performUpdate = function performUpdate() {
25080
- _this2.currentValue = currentValue;
25257
+ _this.currentValue = currentValue;
25081
25258
 
25082
- _this2.updateQueryHandler([currentValue[0], currentValue[1]], props);
25259
+ _this.updateQueryHandler([currentValue[0], currentValue[1]], props);
25083
25260
 
25084
- _this2.$emit('valueChange', {
25261
+ _this.$emit('valueChange', {
25085
25262
  start: currentValue[0],
25086
25263
  end: currentValue[1]
25087
25264
  });
25088
25265
 
25089
- _this2.$emit('value-change', {
25266
+ _this.$emit('value-change', {
25090
25267
  start: currentValue[0],
25091
25268
  end: currentValue[1]
25092
25269
  });
@@ -25118,7 +25295,7 @@
25118
25295
  currentEnd = value[1]; // check if the slider is at its initial position
25119
25296
 
25120
25297
  var isInitialValue = currentStart === start && currentEnd === end;
25121
- this.setQueryOptions(props.componentId, customQueryOptions);
25298
+ this.setQueryOptions(props.componentId, customQueryOptions, false);
25122
25299
  this.updateQuery({
25123
25300
  componentId: props.componentId,
25124
25301
  query: query,
@@ -25197,12 +25374,13 @@
25197
25374
  "max": this.$props.range.end,
25198
25375
  "dotSize": 20,
25199
25376
  "height": 4,
25200
- "enable-cross": false
25377
+ "enable-cross": false,
25378
+ "tooltip": "always"
25201
25379
  },
25202
- "props": _extends({}, this.$props.sliderOptions),
25203
- "on": _extends({}, {
25204
- input: this.handleSlider
25205
- })
25380
+ "on": {
25381
+ "drag-end": this.handleSlider
25382
+ },
25383
+ "props": _extends({}, this.$props.sliderOptions)
25206
25384
  }), this.$props.rangeLabels && h("div", {
25207
25385
  "class": "label-container"
25208
25386
  }, [h("label", {
@@ -25445,8 +25623,9 @@
25445
25623
  aggs: aggs
25446
25624
  });
25447
25625
  },
25448
- handleSlider: function handleSlider(values) {
25449
- this.handleChange(values.currentValue);
25626
+ handleSlider: function handleSlider() {
25627
+ var sliderValues = this.$refs.slider.getValue();
25628
+ this.handleChange(sliderValues);
25450
25629
  },
25451
25630
  handleChange: function handleChange(currentValue) {
25452
25631
  var _this2 = this;
@@ -25498,7 +25677,7 @@
25498
25677
  currentEnd = value[1]; // check if the slider is at its initial position
25499
25678
 
25500
25679
  var isInitialValue = currentStart === start && currentEnd === end;
25501
- this.setQueryOptions(this.$props.componentId, customQueryOptions);
25680
+ this.setQueryOptions(this.$props.componentId, customQueryOptions, false);
25502
25681
  this.updateQuery({
25503
25682
  componentId: this.$props.componentId,
25504
25683
  query: query,
@@ -25579,13 +25758,15 @@
25579
25758
  }, [this.$props.title]), h(vueNoSsr_common, [h(Slider, {
25580
25759
  "class": getClassName$e(this.$props.innerClass, 'slider')
25581
25760
  }, [h("vue-slider-component", {
25761
+ "ref": "slider",
25582
25762
  "attrs": {
25583
25763
  "value": [Math.max(start, this.currentValue[0]), Math.min(end, this.currentValue[1])],
25584
25764
  "min": Math.min(start, this.currentValue[0]),
25585
25765
  "max": Math.max(end, this.currentValue[1]),
25586
25766
  "dotSize": 20,
25587
25767
  "height": 4,
25588
- "enable-cross": false
25768
+ "enable-cross": false,
25769
+ "tooltip": "always"
25589
25770
  },
25590
25771
  "on": {
25591
25772
  "drag-end": this.handleSlider
@@ -25687,6 +25868,10 @@
25687
25868
  var defaultKeys = ['hits', 'value', 'aggregations', 'error'];
25688
25869
 
25689
25870
  var filterProps = function filterProps(props) {
25871
+ if (props === void 0) {
25872
+ props = {};
25873
+ }
25874
+
25690
25875
  return _extends({}, props, {
25691
25876
  props: props.componentProps
25692
25877
  });
@@ -25706,7 +25891,7 @@
25706
25891
  return _ref = {}, _ref[componentIds] = state[componentIds], _ref;
25707
25892
  }
25708
25893
 
25709
- if (componentIds instanceof Array) {
25894
+ if (Array.isArray(componentIds)) {
25710
25895
  var filteredState = {};
25711
25896
  componentIds.forEach(function (componentId) {
25712
25897
  filteredState[componentId] = state[componentId];
@@ -25745,7 +25930,7 @@
25745
25930
  };
25746
25931
  return this.__state;
25747
25932
  },
25748
- mounted: function mounted() {
25933
+ created: function created() {
25749
25934
  this.searchState = filterByKeys(getSearchState(filterProps(this.searchStateProps)), this.includeKeys);
25750
25935
  },
25751
25936
  computed: {
@@ -25947,6 +26132,7 @@
25947
26132
  var orderOfQueries = [];
25948
26133
  var hits = {};
25949
26134
  var aggregations = {};
26135
+ var compositeAggregations = {};
25950
26136
  var state = {};
25951
26137
  var customQueries = {};
25952
26138
  var defaultQueries = {};
@@ -25961,16 +26147,7 @@
25961
26147
  compProps[key] = component[key];
25962
26148
  }
25963
26149
  });
25964
- var isInternalComponentPresent = false; // Set custom and default queries
25965
-
25966
- if (component.customQuery && typeof component.customQuery === 'function') {
25967
- customQueries[component.componentId] = component.customQuery(component.value, compProps);
25968
- }
25969
-
25970
- if (component.defaultQuery && typeof component.defaultQuery === 'function') {
25971
- defaultQueries[component.componentId] = component.defaultQuery(component.value, compProps);
25972
- }
25973
-
26150
+ var isInternalComponentPresent = false;
25974
26151
  var isResultComponent = resultComponents.includes(componentType);
25975
26152
  var internalComponent = component.componentId + "__internal";
25976
26153
  var label = component.filterLabel || component.componentId;
@@ -25994,7 +26171,16 @@
25994
26171
  reference: reference,
25995
26172
  showFilter: showFilter,
25996
26173
  URLParams: component.URLParams || false
25997
- }); // [2] set query options - main component query (valid for result components)
26174
+ }); // Set custom and default queries
26175
+
26176
+ if (component.customQuery && typeof component.customQuery === 'function') {
26177
+ customQueries[component.componentId] = component.customQuery(value, compProps);
26178
+ }
26179
+
26180
+ if (component.defaultQuery && typeof component.defaultQuery === 'function') {
26181
+ defaultQueries[component.componentId] = component.defaultQuery(value, compProps);
26182
+ } // [2] set query options - main component query (valid for result components)
26183
+
25998
26184
 
25999
26185
  if (componentsWithOptions.includes(componentType)) {
26000
26186
  var options = component.source.generateQueryOptions ? component.source.generateQueryOptions(component) : null;
@@ -26069,7 +26255,7 @@
26069
26255
  var react = component.react;
26070
26256
 
26071
26257
  if (isInternalComponentPresent || isResultComponent) {
26072
- react = helper_21(react, internalComponent);
26258
+ react = helper_22(react, internalComponent);
26073
26259
  }
26074
26260
 
26075
26261
  dependencyTree = dependencyTreeReducer(dependencyTree, {
@@ -26081,7 +26267,7 @@
26081
26267
 
26082
26268
 
26083
26269
  if (isResultComponent) {
26084
- var _getQuery = getQuery(component, null, componentType),
26270
+ var _getQuery = getQuery(component, value, componentType),
26085
26271
  query = _getQuery.query;
26086
26272
 
26087
26273
  queryList = queryReducer(queryList, {
@@ -26115,7 +26301,7 @@
26115
26301
 
26116
26302
  componentCollection.forEach(function (component) {
26117
26303
  // eslint-disable-next-line
26118
- var _buildQuery = helper_20(component.componentId, dependencyTree, queryList, queryOptions),
26304
+ var _buildQuery = helper_21(component.componentId, dependencyTree, queryList, queryOptions),
26119
26305
  queryObj = _buildQuery.queryObj,
26120
26306
  options = _buildQuery.options;
26121
26307
 
@@ -26181,6 +26367,11 @@
26181
26367
  var _extends4;
26182
26368
 
26183
26369
  aggregations = _extends({}, aggregations, (_extends4 = {}, _extends4[component] = response.aggregations, _extends4));
26370
+ compositeAggregations = compositeAggsReducer(compositeAggregations, {
26371
+ type: constants_9,
26372
+ aggregations: response.aggregations,
26373
+ append: false
26374
+ });
26184
26375
  }
26185
26376
 
26186
26377
  hits = _extends({}, hits, (_extends5 = {}, _extends5[component] = {
@@ -26207,6 +26398,8 @@
26207
26398
  var promotedResults = {};
26208
26399
  var rawData = {};
26209
26400
  var customData = {};
26401
+ var settingsResponse = {};
26402
+ var timestamp = {};
26210
26403
  var allPromises = orderOfQueries.map(function (component) {
26211
26404
  return new Promise(function (responseResolve, responseReject) {
26212
26405
  handleTransformResponse(res[component], component).then(function (response) {
@@ -26225,6 +26418,11 @@
26225
26418
 
26226
26419
  if (response.customData) {
26227
26420
  customData[component] = response.customData;
26421
+ } // Update settings
26422
+
26423
+
26424
+ if (response.settings) {
26425
+ settingsResponse[component] = response.settings;
26228
26426
  }
26229
26427
 
26230
26428
  if (response.aggregations) {
@@ -26233,6 +26431,7 @@
26233
26431
  aggregations = _extends({}, aggregations, (_extends6 = {}, _extends6[component] = response.aggregations, _extends6));
26234
26432
  }
26235
26433
 
26434
+ timestamp[component] = res._timestamp;
26236
26435
  hits = _extends({}, hits, (_extends7 = {}, _extends7[component] = {
26237
26436
  hits: response.hits.hits,
26238
26437
  total: typeof response.hits.total === 'object' ? response.hits.total.value : response.hits.total,
@@ -26248,8 +26447,11 @@
26248
26447
  Promise.all(allPromises).then(function () {
26249
26448
  state = _extends({}, state, {
26250
26449
  hits: hits,
26450
+ timestamp: timestamp,
26251
26451
  aggregations: aggregations,
26452
+ compositeAggregations: compositeAggregations,
26252
26453
  promotedResults: promotedResults,
26454
+ settings: settingsResponse,
26253
26455
  customData: customData,
26254
26456
  rawData: rawData
26255
26457
  });
@@ -26308,7 +26510,7 @@
26308
26510
  });
26309
26511
  }
26310
26512
 
26311
- var version = "1.24.2";
26513
+ var version = "1.26.0";
26312
26514
 
26313
26515
  var _templateObject$n, _templateObject2$a;
26314
26516
 
@@ -26430,7 +26632,7 @@
26430
26632
  }
26431
26633
  },
26432
26634
  handleOnChange: function handleOnChange(value) {
26433
- this.handleChange(value, 'change');
26635
+ this.handleChange(value || this.$props.range, 'change');
26434
26636
  },
26435
26637
  handleValueChange: function handleValueChange(value) {
26436
26638
  this.handleChange(value, 'value-change');