@appbaseio/reactivesearch-vue 1.16.0-alpha.25 → 1.16.0-alpha.29

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 +562 -194
  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-d41f2442.js → CancelSvg-b14dd012.js} +57 -0
  6. package/dist/cjs/DataSearch.js +29 -80
  7. package/dist/cjs/{DropDown-d3c78c41.js → DropDown-dc042720.js} +60 -23
  8. package/dist/cjs/DynamicRangeSlider.js +1 -1
  9. package/dist/cjs/MultiDropdownList.js +12 -5
  10. package/dist/cjs/MultiList.js +4 -3
  11. package/dist/cjs/MultiRange.js +1 -1
  12. package/dist/cjs/{Pagination-d4dbfd5a.js → Pagination-0b9ec0fc.js} +1 -1
  13. package/dist/cjs/RangeInput.js +1 -1
  14. package/dist/cjs/RangeSlider.js +1 -1
  15. package/dist/cjs/ReactiveBase.js +17 -9
  16. package/dist/cjs/ReactiveComponent.js +12 -12
  17. package/dist/cjs/ReactiveGoogleMap.js +2 -2
  18. package/dist/cjs/ReactiveList.js +55 -43
  19. package/dist/cjs/ResultCard.js +1 -1
  20. package/dist/cjs/ResultList.js +1 -1
  21. package/dist/cjs/SelectedFilters.js +1 -1
  22. package/dist/cjs/SingleDropdownList.js +12 -5
  23. package/dist/cjs/SingleList.js +5 -4
  24. package/dist/cjs/SingleRange.js +1 -1
  25. package/dist/cjs/StateProvider.js +6 -2
  26. package/dist/cjs/ToggleButton.js +2 -2
  27. package/dist/cjs/index.js +7 -4
  28. package/dist/cjs/initReactivesearch.js +31 -12
  29. package/dist/cjs/install.js +5 -4
  30. package/dist/cjs/version.js +1 -1
  31. package/dist/cjs/{vueTypes-409348b0.js → vueTypes-829a5f2c.js} +5 -1
  32. package/dist/es/{DownShift-e7ccf2a7.js → CancelSvg-282ae799.js} +54 -2
  33. package/dist/es/DataSearch.js +19 -70
  34. package/dist/es/{DropDown-8894cc22.js → DropDown-d9686568.js} +59 -22
  35. package/dist/es/DynamicRangeSlider.js +1 -1
  36. package/dist/es/MultiDropdownList.js +12 -5
  37. package/dist/es/MultiList.js +4 -3
  38. package/dist/es/MultiRange.js +1 -1
  39. package/dist/es/{Pagination-a2ab7fcb.js → Pagination-e8216949.js} +1 -1
  40. package/dist/es/RangeInput.js +1 -1
  41. package/dist/es/RangeSlider.js +1 -1
  42. package/dist/es/ReactiveBase.js +17 -9
  43. package/dist/es/ReactiveComponent.js +12 -12
  44. package/dist/es/ReactiveGoogleMap.js +2 -2
  45. package/dist/es/ReactiveList.js +55 -43
  46. package/dist/es/ResultCard.js +1 -1
  47. package/dist/es/ResultList.js +1 -1
  48. package/dist/es/SelectedFilters.js +1 -1
  49. package/dist/es/SingleDropdownList.js +12 -5
  50. package/dist/es/SingleList.js +5 -4
  51. package/dist/es/SingleRange.js +1 -1
  52. package/dist/es/StateProvider.js +6 -2
  53. package/dist/es/ToggleButton.js +2 -2
  54. package/dist/es/index.js +7 -4
  55. package/dist/es/initReactivesearch.js +31 -12
  56. package/dist/es/install.js +5 -4
  57. package/dist/es/version.js +1 -1
  58. package/dist/es/{vueTypes-a9b9d5c9.js → vueTypes-98819a12.js} +5 -1
  59. package/package.json +3 -3
@@ -12,7 +12,7 @@ require('@appbaseio/reactivecore/lib/utils/constants');
12
12
  var helper = require('@appbaseio/reactivecore/lib/utils/helper');
13
13
  var styled = require('@appbaseio/vue-emotion');
14
14
  var styled__default = _interopDefault(styled);
15
- var vueTypes = require('./vueTypes-409348b0.js');
15
+ var vueTypes = require('./vueTypes-829a5f2c.js');
16
16
  require('redux');
17
17
  var index = require('./index-2a8358cd.js');
18
18
  var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
@@ -85,7 +85,7 @@ var URLParamsProvider = {
85
85
  headers: vueTypes.types.headers,
86
86
  getSearchParams: vueTypes.types.func,
87
87
  setSearchParams: vueTypes.types.func,
88
- as: vueTypes.types.string.def('div')
88
+ as: VueTypes.string.def('div')
89
89
  },
90
90
  mounted: function mounted() {
91
91
  var _this = this;
@@ -233,7 +233,9 @@ var URLParamsProvider = {
233
233
  return value.map(function (item) {
234
234
  return _this3.getValue(item);
235
235
  });
236
- } else if (value && typeof value === 'object') {
236
+ }
237
+
238
+ if (value && typeof value === 'object') {
237
239
  // TODO: support for NestedList
238
240
  if (value.location) return value;
239
241
  if (value.category) return value;
@@ -358,7 +360,7 @@ var ReactiveBase = {
358
360
  }
359
361
  },
360
362
  props: {
361
- app: vueTypes.types.stringRequired,
363
+ app: vueTypes.types.string,
362
364
  analytics: VueTypes.bool,
363
365
  analyticsConfig: vueTypes.types.analyticsConfig,
364
366
  appbaseConfig: vueTypes.types.appbaseConfig,
@@ -378,7 +380,8 @@ var ReactiveBase = {
378
380
  transformResponse: vueTypes.types.func,
379
381
  as: VueTypes.string.def('div'),
380
382
  getSearchParams: vueTypes.types.func,
381
- setSearchParams: vueTypes.types.func
383
+ setSearchParams: vueTypes.types.func,
384
+ mongodb: vueTypes.types.mongodb
382
385
  },
383
386
  provide: function provide() {
384
387
  return {
@@ -418,6 +421,9 @@ var ReactiveBase = {
418
421
  this.store.dispatch(analytics.updateAnalyticsConfig(newVal));
419
422
  }
420
423
  }
424
+ },
425
+ mongodb: function mongodb() {
426
+ this.updateState(this.$props);
421
427
  }
422
428
  },
423
429
  computed: {
@@ -425,12 +431,13 @@ var ReactiveBase = {
425
431
  var _this$$props = this.$props,
426
432
  enableAppbase = _this$$props.enableAppbase,
427
433
  headers = _this$$props.headers,
428
- appbaseConfig = _this$$props.appbaseConfig;
434
+ appbaseConfig = _this$$props.appbaseConfig,
435
+ mongodb = _this$$props.mongodb;
429
436
 
430
437
  var _ref = appbaseConfig || {},
431
438
  enableTelemetry = _ref.enableTelemetry;
432
439
 
433
- return _rollupPluginBabelHelpers._extends({}, enableAppbase && _rollupPluginBabelHelpers._extends({
440
+ return _rollupPluginBabelHelpers._extends({}, enableAppbase && !mongodb && _rollupPluginBabelHelpers._extends({
434
441
  'X-Search-Client': index.X_SEARCH_CLIENT
435
442
  }, enableTelemetry === false && {
436
443
  'X-Enable-Telemetry': false
@@ -448,7 +455,7 @@ var ReactiveBase = {
448
455
  var appbaseConfig = _rollupPluginBabelHelpers._extends({}, props.analyticsConfig, props.appbaseConfig);
449
456
 
450
457
  var config = {
451
- url: props.url && props.url.trim() !== '' ? props.url : 'https://scalr.api.appbase.io',
458
+ url: props.url && props.url.trim() !== '' ? props.url : '',
452
459
  app: props.app,
453
460
  credentials: credentials,
454
461
  type: props.type ? props.type : '*',
@@ -456,7 +463,8 @@ var ReactiveBase = {
456
463
  transformResponse: props.transformResponse,
457
464
  enableAppbase: props.enableAppbase,
458
465
  analytics: props.appbaseConfig ? props.appbaseConfig.recordAnalytics : props.analytics,
459
- analyticsConfig: appbaseConfig
466
+ analyticsConfig: appbaseConfig,
467
+ mongodb: props.mongodb
460
468
  };
461
469
  var queryParams = '';
462
470
 
@@ -9,7 +9,7 @@ var configureStore__default = _interopDefault(configureStore);
9
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
- var vueTypes = require('./vueTypes-409348b0.js');
12
+ var vueTypes = require('./vueTypes-829a5f2c.js');
13
13
  require('@appbaseio/reactivecore/lib/utils/transform');
14
14
  require('redux');
15
15
  var index = require('./index-2a8358cd.js');
@@ -52,7 +52,7 @@ var ReactiveComponent = {
52
52
  this.internalComponent = null;
53
53
  this.$defaultQuery = null; // Set custom query in store
54
54
 
55
- index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, undefined);
55
+ index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.selectedValue);
56
56
  var customQuery = props.customQuery,
57
57
  componentId = props.componentId,
58
58
  filterLabel = props.filterLabel,
@@ -75,7 +75,7 @@ var ReactiveComponent = {
75
75
  }
76
76
 
77
77
  if (customQuery) {
78
- var calcCustomQuery = customQuery(props);
78
+ var calcCustomQuery = customQuery(this.selectedValue, props);
79
79
 
80
80
  var _ref = calcCustomQuery || {},
81
81
  query = _ref.query;
@@ -94,7 +94,7 @@ var ReactiveComponent = {
94
94
 
95
95
  this.updateQuery({
96
96
  componentId: componentId,
97
- queryToSet: queryToSet,
97
+ query: queryToSet,
98
98
  value: this.selectedValue || null,
99
99
  label: filterLabel,
100
100
  showFilter: showFilter,
@@ -145,8 +145,8 @@ var ReactiveComponent = {
145
145
  },
146
146
  beforeMount: function beforeMount() {
147
147
  if (this.internalComponent && this.$props.defaultQuery) {
148
- index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, undefined);
149
- this.$defaultQuery = this.$props.defaultQuery();
148
+ index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.selectedValue);
149
+ this.$defaultQuery = this.$props.defaultQuery(this.selectedValue, this.$props);
150
150
 
151
151
  var _ref3 = this.$defaultQuery || {},
152
152
  query = _ref3.query,
@@ -210,8 +210,8 @@ var ReactiveComponent = {
210
210
  }
211
211
  },
212
212
  defaultQuery: function defaultQuery(newVal, oldVal) {
213
- if (newVal && !index.isQueryIdentical(newVal, oldVal, undefined, this.$props)) {
214
- this.$defaultQuery = newVal();
213
+ if (newVal && !index.isQueryIdentical(newVal, oldVal, this.selectedValue, this.$props)) {
214
+ this.$defaultQuery = newVal(this.selectedValue, this.$props);
215
215
 
216
216
  var _ref4 = this.$defaultQuery || {},
217
217
  query = _ref4.query,
@@ -222,7 +222,7 @@ var ReactiveComponent = {
222
222
  } else this.setQueryOptions(this.internalComponent, this.getAggsQuery(), false); // Update default query for RS API
223
223
 
224
224
 
225
- index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, undefined);
225
+ index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.selectedValue);
226
226
  var queryToSet = query || null;
227
227
 
228
228
  if (!queryToSet && this.$defaultQuery && this.$defaultQuery.id) {
@@ -236,9 +236,9 @@ var ReactiveComponent = {
236
236
  }
237
237
  },
238
238
  customQuery: function customQuery(newVal, oldVal) {
239
- if (newVal && !index.isQueryIdentical(newVal, oldVal, undefined, this.$props)) {
239
+ if (newVal && !index.isQueryIdentical(newVal, oldVal, this.selectedValue, this.$props)) {
240
240
  var componentId = this.$props.componentId;
241
- this.$customQuery = newVal(this.$props);
241
+ this.$customQuery = newVal(this.selectedValue, this.$props);
242
242
 
243
243
  var _ref5 = this.$customQuery || {},
244
244
  query = _ref5.query,
@@ -249,7 +249,7 @@ var ReactiveComponent = {
249
249
  } else this.setQueryOptions(componentId, this.getAggsQuery(), false); // Update custom query for RS API
250
250
 
251
251
 
252
- index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, undefined);
252
+ index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.selectedValue);
253
253
  var queryToSet = query || null;
254
254
 
255
255
  if (this.$customQuery && this.$customQuery.id) {
@@ -14,8 +14,8 @@ var styled = require('@appbaseio/vue-emotion');
14
14
  var styled__default = _interopDefault(styled);
15
15
  require('polished');
16
16
  require('./Button-d2f1aeda.js');
17
- var vueTypes = require('./vueTypes-409348b0.js');
18
- var Pagination = require('./Pagination-d4dbfd5a.js');
17
+ var vueTypes = require('./vueTypes-829a5f2c.js');
18
+ var Pagination = require('./Pagination-0b9ec0fc.js');
19
19
  require('@appbaseio/reactivecore/lib/utils/transform');
20
20
  require('redux');
21
21
  var index = require('./index-2a8358cd.js');
@@ -15,8 +15,8 @@ var styled = require('@appbaseio/vue-emotion');
15
15
  var styled__default = _interopDefault(styled);
16
16
  require('polished');
17
17
  require('./Button-d2f1aeda.js');
18
- var vueTypes = require('./vueTypes-409348b0.js');
19
- var Pagination = require('./Pagination-d4dbfd5a.js');
18
+ var vueTypes = require('./vueTypes-829a5f2c.js');
19
+ var Pagination = require('./Pagination-0b9ec0fc.js');
20
20
  require('@appbaseio/reactivecore/lib/utils/transform');
21
21
  require('redux');
22
22
  var index = require('./index-2a8358cd.js');
@@ -329,9 +329,14 @@ var ReactiveList = {
329
329
  }
330
330
 
331
331
  this.internalComponent = this.$props.componentId + "__internal";
332
- this.sortOptionIndex = this.defaultSortOption ? this.sortOptions.findIndex(function (s) {
333
- return s.label === _this.defaultSortOption;
334
- }) : 0;
332
+ this.sortOptionIndex = 0;
333
+
334
+ if (this.defaultSortOption && this.sortOptions && Array.isArray(this.sortOptions)) {
335
+ this.sortOptionIndex = this.sortOptions.findIndex(function (s) {
336
+ return s.label === _this.defaultSortOption;
337
+ });
338
+ }
339
+
335
340
  this.updateComponentProps(this.componentId, {
336
341
  from: this.from
337
342
  }, constants.componentTypes.reactiveList);
@@ -341,7 +346,7 @@ var ReactiveList = {
341
346
  },
342
347
  props: {
343
348
  currentPage: VueTypes.number.def(0),
344
- includeFields: vueTypes.types.includeFields.def(['*']),
349
+ includeFields: vueTypes.types.includeFields,
345
350
  // component props
346
351
  className: vueTypes.types.string,
347
352
  componentId: vueTypes.types.stringRequired,
@@ -350,7 +355,7 @@ var ReactiveList = {
350
355
  aggregationSize: VueTypes.number,
351
356
  defaultQuery: vueTypes.types.func,
352
357
  defaultSortOption: vueTypes.types.string,
353
- excludeFields: vueTypes.types.excludeFields.def([]),
358
+ excludeFields: vueTypes.types.excludeFields,
354
359
  innerClass: vueTypes.types.style,
355
360
  listClass: VueTypes.string.def(''),
356
361
  loader: vueTypes.types.title,
@@ -362,7 +367,7 @@ var ReactiveList = {
362
367
  pages: VueTypes.number.def(5),
363
368
  pagination: VueTypes.bool.def(false),
364
369
  infiniteScroll: VueTypes.bool.def(true),
365
- paginationAt: vueTypes.types.paginationAt.def('bottom'),
370
+ paginationAt: VueTypes.oneOf(['top', 'bottom', 'both']).def('bottom'),
366
371
  react: vueTypes.types.react,
367
372
  scrollOnChange: VueTypes.bool.def(true),
368
373
  showResultStats: VueTypes.bool.def(true),
@@ -563,11 +568,11 @@ var ReactiveList = {
563
568
  var options = getQueryOptions(this.$props);
564
569
  options.from = this.$data.from;
565
570
 
566
- if (this.$props.sortOptions) {
571
+ if (this.sortOptions && this.sortOptions[this.sortOptionIndex]) {
567
572
  var _ref2;
568
573
 
569
- var sortField = this.$props.sortOptions[this.sortOptionIndex].dataField;
570
- var sortBy = this.$props.sortOptions[this.sortOptionIndex].sortBy;
574
+ var sortField = this.sortOptions[this.sortOptionIndex].dataField;
575
+ var sortBy = this.sortOptions[this.sortOptionIndex].sortBy;
571
576
  options.sort = [(_ref2 = {}, _ref2[sortField] = {
572
577
  order: sortBy
573
578
  }, _ref2)]; // To handle sort options for RS API
@@ -637,10 +642,10 @@ var ReactiveList = {
637
642
  "class": this.$props.className
638
643
  }, [this.isLoading && this.shouldRenderPagination && this.showInfiniteScroll && (this.$scopedSlots.loader || this.$props.loader), this.renderErrorComponent(), h(Flex.Flex, {
639
644
  "attrs": {
640
- "labelPosition": this.$props.sortOptions ? 'right' : 'left'
645
+ "labelPosition": this.sortOptions ? 'right' : 'left'
641
646
  },
642
647
  "class": getClassName(this.$props.innerClass, 'resultsInfo')
643
- }, [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.Pagination, {
648
+ }, [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.Pagination, {
644
649
  "attrs": {
645
650
  "pages": this.$props.pages,
646
651
  "totalPages": this.totalPages,
@@ -711,15 +716,18 @@ var ReactiveList = {
711
716
  var options = getQueryOptions(props);
712
717
  options.from = this.$data.from;
713
718
 
714
- if (props.sortOptions) {
715
- var _ref5;
716
-
719
+ if (props.sortOptions && Array.isArray(props.sortOptions)) {
717
720
  var sortOptionIndex = props.defaultSortOption ? props.sortOptions.findIndex(function (s) {
718
721
  return s.label === props.defaultSortOption;
719
722
  }) : 0;
720
- options.sort = [(_ref5 = {}, _ref5[props.sortOptions[sortOptionIndex].dataField] = {
721
- order: props.sortOptions[sortOptionIndex].sortBy
722
- }, _ref5)];
723
+
724
+ if (props.sortOptions[sortOptionIndex]) {
725
+ var _ref5;
726
+
727
+ options.sort = [(_ref5 = {}, _ref5[props.sortOptions[sortOptionIndex].dataField] = {
728
+ order: props.sortOptions[sortOptionIndex].sortBy
729
+ }, _ref5)];
730
+ }
723
731
  } else if (props.sortBy) {
724
732
  var _ref6;
725
733
 
@@ -815,31 +823,39 @@ var ReactiveList = {
815
823
  renderNoResult: function renderNoResult() {
816
824
  var h = this.$createElement;
817
825
  var renderNoResults = this.$scopedSlots.renderNoResults || this.$props.renderNoResults;
826
+
827
+ if (this.$scopedSlots.renderNoResults) {
828
+ return index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults;
829
+ }
830
+
818
831
  return h("p", {
819
832
  "class": getClassName(this.$props.innerClass, 'noResults') || null
820
833
  }, [index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults]);
821
834
  },
822
835
  handleSortChange: function handleSortChange(e) {
823
- var _ref7;
836
+ var index = e.target.value;
824
837
 
825
- var index = e.target.value; // This fixes issue #371 (where sorting a multi-result page with infinite loader breaks)
838
+ if (this.sortOptions && this.sortOptions[index]) {
839
+ var _ref7;
826
840
 
827
- var options = getQueryOptions(this.$props);
828
- options.from = 0;
829
- var sortField = this.$props.sortOptions[index].dataField;
830
- var sortBy = this.$props.sortOptions[index].sortBy;
831
- options.sort = [(_ref7 = {}, _ref7[sortField] = {
832
- order: sortBy
833
- }, _ref7)];
834
- this.sortOptionIndex = index; // To handle sort options for RS API
835
-
836
- this.updateComponentProps(this.componentId, {
837
- dataField: sortField,
838
- sortBy: sortBy
839
- }, constants.componentTypes.reactiveList);
840
- this.setQueryOptions(this.$props.componentId, options, true);
841
- this.currentPageState = 0;
842
- this.from = 0;
841
+ // This fixes issue #371 (where sorting a multi-result page with infinite loader breaks)
842
+ var options = getQueryOptions(this.$props);
843
+ options.from = 0;
844
+ var sortField = this.sortOptions[index].dataField;
845
+ var sortBy = this.sortOptions[index].sortBy;
846
+ options.sort = [(_ref7 = {}, _ref7[sortField] = {
847
+ order: sortBy
848
+ }, _ref7)];
849
+ this.sortOptionIndex = index; // To handle sort options for RS API
850
+
851
+ this.updateComponentProps(this.componentId, {
852
+ dataField: sortField,
853
+ sortBy: sortBy
854
+ }, constants.componentTypes.reactiveList);
855
+ this.setQueryOptions(this.$props.componentId, options, true);
856
+ this.currentPageState = 0;
857
+ this.from = 0;
858
+ }
843
859
  },
844
860
  triggerClickAnalytics: function triggerClickAnalytics(searchPosition, documentId) {
845
861
  var docId = documentId;
@@ -873,7 +889,7 @@ var ReactiveList = {
873
889
  "domProps": {
874
890
  "value": this.sortOptionIndex
875
891
  }
876
- }, [this.$props.sortOptions.map(function (sort, index) {
892
+ }, [this.sortOptions.map(function (sort, index) {
877
893
  return h("option", {
878
894
  "key": sort.label,
879
895
  "domProps": {
@@ -979,11 +995,7 @@ var mapDispatchtoProps = {
979
995
  }; // Only used for SSR
980
996
 
981
997
  ReactiveList.generateQueryOptions = function (props) {
982
- // simulate default (includeFields and excludeFields) props to generate consistent query
983
- var options = getQueryOptions(_rollupPluginBabelHelpers._extends({
984
- includeFields: ['*'],
985
- excludeFields: []
986
- }, props));
998
+ var options = getQueryOptions(props);
987
999
  var size = props.size,
988
1000
  dataField = props.dataField,
989
1001
  defaultSortOption = props.defaultSortOption,
@@ -9,7 +9,7 @@ var VueTypes = _interopDefault(require('vue-types'));
9
9
  require('emotion');
10
10
  require('@appbaseio/vue-emotion');
11
11
  require('polished');
12
- var vueTypes = require('./vueTypes-409348b0.js');
12
+ var vueTypes = require('./vueTypes-829a5f2c.js');
13
13
  var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
14
14
  var Title = require('./Title-39765ee6.js');
15
15
  var Card = require('./Card-4b915733.js');
@@ -9,7 +9,7 @@ var VueTypes = _interopDefault(require('vue-types'));
9
9
  require('emotion');
10
10
  require('@appbaseio/vue-emotion');
11
11
  require('polished');
12
- var vueTypes = require('./vueTypes-409348b0.js');
12
+ var vueTypes = require('./vueTypes-829a5f2c.js');
13
13
  var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
14
14
  var Title = require('./Title-39765ee6.js');
15
15
  var ListItem = require('./ListItem-933c27e4.js');
@@ -13,7 +13,7 @@ require('emotion');
13
13
  require('@appbaseio/vue-emotion');
14
14
  require('polished');
15
15
  var Button = require('./Button-d2f1aeda.js');
16
- var vueTypes = require('./vueTypes-409348b0.js');
16
+ var vueTypes = require('./vueTypes-829a5f2c.js');
17
17
  require('redux');
18
18
  var index = require('./index-2a8358cd.js');
19
19
  var Title = require('./Title-39765ee6.js');
@@ -13,18 +13,19 @@ require('emotion');
13
13
  require('@appbaseio/vue-emotion');
14
14
  require('polished');
15
15
  var Button = require('./Button-d2f1aeda.js');
16
- var vueTypes = require('./vueTypes-409348b0.js');
16
+ var vueTypes = require('./vueTypes-829a5f2c.js');
17
17
  require('@appbaseio/reactivecore/lib/utils/transform');
18
18
  require('redux');
19
19
  var index = require('./index-2a8358cd.js');
20
20
  var ComponentWrapper = require('./ComponentWrapper-ab813390.js');
21
21
  var Title = require('./Title-39765ee6.js');
22
+ require('./CancelSvg-b14dd012.js');
22
23
  require('./Input-c6f181d5.js');
23
24
  require('compute-scroll-into-view');
24
- require('./DownShift-d41f2442.js');
25
25
  var Container = require('./Container-8a08d663.js');
26
+ require('@appbaseio/reactivecore/lib/utils/suggestions');
26
27
  var utils = require('./utils-23afb20b.js');
27
- var DropDown = require('./DropDown-d3c78c41.js');
28
+ var DropDown = require('./DropDown-dc042720.js');
28
29
 
29
30
  var updateQuery = configureStore.Actions.updateQuery,
30
31
  setQueryOptions = configureStore.Actions.setQueryOptions,
@@ -80,10 +81,12 @@ var SingleDropdownList = {
80
81
  showMissing: VueTypes.bool.def(false),
81
82
  missingLabel: VueTypes.string.def('N/A'),
82
83
  showSearch: VueTypes.bool.def(false),
84
+ showClear: VueTypes.bool.def(false),
83
85
  showLoadMore: VueTypes.bool.def(false),
84
86
  loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.any]).def('Load More'),
85
87
  nestedField: vueTypes.types.string,
86
- index: VueTypes.string
88
+ index: VueTypes.string,
89
+ searchPlaceholder: VueTypes.string.def('Type here to search...')
87
90
  },
88
91
  created: function created() {
89
92
  if (!this.enableAppbase && this.$props.index) {
@@ -197,7 +200,9 @@ var SingleDropdownList = {
197
200
  if (!this.hasCustomRenderer && this.$data.modifiedOptions.length === 0 && !this.isLoading) {
198
201
  if (renderNoResults && index.isFunction(renderNoResults)) {
199
202
  return h("div", [renderNoResults()]);
200
- } else if (renderNoResults && !index.isFunction(renderNoResults)) {
203
+ }
204
+
205
+ if (renderNoResults && !index.isFunction(renderNoResults)) {
201
206
  return renderNoResults;
202
207
  }
203
208
 
@@ -235,6 +240,8 @@ var SingleDropdownList = {
235
240
  "renderNoResults": this.$scopedSlots.renderNoResults || this.$props.renderNoResults,
236
241
  "themePreset": this.themePreset,
237
242
  "showSearch": this.$props.showSearch,
243
+ "showClear": this.$props.showClear,
244
+ "searchPlaceholder": this.$props.searchPlaceholder,
238
245
  "transformData": this.$props.transformData,
239
246
  "footer": showLoadMore && !isLastBucket && h("div", {
240
247
  "attrs": {
@@ -12,7 +12,7 @@ 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-409348b0.js');
15
+ var vueTypes = require('./vueTypes-829a5f2c.js');
16
16
  require('@appbaseio/reactivecore/lib/utils/transform');
17
17
  require('redux');
18
18
  var index = require('./index-2a8358cd.js');
@@ -20,6 +20,7 @@ var ComponentWrapper = require('./ComponentWrapper-ab813390.js');
20
20
  var Title = require('./Title-39765ee6.js');
21
21
  var Input = require('./Input-c6f181d5.js');
22
22
  var Container = require('./Container-8a08d663.js');
23
+ var suggestions = require('@appbaseio/reactivecore/lib/utils/suggestions');
23
24
  var FormControlList = require('./FormControlList-73497794.js');
24
25
  var utils = require('./utils-23afb20b.js');
25
26
 
@@ -36,7 +37,7 @@ var SingleList = {
36
37
  name: 'SingleList',
37
38
  props: {
38
39
  beforeValueChange: vueTypes.types.func,
39
- className: vueTypes.types.string.def(''),
40
+ className: VueTypes.string.def(''),
40
41
  componentId: vueTypes.types.stringRequired,
41
42
  customQuery: vueTypes.types.func,
42
43
  dataField: vueTypes.types.stringRequired,
@@ -56,7 +57,7 @@ var SingleList = {
56
57
  showFilter: VueTypes.bool.def(true),
57
58
  showRadio: VueTypes.bool.def(true),
58
59
  showSearch: VueTypes.bool.def(true),
59
- size: VueTypes.number.def(100),
60
+ size: VueTypes.number,
60
61
  sortBy: VueTypes.oneOf(['asc', 'desc', 'count']).def('count'),
61
62
  title: vueTypes.types.title,
62
63
  URLParams: VueTypes.bool.def(false),
@@ -170,7 +171,7 @@ var SingleList = {
170
171
  var filteredItemsToRender = itemsToRender.filter(function (item) {
171
172
  if (String(item.key).length) {
172
173
  if (_this.$props.showSearch && _this.$data.searchTerm) {
173
- return String(item.key).toLowerCase().includes(_this.$data.searchTerm.toLowerCase());
174
+ return suggestions.replaceDiacritics(String(item.key)).toLowerCase().includes(suggestions.replaceDiacritics(_this.$data.searchTerm.toLowerCase()));
174
175
  }
175
176
 
176
177
  return true;
@@ -12,7 +12,7 @@ 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-409348b0.js');
15
+ var vueTypes = require('./vueTypes-829a5f2c.js');
16
16
  require('@appbaseio/reactivecore/lib/utils/transform');
17
17
  require('redux');
18
18
  var index = require('./index-2a8358cd.js');
@@ -16,6 +16,10 @@ var getSearchState = configureStore.helper.getSearchState;
16
16
  var defaultKeys = ['hits', 'value', 'aggregations', 'error'];
17
17
 
18
18
  var filterProps = function filterProps(props) {
19
+ if (props === void 0) {
20
+ props = {};
21
+ }
22
+
19
23
  return _rollupPluginBabelHelpers._extends({}, props, {
20
24
  props: props.componentProps
21
25
  });
@@ -35,7 +39,7 @@ var filterByComponentIds = function filterByComponentIds(state, props) {
35
39
  return _ref = {}, _ref[componentIds] = state[componentIds], _ref;
36
40
  }
37
41
 
38
- if (componentIds instanceof Array) {
42
+ if (Array.isArray(componentIds)) {
39
43
  var filteredState = {};
40
44
  componentIds.forEach(function (componentId) {
41
45
  filteredState[componentId] = state[componentId];
@@ -74,7 +78,7 @@ var StateProvider = {
74
78
  };
75
79
  return this.__state;
76
80
  },
77
- mounted: function mounted() {
81
+ created: function created() {
78
82
  this.searchState = filterByKeys(getSearchState(filterProps(this.searchStateProps)), this.includeKeys);
79
83
  },
80
84
  computed: {
@@ -13,7 +13,7 @@ require('emotion');
13
13
  require('@appbaseio/vue-emotion');
14
14
  require('polished');
15
15
  var Button = require('./Button-d2f1aeda.js');
16
- var vueTypes = require('./vueTypes-409348b0.js');
16
+ var vueTypes = require('./vueTypes-829a5f2c.js');
17
17
  require('@appbaseio/reactivecore/lib/utils/transform');
18
18
  require('redux');
19
19
  var index = require('./index-2a8358cd.js');
@@ -35,7 +35,7 @@ var ToggleButton = {
35
35
  componentId: vueTypes.types.stringRequired,
36
36
  data: vueTypes.types.data,
37
37
  dataField: vueTypes.types.stringRequired,
38
- defaultValue: vueTypes.types.stringOrArray,
38
+ defaultValue: vueTypes.types.any,
39
39
  value: vueTypes.types.stringOrArray,
40
40
  filterLabel: vueTypes.types.string,
41
41
  nestedField: vueTypes.types.string,
package/dist/cjs/index.js CHANGED
@@ -11,8 +11,8 @@ require('emotion');
11
11
  require('@appbaseio/vue-emotion');
12
12
  require('polished');
13
13
  require('./Button-d2f1aeda.js');
14
- require('./vueTypes-409348b0.js');
15
- require('./Pagination-d4dbfd5a.js');
14
+ require('./vueTypes-829a5f2c.js');
15
+ require('./Pagination-0b9ec0fc.js');
16
16
  var ReactiveList = require('./ReactiveList.js');
17
17
  require('@appbaseio/reactivecore/lib/utils/transform');
18
18
  require('redux');
@@ -29,16 +29,17 @@ require('url-search-params-polyfill');
29
29
  var ReactiveBase = require('./ReactiveBase.js');
30
30
  require('hotkeys-js');
31
31
  var DataSearch = require('./DataSearch.js');
32
+ require('./CancelSvg-b14dd012.js');
32
33
  require('./Input-c6f181d5.js');
33
34
  require('compute-scroll-into-view');
34
- require('./DownShift-d41f2442.js');
35
35
  require('./Container-8a08d663.js');
36
36
  require('vue-highlight-words');
37
+ require('@appbaseio/reactivecore/lib/utils/suggestions');
37
38
  require('./FormControlList-73497794.js');
38
39
  require('./utils-23afb20b.js');
39
40
  var SingleList = require('./SingleList.js');
40
41
  var MultiList = require('./MultiList.js');
41
- require('./DropDown-d3c78c41.js');
42
+ require('./DropDown-dc042720.js');
42
43
  var SingleDropdownList = require('./SingleDropdownList.js');
43
44
  var MultiDropdownList = require('./MultiDropdownList.js');
44
45
  var ToggleButton = require('./ToggleButton.js');
@@ -64,6 +65,8 @@ require('gmap-vue/dist/mixins/map-element');
64
65
  require('@appbaseio/reactivecore/lib/reducers/valueReducer');
65
66
  require('@appbaseio/reactivecore/lib/reducers/queryReducer');
66
67
  require('@appbaseio/reactivecore/lib/reducers/queryOptionsReducer');
68
+ require('@appbaseio/reactivecore/lib/reducers/compositeAggsReducer');
69
+ require('@appbaseio/reactivecore/lib/constants');
67
70
  require('@appbaseio/reactivecore/lib/reducers/dependencyTreeReducer');
68
71
  require('@appbaseio/reactivecore/lib/utils/graphQL');
69
72
  require('@appbaseio/reactivecore/lib/actions/utils');