@appbaseio/reactivesearch-vue 1.24.2 → 1.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@appbaseio/reactivesearch-vue.umd.js +481 -279
- package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js +5 -5
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
- package/dist/cjs/{DownShift-62e82255.js → CancelSvg-4aa35935.js} +58 -14
- package/dist/cjs/DataSearch.js +31 -82
- package/dist/cjs/{DropDown-6815b9b6.js → DropDown-cf9bfffc.js} +60 -23
- package/dist/cjs/DynamicRangeSlider.js +9 -6
- package/dist/cjs/MultiDropdownList.js +14 -7
- package/dist/cjs/MultiList.js +6 -5
- package/dist/cjs/MultiRange.js +2 -2
- package/dist/cjs/RangeInput.js +3 -3
- package/dist/cjs/RangeSlider.js +17 -20
- package/dist/cjs/ReactiveBase.js +5 -3
- package/dist/cjs/ReactiveComponent.js +12 -12
- package/dist/cjs/ReactiveList.js +54 -42
- package/dist/cjs/ResultCard.js +1 -1
- package/dist/cjs/ResultList.js +1 -1
- package/dist/cjs/SelectedFilters.js +7 -5
- package/dist/cjs/SingleDropdownList.js +14 -7
- package/dist/cjs/SingleList.js +7 -6
- package/dist/cjs/SingleRange.js +2 -2
- package/dist/cjs/StateProvider.js +6 -2
- package/dist/cjs/ToggleButton.js +3 -3
- package/dist/cjs/index.js +7 -4
- package/dist/cjs/initReactivesearch.js +31 -12
- package/dist/cjs/install.js +5 -4
- package/dist/cjs/ssr-0ee35a09.js +39 -0
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/{vueTypes-4c19b4c8.js → vueTypes-57d01f18.js} +3 -3
- package/dist/es/{DownShift-3558d402.js → CancelSvg-c2c03a35.js} +55 -16
- package/dist/es/DataSearch.js +21 -72
- package/dist/es/{DropDown-035c804f.js → DropDown-c8da0a2c.js} +59 -22
- package/dist/es/DynamicRangeSlider.js +9 -6
- package/dist/es/MultiDropdownList.js +14 -7
- package/dist/es/MultiList.js +6 -5
- package/dist/es/MultiRange.js +2 -2
- package/dist/es/RangeInput.js +3 -3
- package/dist/es/RangeSlider.js +17 -20
- package/dist/es/ReactiveBase.js +5 -3
- package/dist/es/ReactiveComponent.js +12 -12
- package/dist/es/ReactiveList.js +54 -42
- package/dist/es/ResultCard.js +1 -1
- package/dist/es/ResultList.js +1 -1
- package/dist/es/SelectedFilters.js +7 -5
- package/dist/es/SingleDropdownList.js +14 -7
- package/dist/es/SingleList.js +7 -6
- package/dist/es/SingleRange.js +2 -2
- package/dist/es/StateProvider.js +6 -2
- package/dist/es/ToggleButton.js +3 -3
- package/dist/es/index.js +7 -4
- package/dist/es/initReactivesearch.js +31 -12
- package/dist/es/install.js +5 -4
- package/dist/es/ssr-a41dfea9.js +33 -0
- package/dist/es/version.js +1 -1
- package/dist/es/{vueTypes-fb61bb7b.js → vueTypes-687b2304.js} +3 -3
- package/package.json +3 -3
- package/dist/cjs/ssr-08e95ede.js +0 -39
- package/dist/es/ssr-5d255b08.js +0 -33
|
@@ -13,18 +13,19 @@ require('emotion');
|
|
|
13
13
|
require('@appbaseio/vue-emotion');
|
|
14
14
|
require('polished');
|
|
15
15
|
var Button = require('./Button-11307285.js');
|
|
16
|
-
var vueTypes = require('./vueTypes-
|
|
16
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
17
17
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
18
18
|
require('redux');
|
|
19
19
|
var index = require('./index-89c39a9e.js');
|
|
20
20
|
var ComponentWrapper = require('./ComponentWrapper-32481890.js');
|
|
21
21
|
var Title = require('./Title-584a8cc8.js');
|
|
22
|
+
require('./CancelSvg-4aa35935.js');
|
|
22
23
|
require('./Input-3cc3fa59.js');
|
|
23
24
|
require('compute-scroll-into-view');
|
|
24
|
-
require('./DownShift-62e82255.js');
|
|
25
25
|
var Container = require('./Container-526efa6a.js');
|
|
26
|
+
require('@appbaseio/reactivecore/lib/utils/suggestions');
|
|
26
27
|
var utils = require('./utils-1219e1fe.js');
|
|
27
|
-
var DropDown = require('./DropDown-
|
|
28
|
+
var DropDown = require('./DropDown-cf9bfffc.js');
|
|
28
29
|
|
|
29
30
|
var updateQuery = configureStore.Actions.updateQuery,
|
|
30
31
|
setQueryOptions = configureStore.Actions.setQueryOptions,
|
|
@@ -81,10 +82,12 @@ var MultiDropdownList = {
|
|
|
81
82
|
showMissing: VueTypes.bool.def(false),
|
|
82
83
|
missingLabel: VueTypes.string.def('N/A'),
|
|
83
84
|
showSearch: VueTypes.bool.def(false),
|
|
85
|
+
showClear: VueTypes.bool.def(false),
|
|
84
86
|
showLoadMore: VueTypes.bool.def(false),
|
|
85
87
|
loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.any]).def('Load More'),
|
|
86
88
|
nestedField: vueTypes.types.string,
|
|
87
|
-
index: VueTypes.string
|
|
89
|
+
index: VueTypes.string,
|
|
90
|
+
searchPlaceholder: VueTypes.string.def('Type here to search...')
|
|
88
91
|
},
|
|
89
92
|
created: function created() {
|
|
90
93
|
if (!this.enableAppbase && this.$props.index) {
|
|
@@ -212,7 +215,9 @@ var MultiDropdownList = {
|
|
|
212
215
|
if (!this.hasCustomRenderer && this.$data.modifiedOptions.length === 0 && !this.isLoading) {
|
|
213
216
|
if (renderNoResults && index.isFunction(renderNoResults)) {
|
|
214
217
|
return h("div", [renderNoResults()]);
|
|
215
|
-
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
if (renderNoResults && !index.isFunction(renderNoResults)) {
|
|
216
221
|
return renderNoResults;
|
|
217
222
|
}
|
|
218
223
|
|
|
@@ -251,6 +256,8 @@ var MultiDropdownList = {
|
|
|
251
256
|
"renderItem": renderItemCalc,
|
|
252
257
|
"renderNoResults": this.$scopedSlots.renderNoResults || this.$props.renderNoResults,
|
|
253
258
|
"showSearch": this.$props.showSearch,
|
|
259
|
+
"showClear": this.$props.showClear,
|
|
260
|
+
"searchPlaceholder": this.$props.searchPlaceholder,
|
|
254
261
|
"transformData": this.$props.transformData,
|
|
255
262
|
"footer": showLoadMore && !isLastBucket && h("div", {
|
|
256
263
|
"attrs": {
|
|
@@ -369,7 +376,7 @@ var MultiDropdownList = {
|
|
|
369
376
|
index.updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
|
|
370
377
|
}
|
|
371
378
|
|
|
372
|
-
this.setQueryOptions(this.internalComponent, defaultQueryOptions);
|
|
379
|
+
this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
|
|
373
380
|
this.updateQuery({
|
|
374
381
|
componentId: this.internalComponent,
|
|
375
382
|
query: query,
|
|
@@ -390,7 +397,7 @@ var MultiDropdownList = {
|
|
|
390
397
|
index.updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
|
|
391
398
|
}
|
|
392
399
|
|
|
393
|
-
this.setQueryOptions(props.componentId, customQueryOptions);
|
|
400
|
+
this.setQueryOptions(props.componentId, customQueryOptions, false);
|
|
394
401
|
this.updateQuery({
|
|
395
402
|
componentId: props.componentId,
|
|
396
403
|
query: query,
|
package/dist/cjs/MultiList.js
CHANGED
|
@@ -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-
|
|
15
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
16
16
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
17
17
|
require('redux');
|
|
18
18
|
var index = require('./index-89c39a9e.js');
|
|
@@ -20,6 +20,7 @@ var ComponentWrapper = require('./ComponentWrapper-32481890.js');
|
|
|
20
20
|
var Title = require('./Title-584a8cc8.js');
|
|
21
21
|
var Input = require('./Input-3cc3fa59.js');
|
|
22
22
|
var Container = require('./Container-526efa6a.js');
|
|
23
|
+
var suggestions = require('@appbaseio/reactivecore/lib/utils/suggestions');
|
|
23
24
|
var FormControlList = require('./FormControlList-808dbcef.js');
|
|
24
25
|
var utils = require('./utils-1219e1fe.js');
|
|
25
26
|
|
|
@@ -40,7 +41,7 @@ var MultiList = {
|
|
|
40
41
|
queryFormat: VueTypes.oneOf(['and', 'or']).def('or'),
|
|
41
42
|
showCheckbox: VueTypes.bool.def(true),
|
|
42
43
|
beforeValueChange: vueTypes.types.func,
|
|
43
|
-
className:
|
|
44
|
+
className: VueTypes.string.def(''),
|
|
44
45
|
componentId: vueTypes.types.stringRequired,
|
|
45
46
|
customQuery: vueTypes.types.func,
|
|
46
47
|
dataField: vueTypes.types.stringRequired,
|
|
@@ -187,7 +188,7 @@ var MultiList = {
|
|
|
187
188
|
var filteredItemsToRender = itemsToRender.filter(function (item) {
|
|
188
189
|
if (String(item.key).length) {
|
|
189
190
|
if (_this2.$props.showSearch && _this2.$data.searchTerm) {
|
|
190
|
-
return String(item.key).toLowerCase().includes(_this2.$data.searchTerm.toLowerCase());
|
|
191
|
+
return suggestions.replaceDiacritics(String(item.key)).toLowerCase().includes(suggestions.replaceDiacritics(_this2.$data.searchTerm).toLowerCase());
|
|
191
192
|
}
|
|
192
193
|
|
|
193
194
|
return true;
|
|
@@ -355,7 +356,7 @@ var MultiList = {
|
|
|
355
356
|
index.updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
|
|
356
357
|
}
|
|
357
358
|
|
|
358
|
-
this.setQueryOptions(this.internalComponent, defaultQueryOptions);
|
|
359
|
+
this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
|
|
359
360
|
this.updateQuery({
|
|
360
361
|
componentId: this.internalComponent,
|
|
361
362
|
query: query,
|
|
@@ -376,7 +377,7 @@ var MultiList = {
|
|
|
376
377
|
index.updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
|
|
377
378
|
}
|
|
378
379
|
|
|
379
|
-
this.setQueryOptions(props.componentId, customQueryOptions);
|
|
380
|
+
this.setQueryOptions(props.componentId, customQueryOptions, false);
|
|
380
381
|
this.updateQuery({
|
|
381
382
|
componentId: props.componentId,
|
|
382
383
|
query: query,
|
package/dist/cjs/MultiRange.js
CHANGED
|
@@ -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-
|
|
15
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
16
16
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
17
17
|
require('redux');
|
|
18
18
|
var index = require('./index-89c39a9e.js');
|
|
@@ -148,7 +148,7 @@ var MultiRange = {
|
|
|
148
148
|
index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.currentValue);
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
-
this.setQueryOptions(props.componentId, customQueryOptions);
|
|
151
|
+
this.setQueryOptions(props.componentId, customQueryOptions, false);
|
|
152
152
|
this.updateQuery({
|
|
153
153
|
componentId: props.componentId,
|
|
154
154
|
query: query,
|
package/dist/cjs/RangeInput.js
CHANGED
|
@@ -13,7 +13,7 @@ var emotion = require('emotion');
|
|
|
13
13
|
var styled = require('@appbaseio/vue-emotion');
|
|
14
14
|
var styled__default = _interopDefault(styled);
|
|
15
15
|
require('polished');
|
|
16
|
-
var vueTypes = require('./vueTypes-
|
|
16
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
17
17
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
18
18
|
require('redux');
|
|
19
19
|
var index = require('./index-89c39a9e.js');
|
|
@@ -23,7 +23,7 @@ var Flex = require('./Flex-f146cdad.js');
|
|
|
23
23
|
var Input = require('./Input-3cc3fa59.js');
|
|
24
24
|
var Container = require('./Container-526efa6a.js');
|
|
25
25
|
require('vue-no-ssr');
|
|
26
|
-
require('./ssr-
|
|
26
|
+
require('./ssr-0ee35a09.js');
|
|
27
27
|
var RangeSlider = require('./RangeSlider.js');
|
|
28
28
|
|
|
29
29
|
var _templateObject, _templateObject2;
|
|
@@ -146,7 +146,7 @@ var RangeInput = {
|
|
|
146
146
|
}
|
|
147
147
|
},
|
|
148
148
|
handleOnChange: function handleOnChange(value) {
|
|
149
|
-
this.handleChange(value, 'change');
|
|
149
|
+
this.handleChange(value || this.$props.range, 'change');
|
|
150
150
|
},
|
|
151
151
|
handleValueChange: function handleValueChange(value) {
|
|
152
152
|
this.handleChange(value, 'value-change');
|
package/dist/cjs/RangeSlider.js
CHANGED
|
@@ -10,7 +10,7 @@ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.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-
|
|
13
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
14
14
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
15
15
|
require('redux');
|
|
16
16
|
var index = require('./index-89c39a9e.js');
|
|
@@ -18,7 +18,7 @@ var ComponentWrapper = require('./ComponentWrapper-32481890.js');
|
|
|
18
18
|
var Title = require('./Title-584a8cc8.js');
|
|
19
19
|
var Container = require('./Container-526efa6a.js');
|
|
20
20
|
var NoSSR = _interopDefault(require('vue-no-ssr'));
|
|
21
|
-
var ssr = require('./ssr-
|
|
21
|
+
var ssr = require('./ssr-0ee35a09.js');
|
|
22
22
|
|
|
23
23
|
var updateQuery = configureStore.Actions.updateQuery,
|
|
24
24
|
setQueryOptions = configureStore.Actions.setQueryOptions,
|
|
@@ -80,32 +80,28 @@ var RangeSlider = {
|
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
|
-
handleSlider: function handleSlider(
|
|
84
|
-
var
|
|
85
|
-
|
|
86
|
-
clearTimeout(this.handleSliderChange._tId);
|
|
87
|
-
this.handleSliderChange._tId = setTimeout(function () {
|
|
88
|
-
_this.handleSliderChange(values);
|
|
89
|
-
}, 100);
|
|
83
|
+
handleSlider: function handleSlider() {
|
|
84
|
+
var sliderValues = this.$refs.slider.getValue();
|
|
85
|
+
this.handleSliderChange(sliderValues);
|
|
90
86
|
},
|
|
91
87
|
handleChange: function handleChange(currentValue, props) {
|
|
92
|
-
var
|
|
88
|
+
var _this = this;
|
|
93
89
|
|
|
94
90
|
if (props === void 0) {
|
|
95
91
|
props = this.$props;
|
|
96
92
|
}
|
|
97
93
|
|
|
98
94
|
var performUpdate = function performUpdate() {
|
|
99
|
-
|
|
95
|
+
_this.currentValue = currentValue;
|
|
100
96
|
|
|
101
|
-
|
|
97
|
+
_this.updateQueryHandler([currentValue[0], currentValue[1]], props);
|
|
102
98
|
|
|
103
|
-
|
|
99
|
+
_this.$emit('valueChange', {
|
|
104
100
|
start: currentValue[0],
|
|
105
101
|
end: currentValue[1]
|
|
106
102
|
});
|
|
107
103
|
|
|
108
|
-
|
|
104
|
+
_this.$emit('value-change', {
|
|
109
105
|
start: currentValue[0],
|
|
110
106
|
end: currentValue[1]
|
|
111
107
|
});
|
|
@@ -137,7 +133,7 @@ var RangeSlider = {
|
|
|
137
133
|
currentEnd = value[1]; // check if the slider is at its initial position
|
|
138
134
|
|
|
139
135
|
var isInitialValue = currentStart === start && currentEnd === end;
|
|
140
|
-
this.setQueryOptions(props.componentId, customQueryOptions);
|
|
136
|
+
this.setQueryOptions(props.componentId, customQueryOptions, false);
|
|
141
137
|
this.updateQuery({
|
|
142
138
|
componentId: props.componentId,
|
|
143
139
|
query: query,
|
|
@@ -216,12 +212,13 @@ var RangeSlider = {
|
|
|
216
212
|
"max": this.$props.range.end,
|
|
217
213
|
"dotSize": 20,
|
|
218
214
|
"height": 4,
|
|
219
|
-
"enable-cross": false
|
|
215
|
+
"enable-cross": false,
|
|
216
|
+
"tooltip": "always"
|
|
217
|
+
},
|
|
218
|
+
"on": {
|
|
219
|
+
"drag-end": this.handleSlider
|
|
220
220
|
},
|
|
221
|
-
"props": _rollupPluginBabelHelpers._extends({}, this.$props.sliderOptions)
|
|
222
|
-
"on": _rollupPluginBabelHelpers._extends({}, {
|
|
223
|
-
input: this.handleSlider
|
|
224
|
-
})
|
|
221
|
+
"props": _rollupPluginBabelHelpers._extends({}, this.$props.sliderOptions)
|
|
225
222
|
}), this.$props.rangeLabels && h("div", {
|
|
226
223
|
"class": "label-container"
|
|
227
224
|
}, [h("label", {
|
package/dist/cjs/ReactiveBase.js
CHANGED
|
@@ -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-
|
|
15
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
16
16
|
require('redux');
|
|
17
17
|
var index = require('./index-89c39a9e.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:
|
|
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
|
-
}
|
|
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;
|
|
@@ -9,7 +9,7 @@ var configureStore__default = _interopDefault(configureStore);
|
|
|
9
9
|
var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f127c8b7.js');
|
|
10
10
|
var VueTypes = _interopDefault(require('vue-types'));
|
|
11
11
|
var constants = require('@appbaseio/reactivecore/lib/utils/constants');
|
|
12
|
-
var vueTypes = require('./vueTypes-
|
|
12
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
13
13
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
14
14
|
require('redux');
|
|
15
15
|
var index = require('./index-89c39a9e.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,
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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) {
|
package/dist/cjs/ReactiveList.js
CHANGED
|
@@ -15,7 +15,7 @@ var styled = require('@appbaseio/vue-emotion');
|
|
|
15
15
|
var styled__default = _interopDefault(styled);
|
|
16
16
|
require('polished');
|
|
17
17
|
var Button = require('./Button-11307285.js');
|
|
18
|
-
var vueTypes = require('./vueTypes-
|
|
18
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
19
19
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
20
20
|
require('redux');
|
|
21
21
|
var index = require('./index-89c39a9e.js');
|
|
@@ -494,9 +494,14 @@ var ReactiveList = {
|
|
|
494
494
|
}
|
|
495
495
|
|
|
496
496
|
this.internalComponent = this.$props.componentId + "__internal";
|
|
497
|
-
this.sortOptionIndex =
|
|
498
|
-
|
|
499
|
-
|
|
497
|
+
this.sortOptionIndex = 0;
|
|
498
|
+
|
|
499
|
+
if (this.defaultSortOption && this.sortOptions && Array.isArray(this.sortOptions)) {
|
|
500
|
+
this.sortOptionIndex = this.sortOptions.findIndex(function (s) {
|
|
501
|
+
return s.label === _this.defaultSortOption;
|
|
502
|
+
});
|
|
503
|
+
}
|
|
504
|
+
|
|
500
505
|
this.updateComponentProps(this.componentId, {
|
|
501
506
|
from: this.from
|
|
502
507
|
}, constants.componentTypes.reactiveList);
|
|
@@ -506,7 +511,7 @@ var ReactiveList = {
|
|
|
506
511
|
},
|
|
507
512
|
props: {
|
|
508
513
|
currentPage: VueTypes.number.def(0),
|
|
509
|
-
includeFields: vueTypes.types.includeFields
|
|
514
|
+
includeFields: vueTypes.types.includeFields,
|
|
510
515
|
// component props
|
|
511
516
|
className: vueTypes.types.string,
|
|
512
517
|
componentId: vueTypes.types.stringRequired,
|
|
@@ -515,7 +520,7 @@ var ReactiveList = {
|
|
|
515
520
|
aggregationSize: VueTypes.number,
|
|
516
521
|
defaultQuery: vueTypes.types.func,
|
|
517
522
|
defaultSortOption: vueTypes.types.string,
|
|
518
|
-
excludeFields: vueTypes.types.excludeFields
|
|
523
|
+
excludeFields: vueTypes.types.excludeFields,
|
|
519
524
|
innerClass: vueTypes.types.style,
|
|
520
525
|
listClass: VueTypes.string.def(''),
|
|
521
526
|
loader: vueTypes.types.title,
|
|
@@ -527,7 +532,7 @@ var ReactiveList = {
|
|
|
527
532
|
pages: VueTypes.number.def(5),
|
|
528
533
|
pagination: VueTypes.bool.def(false),
|
|
529
534
|
infiniteScroll: VueTypes.bool.def(true),
|
|
530
|
-
paginationAt:
|
|
535
|
+
paginationAt: VueTypes.oneOf(['top', 'bottom', 'both']).def('bottom'),
|
|
531
536
|
react: vueTypes.types.react,
|
|
532
537
|
scrollOnChange: VueTypes.bool.def(true),
|
|
533
538
|
showResultStats: VueTypes.bool.def(true),
|
|
@@ -728,11 +733,11 @@ var ReactiveList = {
|
|
|
728
733
|
var options = getQueryOptions(this.$props);
|
|
729
734
|
options.from = this.$data.from;
|
|
730
735
|
|
|
731
|
-
if (this
|
|
736
|
+
if (this.sortOptions && this.sortOptions[this.sortOptionIndex]) {
|
|
732
737
|
var _ref2;
|
|
733
738
|
|
|
734
|
-
var sortField = this
|
|
735
|
-
var sortBy = this
|
|
739
|
+
var sortField = this.sortOptions[this.sortOptionIndex].dataField;
|
|
740
|
+
var sortBy = this.sortOptions[this.sortOptionIndex].sortBy;
|
|
736
741
|
options.sort = [(_ref2 = {}, _ref2[sortField] = {
|
|
737
742
|
order: sortBy
|
|
738
743
|
}, _ref2)]; // To handle sort options for RS API
|
|
@@ -802,10 +807,10 @@ var ReactiveList = {
|
|
|
802
807
|
"class": this.$props.className
|
|
803
808
|
}, [this.isLoading && this.shouldRenderPagination && this.showInfiniteScroll && (this.$scopedSlots.loader || this.$props.loader), this.renderErrorComponent(), h(Flex.Flex, {
|
|
804
809
|
"attrs": {
|
|
805
|
-
"labelPosition": this
|
|
810
|
+
"labelPosition": this.sortOptions ? 'right' : 'left'
|
|
806
811
|
},
|
|
807
812
|
"class": getClassName$1(this.$props.innerClass, 'resultsInfo')
|
|
808
|
-
}, [this
|
|
813
|
+
}, [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, {
|
|
809
814
|
"attrs": {
|
|
810
815
|
"pages": this.$props.pages,
|
|
811
816
|
"totalPages": this.totalPages,
|
|
@@ -876,15 +881,18 @@ var ReactiveList = {
|
|
|
876
881
|
var options = getQueryOptions(props);
|
|
877
882
|
options.from = this.$data.from;
|
|
878
883
|
|
|
879
|
-
if (props.sortOptions) {
|
|
880
|
-
var _ref5;
|
|
881
|
-
|
|
884
|
+
if (props.sortOptions && Array.isArray(props.sortOptions)) {
|
|
882
885
|
var sortOptionIndex = props.defaultSortOption ? props.sortOptions.findIndex(function (s) {
|
|
883
886
|
return s.label === props.defaultSortOption;
|
|
884
887
|
}) : 0;
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
+
|
|
889
|
+
if (props.sortOptions[sortOptionIndex]) {
|
|
890
|
+
var _ref5;
|
|
891
|
+
|
|
892
|
+
options.sort = [(_ref5 = {}, _ref5[props.sortOptions[sortOptionIndex].dataField] = {
|
|
893
|
+
order: props.sortOptions[sortOptionIndex].sortBy
|
|
894
|
+
}, _ref5)];
|
|
895
|
+
}
|
|
888
896
|
} else if (props.sortBy) {
|
|
889
897
|
var _ref6;
|
|
890
898
|
|
|
@@ -980,31 +988,39 @@ var ReactiveList = {
|
|
|
980
988
|
renderNoResult: function renderNoResult() {
|
|
981
989
|
var h = this.$createElement;
|
|
982
990
|
var renderNoResults = this.$scopedSlots.renderNoResults || this.$props.renderNoResults;
|
|
991
|
+
|
|
992
|
+
if (this.$scopedSlots.renderNoResults) {
|
|
993
|
+
return index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults;
|
|
994
|
+
}
|
|
995
|
+
|
|
983
996
|
return h("p", {
|
|
984
997
|
"class": getClassName$1(this.$props.innerClass, 'noResults') || null
|
|
985
998
|
}, [index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults]);
|
|
986
999
|
},
|
|
987
1000
|
handleSortChange: function handleSortChange(e) {
|
|
988
|
-
var
|
|
1001
|
+
var index = e.target.value;
|
|
989
1002
|
|
|
990
|
-
|
|
1003
|
+
if (this.sortOptions && this.sortOptions[index]) {
|
|
1004
|
+
var _ref7;
|
|
991
1005
|
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1006
|
+
// This fixes issue #371 (where sorting a multi-result page with infinite loader breaks)
|
|
1007
|
+
var options = getQueryOptions(this.$props);
|
|
1008
|
+
options.from = 0;
|
|
1009
|
+
var sortField = this.sortOptions[index].dataField;
|
|
1010
|
+
var sortBy = this.sortOptions[index].sortBy;
|
|
1011
|
+
options.sort = [(_ref7 = {}, _ref7[sortField] = {
|
|
1012
|
+
order: sortBy
|
|
1013
|
+
}, _ref7)];
|
|
1014
|
+
this.sortOptionIndex = index; // To handle sort options for RS API
|
|
1015
|
+
|
|
1016
|
+
this.updateComponentProps(this.componentId, {
|
|
1017
|
+
dataField: sortField,
|
|
1018
|
+
sortBy: sortBy
|
|
1019
|
+
}, constants.componentTypes.reactiveList);
|
|
1020
|
+
this.setQueryOptions(this.$props.componentId, options, true);
|
|
1021
|
+
this.currentPageState = 0;
|
|
1022
|
+
this.from = 0;
|
|
1023
|
+
}
|
|
1008
1024
|
},
|
|
1009
1025
|
triggerClickAnalytics: function triggerClickAnalytics(searchPosition, documentId) {
|
|
1010
1026
|
var docId = documentId;
|
|
@@ -1038,7 +1054,7 @@ var ReactiveList = {
|
|
|
1038
1054
|
"domProps": {
|
|
1039
1055
|
"value": this.sortOptionIndex
|
|
1040
1056
|
}
|
|
1041
|
-
}, [this
|
|
1057
|
+
}, [this.sortOptions.map(function (sort, index) {
|
|
1042
1058
|
return h("option", {
|
|
1043
1059
|
"key": sort.label,
|
|
1044
1060
|
"domProps": {
|
|
@@ -1144,11 +1160,7 @@ var mapDispatchtoProps = {
|
|
|
1144
1160
|
}; // Only used for SSR
|
|
1145
1161
|
|
|
1146
1162
|
ReactiveList.generateQueryOptions = function (props) {
|
|
1147
|
-
|
|
1148
|
-
var options = getQueryOptions(_rollupPluginBabelHelpers._extends({
|
|
1149
|
-
includeFields: ['*'],
|
|
1150
|
-
excludeFields: []
|
|
1151
|
-
}, props));
|
|
1163
|
+
var options = getQueryOptions(props);
|
|
1152
1164
|
var size = props.size,
|
|
1153
1165
|
dataField = props.dataField,
|
|
1154
1166
|
defaultSortOption = props.defaultSortOption,
|
package/dist/cjs/ResultCard.js
CHANGED
|
@@ -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-
|
|
12
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
13
13
|
var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
|
|
14
14
|
var Title = require('./Title-584a8cc8.js');
|
|
15
15
|
var Card = require('./Card-fd94ef07.js');
|
package/dist/cjs/ResultList.js
CHANGED
|
@@ -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-
|
|
12
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
13
13
|
var _mergeJSXProps = _interopDefault(require('@vue/babel-helper-vue-jsx-merge-props'));
|
|
14
14
|
var Title = require('./Title-584a8cc8.js');
|
|
15
15
|
var ListItem = require('./ListItem-b40adb04.js');
|
|
@@ -13,7 +13,7 @@ require('emotion');
|
|
|
13
13
|
require('@appbaseio/vue-emotion');
|
|
14
14
|
require('polished');
|
|
15
15
|
var Button = require('./Button-11307285.js');
|
|
16
|
-
var vueTypes = require('./vueTypes-
|
|
16
|
+
var vueTypes = require('./vueTypes-57d01f18.js');
|
|
17
17
|
require('redux');
|
|
18
18
|
var index = require('./index-89c39a9e.js');
|
|
19
19
|
var Title = require('./Title-584a8cc8.js');
|
|
@@ -32,7 +32,8 @@ var SelectedFilters = {
|
|
|
32
32
|
innerClass: vueTypes.types.style,
|
|
33
33
|
showClearAll: VueTypes.bool.def(true),
|
|
34
34
|
title: vueTypes.types.title,
|
|
35
|
-
resetToDefault: VueTypes.bool.def(false)
|
|
35
|
+
resetToDefault: VueTypes.bool.def(false),
|
|
36
|
+
resetToValues: VueTypes.object
|
|
36
37
|
},
|
|
37
38
|
inject: {
|
|
38
39
|
theme: {
|
|
@@ -85,15 +86,16 @@ var SelectedFilters = {
|
|
|
85
86
|
this.$emit('clear', component, value);
|
|
86
87
|
},
|
|
87
88
|
clearValues: function clearValues() {
|
|
88
|
-
var resetToDefault = this.resetToDefault
|
|
89
|
+
var resetToDefault = this.resetToDefault,
|
|
90
|
+
resetToValues = this.resetToValues;
|
|
89
91
|
|
|
90
92
|
if (resetToDefault) {
|
|
91
93
|
this.resetValuesToDefault();
|
|
92
94
|
} else {
|
|
93
|
-
this.clearValuesAction();
|
|
95
|
+
this.clearValuesAction(resetToValues);
|
|
94
96
|
}
|
|
95
97
|
|
|
96
|
-
this.$emit('clear',
|
|
98
|
+
this.$emit('clear', resetToValues);
|
|
97
99
|
},
|
|
98
100
|
renderValue: function renderValue(value, isArray) {
|
|
99
101
|
var _this2 = this;
|