@appbaseio/reactivesearch-vue 1.29.0 → 2.0.0-alpha

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 +11162 -762
  2. package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
  3. package/dist/@appbaseio/reactivesearch-vue.umd.min.js +21 -5
  4. package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
  5. package/dist/cjs/{Button-e0b7c1f6.js → Button-446f819e.js} +1 -1
  6. package/dist/cjs/{CancelSvg-4aa35935.js → CancelSvg-9f258f4f.js} +1 -1
  7. package/dist/cjs/{Card-fd94ef07.js → Card-642547a8.js} +2 -2
  8. package/dist/cjs/{ComponentWrapper-10bad289.js → ComponentWrapper-ad3dad02.js} +2 -2
  9. package/dist/cjs/{Container-526efa6a.js → Container-daf30918.js} +1 -1
  10. package/dist/cjs/{DataSearch-eec21890.js → DataSearch-6cf29cf0.js} +236 -84
  11. package/dist/cjs/DataSearch.js +10 -10
  12. package/dist/cjs/{DropDown-e4381fcc.js → DropDown-c479bbb0.js} +5 -5
  13. package/dist/cjs/DynamicRangeSlider.js +8 -7
  14. package/dist/cjs/{Flex-f146cdad.js → Flex-aa517a13.js} +1 -1
  15. package/dist/cjs/{FormControlList-808dbcef.js → FormControlList-c195a592.js} +1 -1
  16. package/dist/cjs/{Input-0d7b25ad.js → Input-e6603a7e.js} +1 -1
  17. package/dist/cjs/{ListItem-b40adb04.js → ListItem-8c9e0d68.js} +2 -2
  18. package/dist/cjs/MultiDropdownList.js +13 -12
  19. package/dist/cjs/MultiList.js +11 -10
  20. package/dist/cjs/MultiRange.js +9 -8
  21. package/dist/cjs/Pagination-71e85fa9.js +182 -0
  22. package/dist/cjs/RangeInput.js +11 -10
  23. package/dist/cjs/RangeSlider.js +9 -8
  24. package/dist/cjs/ReactiveBase.js +69 -35
  25. package/dist/cjs/ReactiveComponent.js +6 -5
  26. package/dist/cjs/ReactiveGoogleMap.js +2336 -0
  27. package/dist/cjs/ReactiveList.js +22 -185
  28. package/dist/cjs/ResultCard.js +4 -4
  29. package/dist/cjs/ResultList.js +4 -4
  30. package/dist/cjs/SelectedFilters.js +45 -28
  31. package/dist/cjs/SingleDropdownList.js +13 -12
  32. package/dist/cjs/SingleList.js +11 -10
  33. package/dist/cjs/SingleRange.js +10 -9
  34. package/dist/cjs/StateProvider.js +30 -5
  35. package/dist/cjs/{Title-584a8cc8.js → Title-1de7d0f4.js} +1 -1
  36. package/dist/cjs/ToggleButton.js +10 -8
  37. package/dist/cjs/{_rollupPluginBabelHelpers-f127c8b7.js → _rollupPluginBabelHelpers-c705cbe6.js} +17 -2
  38. package/dist/cjs/{index-4509aa45.js → index-6a167fe0.js} +13 -1
  39. package/dist/cjs/index.js +24 -18
  40. package/dist/cjs/initReactivesearch.js +40 -8
  41. package/dist/cjs/{install-4886582d.js → install-99716d95.js} +252 -87
  42. package/dist/cjs/install.js +20 -18
  43. package/dist/cjs/{ssr-0ee35a09.js → ssr-3027b848.js} +1 -1
  44. package/dist/cjs/{utils-1219e1fe.js → utils-d6a52588.js} +1 -1
  45. package/dist/cjs/version.js +1 -1
  46. package/dist/cjs/{vueTypes-57d01f18.js → vueTypes-727b7c63.js} +30 -13
  47. package/dist/es/{Button-33de88e6.js → Button-d8bc15ea.js} +1 -1
  48. package/dist/es/{CancelSvg-c2c03a35.js → CancelSvg-4cfae5fd.js} +1 -1
  49. package/dist/es/{Card-6446f1b7.js → Card-450683f1.js} +2 -2
  50. package/dist/es/{ComponentWrapper-0f3431d1.js → ComponentWrapper-424e86fd.js} +2 -2
  51. package/dist/es/{Container-18b03fde.js → Container-ba826e96.js} +1 -1
  52. package/dist/es/{DataSearch-42f547cd.js → DataSearch-4888aa43.js} +236 -86
  53. package/dist/es/DataSearch.js +10 -10
  54. package/dist/es/{DropDown-ff6ad982.js → DropDown-05a644a5.js} +5 -5
  55. package/dist/es/DynamicRangeSlider.js +8 -7
  56. package/dist/es/{Flex-8770345d.js → Flex-1f0795c3.js} +1 -1
  57. package/dist/es/{FormControlList-704f8dee.js → FormControlList-c22d64f6.js} +1 -1
  58. package/dist/es/{Input-e339e63a.js → Input-7a2a9fac.js} +1 -1
  59. package/dist/es/{ListItem-8e8fb535.js → ListItem-cad14c5e.js} +2 -2
  60. package/dist/es/MultiDropdownList.js +13 -12
  61. package/dist/es/MultiList.js +11 -10
  62. package/dist/es/MultiRange.js +9 -8
  63. package/dist/es/Pagination-784bf143.js +177 -0
  64. package/dist/es/RangeInput.js +11 -10
  65. package/dist/es/RangeSlider.js +9 -8
  66. package/dist/es/ReactiveBase.js +70 -36
  67. package/dist/es/ReactiveComponent.js +6 -5
  68. package/dist/es/ReactiveGoogleMap.js +2327 -0
  69. package/dist/es/ReactiveList.js +21 -184
  70. package/dist/es/ResultCard.js +4 -4
  71. package/dist/es/ResultList.js +4 -4
  72. package/dist/es/SelectedFilters.js +45 -28
  73. package/dist/es/SingleDropdownList.js +13 -12
  74. package/dist/es/SingleList.js +11 -10
  75. package/dist/es/SingleRange.js +10 -9
  76. package/dist/es/StateProvider.js +30 -5
  77. package/dist/es/{Title-3522ff56.js → Title-3342664a.js} +1 -1
  78. package/dist/es/ToggleButton.js +10 -8
  79. package/dist/es/{_rollupPluginBabelHelpers-0f24d612.js → _rollupPluginBabelHelpers-76660dab.js} +17 -3
  80. package/dist/es/{index-78920565.js → index-7788a843.js} +13 -2
  81. package/dist/es/index.js +24 -19
  82. package/dist/es/initReactivesearch.js +41 -9
  83. package/dist/es/{install-54ebd72e.js → install-87984085.js} +252 -87
  84. package/dist/es/install.js +20 -18
  85. package/dist/es/{ssr-a41dfea9.js → ssr-b2c0b401.js} +1 -1
  86. package/dist/es/{utils-64a2e5f0.js → utils-9e68acee.js} +1 -1
  87. package/dist/es/version.js +1 -1
  88. package/dist/es/{vueTypes-687b2304.js → vueTypes-b8146772.js} +30 -13
  89. package/package.json +11 -5
@@ -6,7 +6,7 @@ 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-c705cbe6.js');
10
10
  var VueTypes = _interopDefault(require('vue-types'));
11
11
  var constants = require('@appbaseio/reactivecore/lib/utils/constants');
12
12
  var helper = require('@appbaseio/reactivecore/lib/utils/helper');
@@ -14,183 +14,18 @@ var emotion = require('emotion');
14
14
  var styled = require('@appbaseio/vue-emotion');
15
15
  var styled__default = _interopDefault(styled);
16
16
  require('polished');
17
- var Button = require('./Button-e0b7c1f6.js');
18
- var vueTypes = require('./vueTypes-57d01f18.js');
17
+ require('./Button-446f819e.js');
18
+ var vueTypes = require('./vueTypes-727b7c63.js');
19
+ var Pagination = require('./Pagination-71e85fa9.js');
19
20
  require('@appbaseio/reactivecore/lib/utils/transform');
20
21
  require('redux');
21
- var index = require('./index-4509aa45.js');
22
- var ComponentWrapper = require('./ComponentWrapper-10bad289.js');
22
+ var index = require('./index-6a167fe0.js');
23
+ var ComponentWrapper = require('./ComponentWrapper-ad3dad02.js');
23
24
  var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
24
- require('./Title-584a8cc8.js');
25
- var ListItem = require('./ListItem-b40adb04.js');
26
- var Card = require('./Card-fd94ef07.js');
27
- var Flex = require('./Flex-f146cdad.js');
28
-
29
- var getClassName = configureStore.helper.getClassName,
30
- handleA11yAction = configureStore.helper.handleA11yAction;
31
-
32
- function getStartPage(totalPages, currentPage, showEndPage) {
33
- var midValue = parseInt(totalPages / 2, 10);
34
- var start = currentPage - (showEndPage ? Math.ceil(midValue / 2) - 1 : midValue);
35
- return start > 1 ? start : 2;
36
- }
37
-
38
- var Pagination = {
39
- name: 'Pagination',
40
- functional: true,
41
- props: {
42
- currentPage: vueTypes.types.number,
43
- innerClass: vueTypes.types.style,
44
- pages: vueTypes.types.number,
45
- setPage: vueTypes.types.func,
46
- totalPages: vueTypes.types.number,
47
- showEndPage: VueTypes.bool,
48
- prevLabel: vueTypes.types.string,
49
- nextLabel: vueTypes.types.string
50
- },
51
- render: function render(createElement, context) {
52
- var h = arguments[0];
53
- var props = context.props;
54
-
55
- var onPrevPage = function onPrevPage() {
56
- if (props.currentPage) {
57
- props.setPage(props.currentPage - 1);
58
- }
59
- };
60
-
61
- var onNextPage = function onNextPage() {
62
- if (props.currentPage < props.totalPages - 1) {
63
- props.setPage(props.currentPage + 1);
64
- }
65
- };
66
-
67
- if (!props.totalPages) {
68
- return null;
69
- }
70
-
71
- var innerClassName = getClassName(props.innerClass, 'button');
72
- var primary = props.currentPage === 0;
73
- var className = innerClassName || primary ? innerClassName + " " + (primary ? 'active' : '') : '';
74
-
75
- var buildPaginationDOM = function buildPaginationDOM(position) {
76
- var pages = props.pages,
77
- currentPage = props.currentPage,
78
- totalPages = props.totalPages,
79
- setPage = props.setPage,
80
- showEndPage = props.showEndPage;
81
- var start = position === 'start' ? getStartPage(pages, currentPage, showEndPage) : Math.max(2, Math.ceil(totalPages - (pages - 1) / 2 + 1));
82
- var paginationButtons = [];
83
-
84
- if (start <= totalPages) {
85
- var totalPagesToShow = pages < totalPages ? start + (pages - 1) : totalPages + 1;
86
-
87
- if (showEndPage) {
88
- totalPagesToShow = position === 'start' ? start + (Math.ceil(pages / 2) - pages % 2) : totalPages + 1;
89
- }
90
-
91
- if (currentPage > totalPages - pages + 2) {
92
- start = Math.max(2, totalPages - pages + 2);
93
- totalPagesToShow = start + pages;
94
- }
95
-
96
- var _loop = function _loop(i) {
97
- var activeButton = currentPage === i - 1;
98
- var classNameBtn = innerClassName || activeButton ? innerClassName + " " + (activeButton ? 'active' : '') : '';
99
- var pageBtn = h(Button.Button, {
100
- "class": classNameBtn,
101
- "attrs": {
102
- "primary": activeButton,
103
- "tabIndex": "0",
104
- "alt": "page-" + i
105
- },
106
- "on": {
107
- "keyPress": function keyPress(event) {
108
- return handleA11yAction(event, function () {
109
- return setPage(i - 1);
110
- });
111
- },
112
- "click": function click() {
113
- return setPage(i - 1);
114
- }
115
- }
116
- }, [i]);
117
-
118
- if (i <= totalPages + 1) {
119
- paginationButtons.push(pageBtn);
120
- }
121
- };
122
-
123
- for (var i = start; i < Math.min(totalPages + 1, totalPagesToShow); i += 1) {
124
- _loop(i);
125
- }
126
- }
127
-
128
- return paginationButtons;
129
- };
130
-
131
- var buildIntermediatePaginationDom = function buildIntermediatePaginationDom() {
132
- var showEndPage = props.showEndPage,
133
- currentPage = props.currentPage,
134
- totalPages = props.totalPages,
135
- pages = props.pages;
136
- if (!showEndPage) return buildPaginationDOM('start');
137
-
138
- if (currentPage <= totalPages - pages + 2 || totalPages <= pages) {
139
- return buildPaginationDOM('start');
140
- }
141
-
142
- return null;
143
- };
144
-
145
- return h("div", {
146
- "class": Button.pagination + " " + getClassName(props.innerClass, 'pagination')
147
- }, [h(Button.Button, {
148
- "class": getClassName(props.innerClass, 'button') || '',
149
- "attrs": {
150
- "disabled": props.currentPage === 0,
151
- "tabIndex": "0"
152
- },
153
- "on": {
154
- "keyPress": function keyPress(event) {
155
- return handleA11yAction(event, onPrevPage);
156
- },
157
- "click": onPrevPage
158
- }
159
- }, [props.prevLabel || 'Prev']), h(Button.Button, {
160
- "class": className,
161
- "attrs": {
162
- "primary": primary,
163
- "tabIndex": "0"
164
- },
165
- "on": {
166
- "keyPress": function keyPress(event) {
167
- return handleA11yAction(event, function () {
168
- return props.setPage(0);
169
- });
170
- },
171
- "click": function click() {
172
- return props.setPage(0);
173
- }
174
- }
175
- }, ["1"]), props.showEndPage && props.currentPage >= Math.floor(props.pages / 2) + !!(props.pages % 2) ? h("span", ["..."]) : null, buildIntermediatePaginationDom(), props.showEndPage && props.pages > 2 && props.currentPage <= props.totalPages - Math.ceil(props.pages * 0.75) ? h("span", ["..."]) : null, props.showEndPage && props.totalPages >= props.pages && buildPaginationDOM('end'), h(Button.Button, {
176
- "class": getClassName(props.innerClass, 'button') || '',
177
- "attrs": {
178
- "disabled": props.currentPage >= props.totalPages - 1,
179
- "tabIndex": "0"
180
- },
181
- "on": {
182
- "keyPress": function keyPress(event) {
183
- return handleA11yAction(event, onNextPage);
184
- },
185
- "click": onNextPage
186
- }
187
- }, [props.nextLabel || 'Next'])]);
188
- }
189
- };
190
-
191
- Pagination.install = function (Vue) {
192
- Vue.component(Pagination.name, Pagination);
193
- };
25
+ require('./Title-1de7d0f4.js');
26
+ var ListItem = require('./ListItem-8c9e0d68.js');
27
+ var Card = require('./Card-642547a8.js');
28
+ var Flex = require('./Flex-aa517a13.js');
194
29
 
195
30
  var _templateObject;
196
31
  var PoweredByImage = styled__default('img')(_templateObject || (_templateObject = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\twidth: 110px;\n"])));
@@ -435,7 +270,7 @@ var setQueryOptions = configureStore.Actions.setQueryOptions,
435
270
  recordResultClick = configureStore.Actions.recordResultClick;
436
271
  var isEqual$1 = configureStore.helper.isEqual,
437
272
  getQueryOptions = configureStore.helper.getQueryOptions,
438
- getClassName$1 = configureStore.helper.getClassName,
273
+ getClassName = configureStore.helper.getClassName,
439
274
  parseHits = configureStore.helper.parseHits,
440
275
  getCompositeAggsQuery = configureStore.helper.getCompositeAggsQuery,
441
276
  getResultStats = configureStore.helper.getResultStats,
@@ -552,7 +387,8 @@ var ReactiveList = {
552
387
  nextLabel: vueTypes.types.string,
553
388
  distinctField: vueTypes.types.string,
554
389
  distinctFieldConfig: vueTypes.types.props,
555
- index: VueTypes.string
390
+ index: VueTypes.string,
391
+ endpoint: vueTypes.types.endpointConfig
556
392
  },
557
393
  computed: {
558
394
  shouldRenderPagination: function shouldRenderPagination() {
@@ -801,8 +637,8 @@ var ReactiveList = {
801
637
  "attrs": {
802
638
  "labelPosition": this.sortOptions ? 'right' : 'left'
803
639
  },
804
- "class": getClassName$1(this.$props.innerClass, 'resultsInfo')
805
- }, [this.sortOptions ? this.renderSortOptions() : null, this.$props.showResultStats && results.length ? this.renderStats() : null]), !this.isLoading && hits && hits.length === 0 ? this.renderNoResult() : null, this.shouldRenderPagination && (this.$props.paginationAt === 'top' || this.$props.paginationAt === 'both') ? h(Pagination, {
640
+ "class": getClassName(this.$props.innerClass, 'resultsInfo')
641
+ }, [this.sortOptions ? this.renderSortOptions() : null, this.$props.showResultStats && results.length ? this.renderStats() : null]), !this.isLoading && hits && hits.length === 0 ? this.renderNoResult() : null, this.shouldRenderPagination && (this.$props.paginationAt === 'top' || this.$props.paginationAt === 'both') ? h(Pagination.Pagination, {
806
642
  "attrs": {
807
643
  "pages": this.$props.pages,
808
644
  "totalPages": this.totalPages,
@@ -818,7 +654,7 @@ var ReactiveList = {
818
654
  margin: '20px 0',
819
655
  color: '#666'
820
656
  }
821
- }, ["Loading..."]) : null, this.shouldRenderPagination && (this.$props.paginationAt === 'bottom' || this.$props.paginationAt === 'both') ? h(Pagination, {
657
+ }, ["Loading..."]) : null, this.shouldRenderPagination && (this.$props.paginationAt === 'bottom' || this.$props.paginationAt === 'both') ? h(Pagination.Pagination, {
822
658
  "attrs": {
823
659
  "pages": this.$props.pages,
824
660
  "totalPages": Math.ceil(this.$data.total / this.$props.size),
@@ -833,7 +669,7 @@ var ReactiveList = {
833
669
  "attrs": {
834
670
  "direction": "row-reverse"
835
671
  },
836
- "class": getClassName$1(this.$props.innerClass, 'poweredBy')
672
+ "class": getClassName(this.$props.innerClass, 'poweredBy')
837
673
  }, [h(PoweredBy)]) : null]);
838
674
  },
839
675
  methods: {
@@ -853,10 +689,11 @@ var ReactiveList = {
853
689
  var size = this.$props.size;
854
690
  var renderItem = this.$scopedSlots.renderItem || this.$props.renderItem;
855
691
  var element = this.hasCustomRender ? this.getComponent() : h("div", {
856
- "class": this.$props.listClass + " " + getClassName$1(this.$props.innerClass, 'list')
692
+ "class": this.$props.listClass + " " + getClassName(this.$props.innerClass, 'list')
857
693
  }, [this.data.map(function (item, index) {
858
694
  return renderItem({
859
695
  item: item,
696
+ count: _this2.currentPageState * size + index + 1,
860
697
  triggerClickAnalytics: function triggerClickAnalytics() {
861
698
  return _this2.triggerClickAnalytics(_this2.currentPageState * size + index);
862
699
  }
@@ -971,7 +808,7 @@ var ReactiveList = {
971
808
 
972
809
  if (this.stats.numberOfResults) {
973
810
  return h("p", {
974
- "class": resultStats + " " + getClassName$1(this.$props.innerClass, 'resultStats')
811
+ "class": resultStats + " " + getClassName(this.$props.innerClass, 'resultStats')
975
812
  }, [this.stats.numberOfResults, " results found in ", this.stats.time || 0, "ms"]);
976
813
  }
977
814
 
@@ -986,7 +823,7 @@ var ReactiveList = {
986
823
  }
987
824
 
988
825
  return h("p", {
989
- "class": getClassName$1(this.$props.innerClass, 'noResults') || null
826
+ "class": getClassName(this.$props.innerClass, 'noResults') || null
990
827
  }, [index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults]);
991
828
  },
992
829
  handleSortChange: function handleSortChange(e) {
@@ -1038,7 +875,7 @@ var ReactiveList = {
1038
875
  renderSortOptions: function renderSortOptions() {
1039
876
  var h = this.$createElement;
1040
877
  return h("select", {
1041
- "class": sortOptions + " " + getClassName$1(this.$props.innerClass, 'sortOptions'),
878
+ "class": sortOptions + " " + getClassName(this.$props.innerClass, 'sortOptions'),
1042
879
  "attrs": {
1043
880
  "name": "sort-options",
1044
881
  "aria-label": "Sort options"
@@ -4,15 +4,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
6
6
 
7
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
7
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-c705cbe6.js');
8
8
  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-57d01f18.js');
12
+ var vueTypes = require('./vueTypes-727b7c63.js');
13
13
  var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
14
- var Title = require('./Title-584a8cc8.js');
15
- var Card = require('./Card-fd94ef07.js');
14
+ var Title = require('./Title-1de7d0f4.js');
15
+ var Card = require('./Card-642547a8.js');
16
16
 
17
17
  var ResultCardTitle = {
18
18
  name: 'ResultCardTitle',
@@ -4,15 +4,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
6
6
 
7
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
7
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-c705cbe6.js');
8
8
  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-57d01f18.js');
12
+ var vueTypes = require('./vueTypes-727b7c63.js');
13
13
  var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
14
- var Title = require('./Title-584a8cc8.js');
15
- var ListItem = require('./ListItem-b40adb04.js');
14
+ var Title = require('./Title-1de7d0f4.js');
15
+ var ListItem = require('./ListItem-8c9e0d68.js');
16
16
 
17
17
  var ResultListContent = {
18
18
  name: 'ResultListContent',
@@ -6,18 +6,18 @@ 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-c705cbe6.js');
10
10
  var VueTypes = _interopDefault(require('vue-types'));
11
11
  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-e0b7c1f6.js');
16
- var vueTypes = require('./vueTypes-57d01f18.js');
15
+ var Button = require('./Button-446f819e.js');
16
+ var vueTypes = require('./vueTypes-727b7c63.js');
17
17
  require('redux');
18
- var index = require('./index-4509aa45.js');
19
- var Title = require('./Title-584a8cc8.js');
20
- var Container = require('./Container-526efa6a.js');
18
+ var index = require('./index-6a167fe0.js');
19
+ var Title = require('./Title-1de7d0f4.js');
20
+ var Container = require('./Container-daf30918.js');
21
21
 
22
22
  var setValue = configureStore.Actions.setValue,
23
23
  clearValues = configureStore.Actions.clearValues,
@@ -51,6 +51,7 @@ var SelectedFilters = {
51
51
  components: this.components,
52
52
  selectedValues: this.selectedValues,
53
53
  clearValues: this.clearValues,
54
+ clearValue: this.clearValue,
54
55
  setValue: this.setValue,
55
56
  resetValuesToDefault: this.resetValuesToDefault
56
57
  });
@@ -62,7 +63,7 @@ var SelectedFilters = {
62
63
  "class": Button.filters(this.theme) + " " + (this.$props.className || '')
63
64
  }, [this.$props.title && hasValues && h(Title.Title, {
64
65
  "class": getClassName(this.$props.innerClass, 'title') || ''
65
- }, [this.$props.title]), filtersToRender, this.$props.showClearAll && hasValues ? h(Button.Button, {
66
+ }, [this.$props.title]), filtersToRender, this.$props.showClearAll && hasValues && filtersToRender.length > 1 ? h(Button.Button, {
66
67
  "class": getClassName(this.$props.innerClass, 'button') || '',
67
68
  "on": _rollupPluginBabelHelpers._extends({}, {
68
69
  click: this.clearValues,
@@ -99,6 +100,20 @@ var SelectedFilters = {
99
100
 
100
101
  this.$emit('clear', resetToValues);
101
102
  },
103
+ clearValue: function clearValue(componentId) {
104
+ var resetToDefault = this.resetToDefault,
105
+ resetToValues = this.resetToValues;
106
+
107
+ if (resetToDefault) {
108
+ this.resetValuesToDefault(this.components.filter(function (component) {
109
+ return component !== componentId;
110
+ }));
111
+ } else {
112
+ this.setValue(componentId, (resetToValues == null ? void 0 : resetToValues[componentId]) || null);
113
+ }
114
+
115
+ this.$emit('clear', resetToValues == null ? void 0 : resetToValues[componentId]);
116
+ },
102
117
  renderValue: function renderValue(value, isArray) {
103
118
  var _this2 = this;
104
119
 
@@ -122,39 +137,41 @@ var SelectedFilters = {
122
137
 
123
138
  return value;
124
139
  },
140
+ renderFilterButton: function renderFilterButton(component, keyProp, handleRemove, label) {
141
+ var h = this.$createElement;
142
+ return h(Button.Button, {
143
+ "class": getClassName(this.$props.innerClass, 'button') || '',
144
+ "key": keyProp,
145
+ "on": _rollupPluginBabelHelpers._extends({}, {
146
+ click: handleRemove,
147
+ keypress: function keypress(event) {
148
+ return handleA11yAction(event, handleRemove);
149
+ }
150
+ }),
151
+ "attrs": {
152
+ "tabIndex": "0"
153
+ }
154
+ }, [h("span", [label]), h("span", ["\u2715"])]);
155
+ },
125
156
  renderFilters: function renderFilters() {
126
157
  var _this3 = this;
127
158
 
128
- var h = this.$createElement;
129
159
  var selectedValues = this.selectedValues;
130
- return Object.keys(selectedValues).filter(function (id) {
160
+ var filterComponents = Object.keys(selectedValues).filter(function (id) {
131
161
  return _this3.components.includes(id) && selectedValues[id].showFilter;
132
- }).map(function (component, index) {
162
+ });
163
+ return filterComponents.map(function (component, index$1) {
133
164
  var _selectedValues$compo = selectedValues[component],
134
165
  label = _selectedValues$compo.label,
135
166
  value = _selectedValues$compo.value;
136
- var isArray = Array.isArray(value);
167
+ var isArray = Array.isArray(value); // default behaviour
137
168
 
138
169
  if (label && (isArray && value.length || !isArray && value)) {
139
170
  var valueToRender = _this3.renderValue(value, isArray);
140
171
 
141
- return h(Button.Button, {
142
- "class": getClassName(_this3.$props.innerClass, 'button') || '',
143
- "key": component + "-" + (index + 1),
144
- "on": _rollupPluginBabelHelpers._extends({}, {
145
- click: function click() {
146
- return _this3.remove(component, value);
147
- },
148
- keypress: function keypress(event) {
149
- return handleA11yAction(event, function () {
150
- return _this3.remove(component, value);
151
- });
152
- }
153
- }),
154
- "attrs": {
155
- "tabIndex": "0"
156
- }
157
- }, [h("span", [selectedValues[component].label, ": ", valueToRender]), h("span", ["\u2715"])]);
172
+ return _this3.renderFilterButton(component, component + "-" + (index$1 + 1), function () {
173
+ return _this3.remove(component, value);
174
+ }, selectedValues[component].label + ": " + index.decodeHtml(valueToRender));
158
175
  }
159
176
 
160
177
  return null;
@@ -6,27 +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-c705cbe6.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-e0b7c1f6.js');
16
- var vueTypes = require('./vueTypes-57d01f18.js');
15
+ var Button = require('./Button-446f819e.js');
16
+ var vueTypes = require('./vueTypes-727b7c63.js');
17
17
  require('@appbaseio/reactivecore/lib/utils/transform');
18
18
  require('redux');
19
- var index = require('./index-4509aa45.js');
20
- var ComponentWrapper = require('./ComponentWrapper-10bad289.js');
19
+ var index = require('./index-6a167fe0.js');
20
+ var ComponentWrapper = require('./ComponentWrapper-ad3dad02.js');
21
21
  require('@vue/babel-helper-vue-jsx-merge-props');
22
- var Title = require('./Title-584a8cc8.js');
23
- require('./CancelSvg-4aa35935.js');
24
- require('./Input-0d7b25ad.js');
22
+ var Title = require('./Title-1de7d0f4.js');
23
+ require('./CancelSvg-9f258f4f.js');
24
+ require('./Input-e6603a7e.js');
25
25
  require('compute-scroll-into-view');
26
- var Container = require('./Container-526efa6a.js');
26
+ var Container = require('./Container-daf30918.js');
27
27
  require('@appbaseio/reactivecore/lib/utils/suggestions');
28
- var utils = require('./utils-1219e1fe.js');
29
- var DropDown = require('./DropDown-e4381fcc.js');
28
+ var utils = require('./utils-d6a52588.js');
29
+ var DropDown = require('./DropDown-c479bbb0.js');
30
30
 
31
31
  var updateQuery = configureStore.Actions.updateQuery,
32
32
  setQueryOptions = configureStore.Actions.setQueryOptions,
@@ -88,7 +88,8 @@ var SingleDropdownList = {
88
88
  loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.any]).def('Load More'),
89
89
  nestedField: vueTypes.types.string,
90
90
  index: VueTypes.string,
91
- searchPlaceholder: VueTypes.string.def('Type here to search...')
91
+ searchPlaceholder: VueTypes.string.def('Type here to search...'),
92
+ endpoint: vueTypes.types.endpointConfig
92
93
  },
93
94
  created: function created() {
94
95
  if (!this.enableAppbase && this.$props.index) {
@@ -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-c705cbe6.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-727b7c63.js');
16
16
  require('@appbaseio/reactivecore/lib/utils/transform');
17
17
  require('redux');
18
- var index = require('./index-4509aa45.js');
19
- var ComponentWrapper = require('./ComponentWrapper-10bad289.js');
20
- var Title = require('./Title-584a8cc8.js');
21
- var Input = require('./Input-0d7b25ad.js');
22
- var Container = require('./Container-526efa6a.js');
18
+ var index = require('./index-6a167fe0.js');
19
+ var ComponentWrapper = require('./ComponentWrapper-ad3dad02.js');
20
+ var Title = require('./Title-1de7d0f4.js');
21
+ var Input = require('./Input-e6603a7e.js');
22
+ var Container = require('./Container-daf30918.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-c195a592.js');
25
+ var utils = require('./utils-d6a52588.js');
26
26
 
27
27
  var updateQuery = configureStore.Actions.updateQuery,
28
28
  setQueryOptions = configureStore.Actions.setQueryOptions,
@@ -66,7 +66,8 @@ var SingleList = {
66
66
  missingLabel: VueTypes.string.def('N/A'),
67
67
  nestedField: vueTypes.types.string,
68
68
  index: VueTypes.string,
69
- enableStrictSelection: VueTypes.bool.def(false)
69
+ enableStrictSelection: VueTypes.bool.def(false),
70
+ endpoint: vueTypes.types.endpointConfig
70
71
  },
71
72
  data: function data() {
72
73
  var props = this.$props;
@@ -6,20 +6,20 @@ 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
- require('./_rollupPluginBabelHelpers-f127c8b7.js');
9
+ require('./_rollupPluginBabelHelpers-c705cbe6.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-727b7c63.js');
16
16
  require('@appbaseio/reactivecore/lib/utils/transform');
17
17
  require('redux');
18
- var index = require('./index-4509aa45.js');
19
- var ComponentWrapper = require('./ComponentWrapper-10bad289.js');
20
- var Title = require('./Title-584a8cc8.js');
21
- var Container = require('./Container-526efa6a.js');
22
- var FormControlList = require('./FormControlList-808dbcef.js');
18
+ var index = require('./index-6a167fe0.js');
19
+ var ComponentWrapper = require('./ComponentWrapper-ad3dad02.js');
20
+ var Title = require('./Title-1de7d0f4.js');
21
+ var Container = require('./Container-daf30918.js');
22
+ var FormControlList = require('./FormControlList-c195a592.js');
23
23
 
24
24
  var updateQuery = configureStore.Actions.updateQuery,
25
25
  setQueryOptions = configureStore.Actions.setQueryOptions,
@@ -54,7 +54,8 @@ var SingleRange = {
54
54
  title: vueTypes.types.title,
55
55
  URLParams: VueTypes.bool.def(false),
56
56
  nestedField: vueTypes.types.string,
57
- index: VueTypes.string
57
+ index: VueTypes.string,
58
+ endpoint: vueTypes.types.endpointConfig
58
59
  },
59
60
  created: function created() {
60
61
  if (!this.enableAppbase && this.$props.index) {
@@ -140,7 +141,7 @@ var SingleRange = {
140
141
  props = this.$props;
141
142
  }
142
143
 
143
- var currentValue = SingleRange.parseValue(value, props);
144
+ var currentValue = typeof value === 'string' ? SingleRange.parseValue(value, props) : value;
144
145
 
145
146
  var performUpdate = function performUpdate() {
146
147
  _this2.currentValue = currentValue;
@@ -6,11 +6,13 @@ 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-c705cbe6.js');
10
10
  var VueTypes = _interopDefault(require('vue-types'));
11
11
  require('@appbaseio/reactivecore/lib/utils/constants');
12
+ var transform = require('@appbaseio/reactivecore/lib/utils/transform');
12
13
  require('redux');
13
- var index = require('./index-4509aa45.js');
14
+ var index = require('./index-6a167fe0.js');
15
+ var value = require('@appbaseio/reactivecore/lib/actions/value');
14
16
 
15
17
  var getSearchState = configureStore.helper.getSearchState;
16
18
  var defaultKeys = ['hits', 'value', 'aggregations', 'error'];
@@ -154,13 +156,32 @@ var StateProvider = {
154
156
  if (this.isStateChanged(newVal, oldVal)) {
155
157
  this.searchState = filterByKeys(getSearchState(filterProps(this.searchStateProps)), this.includeKeys);
156
158
  }
159
+ },
160
+ setSearchState: function setSearchState(valuesMap) {
161
+ if (valuesMap === void 0) {
162
+ valuesMap = {};
163
+ }
164
+
165
+ var components = this.components;
166
+ var computedValuesMap = {};
167
+ components.filter(function (component) {
168
+ return !transform.isInternalComponent(component);
169
+ }).forEach(function (component) {
170
+ if (component in valuesMap) {
171
+ computedValuesMap[component] = valuesMap[component];
172
+ } else {
173
+ computedValuesMap[component] = null;
174
+ }
175
+ });
176
+ this.setValues(computedValuesMap);
157
177
  }
158
178
  },
159
179
  render: function render() {
160
180
  var searchState = this.searchState;
161
181
  var dom = this.$scopedSlots["default"];
162
182
  return dom ? dom({
163
- searchState: searchState
183
+ searchState: searchState,
184
+ setSearchState: this.setSearchState
164
185
  }) : null;
165
186
  }
166
187
  };
@@ -178,11 +199,15 @@ var mapStateToProps = function mapStateToProps(state, props) {
178
199
  promotedResults: filterByComponentIds(state.promotedResults, props),
179
200
  customData: filterByComponentIds(state.customData, props),
180
201
  settings: filterByComponentIds(state.settings, props),
181
- rawData: filterByComponentIds(state.rawData, props)
202
+ rawData: filterByComponentIds(state.rawData, props),
203
+ components: filterByComponentIds(state.components, props)
182
204
  };
183
205
  };
184
206
 
185
- var StateProviderConnected = index.connect(mapStateToProps, {})(StateProvider);
207
+ var mapDispatchtoProps = {
208
+ setValues: value.setValues
209
+ };
210
+ var StateProviderConnected = index.connect(mapStateToProps, mapDispatchtoProps)(StateProvider);
186
211
 
187
212
  StateProvider.install = function (Vue) {
188
213
  Vue.component(StateProvider.name, StateProviderConnected);