@appbaseio/reactivesearch-vue 1.16.0-alpha.35 → 1.16.0-alpha.38

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 (89) hide show
  1. package/dist/@appbaseio/reactivesearch-vue.umd.js +15781 -10507
  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/{Button-11307285.js → Button-d2f1aeda.js} +1 -1
  6. package/dist/cjs/{CancelSvg-4aa35935.js → CancelSvg-82021d23.js} +1 -1
  7. package/dist/cjs/{Card-fd94ef07.js → Card-4b915733.js} +2 -2
  8. package/dist/cjs/{ComponentWrapper-32481890.js → ComponentWrapper-7302fe1a.js} +2 -2
  9. package/dist/cjs/{Container-526efa6a.js → Container-8a08d663.js} +1 -1
  10. package/dist/cjs/DataSearch.js +2107 -18
  11. package/dist/cjs/{DropDown-cf9bfffc.js → DropDown-c46d8b0c.js} +19 -14
  12. package/dist/cjs/DynamicRangeSlider.js +68 -26
  13. package/dist/cjs/{Flex-f146cdad.js → Flex-699639d2.js} +1 -1
  14. package/dist/cjs/{FormControlList-808dbcef.js → FormControlList-73497794.js} +1 -1
  15. package/dist/cjs/{Input-3cc3fa59.js → Input-c6f181d5.js} +1 -1
  16. package/dist/cjs/{ListItem-b40adb04.js → ListItem-933c27e4.js} +2 -2
  17. package/dist/cjs/MultiDropdownList.js +34 -28
  18. package/dist/cjs/MultiList.js +43 -32
  19. package/dist/cjs/MultiRange.js +7 -7
  20. package/dist/cjs/Pagination-1b2320a7.js +177 -0
  21. package/dist/cjs/RangeInput.js +13 -9
  22. package/dist/cjs/RangeSlider.js +7 -7
  23. package/dist/cjs/ReactiveBase.js +3 -3
  24. package/dist/cjs/ReactiveComponent.js +34 -64
  25. package/dist/cjs/ReactiveGoogleMap.js +1764 -0
  26. package/dist/cjs/ReactiveList.js +66 -231
  27. package/dist/cjs/ResultCard.js +4 -4
  28. package/dist/cjs/ResultList.js +4 -4
  29. package/dist/cjs/SelectedFilters.js +6 -6
  30. package/dist/cjs/SingleDropdownList.js +28 -22
  31. package/dist/cjs/SingleList.js +25 -20
  32. package/dist/cjs/SingleRange.js +7 -7
  33. package/dist/cjs/StateProvider.js +2 -2
  34. package/dist/cjs/{Title-584a8cc8.js → Title-39765ee6.js} +1 -1
  35. package/dist/cjs/ToggleButton.js +7 -7
  36. package/dist/cjs/{_rollupPluginBabelHelpers-f127c8b7.js → _rollupPluginBabelHelpers-4abdbfff.js} +17 -0
  37. package/dist/cjs/{index-89c39a9e.js → index-d44a0a21.js} +11 -5
  38. package/dist/cjs/index.js +32 -23
  39. package/dist/cjs/initReactivesearch.js +97 -76
  40. package/dist/cjs/install.js +43 -37
  41. package/dist/cjs/{ssr-0ee35a09.js → ssr-c333c82c.js} +1 -1
  42. package/dist/cjs/{utils-1219e1fe.js → utils-23afb20b.js} +1 -1
  43. package/dist/cjs/version.js +1 -1
  44. package/dist/cjs/{vueTypes-57d01f18.js → vueTypes-6de9d2a9.js} +24 -13
  45. package/dist/es/{Button-91561391.js → Button-799185e2.js} +1 -1
  46. package/dist/es/{CancelSvg-c2c03a35.js → CancelSvg-4d9e0857.js} +1 -1
  47. package/dist/es/{Card-6446f1b7.js → Card-04b3c33e.js} +2 -2
  48. package/dist/es/{ComponentWrapper-4f85a67e.js → ComponentWrapper-bbb717bc.js} +2 -2
  49. package/dist/es/{Container-18b03fde.js → Container-4383c6f0.js} +1 -1
  50. package/dist/es/DataSearch.js +2106 -17
  51. package/dist/es/{DropDown-c8da0a2c.js → DropDown-4edaa621.js} +19 -14
  52. package/dist/es/DynamicRangeSlider.js +68 -26
  53. package/dist/es/{Flex-8770345d.js → Flex-aac91505.js} +1 -1
  54. package/dist/es/{FormControlList-704f8dee.js → FormControlList-fe389a2e.js} +1 -1
  55. package/dist/es/{Input-08bb1bcf.js → Input-d8519224.js} +1 -1
  56. package/dist/es/{ListItem-8e8fb535.js → ListItem-bdb6d53d.js} +2 -2
  57. package/dist/es/MultiDropdownList.js +34 -28
  58. package/dist/es/MultiList.js +43 -32
  59. package/dist/es/MultiRange.js +7 -7
  60. package/dist/es/Pagination-b3e4054a.js +172 -0
  61. package/dist/es/RangeInput.js +13 -9
  62. package/dist/es/RangeSlider.js +7 -7
  63. package/dist/es/ReactiveBase.js +3 -3
  64. package/dist/es/ReactiveComponent.js +34 -64
  65. package/dist/es/ReactiveGoogleMap.js +1756 -0
  66. package/dist/es/ReactiveList.js +66 -231
  67. package/dist/es/ResultCard.js +4 -4
  68. package/dist/es/ResultList.js +4 -4
  69. package/dist/es/SelectedFilters.js +6 -6
  70. package/dist/es/SingleDropdownList.js +28 -22
  71. package/dist/es/SingleList.js +25 -20
  72. package/dist/es/SingleRange.js +7 -7
  73. package/dist/es/StateProvider.js +2 -2
  74. package/dist/es/{Title-3522ff56.js → Title-579f8d6c.js} +1 -1
  75. package/dist/es/ToggleButton.js +7 -7
  76. package/dist/es/{_rollupPluginBabelHelpers-0f24d612.js → _rollupPluginBabelHelpers-ecf6c03c.js} +17 -1
  77. package/dist/es/{index-cb1950b6.js → index-5daa8276.js} +11 -5
  78. package/dist/es/index.js +28 -19
  79. package/dist/es/initReactivesearch.js +99 -78
  80. package/dist/es/install.js +45 -35
  81. package/dist/es/{ssr-a41dfea9.js → ssr-e3196de1.js} +1 -1
  82. package/dist/es/{utils-64a2e5f0.js → utils-3a32e13f.js} +1 -1
  83. package/dist/es/version.js +1 -1
  84. package/dist/es/{vueTypes-687b2304.js → vueTypes-9326e0be.js} +24 -13
  85. package/package.json +12 -6
  86. package/dist/cjs/DataSearch-8658fd8e.js +0 -2154
  87. package/dist/cjs/install-35f74190.js +0 -1196
  88. package/dist/es/DataSearch-66e72d1d.js +0 -2141
  89. package/dist/es/install-ecef1861.js +0 -1189
@@ -4,15 +4,16 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
4
4
 
5
5
  var configureStore = require('@appbaseio/reactivecore');
6
6
  var configureStore__default = _interopDefault(configureStore);
7
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
7
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
8
8
  var VueTypes = _interopDefault(require('vue-types'));
9
9
  var emotion = require('emotion');
10
10
  var styled = require('@appbaseio/vue-emotion');
11
11
  var styled__default = _interopDefault(styled);
12
- var vueTypes = require('./vueTypes-57d01f18.js');
13
- var index = require('./index-89c39a9e.js');
14
- var CancelSvg = require('./CancelSvg-4aa35935.js');
15
- var Input = require('./Input-3cc3fa59.js');
12
+ var vueTypes = require('./vueTypes-6de9d2a9.js');
13
+ var index = require('./index-d44a0a21.js');
14
+ var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
15
+ var CancelSvg = require('./CancelSvg-82021d23.js');
16
+ var Input = require('./Input-c6f181d5.js');
16
17
  var suggestions = require('@appbaseio/reactivecore/lib/utils/suggestions');
17
18
 
18
19
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
@@ -126,7 +127,8 @@ var Dropdown = {
126
127
  isOpen = _ref.isOpen,
127
128
  highlightedIndex = _ref.highlightedIndex,
128
129
  getButtonProps = _ref.getButtonProps,
129
- getItemEvents = _ref.getItemEvents;
130
+ getItemEvents = _ref.getItemEvents,
131
+ getInputEvents = _ref.getInputEvents;
130
132
  return h("div", {
131
133
  "class": Input.suggestionsContainer
132
134
  }, [h(Select, {
@@ -151,7 +153,13 @@ var Dropdown = {
151
153
  getItemEvents: getItemEvents
152
154
  }) : isOpen && itemsToRender.length ? h("ul", {
153
155
  "class": Input.suggestions(themePreset, _this.theme) + " " + (_this.$props.small ? 'small' : '') + " " + getClassName(_this.$props.innerClass, 'list')
154
- }, [_this.$props.showSearch ? _this.renderSearchbox() : null, !hasCustomRenderer && filteredItemsToRender.length === 0 ? _this.renderNoResult() : filteredItemsToRender.map(function (item, index) {
156
+ }, [_this.$props.showSearch ? _this.renderSearchbox({
157
+ on: {
158
+ input: getInputEvents({
159
+ onInput: _this.handleInputChange
160
+ }).input
161
+ }
162
+ }) : null, !hasCustomRenderer && filteredItemsToRender.length === 0 ? _this.renderNoResult() : filteredItemsToRender.map(function (item, index) {
155
163
  var selected = _this.$props.multi // MultiDropdownList
156
164
  && (selectedItem && !!selectedItem[item[keyField]] // MultiDropdownRange
157
165
  || Array.isArray(selectedItem) && selectedItem.find(function (value) {
@@ -272,7 +280,7 @@ var Dropdown = {
272
280
  "class": getClassName(this.$props.innerClass, 'noResults') || null
273
281
  }, [index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults]);
274
282
  },
275
- renderSearchbox: function renderSearchbox() {
283
+ renderSearchbox: function renderSearchbox(eventObject) {
276
284
  var h = this.$createElement;
277
285
  var _this$$props2 = this.$props,
278
286
  componentId = _this$$props2.componentId,
@@ -280,7 +288,7 @@ var Dropdown = {
280
288
  showClear = _this$$props2.showClear,
281
289
  themePreset = _this$$props2.themePreset,
282
290
  innerClass = _this$$props2.innerClass;
283
- var InputComponent = h(Input.Input, {
291
+ var InputComponent = h(Input.Input, _mergeJSXProps([{
284
292
  "attrs": {
285
293
  "id": componentId + "-input",
286
294
  "showIcon": false,
@@ -293,11 +301,8 @@ var Dropdown = {
293
301
  border: 0,
294
302
  borderBottom: '1px solid #ddd'
295
303
  },
296
- "class": getClassName(innerClass, 'input'),
297
- "on": {
298
- "change": this.handleInputChange
299
- }
300
- });
304
+ "class": getClassName(innerClass, 'input')
305
+ }, eventObject]));
301
306
 
302
307
  if (showClear) {
303
308
  return h(CancelSvg.InputWrapper, [InputComponent, this.searchTerm && h(CancelSvg.IconGroup, {
@@ -6,17 +6,17 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
6
6
 
7
7
  var configureStore = require('@appbaseio/reactivecore');
8
8
  var configureStore__default = _interopDefault(configureStore);
9
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
9
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
10
10
  var VueTypes = _interopDefault(require('vue-types'));
11
11
  var constants = require('@appbaseio/reactivecore/lib/utils/constants');
12
12
  require('@appbaseio/vue-emotion');
13
- var vueTypes = require('./vueTypes-57d01f18.js');
13
+ var vueTypes = require('./vueTypes-6de9d2a9.js');
14
14
  require('redux');
15
- var index = require('./index-89c39a9e.js');
16
- var Title = require('./Title-584a8cc8.js');
17
- var Container = require('./Container-526efa6a.js');
15
+ var index = require('./index-d44a0a21.js');
16
+ var Title = require('./Title-39765ee6.js');
17
+ var Container = require('./Container-8a08d663.js');
18
18
  var NoSSR = _interopDefault(require('vue-no-ssr'));
19
- var ssr = require('./ssr-0ee35a09.js');
19
+ var ssr = require('./ssr-c333c82c.js');
20
20
 
21
21
  var addComponent = configureStore.Actions.addComponent,
22
22
  removeComponent = configureStore.Actions.removeComponent,
@@ -29,9 +29,10 @@ var addComponent = configureStore.Actions.addComponent,
29
29
  updateComponentProps = configureStore.Actions.updateComponentProps;
30
30
  var checkValueChange = configureStore.helper.checkValueChange,
31
31
  getClassName = configureStore.helper.getClassName,
32
- getOptionsFromQuery = configureStore.helper.getOptionsFromQuery,
33
32
  isEqual = configureStore.helper.isEqual,
34
- checkSomePropChange = configureStore.helper.checkSomePropChange;
33
+ checkSomePropChange = configureStore.helper.checkSomePropChange,
34
+ extractQueryFromCustomQuery = configureStore.helper.extractQueryFromCustomQuery,
35
+ getOptionsForCustomQuery = configureStore.helper.getOptionsForCustomQuery;
35
36
  var DynamicRangeSlider = {
36
37
  name: 'DynamicRangeSlider',
37
38
  components: ssr.getComponents(),
@@ -54,7 +55,8 @@ var DynamicRangeSlider = {
54
55
  URLParams: VueTypes.bool.def(false),
55
56
  sliderOptions: VueTypes.object.def({}),
56
57
  nestedField: vueTypes.types.string,
57
- index: VueTypes.string
58
+ index: VueTypes.string,
59
+ value: vueTypes.types.range
58
60
  },
59
61
  data: function data() {
60
62
  this.internalRangeComponent = this.$props.componentId + "__range__internal";
@@ -100,6 +102,8 @@ var DynamicRangeSlider = {
100
102
  components = _this$$$store$getStat.components;
101
103
  }
102
104
 
105
+ var value = this.$props.value;
106
+
103
107
  if (this.destroyOnUnmount || components.indexOf(this.componentId) === -1) {
104
108
  this.addComponent(this.componentId);
105
109
  this.addComponent(this.internalRangeComponent);
@@ -108,6 +112,8 @@ var DynamicRangeSlider = {
108
112
  this.handleChange(this.selectedValue);
109
113
  } else if (this.selectedValue) {
110
114
  this.handleChange(DynamicRangeSlider.parseValue(this.selectedValue, this.$props));
115
+ } else if (value) {
116
+ this.handleChange(DynamicRangeSlider.parseValue(value, this.$props));
111
117
  } // get range before executing other queries
112
118
 
113
119
 
@@ -126,6 +132,13 @@ var DynamicRangeSlider = {
126
132
  }
127
133
  },
128
134
  methods: {
135
+ isControlled: function isControlled() {
136
+ if (this.$props.value && this.$listeners) {
137
+ return true;
138
+ }
139
+
140
+ return false;
141
+ },
129
142
  setDefaultValue: function setDefaultValue(_ref) {
130
143
  var start = _ref.start,
131
144
  end = _ref.end;
@@ -136,6 +149,8 @@ var DynamicRangeSlider = {
136
149
  defaultEnd = _this$$props$defaultV.end;
137
150
 
138
151
  this.handleChange([defaultStart, defaultEnd]);
152
+ } else if (this.isControlled()) {
153
+ this.handleChange(DynamicRangeSlider.parseValue(this.$props.value), 'change');
139
154
  } else {
140
155
  this.currentValue = [start, end];
141
156
  }
@@ -185,7 +200,16 @@ var DynamicRangeSlider = {
185
200
  },
186
201
  handleSlider: function handleSlider() {
187
202
  var sliderValues = this.$refs.slider.getValue();
188
- this.handleChange(sliderValues);
203
+ var value = this.$props.value;
204
+
205
+ if (value === undefined) {
206
+ this.handleChange(sliderValues);
207
+ } else {
208
+ this.$emit('change', {
209
+ start: sliderValues[0],
210
+ end: sliderValues[1]
211
+ });
212
+ }
189
213
  },
190
214
  handleChange: function handleChange(currentValue) {
191
215
  var _this2 = this;
@@ -219,19 +243,23 @@ var DynamicRangeSlider = {
219
243
  var customQueryOptions;
220
244
 
221
245
  if (this.$props.customQuery) {
222
- var _ref2 = this.$props.customQuery(value, this.$props) || {};
246
+ var customQueryTobeSet = this.$props.customQuery(value, this.$props);
247
+ var queryTobeSet = extractQueryFromCustomQuery(customQueryTobeSet);
223
248
 
224
- query = _ref2.query;
225
- customQueryOptions = getOptionsFromQuery(this.$props.customQuery(value, this.$props));
249
+ if (queryTobeSet) {
250
+ query = queryTobeSet;
251
+ }
252
+
253
+ customQueryOptions = getOptionsForCustomQuery(customQueryTobeSet);
226
254
  index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, value);
227
255
  }
228
256
 
229
- var _ref3 = this.range || {
257
+ var _ref2 = this.range || {
230
258
  start: value[0],
231
259
  end: value[1]
232
260
  },
233
- start = _ref3.start,
234
- end = _ref3.end;
261
+ start = _ref2.start,
262
+ end = _ref2.end;
235
263
 
236
264
  var currentStart = value[0],
237
265
  currentEnd = value[1]; // check if the slider is at its initial position
@@ -278,18 +306,19 @@ var DynamicRangeSlider = {
278
306
  start: this.range.start,
279
307
  end: this.range.end
280
308
  };
309
+ this.$emit('change', value);
281
310
  this.handleChange(DynamicRangeSlider.parseValue(value, this.$props));
282
311
  },
283
312
  range: function range(newValue, oldValue) {
284
313
  if (isEqual(newValue, oldValue) || !this.currentValue) return;
285
314
 
286
- var _ref4 = this.currentValue || [],
287
- currentStart = _ref4[0],
288
- currentEnd = _ref4[1];
315
+ var _ref3 = this.currentValue || [],
316
+ currentStart = _ref3[0],
317
+ currentEnd = _ref3[1];
289
318
 
290
- var _ref5 = oldValue || {},
291
- oldStart = _ref5.start,
292
- oldEnd = _ref5.end;
319
+ var _ref4 = oldValue || {},
320
+ oldStart = _ref4.start,
321
+ oldEnd = _ref4.end;
293
322
 
294
323
  var newStart = currentStart === oldStart ? newValue.start : currentStart;
295
324
  var newEnd = currentEnd === oldEnd ? newValue.end : currentEnd;
@@ -299,6 +328,11 @@ var DynamicRangeSlider = {
299
328
  if (!index.isQueryIdentical(newVal, oldVal, this.$data.currentValue, this.$props)) {
300
329
  this.updateQueryHandler(this.$data.currentValue);
301
330
  }
331
+ },
332
+ value: function value(newVal, oldVal) {
333
+ if (!isEqual(newVal, oldVal)) {
334
+ this.handleChange(DynamicRangeSlider.parseValue(newVal, this.$props));
335
+ }
302
336
  }
303
337
  },
304
338
  render: function render() {
@@ -320,9 +354,9 @@ var DynamicRangeSlider = {
320
354
  }, [h("vue-slider-component", {
321
355
  "ref": "slider",
322
356
  "attrs": {
323
- "value": [Math.max(start, this.currentValue[0]), Math.min(end, this.currentValue[1])],
324
- "min": Math.min(start, this.currentValue[0]),
325
- "max": Math.max(end, this.currentValue[1]),
357
+ "value": [Math.floor(Math.max(start, this.currentValue[0])), Math.ceil(Math.min(end, this.currentValue[1]))],
358
+ "min": Math.floor(Math.min(start, this.currentValue[0])),
359
+ "max": Math.ceil(Math.max(end, this.currentValue[1])),
326
360
  "dotSize": 20,
327
361
  "height": 4,
328
362
  "enable-cross": false,
@@ -372,7 +406,15 @@ DynamicRangeSlider.defaultQuery = function (values, props) {
372
406
  };
373
407
 
374
408
  DynamicRangeSlider.parseValue = function (value) {
375
- return [value.start, value.end];
409
+ if (value) {
410
+ return Array.isArray(value) ? value : [value.start, value.end];
411
+ }
412
+
413
+ return [];
414
+ };
415
+
416
+ DynamicRangeSlider.hasInternalComponent = function () {
417
+ return true;
376
418
  };
377
419
 
378
420
  var mapStateToProps = function mapStateToProps(state, props) {
@@ -2,7 +2,7 @@
2
2
 
3
3
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
4
 
5
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
5
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
6
6
  var emotion = require('emotion');
7
7
  var styled = require('@appbaseio/vue-emotion');
8
8
  var styled__default = _interopDefault(styled);
@@ -2,7 +2,7 @@
2
2
 
3
3
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
4
 
5
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
5
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
6
6
  var emotion = require('emotion');
7
7
  var styled = require('@appbaseio/vue-emotion');
8
8
  var styled__default = _interopDefault(styled);
@@ -2,7 +2,7 @@
2
2
 
3
3
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
4
 
5
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
5
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
6
6
  var emotion = require('emotion');
7
7
  var styled = require('@appbaseio/vue-emotion');
8
8
  var styled__default = _interopDefault(styled);
@@ -2,12 +2,12 @@
2
2
 
3
3
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
4
 
5
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
5
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
6
6
  var emotion = require('emotion');
7
7
  var styled = require('@appbaseio/vue-emotion');
8
8
  var styled__default = _interopDefault(styled);
9
9
  var polished = require('polished');
10
- require('./Title-584a8cc8.js');
10
+ require('./Title-39765ee6.js');
11
11
 
12
12
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
13
13
  var container = emotion.css(_templateObject || (_templateObject = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin: 0;\n\tborder-radius: 0.25rem;\n\toverflow: hidden;\n"])));
@@ -6,26 +6,27 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
6
6
 
7
7
  var configureStore = require('@appbaseio/reactivecore');
8
8
  var configureStore__default = _interopDefault(configureStore);
9
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
9
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
10
10
  var VueTypes = _interopDefault(require('vue-types'));
11
11
  var constants = require('@appbaseio/reactivecore/lib/utils/constants');
12
12
  require('emotion');
13
13
  require('@appbaseio/vue-emotion');
14
14
  require('polished');
15
- var Button = require('./Button-11307285.js');
16
- var vueTypes = require('./vueTypes-57d01f18.js');
15
+ var Button = require('./Button-d2f1aeda.js');
16
+ var vueTypes = require('./vueTypes-6de9d2a9.js');
17
17
  require('@appbaseio/reactivecore/lib/utils/transform');
18
18
  require('redux');
19
- var index = require('./index-89c39a9e.js');
20
- var ComponentWrapper = require('./ComponentWrapper-32481890.js');
21
- var Title = require('./Title-584a8cc8.js');
22
- require('./CancelSvg-4aa35935.js');
23
- require('./Input-3cc3fa59.js');
19
+ var index = require('./index-d44a0a21.js');
20
+ var ComponentWrapper = require('./ComponentWrapper-7302fe1a.js');
21
+ require('@vue/babel-helper-vue-jsx-merge-props');
22
+ var Title = require('./Title-39765ee6.js');
23
+ require('./CancelSvg-82021d23.js');
24
+ require('./Input-c6f181d5.js');
24
25
  require('compute-scroll-into-view');
25
- var Container = require('./Container-526efa6a.js');
26
+ var Container = require('./Container-8a08d663.js');
26
27
  require('@appbaseio/reactivecore/lib/utils/suggestions');
27
- var utils = require('./utils-1219e1fe.js');
28
- var DropDown = require('./DropDown-cf9bfffc.js');
28
+ var utils = require('./utils-23afb20b.js');
29
+ var DropDown = require('./DropDown-c46d8b0c.js');
29
30
 
30
31
  var updateQuery = configureStore.Actions.updateQuery,
31
32
  setQueryOptions = configureStore.Actions.setQueryOptions,
@@ -36,8 +37,9 @@ var isEqual = configureStore.helper.isEqual,
36
37
  checkValueChange = configureStore.helper.checkValueChange,
37
38
  checkPropChange = configureStore.helper.checkPropChange,
38
39
  getClassName = configureStore.helper.getClassName,
39
- getOptionsFromQuery = configureStore.helper.getOptionsFromQuery,
40
- getCompositeAggsQuery = configureStore.helper.getCompositeAggsQuery;
40
+ getCompositeAggsQuery = configureStore.helper.getCompositeAggsQuery,
41
+ extractQueryFromCustomQuery = configureStore.helper.extractQueryFromCustomQuery,
42
+ getOptionsForCustomQuery = configureStore.helper.getOptionsForCustomQuery;
41
43
  var MultiDropdownList = {
42
44
  name: 'MultiDropdownList',
43
45
  data: function data() {
@@ -349,7 +351,7 @@ var MultiDropdownList = {
349
351
  }
350
352
 
351
353
  var performUpdate = function performUpdate() {
352
- _this3.currentValue = currentValue;
354
+ _this3.currentValue = _rollupPluginBabelHelpers._extends({}, currentValue);
353
355
 
354
356
  _this3.updateQueryHandler(finalValues, props);
355
357
 
@@ -366,12 +368,13 @@ var MultiDropdownList = {
366
368
 
367
369
  if (this.defaultQuery) {
368
370
  var defaultQueryToBeSet = this.defaultQuery(value, props) || {};
371
+ var defaultQueryObj = extractQueryFromCustomQuery(defaultQueryToBeSet);
369
372
 
370
- if (defaultQueryToBeSet.query) {
371
- query = defaultQueryToBeSet.query;
373
+ if (defaultQueryObj) {
374
+ query = defaultQueryObj;
372
375
  }
373
376
 
374
- defaultQueryOptions = getOptionsFromQuery(defaultQueryToBeSet); // Update calculated default query in store
377
+ defaultQueryOptions = getOptionsForCustomQuery(defaultQueryToBeSet); // Update calculated default query in store
375
378
 
376
379
  index.updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
377
380
  }
@@ -390,10 +393,9 @@ var MultiDropdownList = {
390
393
  var customQueryOptions;
391
394
 
392
395
  if (customQuery) {
393
- var _ref = customQuery(value, props) || {};
394
-
395
- query = _ref.query;
396
- customQueryOptions = getOptionsFromQuery(customQuery(value, props));
396
+ var customQueryCalc = customQuery(value, props);
397
+ query = extractQueryFromCustomQuery(customQueryCalc);
398
+ customQueryOptions = getOptionsForCustomQuery(customQueryCalc);
397
399
  index.updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
398
400
  }
399
401
 
@@ -431,7 +433,7 @@ var MultiDropdownList = {
431
433
 
432
434
  if (props.defaultQuery) {
433
435
  var value = Object.keys(this.$data.currentValue);
434
- var defaultQueryOptions = getOptionsFromQuery(props.defaultQuery(value, props));
436
+ var defaultQueryOptions = getOptionsForCustomQuery(props.defaultQuery(value, props));
435
437
  this.setQueryOptions(this.internalComponent, _rollupPluginBabelHelpers._extends({}, queryOptions, defaultQueryOptions));
436
438
  } else {
437
439
  this.setQueryOptions(this.internalComponent, queryOptions);
@@ -490,12 +492,12 @@ MultiDropdownList.defaultQuery = function (value, props) {
490
492
 
491
493
  if (props.queryFormat === 'or') {
492
494
  if (props.showMissing) {
493
- var _type, _ref2;
495
+ var _type, _ref;
494
496
 
495
497
  var hasMissingTerm = value.includes(props.missingLabel);
496
- var should = [(_ref2 = {}, _ref2[type] = (_type = {}, _type[props.dataField] = value.filter(function (item) {
498
+ var should = [(_ref = {}, _ref[type] = (_type = {}, _type[props.dataField] = value.filter(function (item) {
497
499
  return item !== props.missingLabel;
498
- }), _type), _ref2)];
500
+ }), _type), _ref)];
499
501
 
500
502
  if (hasMissingTerm) {
501
503
  should = should.concat({
@@ -522,9 +524,9 @@ MultiDropdownList.defaultQuery = function (value, props) {
522
524
  } else {
523
525
  // adds a sub-query with must as an array of objects for each term/value
524
526
  var queryArray = value.map(function (item) {
525
- var _type3, _ref3;
527
+ var _type3, _ref2;
526
528
 
527
- return _ref3 = {}, _ref3[type] = (_type3 = {}, _type3[props.dataField] = item, _type3), _ref3;
529
+ return _ref2 = {}, _ref2[type] = (_type3 = {}, _type3[props.dataField] = item, _type3), _ref2;
528
530
  });
529
531
  listQuery = {
530
532
  bool: {
@@ -559,6 +561,10 @@ MultiDropdownList.generateQueryOptions = function (props, after) {
559
561
  }) : utils.getAggsQuery(queryOptions, props);
560
562
  };
561
563
 
564
+ MultiDropdownList.hasInternalComponent = function () {
565
+ return true;
566
+ };
567
+
562
568
  var mapStateToProps = function mapStateToProps(state, props) {
563
569
  return {
564
570
  options: props.nestedField && state.aggregations[props.componentId] ? state.aggregations[props.componentId].reactivesearch_nested : state.aggregations[props.componentId],
@@ -580,7 +586,7 @@ var mapDispatchtoProps = {
580
586
  };
581
587
  var ListConnected = ComponentWrapper.ComponentWrapper(index.connect(mapStateToProps, mapDispatchtoProps)(MultiDropdownList), {
582
588
  componentType: constants.componentTypes.multiDropdownList,
583
- internalComponent: true
589
+ internalComponent: MultiDropdownList.hasInternalComponent()
584
590
  });
585
591
 
586
592
  MultiDropdownList.install = function (Vue) {
@@ -6,23 +6,23 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
6
6
 
7
7
  var configureStore = require('@appbaseio/reactivecore');
8
8
  var configureStore__default = _interopDefault(configureStore);
9
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
9
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4abdbfff.js');
10
10
  var VueTypes = _interopDefault(require('vue-types'));
11
11
  var constants = require('@appbaseio/reactivecore/lib/utils/constants');
12
12
  require('emotion');
13
13
  require('@appbaseio/vue-emotion');
14
14
  require('polished');
15
- var vueTypes = require('./vueTypes-57d01f18.js');
15
+ var vueTypes = require('./vueTypes-6de9d2a9.js');
16
16
  require('@appbaseio/reactivecore/lib/utils/transform');
17
17
  require('redux');
18
- var index = require('./index-89c39a9e.js');
19
- var ComponentWrapper = require('./ComponentWrapper-32481890.js');
20
- var Title = require('./Title-584a8cc8.js');
21
- var Input = require('./Input-3cc3fa59.js');
22
- var Container = require('./Container-526efa6a.js');
18
+ var index = require('./index-d44a0a21.js');
19
+ var ComponentWrapper = require('./ComponentWrapper-7302fe1a.js');
20
+ var Title = require('./Title-39765ee6.js');
21
+ var Input = require('./Input-c6f181d5.js');
22
+ var Container = require('./Container-8a08d663.js');
23
23
  var suggestions = require('@appbaseio/reactivecore/lib/utils/suggestions');
24
- var FormControlList = require('./FormControlList-808dbcef.js');
25
- var utils = require('./utils-1219e1fe.js');
24
+ var FormControlList = require('./FormControlList-73497794.js');
25
+ var utils = require('./utils-23afb20b.js');
26
26
 
27
27
  var updateQuery = configureStore.Actions.updateQuery,
28
28
  setQueryOptions = configureStore.Actions.setQueryOptions,
@@ -32,7 +32,8 @@ var isEqual = configureStore.helper.isEqual,
32
32
  getQueryOptions = configureStore.helper.getQueryOptions,
33
33
  checkValueChange = configureStore.helper.checkValueChange,
34
34
  getClassName = configureStore.helper.getClassName,
35
- getOptionsFromQuery = configureStore.helper.getOptionsFromQuery;
35
+ extractQueryFromCustomQuery = configureStore.helper.extractQueryFromCustomQuery,
36
+ getOptionsForCustomQuery = configureStore.helper.getOptionsForCustomQuery;
36
37
  var MultiList = {
37
38
  name: 'MultiList',
38
39
  props: {
@@ -91,13 +92,14 @@ var MultiList = {
91
92
  },
92
93
  beforeMount: function beforeMount() {
93
94
  this.updateQueryHandlerOptions(this.$props);
95
+ var value = this.selectedValue || this.$props.value || this.$props.defaultValue;
96
+ this.setValue(value, !this.selectedValue);
97
+ },
98
+ mounted: function mounted() {
99
+ var currentValue = Object.keys(this.$data.currentValue);
94
100
 
95
- if (this.selectedValue) {
96
- this.setValue(this.selectedValue);
97
- } else if (this.$props.value) {
98
- this.setValue(this.$props.value, true);
99
- } else if (this.$props.defaultValue) {
100
- this.setValue(this.$props.defaultValue, true);
101
+ if (this.$props.value !== undefined && !isEqual(this.$props.value, currentValue)) {
102
+ this.$emit('change', currentValue);
101
103
  }
102
104
  },
103
105
  watch: {
@@ -142,7 +144,11 @@ var MultiList = {
142
144
  }
143
145
 
144
146
  if (!isEqual(selectedValue, newVal)) {
145
- this.setValue(newVal || [], true);
147
+ if (this.value === undefined) {
148
+ this.setValue(newVal, true);
149
+ } else {
150
+ this.$emit('change', newVal);
151
+ }
146
152
  }
147
153
  },
148
154
  defaultQuery: function defaultQuery(newVal, oldVal) {
@@ -346,12 +352,13 @@ var MultiList = {
346
352
 
347
353
  if (this.defaultQuery) {
348
354
  var defaultQueryToBeSet = this.defaultQuery(value, props) || {};
355
+ var defaultQueryObj = extractQueryFromCustomQuery(defaultQueryToBeSet);
349
356
 
350
- if (defaultQueryToBeSet.query) {
351
- query = defaultQueryToBeSet.query;
357
+ if (defaultQueryObj) {
358
+ query = defaultQueryObj;
352
359
  }
353
360
 
354
- defaultQueryOptions = getOptionsFromQuery(defaultQueryToBeSet); // Update calculated default query in store
361
+ defaultQueryOptions = getOptionsForCustomQuery(defaultQueryToBeSet); // Update calculated default query in store
355
362
 
356
363
  index.updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
357
364
  }
@@ -370,10 +377,9 @@ var MultiList = {
370
377
  var customQueryOptions;
371
378
 
372
379
  if (customQuery) {
373
- var _ref = customQuery(value, props) || {};
374
-
375
- query = _ref.query;
376
- customQueryOptions = getOptionsFromQuery(customQuery(value, props));
380
+ var customQueryCalc = customQuery(value, props);
381
+ query = extractQueryFromCustomQuery(customQueryCalc);
382
+ customQueryOptions = getOptionsForCustomQuery(customQueryCalc);
377
383
  index.updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
378
384
  }
379
385
 
@@ -397,7 +403,7 @@ var MultiList = {
397
403
 
398
404
  if (props.defaultQuery) {
399
405
  var value = Object.keys(this.$data.currentValue);
400
- var defaultQueryOptions = getOptionsFromQuery(props.defaultQuery(value, props));
406
+ var defaultQueryOptions = getOptionsForCustomQuery(props.defaultQuery(value, props));
401
407
  this.setQueryOptions(this.internalComponent, _rollupPluginBabelHelpers._extends({}, queryOptions, defaultQueryOptions));
402
408
  } else {
403
409
  this.setQueryOptions(this.internalComponent, queryOptions);
@@ -441,7 +447,7 @@ var MultiList = {
441
447
  if (value === undefined) {
442
448
  this.setValue(currentValue);
443
449
  } else {
444
- var values = index.parseValueArray(value, currentValue);
450
+ var values = index.parseValueArray(value || [], currentValue);
445
451
  this.$emit('change', values);
446
452
  }
447
453
  },
@@ -506,12 +512,12 @@ MultiList.defaultQuery = function (value, props) {
506
512
 
507
513
  if (props.queryFormat === 'or') {
508
514
  if (props.showMissing) {
509
- var _type, _ref2;
515
+ var _type, _ref;
510
516
 
511
517
  var hasMissingTerm = value.includes(props.missingLabel);
512
- var should = [(_ref2 = {}, _ref2[type] = (_type = {}, _type[props.dataField] = value.filter(function (item) {
518
+ var should = [(_ref = {}, _ref[type] = (_type = {}, _type[props.dataField] = value.filter(function (item) {
513
519
  return item !== props.missingLabel;
514
- }), _type), _ref2)];
520
+ }), _type), _ref)];
515
521
 
516
522
  if (hasMissingTerm) {
517
523
  should = should.concat({
@@ -538,9 +544,9 @@ MultiList.defaultQuery = function (value, props) {
538
544
  } else {
539
545
  // adds a sub-query with must as an array of objects for each term/value
540
546
  var queryArray = value.map(function (item) {
541
- var _type3, _ref3;
547
+ var _type3, _ref2;
542
548
 
543
- return _ref3 = {}, _ref3[type] = (_type3 = {}, _type3[props.dataField] = item, _type3), _ref3;
549
+ return _ref2 = {}, _ref2[type] = (_type3 = {}, _type3[props.dataField] = item, _type3), _ref2;
544
550
  });
545
551
  listQuery = {
546
552
  bool: {
@@ -590,9 +596,14 @@ var mapDispatchtoProps = {
590
596
  setCustomQuery: setCustomQuery,
591
597
  setDefaultQuery: setDefaultQuery
592
598
  };
599
+
600
+ MultiList.hasInternalComponent = function () {
601
+ return true;
602
+ };
603
+
593
604
  var ListConnected = ComponentWrapper.ComponentWrapper(index.connect(mapStateToProps, mapDispatchtoProps)(MultiList), {
594
605
  componentType: constants.componentTypes.multiList,
595
- internalComponent: true
606
+ internalComponent: MultiList.hasInternalComponent()
596
607
  });
597
608
 
598
609
  MultiList.install = function (Vue) {